From 0dbd823c00f0acd1249e74422934d4e4b09d5699 Mon Sep 17 00:00:00 2001 From: david hill Date: Thu, 12 May 2016 14:14:24 -0500 Subject: [PATCH] more changes for names --- ChangeLog | 2 +- ChangeLog~ | 445 + INSTALL | 6 +- INSTALL~ | 306 + Makefile.tar | Bin 379516 -> 379576 bytes README | 16 +- README~ | 145 + build/bootstrap | 2 +- build/bootstrap~ | 62 + build/build.kdevelop | 65 +- build/build.kdevelop.filelist | 1 + build/build.kdevelop.pcs | Bin 0 -> 287536 bytes build/build.kdevses | 170 + build/columnstore.spec.in | 3 +- build/columnstore.spec.in~ | 63 +- config.log | 4 +- config.log~ | 5068 ++++++++++ dbcon/joblist/fdtests.pl | 2 +- dbcon/joblist/largehashjoin.cpp | 4 +- dbcon/mysql/Makefile.am | 2 +- dbcon/mysql/Makefile.in | 12 +- dbcon/mysql/dumpcat.pl | 2 +- dbcon/mysql/files.lst | 2 +- dbcon/mysql/my.cnf | 28 +- dbcon/mysql/mysql-Calpont | 2 +- dbcon/mysql/schemaSync.pl | 2 +- export/bin/binary_installer.sh | 330 - export/bin/columnstore | 184 - export/bin/columnstore.conf | 2 - export/bin/columnstore.def | 9 - export/bin/columnstoreAlias | 13 - export/bin/columnstoreLogRotate | 35 - export/bin/columnstoreSyslog | 7 - export/bin/columnstoreSyslog-ng | 78 - export/bin/columnstoreSyslog7 | 8 - export/bin/columnstoreUninstall.sh | 118 - export/bin/director_installer.sh | 340 - export/bin/disable-rep-columnstore.sh | 74 - export/bin/disable-rep-infinidb.sh | 74 - export/bin/infinidb | 184 - export/bin/infinidb.conf | 2 - export/bin/infinidb.def | 9 - export/bin/master-rep-columnstore.sh | 112 - export/bin/master-rep-infinidb.sh | 112 - export/bin/module_installer.sh | 167 - export/bin/myCnf-exclude-args.text | 2 - export/bin/myCnf-include-args.text | 18 - export/bin/os_check.sh | 44 - export/bin/patch_installer.sh | 69 - export/bin/performance_installer.sh | 319 - export/bin/post-install | 336 - export/bin/post-mysql-install | 124 - export/bin/post-mysqld-install | 107 - export/bin/pre-uninstall | 156 - export/bin/remote_command.sh | 70 - export/bin/remote_command_verify.sh | 53 - export/bin/remote_scp_get.sh | 53 - export/bin/remote_scp_put.sh | 54 - export/bin/remotessh.exp | 89 - export/bin/rsync.sh | 54 - export/bin/run.sh | 67 - export/bin/slave-rep-columnstore.sh | 119 - export/bin/slave-rep-infinidb.sh | 119 - export/bin/startupTests.sh | 36 - export/bin/syslogSetup.sh | 262 - export/bin/system_installer.sh | 161 - export/bin/transactionLog | 12 - export/bin/transactionLogArchiver.sh | 48 - export/bin/upgrade-columnstore.sh | 444 - export/bin/upgrade-infinidb.sh | 444 - export/bin/user_installer.sh | 323 - export/bin/xm_installer.sh | 173 - export/local/module | 1 - libtool | 4 +- libtool~ | 7574 +++++++++++++++ oam/etc/ProcessConfig.xml.singleserver | 46 +- oam/install_scripts/Makefile~ | 57 - oam/install_scripts/binary_installer.sh | 2 +- oam/install_scripts/calpontAlias | 10 +- oam/install_scripts/calpontLogRotate | 8 +- oam/install_scripts/calpontSyslog | 12 +- oam/install_scripts/calpontSyslog-ng | 12 +- oam/install_scripts/calpontSyslog7 | 12 +- oam/install_scripts/columnstore | 8 +- oam/install_scripts/columnstore.conf | 2 +- oam/install_scripts/columnstore.def | 2 +- oam/install_scripts/columnstore.upstart | 2 +- oam/install_scripts/columnstoreAlias | 20 +- oam/install_scripts/columnstoreLogRotate | 16 +- oam/install_scripts/columnstoreSyslog | 12 +- oam/install_scripts/columnstoreSyslog-ng | 12 +- oam/install_scripts/columnstoreSyslog7 | 12 +- oam/install_scripts/columnstore~ | 184 - oam/install_scripts/crontab | 2 +- oam/install_scripts/infinidb | 6 +- oam/install_scripts/module_installer.sh~ | 167 - oam/install_scripts/post-install | 24 +- oam/install_scripts/post-install~ | 336 - oam/install_scripts/post-mysql-install | 12 +- oam/install_scripts/post-mysqld-install | 2 +- oam/install_scripts/pre-uninstall | 8 +- oam/install_scripts/pre-uninstall~ | 156 - oam/install_scripts/syslogSetup.sh | 4 +- oam/install_scripts/syslogSetup.sh~ | 262 - oam/install_scripts/transactionLog | 2 +- oam/install_scripts/transactionLogArchiver.sh | 2 +- oam/oamcpp/liboamcpp.cpp | 22 +- oam/oamcpp/liboamcpp.h | 12 +- oam/post/functions | 2 +- oam/replaytxnlog/replaytxnlog.cpp | 2 +- oamapps/calpontConsole/Makefile | 4 +- oamapps/calpontConsole/calpontConsole.h | 2 +- oamapps/calpontDB/calpontDB.cpp | 2 +- oamapps/calpontSupport/alarmReport.sh | 6 +- oamapps/calpontSupport/configReport.sh | 4 +- oamapps/calpontSupport/configReport.sh~ | 64 + oamapps/calpontSupport/logReport.sh | 2 +- oamapps/mcsadmin/Makefile | 4 +- oamapps/mcsadmin/Makefile~ | 83 - oamapps/mcsadmin/mcadmin.cpp~ | 8496 ----------------- oamapps/mcsadmin/mcadmin.d.20892 | 0 oamapps/mcsadmin/mcadmin.d.21522 | 0 oamapps/mcsadmin/mcadmin.h~ | 135 - oamapps/mcsadmin/mcsadmin.d | 1049 -- oamapps/mcsadmin/mcsadmin.h | 2 +- oamapps/mcsadmin/mcsadmin.o | Bin 2934896 -> 0 bytes oamapps/postConfigure/installer.cpp | 2 +- oamapps/postConfigure/postConfigure.cpp | 14 +- oamapps/resourceMonitor/Makefile | 2 +- oamapps/resourceMonitor/resourceMonitor.cpp | 2 +- oamapps/sendtrap/Makefile | 12 +- oamapps/serverMonitor/cpuMonitor.cpp | 2 +- oamapps/serverMonitor/dbhealthMonitor.cpp | 6 +- oamapps/serverMonitor/msgProcessor.cpp | 2 +- oamapps/traphandler/Makefile | 12 +- .../blockcache/blockrequestprocessor.cpp | 2 +- primitives/blockcache/filebuffermgr.cpp | 2 +- primitives/blockcache/iomanager.cpp | 4 +- primitives/blockcache/stats.cpp | 2 +- primitives/primproc/bppseeder.cpp | 2 +- primitives/primproc/primproc.cpp | 4 +- procmgr/processmanager.cpp | 4 +- procmgr/processmanager.h | 2 +- procmon/main.cpp | 2 +- procmon/processmonitor.cpp | 18 +- snmpd/etc/snmpdx.conf | 2 +- snmpd/etc/snmpdx.conf.singleserver | 2 +- snmpd/etc/snmptrapd.conf | 10 +- snmpd/etc/snmptrapd.conf.singleserver | 10 +- snmpd/snmpmanager/snmpglobal.h | 6 +- tools/evalidx/checkidx.py | 2 +- tools/evalidx/checkidx.py~ | 98 + tools/reserveStacks/stack | 2 +- tools/reserveStacks/stack~ | 82 + utils/autoconf/INSTALL | 6 +- utils/autoconf/INSTALL~ | 306 + utils/autoconf/README | 16 +- utils/autoconf/README~ | 145 + utils/idbhdfs/hdfs-12/setenv-hdfs-12 | 2 +- utils/idbhdfs/hdfs-20/setenv-hdfs-20 | 2 +- .../hadoop/example/InfiniDBOutputDriver.java | 2 +- .../hadoop/example/InfiniDBOutputDriver.java~ | 88 + utils/loggingcpp/Doxyfile | 275 + utils/loggingcpp/loggingcpp.kdevelop | 101 + utils/loggingcpp/loggingcpp.kdevelop.filelist | 23 + utils/loggingcpp/loggingcpp.kdevelop.pcs | Bin 0 -> 154066 bytes utils/loggingcpp/loggingcpp.kdevses | 26 + utils/loggingcpp/tdriver.cpp | 2 +- utils/prat/getlogs.sh | 4 +- utils/scenarios/common/sql/load_TestStats.sql | 2 +- .../scenarios/common/sql/load_TestStats.sql~ | 13 + .../scenarios/common/sql/load_TestSummary.sql | 2 +- .../common/sql/load_TestSummary.sql~ | 14 + utils/scenarios/common/sql/load_TestTime.sql | 2 +- utils/scenarios/common/sql/load_TestTime.sql~ | 13 + utils/scenarios/perf/source/pf/fm/getlogs.sh | 2 +- utils/scenarios/perf/source/pf/fm/getsql.orig | 2 +- .../scenarios/perf/source/pf/fm/getsql.orig~ | 48 + utils/testbc/stats.cpp | 2 +- versioning/BRM/Calpont.xml | 6 +- versioning/BRM/tracer.cpp | 2 +- versioning/BRM/tracer.h | 2 +- writeengine/bulk/bulkload.py | 2 +- writeengine/bulk/checkidx.py | 2 +- writeengine/bulk/qa-bulkload.py | 2 +- 185 files changed, 15440 insertions(+), 16894 deletions(-) create mode 100644 ChangeLog~ create mode 100644 INSTALL~ create mode 100644 README~ create mode 100755 build/bootstrap~ create mode 100644 build/build.kdevelop.filelist create mode 100644 build/build.kdevelop.pcs create mode 100644 build/build.kdevses create mode 100644 config.log~ delete mode 100755 export/bin/binary_installer.sh delete mode 100755 export/bin/columnstore delete mode 100755 export/bin/columnstore.conf delete mode 100755 export/bin/columnstore.def delete mode 100755 export/bin/columnstoreAlias delete mode 100755 export/bin/columnstoreLogRotate delete mode 100755 export/bin/columnstoreSyslog delete mode 100755 export/bin/columnstoreSyslog-ng delete mode 100755 export/bin/columnstoreSyslog7 delete mode 100755 export/bin/columnstoreUninstall.sh delete mode 100755 export/bin/director_installer.sh delete mode 100755 export/bin/disable-rep-columnstore.sh delete mode 100755 export/bin/disable-rep-infinidb.sh delete mode 100755 export/bin/infinidb delete mode 100755 export/bin/infinidb.conf delete mode 100755 export/bin/infinidb.def delete mode 100755 export/bin/master-rep-columnstore.sh delete mode 100755 export/bin/master-rep-infinidb.sh delete mode 100755 export/bin/module_installer.sh delete mode 100755 export/bin/myCnf-exclude-args.text delete mode 100755 export/bin/myCnf-include-args.text delete mode 100755 export/bin/os_check.sh delete mode 100755 export/bin/patch_installer.sh delete mode 100755 export/bin/performance_installer.sh delete mode 100755 export/bin/post-install delete mode 100755 export/bin/post-mysql-install delete mode 100755 export/bin/post-mysqld-install delete mode 100755 export/bin/pre-uninstall delete mode 100755 export/bin/remote_command.sh delete mode 100755 export/bin/remote_command_verify.sh delete mode 100755 export/bin/remote_scp_get.sh delete mode 100755 export/bin/remote_scp_put.sh delete mode 100755 export/bin/remotessh.exp delete mode 100755 export/bin/rsync.sh delete mode 100755 export/bin/run.sh delete mode 100755 export/bin/slave-rep-columnstore.sh delete mode 100755 export/bin/slave-rep-infinidb.sh delete mode 100755 export/bin/startupTests.sh delete mode 100755 export/bin/syslogSetup.sh delete mode 100755 export/bin/system_installer.sh delete mode 100755 export/bin/transactionLog delete mode 100755 export/bin/transactionLogArchiver.sh delete mode 100755 export/bin/upgrade-columnstore.sh delete mode 100755 export/bin/upgrade-infinidb.sh delete mode 100755 export/bin/user_installer.sh delete mode 100755 export/bin/xm_installer.sh delete mode 100755 export/local/module create mode 100755 libtool~ delete mode 100755 oam/install_scripts/Makefile~ delete mode 100644 oam/install_scripts/columnstore~ delete mode 100755 oam/install_scripts/module_installer.sh~ delete mode 100755 oam/install_scripts/post-install~ delete mode 100755 oam/install_scripts/pre-uninstall~ delete mode 100644 oam/install_scripts/syslogSetup.sh~ create mode 100755 oamapps/calpontSupport/configReport.sh~ delete mode 100755 oamapps/mcsadmin/Makefile~ delete mode 100644 oamapps/mcsadmin/mcadmin.cpp~ delete mode 100644 oamapps/mcsadmin/mcadmin.d.20892 delete mode 100644 oamapps/mcsadmin/mcadmin.d.21522 delete mode 100644 oamapps/mcsadmin/mcadmin.h~ delete mode 100644 oamapps/mcsadmin/mcsadmin.d delete mode 100644 oamapps/mcsadmin/mcsadmin.o create mode 100755 tools/evalidx/checkidx.py~ create mode 100755 tools/reserveStacks/stack~ create mode 100644 utils/autoconf/INSTALL~ create mode 100644 utils/autoconf/README~ create mode 100755 utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java~ create mode 100644 utils/loggingcpp/Doxyfile create mode 100644 utils/loggingcpp/loggingcpp.kdevelop create mode 100644 utils/loggingcpp/loggingcpp.kdevelop.filelist create mode 100644 utils/loggingcpp/loggingcpp.kdevelop.pcs create mode 100644 utils/loggingcpp/loggingcpp.kdevses create mode 100644 utils/scenarios/common/sql/load_TestStats.sql~ create mode 100644 utils/scenarios/common/sql/load_TestSummary.sql~ create mode 100644 utils/scenarios/common/sql/load_TestTime.sql~ create mode 100755 utils/scenarios/perf/source/pf/fm/getsql.orig~ diff --git a/ChangeLog b/ChangeLog index c5d2c3612..5210b726a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -298,7 +298,7 @@ Bug # Short Description 5752 ERROR 138 (HY000) at line 2: Sub-query failed: error code 2003 error for query that exceeded TotalUmMemory 5753 When PrimProc restarts, DML statement didn't reset the connections to PrimProc in connector 5757 addModule for UM failed on Amazon system - remote_command error -5759 Must use -p option for hadoop fs -mkdir when creating /usr/local/Calpont +5759 Must use -p option for hadoop fs -mkdir when creating /usr/local/MariaDB/Columnstore 5764 select count(*) from a complex view is returning an incorrect answer. 5765 truncate statement does not show schema in the debug.log 5767 'create table' creates table in front end when spaces are in the table name. diff --git a/ChangeLog~ b/ChangeLog~ new file mode 100644 index 000000000..c5d2c3612 --- /dev/null +++ b/ChangeLog~ @@ -0,0 +1,445 @@ +/*********************************************************************** +* +* Copyright (C) 2013 InfiniDB Corp +* All Rights Reserved +* +***********************************************************************/ + +July 7, 2014 +Version 4.6 + + +ENHANCEMENTS INCLUDED IN THIS RELEASE +------------------------------------- +Enh # Short Description +1505 Implement temp file based LargeHashJoin for tuple joins +3683 Allow function(column) = function(column) join +5308 Improve performance of load data infile and insert into select from + + +ISSUES RESOLVED IN THIS RELEASE +------------------------------- +Bug # Short Description + +3858 While "load data infile" is in progress, PrimProc fails to read compressed chunk and retries for more than a minute +4295 CPimport Mode 2: Should check for input files on all PMs before starting loading +4737 Distributed cpimport does not support a list of import files to a single table +4789 InfiniDB came up normally after encountering an critical sessionManager::rollback() error +5134 Source package: After compilation and installation, InfiniDB reported lib not found error during startup +5140 second and subsequent load data infiles have 30 second delay with auto increment +5523 Mysql is resetting when running a query on a information_schema.table and an InfiniDB table. +5727 Improve logging around controllernode start up +5756 After a failed addModule command movePmDbrootConfig did not fail +5758 when amazon UM modules are removed, their associated EBS storages are not removed +5761 Support additional versions of Java for Hadoop installations +5762 Need a method to handle MySQL port conflict on a multi-server install +5773 Startsystem is failing when shutdown has not completed. +5847 IDB-2021 on query using multiple pseudo column functions against same column and aggregation +5848 No CP elimination from idbPartition(col) in the where clause +5865 ERROR 138 (HY000): IDB-1000: 'orders' and 'sub-query' are not joined on a query with an or condition and not in condition +5891 getsystemdisk reporting minus value +5894 Performance issue when inserting a value in an autoincrement column +5930 Not in group by error on query grouping by idbPm and idbDbRoot functions +5931 current builds do not support a non-root / hdfs install +5946 load data infile error: ERROR 122 (HY000): CAL0006: Error verifying compression headers +5947 calonlinealter always creates non compressed columns +5950 getModuleHostNames command on AWS returned a segmentation fault error +5954 calpontSupport for Windows does not recognize options +5958 Query with a subselect is getting an assertion error +5963 configxml.sh fails to set CrossEngineSupport Password from the default setting +5978 crash with prepared statements +5987 hadoop test failed on install, hadoop not install where setenv was looking and not a parcel +5992 Bulk load fails on long schema name, long table name, and long column name combination. +5993 IDB-2016: Non supported item 'c2' on the GROUP BY list. +5996 Table reporting errors after a LDI +5997 standard mysql and infinidb mysql incorrectly starting/stopping each other +6000 New MySQL port test is insufficient +6001 cpimport performance improvement for tables with many dictionary columns +6005 addModule command failed to add an UM +6010 InfiniDB mysql replication doesn't work when UM mysql Port address is not 3306 +6013 HW 2.1 testing with 4.5.1-2 - different JAVA_HOME's are setup +6017 Queries with "where date(col) in (select dtCol)" not finding rows +6026 Prevent potential infinite loops reading input in postConfigure +6027 post-install message for a non-root hadoop install is incorrect.. +6029 when autocommit off, batchinsert set hwm of dictionary store file to 0 +6041 When loading 4160825419 rows cpimport reported as -134141877 rows +6044 'union all' query generates tupleconstantstep.cpp@731: assertion 'fRowConst.getSize() == fRowOut.getSize()' failed +6061 window function returned incorrect results +6066 query with alias is returning IDB-3009: Unknown column error. +6073 setenv scripts issues on Ubuntu + +/*********************************************************************** +* +* Copyright (C) 2013 InfiniDB Corp +* All Rights Reserved +* +***********************************************************************/ + +June 23, 2014 +Version 4.5.1 + + +ENHANCEMENTS INCLUDED IN THIS RELEASE +------------------------------------- +Enh # Short Description + + + +ISSUES RESOLVED IN THIS RELEASE +------------------------------- +Bug # Short Description + +4438 Implement -j option with simple usage to create a specific job log file +4638 Update from 2.2.x to 3.0 is not supported with multiple dbroots +5501 update with subquery using a view with an order by receives an error when using infinidb tables +5523 Mysql is resetting when running a query on a information_schema.table and an InfiniDB table. +5739 install-infinidb.sh script should be removed +5756 After a failed addModule command movePmDbrootConfig did not fail +5758 when amazon UM modules are removed, their associated EBS storages aren't +5761 Add support for additional Java versions with installation on HDFS +5762 Need a method to handle MySQL port conflict on a multi-server install +5785 While running a complex query a Control C aborts the query but may not clear ExeMgr memory +5804 mysql reset occurring following an install when /dev/shm permissions were not set correctly +5838 no prompt postConfigure does not work when mysql password is required. +5873 install failure - No Calpont.xml: failed to be written in config api +5881 with replication, delete with idbpm(colname) in where clause failed with an error. +5884 query returns incorrect results when using an on clause filter involving a table not directly involved in the outer join +5887 " Incorrect results of Is Null " +5891 getsystemdisk returns minus value +5893 Pseudo column functions return an "BPS not created 1" error when used as the 2nd expression in a where clause +5896 getConfig has no linefeed after returning value +5900 PrimProc crashes if NumBlocksPct has '%' in value +5903 startsystem reported successful system start when mysqld aborted +5904 Changing dbroot-to-pm assignment during postConfigure causes double-mounted storage devices +5906 Diagnostic messages logged in the err.log file during new installation +5907 After installation, a rsync error was report in UM1 but the stack seems to be in working state +5908 4.5 non-root install problems +5909 On a stack with replication and local query enabled, rerunning postConfigure caused the two features to become disabled +5910 Object names > 64 cause replication errors +5913 Renaming an autoincrement column is resetting the next value +5915 On hadoop system, SYSTABLE's update was not flushed to disk when implementing split dbroots for systables +5916 query using a view on a view causes ERROR 2013 (HY000): Lost connection to MySQL server during query +5917 non-root gluster / hadoop installs fail - storage types not being offered in postConfigure +5919 Warning of future deprecated "default-character-set" setting on Windows install +5923 ERROR 122 (HY000): Lost connection to DDLProc +5925 Add the two new options to postConfigure -h +5932 Queries with limits sometimes set the extent map min / max incorrectly +5943 mysql daemon fails to start on pm2 of a non-root install local-query configured system +5944 Incorrect schema name in error message +5946 load data infile error: ERROR 122 (HY000): CAL0006: Error verifying compression headers +5947 calonlinealter always creates non compressed columns +5956 Error Code: 138 IDB-2015: Sorting length exceeded when using a view +5958 Query with a subselect is getting an assertion error +5973 large system (1um-30pm) failing to start, ProcMgr incorrect stopping with ProcMons not active +5981 postconfigure upgrade when enabling local-query fails +5983 all the hdfs settings are not in the .bashrc file after install +5993 IDB-2016: Non supported item 'c2' on the GROUP BY list. +5996 Table reporting errors after a LDI +6001 cpimport performance improvement for tables with many dictionary columns +6029 with autocommit off, batchinsert set hwm of dictionary store file to 0 + +/*********************************************************************** +* +* Copyright (C) 2013 InfiniDB Corp +* All Rights Reserved +* +***********************************************************************/ + +March 31, 2014 +Version 4.5 + + +ENHANCEMENTS INCLUDED IN THIS RELEASE +------------------------------------- +Enh # Short Description + +4021 Selectable pseudo columns for row/PM identification +4578 Upgrade to latest MySQL 5.1.73 +5572 Optimizations to cpimport with Hadoop +5634 Optimization: Project only the necessary columns from views with union all or union +5635 Optimization: Use partition elimination for from clause sub queries and views with union / union all +5657 Local PM query interface +5660 Local PM Sqoop Import +5740 Enable use of MySQL Replication on UMs with InfiniDB +5799 Enhancement request to not provide information when performing a non-hadoop install on a system with hadoop + + +ISSUES RESOLVED IN THIS RELEASE +------------------------------- +Bug # Short Description + +5443 An error is not issued when changing a column's datatype +5444 alter table will not allow an autoincrement column to be renamed. +5611 Windows MySQL doesn't build out of github +5640 Hadoop: dumpcol and eval returned a java error with stack trace when non-existing file is supplied +5647 cpimport -i option doesn't work with modes 1 and 2 +5745 hadoop: unknown bulk rollback error on 4PM stack +5748 startsystem failure when user-module is disabled +5805 Query with avg windowing function returning the average at the wrong decimal scale +5806 cpimport loads data incorrectly on a multi-server stack when the table has a mix of compressed and non-compressed columns +5807 concat producing an incorrect count when using a view +5808 colxml error reported on Windows system. +5811 selecting from a view which has a cross engine join produces an ERROR 122 (HY000): fatal error executing query in crossengine client lib(17)(17) +5817 addModule / altersystem-enablemodule fails on amazon with InfiniDB 4.x +5819 Calpont.xml and Calpont.xml.singleserver do not have the same parameters. +5820 Inconsistent rounding on percentile_cont windowing function +5861 post-install reported to have run the setenv-hdfs-12 script on a CDH 4 install +5864 Include calpontSupport in the standard edition +5874 Reset of ProcessMonitor on PM2 on a combo system left mysqld as man_offline + + + + +/*********************************************************************** +* +* Copyright (C) 2014 InfiniDB Corp +* All Rights Reserved +* +***********************************************************************/ + +April 14, 2014 +Version 4.0.3 + + +ENHANCEMENTS INCLUDED IN THIS RELEASE +------------------------------------- +Enh # Short Description + + + +ISSUES RESOLVED IN THIS RELEASE +------------------------------- +Bug # Short Description + +4638 Update from 2.2.x to 3.0 is not supported with multiple dbroots +5610 The MySQL front end no longer outputs a descriptive messages when version buffer is full +5748 startsystem failure when user-module is disabled +5778 Distributed import error message for auto increment overflow is not friendly +5793 Remove O/S version checking in glusterconf +5801 Queries with string comparison in where clause occasionally causes a PM to hang +5805 Query with avg windowing function returning the average at the wrong decimal scale +5806 cpimport loads data incorrectly on a multi-server stack when the table has a mix of compressed and non-compressed columns +5807 concat producing an incorrect count when using a view +5808 colxml error reported on Windows system. +5810 update doesn't flush string file with table oid 3000 +5811 selecting from a view which has a cross engine join produces an ERROR 122 (HY000): fatal error executing query in crossengine client lib(17)(17) +5817 addModule / altersystem-enablemodule fails on amazon 4.x +5820 Inconsistent rounding on percentile_cont windowing function +5821 PM join with F & E in-join filter + a UM join will crash ExeMgr +5823 System hung when running concurrent queries with autocommit off +5838 no prompt postConfigure does not work when mysql password is required. +5874 Reset of ProcessMonitor on PM2 on a combo system left mysqld as man_offline +5877 After loading 1 extent worth of data into a table, select count(*) failed. +5882 cleartablelock fails on a multi server system. +5884 query returns incorrect results when using an on clause filter involving a table not directly involved in the outer join +5887 " Incorrect results of Is Null " +5870 select following delete statement is encountering a rid error. +5896 getConfig has no linefeed after returning value +5900 PrimProc crashes if NumBlocksPct has '%' in value +5904 Changing dbroot-to-pm assignment during postConfigure causes double-mounted storage devices +5915 On hadoop system, SYSTABLE's update was not flushed to disk when implementing split dbroots for systables +5916 query using a view on a view causes ERROR 2013 (HY000): Lost connection to MySQL server during query +5917 non-root gluster / hadoop installs fail - storage types not being offered in postConfigure +5932 Queries with limits sometimes set the extent map min / max incorrectly + + + + +/*********************************************************************** +* +* Copyright (C) 2013 Calpont Corp +* All Rights Reserved +* +***********************************************************************/ + +February 10, 2014 +Version 4.0.2 + + +ENHANCEMENTS INCLUDED IN THIS RELEASE +------------------------------------- +Enh # Short Description + +5760 Hadoop with Cloudera parcel-based install +5769 Optimization to not preallocate database column files in HDFS +5732 Add ability to report compressed bytes used rather than file size on disk + + +ISSUES RESOLVED IN THIS RELEASE +------------------------------- +Bug # Short Description + +2437 When expression results in data overflow, no error or warning was returned +4930 no prompt install on AWS had an error when it did not use the volume information. +5363 HAVING statement regression on 4.0 with COUNT DISTINCT +5383 NOT NULL constraint cpimport issues +5604 cpimport jobs hanging on HDFS installs +5617 Invalid Package error reported during the running of calpontSupport - incorrect error message +5636 query gives ERROR 1054 (42S22): Unknown column +5678 ERROR 138 (HY000): 'date_last_update_tk' isn't in tuple. +5682 HDFS updating a row that was inserted sometimes does not update the row +5687 TIMESTAMPADD(SECOND,2147483647, returns incorrect information. +5696 insert statement not providing a warning for truncated data +5697 IDB produces different results for equivalent calculations +5705 hadoop: HdfsFileSystem::listDirectory() not returning all files in directory; bulk rollback not deleting db files +5712 left('unsigned int',6) provides incorrect result +5715 incorrect calculation provided in result set +5716 union sql statement not displaying correct result +5717 create table with invalid Infinidb option does not provide an error or warning +5718 cross engine join results in ERROR 122 (HY000): InetStreamSocket::readToMagic: Remote is closed +5721 amazon upgrade 4.0.0 to 4.0.1 issues +5722 cpimport failing on table to PM17; not handling a boundary case where 2 DBRoots have partial HWM extents +5726 amazon 3.6.3 to 4.0.1 upgrade issue - the ebs storage data not given in postConfigure +5728 update Server cpu-info and disk scheduler in calpontSupport output +5733 databaseSizeReport doesn't report the size of dictionary string files in calpontsys tables +5735 Launching simultaneous databaseSizeReports at virtually the same time can sometimes yield incorrect results +5749 addModule for failed on Amazon system - user_installer password error +5750 dbrm halt/resumes need to be put around the load of dbrm files +5752 ERROR 138 (HY000) at line 2: Sub-query failed: error code 2003 error for query that exceeded TotalUmMemory +5753 When PrimProc restarts, DML statement didn't reset the connections to PrimProc in connector +5757 addModule for UM failed on Amazon system - remote_command error +5759 Must use -p option for hadoop fs -mkdir when creating /usr/local/Calpont +5764 select count(*) from a complex view is returning an incorrect answer. +5765 truncate statement does not show schema in the debug.log +5767 'create table' creates table in front end when spaces are in the table name. +5775 Windows does not log when PrimProc goes down or restarts +5777 LAG function returns invalid answer on a float column + + + + +/*********************************************************************** +* +* Copyright (C) 2013 Calpont Corp +* All Rights Reserved +* +***********************************************************************/ + +December 2, 2013 +Version 4.0.1 + + +ENHANCEMENTS INCLUDED IN THIS RELEASE +------------------------------------- +Enh # Short Description + +5619 Support VPC environment with AMI + + +ISSUES RESOLVED IN THIS RELEASE +------------------------------- +Bug # Short Description + +4996 removeDbroot should be disabled when GlusterFS is configured +5268 Incorrect date_format answer from infindb table +5402 OAM getSystemStatus message in Windows log +5429 LDI updated casual partitioning min/max values for an extent when where is no update to the actual column value. +5454 assignDbrootPmConfig needs to error out when the system is shutdown +5463 calpontSupport is not including the -c option when -a is selected. +5499 'Memory leak of ExeMgr' +5529 _CpNoTf_ is reported in results set +5549 update on two columns with an AND causes mysql reset +5555 HDFS tools installed on non-Hadoop system +5558 Issuing Ctrl-C on a repetitive OAM command will set terminal session to echo off +5566 hdfs error message printed to screen in calpontConsole - run before hdfs is up +5573 hadoop: update a string column is very slow. +5588 Delete statement left table locked. +5596 postConfigure/glusterconf is creating gluster brick directories owned by root user +5614 "hdfsCheck failed" message logged in crit.log when the stack came up normal +5621 can't create large (20+ pm) amazon systems using 4.0 AMI +5626 PrimProc crash running on HDFS +5628 Bug joining against unsigned tinyint data type +5631 After applying the row_number() function the table content is going to be lost. +5638 issue with using a constant in group by column +5642 system hung during distributed import +5646 Left outer join on varchar column and date datetime column to date column not returning all matching rows +5651 Query wrapped in a select * () returns invalid results. +5652 alter table add dictionary column doesn’t set Number of allocated blocks correctly +5667 Gluster Install with debian - 'glusterctl status' returns with NOTINSTALLED +5669 gluster install - dbroot setup in gluster was mismatched to OAM setup per pm +5670 DecomSrv is restarting after upgrade to 4.0 +5672 dbroot gets unmounted during upgrade when a softlink is used and disk type is internal +5681 cpimport sometimes fails during concurrent query / import test on HDFS +5683 HdfsRdwrMemBuffer: unable to write all bytes error in cpimport +5689 rename table leaves table inaccessible in HDFS + +/*********************************************************************** +* +* Copyright (C) 2013 Calpont Corp +* All Rights Reserved +* +***********************************************************************/ + +October 15, 2013 +Version 4.0 + + +ENHANCEMENTS INCLUDED IN THIS RELEASE +------------------------------------- +Enh # Short Description + +3581 Optimize Memory Utilization for wide string columns +4531 Add support for Windowing Functions +4568 Add ability to report database, schema, and table sizes +4901 Improve performance of concat function +4902 Improve performance of insert() and replace() string functions +4919 Improve performance of makedate() and maketime() functions +4920 Improve performance of adddate(), date_add(), subdate(), date_sub() functions. +5087 Enhance InfiniDB to support over 32 PMs. +5208 Change the Status Updates messages to have state show an ASCII value +5237 Remove restriction preventing user from dropping a logical partition (segment file) in the last physical partition for a DBRoot +5243 Add setting in Calpont.xml for enable/disable corefiles +5300 calpontSupport script performance improvement and additional features +5316 Include schema name in SQL statement debug log entries +5410 Add support for InfiniDB on Apache Hadoop +5414 Add Infinidb support for Apache Sqoop +5421 Add support for running InfiniDB under a Linux Control Group + + + +ISSUES RESOLVED IN THIS RELEASE +------------------------------- +Bug # Launchpad Short Description + +2871 Exceeding aggregation limits can block session +4208 'drop table' cannot delete files on NFS +4345 Specific SQL statements exhausts memory in seconds +4552 1025340 Load data infile and cpimport produce different results + 1025247 +4757 Incorrect results with correlated subquery +4774 Port Data Duplication to debian & Ubuntu +5160 Incorrect result on query with "DATE(IF(t1.`end_date` - INTERVAL 30 DAY < t1.`start_date`, t1.`start_date`, t1.`end_date` - INTERVAL 30 DAY))" expression +5222 Update errors out when dealing with out-of-range date and datetime values +5256 OAM ops returning without DDLProc fully up +5269 swap limit exceeded and not cleared by OAM restart of the system +5272 cast function returns incorrect result +5274 alter table add column returned "Constraints are currently not supported in InfiniDB" error +5287 system came up Active while a pm was disabled and dbroot was assigned to it +5299 stopsystem with Force Option is incorrectly resetting dbrm and save_brm too early +5301 startsystem command system status ended up in MAN_OFFLINE instead of ACTIVE +5304 Windows command prompt exit hangs after cpimport on upgraded database from 3.0.x and earlier +5321 Delete from table command fails when pm1 is down on a combo 2pm system +5322 query failed after disabling and enabling partitions +5323 Backup error opening column file for OID-3132 on a multi node cpimport +5331 select calshowpartitions not showing limits incorrectly for char fields in empty table +5332 shutdownSystem command incorrectly reported 'success' +5349 ERR : Backup error for column file error message occurred running cpimport +5356 Default syslog.conf to the asynchronous option +5374 Data mismatch occurred running query via view +5379 LPAD is not functioning correctly when using a Japanese character +5391 ERROR 138 (HY000): IDB-1000: 'c1, c2' and 'c3' are not joined error message on a query +5392 Reset invalid locale alarm when locale has been corrected +5426 calshowprocesslist issue hard-coded to look for host in first 13 bytes +5427 Distributed cpimport not handling connection failure with WriteEngineServer +5429 Load data infile cleared the min/max values for an extent that was not updated +5436 ERROR 122 (HY000): CAL0001: Alter table Failed: AlterTableProcessor::addColumn Failed to set offset in a compressed data file. +5438 query filters issue +5447 cpimport is reporting that -i is an invalid option +5448 Bug in date_add() with InfiniDB table +5455 PrimProc resets during a particular sql statement +5463 calpontSupport is not including the -c option when -a is selected. +5481 Maintain DBBC/NumThreads setting through upgrade +5488 PrimProc hangs when DecomSvr dies +5494 calpontSupport -a option is not capturing the logs from PM1 +5495 DB occasionally hangs querying old data loaded in 3.5.0 or prior release + diff --git a/INSTALL b/INSTALL index 0f12f143b..9825f3e10 100644 --- a/INSTALL +++ b/INSTALL @@ -43,10 +43,10 @@ the entire Calpont directory tree there. After untaring the sofware or installing the RPM's, setup the software to run (this script needs to run with root privileges). Check the Installation Guide for addition details on using postConfigure: -/usr/local/Calpont/bin/postConfigure +/usr/local/MariaDB/Columnstore/bin/postConfigure Setup some aliases: -. /usr/local/Calpont/bin/calpontAlias +. /usr/local/MariaDB/Columnstore/bin/calpontAlias Connect to MySQL: idbmysql @@ -70,7 +70,7 @@ To use bulk load: 200|2002| 2. Save/place this file in a directory. 3. From that same directory, import the rows: - /usr/local/Calpont/bin/cpimport calpont caltest caltest.tbl + /usr/local/MariaDB/Columnstore/bin/cpimport calpont caltest caltest.tbl And check the import: calpontmysql calpont diff --git a/INSTALL~ b/INSTALL~ new file mode 100644 index 000000000..0f12f143b --- /dev/null +++ b/INSTALL~ @@ -0,0 +1,306 @@ +Installation Instructions +************************* + +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free +Software Foundation, Inc. + +Copyright (C) 2014 InfiniDB, Inc. + +This file is free documentation; the Free Software Foundation gives +unlimited permission to copy, distribute and modify it. + +InfiniDB, Inc. also gives unlimited permission to copy, distribute and +modify it. + +Basic Installation from source +============================== + +**** InfiniDB source build instructions **** + +Consult the generic installation instructions +that follow for detailed information. The short version is: + +cd $HOME +git clone http://github.com/infinidb/mysql +git clone http://github.com/infinidb/infinidb +-- or -- +tar -zxf +cd mysql +./configure --prefix=$HOME +make +make install +cd ../infinidb +./configure --prefix=$HOME +make +make install + +This will create a directory called Calpont in $HOME which conatins +all the software you need. + +Install the InfiniDB software into /usr/local (for example) by copying +the entire Calpont directory tree there. + +After untaring the sofware or installing the RPM's, setup the software +to run (this script needs to run with root privileges). Check the Installation +Guide for addition details on using postConfigure: +/usr/local/Calpont/bin/postConfigure + +Setup some aliases: +. /usr/local/Calpont/bin/calpontAlias + +Connect to MySQL: +idbmysql + +A suggested test scenario: +create database calpont; +use calpont; +create table caltest (col1 int, col2 int) engine=infinidb; +show create table caltest; +set autocommit=0; +insert into caltest values (1, 2); +insert into caltest values (3, 4); +commit; +select * from caltest; + +To use bulk load: +1. A delimited import file should be created to match the table that + you want to import data to similar to the following. In this + example, the file will be saved as idbtest.tbl: + 100|1001| + 200|2002| +2. Save/place this file in a directory. +3. From that same directory, import the rows: + /usr/local/Calpont/bin/cpimport calpont caltest caltest.tbl + +And check the import: +calpontmysql calpont +select * from caltest; + + +That's it. Enjoy. + + +These are generic installation instructions. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, and a +file `config.log' containing compiler output (useful mainly for +debugging `configure'). + + It can also use an optional file (typically called `config.cache' +and enabled with `--cache-file=config.cache' or simply `-C') that saves +the results of its tests to speed up reconfiguring. (Caching is +disabled by default to prevent problems with accidental use of stale +cache files.) + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If you are using the cache, and at +some point `config.cache' contains results you don't want to keep, you +may remove or edit it. + + The file `configure.ac' (or `configure.in') is used to create +`configure' by a program called `autoconf'. You only need +`configure.ac' if you want to change it or regenerate `configure' using +a newer version of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. If you're + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + +Compilers and Options +===================== + +Some systems require unusual options for compilation or linking that the +`configure' script does not know about. Run `./configure --help' for +details on some of the pertinent environment variables. + + You can give `configure' initial values for configuration parameters +by setting variables in the command line or in the environment. Here +is an example: + + ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix + + *Note Defining Variables::, for more details. + +Compiling For Multiple Architectures +==================================== + +You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you must use a version of `make' that +supports the `VPATH' variable, such as GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + If you have to use a `make' that does not support the `VPATH' +variable, you have to compile the package for one architecture at a +time in the source code directory. After you have installed the +package for one architecture, use `make distclean' before reconfiguring +for another architecture. + +Installation Names +================== + +By default, `make install' installs the package's commands under +`/usr/local/bin', include files under `/usr/local/include', etc. You +can specify an installation prefix other than `/usr/local' by giving +`configure' the option `--prefix=PREFIX'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +pass the option `--exec-prefix=PREFIX' to `configure', the package uses +PREFIX as the prefix for installing programs and libraries. +Documentation and other data files still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=DIR' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + +Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Specifying the System Type +========================== + +There may be some features `configure' cannot figure out automatically, +but needs to determine by the type of machine the package will run on. +Usually, assuming the package is built to be run on the _same_ +architectures, `configure' can figure that out, but if it prints a +message saying it cannot guess the machine type, give it the +`--build=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name which has the form: + + CPU-COMPANY-SYSTEM + +where SYSTEM can have one of these forms: + + OS KERNEL-OS + + See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the machine type. + + If you are _building_ compiler tools for cross-compiling, you should +use the option `--target=TYPE' to select the type of system they will +produce code for. + + If you want to _use_ a cross compiler, that generates code for a +platform different from the build platform, you should specify the +"host" platform (i.e., that on which the generated programs will +eventually be run) with `--host=TYPE'. + +Sharing Defaults +================ + +If you want to set default values for `configure' scripts to share, you +can create a site shell script called `config.site' that gives default +values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Defining Variables +================== + +Variables not defined in a site shell script can be set in the +environment passed to `configure'. However, some packages may run +configure again during the build, and the customized values of these +variables may be lost. In order to avoid this problem, you should set +them in the `configure' command line, using `VAR=value'. For example: + + ./configure CC=/usr/local2/bin/gcc + +causes the specified `gcc' to be used as the C compiler (unless it is +overridden in the site shell script). Here is a another example: + + /bin/bash ./configure CONFIG_SHELL=/bin/bash + +Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent +configuration-related scripts to be executed by `/bin/bash'. + +`configure' Invocation +====================== + +`configure' recognizes the following options to control how it operates. + +`--help' +`-h' + Print a summary of the options to `configure', and exit. + +`--version' +`-V' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`--cache-file=FILE' + Enable the cache: use and save the results of the tests in FILE, + traditionally `config.cache'. FILE defaults to `/dev/null' to + disable caching. + +`--config-cache' +`-C' + Alias for `--cache-file=config.cache'. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`configure' also accepts some other, not widely useful, options. Run +`configure --help' for more details. + diff --git a/Makefile.tar b/Makefile.tar index 4e6cff933731f6eba974fe92fb6af3152ef5beb5..a641451b9aff50a4757057108d53e601520686a2 100644 GIT binary patch delta 315 zcmew}MSRCp@eN6iT=_Yrxp~DU`9-Od|IL?2<_b8=P8Kjw+kC-Mlo44RRoP|%X9GOa zlYype7BF1FxY@wX!I&Rmn|^XZsn+B|7xC%(1+0df4_8WyB3q(8!F75=Bumxg#r;i4 w;+wT6oaIO2V{!9lhXsy!97LRZ=P))OSkiuA2_q0Q0WmWWvur=GgmsT909%NEBLDyZ delta 251 zcmdlnRs7Es@eN6iY>7Dq`FSOia~$PiOa*7z$pQvyn{POZGQz|V(wh~W4X_AL2I|_p zz~zOBAjClZ;Mwg_-6*!F75-2Xocr!~IQAvCaMy&ho?L q5w?Mh1v*B3^W+6mSZu}PnC67V?Fow+ftU%1nSq#Pd%|MY2z3CmAY7RM diff --git a/README b/README index 2aa1663a5..66a452622 100644 --- a/README +++ b/README @@ -3,8 +3,8 @@ To build the software from source, consult the file INSTALL. Brief Install Instructions: 1. Install the 3 Calpont InfiniDB RPMs. -2. Install and start the software, run: /usr/local/Calpont/bin/postConfigure -3. Setup some aliases: . /usr/local/Calpont/bin/calpontAlias +2. Install and start the software, run: /usr/local/MariaDB/Columnstore/bin/postConfigure +3. Setup some aliases: . /usr/local/MariaDB/Columnstore/bin/calpontAlias 4. Connect to MySQL: idbmysql 5. Try the test in step 12 below @@ -21,7 +21,7 @@ Detailed Installation Instructions: tar xvf calpont-2.2.0-2.x86_64.rpm.tar.gz 4. Install the 3 RPMs in this order, the Calpont InfiniDB software will be installed in - /usr/local/Calpont. + /usr/local/MariaDB/Columnstore. rpm -ivh infinidb-libs-2.2.0-2.x86_64.rpm rpm -ivh infinidb-platform-2.2.0-2.x86_64.rpm @@ -31,19 +31,19 @@ Detailed Installation Instructions: 5a.To configure and run on a single server system utilizing local disk storage, run install script: - /usr/local/Calpont/bin/postConfigure + /usr/local/MariaDB/Columnstore/bin/postConfigure 5b.To configure and run on a multi-server system and/or to utilize a SAN storage system, follow the instructions in the Calpont InfiniDB Installation Guide. - /usr/local/Calpont/bin/postConfigure + /usr/local/MariaDB/Columnstore/bin/postConfigure 6. Ports utilized by the Calpont InfiniDB Software The Calpont MySQL daemon utilizes port 3306. To use a different port, update the 2 locations in the following file: - /usr/local/Calpont/mysql/my.cnf + /usr/local/MariaDB/Columnstore/mysql/my.cnf port = 3306 port = 3306 @@ -53,7 +53,7 @@ Detailed Installation Instructions: 8600 - 8622, 8700, and 8800 7. Setup some aliases: -. /usr/local/Calpont/bin/calpontAlias +. /usr/local/MariaDB/Columnstore/bin/calpontAlias 8. To manually start and stop the Calpont InfiniDB Software as the root user run: @@ -127,7 +127,7 @@ Detailed Installation Instructions: mysql> -12. Run the following upgrade script to create calponsys schema and upgrade the syscolumn table: /usr/local/Calpont/bin/upgrade-infinidb.sh +12. Run the following upgrade script to create calponsys schema and upgrade the syscolumn table: /usr/local/MariaDB/Columnstore/bin/upgrade-infinidb.sh 13. As an example to get you started, try this: diff --git a/README~ b/README~ new file mode 100644 index 000000000..2aa1663a5 --- /dev/null +++ b/README~ @@ -0,0 +1,145 @@ +To build the software from source, consult the file INSTALL. + +Brief Install Instructions: + +1. Install the 3 Calpont InfiniDB RPMs. +2. Install and start the software, run: /usr/local/Calpont/bin/postConfigure +3. Setup some aliases: . /usr/local/Calpont/bin/calpontAlias +4. Connect to MySQL: idbmysql +5. Try the test in step 12 below + + +Detailed Installation Instructions: + +1. Download the package calpont-2.2.0-2.x86_64.rpm.tar.gz (RHEL5 64-BIT) + to the server where you are installing Calpont. + +2. Obtain root user access. + +3. Unpack the tarball, which will generate 4 RPMs. + + tar xvf calpont-2.2.0-2.x86_64.rpm.tar.gz + +4. Install the 3 RPMs in this order, the Calpont InfiniDB software will be installed in + /usr/local/Calpont. + + rpm -ivh infinidb-libs-2.2.0-2.x86_64.rpm + rpm -ivh infinidb-platform-2.2.0-2.x86_64.rpm + rpm -ivh infinidb-mysql-2.2.0-2.x86_64.rpm + rpm -ivh infinidb-storage-engine-2.2.0-2.x86_64.rpm + +5a.To configure and run on a single server system utilizing local disk storage, + run install script: + + /usr/local/Calpont/bin/postConfigure + +5b.To configure and run on a multi-server system and/or to utilize a SAN storage + system, follow the instructions in the Calpont InfiniDB Installation Guide. + + /usr/local/Calpont/bin/postConfigure + +6. Ports utilized by the Calpont InfiniDB Software + + The Calpont MySQL daemon utilizes port 3306. To use a different port, update + the 2 locations in the following file: + + /usr/local/Calpont/mysql/my.cnf + + port = 3306 + port = 3306 + + You must reserve the following ports to run the Calpont InfiniDB Software: + + 8600 - 8622, 8700, and 8800 + +7. Setup some aliases: +. /usr/local/Calpont/bin/calpontAlias + +8. To manually start and stop the Calpont InfiniDB Software as the root user run: + + cc startSystem + + To stop the Calpont Software, run: + + cc stopSystem + +9. To start/stop the Calpont InfiniDB Software during system boot/shutdown use the + chkconfig command + + /sbin/chkconfig --add infinidb + /sbin/chkconfig infinidb on + +10. After the Calpont InfiniDB Software has been started, use the following command to + connect to the Calpont OAM Console and watch for the System to go to the + ACTIVE status. The follow will repeatedly run the OAM command getsysteminfo + every 5 seconds. + + calpontOAMconsole getsysteminfo -r + + Here is an example display from a Single Server Install: + + System and Module statuses + + Component Status Last Status Change + ------------ ---------------------- ------------------------ + System ACTIVE Mon Apr 6 18:07:14 2009 + + Module dm1 ACTIVE Mon Apr 6 18:07:12 2009 + + Calpont Process statuses + + Process Module Status Last Status Change Process ID + ------------------ ------ ------------ ------------------------ ---------- + ProcessMonitor dm1 ACTIVE Mon Apr 6 18:06:41 2009 12753 + ProcessManager dm1 ACTIVE Mon Apr 6 18:06:46 2009 12954 + SNMPTrapDaemon dm1 ACTIVE Mon Apr 6 18:06:41 2009 12963 + SNMPAgent dm1 ACTIVE Mon Apr 6 18:06:50 2009 13565 + ServerMonitor dm1 ACTIVE Mon Apr 6 18:06:55 2009 13635 + DBRMWorkerNode dm1 ACTIVE Mon Apr 6 18:06:51 2009 13640 + DBRMControllerNode dm1 ACTIVE Mon Apr 6 18:06:52 2009 13645 + ExeMgr dm1 ACTIVE Mon Apr 6 18:07:05 2009 14578 + PrimProc dm1 ACTIVE Mon Apr 6 18:07:03 2009 13842 + DDLProc dm1 ACTIVE Mon Apr 6 18:07:10 2009 14936 + DMLProc dm1 ACTIVE Mon Apr 6 18:07:13 2009 15114 + + Active Alarm Counts: Critical = 0, Major = 0, Minor = 0, Warning = 0, Info = 0 + + Once the System status is ACTIVE, enter the following to exit back to the + UNIX prompt: + + CNTR + + Or to get back Calpont OAM Console Prompt,enter the following: + + CNTR + +11. Use the following command to access the Calpont InfiniDB MySQL console: + + idbmysql + + Example output: + + Welcome to the Mysql monitor. Commands end with ; or \g. + Your Mysql connection id is 1 + Server version: 5.1.26-Calpont-log Source distribution + + Type 'help;' or '\h' for help. Type '\c' to clear the buffer. + + mysql> + +12. Run the following upgrade script to create calponsys schema and upgrade the syscolumn table: /usr/local/Calpont/bin/upgrade-infinidb.sh + +13. As an example to get you started, try this: + + create database calpont; + use calpont; + create table caltest (col1 int, col2 int) engine=infinidb; + show create table caltest; + insert into caltest values (1, 2); + insert into caltest values (3, 4); + commit; + select * from caltest; + +14. Consult the Admin Guide and Syntax Guide for additional information on how + to get started. + diff --git a/build/bootstrap b/build/bootstrap index df6bce7fd..4079c926c 100755 --- a/build/bootstrap +++ b/build/bootstrap @@ -18,7 +18,7 @@ cp build/libstdc++.so.6.0.14 export/lib cp build/files.lst $HOME/MariaDB_InfiniDB/export/mysql/. cp dbcon/mysql/install_calpont_mysql.sh $HOME/MariaDB_InfiniDB/export/mysql/. cp dbcon/mysql/my.cnf $HOME/MariaDB_InfiniDB/export/mysql/. -cp dbcon/mysql/mysql-Calpont $HOME/MariaDB_InfiniDB/export/mysql/. +cp dbcon/mysql/mysql-Columnstore $HOME/MariaDB_InfiniDB/export/mysql/. if [ ! $$ ]; then exit 1 diff --git a/build/bootstrap~ b/build/bootstrap~ new file mode 100755 index 000000000..df6bce7fd --- /dev/null +++ b/build/bootstrap~ @@ -0,0 +1,62 @@ +#!/bin/bash +# +# $Id: bootstrap 1333 2011-01-18 17:25:26Z rdempsey $ +# +# This script is responsible for setting up a fresh development tree +# following a git checkout. It copies static files and shared include +# files to the export tree prior to building the software. + +mkdir -p export/{include,lib,etc,share,bin,sbin,post} +if [ ! $$ ]; then + exit 1 +fi + +cp build/gdb export/bin +cp build/libgcc_s.so.1 export/lib +cp build/libstdc++.so.6.0.14 export/lib + +cp build/files.lst $HOME/MariaDB_InfiniDB/export/mysql/. +cp dbcon/mysql/install_calpont_mysql.sh $HOME/MariaDB_InfiniDB/export/mysql/. +cp dbcon/mysql/my.cnf $HOME/MariaDB_InfiniDB/export/mysql/. +cp dbcon/mysql/mysql-Calpont $HOME/MariaDB_InfiniDB/export/mysql/. + +if [ ! $$ ]; then + exit 1 +fi + +cp -p -r utils/net-snmp export/include + +if [ `uname -m` == "x86_64" ]; then + cp -p utils/net-snmp-built-libs/lib64/* export/lib + cp -p utils/net-snmp-built-libs/bin64/* export/sbin +else + egrep -qs Constantine /etc/redhat-release + if [ $? -eq 0 ]; then + cp -p utils/net-snmp-built-libs/fc12lib/libnetsnmp*.so.* export/lib + cp -p utils/net-snmp-built-libs/fc12bin/* export/sbin + else + cp -p utils/net-snmp-built-libs/fc6lib/libnetsnmp*.so.* export/lib + cp -p utils/net-snmp-built-libs/fc6bin/* export/sbin + fi +fi + +pushd export/lib >/dev/null +for lib in libnetsnmpagent.so libnetsnmphelpers.so libnetsnmpmibs.so libnetsnmp.so libnetsnmptrapd.so; do + rm -f ${lib} ${lib}.5 + ln -s ${lib}.5.2.1 ${lib}.5 + ln -s ${lib}.5.2.1 ${lib} +done +popd >/dev/null + +./build/genVersion.sh + +for x in \ +$(find . -name '[mM]akefile' \ + | xargs grep -l ^bootstrap: \ + | cut -f 2 -d / \ + | sort -u) +do + echo bootstrapping $x + make BOOTSTRAP=1 -C $x bootstrap +done + diff --git a/build/build.kdevelop b/build/build.kdevelop index a4facc59e..75f369f85 100644 --- a/build/build.kdevelop +++ b/build/build.kdevelop @@ -1,25 +1,25 @@ - + - - - dhill@srvhill04.calpont.com - $VERSION$ - KDevCustomProject - C - - - - - - build - - - - + + dhill@srvhill04.calpont.com + $VERSION$ + KDevCustomProject + C + - - + + + build + executable + + + + + + + + ada ada_bugs_gcc @@ -66,7 +66,7 @@ KDE Libraries (Doxygen) - + @@ -74,4 +74,29 @@ + + + + true + true + true + false + true + true + true + 250 + 400 + 250 + + + + + false + false + + + *.o,*.lo,CVS + false + + diff --git a/build/build.kdevelop.filelist b/build/build.kdevelop.filelist new file mode 100644 index 000000000..240dbec96 --- /dev/null +++ b/build/build.kdevelop.filelist @@ -0,0 +1 @@ +# KDevelop Custom Project File List diff --git a/build/build.kdevelop.pcs b/build/build.kdevelop.pcs new file mode 100644 index 0000000000000000000000000000000000000000..66ff7ae7ccc4785895fa01bea0153872e17b395b GIT binary patch literal 287536 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 Ov8b*-kKF%j%KrhM|7p?y literal 0 HcmV?d00001 diff --git a/build/build.kdevses b/build/build.kdevses new file mode 100644 index 000000000..68701928f --- /dev/null +++ b/build/build.kdevses @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/build/columnstore.spec.in b/build/columnstore.spec.in index b5b09cb8a..a0d6c6ed5 100644 --- a/build/columnstore.spec.in +++ b/build/columnstore.spec.in @@ -43,6 +43,7 @@ InfiniDB Enterprise binary files %package storage-engine Summary: MariaDB-Columnstore software MariaDB connector Group: Applications +Obsoletes: columnstore-mysql Requires: columnstore-libs %description storage-engine @@ -341,7 +342,7 @@ rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/%{name}-%{version}-%{release} /usr/local/MariaDB/Columnstore/lib/libcalmysql.so.1.0.0 /usr/local/MariaDB/Columnstore/lib/libudf_mysql.so.1.0.0 -/usr/local/MariaDB/Columnstore/mysql/mysql-Calpont +/usr/local/MariaDB/Columnstore/mysql/mysql-Columnstore /usr/local/MariaDB/Columnstore/mysql/install_calpont_mysql.sh /usr/local/MariaDB/Columnstore/mysql/syscatalog_mysql.sql /usr/local/MariaDB/Columnstore/mysql/dumpcat_mysql.sql diff --git a/build/columnstore.spec.in~ b/build/columnstore.spec.in~ index ae423ea09..e2776558e 100644 --- a/build/columnstore.spec.in~ +++ b/build/columnstore.spec.in~ @@ -1,8 +1,8 @@ # # $Id$ # -Summary: InfiniDB-MariaDB software -Name: infinidb +Summary: MariaDB-Columnstore software +Name: columnstore @@VERSION@@ @@RELEASE@@ Vendor: MariaDB, Inc. @@ -13,44 +13,41 @@ License: Copyright (c) 2016 MariaDB, Inc., all rights reserved; redistributable BuildRoot: %{_tmppath}/%{name}-%{release}-buildroot %description -InfiniDB-MariaDB software meta-package +MariaDB-Columnstore software meta-package %package platform -Summary: InfiniDB-MariaDB software binaries +Summary: MariaDB-Columnstore software binaries Group: Applications -Obsoletes: calpont -Requires: expect, infinidb-libs +Requires: expect, columnstore-libs %description platform -InfiniDB-MariaDB binary files +MariaDB-Columnstore binary files @@BUILDINFO@@ %package libs -Summary: InfiniDB-MariaDB software libraries +Summary: MariaDB-Columnstore software libraries Group: Applications -Obsoletes: calpont %description libs -InfiniDB-MariaDB libraries +MariaDB-Columnstore libraries %package enterprise Summary: InfiniDB Enterprise software binaries Group: Applications -Obsoletes: calpont -Requires: infinidb-libs, infinidb-platform -License: Proprietary; Copyright (c) 2014 InfiniDB, Inc., all rights reserved +Requires: columnstore-libs, columnstore-platform +License: Proprietary; Copyright (c) 2016 MariaDB, Inc., all rights reserved %description enterprise InfiniDB Enterprise binary files %package storage-engine -Summary: InfiniDB-MariaDB software MariaDB connector +Summary: MariaDB-Columnstore software MariaDB connector Group: Applications -Obsoletes: calpont-mysql -Requires: infinidb-libs +Obsoletes: columnstore-mysql +Requires: columnstore-libs %description storage-engine -InfiniDB MariaDB connector binary files +MariaDB Columnstore connector binary files %prep %define _use_internal_dependency_generator 0 @@ -85,15 +82,15 @@ rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/%{name}-%{version}-%{release} /usr/local/MariaDB/Columnstore/bin/pre-uninstall /usr/local/MariaDB/Columnstore/bin/PrimProc /usr/local/MariaDB/Columnstore/bin/DecomSvr -/usr/local/MariaDB/Columnstore/bin/upgrade-infinidb.sh +/usr/local/MariaDB/Columnstore/bin/upgrade-columnstore.sh /usr/local/MariaDB/Columnstore/bin/run.sh -/usr/local/MariaDB/Columnstore/bin/infinidb -/usr/local/MariaDB/Columnstore/bin/calpontSyslog -/usr/local/MariaDB/Columnstore/bin/calpontSyslog7 -/usr/local/MariaDB/Columnstore/bin/calpontSyslog-ng +/usr/local/MariaDB/Columnstore/bin/columnstore +/usr/local/MariaDB/Columnstore/bin/columnstoreSyslog +/usr/local/MariaDB/Columnstore/bin/columnstoreSyslog7 +/usr/local/MariaDB/Columnstore/bin/columnstoreSyslog-ng /usr/local/MariaDB/Columnstore/bin/syslogSetup.sh /usr/local/MariaDB/Columnstore/bin/cplogger -/usr/local/MariaDB/Columnstore/bin/infinidb.def +/usr/local/MariaDB/Columnstore/bin/columnstore.def /usr/local/MariaDB/Columnstore/bin/dbbuilder /usr/local/MariaDB/Columnstore/bin/cpimport.bin /usr/local/MariaDB/Columnstore/bin/load_brm @@ -110,18 +107,14 @@ rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/%{name}-%{version}-%{release} /usr/local/MariaDB/Columnstore/bin/trapHandler /usr/local/MariaDB/Columnstore/bin/remote_command.sh /usr/local/MariaDB/Columnstore/bin/postConfigure -/usr/local/MariaDB/Columnstore/bin/calpontLogRotate +/usr/local/MariaDB/Columnstore/bin/columnstoreLogRotate /usr/local/MariaDB/Columnstore/bin/transactionLog -/usr/local/MariaDB/Columnstore/bin/calpontDBWrite +/usr/local/MariaDB/Columnstore/bin/columnstoreDBWrite /usr/local/MariaDB/Columnstore/bin/transactionLogArchiver.sh /usr/local/MariaDB/Columnstore/bin/system_installer.sh /usr/local/MariaDB/Columnstore/bin/installer /usr/local/MariaDB/Columnstore/bin/module_installer.sh /usr/local/MariaDB/Columnstore/bin/patchInstaller -/usr/local/MariaDB/Columnstore/bin/patch_installer.sh -/usr/local/MariaDB/Columnstore/bin/xm_installer.sh -/usr/local/MariaDB/Columnstore/bin/calpontUninstall.sh -/usr/local/MariaDB/Columnstore/bin/director_installer.sh /usr/local/MariaDB/Columnstore/bin/user_installer.sh /usr/local/MariaDB/Columnstore/bin/performance_installer.sh /usr/local/MariaDB/Columnstore/bin/startupTests.sh @@ -130,10 +123,10 @@ rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/%{name}-%{version}-%{release} /usr/local/MariaDB/Columnstore/bin/remote_scp_put.sh /usr/local/MariaDB/Columnstore/bin/remotessh.exp /usr/local/MariaDB/Columnstore/bin/ServerMonitor -/usr/local/MariaDB/Columnstore/bin/master-rep-infinidb.sh -/usr/local/MariaDB/Columnstore/bin/slave-rep-infinidb.sh +/usr/local/MariaDB/Columnstore/bin/master-rep-columnstore.sh +/usr/local/MariaDB/Columnstore/bin/slave-rep-columnstore.sh /usr/local/MariaDB/Columnstore/bin/rsync.sh -/usr/local/MariaDB/Columnstore/bin/calpontSupport +/usr/local/MariaDB/Columnstore/bin/columnstoreSupport /usr/local/MariaDB/Columnstore/bin/hardwareReport.sh /usr/local/MariaDB/Columnstore/bin/softwareReport.sh /usr/local/MariaDB/Columnstore/bin/configReport.sh @@ -144,7 +137,7 @@ rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/%{name}-%{version}-%{release} /usr/local/MariaDB/Columnstore/bin/alarmReport.sh /usr/local/MariaDB/Columnstore/bin/amazonInstaller /usr/local/MariaDB/Columnstore/bin/remote_command_verify.sh -/usr/local/MariaDB/Columnstore/bin/disable-rep-infinidb.sh +/usr/local/MariaDB/Columnstore/bin/disable-rep-columnstore.sh # @@ -175,7 +168,7 @@ rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/%{name}-%{version}-%{release} /usr/local/MariaDB/Columnstore/bin/hdfsCheck /usr/local/MariaDB/Columnstore/bin/configxml.sh /usr/local/MariaDB/Columnstore/bin/remote_scp_get.sh -/usr/local/MariaDB/Columnstore/bin/calpontAlias +/usr/local/MariaDB/Columnstore/bin/columnstoreAlias /usr/local/MariaDB/Columnstore/bin/autoConfigure /usr/local/MariaDB/Columnstore/bin/ddlcleanup /usr/local/MariaDB/Columnstore/bin/idbmeminfo @@ -186,7 +179,7 @@ rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/%{name}-%{version}-%{release} /usr/local/MariaDB/Columnstore/bin/myCnf-exclude-args.text /usr/local/MariaDB/Columnstore/bin/mycnfUpgrade /usr/local/MariaDB/Columnstore/bin/getMySQLpw -/usr/local/MariaDB/Columnstore/bin/infinidb.conf +/usr/local/MariaDB/Columnstore/bin/columnstore.conf /usr/local/MariaDB/Columnstore/sbin/snmpd /usr/local/MariaDB/Columnstore/sbin/snmptrapd diff --git a/config.log b/config.log index fb9a18023..ea81f8654 100644 --- a/config.log +++ b/config.log @@ -27,9 +27,9 @@ hostinfo = unknown /usr/bin/oslevel = unknown /bin/universe = unknown -PATH: /usr/local/Calpont/bin +PATH: /usr/local/MariaDB/Columnstore/bin PATH: /home/calpont/bin -PATH: /usr/local/Calpont/bin +PATH: /usr/local/MariaDB/Columnstore/bin PATH: /home/calpont/bin PATH: /usr/lib64/qt-3.3/bin PATH: /usr/local/bin diff --git a/config.log~ b/config.log~ new file mode 100644 index 000000000..fb9a18023 --- /dev/null +++ b/config.log~ @@ -0,0 +1,5068 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by infinidb configure 4.6.1, which was +generated by GNU Autoconf 2.59. Invocation command line was + + $ ./configure + +## --------- ## +## Platform. ## +## --------- ## + +hostname = srvhall03 +uname -m = x86_64 +uname -r = 2.6.32-431.29.2.el6.x86_64 +uname -s = Linux +uname -v = #1 SMP Tue Sep 9 21:36:05 UTC 2014 + +/usr/bin/uname -p = unknown +/bin/uname -X = unknown + +/bin/arch = x86_64 +/usr/bin/arch -k = unknown +/usr/convex/getsysinfo = unknown +hostinfo = unknown +/bin/machine = unknown +/usr/bin/oslevel = unknown +/bin/universe = unknown + +PATH: /usr/local/Calpont/bin +PATH: /home/calpont/bin +PATH: /usr/local/Calpont/bin +PATH: /home/calpont/bin +PATH: /usr/lib64/qt-3.3/bin +PATH: /usr/local/bin +PATH: /usr/bin +PATH: /bin +PATH: /usr/local/sbin +PATH: /usr/sbin +PATH: /sbin +PATH: /home/calpont/bin + + +## ----------- ## +## Core tests. ## +## ----------- ## + +configure:1567: checking for a BSD-compatible install +configure:1623: result: /usr/bin/install -p +configure:1634: checking whether build environment is sane +configure:1677: result: yes +configure:1742: checking for gawk +configure:1758: found /usr/bin/gawk +configure:1768: result: gawk +configure:1778: checking whether make sets $(MAKE) +configure:1798: result: yes +configure:2025: checking for gcc +configure:2041: found /usr/bin/gcc +configure:2051: result: gcc +configure:2295: checking for C compiler version +configure:2298: gcc --version &5 +gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11) +Copyright (C) 2010 Free Software Foundation, Inc. +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +configure:2301: $? = 0 +configure:2303: gcc -v &5 +Using built-in specs. +Target: x86_64-redhat-linux +Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux +Thread model: posix +gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) +configure:2306: $? = 0 +configure:2308: gcc -V &5 +gcc: '-V' option must have argument +configure:2311: $? = 1 +configure:2334: checking for C compiler default output file name +configure:2337: gcc conftest.c >&5 +configure:2340: $? = 0 +configure:2386: result: a.out +configure:2391: checking whether the C compiler works +configure:2397: ./a.out +configure:2400: $? = 0 +configure:2417: result: yes +configure:2424: checking whether we are cross compiling +configure:2426: result: no +configure:2429: checking for suffix of executables +configure:2431: gcc -o conftest conftest.c >&5 +configure:2434: $? = 0 +configure:2459: result: +configure:2465: checking for suffix of object files +configure:2486: gcc -c conftest.c >&5 +configure:2489: $? = 0 +configure:2511: result: o +configure:2515: checking whether we are using the GNU C compiler +configure:2539: gcc -c conftest.c >&5 +configure:2545: $? = 0 +configure:2549: test -z + || test ! -s conftest.err +configure:2552: $? = 0 +configure:2555: test -s conftest.o +configure:2558: $? = 0 +configure:2571: result: yes +configure:2577: checking whether gcc accepts -g +configure:2598: gcc -c -g conftest.c >&5 +configure:2604: $? = 0 +configure:2608: test -z + || test ! -s conftest.err +configure:2611: $? = 0 +configure:2614: test -s conftest.o +configure:2617: $? = 0 +configure:2628: result: yes +configure:2645: checking for gcc option to accept ANSI C +configure:2715: gcc -c conftest.c >&5 +configure:2721: $? = 0 +configure:2725: test -z + || test ! -s conftest.err +configure:2728: $? = 0 +configure:2731: test -s conftest.o +configure:2734: $? = 0 +configure:2752: result: none needed +configure:2770: gcc -c conftest.c >&5 +conftest.c:2: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'me' +configure:2776: $? = 1 +configure: failed program was: +| #ifndef __cplusplus +| choke me +| #endif +configure:2920: checking for style of include used by make +configure:2948: result: GNU +configure:2976: checking dependency style of gcc +configure:3066: result: gcc3 +configure:3140: checking for g++ +configure:3156: found /usr/bin/g++ +configure:3166: result: g++ +configure:3182: checking for C++ compiler version +configure:3185: g++ --version &5 +g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11) +Copyright (C) 2010 Free Software Foundation, Inc. +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +configure:3188: $? = 0 +configure:3190: g++ -v &5 +Using built-in specs. +Target: x86_64-redhat-linux +Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux +Thread model: posix +gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) +configure:3193: $? = 0 +configure:3195: g++ -V &5 +g++: '-V' option must have argument +configure:3198: $? = 1 +configure:3201: checking whether we are using the GNU C++ compiler +configure:3225: g++ -c conftest.cc >&5 +configure:3231: $? = 0 +configure:3235: test -z + || test ! -s conftest.err +configure:3238: $? = 0 +configure:3241: test -s conftest.o +configure:3244: $? = 0 +configure:3257: result: yes +configure:3263: checking whether g++ accepts -g +configure:3284: g++ -c -g conftest.cc >&5 +configure:3290: $? = 0 +configure:3294: test -z + || test ! -s conftest.err +configure:3297: $? = 0 +configure:3300: test -s conftest.o +configure:3303: $? = 0 +configure:3314: result: yes +configure:3356: g++ -c conftest.cc >&5 +configure:3362: $? = 0 +configure:3366: test -z + || test ! -s conftest.err +configure:3369: $? = 0 +configure:3372: test -s conftest.o +configure:3375: $? = 0 +configure:3401: g++ -c conftest.cc >&5 +conftest.cc: In function 'int main()': +conftest.cc:15: error: 'exit' was not declared in this scope +configure:3407: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| /* end confdefs.h. */ +| +| int +| main () +| { +| exit (42); +| ; +| return 0; +| } +configure:3356: g++ -c conftest.cc >&5 +conftest.cc:11: error: 'void std::exit(int)' should have been declared inside 'std' +configure:3362: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| /* end confdefs.h. */ +| extern "C" void std::exit (int) throw (); using std::exit; +| #include +| int +| main () +| { +| exit (42); +| ; +| return 0; +| } +configure:3356: g++ -c conftest.cc >&5 +conftest.cc:11: error: 'void std::exit(int)' should have been declared inside 'std' +In file included from conftest.cc:12: +/usr/include/stdlib.h:544: error: declaration of 'void std::exit(int) throw ()' throws different exceptions +conftest.cc:11: error: from previous declaration 'void std::exit(int)' +configure:3362: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| /* end confdefs.h. */ +| extern "C" void std::exit (int); using std::exit; +| #include +| int +| main () +| { +| exit (42); +| ; +| return 0; +| } +configure:3356: g++ -c conftest.cc >&5 +configure:3362: $? = 0 +configure:3366: test -z + || test ! -s conftest.err +configure:3369: $? = 0 +configure:3372: test -s conftest.o +configure:3375: $? = 0 +configure:3401: g++ -c conftest.cc >&5 +configure:3407: $? = 0 +configure:3411: test -z + || test ! -s conftest.err +configure:3414: $? = 0 +configure:3417: test -s conftest.o +configure:3420: $? = 0 +configure:3445: checking dependency style of g++ +configure:3535: result: gcc3 +configure:3635: checking build system type +configure:3653: result: x86_64-unknown-linux-gnu +configure:3661: checking host system type +configure:3675: result: x86_64-unknown-linux-gnu +configure:3683: checking for a sed that does not truncate output +configure:3739: result: /bin/sed +configure:3742: checking for egrep +configure:3752: result: grep -E +configure:3768: checking for ld used by gcc +configure:3835: result: /usr/bin/ld +configure:3844: checking if the linker (/usr/bin/ld) is GNU ld +configure:3859: result: yes +configure:3864: checking for /usr/bin/ld option to reload object files +configure:3871: result: -r +configure:3889: checking for BSD-compatible nm +configure:3938: result: /usr/bin/nm -B +configure:3942: checking whether ln -s works +configure:3946: result: yes +configure:3953: checking how to recognise dependent libraries +configure:4129: result: pass_all +configure:4217: g++ -c conftest.cc >&5 +configure:4220: $? = 0 +configure:4366: checking how to run the C preprocessor +configure:4401: gcc -E conftest.c +configure:4407: $? = 0 +configure:4439: gcc -E conftest.c +conftest.c:14:28: error: ac_nonexistent.h: No such file or directory +configure:4445: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| /* end confdefs.h. */ +| #include +configure:4484: result: gcc -E +configure:4508: gcc -E conftest.c +configure:4514: $? = 0 +configure:4546: gcc -E conftest.c +conftest.c:14:28: error: ac_nonexistent.h: No such file or directory +configure:4552: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| /* end confdefs.h. */ +| #include +configure:4596: checking for ANSI C header files +configure:4621: gcc -c conftest.c >&5 +configure:4627: $? = 0 +configure:4631: test -z + || test ! -s conftest.err +configure:4634: $? = 0 +configure:4637: test -s conftest.o +configure:4640: $? = 0 +configure:4729: gcc -o conftest conftest.c >&5 +conftest.c: In function 'main': +conftest.c:31: warning: incompatible implicit declaration of built-in function 'exit' +configure:4732: $? = 0 +configure:4734: ./conftest +configure:4737: $? = 0 +configure:4752: result: yes +configure:4776: checking for sys/types.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for sys/stat.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for stdlib.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for string.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for memory.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for strings.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for inttypes.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for stdint.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4776: checking for unistd.h +configure:4792: gcc -c conftest.c >&5 +configure:4798: $? = 0 +configure:4802: test -z + || test ! -s conftest.err +configure:4805: $? = 0 +configure:4808: test -s conftest.o +configure:4811: $? = 0 +configure:4822: result: yes +configure:4848: checking dlfcn.h usability +configure:4860: gcc -c conftest.c >&5 +configure:4866: $? = 0 +configure:4870: test -z + || test ! -s conftest.err +configure:4873: $? = 0 +configure:4876: test -s conftest.o +configure:4879: $? = 0 +configure:4889: result: yes +configure:4893: checking dlfcn.h presence +configure:4903: gcc -E conftest.c +configure:4909: $? = 0 +configure:4929: result: yes +configure:4964: checking for dlfcn.h +configure:4971: result: yes +configure:4994: checking how to run the C++ preprocessor +configure:5025: g++ -E conftest.cc +configure:5031: $? = 0 +configure:5063: g++ -E conftest.cc +conftest.cc:25:28: error: ac_nonexistent.h: No such file or directory +configure:5069: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| /* end confdefs.h. */ +| #include +configure:5108: result: g++ -E +configure:5132: g++ -E conftest.cc +configure:5138: $? = 0 +configure:5170: g++ -E conftest.cc +conftest.cc:25:28: error: ac_nonexistent.h: No such file or directory +configure:5176: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| /* end confdefs.h. */ +| #include +configure:5273: checking for g77 +configure:5302: result: no +configure:5273: checking for f77 +configure:5302: result: no +configure:5273: checking for xlf +configure:5302: result: no +configure:5273: checking for frt +configure:5302: result: no +configure:5273: checking for pgf77 +configure:5302: result: no +configure:5273: checking for fort77 +configure:5302: result: no +configure:5273: checking for fl32 +configure:5302: result: no +configure:5273: checking for af77 +configure:5302: result: no +configure:5273: checking for f90 +configure:5302: result: no +configure:5273: checking for xlf90 +configure:5302: result: no +configure:5273: checking for pgf90 +configure:5302: result: no +configure:5273: checking for epcf90 +configure:5302: result: no +configure:5273: checking for f95 +configure:5302: result: no +configure:5273: checking for fort +configure:5302: result: no +configure:5273: checking for xlf95 +configure:5302: result: no +configure:5273: checking for ifc +configure:5302: result: no +configure:5273: checking for efc +configure:5302: result: no +configure:5273: checking for pgf95 +configure:5302: result: no +configure:5273: checking for lf95 +configure:5302: result: no +configure:5273: checking for gfortran +configure:5302: result: no +configure:5314: checking for Fortran 77 compiler version +configure:5317: --version &5 +./configure: line 5318: --version: command not found +configure:5320: $? = 127 +configure:5322: -v &5 +./configure: line 5323: -v: command not found +configure:5325: $? = 127 +configure:5327: -V &5 +./configure: line 5328: -V: command not found +configure:5330: $? = 127 +configure:5338: checking whether we are using the GNU Fortran 77 compiler +configure:5352: -c conftest.F >&5 +./configure: line 5353: -c: command not found +configure:5358: $? = 127 +configure: failed program was: +| program main +| #ifndef __GNUC__ +| choke me +| #endif +| +| end +configure:5384: result: no +configure:5390: checking whether accepts -g +configure:5402: -c -g conftest.f >&5 +./configure: line 5403: -c: command not found +configure:5408: $? = 127 +configure: failed program was: +| program main +| +| end +configure:5433: result: no +configure:5463: checking the maximum length of command line arguments +configure:5572: result: 32768 +configure:5583: checking command to parse /usr/bin/nm -B output from gcc object +configure:5688: g++ -c conftest.cc >&5 +configure:5691: $? = 0 +configure:5695: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm +configure:5698: $? = 0 +configure:5750: g++ -o conftest conftest.cc conftstm.o >&5 +configure:5753: $? = 0 +configure:5791: result: ok +configure:5795: checking for objdir +configure:5810: result: .libs +configure:5900: checking for ar +configure:5916: found /usr/bin/ar +configure:5927: result: ar +configure:5980: checking for ranlib +configure:5996: found /usr/bin/ranlib +configure:6007: result: ranlib +configure:6060: checking for strip +configure:6076: found /usr/bin/strip +configure:6087: result: strip +configure:6359: checking if gcc supports -fno-rtti -fno-exceptions +configure:6377: gcc -c -fno-rtti -fno-exceptions conftest.c >&5 +cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C +configure:6381: $? = 0 +configure:6394: result: no +configure:6409: checking for gcc option to produce PIC +configure:6619: result: -fPIC +configure:6627: checking if gcc PIC flag -fPIC works +configure:6645: gcc -c -fPIC -DPIC conftest.c >&5 +configure:6649: $? = 0 +configure:6662: result: yes +configure:6690: checking if gcc static flag -static works +configure:6718: result: no +configure:6728: checking if gcc supports -c -o file.o +configure:6749: gcc -c -o out/conftest2.o conftest.c >&5 +configure:6753: $? = 0 +configure:6775: result: yes +configure:6801: checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries +configure:7759: result: yes +configure:7780: checking whether -lc should be explicitly linked in +configure:7785: gcc -c conftest.c >&5 +configure:7788: $? = 0 +configure:7803: gcc -shared conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| grep -lc \>/dev/null 2\>\&1 +configure:7806: $? = 0 +configure:7818: result: no +configure:7826: checking dynamic linker characteristics +configure:8219: gcc -c conftest.c >&5 +configure:8222: $? = 0 +configure:8435: result: GNU/Linux ld.so +configure:8444: checking how to hardcode library paths into programs +configure:8469: result: immediate +configure:8483: checking whether stripping libraries is possible +configure:8488: result: yes +configure:9322: checking if libtool supports shared libraries +configure:9324: result: yes +configure:9327: checking whether to build shared libraries +configure:9348: result: yes +configure:9351: checking whether to build static libraries +configure:9355: result: no +configure:9447: creating libtool +configure:10038: checking for ld used by g++ +configure:10105: result: /usr/bin/ld -m elf_x86_64 +configure:10114: checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld +configure:10129: result: yes +configure:10180: checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries +configure:11118: result: yes +configure:11136: g++ -c conftest.cpp >&5 +configure:11139: $? = 0 +configure:11258: checking for g++ option to produce PIC +configure:11532: result: -fPIC +configure:11540: checking if g++ PIC flag -fPIC works +configure:11558: g++ -c -fPIC -DPIC conftest.cpp >&5 +configure:11562: $? = 0 +configure:11575: result: yes +configure:11603: checking if g++ static flag -static works +configure:11631: result: no +configure:11641: checking if g++ supports -c -o file.o +configure:11662: g++ -c -o out/conftest2.o conftest.cpp >&5 +configure:11666: $? = 0 +configure:11688: result: yes +configure:11714: checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries +configure:11739: result: yes +configure:11806: checking dynamic linker characteristics +configure:12199: g++ -c conftest.cpp >&5 +configure:12202: $? = 0 +configure:12415: result: GNU/Linux ld.so +configure:12424: checking how to hardcode library paths into programs +configure:12449: result: immediate +configure:18666: checking for a BSD-compatible install +configure:18722: result: /usr/bin/install -p +configure:18737: checking for flex +configure:18753: found /usr/bin/flex +configure:18763: result: flex +configure:18776: checking for yywrap in -lfl +configure:18806: g++ -o conftest conftest.cc -lfl >&5 +configure:18812: $? = 0 +configure:18816: test -z + || test ! -s conftest.err +configure:18819: $? = 0 +configure:18822: test -s conftest +configure:18825: $? = 0 +configure:18838: result: yes +configure:18916: checking lex output file root +configure:18927: flex conftest.l +configure:18930: $? = 0 +configure:18942: result: lex.yy +configure:18947: checking whether yytext is a pointer +configure:18963: g++ -o conftest conftest.cc -lfl >&5 +/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libfl.a(libmain.o): In function `main': +(.text+0xb): undefined reference to `yylex' +collect2: ld returned 1 exit status +configure:18969: $? = 1 +configure: failed program was: +| +| #line 3 "lex.yy.c" +| +| #define YY_INT_ALIGNED short int +| +| /* A lexical scanner generated by flex */ +| +| #define FLEX_SCANNER +| #define YY_FLEX_MAJOR_VERSION 2 +| #define YY_FLEX_MINOR_VERSION 5 +| #define YY_FLEX_SUBMINOR_VERSION 35 +| #if YY_FLEX_SUBMINOR_VERSION > 0 +| #define FLEX_BETA +| #endif +| +| /* First, we deal with platform-specific or compiler-specific issues. */ +| +| /* begin standard C headers. */ +| #include +| #include +| #include +| #include +| +| /* end standard C headers. */ +| +| /* flex integer type definitions */ +| +| #ifndef FLEXINT_H +| #define FLEXINT_H +| +| /* C99 systems have . Non-C99 systems may or may not. */ +| +| #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L +| +| /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, +| * if you want the limit (max/min) macros for int types. +| */ +| #ifndef __STDC_LIMIT_MACROS +| #define __STDC_LIMIT_MACROS 1 +| #endif +| +| #include +| typedef int8_t flex_int8_t; +| typedef uint8_t flex_uint8_t; +| typedef int16_t flex_int16_t; +| typedef uint16_t flex_uint16_t; +| typedef int32_t flex_int32_t; +| typedef uint32_t flex_uint32_t; +| #else +| typedef signed char flex_int8_t; +| typedef short int flex_int16_t; +| typedef int flex_int32_t; +| typedef unsigned char flex_uint8_t; +| typedef unsigned short int flex_uint16_t; +| typedef unsigned int flex_uint32_t; +| #endif /* ! C99 */ +| +| /* Limits of integral types. */ +| #ifndef INT8_MIN +| #define INT8_MIN (-128) +| #endif +| #ifndef INT16_MIN +| #define INT16_MIN (-32767-1) +| #endif +| #ifndef INT32_MIN +| #define INT32_MIN (-2147483647-1) +| #endif +| #ifndef INT8_MAX +| #define INT8_MAX (127) +| #endif +| #ifndef INT16_MAX +| #define INT16_MAX (32767) +| #endif +| #ifndef INT32_MAX +| #define INT32_MAX (2147483647) +| #endif +| #ifndef UINT8_MAX +| #define UINT8_MAX (255U) +| #endif +| #ifndef UINT16_MAX +| #define UINT16_MAX (65535U) +| #endif +| #ifndef UINT32_MAX +| #define UINT32_MAX (4294967295U) +| #endif +| +| #endif /* ! FLEXINT_H */ +| +| #ifdef __cplusplus +| +| /* The "const" storage-class-modifier is valid. */ +| #define YY_USE_CONST +| +| #else /* ! __cplusplus */ +| +| /* C99 requires __STDC__ to be defined as 1. */ +| #if defined (__STDC__) +| +| #define YY_USE_CONST +| +| #endif /* defined (__STDC__) */ +| #endif /* ! __cplusplus */ +| +| #ifdef YY_USE_CONST +| #define yyconst const +| #else +| #define yyconst +| #endif +| +| /* Returned upon end-of-file. */ +| #define YY_NULL 0 +| +| /* Promotes a possibly negative, possibly signed char to an unsigned +| * integer for use as an array index. If the signed char is negative, +| * we want to instead treat it as an 8-bit unsigned char, hence the +| * double cast. +| */ +| #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) +| +| /* Enter a start condition. This macro really ought to take a parameter, +| * but we do it the disgusting crufty way forced on us by the ()-less +| * definition of BEGIN. +| */ +| #define BEGIN (yy_start) = 1 + 2 * +| +| /* Translate the current start state into a value that can be later handed +| * to BEGIN to return to the state. The YYSTATE alias is for lex +| * compatibility. +| */ +| #define YY_START (((yy_start) - 1) / 2) +| #define YYSTATE YY_START +| +| /* Action number for EOF rule of a given start state. */ +| #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) +| +| /* Special action meaning "start processing a new file". */ +| #define YY_NEW_FILE yyrestart(yyin ) +| +| #define YY_END_OF_BUFFER_CHAR 0 +| +| /* Size of default input buffer. */ +| #ifndef YY_BUF_SIZE +| #define YY_BUF_SIZE 16384 +| #endif +| +| /* The state buf must be large enough to hold one state per character in the main buffer. +| */ +| #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) +| +| #ifndef YY_TYPEDEF_YY_BUFFER_STATE +| #define YY_TYPEDEF_YY_BUFFER_STATE +| typedef struct yy_buffer_state *YY_BUFFER_STATE; +| #endif +| +| extern int yyleng; +| +| extern FILE *yyin, *yyout; +| +| #define EOB_ACT_CONTINUE_SCAN 0 +| #define EOB_ACT_END_OF_FILE 1 +| #define EOB_ACT_LAST_MATCH 2 +| +| #define YY_LESS_LINENO(n) +| +| /* Return all but the first "n" matched characters back to the input stream. */ +| #define yyless(n) \ +| do \ +| { \ +| /* Undo effects of setting up yytext. */ \ +| int yyless_macro_arg = (n); \ +| YY_LESS_LINENO(yyless_macro_arg);\ +| *yy_cp = (yy_hold_char); \ +| YY_RESTORE_YY_MORE_OFFSET \ +| (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ +| YY_DO_BEFORE_ACTION; /* set up yytext again */ \ +| } \ +| while ( 0 ) +| +| #define unput(c) yyunput( c, (yytext_ptr) ) +| +| #ifndef YY_TYPEDEF_YY_SIZE_T +| #define YY_TYPEDEF_YY_SIZE_T +| typedef size_t yy_size_t; +| #endif +| +| #ifndef YY_STRUCT_YY_BUFFER_STATE +| #define YY_STRUCT_YY_BUFFER_STATE +| struct yy_buffer_state +| { +| FILE *yy_input_file; +| +| char *yy_ch_buf; /* input buffer */ +| char *yy_buf_pos; /* current position in input buffer */ +| +| /* Size of input buffer in bytes, not including room for EOB +| * characters. +| */ +| yy_size_t yy_buf_size; +| +| /* Number of characters read into yy_ch_buf, not including EOB +| * characters. +| */ +| int yy_n_chars; +| +| /* Whether we "own" the buffer - i.e., we know we created it, +| * and can realloc() it to grow it, and should free() it to +| * delete it. +| */ +| int yy_is_our_buffer; +| +| /* Whether this is an "interactive" input source; if so, and +| * if we're using stdio for input, then we want to use getc() +| * instead of fread(), to make sure we stop fetching input after +| * each newline. +| */ +| int yy_is_interactive; +| +| /* Whether we're considered to be at the beginning of a line. +| * If so, '^' rules will be active on the next match, otherwise +| * not. +| */ +| int yy_at_bol; +| +| int yy_bs_lineno; /**< The line count. */ +| int yy_bs_column; /**< The column count. */ +| +| /* Whether to try to fill the input buffer when we reach the +| * end of it. +| */ +| int yy_fill_buffer; +| +| int yy_buffer_status; +| +| #define YY_BUFFER_NEW 0 +| #define YY_BUFFER_NORMAL 1 +| /* When an EOF's been seen but there's still some text to process +| * then we mark the buffer as YY_EOF_PENDING, to indicate that we +| * shouldn't try reading from the input source any more. We might +| * still have a bunch of tokens to match, though, because of +| * possible backing-up. +| * +| * When we actually see the EOF, we change the status to "new" +| * (via yyrestart()), so that the user can continue scanning by +| * just pointing yyin at a new input file. +| */ +| #define YY_BUFFER_EOF_PENDING 2 +| +| }; +| #endif /* !YY_STRUCT_YY_BUFFER_STATE */ +| +| /* Stack of input buffers. */ +| static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ +| static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ +| static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ +| +| /* We provide macros for accessing buffer states in case in the +| * future we want to put the buffer states in a more general +| * "scanner state". +| * +| * Returns the top of the stack, or NULL. +| */ +| #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ +| ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ +| : NULL) +| +| /* Same as previous macro, but useful when we know that the buffer stack is not +| * NULL or when we need an lvalue. For internal use only. +| */ +| #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] +| +| /* yy_hold_char holds the character lost when yytext is formed. */ +| static char yy_hold_char; +| static int yy_n_chars; /* number of characters read into yy_ch_buf */ +| int yyleng; +| +| /* Points to current character in buffer. */ +| static char *yy_c_buf_p = (char *) 0; +| static int yy_init = 0; /* whether we need to initialize */ +| static int yy_start = 0; /* start state number */ +| +| /* Flag which is used to allow yywrap()'s to do buffer switches +| * instead of setting up a fresh yyin. A bit of a hack ... +| */ +| static int yy_did_buffer_switch_on_eof; +| +| void yyrestart (FILE *input_file ); +| void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); +| YY_BUFFER_STATE yy_create_buffer (FILE *file,int size ); +| void yy_delete_buffer (YY_BUFFER_STATE b ); +| void yy_flush_buffer (YY_BUFFER_STATE b ); +| void yypush_buffer_state (YY_BUFFER_STATE new_buffer ); +| void yypop_buffer_state (void ); +| +| static void yyensure_buffer_stack (void ); +| static void yy_load_buffer_state (void ); +| static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); +| +| #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) +| +| YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size ); +| YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str ); +| YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,int len ); +| +| void *yyalloc (yy_size_t ); +| void *yyrealloc (void *,yy_size_t ); +| void yyfree (void * ); +| +| #define yy_new_buffer yy_create_buffer +| +| #define yy_set_interactive(is_interactive) \ +| { \ +| if ( ! YY_CURRENT_BUFFER ){ \ +| yyensure_buffer_stack (); \ +| YY_CURRENT_BUFFER_LVALUE = \ +| yy_create_buffer(yyin,YY_BUF_SIZE ); \ +| } \ +| YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ +| } +| +| #define yy_set_bol(at_bol) \ +| { \ +| if ( ! YY_CURRENT_BUFFER ){\ +| yyensure_buffer_stack (); \ +| YY_CURRENT_BUFFER_LVALUE = \ +| yy_create_buffer(yyin,YY_BUF_SIZE ); \ +| } \ +| YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ +| } +| +| #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) +| +| /* Begin user sect3 */ +| +| typedef unsigned char YY_CHAR; +| +| FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; +| +| typedef int yy_state_type; +| +| extern int yylineno; +| +| int yylineno = 1; +| +| extern char *yytext; +| #define yytext_ptr yytext +| +| static yy_state_type yy_get_previous_state (void ); +| static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); +| static int yy_get_next_buffer (void ); +| static void yy_fatal_error (yyconst char msg[] ); +| +| /* Done after the current pattern has been matched and before the +| * corresponding action - sets up yytext. +| */ +| #define YY_DO_BEFORE_ACTION \ +| (yytext_ptr) = yy_bp; \ +| yyleng = (size_t) (yy_cp - yy_bp); \ +| (yy_hold_char) = *yy_cp; \ +| *yy_cp = '\0'; \ +| (yy_c_buf_p) = yy_cp; +| +| #define YY_NUM_RULES 1 +| #define YY_END_OF_BUFFER 2 +| /* This struct is not used in this scanner, +| but its presence is necessary. */ +| struct yy_trans_info +| { +| flex_int32_t yy_verify; +| flex_int32_t yy_nxt; +| }; +| static yyconst flex_int16_t yy_accept[6] = +| { 0, +| 0, 0, 2, 1, 0 +| } ; +| +| static yyconst flex_int32_t yy_ec[256] = +| { 0, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, +| 1, 1, 1, 1, 1 +| } ; +| +| static yyconst flex_int32_t yy_meta[2] = +| { 0, +| 1 +| } ; +| +| static yyconst flex_int16_t yy_base[7] = +| { 0, +| 0, 0, 2, 3, 3, 0 +| } ; +| +| static yyconst flex_int16_t yy_def[7] = +| { 0, +| 6, 6, 5, 5, 0, 5 +| } ; +| +| static yyconst flex_int16_t yy_nxt[5] = +| { 0, +| 4, 5, 3, 5 +| } ; +| +| static yyconst flex_int16_t yy_chk[5] = +| { 0, +| 6, 3, 5, 5 +| } ; +| +| static yy_state_type yy_last_accepting_state; +| static char *yy_last_accepting_cpos; +| +| extern int yy_flex_debug; +| int yy_flex_debug = 0; +| +| /* The intent behind this definition is that it'll catch +| * any uses of REJECT which flex missed. +| */ +| #define REJECT reject_used_but_not_detected +| #define yymore() yymore_used_but_not_detected +| #define YY_MORE_ADJ 0 +| #define YY_RESTORE_YY_MORE_OFFSET +| char *yytext; +| #line 1 "conftest.l" +| #line 449 "lex.yy.c" +| +| #define INITIAL 0 +| +| #ifndef YY_NO_UNISTD_H +| /* Special case for "unistd.h", since it is non-ANSI. We include it way +| * down here because we want the user's section 1 to have been scanned first. +| * The user has a chance to override it with an option. +| */ +| #include +| #endif +| +| #ifndef YY_EXTRA_TYPE +| #define YY_EXTRA_TYPE void * +| #endif +| +| static int yy_init_globals (void ); +| +| /* Accessor methods to globals. +| These are made visible to non-reentrant scanners for convenience. */ +| +| int yylex_destroy (void ); +| +| int yyget_debug (void ); +| +| void yyset_debug (int debug_flag ); +| +| YY_EXTRA_TYPE yyget_extra (void ); +| +| void yyset_extra (YY_EXTRA_TYPE user_defined ); +| +| FILE *yyget_in (void ); +| +| void yyset_in (FILE * in_str ); +| +| FILE *yyget_out (void ); +| +| void yyset_out (FILE * out_str ); +| +| int yyget_leng (void ); +| +| char *yyget_text (void ); +| +| int yyget_lineno (void ); +| +| void yyset_lineno (int line_number ); +| +| /* Macros after this point can all be overridden by user definitions in +| * section 1. +| */ +| +| #ifndef YY_SKIP_YYWRAP +| #ifdef __cplusplus +| extern "C" int yywrap (void ); +| #else +| extern int yywrap (void ); +| #endif +| #endif +| +| static void yyunput (int c,char *buf_ptr ); +| +| #ifndef yytext_ptr +| static void yy_flex_strncpy (char *,yyconst char *,int ); +| #endif +| +| #ifdef YY_NEED_STRLEN +| static int yy_flex_strlen (yyconst char * ); +| #endif +| +| #ifndef YY_NO_INPUT +| +| #ifdef __cplusplus +| static int yyinput (void ); +| #else +| static int input (void ); +| #endif +| +| #endif +| +| /* Amount of stuff to slurp up with each read. */ +| #ifndef YY_READ_BUF_SIZE +| #define YY_READ_BUF_SIZE 8192 +| #endif +| +| /* Copy whatever the last rule matched to the standard output. */ +| #ifndef ECHO +| /* This used to be an fputs(), but since the string might contain NUL's, +| * we now use fwrite(). +| */ +| #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) +| #endif +| +| /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, +| * is returned in "result". +| */ +| #ifndef YY_INPUT +| #define YY_INPUT(buf,result,max_size) \ +| if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ +| { \ +| int c = '*'; \ +| unsigned n; \ +| for ( n = 0; n < max_size && \ +| (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ +| buf[n] = (char) c; \ +| if ( c == '\n' ) \ +| buf[n++] = (char) c; \ +| if ( c == EOF && ferror( yyin ) ) \ +| YY_FATAL_ERROR( "input in flex scanner failed" ); \ +| result = n; \ +| } \ +| else \ +| { \ +| errno=0; \ +| while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ +| { \ +| if( errno != EINTR) \ +| { \ +| YY_FATAL_ERROR( "input in flex scanner failed" ); \ +| break; \ +| } \ +| errno=0; \ +| clearerr(yyin); \ +| } \ +| }\ +| \ +| +| #endif +| +| /* No semi-colon after return; correct usage is to write "yyterminate();" - +| * we don't want an extra ';' after the "return" because that will cause +| * some compilers to complain about unreachable statements. +| */ +| #ifndef yyterminate +| #define yyterminate() return YY_NULL +| #endif +| +| /* Number of entries by which start-condition stack grows. */ +| #ifndef YY_START_STACK_INCR +| #define YY_START_STACK_INCR 25 +| #endif +| +| /* Report a fatal error. */ +| #ifndef YY_FATAL_ERROR +| #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) +| #endif +| +| /* end tables serialization structures and prototypes */ +| +| /* Default declaration of generated scanner - a define so the user can +| * easily add parameters. +| */ +| #ifndef YY_DECL +| #define YY_DECL_IS_OURS 1 +| +| extern int yylex (void); +| +| #define YY_DECL int yylex (void) +| #endif /* !YY_DECL */ +| +| /* Code executed at the beginning of each rule, after yytext and yyleng +| * have been set up. +| */ +| #ifndef YY_USER_ACTION +| #define YY_USER_ACTION +| #endif +| +| /* Code executed at the end of each rule. */ +| #ifndef YY_BREAK +| #define YY_BREAK break; +| #endif +| +| #define YY_RULE_SETUP \ +| YY_USER_ACTION +| +| /** The main scanner function which does all the work. +| */ +| YY_DECL +| { +| register yy_state_type yy_current_state; +| register char *yy_cp, *yy_bp; +| register int yy_act; +| +| #line 1 "conftest.l" +| +| #line 633 "lex.yy.c" +| +| if ( !(yy_init) ) +| { +| (yy_init) = 1; +| +| #ifdef YY_USER_INIT +| YY_USER_INIT; +| #endif +| +| if ( ! (yy_start) ) +| (yy_start) = 1; /* first start state */ +| +| if ( ! yyin ) +| yyin = stdin; +| +| if ( ! yyout ) +| yyout = stdout; +| +| if ( ! YY_CURRENT_BUFFER ) { +| yyensure_buffer_stack (); +| YY_CURRENT_BUFFER_LVALUE = +| yy_create_buffer(yyin,YY_BUF_SIZE ); +| } +| +| yy_load_buffer_state( ); +| } +| +| while ( 1 ) /* loops until end-of-file is reached */ +| { +| yy_cp = (yy_c_buf_p); +| +| /* Support of yytext. */ +| *yy_cp = (yy_hold_char); +| +| /* yy_bp points to the position in yy_ch_buf of the start of +| * the current run. +| */ +| yy_bp = yy_cp; +| +| yy_current_state = (yy_start); +| yy_match: +| do +| { +| register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; +| if ( yy_accept[yy_current_state] ) +| { +| (yy_last_accepting_state) = yy_current_state; +| (yy_last_accepting_cpos) = yy_cp; +| } +| while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) +| { +| yy_current_state = (int) yy_def[yy_current_state]; +| if ( yy_current_state >= 6 ) +| yy_c = yy_meta[(unsigned int) yy_c]; +| } +| yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; +| ++yy_cp; +| } +| while ( yy_base[yy_current_state] != 3 ); +| +| yy_find_action: +| yy_act = yy_accept[yy_current_state]; +| if ( yy_act == 0 ) +| { /* have to back up */ +| yy_cp = (yy_last_accepting_cpos); +| yy_current_state = (yy_last_accepting_state); +| yy_act = yy_accept[yy_current_state]; +| } +| +| YY_DO_BEFORE_ACTION; +| +| do_action: /* This label is used only to access EOF actions. */ +| +| switch ( yy_act ) +| { /* beginning of action switch */ +| case 0: /* must back up */ +| /* undo the effects of YY_DO_BEFORE_ACTION */ +| *yy_cp = (yy_hold_char); +| yy_cp = (yy_last_accepting_cpos); +| yy_current_state = (yy_last_accepting_state); +| goto yy_find_action; +| +| case 1: +| YY_RULE_SETUP +| #line 2 "conftest.l" +| ECHO; +| YY_BREAK +| #line 721 "lex.yy.c" +| case YY_STATE_EOF(INITIAL): +| yyterminate(); +| +| case YY_END_OF_BUFFER: +| { +| /* Amount of text matched not including the EOB char. */ +| int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; +| +| /* Undo the effects of YY_DO_BEFORE_ACTION. */ +| *yy_cp = (yy_hold_char); +| YY_RESTORE_YY_MORE_OFFSET +| +| if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) +| { +| /* We're scanning a new file or input source. It's +| * possible that this happened because the user +| * just pointed yyin at a new source and called +| * yylex(). If so, then we have to assure +| * consistency between YY_CURRENT_BUFFER and our +| * globals. Here is the right place to do so, because +| * this is the first action (other than possibly a +| * back-up) that will match for the new input source. +| */ +| (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; +| YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; +| YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; +| } +| +| /* Note that here we test for yy_c_buf_p "<=" to the position +| * of the first EOB in the buffer, since yy_c_buf_p will +| * already have been incremented past the NUL character +| * (since all states make transitions on EOB to the +| * end-of-buffer state). Contrast this with the test +| * in input(). +| */ +| if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) +| { /* This was really a NUL. */ +| yy_state_type yy_next_state; +| +| (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; +| +| yy_current_state = yy_get_previous_state( ); +| +| /* Okay, we're now positioned to make the NUL +| * transition. We couldn't have +| * yy_get_previous_state() go ahead and do it +| * for us because it doesn't know how to deal +| * with the possibility of jamming (and we don't +| * want to build jamming into it because then it +| * will run more slowly). +| */ +| +| yy_next_state = yy_try_NUL_trans( yy_current_state ); +| +| yy_bp = (yytext_ptr) + YY_MORE_ADJ; +| +| if ( yy_next_state ) +| { +| /* Consume the NUL. */ +| yy_cp = ++(yy_c_buf_p); +| yy_current_state = yy_next_state; +| goto yy_match; +| } +| +| else +| { +| yy_cp = (yy_c_buf_p); +| goto yy_find_action; +| } +| } +| +| else switch ( yy_get_next_buffer( ) ) +| { +| case EOB_ACT_END_OF_FILE: +| { +| (yy_did_buffer_switch_on_eof) = 0; +| +| if ( yywrap( ) ) +| { +| /* Note: because we've taken care in +| * yy_get_next_buffer() to have set up +| * yytext, we can now set up +| * yy_c_buf_p so that if some total +| * hoser (like flex itself) wants to +| * call the scanner after we return the +| * YY_NULL, it'll still work - another +| * YY_NULL will get returned. +| */ +| (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; +| +| yy_act = YY_STATE_EOF(YY_START); +| goto do_action; +| } +| +| else +| { +| if ( ! (yy_did_buffer_switch_on_eof) ) +| YY_NEW_FILE; +| } +| break; +| } +| +| case EOB_ACT_CONTINUE_SCAN: +| (yy_c_buf_p) = +| (yytext_ptr) + yy_amount_of_matched_text; +| +| yy_current_state = yy_get_previous_state( ); +| +| yy_cp = (yy_c_buf_p); +| yy_bp = (yytext_ptr) + YY_MORE_ADJ; +| goto yy_match; +| +| case EOB_ACT_LAST_MATCH: +| (yy_c_buf_p) = +| &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; +| +| yy_current_state = yy_get_previous_state( ); +| +| yy_cp = (yy_c_buf_p); +| yy_bp = (yytext_ptr) + YY_MORE_ADJ; +| goto yy_find_action; +| } +| break; +| } +| +| default: +| YY_FATAL_ERROR( +| "fatal flex scanner internal error--no action found" ); +| } /* end of action switch */ +| } /* end of scanning one token */ +| } /* end of yylex */ +| +| /* yy_get_next_buffer - try to read in a new buffer +| * +| * Returns a code representing an action: +| * EOB_ACT_LAST_MATCH - +| * EOB_ACT_CONTINUE_SCAN - continue scanning from current position +| * EOB_ACT_END_OF_FILE - end of file +| */ +| static int yy_get_next_buffer (void) +| { +| register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; +| register char *source = (yytext_ptr); +| register int number_to_move, i; +| int ret_val; +| +| if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) +| YY_FATAL_ERROR( +| "fatal flex scanner internal error--end of buffer missed" ); +| +| if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) +| { /* Don't try to fill the buffer, so this is an EOF. */ +| if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) +| { +| /* We matched a single character, the EOB, so +| * treat this as a final EOF. +| */ +| return EOB_ACT_END_OF_FILE; +| } +| +| else +| { +| /* We matched some text prior to the EOB, first +| * process it. +| */ +| return EOB_ACT_LAST_MATCH; +| } +| } +| +| /* Try to read more data. */ +| +| /* First move last chars to start of buffer. */ +| number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; +| +| for ( i = 0; i < number_to_move; ++i ) +| *(dest++) = *(source++); +| +| if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) +| /* don't do the read, it's not guaranteed to return an EOF, +| * just force an EOF +| */ +| YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; +| +| else +| { +| int num_to_read = +| YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; +| +| while ( num_to_read <= 0 ) +| { /* Not enough room in the buffer - grow it. */ +| +| /* just a shorter name for the current buffer */ +| YY_BUFFER_STATE b = YY_CURRENT_BUFFER; +| +| int yy_c_buf_p_offset = +| (int) ((yy_c_buf_p) - b->yy_ch_buf); +| +| if ( b->yy_is_our_buffer ) +| { +| int new_size = b->yy_buf_size * 2; +| +| if ( new_size <= 0 ) +| b->yy_buf_size += b->yy_buf_size / 8; +| else +| b->yy_buf_size *= 2; +| +| b->yy_ch_buf = (char *) +| /* Include room in for 2 EOB chars. */ +| yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); +| } +| else +| /* Can't grow it, we don't own it. */ +| b->yy_ch_buf = 0; +| +| if ( ! b->yy_ch_buf ) +| YY_FATAL_ERROR( +| "fatal error - scanner input buffer overflow" ); +| +| (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; +| +| num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - +| number_to_move - 1; +| +| } +| +| if ( num_to_read > YY_READ_BUF_SIZE ) +| num_to_read = YY_READ_BUF_SIZE; +| +| /* Read in more data. */ +| YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), +| (yy_n_chars), (size_t) num_to_read ); +| +| YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); +| } +| +| if ( (yy_n_chars) == 0 ) +| { +| if ( number_to_move == YY_MORE_ADJ ) +| { +| ret_val = EOB_ACT_END_OF_FILE; +| yyrestart(yyin ); +| } +| +| else +| { +| ret_val = EOB_ACT_LAST_MATCH; +| YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = +| YY_BUFFER_EOF_PENDING; +| } +| } +| +| else +| ret_val = EOB_ACT_CONTINUE_SCAN; +| +| if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { +| /* Extend the array by 50%, plus the number we really need. */ +| yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); +| YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); +| if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) +| YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); +| } +| +| (yy_n_chars) += number_to_move; +| YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; +| YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; +| +| (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; +| +| return ret_val; +| } +| +| /* yy_get_previous_state - get the state just before the EOB char was reached */ +| +| static yy_state_type yy_get_previous_state (void) +| { +| register yy_state_type yy_current_state; +| register char *yy_cp; +| +| yy_current_state = (yy_start); +| +| for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) +| { +| register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); +| if ( yy_accept[yy_current_state] ) +| { +| (yy_last_accepting_state) = yy_current_state; +| (yy_last_accepting_cpos) = yy_cp; +| } +| while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) +| { +| yy_current_state = (int) yy_def[yy_current_state]; +| if ( yy_current_state >= 6 ) +| yy_c = yy_meta[(unsigned int) yy_c]; +| } +| yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; +| } +| +| return yy_current_state; +| } +| +| /* yy_try_NUL_trans - try to make a transition on the NUL character +| * +| * synopsis +| * next_state = yy_try_NUL_trans( current_state ); +| */ +| static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) +| { +| register int yy_is_jam; +| register char *yy_cp = (yy_c_buf_p); +| +| register YY_CHAR yy_c = 1; +| if ( yy_accept[yy_current_state] ) +| { +| (yy_last_accepting_state) = yy_current_state; +| (yy_last_accepting_cpos) = yy_cp; +| } +| while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) +| { +| yy_current_state = (int) yy_def[yy_current_state]; +| if ( yy_current_state >= 6 ) +| yy_c = yy_meta[(unsigned int) yy_c]; +| } +| yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; +| yy_is_jam = (yy_current_state == 5); +| +| return yy_is_jam ? 0 : yy_current_state; +| } +| +| static void yyunput (int c, register char * yy_bp ) +| { +| register char *yy_cp; +| +| yy_cp = (yy_c_buf_p); +| +| /* undo effects of setting up yytext */ +| *yy_cp = (yy_hold_char); +| +| if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) +| { /* need to shift things up to make room */ +| /* +2 for EOB chars. */ +| register int number_to_move = (yy_n_chars) + 2; +| register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ +| YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; +| register char *source = +| &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; +| +| while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) +| *--dest = *--source; +| +| yy_cp += (int) (dest - source); +| yy_bp += (int) (dest - source); +| YY_CURRENT_BUFFER_LVALUE->yy_n_chars = +| (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; +| +| if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) +| YY_FATAL_ERROR( "flex scanner push-back overflow" ); +| } +| +| *--yy_cp = (char) c; +| +| (yytext_ptr) = yy_bp; +| (yy_hold_char) = *yy_cp; +| (yy_c_buf_p) = yy_cp; +| } +| +| #ifndef YY_NO_INPUT +| #ifdef __cplusplus +| static int yyinput (void) +| #else +| static int input (void) +| #endif +| +| { +| int c; +| +| *(yy_c_buf_p) = (yy_hold_char); +| +| if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) +| { +| /* yy_c_buf_p now points to the character we want to return. +| * If this occurs *before* the EOB characters, then it's a +| * valid NUL; if not, then we've hit the end of the buffer. +| */ +| if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) +| /* This was really a NUL. */ +| *(yy_c_buf_p) = '\0'; +| +| else +| { /* need more input */ +| int offset = (yy_c_buf_p) - (yytext_ptr); +| ++(yy_c_buf_p); +| +| switch ( yy_get_next_buffer( ) ) +| { +| case EOB_ACT_LAST_MATCH: +| /* This happens because yy_g_n_b() +| * sees that we've accumulated a +| * token and flags that we need to +| * try matching the token before +| * proceeding. But for input(), +| * there's no matching to consider. +| * So convert the EOB_ACT_LAST_MATCH +| * to EOB_ACT_END_OF_FILE. +| */ +| +| /* Reset buffer status. */ +| yyrestart(yyin ); +| +| /*FALLTHROUGH*/ +| +| case EOB_ACT_END_OF_FILE: +| { +| if ( yywrap( ) ) +| return EOF; +| +| if ( ! (yy_did_buffer_switch_on_eof) ) +| YY_NEW_FILE; +| #ifdef __cplusplus +| return yyinput(); +| #else +| return input(); +| #endif +| } +| +| case EOB_ACT_CONTINUE_SCAN: +| (yy_c_buf_p) = (yytext_ptr) + offset; +| break; +| } +| } +| } +| +| c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ +| *(yy_c_buf_p) = '\0'; /* preserve yytext */ +| (yy_hold_char) = *++(yy_c_buf_p); +| +| return c; +| } +| #endif /* ifndef YY_NO_INPUT */ +| +| /** Immediately switch to a different input stream. +| * @param input_file A readable stream. +| * +| * @note This function does not reset the start condition to @c INITIAL . +| */ +| void yyrestart (FILE * input_file ) +| { +| +| if ( ! YY_CURRENT_BUFFER ){ +| yyensure_buffer_stack (); +| YY_CURRENT_BUFFER_LVALUE = +| yy_create_buffer(yyin,YY_BUF_SIZE ); +| } +| +| yy_init_buffer(YY_CURRENT_BUFFER,input_file ); +| yy_load_buffer_state( ); +| } +| +| /** Switch to a different input buffer. +| * @param new_buffer The new input buffer. +| * +| */ +| void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) +| { +| +| /* TODO. We should be able to replace this entire function body +| * with +| * yypop_buffer_state(); +| * yypush_buffer_state(new_buffer); +| */ +| yyensure_buffer_stack (); +| if ( YY_CURRENT_BUFFER == new_buffer ) +| return; +| +| if ( YY_CURRENT_BUFFER ) +| { +| /* Flush out information for old buffer. */ +| *(yy_c_buf_p) = (yy_hold_char); +| YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); +| YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); +| } +| +| YY_CURRENT_BUFFER_LVALUE = new_buffer; +| yy_load_buffer_state( ); +| +| /* We don't actually know whether we did this switch during +| * EOF (yywrap()) processing, but the only time this flag +| * is looked at is after yywrap() is called, so it's safe +| * to go ahead and always set it. +| */ +| (yy_did_buffer_switch_on_eof) = 1; +| } +| +| static void yy_load_buffer_state (void) +| { +| (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; +| (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; +| yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; +| (yy_hold_char) = *(yy_c_buf_p); +| } +| +| /** Allocate and initialize an input buffer state. +| * @param file A readable stream. +| * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. +| * +| * @return the allocated buffer state. +| */ +| YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) +| { +| YY_BUFFER_STATE b; +| +| b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); +| if ( ! b ) +| YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); +| +| b->yy_buf_size = size; +| +| /* yy_ch_buf has to be 2 characters longer than the size given because +| * we need to put in 2 end-of-buffer characters. +| */ +| b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); +| if ( ! b->yy_ch_buf ) +| YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); +| +| b->yy_is_our_buffer = 1; +| +| yy_init_buffer(b,file ); +| +| return b; +| } +| +| /** Destroy the buffer. +| * @param b a buffer created with yy_create_buffer() +| * +| */ +| void yy_delete_buffer (YY_BUFFER_STATE b ) +| { +| +| if ( ! b ) +| return; +| +| if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ +| YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; +| +| if ( b->yy_is_our_buffer ) +| yyfree((void *) b->yy_ch_buf ); +| +| yyfree((void *) b ); +| } +| +| #ifndef __cplusplus +| extern int isatty (int ); +| #endif /* __cplusplus */ +| +| /* Initializes or reinitializes a buffer. +| * This function is sometimes called more than once on the same buffer, +| * such as during a yyrestart() or at EOF. +| */ +| static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) +| +| { +| int oerrno = errno; +| +| yy_flush_buffer(b ); +| +| b->yy_input_file = file; +| b->yy_fill_buffer = 1; +| +| /* If b is the current buffer, then yy_init_buffer was _probably_ +| * called from yyrestart() or through yy_get_next_buffer. +| * In that case, we don't want to reset the lineno or column. +| */ +| if (b != YY_CURRENT_BUFFER){ +| b->yy_bs_lineno = 1; +| b->yy_bs_column = 0; +| } +| +| b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; +| +| errno = oerrno; +| } +| +| /** Discard all buffered characters. On the next scan, YY_INPUT will be called. +| * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. +| * +| */ +| void yy_flush_buffer (YY_BUFFER_STATE b ) +| { +| if ( ! b ) +| return; +| +| b->yy_n_chars = 0; +| +| /* We always need two end-of-buffer characters. The first causes +| * a transition to the end-of-buffer state. The second causes +| * a jam in that state. +| */ +| b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; +| b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; +| +| b->yy_buf_pos = &b->yy_ch_buf[0]; +| +| b->yy_at_bol = 1; +| b->yy_buffer_status = YY_BUFFER_NEW; +| +| if ( b == YY_CURRENT_BUFFER ) +| yy_load_buffer_state( ); +| } +| +| /** Pushes the new state onto the stack. The new state becomes +| * the current state. This function will allocate the stack +| * if necessary. +| * @param new_buffer The new state. +| * +| */ +| void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) +| { +| if (new_buffer == NULL) +| return; +| +| yyensure_buffer_stack(); +| +| /* This block is copied from yy_switch_to_buffer. */ +| if ( YY_CURRENT_BUFFER ) +| { +| /* Flush out information for old buffer. */ +| *(yy_c_buf_p) = (yy_hold_char); +| YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); +| YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); +| } +| +| /* Only push if top exists. Otherwise, replace top. */ +| if (YY_CURRENT_BUFFER) +| (yy_buffer_stack_top)++; +| YY_CURRENT_BUFFER_LVALUE = new_buffer; +| +| /* copied from yy_switch_to_buffer. */ +| yy_load_buffer_state( ); +| (yy_did_buffer_switch_on_eof) = 1; +| } +| +| /** Removes and deletes the top of the stack, if present. +| * The next element becomes the new top. +| * +| */ +| void yypop_buffer_state (void) +| { +| if (!YY_CURRENT_BUFFER) +| return; +| +| yy_delete_buffer(YY_CURRENT_BUFFER ); +| YY_CURRENT_BUFFER_LVALUE = NULL; +| if ((yy_buffer_stack_top) > 0) +| --(yy_buffer_stack_top); +| +| if (YY_CURRENT_BUFFER) { +| yy_load_buffer_state( ); +| (yy_did_buffer_switch_on_eof) = 1; +| } +| } +| +| /* Allocates the stack if it does not exist. +| * Guarantees space for at least one push. +| */ +| static void yyensure_buffer_stack (void) +| { +| int num_to_alloc; +| +| if (!(yy_buffer_stack)) { +| +| /* First allocation is just for 2 elements, since we don't know if this +| * scanner will even need a stack. We use 2 instead of 1 to avoid an +| * immediate realloc on the next call. +| */ +| num_to_alloc = 1; +| (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc +| (num_to_alloc * sizeof(struct yy_buffer_state*) +| ); +| if ( ! (yy_buffer_stack) ) +| YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); +| +| memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); +| +| (yy_buffer_stack_max) = num_to_alloc; +| (yy_buffer_stack_top) = 0; +| return; +| } +| +| if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ +| +| /* Increase the buffer to prepare for a possible push. */ +| int grow_size = 8 /* arbitrary grow size */; +| +| num_to_alloc = (yy_buffer_stack_max) + grow_size; +| (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc +| ((yy_buffer_stack), +| num_to_alloc * sizeof(struct yy_buffer_state*) +| ); +| if ( ! (yy_buffer_stack) ) +| YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); +| +| /* zero only the new slots.*/ +| memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); +| (yy_buffer_stack_max) = num_to_alloc; +| } +| } +| +| /** Setup the input buffer state to scan directly from a user-specified character buffer. +| * @param base the character buffer +| * @param size the size in bytes of the character buffer +| * +| * @return the newly allocated buffer state object. +| */ +| YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) +| { +| YY_BUFFER_STATE b; +| +| if ( size < 2 || +| base[size-2] != YY_END_OF_BUFFER_CHAR || +| base[size-1] != YY_END_OF_BUFFER_CHAR ) +| /* They forgot to leave room for the EOB's. */ +| return 0; +| +| b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); +| if ( ! b ) +| YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); +| +| b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ +| b->yy_buf_pos = b->yy_ch_buf = base; +| b->yy_is_our_buffer = 0; +| b->yy_input_file = 0; +| b->yy_n_chars = b->yy_buf_size; +| b->yy_is_interactive = 0; +| b->yy_at_bol = 1; +| b->yy_fill_buffer = 0; +| b->yy_buffer_status = YY_BUFFER_NEW; +| +| yy_switch_to_buffer(b ); +| +| return b; +| } +| +| /** Setup the input buffer state to scan a string. The next call to yylex() will +| * scan from a @e copy of @a str. +| * @param yystr a NUL-terminated string to scan +| * +| * @return the newly allocated buffer state object. +| * @note If you want to scan bytes that may contain NUL values, then use +| * yy_scan_bytes() instead. +| */ +| YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) +| { +| +| return yy_scan_bytes(yystr,strlen(yystr) ); +| } +| +| /** Setup the input buffer state to scan the given bytes. The next call to yylex() will +| * scan from a @e copy of @a bytes. +| * @param bytes the byte buffer to scan +| * @param len the number of bytes in the buffer pointed to by @a bytes. +| * +| * @return the newly allocated buffer state object. +| */ +| YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ) +| { +| YY_BUFFER_STATE b; +| char *buf; +| yy_size_t n; +| int i; +| +| /* Get memory for full buffer, including space for trailing EOB's. */ +| n = _yybytes_len + 2; +| buf = (char *) yyalloc(n ); +| if ( ! buf ) +| YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); +| +| for ( i = 0; i < _yybytes_len; ++i ) +| buf[i] = yybytes[i]; +| +| buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; +| +| b = yy_scan_buffer(buf,n ); +| if ( ! b ) +| YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); +| +| /* It's okay to grow etc. this buffer, and we should throw it +| * away when we're done. +| */ +| b->yy_is_our_buffer = 1; +| +| return b; +| } +| +| #ifndef YY_EXIT_FAILURE +| #define YY_EXIT_FAILURE 2 +| #endif +| +| static void yy_fatal_error (yyconst char* msg ) +| { +| (void) fprintf( stderr, "%s\n", msg ); +| exit( YY_EXIT_FAILURE ); +| } +| +| /* Redefine yyless() so it works in section 3 code. */ +| +| #undef yyless +| #define yyless(n) \ +| do \ +| { \ +| /* Undo effects of setting up yytext. */ \ +| int yyless_macro_arg = (n); \ +| YY_LESS_LINENO(yyless_macro_arg);\ +| yytext[yyleng] = (yy_hold_char); \ +| (yy_c_buf_p) = yytext + yyless_macro_arg; \ +| (yy_hold_char) = *(yy_c_buf_p); \ +| *(yy_c_buf_p) = '\0'; \ +| yyleng = yyless_macro_arg; \ +| } \ +| while ( 0 ) +| +| /* Accessor methods (get/set functions) to struct members. */ +| +| /** Get the current line number. +| * +| */ +| int yyget_lineno (void) +| { +| +| return yylineno; +| } +| +| /** Get the input stream. +| * +| */ +| FILE *yyget_in (void) +| { +| return yyin; +| } +| +| /** Get the output stream. +| * +| */ +| FILE *yyget_out (void) +| { +| return yyout; +| } +| +| /** Get the length of the current token. +| * +| */ +| int yyget_leng (void) +| { +| return yyleng; +| } +| +| /** Get the current token. +| * +| */ +| +| char *yyget_text (void) +| { +| return yytext; +| } +| +| /** Set the current line number. +| * @param line_number +| * +| */ +| void yyset_lineno (int line_number ) +| { +| +| yylineno = line_number; +| } +| +| /** Set the input stream. This does not discard the current +| * input buffer. +| * @param in_str A readable stream. +| * +| * @see yy_switch_to_buffer +| */ +| void yyset_in (FILE * in_str ) +| { +| yyin = in_str ; +| } +| +| void yyset_out (FILE * out_str ) +| { +| yyout = out_str ; +| } +| +| int yyget_debug (void) +| { +| return yy_flex_debug; +| } +| +| void yyset_debug (int bdebug ) +| { +| yy_flex_debug = bdebug ; +| } +| +| static int yy_init_globals (void) +| { +| /* Initialization is the same as for the non-reentrant scanner. +| * This function is called from yylex_destroy(), so don't allocate here. +| */ +| +| (yy_buffer_stack) = 0; +| (yy_buffer_stack_top) = 0; +| (yy_buffer_stack_max) = 0; +| (yy_c_buf_p) = (char *) 0; +| (yy_init) = 0; +| (yy_start) = 0; +| +| /* Defined in main.c */ +| #ifdef YY_STDINIT +| yyin = stdin; +| yyout = stdout; +| #else +| yyin = (FILE *) 0; +| yyout = (FILE *) 0; +| #endif +| +| /* For future reference: Set errno on error, since we are called by +| * yylex_init() +| */ +| return 0; +| } +| +| /* yylex_destroy is for both reentrant and non-reentrant scanners. */ +| int yylex_destroy (void) +| { +| +| /* Pop the buffer stack, destroying each element. */ +| while(YY_CURRENT_BUFFER){ +| yy_delete_buffer(YY_CURRENT_BUFFER ); +| YY_CURRENT_BUFFER_LVALUE = NULL; +| yypop_buffer_state(); +| } +| +| /* Destroy the stack itself. */ +| yyfree((yy_buffer_stack) ); +| (yy_buffer_stack) = NULL; +| +| /* Reset the globals. This is important in a non-reentrant scanner so the next time +| * yylex() is called, initialization will occur. */ +| yy_init_globals( ); +| +| return 0; +| } +| +| /* +| * Internal utility routines. +| */ +| +| #ifndef yytext_ptr +| static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) +| { +| register int i; +| for ( i = 0; i < n; ++i ) +| s1[i] = s2[i]; +| } +| #endif +| +| #ifdef YY_NEED_STRLEN +| static int yy_flex_strlen (yyconst char * s ) +| { +| register int n; +| for ( n = 0; s[n]; ++n ) +| ; +| +| return n; +| } +| #endif +| +| void *yyalloc (yy_size_t size ) +| { +| return (void *) malloc( size ); +| } +| +| void *yyrealloc (void * ptr, yy_size_t size ) +| { +| /* The cast to (char *) in the following accommodates both +| * implementations that use char* generic pointers, and those +| * that use void* generic pointers. It works with the latter +| * because both ANSI C and C++ allow castless assignment from +| * any pointer type to void*, and deal with argument conversions +| * as though doing an assignment. +| */ +| return (void *) realloc( (char *) ptr, size ); +| } +| +| void yyfree (void * ptr ) +| { +| free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ +| } +| +| #define YYTABLES_NAME "yytables" +| +| #line 2 "conftest.l" +| +| +| +| extern char *yytext; +configure:18996: result: no +configure:19016: checking for bison +configure:19032: found /usr/bin/bison +configure:19042: result: bison -y +configure:19063: checking for gawk +configure:19089: result: gawk +configure:19104: checking how to run the C preprocessor +configure:19222: result: gcc -E +configure:19246: gcc -E conftest.c +configure:19252: $? = 0 +configure:19284: gcc -E conftest.c +conftest.c:25:28: error: ac_nonexistent.h: No such file or directory +configure:19290: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| /* end confdefs.h. */ +| #include +configure:19333: checking whether ln -s works +configure:19337: result: yes +configure:19344: checking whether make sets $(MAKE) +configure:19364: result: yes +configure:19378: checking for working alloca.h +configure:19399: g++ -o conftest conftest.cc >&5 +configure:19405: $? = 0 +configure:19409: test -z + || test ! -s conftest.err +configure:19412: $? = 0 +configure:19415: test -s conftest +configure:19418: $? = 0 +configure:19430: result: yes +configure:19440: checking for alloca +configure:19481: g++ -o conftest conftest.cc >&5 +configure:19487: $? = 0 +configure:19491: test -z + || test ! -s conftest.err +configure:19494: $? = 0 +configure:19497: test -s conftest +configure:19500: $? = 0 +configure:19512: result: yes +configure:19735: checking for ANSI C header files +configure:19891: result: yes +configure:19901: checking for sys/wait.h that is POSIX.1 compatible +configure:19932: g++ -c conftest.cc >&5 +configure:19938: $? = 0 +configure:19942: test -z + || test ! -s conftest.err +configure:19945: $? = 0 +configure:19948: test -s conftest.o +configure:19951: $? = 0 +configure:19962: result: yes +configure:20007: checking arpa/inet.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking arpa/inet.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for arpa/inet.h +configure:20130: result: yes +configure:20007: checking fcntl.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking fcntl.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for fcntl.h +configure:20130: result: yes +configure:19998: checking for inttypes.h +configure:20003: result: yes +configure:20007: checking limits.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking limits.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for limits.h +configure:20130: result: yes +configure:20007: checking malloc.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking malloc.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for malloc.h +configure:20130: result: yes +configure:20007: checking netdb.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking netdb.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for netdb.h +configure:20130: result: yes +configure:20007: checking netinet/in.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking netinet/in.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for netinet/in.h +configure:20130: result: yes +configure:20007: checking stddef.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking stddef.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for stddef.h +configure:20130: result: yes +configure:19998: checking for stdint.h +configure:20003: result: yes +configure:19998: checking for stdlib.h +configure:20003: result: yes +configure:19998: checking for string.h +configure:20003: result: yes +configure:19998: checking for strings.h +configure:20003: result: yes +configure:20007: checking sys/file.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking sys/file.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for sys/file.h +configure:20130: result: yes +configure:20007: checking sys/mount.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking sys/mount.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for sys/mount.h +configure:20130: result: yes +configure:20007: checking sys/socket.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking sys/socket.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for sys/socket.h +configure:20130: result: yes +configure:20007: checking sys/statfs.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking sys/statfs.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for sys/statfs.h +configure:20130: result: yes +configure:20007: checking sys/time.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking sys/time.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for sys/time.h +configure:20130: result: yes +configure:20007: checking sys/timeb.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking sys/timeb.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for sys/timeb.h +configure:20130: result: yes +configure:20007: checking syslog.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking syslog.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for syslog.h +configure:20130: result: yes +configure:19998: checking for unistd.h +configure:20003: result: yes +configure:20007: checking utime.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking utime.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for utime.h +configure:20130: result: yes +configure:20007: checking values.h usability +configure:20019: g++ -c conftest.cc >&5 +configure:20025: $? = 0 +configure:20029: test -z + || test ! -s conftest.err +configure:20032: $? = 0 +configure:20035: test -s conftest.o +configure:20038: $? = 0 +configure:20048: result: yes +configure:20052: checking values.h presence +configure:20062: g++ -E conftest.cc +configure:20068: $? = 0 +configure:20088: result: yes +configure:20123: checking for values.h +configure:20130: result: yes +configure:20145: checking whether stat file-mode macros are broken +configure:20193: result: no +configure:20203: checking for stdbool.h that conforms to C99 +configure:20256: g++ -c conftest.cc >&5 +configure:20262: $? = 0 +configure:20266: test -z + || test ! -s conftest.err +configure:20269: $? = 0 +configure:20272: test -s conftest.o +configure:20275: $? = 0 +configure:20286: result: yes +configure:20288: checking for _Bool +configure:20312: g++ -c conftest.cc >&5 +conftest.cc: In function 'int main()': +conftest.cc:88: error: '_Bool' was not declared in this scope +conftest.cc:88: error: expected primary-expression before ')' token +conftest.cc:88: error: expected ')' before numeric constant +conftest.cc:90: error: '_Bool' was not declared in this scope +configure:20318: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| /* end confdefs.h. */ +| #include +| #if HAVE_SYS_TYPES_H +| # include +| #endif +| #if HAVE_SYS_STAT_H +| # include +| #endif +| #if STDC_HEADERS +| # include +| # include +| #else +| # if HAVE_STDLIB_H +| # include +| # endif +| #endif +| #if HAVE_STRING_H +| # if !STDC_HEADERS && HAVE_MEMORY_H +| # include +| # endif +| # include +| #endif +| #if HAVE_STRINGS_H +| # include +| #endif +| #if HAVE_INTTYPES_H +| # include +| #else +| # if HAVE_STDINT_H +| # include +| # endif +| #endif +| #if HAVE_UNISTD_H +| # include +| #endif +| int +| main () +| { +| if ((_Bool *) 0) +| return 0; +| if (sizeof (_Bool)) +| return 0; +| ; +| return 0; +| } +configure:20342: result: no +configure:20361: checking for an ANSI C-conforming const +configure:20428: g++ -c conftest.cc >&5 +configure:20434: $? = 0 +configure:20438: test -z + || test ! -s conftest.err +configure:20441: $? = 0 +configure:20444: test -s conftest.o +configure:20447: $? = 0 +configure:20458: result: yes +configure:20468: checking for inline +configure:20489: g++ -c conftest.cc >&5 +configure:20495: $? = 0 +configure:20499: test -z + || test ! -s conftest.err +configure:20502: $? = 0 +configure:20505: test -s conftest.o +configure:20508: $? = 0 +configure:20520: result: inline +configure:20539: checking for mode_t +configure:20563: g++ -c conftest.cc >&5 +configure:20569: $? = 0 +configure:20573: test -z + || test ! -s conftest.err +configure:20576: $? = 0 +configure:20579: test -s conftest.o +configure:20582: $? = 0 +configure:20593: result: yes +configure:20605: checking for off_t +configure:20629: g++ -c conftest.cc >&5 +configure:20635: $? = 0 +configure:20639: test -z + || test ! -s conftest.err +configure:20642: $? = 0 +configure:20645: test -s conftest.o +configure:20648: $? = 0 +configure:20659: result: yes +configure:20671: checking for pid_t +configure:20695: g++ -c conftest.cc >&5 +configure:20701: $? = 0 +configure:20705: test -z + || test ! -s conftest.err +configure:20708: $? = 0 +configure:20711: test -s conftest.o +configure:20714: $? = 0 +configure:20725: result: yes +configure:20737: checking for C/C++ restrict keyword +configure:20755: g++ -c conftest.cc >&5 +conftest.cc:52: error: expected initializer before 'x' +configure:20761: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| /* end confdefs.h. */ +| float * restrict x; +configure:20755: g++ -c conftest.cc >&5 +configure:20761: $? = 0 +configure:20765: test -z + || test ! -s conftest.err +configure:20768: $? = 0 +configure:20771: test -s conftest.o +configure:20774: $? = 0 +configure:20786: result: __restrict +configure:20801: checking for size_t +configure:20825: g++ -c conftest.cc >&5 +configure:20831: $? = 0 +configure:20835: test -z + || test ! -s conftest.err +configure:20838: $? = 0 +configure:20841: test -s conftest.o +configure:20844: $? = 0 +configure:20855: result: yes +configure:20867: checking whether time.h and sys/time.h may both be included +configure:20892: g++ -c conftest.cc >&5 +configure:20898: $? = 0 +configure:20902: test -z + || test ! -s conftest.err +configure:20905: $? = 0 +configure:20908: test -s conftest.o +configure:20911: $? = 0 +configure:20922: result: yes +configure:20932: checking whether struct tm is in sys/time.h or time.h +configure:20955: g++ -c conftest.cc >&5 +configure:20961: $? = 0 +configure:20965: test -z + || test ! -s conftest.err +configure:20968: $? = 0 +configure:20971: test -s conftest.o +configure:20974: $? = 0 +configure:20985: result: time.h +configure:20995: checking for working volatile +configure:21018: g++ -c conftest.cc >&5 +configure:21024: $? = 0 +configure:21028: test -z + || test ! -s conftest.err +configure:21031: $? = 0 +configure:21034: test -s conftest.o +configure:21037: $? = 0 +configure:21048: result: yes +configure:21058: checking for ptrdiff_t +configure:21082: g++ -c conftest.cc >&5 +configure:21088: $? = 0 +configure:21092: test -z + || test ! -s conftest.err +configure:21095: $? = 0 +configure:21098: test -s conftest.o +configure:21101: $? = 0 +configure:21112: result: yes +configure:21125: checking for error_at_line +configure:21146: g++ -o conftest conftest.cc >&5 +conftest.cc: In function 'int main()': +conftest.cc:92: error: 'error_at_line' was not declared in this scope +configure:21152: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| #define restrict __restrict +| #define TIME_WITH_SYS_TIME 1 +| #define HAVE_PTRDIFF_T 1 +| /* end confdefs.h. */ +| #include +| #if HAVE_SYS_TYPES_H +| # include +| #endif +| #if HAVE_SYS_STAT_H +| # include +| #endif +| #if STDC_HEADERS +| # include +| # include +| #else +| # if HAVE_STDLIB_H +| # include +| # endif +| #endif +| #if HAVE_STRING_H +| # if !STDC_HEADERS && HAVE_MEMORY_H +| # include +| # endif +| # include +| #endif +| #if HAVE_STRINGS_H +| # include +| #endif +| #if HAVE_INTTYPES_H +| # include +| #else +| # if HAVE_STDINT_H +| # include +| # endif +| #endif +| #if HAVE_UNISTD_H +| # include +| #endif +| int +| main () +| { +| error_at_line (0, 0, "", 0, ""); +| ; +| return 0; +| } +configure:21177: result: no +configure:21190: checking for mbstate_t +configure:21212: g++ -c conftest.cc >&5 +configure:21218: $? = 0 +configure:21222: test -z + || test ! -s conftest.err +configure:21225: $? = 0 +configure:21228: test -s conftest.o +configure:21231: $? = 0 +configure:21242: result: yes +configure:21257: checking for working POSIX fnmatch +configure:21295: g++ -o conftest conftest.cc >&5 +configure:21298: $? = 0 +configure:21300: ./conftest +configure:21303: $? = 0 +configure:21317: result: yes +configure:21676: checking for unistd.h +configure:21681: result: yes +configure:21685: checking vfork.h usability +configure:21697: g++ -c conftest.cc >&5 +conftest.cc:91:19: error: vfork.h: No such file or directory +configure:21703: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| #define restrict __restrict +| #define TIME_WITH_SYS_TIME 1 +| #define HAVE_PTRDIFF_T 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_UNISTD_H 1 +| /* end confdefs.h. */ +| #include +| #if HAVE_SYS_TYPES_H +| # include +| #endif +| #if HAVE_SYS_STAT_H +| # include +| #endif +| #if STDC_HEADERS +| # include +| # include +| #else +| # if HAVE_STDLIB_H +| # include +| # endif +| #endif +| #if HAVE_STRING_H +| # if !STDC_HEADERS && HAVE_MEMORY_H +| # include +| # endif +| # include +| #endif +| #if HAVE_STRINGS_H +| # include +| #endif +| #if HAVE_INTTYPES_H +| # include +| #else +| # if HAVE_STDINT_H +| # include +| # endif +| #endif +| #if HAVE_UNISTD_H +| # include +| #endif +| #include +configure:21726: result: no +configure:21730: checking vfork.h presence +configure:21740: g++ -E conftest.cc +conftest.cc:57:19: error: vfork.h: No such file or directory +configure:21746: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| #define restrict __restrict +| #define TIME_WITH_SYS_TIME 1 +| #define HAVE_PTRDIFF_T 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_UNISTD_H 1 +| /* end confdefs.h. */ +| #include +configure:21766: result: no +configure:21801: checking for vfork.h +configure:21808: result: no +configure:21826: checking for fork +configure:21883: g++ -o conftest conftest.cc >&5 +configure:21889: $? = 0 +configure:21893: test -z + || test ! -s conftest.err +configure:21896: $? = 0 +configure:21899: test -s conftest +configure:21902: $? = 0 +configure:21914: result: yes +configure:21826: checking for vfork +configure:21883: g++ -o conftest conftest.cc >&5 +configure:21889: $? = 0 +configure:21893: test -z + || test ! -s conftest.err +configure:21896: $? = 0 +configure:21899: test -s conftest +configure:21902: $? = 0 +configure:21914: result: yes +configure:21925: checking for working fork +configure:21948: g++ -o conftest conftest.cc >&5 +conftest.cc: In function 'int main()': +conftest.cc:9: error: 'fork' was not declared in this scope +conftest.cc:10: error: 'exit' was not declared in this scope +conftest.cc:11: error: 'exit' was not declared in this scope +configure:21951: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* By Ruediger Kuhlmann. */ +| #include +| #if HAVE_UNISTD_H +| # include +| #endif +| /* Some systems only have a dummy stub for fork() */ +| int main () +| { +| if (fork() < 0) +| exit (1); +| exit (0); +| } +configure:21970: result: no +configure:21991: checking for working vfork +configure:22124: result: yes +configure:22160: checking for stdlib.h +configure:22165: result: yes +configure:22305: checking for GNU libc compatible malloc +configure:22334: g++ -o conftest conftest.cc >&5 +configure:22337: $? = 0 +configure:22339: ./conftest +configure:22342: $? = 0 +configure:22356: result: yes +configure:22386: checking for working memcmp +configure:22434: g++ -o conftest conftest.cc >&5 +configure:22437: $? = 0 +configure:22439: ./conftest +configure:22442: $? = 0 +configure:22456: result: yes +configure:22474: checking for stdlib.h +configure:22479: result: yes +configure:22474: checking for sys/time.h +configure:22479: result: yes +configure:22474: checking for unistd.h +configure:22479: result: yes +configure:22623: checking for alarm +configure:22680: g++ -o conftest conftest.cc >&5 +configure:22686: $? = 0 +configure:22690: test -z + || test ! -s conftest.err +configure:22693: $? = 0 +configure:22696: test -s conftest +configure:22699: $? = 0 +configure:22711: result: yes +configure:22721: checking for working mktime +configure:22897: g++ -o conftest conftest.cc >&5 +conftest.cc:100: warning: deprecated conversion from string constant to 'char*' +conftest.cc:100: warning: deprecated conversion from string constant to 'char*' +conftest.cc:100: warning: deprecated conversion from string constant to 'char*' +conftest.cc: In function 'void spring_forward_gap()': +conftest.cc:115: warning: deprecated conversion from string constant to 'char*' +conftest.cc: At global scope: +conftest.cc:129: error: variable or field 'mktime_test1' declared void +conftest.cc:129: error: 'now' was not declared in this scope +conftest.cc:131: error: expected unqualified-id before '{' token +conftest.cc:138: error: variable or field 'mktime_test' declared void +conftest.cc:138: error: 'now' was not declared in this scope +conftest.cc:140: error: expected unqualified-id before '{' token +conftest.cc:164: error: variable or field 'bigtime_test' declared void +conftest.cc:164: error: 'j' was not declared in this scope +conftest.cc:166: error: expected unqualified-id before '{' token +configure:22900: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| #define restrict __restrict +| #define TIME_WITH_SYS_TIME 1 +| #define HAVE_PTRDIFF_T 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_FORK 1 +| #define HAVE_VFORK 1 +| #define HAVE_WORKING_VFORK 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_MALLOC 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_ALARM 1 +| /* end confdefs.h. */ +| /* Test program from Paul Eggert and Tony Leneis. */ +| #if TIME_WITH_SYS_TIME +| # include +| # include +| #else +| # if HAVE_SYS_TIME_H +| # include +| # else +| # include +| # endif +| #endif +| +| #if HAVE_STDLIB_H +| # include +| #endif +| +| #if HAVE_UNISTD_H +| # include +| #endif +| +| #if !HAVE_ALARM +| # define alarm(X) /* empty */ +| #endif +| +| /* Work around redefinition to rpl_putenv by other config tests. */ +| #undef putenv +| +| static time_t time_t_max; +| static time_t time_t_min; +| +| /* Values we'll use to set the TZ environment variable. */ +| static char *tz_strings[] = { +| (char *) 0, "TZ=GMT0", "TZ=JST-9", +| "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00" +| }; +| #define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0])) +| +| /* Fail if mktime fails to convert a date in the spring-forward gap. +| Based on a problem report from Andreas Jaeger. */ +| static void +| spring_forward_gap () +| { +| /* glibc (up to about 1998-10-07) failed this test. */ +| struct tm tm; +| +| /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0" +| instead of "TZ=America/Vancouver" in order to detect the bug even +| on systems that don't support the Olson extension, or don't have the +| full zoneinfo tables installed. */ +| putenv ("TZ=PST8PDT,M4.1.0,M10.5.0"); +| +| tm.tm_year = 98; +| tm.tm_mon = 3; +| tm.tm_mday = 5; +| tm.tm_hour = 2; +| tm.tm_min = 0; +| tm.tm_sec = 0; +| tm.tm_isdst = -1; +| if (mktime (&tm) == (time_t)-1) +| exit (1); +| } +| +| static void +| mktime_test1 (now) +| time_t now; +| { +| struct tm *lt; +| if ((lt = localtime (&now)) && mktime (lt) != now) +| exit (1); +| } +| +| static void +| mktime_test (now) +| time_t now; +| { +| mktime_test1 (now); +| mktime_test1 ((time_t) (time_t_max - now)); +| mktime_test1 ((time_t) (time_t_min + now)); +| } +| +| static void +| irix_6_4_bug () +| { +| /* Based on code from Ariel Faigon. */ +| struct tm tm; +| tm.tm_year = 96; +| tm.tm_mon = 3; +| tm.tm_mday = 0; +| tm.tm_hour = 0; +| tm.tm_min = 0; +| tm.tm_sec = 0; +| tm.tm_isdst = -1; +| mktime (&tm); +| if (tm.tm_mon != 2 || tm.tm_mday != 31) +| exit (1); +| } +| +| static void +| bigtime_test (j) +| int j; +| { +| struct tm tm; +| time_t now; +| tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j; +| now = mktime (&tm); +| if (now != (time_t) -1) +| { +| struct tm *lt = localtime (&now); +| if (! (lt +| && lt->tm_year == tm.tm_year +| && lt->tm_mon == tm.tm_mon +| && lt->tm_mday == tm.tm_mday +| && lt->tm_hour == tm.tm_hour +| && lt->tm_min == tm.tm_min +| && lt->tm_sec == tm.tm_sec +| && lt->tm_yday == tm.tm_yday +| && lt->tm_wday == tm.tm_wday +| && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst) +| == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst)))) +| exit (1); +| } +| } +| +| int +| main () +| { +| time_t t, delta; +| int i, j; +| +| /* This test makes some buggy mktime implementations loop. +| Give up after 60 seconds; a mktime slower than that +| isn't worth using anyway. */ +| alarm (60); +| +| for (time_t_max = 1; 0 < time_t_max; time_t_max *= 2) +| continue; +| time_t_max--; +| if ((time_t) -1 < 0) +| for (time_t_min = -1; (time_t) (time_t_min * 2) < 0; time_t_min *= 2) +| continue; +| delta = time_t_max / 997; /* a suitable prime number */ +| for (i = 0; i < N_STRINGS; i++) +| { +| if (tz_strings[i]) +| putenv (tz_strings[i]); +| +| for (t = 0; t <= time_t_max - delta; t += delta) +| mktime_test (t); +| mktime_test ((time_t) 1); +| mktime_test ((time_t) (60 * 60)); +| mktime_test ((time_t) (60 * 60 * 24)); +| +| for (j = 1; 0 < j; j *= 2) +| bigtime_test (j); +| bigtime_test (j - 1); +| } +| irix_6_4_bug (); +| spring_forward_gap (); +| exit (0); +| } +configure:22919: result: no +configure:22947: checking sys/select.h usability +configure:22959: g++ -c conftest.cc >&5 +configure:22965: $? = 0 +configure:22969: test -z + || test ! -s conftest.err +configure:22972: $? = 0 +configure:22975: test -s conftest.o +configure:22978: $? = 0 +configure:22988: result: yes +configure:22992: checking sys/select.h presence +configure:23002: g++ -E conftest.cc +configure:23008: $? = 0 +configure:23028: result: yes +configure:23063: checking for sys/select.h +configure:23070: result: yes +configure:22938: checking for sys/socket.h +configure:22943: result: yes +configure:23083: checking types of arguments for select +configure:23116: g++ -c conftest.cc >&5 +configure:23122: $? = 0 +configure:23126: test -z + || test ! -s conftest.err +configure:23129: $? = 0 +configure:23132: test -s conftest.o +configure:23135: $? = 0 +configure:23151: result: int,fd_set *,struct timeval * +configure:23174: checking for function prototypes +configure:23177: result: yes +configure:23194: checking whether setvbuf arguments are reversed +configure:23219: g++ -o conftest conftest.cc >&5 +/tmp/ccDqgcqp.o: In function `main': +conftest.cc:(.text+0x21): undefined reference to `setvbuf(_IO_FILE*, int, char*, unsigned long)' +collect2: ld returned 1 exit status +configure:23225: $? = 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| #define restrict __restrict +| #define TIME_WITH_SYS_TIME 1 +| #define HAVE_PTRDIFF_T 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_FORK 1 +| #define HAVE_VFORK 1 +| #define HAVE_WORKING_VFORK 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_MALLOC 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_ALARM 1 +| #define HAVE_SYS_SELECT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define SELECT_TYPE_ARG1 int +| #define SELECT_TYPE_ARG234 (fd_set *) +| #define SELECT_TYPE_ARG5 (struct timeval *) +| #define PROTOTYPES 1 +| #define __PROTOTYPES 1 +| /* end confdefs.h. */ +| #include +| # if PROTOTYPES +| int (setvbuf) (FILE *, int, char *, size_t); +| # endif +| int +| main () +| { +| char buf; return setvbuf (stdout, _IOLBF, &buf, 1); +| ; +| return 0; +| } +configure:23346: result: no +configure:23356: checking return type of signal handlers +configure:23387: g++ -c conftest.cc >&5 +configure:23393: $? = 0 +configure:23397: test -z + || test ! -s conftest.err +configure:23400: $? = 0 +configure:23403: test -s conftest.o +configure:23406: $? = 0 +configure:23417: result: void +configure:23425: checking whether lstat dereferences a symlink specified with a trailing slash +configure:23456: g++ -o conftest conftest.cc >&5 +configure:23459: $? = 0 +configure:23461: ./conftest +configure:23464: $? = 0 +configure:23485: result: yes +configure:23506: checking whether stat accepts an empty string +configure:23531: g++ -o conftest conftest.cc >&5 +configure:23534: $? = 0 +configure:23536: ./conftest +configure:23539: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| #define restrict __restrict +| #define TIME_WITH_SYS_TIME 1 +| #define HAVE_PTRDIFF_T 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_FORK 1 +| #define HAVE_VFORK 1 +| #define HAVE_WORKING_VFORK 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_MALLOC 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_ALARM 1 +| #define HAVE_SYS_SELECT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define SELECT_TYPE_ARG1 int +| #define SELECT_TYPE_ARG234 (fd_set *) +| #define SELECT_TYPE_ARG5 (struct timeval *) +| #define PROTOTYPES 1 +| #define __PROTOTYPES 1 +| #define RETSIGTYPE void +| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 +| /* end confdefs.h. */ +| #include +| #if HAVE_SYS_TYPES_H +| # include +| #endif +| #if HAVE_SYS_STAT_H +| # include +| #endif +| #if STDC_HEADERS +| # include +| # include +| #else +| # if HAVE_STDLIB_H +| # include +| # endif +| #endif +| #if HAVE_STRING_H +| # if !STDC_HEADERS && HAVE_MEMORY_H +| # include +| # endif +| # include +| #endif +| #if HAVE_STRINGS_H +| # include +| #endif +| #if HAVE_INTTYPES_H +| # include +| #else +| # if HAVE_STDINT_H +| # include +| # endif +| #endif +| #if HAVE_UNISTD_H +| # include +| #endif +| int +| main () +| { +| struct stat sbuf; +| exit (stat ("", &sbuf) ? 1 : 0); +| ; +| return 0; +| } +configure:23553: result: no +configure:23571: checking whether strerror_r is declared +configure:23595: g++ -c conftest.cc >&5 +configure:23601: $? = 0 +configure:23605: test -z + || test ! -s conftest.err +configure:23608: $? = 0 +configure:23611: test -s conftest.o +configure:23614: $? = 0 +configure:23625: result: yes +configure:23647: checking for strerror_r +configure:23704: g++ -o conftest conftest.cc >&5 +configure:23710: $? = 0 +configure:23714: test -z + || test ! -s conftest.err +configure:23717: $? = 0 +configure:23720: test -s conftest +configure:23723: $? = 0 +configure:23735: result: yes +configure:23745: checking whether strerror_r returns char * +configure:23773: g++ -c conftest.cc >&5 +configure:23779: $? = 0 +configure:23783: test -z + || test ! -s conftest.err +configure:23786: $? = 0 +configure:23789: test -s conftest.o +configure:23792: $? = 0 +configure:23852: result: yes +configure:23866: checking for strftime +configure:23923: g++ -o conftest conftest.cc >&5 +configure:23929: $? = 0 +configure:23933: test -z + || test ! -s conftest.err +configure:23936: $? = 0 +configure:23939: test -s conftest +configure:23942: $? = 0 +configure:23954: result: yes +configure:24038: checking for working strtod +configure:24090: g++ -o conftest conftest.cc >&5 +conftest.cc:84: warning: declaration of 'void exit(int)' with C language linkage +conftest.cc:11: warning: conflicts with previous declaration 'void exit(int)' +conftest.cc:84: warning: due to different exception specifications +configure:24093: $? = 0 +configure:24095: ./conftest +configure:24098: $? = 0 +configure:24112: result: yes +configure:24290: checking whether utime accepts a null argument +configure:24325: g++ -o conftest conftest.cc >&5 +configure:24328: $? = 0 +configure:24330: ./conftest +configure:24333: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* confdefs.h. */ +| +| #define PACKAGE_NAME "infinidb" +| #define PACKAGE_TARNAME "infinidb" +| #define PACKAGE_VERSION "4.6.1" +| #define PACKAGE_STRING "infinidb 4.6.1" +| #define PACKAGE_BUGREPORT "support@infinidb.co" +| #define PACKAGE "infinidb" +| #define VERSION "4.6.1" +| #ifdef __cplusplus +| extern "C" void exit (int) throw (); +| #endif +| #define STDC_HEADERS 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_MEMORY_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_DLFCN_H 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define STDC_HEADERS 1 +| #define HAVE_SYS_WAIT_H 1 +| #define HAVE_ARPA_INET_H 1 +| #define HAVE_FCNTL_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_MALLOC_H 1 +| #define HAVE_NETDB_H 1 +| #define HAVE_NETINET_IN_H 1 +| #define HAVE_STDDEF_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_FILE_H 1 +| #define HAVE_SYS_MOUNT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_SYS_STATFS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_SYS_TIMEB_H 1 +| #define HAVE_SYSLOG_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_UTIME_H 1 +| #define HAVE_VALUES_H 1 +| #define HAVE_STDBOOL_H 1 +| #define restrict __restrict +| #define TIME_WITH_SYS_TIME 1 +| #define HAVE_PTRDIFF_T 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_FORK 1 +| #define HAVE_VFORK 1 +| #define HAVE_WORKING_VFORK 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_MALLOC 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_ALARM 1 +| #define HAVE_SYS_SELECT_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define SELECT_TYPE_ARG1 int +| #define SELECT_TYPE_ARG234 (fd_set *) +| #define SELECT_TYPE_ARG5 (struct timeval *) +| #define PROTOTYPES 1 +| #define __PROTOTYPES 1 +| #define RETSIGTYPE void +| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define STRERROR_R_CHAR_P 1 +| #define HAVE_STRFTIME 1 +| /* end confdefs.h. */ +| +| #include +| #include +| #include +| #include +| int +| main() +| { +| struct stat s, t; +| exit (!(stat ("conftest.data", &s) == 0 +| && utime ("conftest.data", (const utimbuf *)0) == 0 +| && stat ("conftest.data", &t) == 0 +| && t.st_mtime >= s.st_mtime +| && t.st_mtime - s.st_mtime < 120)); +| } +| +| +configure:24347: result: no +configure:24394: checking for alarm +configure:24482: result: yes +configure:24394: checking for dup2 +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for floor +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for ftime +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for ftruncate +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for gethostbyname +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for getpagesize +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for gettimeofday +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for inet_ntoa +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for isascii +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for localtime_r +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for memchr +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for memmove +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for memset +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for mkdir +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for pow +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for regcomp +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for rmdir +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for select +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for setenv +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for setlocale +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for socket +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strcasecmp +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strchr +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strcspn +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strdup +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strerror +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strrchr +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strspn +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strstr +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strtol +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strtoul +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for strtoull +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24394: checking for utime +configure:24451: g++ -o conftest conftest.cc >&5 +configure:24457: $? = 0 +configure:24461: test -z + || test ! -s conftest.err +configure:24464: $? = 0 +configure:24467: test -s conftest +configure:24470: $? = 0 +configure:24482: result: yes +configure:24533: checking for xml2-config +configure:24551: found /usr/bin/xml2-config +configure:24564: result: /usr/bin/xml2-config +configure:24572: checking for libxml - version >= 2.6.26 +configure:24679: g++ -o conftest -I/usr/include/libxml2 conftest.cc -lxml2 -lz -lm >&5 +configure:24682: $? = 0 +configure:24684: ./conftest +configure:24687: $? = 0 +configure:24706: result: yes (version 2.7.6) +configure:24817: checking zlib.h usability +configure:24829: g++ -c conftest.cc >&5 +configure:24835: $? = 0 +configure:24839: test -z + || test ! -s conftest.err +configure:24842: $? = 0 +configure:24845: test -s conftest.o +configure:24848: $? = 0 +configure:24858: result: yes +configure:24862: checking zlib.h presence +configure:24872: g++ -E conftest.cc +configure:24878: $? = 0 +configure:24898: result: yes +configure:24933: checking for zlib.h +configure:24940: result: yes +configure:24973: checking readline/readline.h usability +configure:24985: g++ -c conftest.cc >&5 +configure:24991: $? = 0 +configure:24995: test -z + || test ! -s conftest.err +configure:24998: $? = 0 +configure:25001: test -s conftest.o +configure:25004: $? = 0 +configure:25014: result: yes +configure:25018: checking readline/readline.h presence +configure:25028: g++ -E conftest.cc +configure:25034: $? = 0 +configure:25054: result: yes +configure:25089: checking for readline/readline.h +configure:25096: result: yes +configure:25129: checking ncurses.h usability +configure:25141: g++ -c conftest.cc >&5 +configure:25147: $? = 0 +configure:25151: test -z + || test ! -s conftest.err +configure:25154: $? = 0 +configure:25157: test -s conftest.o +configure:25160: $? = 0 +configure:25170: result: yes +configure:25174: checking ncurses.h presence +configure:25184: g++ -E conftest.cc +configure:25190: $? = 0 +configure:25210: result: yes +configure:25245: checking for ncurses.h +configure:25252: result: yes +configure:25271: checking if g++ supports -Wno-unused-local-typedefs +configure:25291: g++ -c -Werror -Wno-unused-local-typedefs conftest.cc >&5 +configure:25297: $? = 0 +configure:25301: test -z + || test ! -s conftest.err +configure:25304: $? = 0 +configure:25307: test -s conftest.o +configure:25310: $? = 0 +configure:25312: result: yes +configure:25326: checking if g++ supports -Wno-unused-result +configure:25346: g++ -c -Werror -Wno-unused-result conftest.cc >&5 +configure:25352: $? = 0 +configure:25356: test -z + || test ! -s conftest.err +configure:25359: $? = 0 +configure:25362: test -s conftest.o +configure:25365: $? = 0 +configure:25367: result: yes +configure:25381: checking if g++ supports -Wno-format +configure:25401: g++ -c -Werror -Wno-format conftest.cc >&5 +configure:25407: $? = 0 +configure:25411: test -z + || test ! -s conftest.err +configure:25414: $? = 0 +configure:25417: test -s conftest.o +configure:25420: $? = 0 +configure:25422: result: yes +configure:25437: checking whether to enable debugging +configure:25459: result: no +configure:25467: checking for CPU architecture +configure:25476: result: x86_64 +configure:25655: creating ./config.status + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by infinidb config.status 4.6.1, which was +generated by GNU Autoconf 2.59. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status + +on srvhall03 + +config.status:848: creating Makefile +config.status:848: creating utils/Makefile +config.status:848: creating utils/boost_idb/Makefile +config.status:848: creating utils/startup/Makefile +config.status:848: creating utils/common/Makefile +config.status:848: creating utils/configcpp/Makefile +config.status:848: creating utils/loggingcpp/Makefile +config.status:848: creating utils/messageqcpp/Makefile +config.status:848: creating utils/threadpool/Makefile +config.status:848: creating utils/rwlock/Makefile +config.status:848: creating utils/dataconvert/Makefile +config.status:848: creating utils/joiner/Makefile +config.status:848: creating utils/rowgroup/Makefile +config.status:848: creating utils/cacheutils/Makefile +config.status:848: creating utils/net-snmp/Makefile +config.status:848: creating utils/funcexp/Makefile +config.status:848: creating utils/udfsdk/Makefile +config.status:848: creating utils/compress/Makefile +config.status:848: creating utils/ddlcleanup/Makefile +config.status:848: creating utils/batchloader/Makefile +config.status:848: creating utils/mysqlcl_idb/Makefile +config.status:848: creating utils/querystats/Makefile +config.status:848: creating utils/jemalloc/Makefile +config.status:848: creating utils/windowfunction/Makefile +config.status:848: creating utils/idbdatafile/Makefile +config.status:848: creating utils/idbhdfs/Makefile +config.status:848: creating utils/idbhdfs/hdfs-12/Makefile +config.status:848: creating utils/idbhdfs/hdfs-20/Makefile +config.status:848: creating utils/winport/Makefile +config.status:848: creating utils/thrift/Makefile +config.status:848: creating utils/querytele/Makefile +config.status:848: creating exemgr/Makefile +config.status:848: creating ddlproc/Makefile +config.status:848: creating dbcon/Makefile +config.status:848: creating dbcon/ddlpackage/Makefile +config.status:848: creating dbcon/ddlpackageproc/Makefile +config.status:848: creating dbcon/dmlpackage/Makefile +config.status:848: creating dbcon/dmlpackageproc/Makefile +config.status:848: creating dbcon/execplan/Makefile +config.status:848: creating dbcon/joblist/Makefile +config.status:848: creating dbcon/mysql/Makefile +config.status:848: creating dmlproc/Makefile +config.status:848: creating oam/Makefile +config.status:848: creating oam/etc/Makefile +config.status:848: creating oam/install_scripts/Makefile +config.status:848: creating oam/oamcpp/Makefile +config.status:848: creating oam/post/Makefile +config.status:848: creating oam/cloud/Makefile +config.status:848: creating oamapps/Makefile +config.status:848: creating oamapps/calpontConsole/Makefile +config.status:848: creating oamapps/calpontDB/Makefile +config.status:848: creating oamapps/postConfigure/Makefile +config.status:848: creating oamapps/serverMonitor/Makefile +config.status:848: creating oamapps/sessionWalker/Makefile +config.status:848: creating oamapps/traphandler/Makefile +config.status:848: creating oamapps/sendtrap/Makefile +config.status:848: creating oamapps/calpontSupport/Makefile +config.status:848: creating primitives/Makefile +config.status:848: creating primitives/blockcache/Makefile +config.status:848: creating primitives/linux-port/Makefile +config.status:848: creating primitives/primproc/Makefile +config.status:848: creating decomsvr/Makefile +config.status:848: creating procmgr/Makefile +config.status:848: creating procmon/Makefile +config.status:848: creating snmpd/Makefile +config.status:848: creating snmpd/etc/Makefile +config.status:848: creating snmpd/snmpmanager/Makefile +config.status:848: creating tools/Makefile +config.status:848: creating tools/editem/Makefile +config.status:848: creating tools/cplogger/Makefile +config.status:848: creating tools/clearShm/Makefile +config.status:848: creating tools/setConfig/Makefile +config.status:848: creating tools/getConfig/Makefile +config.status:848: creating tools/dbbuilder/Makefile +config.status:848: creating tools/dbloadxml/Makefile +config.status:848: creating tools/configMgt/Makefile +config.status:848: creating tools/viewtablelock/Makefile +config.status:848: creating tools/cleartablelock/Makefile +config.status:848: creating tools/ddlcleanup/Makefile +config.status:848: creating tools/idbmeminfo/Makefile +config.status:848: creating versioning/Makefile +config.status:848: creating versioning/BRM/Makefile +config.status:848: creating writeengine/Makefile +config.status:848: creating writeengine/shared/Makefile +config.status:848: creating writeengine/index/Makefile +config.status:848: creating writeengine/dictionary/Makefile +config.status:848: creating writeengine/wrapper/Makefile +config.status:848: creating writeengine/xml/Makefile +config.status:848: creating writeengine/bulk/Makefile +config.status:848: creating writeengine/client/Makefile +config.status:848: creating writeengine/splitter/Makefile +config.status:848: creating writeengine/server/Makefile +config.status:848: creating writeengine/redistribute/Makefile +config.status:848: creating net-snmp/Makefile +config.status:952: creating config.h +config.status:1594: executing depfiles commands + +## ---------------- ## +## Cache variables. ## +## ---------------- ## + +ac_cv_build=x86_64-unknown-linux-gnu +ac_cv_build_alias=x86_64-unknown-linux-gnu +ac_cv_c_compiler_gnu=yes +ac_cv_c_const=yes +ac_cv_c_inline=inline +ac_cv_c_restrict=__restrict +ac_cv_c_volatile=yes +ac_cv_cxx_compiler_gnu=yes +ac_cv_env_CC_set= +ac_cv_env_CC_value= +ac_cv_env_CFLAGS_set= +ac_cv_env_CFLAGS_value= +ac_cv_env_CPPFLAGS_set= +ac_cv_env_CPPFLAGS_value= +ac_cv_env_CPP_set= +ac_cv_env_CPP_value= +ac_cv_env_CXXCPP_set= +ac_cv_env_CXXCPP_value= +ac_cv_env_CXXFLAGS_set= +ac_cv_env_CXXFLAGS_value= +ac_cv_env_CXX_set= +ac_cv_env_CXX_value= +ac_cv_env_F77_set= +ac_cv_env_F77_value= +ac_cv_env_FFLAGS_set= +ac_cv_env_FFLAGS_value= +ac_cv_env_LDFLAGS_set= +ac_cv_env_LDFLAGS_value= +ac_cv_env_build_alias_set= +ac_cv_env_build_alias_value= +ac_cv_env_host_alias_set= +ac_cv_env_host_alias_value= +ac_cv_env_target_alias_set= +ac_cv_env_target_alias_value= +ac_cv_exeext= +ac_cv_f77_compiler_gnu=no +ac_cv_func_alarm=yes +ac_cv_func_alloca_works=yes +ac_cv_func_dup2=yes +ac_cv_func_floor=yes +ac_cv_func_fnmatch_works=yes +ac_cv_func_fork=yes +ac_cv_func_fork_works=no +ac_cv_func_ftime=yes +ac_cv_func_ftruncate=yes +ac_cv_func_gethostbyname=yes +ac_cv_func_getpagesize=yes +ac_cv_func_gettimeofday=yes +ac_cv_func_inet_ntoa=yes +ac_cv_func_isascii=yes +ac_cv_func_localtime_r=yes +ac_cv_func_lstat_dereferences_slashed_symlink=yes +ac_cv_func_malloc_0_nonnull=yes +ac_cv_func_memchr=yes +ac_cv_func_memcmp_working=yes +ac_cv_func_memmove=yes +ac_cv_func_memset=yes +ac_cv_func_mkdir=yes +ac_cv_func_pow=yes +ac_cv_func_regcomp=yes +ac_cv_func_rmdir=yes +ac_cv_func_select=yes +ac_cv_func_select_args='int,fd_set *,struct timeval *' +ac_cv_func_setenv=yes +ac_cv_func_setlocale=yes +ac_cv_func_setvbuf_reversed=no +ac_cv_func_socket=yes +ac_cv_func_stat_empty_string_bug=no +ac_cv_func_strcasecmp=yes +ac_cv_func_strchr=yes +ac_cv_func_strcspn=yes +ac_cv_func_strdup=yes +ac_cv_func_strerror=yes +ac_cv_func_strerror_r=yes +ac_cv_func_strerror_r_char_p=yes +ac_cv_func_strftime=yes +ac_cv_func_strrchr=yes +ac_cv_func_strspn=yes +ac_cv_func_strstr=yes +ac_cv_func_strtod=yes +ac_cv_func_strtol=yes +ac_cv_func_strtoul=yes +ac_cv_func_strtoull=yes +ac_cv_func_utime=yes +ac_cv_func_utime_null=no +ac_cv_func_vfork=yes +ac_cv_func_vfork_works=yes +ac_cv_func_working_mktime=no +ac_cv_have_decl_strerror_r=yes +ac_cv_header_arpa_inet_h=yes +ac_cv_header_dlfcn_h=yes +ac_cv_header_fcntl_h=yes +ac_cv_header_inttypes_h=yes +ac_cv_header_limits_h=yes +ac_cv_header_malloc_h=yes +ac_cv_header_memory_h=yes +ac_cv_header_ncurses_h=yes +ac_cv_header_netdb_h=yes +ac_cv_header_netinet_in_h=yes +ac_cv_header_readline_readline_h=yes +ac_cv_header_stat_broken=no +ac_cv_header_stdbool_h=yes +ac_cv_header_stdc=yes +ac_cv_header_stddef_h=yes +ac_cv_header_stdint_h=yes +ac_cv_header_stdlib_h=yes +ac_cv_header_string_h=yes +ac_cv_header_strings_h=yes +ac_cv_header_sys_file_h=yes +ac_cv_header_sys_mount_h=yes +ac_cv_header_sys_select_h=yes +ac_cv_header_sys_socket_h=yes +ac_cv_header_sys_stat_h=yes +ac_cv_header_sys_statfs_h=yes +ac_cv_header_sys_time_h=yes +ac_cv_header_sys_timeb_h=yes +ac_cv_header_sys_types_h=yes +ac_cv_header_sys_wait_h=yes +ac_cv_header_syslog_h=yes +ac_cv_header_time=yes +ac_cv_header_unistd_h=yes +ac_cv_header_utime_h=yes +ac_cv_header_values_h=yes +ac_cv_header_vfork_h=no +ac_cv_header_zlib_h=yes +ac_cv_host=x86_64-unknown-linux-gnu +ac_cv_host_alias=x86_64-unknown-linux-gnu +ac_cv_lib_error_at_line=no +ac_cv_lib_fl_yywrap=yes +ac_cv_objext=o +ac_cv_path_XML2_CONFIG=/usr/bin/xml2-config +ac_cv_path_install='/usr/bin/install -p' +ac_cv_prog_AWK=gawk +ac_cv_prog_CPP='gcc -E' +ac_cv_prog_CXXCPP='g++ -E' +ac_cv_prog_LEX=flex +ac_cv_prog_YACC='bison -y' +ac_cv_prog_ac_ct_AR=ar +ac_cv_prog_ac_ct_CC=gcc +ac_cv_prog_ac_ct_CXX=g++ +ac_cv_prog_ac_ct_RANLIB=ranlib +ac_cv_prog_ac_ct_STRIP=strip +ac_cv_prog_cc_g=yes +ac_cv_prog_cc_stdc= +ac_cv_prog_cxx_g=yes +ac_cv_prog_egrep='grep -E' +ac_cv_prog_f77_g=no +ac_cv_prog_lex_root=lex.yy +ac_cv_prog_lex_yytext_pointer=no +ac_cv_prog_make_make_set=yes +ac_cv_struct_tm=time.h +ac_cv_type__Bool=no +ac_cv_type_mbstate_t=yes +ac_cv_type_mode_t=yes +ac_cv_type_off_t=yes +ac_cv_type_pid_t=yes +ac_cv_type_ptrdiff_t=yes +ac_cv_type_signal=void +ac_cv_type_size_t=yes +ac_cv_working_alloca_h=yes +am_cv_CC_dependencies_compiler_type=gcc3 +am_cv_CXX_dependencies_compiler_type=gcc3 +lt_cv_deplibs_check_method=pass_all +lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_ld_reload_flag=-r +lt_cv_objdir=.libs +lt_cv_path_LD=/usr/bin/ld +lt_cv_path_LDCXX='/usr/bin/ld -m elf_x86_64' +lt_cv_path_NM='/usr/bin/nm -B' +lt_cv_path_SED=/bin/sed +lt_cv_prog_compiler_c_o=yes +lt_cv_prog_compiler_c_o_CXX=yes +lt_cv_prog_compiler_rtti_exceptions=no +lt_cv_prog_gnu_ld=yes +lt_cv_prog_gnu_ldcxx=yes +lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\''' +lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \([^ ]*\) $/ {\"\1\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr) \&\2},/p'\''' +lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^. .* \(.*\)$/extern int \1;/p'\''' +lt_cv_sys_max_cmd_len=32768 +lt_lt_cv_prog_compiler_c_o='"yes"' +lt_lt_cv_prog_compiler_c_o_CXX='"yes"' +lt_lt_cv_sys_global_symbol_pipe='"sed -n -e '\''s/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'\''"' +lt_lt_cv_sys_global_symbol_to_c_name_address='"sed -n -e '\''s/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p'\'' -e '\''s/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'\''"' +lt_lt_cv_sys_global_symbol_to_cdecl='"sed -n -e '\''s/^. .* \\(.*\\)\$/extern int \\1;/p'\''"' + +## ----------------- ## +## Output variables. ## +## ----------------- ## + +ACLOCAL='${SHELL} /home/calpont/genii/missing --run aclocal-1.9' +ALLOCA='' +AMDEPBACKSLASH='\' +AMDEP_FALSE='#' +AMDEP_TRUE='' +AMTAR='${SHELL} /home/calpont/genii/missing --run tar' +AR='ar' +AUTOCONF='${SHELL} /home/calpont/genii/missing --run autoconf' +AUTOHEADER='${SHELL} /home/calpont/genii/missing --run autoheader' +AUTOMAKE='${SHELL} /home/calpont/genii/missing --run automake-1.9' +AWK='gawk' +CC='gcc' +CCDEPMODE='depmode=gcc3' +CFLAGS='' +CPP='gcc -E' +CPPFLAGS='' +CXX='g++' +CXXCPP='g++ -E' +CXXDEPMODE='depmode=gcc3' +CXXFLAGS='' +CYGPATH_W='echo' +DEFS='-DHAVE_CONFIG_H' +DEPDIR='.deps' +ECHO='echo' +ECHO_C='' +ECHO_N='-n' +ECHO_T='' +EGREP='grep -E' +EXEEXT='' +F77='' +FFLAGS='' +INSTALL_DATA='${INSTALL} -m 644' +INSTALL_PROGRAM='${INSTALL}' +INSTALL_SCRIPT='${INSTALL}' +INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s' +LDFLAGS='' +LEX='flex' +LEXLIB='-lfl' +LEX_OUTPUT_ROOT='lex.yy' +LIBOBJS=' error$U.o mktime$U.o' +LIBS='' +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +LN_S='ln -s' +LTLIBOBJS=' error$U.lo mktime$U.lo' +MAKEINFO='${SHELL} /home/calpont/genii/missing --run makeinfo' +OBJEXT='o' +PACKAGE='infinidb' +PACKAGE_BUGREPORT='support@infinidb.co' +PACKAGE_NAME='infinidb' +PACKAGE_STRING='infinidb 4.6.1' +PACKAGE_TARNAME='infinidb' +PACKAGE_VERSION='4.6.1' +PATH_SEPARATOR=':' +POW_LIB='' +RANLIB='ranlib' +SED='/bin/sed' +SET_MAKE='' +SHELL='/bin/sh' +STRIP='strip' +VERSION='4.6.1' +XML2_CONFIG='/usr/bin/xml2-config' +XML_CPPFLAGS='-I/usr/include/libxml2' +XML_LIBS='-lxml2 -lz -lm' +YACC='bison -y' +ac_ct_AR='ar' +ac_ct_CC='gcc' +ac_ct_CXX='g++' +ac_ct_F77='' +ac_ct_RANLIB='ranlib' +ac_ct_STRIP='strip' +am__fastdepCC_FALSE='#' +am__fastdepCC_TRUE='' +am__fastdepCXX_FALSE='#' +am__fastdepCXX_TRUE='' +am__include='include' +am__leading_dot='.' +am__quote='' +am__tar='${AMTAR} chof - "$$tardir"' +am__untar='${AMTAR} xf -' +bindir='${idbinstall}/bin' +build='x86_64-unknown-linux-gnu' +build_alias='' +build_cpu='x86_64' +build_os='linux-gnu' +build_vendor='unknown' +datadir='${prefix}/share' +etcdir='${idbinstall}/etc' +exec_prefix='${prefix}' +host='x86_64-unknown-linux-gnu' +host_alias='' +host_cpu='x86_64' +host_os='linux-gnu' +host_vendor='unknown' +idb_brm_libs='-lbrm -lidbdatafile -lcacheutils -lrwlock ${idb_oam_libs} ${idb_common_libs}' +idb_cflags='-g0 -O3 -fno-strict-aliasing -Wall' +idb_common_includes='-I${idbinstall}/include -I/usr/local/include -I/usr/local/include/libxml2 -I/usr/include/libxml2' +idb_common_ldflags='-L${idbinstall}/lib -L/usr/local/lib' +idb_common_libs='-lmessageqcpp -lloggingcpp -lconfigcpp -lidbboot -lboost_idb -lxml2 -lpthread -lrt' +idb_cppflags=' ' +idb_cxxflags='-g0 -O3 -fno-strict-aliasing -Wall -Wno-unused-local-typedefs -Wno-unused-result -Wno-format' +idb_exec_libs='-ljoblist -lexecplan -lwindowfunction -ljoiner -lrowgroup -lfuncexp -ludfsdk -ldataconvert -lcommon -lcompress -lmysqlcl_idb -lquerystats -lquerytele -lthrift -lthreadpool ${idb_brm_libs}' +idb_ldflags='-Wl,--rpath -Wl,${idbinstall}/lib -Wl,--no-as-needed -Wl,--add-needed' +idb_oam_libs='-loamcpp -lsnmpmanager ${netsnmp_libs}' +idb_write_libs='-lddlpackageproc -lddlpackage -ldmlpackageproc -ldmlpackage -lwriteengine -lwriteengineclient -lidbdatafile -lcacheutils ${idb_exec_libs}' +idbinstall='${prefix}' +includedir='${idbinstall}/include' +infodir='${prefix}/info' +install_sh='/home/calpont/genii/install-sh' +libdir='${idbinstall}/lib' +libexecdir='${exec_prefix}/libexec' +localdir='${idbinstall}/local' +localstatedir='${prefix}/var' +mandir='${idbinstall}/man' +march_flags=' ' +mibdir='${idbinstall}/share/snmp/mibs' +mkdir_p='mkdir -p --' +mysqldir='${idbinstall}/mysql' +netsnmp_libs='-lnetsnmpmibs -lnetsnmpagent -lnetsnmp -lnetsnmpmibs -lnetsnmphelpers' +netsnmpagntdir='${idbinstall}/include/net-snmp/agent' +netsnmpdir='${idbinstall}/include/net-snmp' +netsnmplibrdir='${idbinstall}/include/net-snmp/library' +netsnmpmachdir='${idbinstall}/include/net-snmp/machine' +netsnmpsysdir='${idbinstall}/include/net-snmp/system' +oldincludedir='/usr/include' +postdir='${idbinstall}/post' +prefix='/usr/local' +program_transform_name='s,x,x,' +sbindir='${idbinstall}/sbin' +sharedir='${idbinstall}/share' +sharedstatedir='${prefix}/com' +sysconfdir='${idbinstall}/etc' +target_alias='' +toolsdir='${idbinstall}/tools' + +## ----------- ## +## confdefs.h. ## +## ----------- ## + +#define HAVE_ALARM 1 +#define HAVE_ALARM 1 +#define HAVE_ALLOCA 1 +#define HAVE_ALLOCA_H 1 +#define HAVE_ARPA_INET_H 1 +#define HAVE_DECL_STRERROR_R 1 +#define HAVE_DLFCN_H 1 +#define HAVE_DUP2 1 +#define HAVE_FCNTL_H 1 +#define HAVE_FLOOR 1 +#define HAVE_FORK 1 +#define HAVE_FTIME 1 +#define HAVE_FTRUNCATE 1 +#define HAVE_GETHOSTBYNAME 1 +#define HAVE_GETPAGESIZE 1 +#define HAVE_GETTIMEOFDAY 1 +#define HAVE_INET_NTOA 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_ISASCII 1 +#define HAVE_LIMITS_H 1 +#define HAVE_LOCALTIME_R 1 +#define HAVE_MALLOC 1 +#define HAVE_MALLOC_H 1 +#define HAVE_MBSTATE_T 1 +#define HAVE_MEMCHR 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMORY_H 1 +#define HAVE_MEMSET 1 +#define HAVE_MKDIR 1 +#define HAVE_NCURSES_H 1 +#define HAVE_NETDB_H 1 +#define HAVE_NETINET_IN_H 1 +#define HAVE_POW 1 +#define HAVE_PTRDIFF_T 1 +#define HAVE_READLINE_READLINE_H 1 +#define HAVE_REGCOMP 1 +#define HAVE_RMDIR 1 +#define HAVE_SELECT 1 +#define HAVE_SETENV 1 +#define HAVE_SETLOCALE 1 +#define HAVE_SOCKET 1 +#define HAVE_STDBOOL_H 1 +#define HAVE_STDDEF_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRCSPN 1 +#define HAVE_STRDUP 1 +#define HAVE_STRERROR 1 +#define HAVE_STRERROR_R 1 +#define HAVE_STRFTIME 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_STRING_H 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSPN 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOULL 1 +#define HAVE_SYSLOG_H 1 +#define HAVE_SYS_FILE_H 1 +#define HAVE_SYS_MOUNT_H 1 +#define HAVE_SYS_SELECT_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_STATFS_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TIMEB_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_SYS_WAIT_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_UTIME 1 +#define HAVE_UTIME_H 1 +#define HAVE_VALUES_H 1 +#define HAVE_VFORK 1 +#define HAVE_WORKING_VFORK 1 +#define HAVE_ZLIB_H 1 +#define LSTAT_FOLLOWS_SLASHED_SYMLINK 1 +#define PACKAGE "infinidb" +#define PACKAGE_BUGREPORT "support@infinidb.co" +#define PACKAGE_NAME "infinidb" +#define PACKAGE_STRING "infinidb 4.6.1" +#define PACKAGE_TARNAME "infinidb" +#define PACKAGE_VERSION "4.6.1" +#define PROTOTYPES 1 +#define RETSIGTYPE void +#define SELECT_TYPE_ARG1 int +#define SELECT_TYPE_ARG234 (fd_set *) +#define SELECT_TYPE_ARG5 (struct timeval *) +#define STDC_HEADERS 1 +#define STDC_HEADERS 1 +#define STRERROR_R_CHAR_P 1 +#define TIME_WITH_SYS_TIME 1 +#define VERSION "4.6.1" +#define __PROTOTYPES 1 +#define restrict __restrict +#endif +#ifdef __cplusplus +extern "C" void exit (int) throw (); + +configure: exit 0 + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by infinidb config.status 4.6.1, which was +generated by GNU Autoconf 2.59. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status + +on srvhall03 + +config.status:848: creating Makefile +config.status:848: creating utils/Makefile +config.status:848: creating utils/boost_idb/Makefile +config.status:848: creating utils/startup/Makefile +config.status:848: creating utils/common/Makefile +config.status:848: creating utils/configcpp/Makefile +config.status:848: creating utils/loggingcpp/Makefile +config.status:848: creating utils/messageqcpp/Makefile +config.status:848: creating utils/threadpool/Makefile +config.status:848: creating utils/rwlock/Makefile +config.status:848: creating utils/dataconvert/Makefile +config.status:848: creating utils/joiner/Makefile +config.status:848: creating utils/rowgroup/Makefile +config.status:848: creating utils/cacheutils/Makefile +config.status:848: creating utils/net-snmp/Makefile +config.status:848: creating utils/funcexp/Makefile +config.status:848: creating utils/udfsdk/Makefile +config.status:848: creating utils/compress/Makefile +config.status:848: creating utils/ddlcleanup/Makefile +config.status:848: creating utils/batchloader/Makefile +config.status:848: creating utils/mysqlcl_idb/Makefile +config.status:848: creating utils/querystats/Makefile +config.status:848: creating utils/jemalloc/Makefile +config.status:848: creating utils/windowfunction/Makefile +config.status:848: creating utils/idbdatafile/Makefile +config.status:848: creating utils/idbhdfs/Makefile +config.status:848: creating utils/idbhdfs/hdfs-12/Makefile +config.status:848: creating utils/idbhdfs/hdfs-20/Makefile +config.status:848: creating utils/winport/Makefile +config.status:848: creating utils/thrift/Makefile +config.status:848: creating utils/querytele/Makefile +config.status:848: creating exemgr/Makefile +config.status:848: creating ddlproc/Makefile +config.status:848: creating dbcon/Makefile +config.status:848: creating dbcon/ddlpackage/Makefile +config.status:848: creating dbcon/ddlpackageproc/Makefile +config.status:848: creating dbcon/dmlpackage/Makefile +config.status:848: creating dbcon/dmlpackageproc/Makefile +config.status:848: creating dbcon/execplan/Makefile +config.status:848: creating dbcon/joblist/Makefile +config.status:848: creating dbcon/mysql/Makefile +config.status:848: creating dmlproc/Makefile +config.status:848: creating oam/Makefile +config.status:848: creating oam/etc/Makefile +config.status:848: creating oam/install_scripts/Makefile +config.status:848: creating oam/oamcpp/Makefile +config.status:848: creating oam/post/Makefile +config.status:848: creating oam/cloud/Makefile +config.status:848: creating oamapps/Makefile +config.status:848: creating oamapps/calpontConsole/Makefile +config.status:848: creating oamapps/calpontDB/Makefile +config.status:848: creating oamapps/postConfigure/Makefile +config.status:848: creating oamapps/serverMonitor/Makefile +config.status:848: creating oamapps/sessionWalker/Makefile +config.status:848: creating oamapps/traphandler/Makefile +config.status:848: creating oamapps/sendtrap/Makefile +config.status:848: creating oamapps/calpontSupport/Makefile +config.status:848: creating primitives/Makefile +config.status:848: creating primitives/blockcache/Makefile +config.status:848: creating primitives/linux-port/Makefile +config.status:848: creating primitives/primproc/Makefile +config.status:848: creating decomsvr/Makefile +config.status:848: creating procmgr/Makefile +config.status:848: creating procmon/Makefile +config.status:848: creating snmpd/Makefile +config.status:848: creating snmpd/etc/Makefile +config.status:848: creating snmpd/snmpmanager/Makefile +config.status:848: creating tools/Makefile +config.status:848: creating tools/editem/Makefile +config.status:848: creating tools/cplogger/Makefile +config.status:848: creating tools/clearShm/Makefile +config.status:848: creating tools/setConfig/Makefile +config.status:848: creating tools/getConfig/Makefile +config.status:848: creating tools/dbbuilder/Makefile +config.status:848: creating tools/dbloadxml/Makefile +config.status:848: creating tools/configMgt/Makefile +config.status:848: creating tools/viewtablelock/Makefile +config.status:848: creating tools/cleartablelock/Makefile +config.status:848: creating tools/ddlcleanup/Makefile +config.status:848: creating tools/idbmeminfo/Makefile +config.status:848: creating versioning/Makefile +config.status:848: creating versioning/BRM/Makefile +config.status:848: creating writeengine/Makefile +config.status:848: creating writeengine/shared/Makefile +config.status:848: creating writeengine/index/Makefile +config.status:848: creating writeengine/dictionary/Makefile +config.status:848: creating writeengine/wrapper/Makefile +config.status:848: creating writeengine/xml/Makefile +config.status:848: creating writeengine/bulk/Makefile +config.status:848: creating writeengine/client/Makefile +config.status:848: creating writeengine/splitter/Makefile +config.status:848: creating writeengine/server/Makefile +config.status:848: creating writeengine/redistribute/Makefile +config.status:848: creating net-snmp/Makefile +config.status:952: creating config.h +config.status:1278: config.h is unchanged +config.status:1594: executing depfiles commands diff --git a/dbcon/joblist/fdtests.pl b/dbcon/joblist/fdtests.pl index 7ac347b87..8455718b4 100755 --- a/dbcon/joblist/fdtests.pl +++ b/dbcon/joblist/fdtests.pl @@ -6,7 +6,7 @@ use DBI; use DBD::mysql; $databasename='calpont'; -$cnffile='/usr/local/Calpont/mysql/my.cnf'; +$cnffile='/usr/local/MariaDB/Columnstore/mysql/my.cnf'; $data_source = 'DBI:mysql:database=' . $databasename . ':mysql_read_default_file=' . $cnffile . ''; $username = 'root'; diff --git a/dbcon/joblist/largehashjoin.cpp b/dbcon/joblist/largehashjoin.cpp index b9a6a959f..ddab57450 100644 --- a/dbcon/joblist/largehashjoin.cpp +++ b/dbcon/joblist/largehashjoin.cpp @@ -42,7 +42,7 @@ namespace void logDiskIoInfo(uint64_t stepId, const AnyDataListSPtr& spdl) { boost::mutex::scoped_lock lk(fileLock_g); - ofstream umDiskIoFile("/var/log/Calpont/trace/umdiskio.log", ios_base::app); + ofstream umDiskIoFile("/var/log/Columnstore/trace/umdiskio.log", ios_base::app); CalpontSystemCatalog::OID oid; uint64_t maxBuckets = 0; @@ -106,7 +106,7 @@ void logDiskIoInfo(uint64_t stepId, const AnyDataListSPtr& spdl) // move the current file to bak when size above .5 G, so total log is 1 G if (curPos > 0x20000000) { - (void)system("/bin/mv /var/log/Calpont/trace/umdiskio.log /var/log/Calpont/trace/umdiskio.bak"); + (void)system("/bin/mv /var/log/Columnstore/trace/umdiskio.log /var/log/Columnstore/trace/umdiskio.bak"); } } diff --git a/dbcon/mysql/Makefile.am b/dbcon/mysql/Makefile.am index eaccd8f25..de4143c93 100644 --- a/dbcon/mysql/Makefile.am +++ b/dbcon/mysql/Makefile.am @@ -25,7 +25,7 @@ libcalmysql_la_CPPFLAGS = -I/usr/include/libxml2 -I../../../mysql/include -I../. include_HEADERS = idb_mysql.h dist_mysql_DATA = syscatalog_mysql.sql dumpcat_mysql.sql calsetuserpriority.sql calremoveuserpriority.sql calshowprocesslist.sql my.cnf -dist_mysql_SCRIPTS = install_calpont_mysql.sh mysql-Calpont dumpcat.pl +mysql-Columnstore = install_calpont_mysql.sh mysql-Calpont dumpcat.pl test: diff --git a/dbcon/mysql/Makefile.in b/dbcon/mysql/Makefile.in index b7509130f..f1ab264c3 100644 --- a/dbcon/mysql/Makefile.in +++ b/dbcon/mysql/Makefile.in @@ -40,7 +40,7 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = dbcon/mysql -DIST_COMMON = $(dist_mysql_DATA) $(dist_mysql_SCRIPTS) \ +DIST_COMMON = $(dist_mysql_DATA) $(mysql-Columnstore) \ $(include_HEADERS) $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/compilerflags.m4 \ @@ -75,7 +75,7 @@ am_libcalmysql_la_OBJECTS = libcalmysql_la-ha_calpont.lo \ libcalmysql_la-ha_pseudocolumn.lo libcalmysql_la_OBJECTS = $(am_libcalmysql_la_OBJECTS) dist_mysqlSCRIPT_INSTALL = $(INSTALL_SCRIPT) -SCRIPTS = $(dist_mysql_SCRIPTS) +SCRIPTS = $(mysql-Columnstore) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -255,7 +255,7 @@ libcalmysql_la_LDFLAGS = -version-info 1:0:0 $(idb_common_ldflags) $(idb_common_ libcalmysql_la_CPPFLAGS = -I/usr/include/libxml2 -I../../../mysql/include -I../../../mysql/sql -I../../../mysql/regex -DMYSQL_DYNAMIC_PLUGIN $(AM_CPPFLAGS) include_HEADERS = idb_mysql.h dist_mysql_DATA = syscatalog_mysql.sql dumpcat_mysql.sql calsetuserpriority.sql calremoveuserpriority.sql calshowprocesslist.sql my.cnf -dist_mysql_SCRIPTS = install_calpont_mysql.sh mysql-Calpont dumpcat.pl +mysql-Columnstore = install_calpont_mysql.sh mysql-Calpont dumpcat.pl all: all-am .SUFFIXES: @@ -318,10 +318,10 @@ clean-libLTLIBRARIES: done libcalmysql.la: $(libcalmysql_la_OBJECTS) $(libcalmysql_la_DEPENDENCIES) $(CXXLINK) -rpath $(libdir) $(libcalmysql_la_LDFLAGS) $(libcalmysql_la_OBJECTS) $(libcalmysql_la_LIBADD) $(LIBS) -install-dist_mysqlSCRIPTS: $(dist_mysql_SCRIPTS) +install-dist_mysqlSCRIPTS: $(mysql-Columnstore) @$(NORMAL_INSTALL) test -z "$(mysqldir)" || $(mkdir_p) "$(DESTDIR)$(mysqldir)" - @list='$(dist_mysql_SCRIPTS)'; for p in $$list; do \ + @list='$(mysql-Columnstore)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ if test -f $$d$$p; then \ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ @@ -332,7 +332,7 @@ install-dist_mysqlSCRIPTS: $(dist_mysql_SCRIPTS) uninstall-dist_mysqlSCRIPTS: @$(NORMAL_UNINSTALL) - @list='$(dist_mysql_SCRIPTS)'; for p in $$list; do \ + @list='$(mysql-Columnstore)'; for p in $$list; do \ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \ echo " rm -f '$(DESTDIR)$(mysqldir)/$$f'"; \ rm -f "$(DESTDIR)$(mysqldir)/$$f"; \ diff --git a/dbcon/mysql/dumpcat.pl b/dbcon/mysql/dumpcat.pl index fcbeaddb0..1a4641102 100755 --- a/dbcon/mysql/dumpcat.pl +++ b/dbcon/mysql/dumpcat.pl @@ -5,7 +5,7 @@ use DBI; use DBD::mysql; -$data_source = 'DBI:mysql:database=calpontsys:mysql_read_default_file=/usr/local/Calpont/mysql/my.cnf'; +$data_source = 'DBI:mysql:database=calpontsys:mysql_read_default_file=/usr/local/MariaDB/Columnstore/mysql/my.cnf'; $username = 'root'; $auth = ''; %attr = (); diff --git a/dbcon/mysql/files.lst b/dbcon/mysql/files.lst index 2a063ac54..45621bda5 100644 --- a/dbcon/mysql/files.lst +++ b/dbcon/mysql/files.lst @@ -1,3 +1,3 @@ ./my.cnf -./mysql-Calpont +./mysql-Columnstore ./install_calpont_mysql.sh diff --git a/dbcon/mysql/my.cnf b/dbcon/mysql/my.cnf index 1f47b67de..243c774cc 100644 --- a/dbcon/mysql/my.cnf +++ b/dbcon/mysql/my.cnf @@ -20,15 +20,15 @@ [client] #password = your_password port = 3306 -socket = /usr/local/Calpont/mysql/lib/mysql/mysql.sock +socket = /usr/local/MariaDB/Columnstore/mysql/lib/mysql/mysql.sock # Here follows entries for some specific programs # The MySQL server [mysqld] port = 3306 -socket = /usr/local/Calpont/mysql/lib/mysql/mysql.sock -datadir = /usr/local/Calpont/mysql/db +socket = /usr/local/MariaDB/Columnstore/mysql/lib/mysql/mysql.sock +datadir = /usr/local/MariaDB/Columnstore/mysql/db skip-external-locking key_buffer_size = 512M max_allowed_packet = 1M @@ -62,10 +62,10 @@ infinidb_um_mem_limit=0 infinidb_use_import_for_batchinsert=1 infinidb_import_for_batchinsert_delimiter=7 -basedir = /usr/local/Calpont/mysql/ -character-sets-dir = /usr/local/Calpont/mysql/share/mysql/charsets/ -language = /usr/local/Calpont/mysql/share/mysql/english/ -plugin_dir = /usr/local/Calpont/mysql/lib64/mysql/plugin +basedir = /usr/local/MariaDB/Columnstore/mysql/ +character-sets-dir = /usr/local/MariaDB/Columnstore/mysql/share/mysql/charsets/ +language = /usr/local/MariaDB/Columnstore/mysql/share/mysql/english/ +plugin_dir = /usr/local/MariaDB/Columnstore/mysql/lib64/mysql/plugin # Don't listen on a TCP/IP port at all. This can be a security enhancement, # if all processes that need to connect to mysqld run on the same host. @@ -134,20 +134,20 @@ slave-skip-errors=all #master-port = # # binary logging - not required for slaves, but recommended -log-bin=/usr/local/Calpont/mysql/db/mysql-bin -relay-log=/usr/local/Calpont/mysql/db/relay-bin -relay-log-index = /usr/local/Calpont/mysql/db/relay-bin.index -relay-log-info-file = /usr/local/Calpont/mysql/db/relay-bin.info +log-bin=/usr/local/MariaDB/Columnstore/mysql/db/mysql-bin +relay-log=/usr/local/MariaDB/Columnstore/mysql/db/relay-bin +relay-log-index = /usr/local/MariaDB/Columnstore/mysql/db/relay-bin.index +relay-log-info-file = /usr/local/MariaDB/Columnstore/mysql/db/relay-bin.info # Point the following paths to different dedicated disks #tmpdir = /tmp/ #log-update = /path-to-dedicated-directory/hostname # Uncomment the following if you are using InnoDB tables -#innodb_data_home_dir = /usr/local/Calpont/mysql/lib/mysql/ +#innodb_data_home_dir = /usr/local/MariaDB/Columnstore/mysql/lib/mysql/ #innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend -#innodb_log_group_home_dir = /usr/local/Calpont/mysql/lib/mysql/ -#innodb_log_arch_dir = /usr/local/Calpont/mysql/lib/mysql/ +#innodb_log_group_home_dir = /usr/local/MariaDB/Columnstore/mysql/lib/mysql/ +#innodb_log_arch_dir = /usr/local/MariaDB/Columnstore/mysql/lib/mysql/ # You can set .._buffer_pool_size up to 50 - 80 % # of RAM but beware of setting memory usage too high #innodb_buffer_pool_size = 384M diff --git a/dbcon/mysql/mysql-Calpont b/dbcon/mysql/mysql-Calpont index 3fd3e5d8b..941de2fd5 100755 --- a/dbcon/mysql/mysql-Calpont +++ b/dbcon/mysql/mysql-Calpont @@ -55,7 +55,7 @@ service_startup_timeout=30 # Lock directory for RedHat / SuSE. lockdir='/var/lock/subsys' -lock_file_path="$lockdir/mysql-Calpont" +lock_file_path="$lockdir/mysql-Columnstore" # The following variables are only set for letting mysql.server find things. diff --git a/dbcon/mysql/schemaSync.pl b/dbcon/mysql/schemaSync.pl index 22edb1c10..f10705a4b 100755 --- a/dbcon/mysql/schemaSync.pl +++ b/dbcon/mysql/schemaSync.pl @@ -7,7 +7,7 @@ use DBD::mysql; $| = 1; -$cfgfile='/usr/local/Calpont/mysql/my.cnf'; +$cfgfile='/usr/local/MariaDB/Columnstore/mysql/my.cnf'; $username = 'root'; $auth = ''; diff --git a/export/bin/binary_installer.sh b/export/bin/binary_installer.sh deleted file mode 100755 index c8a20ee38..000000000 --- a/export/bin/binary_installer.sh +++ /dev/null @@ -1,330 +0,0 @@ -#!/usr/bin/expect -# -# $Id$ -# -# Install RPM and custom OS files on system -# Argument 1 - Remote Module Name -# Argument 2 - Remote Server Host Name or IP address -# Argument 3 - User Password of remote server -# Argument 4 - Package name being installed -# Argument 5 - Module type? -# Argument 6 - Install Type, "initial" or "upgrade" -# Argument 7 - Server type? -# Argument 8 - Debug flag 1 for on, 0 for off -# Argument 9 - install dir (optional) -# Argument 10 - user name (optional) -set USERNAME root -set MODULE [lindex $argv 0] -set SERVER [lindex $argv 1] -set PASSWORD [lindex $argv 2] -set CALPONTPKG [lindex $argv 3] -set MODULETYPE [lindex $argv 4] -set INSTALLTYPE [lindex $argv 5] -set PKGTYPE "binary" -set SERVERTYPE [lindex $argv 6] -set MYSQLPORT [lindex $argv 7] -set DEBUG [lindex $argv 8] -set INSTALLDIR "/usr/local/MariaDB/Columnstore" -set IDIR [lindex $argv 9] -if { $IDIR != "" } { - set INSTALLDIR $IDIR -} -set env(INFINIDB_INSTALL_DIR) $INSTALLDIR -set PREFIX [file dirname $INSTALLDIR] -set USERNAME $env(USER) -set UNM [lindex $argv 10] -if { $UNM != "" } { - set USERNAME $UNM -} - -set BASH "/bin/bash " -if { $DEBUG == "1" } { - set BASH "/bin/bash -x " -} - -log_user $DEBUG -spawn -noecho /bin/bash -# - -if { $INSTALLTYPE == "initial" || $INSTALLTYPE == "uninstall" } { - # - # remove Calpont files - # - send_user "Uninstall Calpont Package " - send " \n" - send date\n - send "ssh $USERNAME@$SERVER 'rm -f /etc/init.d/infinidb /etc/init.d/mysql-Calpont $INSTALLDIR/releasenum >/dev/null 2>&1'\n" - set timeout 20 - expect { - "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit 1} - "service not known" { send_user "FAILED: Invalid Host\n" ; exit 1} - "authenticity" { send "yes\n" - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - "Calpont uninstall completed" { send_user "DONE" } - } - set timeout 30 - expect { - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Calpont uninstall completed" { send_user "DONE" } - } - send_user "\n" -} -if { $INSTALLTYPE == "uninstall" } { - exit 0 -} -sleep 10 -# -# send the Calpont package -# -send_user "Copy New Calpont Package to Module " -send " \n" -send date\n -send "scp $CALPONTPKG $USERNAME@$SERVER:$CALPONTPKG\n" -set timeout 10 -expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } -} -set timeout 120 -expect { - "100%" { send_user "DONE" } - "scp:" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "No such file or directory" { send_user "ERROR: Invalid package\n" ; exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - timeout { send_user "ERROR: Timeout\n" ; exit 1 } -} -send_user "\n" -#sleep to make sure it's finished -sleep 5 -# -# install package -# -send_user "Install Calpont Package on Module " -send " \n" -send date\n -send "ssh $USERNAME@$SERVER 'tar -C $PREFIX --exclude db -zxf $CALPONTPKG;cat $INSTALLDIR/releasenum'\n" -set timeout 10 -expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } -} -set timeout 120 -expect { - "release=" { send_user "DONE" } - "No such file" { send_user "ERROR: Binary Install Failed, binary/releasenum not found\n" ; exit 1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - timeout { send_user "ERROR: Timeout\n" ; exit 1 } -} -#sleep to give time for cat Calpont/releasenum to complete -sleep 5 - -send_user "\n" -send_user "Run post-install script " -send " \n" -send date\n -send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/post-install --installdir=$INSTALLDIR'\n" -set timeout 10 -expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } -} -set timeout 60 -# check return -expect { - "InfiniDB syslog logging not working" { send_user "ERROR: InfiniDB System logging not setup\n" ; exit 1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - "postConfigure" { send_user "DONE" } -} -send_user "\n" -sleep 10 -# -if { $INSTALLTYPE == "initial"} { - # - # copy over calpont config file - # - send_user "Copy Calpont Config file to Module " - send " \n" - send date\n - send "scp $INSTALLDIR/etc/* $USERNAME@$SERVER:$INSTALLDIR/etc\n" - set timeout 10 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - set timeout 30 - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - } - send_user "\n" - # - # copy over custom OS tmp files - # - send_user "Copy Custom OS files to Module " - send " \n" - send date\n - send "scp -r $INSTALLDIR/local/etc $USERNAME@$SERVER:$INSTALLDIR/local\n" - set timeout 10 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - set timeout 60 - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - } - send_user "\n" - # - # copy over calpont OS files - # - send_user "Copy Calpont OS files to Module " - send " \n" - send date\n - send "scp $INSTALLDIR/local/etc/$MODULE/* $USERNAME@$SERVER:$INSTALLDIR/local\n" - set timeout 10 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - } - set timeout 60 - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - } - send_user "\n" - # - # Start module installer to setup Customer OS files - # - send_user "Run Module Installer " - send " \n" - send date\n - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/module_installer.sh --module=$MODULETYPE --port=$MYSQLPORT --installdir=$INSTALLDIR $MODULETYPE'\n" - set timeout 10 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - set timeout 60 - expect { - "!!!Module" { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "FAILED" { send_user "ERROR: missing module file\n" ; exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - "No such file" { send_user "ERROR: File Not Found\n" ; exit 1 } - } - send_user "\n" - sleep 10 - if { $MODULETYPE == "um" || $SERVERTYPE == "2" || $SERVERTYPE == "pmwithum" } { - # - # run mysql setup scripts - # - send_user "Run MySQL Setup Scripts on Module " - send " \n" - send date\n - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/post-mysqld-install --installdir=$INSTALLDIR'\n" - set timeout 10 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - set timeout 60 - expect { - "ERROR" { send_user "ERROR: Daemon failed to run"; - exit 1 } - "FAILED" { send_user "ERROR: Daemon failed to run"; - exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - } - - send " \n" - send date\n - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/post-mysql-install --installdir=$INSTALLDIR'\n" - set timeout 10 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - set timeout 60 - expect { - "Shutting down mysql." { send_user "DONE" } - timeout { send_user "DONE" } - "ERROR" { send_user "ERROR: Daemon failed to run"; - exit 1 } - "FAILED" { send_user "ERROR: Daemon failed to run"; - exit 1 } - "Read-only file system" { send_user "ERROR: local disk - Read-only file system\n" ; exit 1} - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - } - send_user "\n" - } -} - -# -# check InfiniDB syslog functionality -# -send_user "Check InfiniDB system logging functionality " -send " \n" -send date\n -send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/syslogSetup.sh check'\n" -set timeout 10 -expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } -} -set timeout 30 -expect { - "Logging working" { send_user "DONE" } - timeout { send_user "DONE" } - "not working" { send_user "WARNING: InfiniDB system logging functionality not working" } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } -} -send_user "\n" - -send_user "\nInstallation Successfully Completed on '$MODULE'\n" -exit 0 - diff --git a/export/bin/columnstore b/export/bin/columnstore deleted file mode 100755 index c5d44a947..000000000 --- a/export/bin/columnstore +++ /dev/null @@ -1,184 +0,0 @@ -#!/bin/bash -# -# $Id: columnstore 3704 2013-08-07 03:33:20Z bwilkinson $ -# -# columnstore Starts MariaDB Columnstore database platform -# -# -# chkconfig: 2345 99 99 -# description: MariaDB Columnstore is a database platform that utilizes Mysql -# -### BEGIN INIT INFO -# Provides: columnstore -# Required-Start: $local_fs $remote_fs $network $syslog $all -# Required-Stop: $local_fs $remote_fs $network $syslog -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Start/stop InfiniDB DW DBMS -### END INIT INFO - -# Source function library. -if [ -f /etc/init.d/functions ]; then - . /etc/init.d/functions -fi - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - test -f /etc/default/columnstore && . /etc/default/columnstore -fi - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - INFINIDB_INSTALL_DIR=/usr/local/MariaDB/Columnstore -fi - -export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR - -InstallDir=$INFINIDB_INSTALL_DIR - -if [ $InstallDir != "/usr/local/Calpont" ]; then - export PATH=$InstallDir/bin:$InstallDir/mysql/bin:/bin:/usr/bin - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$InstallDir/lib:$InstallDir/mysql/lib/mysql -fi - -#hadoop -plugin=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DataFilePlugin` -if [ -n "$plugin" ]; then - setenv=`$InstallDir/bin/getConfig SystemConfig DataFileEnvFile` - . $InstallDir/bin/$setenv >/dev/null 2>&1 -fi - -if [ -e $InstallDir/lib/libjemalloc.so ]; then - export LD_PRELOAD=$InstallDir/lib/libjemalloc.so -elif [ -e $InstallDir/lib/libjemalloc.so.1 ]; then - export LD_PRELOAD=$InstallDir/lib/libjemalloc.so.1 -fi - -test -f $InstallDir/post/functions && . $InstallDir/post/functions - -mt=`module_type` -mid=`module_id` - -has_um=`$InstallDir/bin/getConfig SystemModuleConfig ModuleCount2` -if [ "x$has_um" = x ]; then - has_um=0 -fi - -user=$USER -if [ -z "$user" ]; then - user=root -fi - -checkInstallSetup() { - InitialInstallFlag=`$InstallDir/bin/getConfig -c $InstallDir/etc/Calpont.xml Installation InitialInstallFlag` - if [ $InitialInstallFlag != "y" ]; then - echo "Please run the postConfigure install script, check the Installation Guide" - echo "for additional details" - rm -f /var/lock/subsys/columnstore - exit 1 - fi -} - -[ -f $InstallDir/bin/ProcMon ] || exit 0 - -start() { - if [ -f /var/lock/subsys/columnstore ]; then - echo "MariaDB Columnstore Database Platform already running" - exit 0 - fi - - (mkdir -p /var/lock/subsys && touch /var/lock/subsys/columnstore) >/dev/null 2>&1 - - if [ -x $InstallDir/bin/columnstore.pre-start ]; then - $InstallDir/bin/columnstore.pre-start - if [ $? -ne 0 ]; then - echo "Error running MariaDB Columnstore pre-start script, not starting MariaDB Columnstore" - rm -f /var/lock/subsys/columnstore - exit 1 - fi - fi - checkInstallSetup - - CoreFileFlag=`$InstallDir/bin/getConfig -c $InstallDir/etc/Calpont.xml Installation CoreFileFlag` - if [ $CoreFileFlag = "y" ]; then - SUDO= - if [ "$user" != "root" ]; then - SUDO="sudo" - fi - - #columnstore core files - $SUDO ulimit -c unlimited > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_uses_pid=1 > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_pattern=/var/log/Calpont/corefiles/core.%e.%p > /dev/null 2>&1 - fi - - RETVAL=0 - echo "Starting MariaDB Columnstore Database Platform" - rm -f /tmp/StopCalpont - exec $InstallDir/bin/run.sh $InstallDir/bin/ProcMon > /dev/null 2>&1 & - - return $RETVAL -} -stop() { - echo "Shutting down MariaDB Columnstore Database Platform" - touch /tmp/StopCalpont - pkill -9 ProcMon - pkill -9 ProcMgr - pkill -9 snmptrapd - sleep 1 - $InstallDir/bin/clearShm - RETVAL=$? - rm -f /var/lock/subsys/columnstore - fuser -k 8604/tcp > /dev/null 2>&1 - test -f $InstallDir/mysql/mysql-Calpont || return $RETVAL - $InstallDir/mysql/mysql-Calpont stop > /dev/null 2>&1 - if [ -x $InstallDir/bin/columnstore.post-stop ]; then - $InstallDir/bin/columnstore.post-stop - fi - return $RETVAL -} -restart() { - stop - start -} -status() { - isrunning=0 - if [ $EUID -eq 0 ]; then - if [ -f /var/lock/subsys/columnstore ]; then - isrunning=1 - fi - else - pgrep ProcMon >/dev/null 2>&1 - if [ $? -eq 0 ]; then - isrunning=1 - fi - fi - if [ $isrunning -ne 0 ]; then - echo "MariaDB Columnstore is running" - else - echo "MariaDB Columnstore is not running" - exit 3 - fi -} - -case "$1" in -start) - start - ;; -stop) - stop - ;; -restart) - restart - ;; -condrestart) - [ -f /var/lock/subsys/columnstore ] && restart || : - ;; -status) - status - ;; -*) - echo $"Usage: $0 {start|stop|restart|condrestart|status}" - exit 1 -esac - -exit $? - diff --git a/export/bin/columnstore.conf b/export/bin/columnstore.conf deleted file mode 100755 index abb2e8fd4..000000000 --- a/export/bin/columnstore.conf +++ /dev/null @@ -1,2 +0,0 @@ -/usr/local/Calpont/lib - diff --git a/export/bin/columnstore.def b/export/bin/columnstore.def deleted file mode 100755 index 4ebfb2019..000000000 --- a/export/bin/columnstore.def +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash -# Copy this file to /etc/default and rename it to 'infinidb'. - -# Change this line to your InfiniDB installation directory -INFINIDB_INSTALL_DIR=/usr/local/Calpont - -LD_LIBRARY_PATH=$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql -export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH diff --git a/export/bin/columnstoreAlias b/export/bin/columnstoreAlias deleted file mode 100755 index bf34a4e9a..000000000 --- a/export/bin/columnstoreAlias +++ /dev/null @@ -1,13 +0,0 @@ -# InfiniDB Alias Commands -# -alias mcsmysql='/usr/local/Calpont/mysql/bin/mysql --defaults-file=/usr/local/Calpont/mysql/my.cnf -u root' -alias ma=/usr/local/Calpont/bin/mcsadmin -alias mcsadmin=/usr/local/Calpont/bin/mcsadmin -alias home='cd /usr/local/Calpont/' -alias log='cd /var/log/Calpont/' -alias core='cd /var/log/Calpont/corefiles' -alias tmsg='tail -f /var/log/messages' -alias tdebug='tail -f /var/log/Calpont/debug.log' -alias tinfo='tail -f /var/log/Calpont/info.log' -alias dbrm='cd /usr/local/Calpont/data1/systemFiles/dbrm' -alias module='cat /usr/local/Calpont/local/module' diff --git a/export/bin/columnstoreLogRotate b/export/bin/columnstoreLogRotate deleted file mode 100755 index 48dec8381..000000000 --- a/export/bin/columnstoreLogRotate +++ /dev/null @@ -1,35 +0,0 @@ -# -# Calpont Log Rotate file that gets installed in /etc/logrotate.d -# as part of the RPM installation -# - -/var/log/Calpont/*.log { - missingok - rotate 7 - daily - dateext - copytruncate - olddir /var/log/Calpont/archive -} -/var/log/Calpont/*.log1 { - missingok - rotate 7 - daily - nocreate - compress - olddir /var/log/Calpont/archive -} -/usr/local/Calpont/etc/Calpont.xml { - daily - dateext - copy - olddir /usr/local/Calpont/etc/ -} -/usr/local/Calpont/mysql/db/*.err { - missingok - rotate 7 - daily - dateext - copytruncate - olddir /usr/local/Calpont/mysql/db -} diff --git a/export/bin/columnstoreSyslog b/export/bin/columnstoreSyslog deleted file mode 100755 index 8bc56eb3e..000000000 --- a/export/bin/columnstoreSyslog +++ /dev/null @@ -1,7 +0,0 @@ -# Calpont Database Platform Logging -local1.=crit -/var/log/Calpont/crit.log -local1.=err -/var/log/Calpont/err.log -local1.=warning -/var/log/Calpont/warning.log -local1.=info -/var/log/Calpont/info.log -local1.=debug -/var/log/Calpont/debug.log -local2.=crit -/var/log/Calpont/data/data_mods.log diff --git a/export/bin/columnstoreSyslog-ng b/export/bin/columnstoreSyslog-ng deleted file mode 100755 index 6b7051bf7..000000000 --- a/export/bin/columnstoreSyslog-ng +++ /dev/null @@ -1,78 +0,0 @@ -# Calpont Database Platform Logging - -source s_infinidb { - # message generated by Syslog-NG - internal(); - # standard Linux log source (this is the default place for the syslog() - # function to send logs to) - unix-stream("/dev/log"); - # messages from the kernel - file("/proc/kmsg" log_prefix("kernel: ")); - # use the following line if you want to receive remote UDP logging messages - # (this is equivalent to the "-r" syslogd flag) - # udp(); -}; - -filter f_local1crit { facility(local1) and level(crit); }; -filter f_local1err { facility(local1) and level(err); }; -filter f_local1warning { facility(local1) and level(warning); }; -filter f_local1info { facility(local1) and level(info); }; -filter f_local1debug { facility(local1) and level(debug); }; -filter f_local2crit { facility(local2) and level(crit); }; - -destination d_crit{ - file("/var/log/Calpont/crit.log"); -}; - -destination d_err{ - file("/var/log/Calpont/err.log"); -}; - -destination d_warning{ - file("/var/log/Calpont/warning.log"); -}; - -destination d_info{ - file("/var/log/Calpont/info.log"); -}; - -destination d_debug{ - file("/var/log/Calpont/debug.log"); -}; - -destination d_data_mods{ - file("/var/log/Calpont/data/data_mods.log"); -}; - -log{ - source(s_infinidb); - filter(f_local1crit); - destination(d_crit); -}; - -log{ - source(s_infinidb); - filter(f_local1err); - destination(d_err); -}; -log{ - source(s_infinidb); - filter(f_local1warning); - destination(d_warning); -}; -log{ - source(s_infinidb); - filter(f_local1info); - destination(d_info); -}; -log{ - source(s_infinidb); - filter(f_local1debug); - destination(d_debug); -}; -log{ - source(s_infinidb); - filter(f_local2crit); - destination(d_data_mods); -}; - diff --git a/export/bin/columnstoreSyslog7 b/export/bin/columnstoreSyslog7 deleted file mode 100755 index e5dcd33b9..000000000 --- a/export/bin/columnstoreSyslog7 +++ /dev/null @@ -1,8 +0,0 @@ -# Calpont Database Platform Logging -local1.crit -/var/log/Calpont/crit.log -local1.err -/var/log/Calpont/err.log -local1.warning -/var/log/Calpont/warning.log -local1.info -/var/log/Calpont/info.log -local1.debug -/var/log/Calpont/debug.log -local2.crit -/var/log/Calpont/data/data_mods.log - diff --git a/export/bin/columnstoreUninstall.sh b/export/bin/columnstoreUninstall.sh deleted file mode 100755 index 59c285a72..000000000 --- a/export/bin/columnstoreUninstall.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/expect -# -# $Id$ -# -# Uninstall Package from system - -set INFINIDB_INSTALL_DIR "/usr/local/MariaDB/Columnstore" -set env(INFINIDB_INSTALL_DIR) $INFINIDB_INSTALL_DIR - -set USERNAME $env(USER) -set PASSWORD " " -set DEBUG 0 - -set INFINIDBRPM1 "infinidb-libs" -set INFINIDBRPM2 "infinidb-platform" -set INFINIDBRPM3 "infinidb-enterprise" -set CONNECTORRPM1 "infinidb-mysql" -set CONNECTORRPM2 "infinidb-storage-engine" - -spawn -noecho /bin/bash - -for {set i 0} {$i<[llength $argv]} {incr i} { - set arg($i) [lindex $argv $i] -} - -set i 0 -while true { - if { $i == [llength $argv] } { break } - if { $arg($i) == "-h" } { - send_user "\n" - send_user "'calpontUninstall.sh' performs a system uninstall of the Calpont InfiniDB Packages.\n" - send_user "It will perform a shutdown of the InfiniDB software and the \n" - send_user "remove the Packages from all configured servers of the InfiniDB System.\n" - send_user "\n" - send_user "Usage: calpontUninstall.sh -p 'password' -d\n" - send_user " password - root password of the remote servers being un-installed'\n" - send_user " -d - Debug flag, output verbose information\n" - exit - } elseif { $arg($i) == "-p" } { - incr i - set PASSWORD $arg($i) - } elseif { $arg($i) == "-d" } { - set DEBUG 1 - } elseif { $arg($i) == "-i" } { - incr i - set INSTALLDIR $arg($i) - } elseif { $arg($i) == "-u" } { - incr i - set USERNAME $arg($i) - } - incr i -} - -log_user $DEBUG - -set timeout 2 -set INSTALL 2 -send "$INFINIDB_INSTALL_DIR/bin/getConfig DBRM_Controller NumWorkers\n" -expect { - 1 { set INSTALL 1 } -} - -set PACKAGE "rpm" -send "$INFINIDB_INSTALL_DIR/bin/getConfig Installation EEPackageType\n" -expect { - rpm { set PACKAGE rpm } - deb { set PACKAGE deb } - binary { set PACKAGE binary } -} - -set timeout 60 -log_user $DEBUG -if { $INSTALL == "2" && $PASSWORD == " "} {puts "please enter the remote server root password, enter ./calpontUninstall.sh -h for additional info"; exit -1} - -send_user "\nPerforming InfiniDB System Uninstall\n\n" - -# -# shutdownSystem -# -send_user "Shutdown InfiniDB System " -expect -re {[$#] } -send "$INFINIDB_INSTALL_DIR/bin/mcsadmin shutdownsystem y\n" -expect { - "shutdownSystem " { send_user "DONE" } -} -send_user "\n" - - -if { $INSTALL == "2"} { - set timeout 600 - # - # Run installer - # - send_user "Run System Uninstaller " - send "$INFINIDB_INSTALL_DIR/bin/installer $INFINIDBRPM1 $INFINIDBRPM2 $INFINIDBRPM3 $CONNECTORRPM1 $CONNECTORRPM2 uninstall $PASSWORD n --nodeps dummymysqlpw $DEBUG\n" - expect { - "uninstall request successful" { send_user "DONE" } - "ERROR" { send_user "FAILED" ; exit -1 } - } - send_user "\n" -} - -if { $PACKAGE == "binary" } { - send "$INFINIDB_INSTALL_DIR/bin/pre-uninstall\n" - expect { - -re {[$#] } { } - } - - send_user "\n" - - send_user "\nCalpont Package System Uninstall Completed\n\n" - - exit 0 -} - -send_user "\nCalpont Package System Uninstall Completed\n\n" - -exit 0 diff --git a/export/bin/director_installer.sh b/export/bin/director_installer.sh deleted file mode 100755 index d10bd1cbe..000000000 --- a/export/bin/director_installer.sh +++ /dev/null @@ -1,340 +0,0 @@ -#!/usr/bin/expect -# -# $Id$ -# -# Install RPM and custom OS files on system -# Argument 1 - Remote Module Name -# Argument 2 - Remote Server Host Name or IP address -# Argument 3 - Root Password of remote server -# Argument 4 - Package name being installed -# Argument 5 - Install Type, "initial" or "upgrade" -# Argument 6 - Debug flag 1 for on, 0 for off -set timeout 10 -set MODULE [lindex $argv 0] -set SERVER [lindex $argv 1] -set PASSWORD [lindex $argv 2] -set CALPONTRPM1 [lindex $argv 3] -set CALPONTRPM2 [lindex $argv 4] -set CALPONTRPM3 [lindex $argv 5] -set CALPONTMYSQLRPM [lindex $argv 6] -set CALPONTMYSQLDRPM [lindex $argv 7] -set INSTALLTYPE [lindex $argv 8] -set DEBUG [lindex $argv 9] -set INSTALLDIR "/usr/local/MariaDB/Columnstore" -set IDIR [lindex $argv 10] -if { $IDIR != "" } { - set INSTALLDIR $IDIR -} -set USERNAME "root" -set UNM [lindex $argv 11] -if { $UNM != "" } { - set USERNAME $UNM -} - -log_user $DEBUG -spawn -noecho /bin/bash -# -if { $INSTALLTYPE == "initial" || $INSTALLTYPE == "uninstall" } { - # - # erase InfiniDB MySQL storage engine package - # - send_user "Erase InfiniDB MySQL Storage Engine Package on Module " - expect -re {[$#] } - send "ssh $USERNAME@$SERVER 'rpm -e --nodeps --allmatches calpont-mysql >/dev/null 2>&1; rpm -e --nodeps --allmatches infinidb-storage-engine'\n" - expect { - "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit } - "service not known" { send_user "FAILED: Invalid Host\n" ; exit } - "authenticity" { send "yes\n" - expect { - "word: " { send "$PASSWORD\n" } - } - } - "word: " { send "$PASSWORD\n" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } - # password for ssh - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "uninstall completed" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "not installed" { send_user "INFO: Package not installed" } - } - send_user "\n" - # - # erase InfiniDB MySQL package - # - send_user "Erase InfiniDB MySQL Package on Module " - expect -re {[$#] } - send "ssh $USERNAME@$SERVER 'rpm -e --nodeps --allmatches calpont-mysqld >/dev/null 2>&1; rpm -e --nodeps --allmatches infinidb-mysql'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "uninstall completed" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "not installed" { send_user "INFO: Package not installed" } - } - send_user "\n" - # - # erase InfiniDB packages - # - send_user "Erase InfiniDB Packages on Module " - expect -re {[$#] } - send "ssh $USERNAME@$SERVER 'rpm -e --nodeps --allmatches calpont >/dev/null 2>&1; rpm -e --nodeps --allmatches infinidb-enterprise >/dev/null 2>&1; rpm -e --nodeps --allmatches infinidb-libs infinidb-platform'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "uninstall completed" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "not installed" { send_user "INFO: Package not installed" } - } - send_user "\n" -} -if { $INSTALLTYPE == "uninstall" } { exit 0 } - -# -# send the InfiniDB package -# -expect -re {[$#] } -set timeout 20 -send_user "Copy New InfiniDB Package to Module " -send "ssh $USERNAME@$SERVER 'rm -f /root/infinidb-*.rpm'\n" -expect "word: " -# password for ssh -send "$PASSWORD\n" -# check return -expect { - -re {[$#] } { } -} -send "scp $CALPONTRPM1 $CALPONTRPM2 $CALPONTRPM3 $USERNAME@$SERVER:.\n" -expect "word: " -# send the password -send "$PASSWORD\n" -# check return -expect { - "100%" { send_user "DONE" } - "scp" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "No such file or directory" { send_user "ERROR: Invalid package\n" ; exit -1 } -} -send_user "\n" -# -# send the InfiniDB MySQL sotrage engine package -# -send_user "Copy New InfiniDB MySQL Storage Engine Package to Module " -send "scp $CALPONTMYSQLRPM $USERNAME@$SERVER:$CALPONTMYSQLRPM\n" -expect "word: " -# send the password -send "$PASSWORD\n" -# check return -expect { - "100%" { send_user "DONE" } - "scp" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "No such file or directory" { send_user "ERROR: Invalid package\n" ; exit -1 } -} -send_user "\n" -# -# send the InfiniDB MySQL package -# -send_user "Copy New InfiniDB MySQL Package to Module " -send "scp $CALPONTMYSQLDRPM $USERNAME@$SERVER:$CALPONTMYSQLDRPM\n" -expect "word: " -# send the password -send "$PASSWORD\n" -# check return -expect { - "100%" { send_user "DONE" } - "scp" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "No such file or directory" { send_user "ERROR: Invalid package\n" ; exit -1 } -} -# -send_user "\n" -expect -re {[$#] } -set timeout 60 -if { $INSTALLTYPE == "initial"} { - # - # install package - # - send_user "Install InfiniDB Packages on Module " - send "ssh $USERNAME@$SERVER 'rpm -ivh $CALPONTRPM1 $CALPONTRPM2 $CALPONTRPM3 $CALPONTMYSQLDRPM $CALPONTMYSQLRPM'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - -re {[$#] } { send_user "DONE" } - "completed" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } - send_user "\n" - expect -re {[$#] } - set timeout 10 - # - # install package - # - send_user "Running InfiniDB MySQL Setup Scripts on Module " - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/post-mysql-install'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - "Shutting down MySQL." { send_user "DONE" } - timeout { send_user "DONE" } - "ERROR" { send_user "ERROR: Daemon failed to run"; - exit -1 } - } - send_user "\n" - expect -re {[$#] } - # - # install package - # - send_user "Running InfiniDB MySQL Setup Scripts on Module " - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/post-mysqld-install'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - "Shutting down MySQL." { send_user "DONE" } - timeout { send_user "DONE" } - "ERROR" { send_user "ERROR: Daemon failed to run"; - exit -1 } - } -} else { - # - # upgrade package - # - expect -re {[$#] } - send_user "Upgrade InfiniDB Packages on Module " - send "ssh $USERNAME@$SERVER ' rpm -Uvh --noscripts $CALPONTRPM1 $CALPONTRPM2 $CALPONTRPM3 $CALPONTMYSQLDRPM $CALPONTMYSQLRPM'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - -re {[$#] } { send_user "DONE" } - "completed" { send_user "DONE" } - "already installed" { send_user "INFO: Already Installed\n" ; exit -1 } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } - send_user "\n" - expect -re {[$#] } - set timeout 10 - # - # install package - # - send_user "Running InfiniDB MySQL Setup Scripts on Module " - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/post-mysql-install'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - "Shutting down MySQL." { send_user "DONE" } - timeout { send_user "DONE" } - "ERROR" { send_user "ERROR: Daemon failed to run"; - exit -1 } - } - send_user "\n" - expect -re {[$#] } - # - # install package - # - send_user "Running InfiniDB MySQL Setup Scripts on Module " - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/post-mysqld-install'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - "Shutting down MySQL." { send_user "DONE" } - timeout { send_user "DONE" } - "ERROR" { send_user "ERROR: Daemon failed to run"; - exit -1 } - } -} -send_user "\n" -expect -re {[$#] } -set timeout 30 -# -if { $INSTALLTYPE == "initial"} { - # - # copy over InfiniDB OS files - # - send_user "Copy InfiniDB OS files to Module " - send "scp $INSTALLDIR/local/etc/$MODULE/* $USERNAME@$SERVER:$INSTALLDIR/local/.\n" - expect "word: " - # send the password - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } - send_user "\n" - # - # copy over InfiniDB config file - # - send_user "Copy InfiniDB Config file to Module " - send "scp $INSTALLDIR/etc/* $USERNAME@$SERVER:$INSTALLDIR/etc/.\n" - expect "word: " - # send the password - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } - send_user "\n" - # - # copy over custom OS tmp files - # - send_user "Copy Custom OS files to Module " - send "scp -r $INSTALLDIR/local/etc $USERNAME@$SERVER:$INSTALLDIR/local/.\n" - expect "word: " - # send the password - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } - send_user "\n" - # - # Start module installer to setup Customer OS files - # - send_user "Run Module Installer " - send "ssh $USERNAME@$SERVER '$INSTALLDIR/bin/module_installer.sh'\n" - expect "word: " - # send the password - send "$PASSWORD\n" - expect { - "!!!Module" { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "FAILED" { send_user "ERROR: missing OS file\n" ; exit -1 } - } - send_user "\n" -} -# -send_user "\nInstallation Successfully Completed on '$MODULE'\n" -exit 0 - diff --git a/export/bin/disable-rep-columnstore.sh b/export/bin/disable-rep-columnstore.sh deleted file mode 100755 index edd3fc19a..000000000 --- a/export/bin/disable-rep-columnstore.sh +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB Disable Replication script. -# -# Notes: This script gets run by ProcMon: - -# check log for error -checkForError() { - grep ERROR /tmp/disable-rep-status.log > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/disable-rep-status.log" - rm -f /tmp/error.check - exit 1 - fi - rm -f /tmp/error.check -} - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - ->/tmp/disable-rep-status.log - -# -# Run stop slave command -# -echo "Run stop slave command" >>/tmp/disable-rep-status.log -cat >/tmp/idb_disable-rep.sql <>/tmp/disable-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/disable-rep-status.log - -checkForError - -# -# Run reset slave command -# -echo "Run start slave command" >>/tmp/disable-rep-status.log -cat >/tmp/idb_disable-rep.sql <>/tmp/disable-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/disable-rep-status.log - -checkForError - -#alls good, 'OK' for success -echo "OK" -exit 0 diff --git a/export/bin/disable-rep-infinidb.sh b/export/bin/disable-rep-infinidb.sh deleted file mode 100755 index edd3fc19a..000000000 --- a/export/bin/disable-rep-infinidb.sh +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB Disable Replication script. -# -# Notes: This script gets run by ProcMon: - -# check log for error -checkForError() { - grep ERROR /tmp/disable-rep-status.log > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/disable-rep-status.log" - rm -f /tmp/error.check - exit 1 - fi - rm -f /tmp/error.check -} - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - ->/tmp/disable-rep-status.log - -# -# Run stop slave command -# -echo "Run stop slave command" >>/tmp/disable-rep-status.log -cat >/tmp/idb_disable-rep.sql <>/tmp/disable-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/disable-rep-status.log - -checkForError - -# -# Run reset slave command -# -echo "Run start slave command" >>/tmp/disable-rep-status.log -cat >/tmp/idb_disable-rep.sql <>/tmp/disable-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/disable-rep-status.log - -checkForError - -#alls good, 'OK' for success -echo "OK" -exit 0 diff --git a/export/bin/infinidb b/export/bin/infinidb deleted file mode 100755 index cba5ddd4d..000000000 --- a/export/bin/infinidb +++ /dev/null @@ -1,184 +0,0 @@ -#!/bin/bash -# -# $Id: infinidb 3704 2013-08-07 03:33:20Z bwilkinson $ -# -# infinidb Starts Calpont InfiniDB database platform -# -# -# chkconfig: 2345 99 99 -# description: Calpont InfiniDB is a database platform that utilizes Mysql -# -### BEGIN INIT INFO -# Provides: infinidb -# Required-Start: $local_fs $remote_fs $network $syslog $all -# Required-Stop: $local_fs $remote_fs $network $syslog -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Start/stop InfiniDB DW DBMS -### END INIT INFO - -# Source function library. -if [ -f /etc/init.d/functions ]; then - . /etc/init.d/functions -fi - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - test -f /etc/default/infinidb && . /etc/default/infinidb -fi - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - INFINIDB_INSTALL_DIR=/usr/local/Calpont -fi - -export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR - -InstallDir=$INFINIDB_INSTALL_DIR - -if [ $InstallDir != "/usr/local/Calpont" ]; then - export PATH=$InstallDir/bin:$InstallDir/mysql/bin:/bin:/usr/bin - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$InstallDir/lib:$InstallDir/mysql/lib/mysql -fi - -#hadoop -plugin=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DataFilePlugin` -if [ -n "$plugin" ]; then - setenv=`$InstallDir/bin/getConfig SystemConfig DataFileEnvFile` - . $InstallDir/bin/$setenv >/dev/null 2>&1 -fi - -if [ -e $InstallDir/lib/libjemalloc.so ]; then - export LD_PRELOAD=$InstallDir/lib/libjemalloc.so -elif [ -e $InstallDir/lib/libjemalloc.so.1 ]; then - export LD_PRELOAD=$InstallDir/lib/libjemalloc.so.1 -fi - -test -f $InstallDir/post/functions && . $InstallDir/post/functions - -mt=`module_type` -mid=`module_id` - -has_um=`$InstallDir/bin/getConfig SystemModuleConfig ModuleCount2` -if [ "x$has_um" = x ]; then - has_um=0 -fi - -user=$USER -if [ -z "$user" ]; then - user=root -fi - -checkInstallSetup() { - InitialInstallFlag=`$InstallDir/bin/getConfig -c $InstallDir/etc/Calpont.xml Installation InitialInstallFlag` - if [ $InitialInstallFlag != "y" ]; then - echo "Please run the postConfigure install script, check the Installation Guide" - echo "for additional details" - rm -f /var/lock/subsys/infinidb - exit 1 - fi -} - -[ -f $InstallDir/bin/ProcMon ] || exit 0 - -start() { - if [ -f /var/lock/subsys/infinidb ]; then - echo "InfiniDB Database Platform already running" - exit 0 - fi - - (mkdir -p /var/lock/subsys && touch /var/lock/subsys/infinidb) >/dev/null 2>&1 - - if [ -x $InstallDir/bin/infinidb.pre-start ]; then - $InstallDir/bin/infinidb.pre-start - if [ $? -ne 0 ]; then - echo "Error running InfiniDB pre-start script, not starting InfiniDB" - rm -f /var/lock/subsys/infinidb - exit 1 - fi - fi - checkInstallSetup - - CoreFileFlag=`$InstallDir/bin/getConfig -c $InstallDir/etc/Calpont.xml Installation CoreFileFlag` - if [ $CoreFileFlag = "y" ]; then - SUDO= - if [ "$user" != "root" ]; then - SUDO="sudo" - fi - - #infinidb core files - $SUDO ulimit -c unlimited > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_uses_pid=1 > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_pattern=/var/log/Calpont/corefiles/core.%e.%p > /dev/null 2>&1 - fi - - RETVAL=0 - echo "Starting InfiniDB Database Platform" - rm -f /tmp/StopCalpont - exec $InstallDir/bin/run.sh $InstallDir/bin/ProcMon > /dev/null 2>&1 & - - return $RETVAL -} -stop() { - echo "Shutting down InfiniDB Database Platform" - touch /tmp/StopCalpont - pkill -9 ProcMon - pkill -9 ProcMgr - pkill -9 snmptrapd - sleep 1 - $InstallDir/bin/clearShm - RETVAL=$? - rm -f /var/lock/subsys/infinidb - fuser -k 8604/tcp > /dev/null 2>&1 - test -f $InstallDir/mysql/mysql-Calpont || return $RETVAL - $InstallDir/mysql/mysql-Calpont stop > /dev/null 2>&1 - if [ -x $InstallDir/bin/infinidb.post-stop ]; then - $InstallDir/bin/infinidb.post-stop - fi - return $RETVAL -} -restart() { - stop - start -} -status() { - isrunning=0 - if [ $EUID -eq 0 ]; then - if [ -f /var/lock/subsys/infinidb ]; then - isrunning=1 - fi - else - pgrep ProcMon >/dev/null 2>&1 - if [ $? -eq 0 ]; then - isrunning=1 - fi - fi - if [ $isrunning -ne 0 ]; then - echo "InfiniDB is running" - else - echo "InfiniDB is not running" - exit 3 - fi -} - -case "$1" in -start) - start - ;; -stop) - stop - ;; -restart) - restart - ;; -condrestart) - [ -f /var/lock/subsys/infinidb ] && restart || : - ;; -status) - status - ;; -*) - echo $"Usage: $0 {start|stop|restart|condrestart|status}" - exit 1 -esac - -exit $? - diff --git a/export/bin/infinidb.conf b/export/bin/infinidb.conf deleted file mode 100755 index abb2e8fd4..000000000 --- a/export/bin/infinidb.conf +++ /dev/null @@ -1,2 +0,0 @@ -/usr/local/Calpont/lib - diff --git a/export/bin/infinidb.def b/export/bin/infinidb.def deleted file mode 100755 index 4ebfb2019..000000000 --- a/export/bin/infinidb.def +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash -# Copy this file to /etc/default and rename it to 'infinidb'. - -# Change this line to your InfiniDB installation directory -INFINIDB_INSTALL_DIR=/usr/local/Calpont - -LD_LIBRARY_PATH=$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql -export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR -export LD_LIBRARY_PATH=$LD_LIBRARY_PATH diff --git a/export/bin/master-rep-columnstore.sh b/export/bin/master-rep-columnstore.sh deleted file mode 100755 index f6a4a5d0f..000000000 --- a/export/bin/master-rep-columnstore.sh +++ /dev/null @@ -1,112 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB Master Replication script. -# -# Notes: This script gets run by ProcMon during installs and upgrades: - -# check log for error -checkForError() { - grep ERROR /tmp/master-rep-status-$hostipaddr.log > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/master-rep-status-$hostipaddr.log" - rm -f /tmp/error.check - exit 1 - fi - rm -f /tmp/error.check -} - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--hostIP='` -eq 9 ]; then - hostipaddr="`echo $arg | awk -F= '{print $2}'`" - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - -repUser="idbrep" -password="Calpont1" - ->/tmp/master-rep-status-$hostipaddr.log - -# -# Create Replication User -# -echo "Create Replication User $repUser for node $hostipaddr" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql <>/tmp/master-rep-status-$hostipaddr.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/master-rep-status-$hostipaddr.log - -checkForError - -# -# Grant table access for created user -# -echo "Grant table access for $repUser for node $hostipaddr" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql <>/tmp/master-rep-status-$hostipaddr.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/master-rep-status-$hostipaddr.log - -checkForError - -# -# Run SHOW MASTER STATUS -# -echo "Run SHOW MASTER STATUS to node log" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql <>/tmp/master-rep-status-$hostipaddr.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/master-rep-status-$hostipaddr.log - -checkForError - -echo "Run SHOW MASTER STATUS to master status log /tmp/show-master-status.log" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql </tmp/show-master-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/show-master-status.log - - -#alls good, 'OK' for success -echo "OK" -exit 0 - - diff --git a/export/bin/master-rep-infinidb.sh b/export/bin/master-rep-infinidb.sh deleted file mode 100755 index f6a4a5d0f..000000000 --- a/export/bin/master-rep-infinidb.sh +++ /dev/null @@ -1,112 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB Master Replication script. -# -# Notes: This script gets run by ProcMon during installs and upgrades: - -# check log for error -checkForError() { - grep ERROR /tmp/master-rep-status-$hostipaddr.log > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/master-rep-status-$hostipaddr.log" - rm -f /tmp/error.check - exit 1 - fi - rm -f /tmp/error.check -} - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--hostIP='` -eq 9 ]; then - hostipaddr="`echo $arg | awk -F= '{print $2}'`" - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - -repUser="idbrep" -password="Calpont1" - ->/tmp/master-rep-status-$hostipaddr.log - -# -# Create Replication User -# -echo "Create Replication User $repUser for node $hostipaddr" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql <>/tmp/master-rep-status-$hostipaddr.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/master-rep-status-$hostipaddr.log - -checkForError - -# -# Grant table access for created user -# -echo "Grant table access for $repUser for node $hostipaddr" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql <>/tmp/master-rep-status-$hostipaddr.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/master-rep-status-$hostipaddr.log - -checkForError - -# -# Run SHOW MASTER STATUS -# -echo "Run SHOW MASTER STATUS to node log" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql <>/tmp/master-rep-status-$hostipaddr.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/master-rep-status-$hostipaddr.log - -checkForError - -echo "Run SHOW MASTER STATUS to master status log /tmp/show-master-status.log" >>/tmp/master-rep-status-$hostipaddr.log -cat >/tmp/idb_master-rep.sql </tmp/show-master-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/show-master-status.log - - -#alls good, 'OK' for success -echo "OK" -exit 0 - - diff --git a/export/bin/module_installer.sh b/export/bin/module_installer.sh deleted file mode 100755 index 8a4ad0c0a..000000000 --- a/export/bin/module_installer.sh +++ /dev/null @@ -1,167 +0,0 @@ -#!/bin/bash -# -# $Id: module_installer.sh 421 2007-04-05 15:46:55Z dhill $ -# -# Setup the Custom OS files during a System install on a module -# -# -# append columnstore OS files to Linux OS file -# -# - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -user=$USER -if [ -z "$user" ]; then - user=root -fi -quiet=0 -shiftcnt=0 - -for arg in "$@"; do - if [ $(expr -- "$arg" : '--prefix=') -eq 9 ]; then - prefix="$(echo $arg | awk -F= '{print $2}')" - installdir=$prefix/MariaDB/Columnstore - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--rpmmode=') -eq 10 ]; then - rpmmode="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--installdir=') -eq 13 ]; then - installdir="$(echo $arg | awk -F= '{print $2}')" - prefix=$(dirname $installdir) - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--user=') -eq 7 ]; then - user="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--quiet') -eq 7 ]; then - quiet=1 - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--port') -eq 6 ]; then - mysqlPort="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--module') -eq 8 ]; then - module="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - fi -done -shift $shiftcnt - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql -fi - -export INFINIDB_INSTALL_DIR=$installdir - -cloud=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation Cloud` -if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then - cp $INFINIDB_INSTALL_DIR/local/etc/*.pem /root/. > /dev/null 2>&1 - - if test -f $INFINIDB_INSTALL_DIR/local/etc/pm1/fstab ; then - echo "Setup fstab on Module" - touch /etc/fstab - rm -f /etc/fstab.columnstoreSave - mv /etc/fstab /etc/fstab.columnstoreSave - cat $INFINIDB_INSTALL_DIR/local/etc/pm1/fstab >> /etc/fstab - fi -fi - -test -f $INFINIDB_INSTALL_DIR/post/functions && . $INFINIDB_INSTALL_DIR/post/functions - -mid=`module_id` - -#if um, cloud, separate system type, external um storage, then setup mount -if [ $module = "um" ]; then - if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then - systemtype=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation ServerTypeInstall` - if [ $systemtype = "1" ]; then - umstoragetype=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation UMStorageType` - if [ $umstoragetype = "external" ]; then - echo "Setup UM Volume Mount" - device=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation UMVolumeDeviceName$mid` - mkdir -p $INFINIDB_INSTALL_DIR/mysql/db > /dev/null 2>&1 - mount $device $INFINIDB_INSTALL_DIR/mysql/db -t ext2 -o defaults - chown mysql:mysql -R $INFINIDB_INSTALL_DIR/mysql > /dev/null 2>&1 - fi - fi - fi -fi - -#if pm, create dbroot directories -if [ $module = "pm" ]; then - numdbroots=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DBRootCount` - for (( id=1; id<$numdbroots+1; id++ )); do - mkdir -p $INFINIDB_INSTALL_DIR/data$id > /dev/null 2>&1 - chmod 755 $INFINIDB_INSTALL_DIR/data$id - done -fi - -echo "Setup rc.local on Module" -if [ $EUID -eq 0 -a -f $INFINIDB_INSTALL_DIR/local/rc.local.columnstore ]; then - if [ $user = "root" ]; then - touch /etc/rc.local - rm -f /etc/rc.local.columnstoreSave - cp /etc/rc.local /etc/rc.local.columnstoreSave - cat $INFINIDB_INSTALL_DIR/local/rc.local.columnstore >> /etc/rc.local - else - sudo touch /etc/rc.local - sudo rm -f /etc/rc.local.columnstoreSave - sudo cp /etc/rc.local /etc/rc.local.columnstoreSave - sudo cat $INFINIDB_INSTALL_DIR/local/rc.local.columnstore >> /etc/rc.local - fi -fi - -if [ $user != "root" ]; then - echo "Setup .bashrc on Module for non-root" - - eval userhome=~$user - bashFile=$userhome/.bashrc - touch ${bashFile} - - echo " " >> ${bashFile} - echo "export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR" >> ${bashFile} - echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql" >> ${bashFile} -fi - -plugin=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DataFilePlugin` -if [ -n "$plugin" ]; then - echo "Setup .bashrc on Module for local-query" - - setenv=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DataFileEnvFile` - - eval userhome=~$user - bashFile=$userhome/.bashrc - touch ${bashFile} - - echo " " >> ${bashFile} - echo ". $INFINIDB_INSTALL_DIR/bin/$setenv" >> ${bashFile} -fi - -# if mysqlrep is on and module has a my.cnf file, upgrade it - -MySQLRep=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation MySQLRep` -if [ $MySQLRep = "y" ]; then - if test -f $INFINIDB_INSTALL_DIR/mysql/my.cnf ; then - echo "Run Upgrade on my.cnf on Module" - $INFINIDB_INSTALL_DIR/bin/mycnfUpgrade > /tmp/mycnfUpgrade.log 2>&1 - fi -fi - -if test -f $INFINIDB_INSTALL_DIR/mysql/my.cnf ; then - echo "Run Mysql Port update on my.cnf on Module" - $INFINIDB_INSTALL_DIR/bin/mycnfUpgrade $mysqlPort > /tmp/mycnfUpgrade_port.log 2>&1 -fi - -# if um, run mysql install scripts -if [ $module = "um" ]; then - echo "Run post-mysqld-install" - $INFINIDB_INSTALL_DIR/bin/post-mysqld-install > /tmp/post-mysqld-install.log 2>&1 - echo "Run post-mysql-install" - $INFINIDB_INSTALL_DIR/bin/post-mysql-install > /tmp/post-mysql-install.log 2>&1 -fi - - -echo " " -echo "!!!Module Installation Successfully Completed!!!" - -exit 0 diff --git a/export/bin/myCnf-exclude-args.text b/export/bin/myCnf-exclude-args.text deleted file mode 100755 index aac98c73a..000000000 --- a/export/bin/myCnf-exclude-args.text +++ /dev/null @@ -1,2 +0,0 @@ -# List of my.cnf arguments that should be ignored during upgrade install -# diff --git a/export/bin/myCnf-include-args.text b/export/bin/myCnf-include-args.text deleted file mode 100755 index bc2c4c74f..000000000 --- a/export/bin/myCnf-include-args.text +++ /dev/null @@ -1,18 +0,0 @@ -# List of my.cnf arguments that should be checked and saved during upgrade install -# -infinidb_local_query -log-bin=mysql-bin -server-id -max_length_for_sort_data -tmpdir -log-error -general_log_file -slow_query_log_file -general-log -slow-query-log -character-set-server -collation-server -init-connect -binlog_format -secure-auth -port \ No newline at end of file diff --git a/export/bin/os_check.sh b/export/bin/os_check.sh deleted file mode 100755 index 620fe447b..000000000 --- a/export/bin/os_check.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -# -# Determine the Linux distribution and version that is being run. -# -# Check for GNU/Linux distributions - if [ -f /etc/SuSE-release ]; then - DISTRIBUTION="suse" - elif [ -f /etc/UnitedLinux-release ]; then - DISTRIBUTION="united" - elif [ -f /etc/debian_version ]; then - DISTRIBUTION="debian" - elif [ -f /etc/lsb_version ]; then - DISTRIBUTION="ubuntu" - elif [ -f /etc/redhat-release ]; then - a=`grep -i 'red.*hat.*enterprise.*linux' /etc/redhat-release` - if test $? = 0; then - DISTRIBUTION=rhel - else - a=`grep -i 'red.*hat.*linux' /etc/redhat-release` - if test $? = 0; then - DISTRIBUTION=rh - else - a=`grep -i 'Fedora' /etc/redhat-release` - if test $? = 0; then - DISTRIBUTION=fedora - else - a=`grep -i 'cern.*e.*linux' /etc/redhat-release` - if test $? = 0; then - DISTRIBUTION=cel - else - a=`grep -i 'scientific linux cern' /etc/redhat-release` - if test $? = 0; then - DISTRIBUTION=slc - else - DISTRIBUTION="unknown" - fi - fi - fi - fi - fi - else - DISTRIBUTION="unknown" - fi -echo ${DISTRIBUTION} diff --git a/export/bin/patch_installer.sh b/export/bin/patch_installer.sh deleted file mode 100755 index 8e21af3a6..000000000 --- a/export/bin/patch_installer.sh +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/expect -# -# $Id: patch_installer.sh 421 2007-04-05 15:46:55Z dhill $ -# -# Install Software Patch on Module -# Argument 1 - Remote Module Name -# Argument 2 - Remote Server Host Name or IP address -# Argument 3 - Root Password of remote server -# Argument 4 - Patch Directory Location -# Argument 5 - Install Directory Location -# Argument 6 - Software File being installed -# Argument 7 - Debug flag 1 for on, 0 for off -set timeout 20 -set MODULE [lindex $argv 0] -set SERVER [lindex $argv 1] -set PASSWORD [lindex $argv 2] -set PATCHLOCATION [lindex $argv 3] -set INSTALLLOCATION [lindex $argv 4] -set FILE [lindex $argv 5] -set DEBUG [lindex $argv 6] -set USERNAME "root" -set UNM [lindex $argv 7] -if { $UNM != "" } { - set USERNAME $UNM -} -log_user $DEBUG -spawn -noecho /bin/bash -# -# mv file being install -# -send_user "Backup Current File on Module" -expect -re "# " -send "ssh $USERNAME@$SERVER 'mv $INSTALLLOCATION$FILE $INSTALLLOCATION$FILE'.patchSave''\n" -# accept the remote host fingerprint (assuming never logged in before) -expect -re "service not known" { send_user " FAILED: Invalid Host\n" ; exit } -expect -re "authenticity" { send "yes\n" } -expect -re "word: " -# password for ssh -send "$PASSWORD\n" -# check return -expect { - -re "# " { send_user " DONE" } - -re "Permission denied" { send_user " FAILED: Invalid password\n" } exit; - -re "mv" { send_user " FAILED: copy filed\n" ; exit} -} -send_user "\n" -# -# send Patch File -# -send_user "Copy New Calpont Software File to Module" -expect -re "# " -send "scp $PATCHLOCATION$FILE $USERNAME@$SERVER:$INSTALLLOCATION$FILE\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -# check return -expect { - -re "100%" { send_user " DONE" } - -re "scp" { send_user " FAILED\n" ; - send_user "\n*** Installation Failed\n" ; - exit } - -re "Permission denied" { send_user " FAILED: Invalid password\n" ; exit } - -re "No such file or directory" { send_user " FAILED: Invalid package\n" ; exit } -} -send_user "\n" - -send_user "\n!!!Patch Installation Successfully Completed!!!\n" -exit - diff --git a/export/bin/performance_installer.sh b/export/bin/performance_installer.sh deleted file mode 100755 index bc9e7a6ef..000000000 --- a/export/bin/performance_installer.sh +++ /dev/null @@ -1,319 +0,0 @@ -#!/usr/bin/expect -# -# $Id: performance_installer.sh 1128 2009-01-05 16:36:59Z rdempsey $ -# -# Install RPM and custom OS files on system -# Argument 1 - Remote Module Name -# Argument 2 - Remote Server Host Name or IP address -# Argument 3 - Root Password of remote server -# Argument 4 - Package name being installed -# Argument 5 - Install Type, "initial" or "upgrade" -# Argument 6 - Debug flag 1 for on, 0 for off -set timeout 30 -set USERNAME root -set MODULE [lindex $argv 0] -set SERVER [lindex $argv 1] -set PASSWORD [lindex $argv 2] -set VERSION [lindex $argv 3] -set INSTALLTYPE [lindex $argv 4] -set PKGTYPE [lindex $argv 5] -set NODEPS [lindex $argv 6] -set DEBUG [lindex $argv 7] -set INSTALLDIR "/usr/local/MariaDB/Columnstore" -set IDIR [lindex $argv 8] -if { $IDIR != "" } { - set INSTALLDIR $IDIR -} -set USERNAME "root" -set UNM [lindex $argv 13] -if { $UNM != "" } { - set USERNAME $UNM -} - -set BASH "/bin/bash " -if { $DEBUG == "1" } { - set BASH "/bin/bash -x " -} - -set HOME "$env(HOME)" - -log_user $DEBUG -spawn -noecho /bin/bash -# -if { $PKGTYPE == "rpm" } { - set PKGERASE "rpm -e --nodeps \$(rpm -qa | grep '^infinidb')" - set PKGERASE1 "rpm -e --nodeps " - - set PKGINSTALL "rpm -ivh $NODEPS --force infinidb*$VERSION*" - set PKGUPGRADE "rpm -Uvh --noscripts infinidb*$VERSION*" -} else { - if { $PKGTYPE == "deb" } { - set PKGERASE "dpkg -P \$(dpkg --get-selections | grep '^infinidb')" - set PKGERASE1 "dpkg -P " - set PKGINSTALL "dpkg -i --force-confnew infinidb*$VERSION*" - set PKGUPGRADE "dpkg -i --force-confnew infinidb*$VERSION*" - } else { - if { $PKGTYPE != "bin" } { - send_user "Invalid Package Type of $PKGTYPE" - exit 1 - } - } -} - -# check and see if remote server has ssh keys setup, set PASSWORD if so -send_user " " -send "ssh $USERNAME@$SERVER 'time'\n" -set timeout 60 -expect { - "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit 1 } - "service not known" { send_user "FAILED: Invalid Host\n" ; exit 1 } - "authenticity" { send "yes\n" - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - "sys" { set PASSWORD "ssh" } - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - timeout { send_user "ERROR: Timeout to host\n" ; exit 1 } -} -set timeout 30 -expect { - -re {[$#] } { } - "sys" { } -} -send_user "\n" -#BUG 5749 - SAS: didn't work on their system until I added the sleep 60 - -sleep 60 - -if { $INSTALLTYPE == "initial" || $INSTALLTYPE == "uninstall" } { - # - # erase package - # - send_user "Erase InfiniDB Packages on Module " - send "ssh $USERNAME@$SERVER '$PKGERASE ;$PKGERASE1 dummy'\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 120 - expect { - "package dummy" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; exit 1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - } - send_user "\n" -} - -if { $INSTALLTYPE == "uninstall" } { exit 0 } - -# -# send the package -# -set timeout 30 -#expect -re {[$#] } -send_user "Copy New InfiniDB Package to Module " -send "ssh $USERNAME@$SERVER 'rm -f /root/infinidb-*.$PKGTYPE'\n" -if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } -} -expect { - -re {[$#] } { } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } -} -set timeout 30 -expect { - -re {[$#] } { } -} - -send "scp $HOME/infinidb*$VERSION* $USERNAME@$SERVER:.;$PKGERASE dummy\n" -if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } -} -set timeout 180 -expect { - "package dummy" { send_user "DONE" } - "directory" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } -} -send_user "\n" - -#sleep to make sure it's finished -sleep 5 - -# -if { $INSTALLTYPE == "initial"} { - # - # install package - # - send_user "Install InfiniDB Packages on Module " - - send "ssh $USERNAME@$SERVER '$PKGINSTALL infinidb*$VERSION* ;$PKGERASE dummy'\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 180 - expect { - "package dummy" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "needs" { send_user "ERROR: disk space issue\n" ; exit 1 } - "conflicts" { send_user "ERROR: File Conflict issue\n" ; exit 1 } - } - -} -send_user "\n" -#sleep to make sure it's finished -sleep 5 -set timeout 30 -#expect -re {[$#] } -if { $INSTALLTYPE == "initial"} { - # - # copy over InfiniDB config file - # - send_user "Copy InfiniDB Config file to Module " - send "scp $INSTALLDIR/etc/* $USERNAME@$SERVER:$INSTALLDIR/etc/.\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 30 - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } - send_user "\n" - #sleep to make sure it's finished - sleep 5 - # - # copy over custom OS tmp files - # - send_user "Copy Custom OS files to Module " - send "scp -r $INSTALLDIR/local/etc $USERNAME@$SERVER:$INSTALLDIR/local/.\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 30 - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } - send_user "\n" - #sleep to make sure it's finished - sleep 5 - # - # copy over InfiniDB OS files - # - send_user "Copy InfiniDB OS files to Module " - send "scp $INSTALLDIR/local/etc/$MODULE/* $USERNAME@$SERVER:$INSTALLDIR/local/.\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 30 - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } - # - send_user "\n" - #sleep to make sure it's finished - sleep 5 - # - # Start module installer to setup Custom OS files - # - send_user "Run Module Installer " - send "ssh $USERNAME@$SERVER '$BASH $INSTALLDIR/bin/module_installer.sh --module=pm'\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 30 - expect { - "!!!Module" { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "FAILED" { send_user "ERROR: missing OS file\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No such file" { send_user "ERROR: File Not Found\n" ; exit 1 } - } - send_user "\n" -} - -# -# check InfiniDB syslog functionality -# -set timeout 30 -#expect -re {[$#] } - -send_user "Check InfiniDB system logging functionality " -send " \n" -send date\n -send "ssh $USERNAME@$SERVER '$BASH $INSTALLDIR/bin/syslogSetup.sh check'\n" -if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } -} -set timeout 30 -expect { - "Logging working" { send_user "DONE" } - timeout { send_user "DONE" } - "not working" { send_user "WARNING: InfiniDB system logging functionality not working" } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } -} -send_user "\n" - -# -send_user "\nInstallation Successfully Completed on '$MODULE'\n" -exit 0 -# vim:ts=4 sw=4: - diff --git a/export/bin/post-install b/export/bin/post-install deleted file mode 100755 index c55bab2ec..000000000 --- a/export/bin/post-install +++ /dev/null @@ -1,336 +0,0 @@ -#!/bin/bash -# -# $Id: post-install 3705 2013-08-07 19:47:20Z dhill $ -# -# Post-install steps for columnstore install - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -user=$USER -if [ -z "$user" ]; then - user=root -fi -quiet=0 - -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--rpmmode='` -eq 10 ]; then - rpmmode="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--user='` -eq 7 ]; then - user="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--quiet'` -eq 7 ]; then - quiet=1 - elif [ `expr -- "$arg" : '--plugin='` -eq 9 ]; then - plugin="`echo $arg | awk -F= '{print $2}'`" - else - echo "post-install: ignoring unknown argument: $arg" 1>&2 - fi -done - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - export INFINIDB_INSTALL_DIR=$installdir - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$installdir/lib -else - # add library config file - /bin/cp -f $installdir/bin/infinidb.conf /etc/ld.so.conf.d/. - ldconfig -fi - -#check 64-bit OS compatiable -arch=`uname -m` -patcnt=`expr "$arch" : 'i.86'` -is64bitos=1 -if [ $patcnt -ne 0 ]; then - is64bitos=0 -fi -is64bitpkg=1 -file $installdir/bin/PrimProc | grep '64-bit' >/dev/null 2>&1 -if [ $? -ne 0 ]; then - is64bitpkg=0 -fi -if [ $is64bitpkg -eq 1 -a $is64bitos -ne 1 ]; then - echo "ERROR: Incompatiable Version, package is intended for a x86_64 architecture" - echo "exiting...." - exit 1 -fi - -if [ ! -f $installdir/etc/Calpont.xml ]; then - echo "$installdir/etc/Calpont.xml not found, exiting" - exit 1 -fi - -cd $installdir/lib || exit 1 -for lib in *.so.1.0.0; do - blib=`basename $lib .1.0.0` - ln -sf $lib $blib -done -chown -h $user.$user *.so >/dev/null 2>&1 -if [ -f libnetsnmp.so.5.2.1 ]; then - for lib in *.so.5.2.1; do - blib=`basename $lib .5.2.1` - ln -sf $lib $blib - ln -sf $lib ${blib}.5 - done - chown -h $user.$user *.so *.so.5 >/dev/null 2>&1 -fi -if [ -f libstdc++.so.6.0.14 ]; then - ln -sf libstdc++.so.6.0.14 libstdc++.so.6 - chown -h $user.$user libstdc++.so.6 >/dev/null 2>&1 -fi - -ln -sf libjemalloc.so.3.3.0 libjemalloc.so -chown -h $user.$user libjemalloc.so >/dev/null 2>&1 - -# TODO-based on early experience with HDP it doesn't install bigtop -# so the code below will not correctly detect JAVA_HOME. Need to -# decide how to handle -# Autodetect JAVA_HOME if not defined -#if [ -e /usr/libexec/bigtop-detect-javahome ]; then -#. /usr/libexec/bigtop-detect-javahome -#elif [ -e /usr/lib/bigtop-utils/bigtop-detect-javahome ]; then -#. /usr/lib/bigtop-utils/bigtop-detect-javahome -#fi -#ln -sf $JAVA_HOME/jre/lib/amd64/server/libjvm.so -#chown -h $user.$user libjvm.so >/dev/null 2>&1 - -cd / - -test -d /var/log/Calpont || mkdir /var/log/Calpont >/dev/null 2>&1 -test -d /var/log/Calpont/archive || mkdir /var/log/Calpont/archive >/dev/null 2>&1 -test -d /var/log/Calpont/corefiles || mkdir /var/log/Calpont/corefiles >/dev/null 2>&1 -test -d /var/log/Calpont/trace || mkdir /var/log/Calpont/trace >/dev/null 2>&1 -test -h /var/log/Calpont/data && rm -f /var/log/Calpont/data -test -d /var/log/Calpont/data || mkdir /var/log/Calpont/data >/dev/null 2>&1 -# make sure trace dir is world-writable and sticky -chmod 1755 /var/log/Calpont/trace >/dev/null 2>&1 -test -d $installdir/data || mkdir $installdir/data -test -d $installdir/data1 || mkdir $installdir/data1 -test -d $installdir/data1/systemFiles || mkdir $installdir/data1/systemFiles -test -d $installdir/data1/systemFiles/dbrm || mkdir $installdir/data1/systemFiles/dbrm -test -d $installdir/data1/systemFiles/dataTransaction || rmdir $installdir/data1/systemFiles/dataTransaction >/dev/null 2>&1 -test -d $installdir/data1/systemFiles/dataTransaction/archive || rmdir $installdir/data1/systemFiles/dataTransaction/archive >/dev/null 2>&1 -chmod 1755 $installdir/data1 >/dev/null 2>&1 -chmod -R 1755 $installdir/data1/systemFiles >/dev/null 2>&1 -chmod 1755 $installdir/etc > /dev/null 2>&1 - -#create the bulk-load dirs -mkdir -p $installdir/data/bulk/data/import >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/log >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/job >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/rollback >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/tmpjob >/dev/null 2>&1 -rm -f $installdir/data/bulk/tmpjob/* >/dev/null 2>&1 -chmod -R 755 $installdir/data/bulk >/dev/null 2>&1 - -#create infinidb temp file directory -mkdir -p /tmp/infinidb_tmp_files >/dev/null 2>&1 - -#setup core file directory and link -mkdir /var/log/Calpont/corefiles > /dev/null 2>&1 -chmod 755 /var/log/Calpont/corefiles > /dev/null 2>&1 - -#create mount directories -mkdir /mnt/tmp > /dev/null 2>&1 -mkdir /var/log/Calpont/data/archive > /dev/null 2>&1 - -# install Calpont Log Rotate File -test -d $installdir/mysql/db || mkdir -p $installdir/mysql/db -cp $installdir/bin/columnstoreLogRotate /etc/logrotate.d/columnstore > /dev/null 2>&1 -rm -rf $installdir/mysql/db/infinidb_log_archive > /dev/null 2>&1 - -# delete Calpont shared memory segments -$installdir/bin/Calpont/bin/clearShm > /dev/null 2>&1 - -#setup the infinidb service script -rm -f /etc/init.d/infinidb >/dev/null 2>&1 -cp $installdir/bin/infinidb /etc/init.d >/dev/null 2>&1 -if [ -x /sbin/chkconfig ]; then - /sbin/chkconfig --add infinidb > /dev/null 2>&1 - /sbin/chkconfig infinidb on > /dev/null 2>&1 -elif [ -x /usr/sbin/update-rc.d ]; then - /usr/sbin/update-rc.d infinidb defaults 99 > /dev/null 2>&1 -else - echo "" - echo "Package 'chkconfig' or 'update-rc.d' not installed, contact your sysadmin if you want to setup to autostart for infinidb" -fi - -#setup InfiniDB system logging -if [ $user = "root" ]; then - $installdir/bin/syslogSetup.sh install > /tmp/syslog_install.log 2>&1 - chmod 777 -R /dev/shm - rm -f /etc/default/infinidb -else - sudo $installdir/bin/syslogSetup.sh --installdir=$installdir install > /tmp/syslog_install.log 2>&1 - sudo chown $user:$user $installdir/etc/Calpont.xml - sudo chmod 755 /var/log - sudo chmod -R 755 /var/log/Calpont - sudo chmod -R 777 /dev/shm - sudo rm -f /var/lock/subsys/mysql-Calpont - sudo rm -f /tmp/StopCalpont - - sed -i -e s@/usr/local/MariaDB/Columnstore@$installdir@g $installdir/bin/infinidb.def - sudo cp $installdir/bin/infinidb.def /etc/default/infinidb -fi - -#check if InfiniDB system logging was setup -cat /tmp/syslog_install.log | grep 'No System Logging' >/dev/null 2>&1 -if [ $? -eq 0 ]; then - cat /tmp/syslog_install.log -fi - -#setup alias commands -eval userhome=~$user -bashFile=$userhome/.bashrc -touch ${bashFile} -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - sed -i -e s@/usr/local/MariaDB/Columnstore@$installdir@g $installdir/bin/columnstoreAlias -fi -egrep -qs 'Calpont Database Platform Alias Commands' ${bashFile} -rc1=$? -egrep -qs 'InfiniDB Alias Commands' ${bashFile} -rc2=$? -if [ $rc1 -ne 0 -a $rc2 -ne 0 ]; then - rm -f ${bashFile}.columnstoreSave - cp ${bashFile} ${bashFile}.columnstoreSave >/dev/null 2>&1 - cat $installdir/bin/columnstoreAlias >> ${bashFile} - echo " " >> ${bashFile} -fi - -#check and get amazon EC2 env variables -if [ -n "$EC2_HOME" ]; then - $installdir/bin/setConfig -d Installation EC2_HOME $EC2_HOME - - if [ -n "$EC2_HOME" ]; then - $installdir/bin/setConfig -d Installation JAVA_HOME $JAVA_HOME - fi - - $installdir/bin/setConfig -d Installation EC2_PATH $PATH:/home/ec2/bin:/opt/aws/bin -fi - -#log install message -test -f $installdir/post/functions && . $installdir/post/functions -LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$installdir/lib $installdir/bin/cplogger -i 19 "***** InfiniDB Installed *****" - -#setup hadoop -hadoop=`which hadoop 2>/dev/null` -if [ -z $hadoop ]; then - #check for non-root user - if [ $installdir != "/usr/local/MariaDB/Columnstore" -a $quiet -eq 0 ]; then -cat < /tmp/hdfs-20-test.log 2>&1 - if [ $? -eq 0 ]; then - #Passed set in config file - $installdir/bin/setConfig -d SystemConfig DataFilePlugin $installdir/lib/hdfs-20.so - $installdir/bin/setConfig -d SystemConfig DataFileEnvFile setenv-hdfs-20 - - #check for non-root user - if [ $installdir != "/usr/local/MariaDB/Columnstore" -a $quiet -eq 0 ]; then -cat < /tmp/hdfs-12-test.log 2>&1 - if [ $? -eq 0 ]; then - #Passed set in config file - $installdir/bin/setConfig -d SystemConfig DataFilePlugin $installdir/lib/hdfs-12.so - $installdir/bin/setConfig -d SystemConfig DataFileEnvFile setenv-hdfs-12 - - if [ $installdir != "/usr/local/MariaDB/Columnstore" -a $quiet -eq 0 ]; then -cat < /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - password=`$installdir/bin/getMySQLpw` - if [ $? -ne 0 ]; then - echo "MySQL Password missing or incorrect" - rm -f /tmp/error.check - $installdir/mysql/mysql-Calpont stop - sleep 2 - exit 2; - fi - rm -f /tmp/error.check - return 1; - fi - - rm -f /tmp/error.check - - #--------------------------------------------------------------------------- - # See if engine infinidb exist - #--------------------------------------------------------------------------- - echo "checking for engine infinidb..." - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='show engines;' \ - calpontsys | grep -i infinidb - - # - # Add compressiontype column to SYSCOLUMN if applicable - # - if [ $? -ne 0 ]; then - echo "infinidb doesn't exist" - return 1 - fi - - echo "infinidb exist" - - return 0; -} - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -password= - -for arg in "$@"; do - if [ $(expr -- "$arg" : '--prefix=') -eq 9 ]; then - prefix="$(echo $arg | awk -F= '{print $2}')" - installdir=$prefix/MariaDB/Columnstore - elif [ $(expr -- "$arg" : '--rpmmode=') -eq 10 ]; then - rpmmode="$(echo $arg | awk -F= '{print $2}')" - elif [ $(expr -- "$arg" : '--password=') -eq 11 ]; then - password="$(echo $arg | awk -F= '{print $2}')" - elif [ $(expr -- "$arg" : '--installdir=') -eq 13 ]; then - installdir="$(echo $arg | awk -F= '{print $2}')" - prefix=$(dirname $installdir) - else - echo "ignoring unknown argument: $arg" 1>&2 - fi -done - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - export INFINIDB_INSTALL_DIR=$installdir - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql -fi - -if [ -f $installdir/lib/libcalmysql.so.1.0.0 ]; then - libcalmysql=$installdir/lib/libcalmysql.so.1.0.0 - libudfsdk=$installdir/lib/libudf_mysql.so.1.0.0 -elif [ -f $installdir/lib/libcalmysql.so.1 ]; then - libcalmysql=$installdir/lib/libcalmysql.so.1 - libudfsdk=$installdir/lib/libudf_mysql.so.1 -else - libcalmysql= -fi - -if [ -d $installdir/mysql/lib64/mysql/plugin -a -n "$libcalmysql" ]; then - cd $installdir/mysql/lib64/mysql/plugin - ln -sf $libcalmysql libcalmysql.so - ln -sf $libcalmysql libcalmysqlent.so - ln -sf $libudfsdk libudf_mysql.so -fi - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - sed -i -e s@/usr/local/MariaDB/Columnstore@$installdir@g $installdir/mysql/my.cnf -fi - -if [ -x $installdir/mysql/mysql-Calpont ]; then - - # Restart in the same way that mysqld will be started normally. - $installdir/mysql/mysql-Calpont stop >/dev/null 2>&1 - sleep 2 - $installdir/mysql/mysql-Calpont start - - sleep 5 - - # Install various Calpont stuff... - $installdir/mysql/install_calpont_mysql.sh --password=$password --installdir=$installdir - checkForError - if [ $? -ne 0 ]; then - # retry - $installdir/mysql/install_calpont_mysql.sh --password=$password --installdir=$installdir - checkForError - if [ $? -ne 0 ]; then - echo "ERROR: missing or invalid password, or InfiniDB plugin install missing" - $installdir/mysql/mysql-Calpont stop - sleep 2 - exit 1; - fi - fi - - $installdir/mysql/mysql-Calpont stop -fi - -exit 0 - diff --git a/export/bin/post-mysqld-install b/export/bin/post-mysqld-install deleted file mode 100755 index 612055f39..000000000 --- a/export/bin/post-mysqld-install +++ /dev/null @@ -1,107 +0,0 @@ -#!/bin/bash -# -# $Id: post-mysqld-install 3661 2013-06-25 22:04:33Z dhill $ -# -# Post-install steps for infinidb-mysql install - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -user=mysql -if [ $EUID -ne 0 ]; then - user=$USER -fi - -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--rpmmode='` -eq 10 ]; then - rpmmode="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--user='` -eq 7 ]; then - user="`echo $arg | awk -F= '{print $2}'`" - else - echo "post-mysqld-install: ignoring unknown argument: $arg" 1>&2 - fi -done - -cd $installdir/mysql/lib64 -for file in libmysqlclient libmysqlclient_r; do - ln -sf $file.so.18.0.0 $file.so - ln -sf $file.so.18.0.0 $file.so.18 -done -cd $installdir/mysql/lib64/mysql/plugin -for file in ha_archive ha_blackhole ha_federated ha_innodb; do - ln -sf $file.so $file.so.0 -done - -### taken from MySQL-server-5.1.30-0.glibc23.i386.rpm -mysql_datadir=$installdir/mysql/db - -# Create data directory if needed -if test ! -d $mysql_datadir; then mkdir -m 755 $mysql_datadir; fi -if test ! -d $mysql_datadir/mysql; then mkdir $mysql_datadir/mysql; fi -if test ! -d $mysql_datadir/test; then mkdir $mysql_datadir/test; fi -if test ! -d $installdir/mysql/lib; then mkdir $installdir/mysql/lib; fi -if test ! -d $installdir/mysql/lib/mysql; then mkdir $installdir/mysql/lib/mysql; fi - -# Create a MySQL user and group. Do not report any problems if it already -# exists. -groupadd -r $user 2> /dev/null || true -useradd -m -r -d $mysql_datadir -s /bin/bash -c "MySQL server" -g $user $user 2> /dev/null || true -# The user may already exist, make sure it has the proper group nevertheless (BUG#12823) -usermod -g $user $user 2> /dev/null || true - -# Change permissions so that the user that will run the MySQL daemon -# owns all database files. -chown -R $user:$user $installdir/mysql - -# Initiate databases if needed -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - sed -i -e s@/usr/local/MariaDB/Columnstore@$installdir@g $installdir/mysql/my.cnf -fi - -# InfiniDB testing hook... -test -x /usr/local/bin/idb-testing-mysql-pre-start && /usr/local/bin/idb-testing-mysql-pre-start $installdir/mysql - -### Don't give the user the notes, we'll fix them ourselves... -$installdir/mysql/bin/mysql_install_db --rpm --user=$user --defaults-file=$installdir/mysql/my.cnf --basedir=$installdir/mysql >/dev/null -# Change permissions again to fix any new files. -chown -R $user:$user $mysql_datadir - -# Fix permissions for the permission database so that only the user -# can read them. -chmod -R og-rw $mysql_datadir/mysql - -# Change permissions again to fix any new files. -chown -R $user.$user $installdir/mysql - -test -e /etc/init.d/mysql-Calpont || cp $installdir/mysql/mysql-Calpont /etc/init.d >/dev/null 2>&1 - -if [ -f $installdir/lib/libcalmysql.so.1.0.0 ]; then - libcalmysql=$installdir/lib/libcalmysql.so.1.0.0 - libudfsdk=$installdir/lib/libudf_mysql.so.1.0.0 -elif [ -f $installdir/lib/libcalmysql.so.1 ]; then - libcalmysql=$installdir/lib/libcalmysql.so.1 - libudfsdk=$installdir/lib/libudf_mysql.so.1 -else - libcalmysql= -fi - -if [ -n "$libcalmysql" ]; then - - cd $installdir/mysql/lib64/mysql/plugin - ln -sf $libcalmysql libcalmysql.so - ln -sf $libcalmysql libcalmysqlent.so - ln -sf $libudfsdk libudf_mysql.so -fi - -# cleanup previous install mysql replication files -rm -rf $mysql_datadir/*relay* -rm -rf $mysql_datadir/mysql-bin.* -rm -rf $mysql_datadir/master.info - -exit 0 diff --git a/export/bin/pre-uninstall b/export/bin/pre-uninstall deleted file mode 100755 index 6b73fb5d8..000000000 --- a/export/bin/pre-uninstall +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/bash -# -# $Id: post-uninstall 421 2007-04-05 15:46:55Z dhill $ -# -# Post-uninstall steps for columnstore install - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -user=$USER -sudo=sudo -if [ -z "$user" ]; then - user=root - sudo=" " -fi -quiet=0 - -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--rpmmode='` -eq 10 ]; then - rpmmode="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--user='` -eq 7 ]; then - user="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--quiet'` -eq 7 ]; then - quiet=1 - else - echo "post-uninstall: ignoring unknown argument: $arg" 1>&2 - fi -done - -#stop services -$installdir/bin/infinidb stop > /dev/null 2>&1 -if test -f /etc/init.d/columnstore-Mysql ; then - $installdir/myql/columnstore-Mysql stop > /dev/null 2>&1 -fi - -if [ $installdir == "/usr/local/MariaDB/Columnstore" ]; then - # remove library config file - rm -f /etc/ld.so.conf.d/infinidb.conf - rm -f /etc/ld.so.cache - ldconfig -fi - -# uninstall OS scripts updated by postConfigure -if test -f /root/.bashrc.columnstoreSave ; then - $sudo mv -f /root/.bashrc.columnstoreSave /root/.bashrc > /dev/null 2>&1 -fi -if test -f /etc/exports.columnstoreSave ; then - $sudo mv -f /etc/exports.columnstoreSave /etc/exports > /dev/null 2>&1 -else - $sudo rm -f /etc/exports > /dev/null 2>&1 -fi -if test -f /etc/rc.d/rc.local.columnstoreSave ; then - $sudo mv -f /etc/rc.d/rc.local.columnstoreSave /etc/rc.d/rc.local > /dev/null 2>&1 -fi -if test -f /etc/rc.local.columnstoreSave ; then - $sudo mv -f /etc/rc.local.columnstoreSave /etc/rc.local > /dev/null 2>&1 -fi - -export INFINIDB_INSTALL_DIR=$installdir - -cloud=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation Cloud` -if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then - if test -f /etc/fstab ; then - $sudo sed -i '/Calpont\/data/d' /etc/fstab > /dev/null 2>&1 - fi -fi - -#remove log file directories -#rm -rf /var/log/Calpont > /dev/null 2>&1 -#rm -f $installdir/mysql/db/*.err > /dev/null 2>&1 -rm -f /var/log/Calpont/activeAlarms > /dev/null 2>&1 -rm -f /var/log/Calpont/*.log1 > /dev/null 2>&1 -rm -rf $installdir/mysql/db/infinidb_log_archive > /dev/null 2>&1 -sudo rm -f /etc/default/infinidb - -# remove Calpont Log Rotate File abd Transaction Log File -rm -f /etc/logrotate.d/columnstore > /dev/null 2>&1 -rm -f /etc/cron.d/transactionLog > /dev/null 2>&1 - -# delete Calpont shared memory segments -pkill -9 ProcMon -$installdir/bin/clearShm > /dev/null 2>&1 - -# delete prat files -rm -f /etc/cron.d/ps > /dev/null 2>&1 -rm -f /etc/pscollect > /dev/null 2>&1 -/etc/init.d/crond reload > /dev/null 2>&1 -systemctl reload crond.service > /dev/null 2>&1 - -# delete tmp files -rm -f $installdir/local/*.columnstore -rm -rf $installdir/local/etc/ -rm -rf /tmp/bucketreuse -rm -f /tmp/columnstore.txt -rm -f /tmp/dbbuilder.* -rm -f /tmp/dbrmfiles -rm -f /var/lock/subsys/infinidb -rm -f /tmp/pkgcheck -rm -f /tmp/upgrade-status.log.* -rm -f /tmp/mount.log -rm -f $installdir/data/bulk/tmpjob/* >/dev/null 2>&1 -rm -rf /tmp/infinidb_tmp_files -rm -f $installdir/local/moveDbrootTransactionLog - -#delete any old setenv files under home directory -if [ $user = "root" ]; then - rm -f /root/setenv-hdfs* -else - rm -f /home/$user/setenv-hdfs* -fi - -# delete core files -#rm -f /var/log/Calpont/corefiles/* > /dev/null 2>&1 - -#uninstall InfiniDB system logging -if [ -x $installdir/bin/syslogSetup.sh ]; then - if [ $user = "root" ]; then - $installdir/bin/syslogSetup.sh uninstall >/dev/null 2>&1 - rm -f /etc/init.d/infinidb > /dev/null 2>&1 - else - sudo $installdir/bin/syslogSetup.sh uninstall >/dev/null 2>&1 - fi -fi - -if [ -x /sbin/chkconfig ]; then - /sbin/chkconfig infinidb off > /dev/null 2>&1 - /sbin/chkconfig --del infinidb > /dev/null 2>&1 -elif [ -x /usr/sbin/update-rc.d ]; then - /usr/sbin/update-rc.d -f infinidb remove > /dev/null 2>&1 -fi - -if [ $quiet != 1 ]; then - #make copy of Calpont.xml - /bin/cp -f $installdir/etc/Calpont.xml $installdir/etc/Calpont.xml.rpmsave > /dev/null 2>&1 - /bin/cp -f $installdir/mysql/my.cnf $installdir/mysql/my.cnf.rpmsave > /dev/null 2>&1 -fi - -#umount file systems -if [ $user = "root" ]; then - rm -f $installdir/data*/OAMdbrootCheck > /dev/null 2>&1 -else - sudo rm -f $installdir/data*/OAMdbrootCheck > /dev/null 2>&1 -fi - -#tell user to run post configure script -echo " " -echo "Calpont uninstall completed" - -exit 0 - diff --git a/export/bin/remote_command.sh b/export/bin/remote_command.sh deleted file mode 100755 index 6878bcf22..000000000 --- a/export/bin/remote_command.sh +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/expect -# -# $Id: remote_command.sh 3495 2012-12-17 22:51:40Z dhill $ -# -# Remote command execution script to another server -# Argument 1 - Remote Server Host Name or IP address -# Argument 2 - Remote Server password -# Argument 3 - Command -# Argument 4 - debug flag -# Argument 5 - Remote user name (optional) -# Argument 6 - Force a tty to be allocated (optional) -set stty_init {cols 512 -opost}; -set timeout 30 -set SERVER [lindex $argv 0] -set PASSWORD [lindex $argv 1] -set COMMAND [lindex $argv 2] -set DEBUG [lindex $argv 3] - -if {[info exists env(USER)]} { - set USERNAME $env(USER) -} else { - set USERNAME "root" -} - -set UNM [lindex $argv 4] -if { $UNM != "" && $UNM != "-" } { - set USERNAME "$UNM" -} -set TTY "" -set TTYOPT [lindex $argv 5] -if { $TTYOPT != "" } { - set TTY "-t" -} -log_user $DEBUG -spawn -noecho /bin/bash -expect -re {[$#] } - -if { $PASSWORD == "ssh" } { - set PASSWORD "" -} - -# -# send command -# -send "ssh $TTY $USERNAME@$SERVER $COMMAND\n" -expect { - "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit 1} - "service not known" { send_user " FAILED: Invalid Host\n" ; exit 1} - "ssh: connect to host" { send_user " FAILED: Invalid Host\n" ; exit 1 } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "authenticity" { send "yes\n" - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - -re {[$#] } { exit 0 } -} -expect { - -re {[$#] } { exit 0 } - "Permission denied" { send_user " FAILED: Invalid password\n" ; exit 1 } - "(y or n)" { send "y\n" - expect -re {[$#] } { exit 0 } - } -} -exit 0 - diff --git a/export/bin/remote_command_verify.sh b/export/bin/remote_command_verify.sh deleted file mode 100755 index d7ceb5207..000000000 --- a/export/bin/remote_command_verify.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/expect -# -# $Id: remote_commend.sh 421 2007-04-05 15:46:55Z dhill $ -# -# Remote command execution script to another server -# Argument 1 - Remote Server Host Name or IP address -# Argument 2 - Remote Server root password -# Argument 3 - Command -# Argument 4 - Good Response -# Argument 5 - Bad Response -# Argument 6 - timeout -# Argument 7 - Debug flag -set timeout 30 -set SERVER [lindex $argv 0] -set USERNAME [lindex $argv 1] -set PASSWORD [lindex $argv 2] -set COMMAND [lindex $argv 3] -set GOOD_RESPONSE [lindex $argv 4] -set BAD_RESPONSE [lindex $argv 5] -set timeout [lindex $argv 6] -set DEBUG [lindex $argv 7] -log_user $DEBUG -spawn -noecho /bin/bash -expect -re {[$#] } -# -# send command -# -send "ssh $USERNAME@$SERVER '$COMMAND'\n" -expect { - -re "authenticity" { send "yes\n" - expect { - timeout { send_user "TIMEOUT\n" ; exit 2 } - -re "word: " { send "$PASSWORD\n" } abort - } - } - timeout { send_user "TIMEOUT\n" ; exit 2 } - -re "service not known" { send_user "FAILED: Invalid Host\n" ; exit 1 } - -re "Permission denied" { send_user "FAILED: Invalid Password\n" ; exit 1 } - -re "word: " { send "$PASSWORD\n" } abort - -re $GOOD_RESPONSE { send_user " " ; exit 0 } - -re $BAD_RESPONSE { send_user "FAILED\n" ; exit 1 } - -re "parser error" { send_user "FAILED: System Calpont.xml parse error\n" ; exit 1 } -} -expect { - timeout { send_user "FAILED-TIMEOUT\n" ; exit 1 } - -re $GOOD_RESPONSE { send_user " " ; exit 0 } - -re $BAD_RESPONSE { send_user "FAILED\n" ; exit 1 } - -re "No such file" { send_user "FAILED\n" ; exit 1 } - -re "parser error" { send_user "FAILED: System Calpont.xml parse error\n" ; exit 1 } -} - -exit 1 - diff --git a/export/bin/remote_scp_get.sh b/export/bin/remote_scp_get.sh deleted file mode 100755 index d361a951f..000000000 --- a/export/bin/remote_scp_get.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/expect -# -# $Id: remote_commend.sh 421 2007-04-05 15:46:55Z dhill $ -# -# Remote command execution script to another server -# Argument 1 - Remote Server Host Name or IP address -# Argument 2 - Remote Server root password -# Argument 3 - Command -set timeout 30 -set USERNAME $env(USER)"@" -set SERVER [lindex $argv 0] -set PASSWORD [lindex $argv 1] -set FILE [lindex $argv 2] -set DEBUG [lindex $argv 3] -log_user $DEBUG -spawn -noecho /bin/bash - -if { $PASSWORD == "ssh" } { - set PASSWORD "" -} - -# -# send command -# -expect -re {[$#] } -send "scp $USERNAME$SERVER:$FILE .\n" -expect { - "authenticity" { send "yes\n" - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - "service not known" { send_user "FAILED: Invalid Host\n" ; exit 1 } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection timed out" { send_user "FAILED: Connection timed out\n" ; exit 1 } - "lost connection" { send_user "FAILED: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } -} -expect { - "100%" { send_user "DONE\n" } - "scp:" { send_user "FAILED\n" ; exit 1 } - "Permission denied" { send_user "FAILED: Invalid password\n" ; exit 1 } - "No such file or directory" { send_user "FAILED: No such file or directory\n" ; exit 1 } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } -} -#sleep to make sure it's finished -sleep 5 -exit 0 - diff --git a/export/bin/remote_scp_put.sh b/export/bin/remote_scp_put.sh deleted file mode 100755 index 31b3aa552..000000000 --- a/export/bin/remote_scp_put.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/expect -# -# $Id: remote_commend.sh 421 2007-04-05 15:46:55Z dhill $ -# -# Remote command execution script to another server -# Argument 1 - Remote Server Host Name or IP address -# Argument 2 - Remote Server root password -# Argument 3 - Command -set timeout 30 -set USERNAME $env(USER)"@" -set SERVER [lindex $argv 0] -set PASSWORD [lindex $argv 1] -set FILE [lindex $argv 2] -set DEBUG [lindex $argv 3] -log_user $DEBUG -spawn -noecho /bin/bash - -if { $PASSWORD == "ssh" } { - set PASSWORD "" -} - -# -# send command -# -expect -re "# " -send "scp $FILE $USERNAME$SERVER:$FILE\n" -expect { - -re "authenticity" { send "yes\n" - expect { - -re "word: " { send "$PASSWORD\n" } - -re "passphrase" { send "$PASSWORD\n" } - } - } - -re "service not known" { send_user "FAILED: Invalid Host\n" ; exit 1 } - -re "Connection refused" { send_user "FAILED: Connection refused\n" ; exit 1 } - -re "Connection timed out" { send_user "FAILED: Connection timed out\n" ; exit 1 } - -re "lost connection" { send_user "FAILED: Connection refused\n" ; exit 1 } - -re "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - -re "word: " { send "$PASSWORD\n" } - -re "passphrase" { send "$PASSWORD\n" } - -re "WARNING:" { send "rm -f /root/.ssh/known_hosts" ; exit 1 } -} -expect { - -re "100%" { send_user "DONE\n" } - -re "scp:" { send_user "FAILED\n" ; exit 1 } - -re "Permission denied" { send_user "FAILED: Invalid password\n" ; exit 1 } - -re "No such file or directory" { send_user "FAILED: Invalid file\n" ; exit 1 } - -re "Connection refused" { send_user "FAILED: Connection refused\n" ; exit 1 } - -re "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } -} -#sleep to make sure it's finished -sleep 5 -exit 0 - diff --git a/export/bin/remotessh.exp b/export/bin/remotessh.exp deleted file mode 100755 index 050339323..000000000 --- a/export/bin/remotessh.exp +++ /dev/null @@ -1,89 +0,0 @@ -set PROMPT "(\\$|#) " - -proc auto_ssh_command { username password server commandstr } { - global PROMPT - - # - # send command - # - send "ssh -t $username@$server $commandstr\n" - expect { - -re "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit 1} - -re "service not known" { send_user " FAILED: Invalid Host\n" ; exit 1} - -re "ssh: connect to host" { send_user " FAILED: Invalid Host\n" ; exit 1 } - -re "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - -re "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - -re "authenticity" { send "yes\n" - expect { - -re "word: " { send "$password\n" } abort - -re "passphrase" { send "$password\n" } abort - } - } - -re "word: " { send "$password\n" } abort - -re "passphrase" { send "$password\n" } abort - } - - set needsudopwd 0 - expect { - -re $PROMPT { exit 0 } - -re "Permission denied, please try again" { send_user " FAILED: Invalid password\n" ; exit 1 } - -re ": Permission denied" { send_user " FAILED: Privilege error\n" ; exit 1 } - -re "(y or n)" { send "y\n" - expect -re $PROMPT { exit 0 } - } - -re "sudo\\] password for $username: " { - send "$password\n"; - set needsudopwd 1 - } abort - } - - if {$needsudopwd} { - expect { - -re $PROMPT { exit 0 } - -re "try again" { send_user " FAILED: Invalid sudo password\n" ; exit 1 } - } - } -} - -proc auto_scp_command { username password server srcpath destpath } { - global PROMPT - send "scp $srcpath $username@$server:$destpath\n" - expect { - -re "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit 1} - -re "service not known" { send_user " FAILED: Invalid Host\n" ; exit 1} - -re "ssh: connect to host" { send_user " FAILED: Invalid Host\n" ; exit 1 } - -re "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - -re "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - -re "authenticity" { send "yes\n" - expect { - -re "word: " { send "$password\n" } abort - -re "passphrase" { send "$password\n" } abort - } - } - -re "word: " { send "$password\n" } abort - -re "passphrase" { send "$password\n" } abort - } - - expect { - -re $PROMPT { exit 0 } - -re "Permission denied, please try again" { send_user " FAILED: Invalid password\n" ; exit 1 } - -re ": Permission denied" { send_user " FAILED: Privilege error\n" ; exit 1 } - -re "(y or n)" { send "y\n" - expect -re $PROMPT { exit 0 } - } - } - - set timeout 30 - expect { - -re "100%" { send_user "DONE" } abort - -re "directory" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - -re "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - -re "No such file or directory" { send_user "ERROR: Invalid package\n" ; exit 1 } - } - - send_user "\n" - # sleep to make sure it's finished - sleep 5 -} diff --git a/export/bin/rsync.sh b/export/bin/rsync.sh deleted file mode 100755 index 2fa53ee6b..000000000 --- a/export/bin/rsync.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/expect -# -# $Id: rsync.sh 2915 2012-05-23 16:01:34Z dhill $ -# -# Remote Install RPM and custom OS files from postConfigure script -# Argument 1 - Remote Server Host Name or IP address -# Argument 2 - Root Password of remote server -# Argument 3 - Debug flag 1 for on, 0 for off -set USERNAME "root@" -set SERVER [lindex $argv 0] -set PASSWORD [lindex $argv 1] -set INSTALLDIR [lindex $argv 2] -set DEBUG 0 -set DEBUG [lindex $argv 3] -log_user $DEBUG -spawn -noecho /bin/bash - - -if { $PASSWORD == "ssh" } { - set USERNAME "" - set PASSWORD "" -} - -set COMMAND "rsync -vopgr -e ssh --exclude=mysql/ --exclude=test/ --exclude=infinidb_vtable/ --exclude=infinidb_querystats/ --exclude=calpontsys/ --include=*/ --include=*/* --exclude=* $INSTALLDIR/mysql/db/ $USERNAME$SERVER:$INSTALLDIR/mysql/db/" - -# -# run command -# -set timeout 60 -send "$COMMAND\n" -expect { - -re "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit -1} - -re "service not known" { send_user " FAILED: Invalid Host\n" ; exit -1} - -re "ssh: connect to host" { send_user " FAILED: Invalid Host\n" ; exit -1 } - -re "authenticity" { send "yes\n" - expect { - -re "word: " { send "$PASSWORD\n" } - -re "passphrase" { send "$PASSWORD\n" } - } - } - -re "word: " { send "$PASSWORD\n" } - -re "passphrase" { send "$PASSWORD\n" } - -re "failed" { send_user " FAILED: Failure, check tmp log\n" ; exit 1 } - -re "Permission denied" { send_user " FAILED: Invalid password\n" ; exit 1 } - -re "total size" { exit 0 } -} -expect { - -re "failed" { send_user " FAILED: Failure, check tmp log\n" ; exit 1 } - -re "Permission denied" { send_user " FAILED: Invalid password\n" ; exit 1 } - -re "total size" { exit 0 } - } -} - -exit 0 diff --git a/export/bin/run.sh b/export/bin/run.sh deleted file mode 100755 index bcd5dd39e..000000000 --- a/export/bin/run.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/bash -# -# $Id$ -# - -usage="usage: run.sh [-vh] [-s sleep] [-t tries] executable" - -vflg=0 -sopt="5" -topt="0" - -while getopts "vs:t:h" flag; do - case $flag in - v) vflg=1 - ;; - s) sopt=$OPTARG - ;; - t) topt=$OPTARG - ;; - h) echo $usage - exit 0 - ;; - \? | *) echo $usage 1>&2 - exit 1 - ;; - esac -done - -shift $((OPTIND - 1)) - -exename="$1" - -if [ -z "$exename" ]; then - echo $usage 1>&2 - exit 1 -fi - -shift -args="$@" - -retries=1 -keep_going=1 - -if [ $vflg -gt 0 ]; then - echo "starting $exename $args with sleep=$sopt and tries=$topt" -fi - -while [ $keep_going -ne 0 ]; do - $exename $args - if [ -e /tmp/StopCalpont ]; then - exit 0 - fi - if [ $topt -gt 0 -a $retries -ge $topt ]; then - keep_going=0 - fi - ((retries++)) - if [ $keep_going -ne 0 -a $sopt -gt 0 ]; then - sleep $sopt - fi -done - -if [ $vflg -gt 0 ]; then - echo "$exename exceeded its try count, quiting!" 1>&2 -fi - -exit 1 - diff --git a/export/bin/slave-rep-columnstore.sh b/export/bin/slave-rep-columnstore.sh deleted file mode 100755 index 3b3e1bd3c..000000000 --- a/export/bin/slave-rep-columnstore.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB Slave Replication script. -# -# Notes: This script gets run by ProcMon during installs and upgrades: - -# check log for error -checkForError() { - grep ERROR /tmp/slave-rep-status.log > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/slave-rep-status.log" - rm -f /tmp/error.check - exit 1 - fi - rm -f /tmp/error.check -} - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--masteripaddr='` -eq 15 ]; then - masteripaddr="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--masterlogfile='` -eq 16 ]; then - masterlogfile="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--masterlogpos='` -eq 15 ]; then - masterlogpos="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--port='` -eq 7 ]; then - port="`echo $arg | awk -F= '{print $2}'`" - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - -repUser="idbrep" -password="Calpont1" - ->/tmp/slave-rep-status.log - -# -# Run stop slave command -# -echo "Run stop slave command" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -# -# Run Change Master Command -# -echo "Run Change Master Command" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -# -# Run start slave command -# -echo "Run start slave command" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -# -# Run SHOW SLAVE STATUS -# -echo "Run SHOW SLAVE STATUS to node log" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -checkForError - -#alls good, 'OK' for success -echo "OK" -exit 0 diff --git a/export/bin/slave-rep-infinidb.sh b/export/bin/slave-rep-infinidb.sh deleted file mode 100755 index 3b3e1bd3c..000000000 --- a/export/bin/slave-rep-infinidb.sh +++ /dev/null @@ -1,119 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB Slave Replication script. -# -# Notes: This script gets run by ProcMon during installs and upgrades: - -# check log for error -checkForError() { - grep ERROR /tmp/slave-rep-status.log > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/slave-rep-status.log" - rm -f /tmp/error.check - exit 1 - fi - rm -f /tmp/error.check -} - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--masteripaddr='` -eq 15 ]; then - masteripaddr="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--masterlogfile='` -eq 16 ]; then - masterlogfile="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--masterlogpos='` -eq 15 ]; then - masterlogpos="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--port='` -eq 7 ]; then - port="`echo $arg | awk -F= '{print $2}'`" - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - -repUser="idbrep" -password="Calpont1" - ->/tmp/slave-rep-status.log - -# -# Run stop slave command -# -echo "Run stop slave command" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -# -# Run Change Master Command -# -echo "Run Change Master Command" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -# -# Run start slave command -# -echo "Run start slave command" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -# -# Run SHOW SLAVE STATUS -# -echo "Run SHOW SLAVE STATUS to node log" >>/tmp/slave-rep-status.log -cat >/tmp/idb_slave-rep.sql <>/tmp/slave-rep-status.log -$installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/slave-rep-status.log - -checkForError - -#alls good, 'OK' for success -echo "OK" -exit 0 diff --git a/export/bin/startupTests.sh b/export/bin/startupTests.sh deleted file mode 100755 index 5836af965..000000000 --- a/export/bin/startupTests.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -# -# $Id: startupTests.sh 2937 2012-05-30 18:17:09Z rdempsey $ -# -# startupTests - perform sanity testing on system DB at system startup time -# called by Process-Monitor - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - test -f /etc/default/infinidb && . /etc/default/infinidb -fi - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - INFINIDB_INSTALL_DIR=/usr/local/MariaDB/Columnstore -fi - -export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR - -test -f $INFINIDB_INSTALL_DIR/post/functions && . $INFINIDB_INSTALL_DIR/post/functions - -for testScript in $INFINIDB_INSTALL_DIR/post/*.sh; do - if [ -x $testScript ]; then - eval $testScript - rc=$? - if [ $rc -ne 0 ]; then - cplogger -c 51 $testScript - echo "FAILED, check Critical log for additional info" - exit $rc - fi - fi -done -echo "OK" - -cplogger -i 54 - -exit 0 - diff --git a/export/bin/syslogSetup.sh b/export/bin/syslogSetup.sh deleted file mode 100755 index 549ba01d6..000000000 --- a/export/bin/syslogSetup.sh +++ /dev/null @@ -1,262 +0,0 @@ -#!/bin/bash -# -# $Id: syslogSetup.sh 421 2007-04-05 15:46:55Z dhill $ -# -# syslogSetup.sh - install / uninstall Calpont InfiniDB system logging configuration - -# no point in going any further if not root... (only works in bash) -test $EUID -eq 0 || exit 0 - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -syslog_conf=nofile -rsyslog7=0 - -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--..*'` -ge 3 ]; then - echo "ignoring unknown argument: $arg" 1>&2 - elif [ `expr -- "$arg" : '--'` -eq 2 ]; then - shift - break - else - break - fi - shift -done - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - export INFINIDB_INSTALL_DIR=$installdir - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFINIDB_INSTALL_DIR/lib -fi - -columnstoreSyslogFile=$installdir/bin/columnstoreSyslog -columnstoreSyslogFile7=$installdir/bin/columnstoreSyslog7 - -checkSyslog() { -#check which syslog daemon is being used -#first check which is running -daemon="nodaemon" -cnt=`ps -ef | grep -v grep | grep syslog-ng | wc -l` -if [ $cnt -gt 0 ]; then - daemon="syslog-ng" -else cnt=`ps -ef | grep -v grep | grep rsyslog | wc -l` - if [ $cnt -ge 1 ]; then - daemon="rsyslog" - else cnt=`ps -ef | grep -v grep | grep syslogd | wc -l` - if [ $cnt -ge 1 ]; then - if [ "$daemon" != "rsyslog" ]; then - daemon=syslog - fi - fi - fi -fi - -#if none running, check installed -if [ "$daemon" = "nodaemon" ]; then - if [ -f /etc/init.d/syslog ]; then - daemon="syslog" - /etc/init.d/syslog start > /dev/null 2>&1 - elif [ -f /etc/init.d/rsyslog ]; then - daemon="rsyslog" - /etc/init.d/rsyslog start > /dev/null 2>&1 - elif [ -f /etc/init.d/syslog-ng ]; then - daemon="syslog-ng" - /etc/init.d/syslog-ng start > /dev/null 2>&1 - fi -fi - -#if none running or installed, exit -if [ "$daemon" = "nodaemon" ]; then - echo "" - echo "*** No System Logging Application found (syslog, rsyslog, or syslog-ng)" - echo "*** For InfiniDB System Logging functionality, install a System Logging package and reinstall InfiniDB" - echo "" - exit 1 -fi - -#check which syslog config file is installed -if [ "$daemon" = "syslog-ng" ]; then - if [ -f /etc/syslog-ng/syslog-ng.conf ]; then - syslog_conf=/etc/syslog-ng/syslog-ng.conf - columnstoreSyslogFile=$installdir/bin/columnstoreSyslog-ng - echo "" - echo "System logging being used: syslog-ng" - echo "" - fi -elif [ "$daemon" = "rsyslog" ]; then - #check if rsyslog version 7 or greater - rsyslogd -v > /tmp/rsyslog.ver - cnt=`grep "rsyslogd 7" /tmp/rsyslog.ver | wc -l` - if [ $cnt -gt 0 ]; then - rsyslog7=1 - fi - cnt=`grep "rsyslogd 8" /tmp/rsyslog.ver | wc -l` - if [ $cnt -gt 0 ]; then - rsyslog7=1 - fi - cnt=`grep "rsyslogd 9" /tmp/rsyslog.ver | wc -l` - if [ $cnt -gt 0 ]; then - rsyslog7=1 - fi - - if [ -f /etc/rsyslog.conf ]; then - cnt=`grep "/etc/rsyslog.d/" /etc/rsyslog.conf | wc -l` - if [ $cnt -gt 0 ]; then - if [ $rsyslog7 == 1 ]; then - syslog_conf=/etc/rsyslog.d/49-calpont.conf - else - syslog_conf=/etc/rsyslog.d/calpont.conf - fi - else - syslog_conf=/etc/rsyslog.conf - fi - echo "" - echo "System logging being used: rsyslog" - echo "" - fi -elif [ "$daemon" = "syslog" ]; then - if [ -f /etc/syslog.conf ]; then - syslog_conf=/etc/syslog.conf - echo "" - echo "System logging being used: syslog" - echo "" - elif [ -d /etc/syslog-ng/syslog-ng.conf ]; then - syslog_conf=/etc/syslog-ng/syslog-ng.conf - columnstoreSyslogFile=$installdir/bin/columnstoreSyslog-ng - echo "" - echo "System logging being used: syslog-ng" - echo "" - fi -else - echo "" - echo "*** No System Logging Application found (syslog, rsyslog, or syslog-ng)" - echo "*** For InfiniDB System Logging functionality, install a System Logging package and reinstall InfiniDB" - echo "" - exit 1 -fi - -} - -install() { -checkSyslog -if [ ! -z "$syslog_conf" ] ; then - $installdir/bin/setConfig -d Installation SystemLogConfigFile ${syslog_conf} >/dev/null 2>&1 - if [ "$syslog_conf" != /etc/rsyslog.d/calpont.conf ]; then - rm -f ${syslog_conf}.calpontSave - cp ${syslog_conf} ${syslog_conf}.calpontSave >/dev/null 2>&1 - sed -i '/# Calpont/,$d' ${syslog_conf}.calpontSave > /dev/null 2>&1 - fi - - egrep -qs 'Calpont Database Platform Logging' ${syslog_conf} - if [ $? -ne 0 ]; then - #set the syslog for calpont logging - # remove older version incase it was installed by previous build - rm -rf /etc/rsyslog.d/calpont.conf - if [ $rsyslog7 == 1 ]; then - rm -f /etc/rsyslog.d/49-calpont.conf - cat ${columnstoreSyslogFile7} >> ${syslog_conf} - chown syslog:adm /var/log/Calpont - else - cat ${columnstoreSyslogFile} >> ${syslog_conf} - fi - fi - - pkill -hup syslogd > /dev/null 2>&1 - pkill -hup syslog-ng > /dev/null 2>&1 - pkill -hup rsyslogd > /dev/null 2>&1 - /etc/init.d/rsyslog restart > /dev/null 2>&1 - systemctl restart rsyslog.service > /dev/null 2>&1 -fi - -} - -uninstall() { -checkSyslog -if [ ! -z "$syslog_conf" ] ; then - if [ "$syslog_conf" != /etc/rsyslog.d/calpont.conf ]; then - if [ "$syslog_conf" != /etc/rsyslog.d/49-calpont.conf ]; then - egrep -qs 'Calpont Database Platform Logging' ${syslog_conf} - if [ $? -eq 0 ]; then - if [ -f ${syslog_conf}.calpontSave ] ; then - #uninstall the syslog for calpont logging - mv -f ${syslog_conf} ${syslog_conf}.calpontBackup - mv -f ${syslog_conf}.calpontSave ${syslog_conf} >/dev/null 2>&1 - if [ ! -f ${syslog_conf} ] ; then - cp ${syslog_conf}.calpontBackup ${syslog_conf} - fi - fi - fi - sed -i '/# Calpont/,$d' ${syslog_conf} > /dev/null 2>&1 - else - rm -f "$syslog_conf" - fi - else - rm -f "$syslog_conf" - fi - - pkill -hup syslogd > /dev/null 2>&1 - pkill -hup syslog-ng > /dev/null 2>&1 - /etc/init.d/rsyslog restart > /dev/null 2>&1 - systemctl restart rsyslog.service > /dev/null 2>&1 - - $installdir/bin/setConfig -d Installation SystemLogConfigFile "unassigned" - -fi - -} - -status() { -checkSyslog -if [ ! -z "$syslog_conf" ] ; then - egrep -qs 'Calpont Database Platform Logging' ${syslog_conf} - if [ $? -eq 0 ]; then - echo $syslog_conf - else - echo "No System Log Config File configured for InfiniDB System Logging" - fi -fi -} - -check() { -test -f $installdir/post/functions && . $installdir/post/functions -number=$RANDOM -cplogger -i 100 "InfiniDB Log Test: $number" -sleep 3 -egrep -qs "InfiniDB Log Test: $number" /var/log/Calpont/info.log -if [ $? -eq 0 ]; then - echo "InfiniDB System Logging working" - exit 0 -else - echo "InfiniDB System Logging not working" - exit 1 -fi -} - - -case "$1" in - install) - install - ;; - uninstall) - uninstall - ;; - status) - status - ;; - check) - check - ;; - *) - echo $"Usage: $0 {install|uninstall|status|check)" - exit 1 -esac - - -exit 0 -/ diff --git a/export/bin/system_installer.sh b/export/bin/system_installer.sh deleted file mode 100755 index aa21998ca..000000000 --- a/export/bin/system_installer.sh +++ /dev/null @@ -1,161 +0,0 @@ -#!/usr/bin/expect -# -# $Id: system_installer.sh 2804 2012-03-22 12:57:42Z pleblanc $ -# -# Install RPM and custom OS files on system -# Argument 1 - Remote Module Name -# Argument 2 - Remote Server Host Name or IP address -# Argument 3 - Root Password of remote server -# Argument 4 - Package name being installed -# Argument 5 - Install Type, "initial" or "upgrade" -# Argument 6 - Debug flag 1 for on, 0 for off -set timeout 30 -set USERNAME root -set MODULE [lindex $argv 0] -set SERVER [lindex $argv 1] -set PASSWORD [lindex $argv 2] -set RPMPACKAGE1 [lindex $argv 3] -set RPMPACKAGE2 [lindex $argv 4] -set RPMPACKAGE3 [lindex $argv 5] -set INSTALLTYPE [lindex $argv 6] -set DEBUG [lindex $argv 7] -log_user $DEBUG -spawn -noecho /bin/bash -# -if { $INSTALLTYPE == "initial" || $INSTALLTYPE == "uninstall" } { - # - # erase package - # - send_user "Erase InfiniDB Packages on Module " - expect -re {[$#] } - send "ssh $USERNAME@$SERVER 'rpm -e --nodeps --allmatches calpont >/dev/null 2>&1; rpm -e --nodeps --allmatches infinidb-enterprise >/dev/null 2>&1; rpm -e --nodeps --allmatches infinidb-libs infinidb-platform'\n" - expect { - "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit } - "service not known" { send_user "FAILED: Invalid Host\n" ; exit } - "authenticity" { send "yes\n" - expect { - "word: " { send "$PASSWORD\n" } - } - } - "word: " { send "$PASSWORD\n" } - } - # password for ssh - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "uninstall completed" { send_user "DONE" } - "ERROR dependencies" { send_user "ERROR: ERROR dependencies\n" ; exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "error: package" { send_user "INFO: Package not installed" } - "not installed" { send_user "INFO: Package not installed" } - } - send_user "\n" -} -if { $INSTALLTYPE == "uninstall" } { exit 0 } - -# -# send the package -# -expect -re {[$#] } -send_user "Copy New InfiniDB Packages to Module " -send "ssh $USERNAME@$SERVER 'rm -f /root/infinidb-*.rpm'\n" -expect "word: " -# password for ssh -send "$PASSWORD\n" -# check return -expect { - -re {[$#] } { } -} -send "scp $RPMPACKAGE1 $RPMPACKAGE2 $RPMPACKAGE3 $USERNAME@$SERVER:.\n" -expect "word: " -# send the password -send "$PASSWORD\n" -# check return -expect { - "100%" { send_user "DONE" } - "scp" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "No such file or directory" { send_user "ERROR: Invalid package\n" ; exit -1 } -} -send_user "\n" -# -set timeout 60 -if { $INSTALLTYPE == "initial"} { - # - # install package - # - send_user "Install InfiniDB Packages on Module " - send "ssh $USERNAME@$SERVER 'rpm -ivh $RPMPACKAGE1 $RPMPACKAGE2 $RPMPACKAGE3'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - -re {[$#] } { send_user "DONE" } - "completed" { send_user "DONE" } - "ERROR dependencies" { send_user "ERROR: ERROR dependencies\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } -} else { - # - # upgrade package - # - send_user "Upgrade InfiniDB Packages on Module " - send "ssh $USERNAME@$SERVER 'rpm -Uvh --noscripts $RPMPACKAGE1 $RPMPACKAGE2 $RPMPACKAGE3'\n" - expect "word: " - # password for ssh - send "$PASSWORD\n" - # check return - expect { - -re {[$#] } { send_user "DONE" } - "completed" { send_user "DONE" } - "already installed" { send_user "INFO: Already Installed\n" ; exit -1 } - "ERROR dependencies" { send_user "ERROR: ERROR dependencies\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } -} -expect -re {[$#] } -send_user "\n" -set timeout 30 -# -if { $INSTALLTYPE == "initial"} { - # - # copy over InfiniDB OS files - # - send_user "Copy InfiniDB OS files to Module " - send "scp /usr/local/MariaDB/Columnstore/local/etc/$MODULE/* $USERNAME@$SERVER:/usr/local/MariaDB/Columnstore/local/.\n" - expect "word: " - # send the password - send "$PASSWORD\n" - expect { - -re {[$#] } { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - } - # - send_user "\n" - set timeout 120 - # - # Start module installer to setup Customer OS files - # - send_user "Run Module Installer " - send "ssh $USERNAME@$SERVER '/usr/local/MariaDB/Columnstore/bin/module_installer.sh'\n" - expect "word: " - # send the password - send "$PASSWORD\n" - expect { - "!!!Module" { send_user "DONE" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit -1 } - "FAILED" { send_user "ERROR: missing OS file\n" ; exit -1 } - } - send_user "\n" -} -# -send_user "\nInstallation Successfully Completed on '$MODULE'\n" -exit 0 - diff --git a/export/bin/transactionLog b/export/bin/transactionLog deleted file mode 100755 index 3763b5cd2..000000000 --- a/export/bin/transactionLog +++ /dev/null @@ -1,12 +0,0 @@ -# -# Calpont version with Daily running at midnight -# - -SHELL=/bin/bash -PATH=/sbin:/bin:/usr/sbin:/usr/bin -MAILTO=root -HOME=/ - -# Translation Log Archiver, default to every 10 minutes -*/10 * * * * root /usr/local/Calpont/bin/transactionLogArchiver.sh - diff --git a/export/bin/transactionLogArchiver.sh b/export/bin/transactionLogArchiver.sh deleted file mode 100755 index 7e5a47f39..000000000 --- a/export/bin/transactionLogArchiver.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash -# -# $Id: transactionLogArchiver.sh 1375 2009-04-30 13:53:06Z rdempsey $ - -DATE=`date +'%s'` -CDATA=/var/log/Calpont/data - -if [ ! -d $CDATA/archive ]; then - echo "Installation error: $CDATA/archive is not a directory." 1>&2 - exit 1 -fi - -if [ -f $CDATA/data_mods.log ]; then - # Don't bother rotating an empty log - if [ ! -s $CDATA/data_mods.log ]; then - exit 0 - fi - cp $CDATA/data_mods.log $CDATA/archive >/dev/null 2>&1 - if [ $? -ne 0 ]; then - echo "Could not copy $CDATA/data_mods.log to $CDATA/archive" 1>&2 - exit 1 - fi -else - # Is this a reportable/fatal error? - echo "No such file: $CDATA/data_mods.log" 1>&2 -fi - -rm -f $CDATA/data_mods.log >/dev/null 2>&1 -touch $CDATA/data_mods.log >/dev/null 2>&1 -if [ $? -ne 0 ]; then - echo "Could not create $CDATA/data_mods.log" 1>&2 - exit 1 -fi - -chmod 666 $CDATA/data_mods.log >/dev/null 2>&1 -if [ $? -ne 0 ]; then - echo "Could not set the perms on $CDATA/data_mods.log" 1>&2 - exit 1 -fi - -pkill -HUP syslog >/dev/null 2>&1 - -mv $CDATA/archive/data_mods.log $CDATA/archive/data_mods.log.$DATE >/dev/null 2>&1 -if [ $? -ne 0 ]; then - echo "Could not move $CDATA/archive/data_mods.log to $CDATA/archive/data_mods.log.$DATE" 1>&2 - exit 1 -fi - diff --git a/export/bin/upgrade-columnstore.sh b/export/bin/upgrade-columnstore.sh deleted file mode 100755 index f56539873..000000000 --- a/export/bin/upgrade-columnstore.sh +++ /dev/null @@ -1,444 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB upgrade script. -# -# Notes: This script gets run every time InfiniDB starts up so it needs to be: -# 1) able to only do stuff once if needed and nothing if not needed -# 2) reasonably fast when there's nothing to do - -# check log for error -checkForError() { - grep ERROR /tmp/upgrade-status.log.$$ > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/upgrade-status.log.$$" - rm -f /tmp/error.check - exit 1; - fi - rm -f /tmp/error.check -} - -if [ "x$1" != xdoupgrade ]; then - echo "Don't run this script by hand! You probably want to use install-infinidb.sh." 1>&2 - exit 1 -fi - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - -mt=`module_type` -mid=`module_id` - -# for CE version -if [ -z "$mt" ]; then - mt=pm -fi -if [ -z "$mid" ]; then - mid=1 -fi - -has_um=`$installdir/bin/getConfig SystemModuleConfig ModuleCount2` -if [ -z "$has_um" ]; then - has_um=0 -fi - ->/tmp/upgrade-status.log.$$ -echo "mt = $mt" >>/tmp/upgrade-status.log.$$ -echo "mid = $mid" >>/tmp/upgrade-status.log.$$ -echo "has_um = $has_um" >>/tmp/upgrade-status.log.$$ - -#This upgrade only for UM or PM with no UM -if [ $has_um -eq 0 -o "x$mt" = xum ]; then - #--------------------------------------------------------------------------- - # See if compressiontype column is in SYSCOLUMN - #--------------------------------------------------------------------------- - echo "checking calpontsys for compressiontype..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep compressiontype >>/tmp/upgrade-status.log.$$ 2>&1 - - # - # Add compressiontype column to SYSCOLUMN if applicable - # - if [ $? -ne 0 ]; then - echo "calpontsys needs upgrade for compressiontype" >>/tmp/upgrade-status.log.$$ - echo "added compressiontype column" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - if [ $mid -eq 1 ]; then - echo "update compressiontype to backend" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - fi - - # - # Verify that compressiontype was successfully added to SYSCOLUMN - # - rm -f /tmp/idb_upgrade.sql - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep compressiontype >/tmp/upgrade-status-1.log 2>&1 - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding compressiontype to SYSCOLUMN!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 1 ]; then - echo "FAILED adding compressiontype to SYSCOLUMN!" - exit 1 - fi - - # - # Verify that compressiontype (OID 1041) was successfully added to BRM - # - if [ $has_um -eq 0 ]; then - $installdir/bin/editem -o1041 1>/tmp/upgrade-status-1.log 2>/dev/null - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding compressiontype to BRM!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -lt 2 ]; then - echo "FAILED adding compressiontype to BRM!" - exit 1 - fi - fi - fi - - #--------------------------------------------------------------------------- - # See if autoincrement column is in SYSTABLE - #--------------------------------------------------------------------------- - echo "checking calpontsys for autoincrement..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable;' \ - calpontsys | grep autoincrement >>/tmp/upgrade-status.log.$$ 2>&1 - - # - # Add autoincrement column to SYSTABLE if applicable - # - if [ $? -ne 0 ]; then - echo "calpontsys needs upgrade for autoincrement" >>/tmp/upgrade-status.log.$$ - echo "add autoincrement columns" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - if [ $mid -eq 1 ]; then - echo "update autoincrement to backend" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - fi - - # - #Verify that autoincrement was successfully added to SYSTABLE - # - rm -f /tmp/idb_upgrade.sql - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable;' \ - calpontsys | grep autoincrement >/tmp/upgrade-status-1.log 2>&1 - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding autoincrement to SYSTABLE!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 1 ]; then - echo "FAILED adding autoincrement to SYSTABLE!" - exit 1 - fi - - # - # Verify that autoincrement (OID 1011) was successfully added to BRM - # - if [ $has_um -eq 0 ]; then - $installdir/bin/editem -o1011 1>/tmp/upgrade-status-1.log 2>/dev/null - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding autoincrement to BRM!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ "x$cnt" = x ]; then - cnt=0 - fi - if [ $cnt -lt 2 ]; then - echo "FAILED adding autoincrement to BRM!" - exit 1 - fi - fi - fi - - #--------------------------------------------------------------------------- - # See if nextvalue column is in SYSCOLUMN - #--------------------------------------------------------------------------- - echo "checking calpontsys for nextvalue..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep nextvalue >>/tmp/upgrade-status.log.$$ 2>&1 - - # - # Add nextvalue column to SYSCOLUMN if applicable. - # Also set old autoincrement column in SYSCOLUMN to 'n'. - # - if [ $? -ne 0 ]; then - echo "calpontsys needs upgrade for nextvalue" >>/tmp/upgrade-status.log.$$ - echo "add nextvalue columns" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - if [ $mid -eq 1 ]; then - echo "update nextvalue to backend" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - fi - - # - # Verify that nextvalue was successfully added to SYSCOLUMN - # - rm -f /tmp/idb_upgrade.sql - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep nextvalue >/tmp/upgrade-status-1.log 2>&1 - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding nextvalue to SYSCOLUMN!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 1 ]; then - echo "FAILED adding nextvalue to SYSCOLUMN!" - exit 1 - fi - - # - # Verify that nextvalue (OID 1042) was successfully added to BRM - # - if [ $has_um -eq 0 ]; then - $installdir/bin/editem -o1042 1>/tmp/upgrade-status-1.log 2>/dev/null - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding nextvalue to BRM!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ "x$cnt" = x ]; then - cnt=0 - fi - if [ $cnt -lt 2 ]; then - echo "FAILED adding nextvalue to BRM!" - exit 1 - fi - fi - fi - - #--------------------------------------------------------------------------- - # See if systable schema and tablename columns are varchar(128). - #--------------------------------------------------------------------------- - recreate=0 - echo "checking calpontsys.systable schema and tablename for varchar(128)..." >>/tmp/upgrade-status.log.$$ - colCount=` \ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable;' \ - calpontsys | egrep "schema|tablename" | grep "varchar(128)" | wc -l` - if [ $colCount -ne 2 ]; then - recreate=1 - echo "calpontsys needs upgrade to expand systable schema and tablename" >>/tmp/upgrade-status.log.$$ - fi - - #--------------------------------------------------------------------------- - # See if syscolumn schema, tablename, and columname columns are varchar(128). - #--------------------------------------------------------------------------- - if [ $recreate -eq 0 ]; then - echo "checking calpontsys.syscolumn schema, tablename, columnname for varchar(128)..." >>/tmp/upgrade-status.log.$$ - colCount=` \ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | egrep "schema|tablename|columnname" | grep "varchar(128)" | wc -l` - if [ $colCount -ne 3 ]; then - recreate=1 - echo "calpontsys needs upgrade to expand syscolumn schema, tablename, and columnname" >>/tmp/upgrade-status.log.$$ - fi - fi - - #--------------------------------------------------------------------------- - # See if defaultvalue column in SYSCOLUMN is varchar(64) - #--------------------------------------------------------------------------- - if [ $recreate -eq 0 ]; then - echo "checking calpontsys for defaultvalue varchar(64)..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep defaultvalue | grep 'varchar(64)' >>/tmp/upgrade-status.log.$$ 2>&1 - if [ $? -ne 0 ]; then - recreate=1 - echo "calpontsys needs upgrade to change defaultvalue" >>/tmp/upgrade-status.log.$$ - fi - fi - - # - # Change defaultvalue column to varchar(64) if applicable - # - if [ $recreate -ne 0 ]; then - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - echo "create systable and syscolumn with schema sync only" >>/tmp/upgrade-status.log.$$ - cat $installdir/mysql/syscatalog_mysql.sql >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys <$installdir/mysql/syscatalog_mysql.sql >>/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - # - # Verify column widths: - # varchar(64) for syscolumn.defaultvalue - # varchar(128) for systable (schema, tablename) and syscolumn (schema, tablename, and columnname). - # - rm -f /tmp/idb_upgrade.sql - echo "verify column widths" >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep defaultvalue | grep 'varchar(64)' >/tmp/upgrade-status-1.log 2>&1 - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable; describe syscolumn;' \ - calpontsys | egrep "schema|tablename|columnname" | grep 'varchar(128)' >>/tmp/upgrade-status-1.log 2>&1 - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 6 ]; then - echo "FAILED width of schema, tablename, columnname, defaultvalue verification!" - exit 1 - fi - fi -fi - -echo "OK" diff --git a/export/bin/upgrade-infinidb.sh b/export/bin/upgrade-infinidb.sh deleted file mode 100755 index f56539873..000000000 --- a/export/bin/upgrade-infinidb.sh +++ /dev/null @@ -1,444 +0,0 @@ -#!/bin/bash -# -# $Id$ -# -# generic InfiniDB upgrade script. -# -# Notes: This script gets run every time InfiniDB starts up so it needs to be: -# 1) able to only do stuff once if needed and nothing if not needed -# 2) reasonably fast when there's nothing to do - -# check log for error -checkForError() { - grep ERROR /tmp/upgrade-status.log.$$ > /tmp/error.check - if [ `cat /tmp/error.check | wc -c` -ne 0 ]; then - echo "ERROR: check log file: /tmp/upgrade-status.log.$$" - rm -f /tmp/error.check - exit 1; - fi - rm -f /tmp/error.check -} - -if [ "x$1" != xdoupgrade ]; then - echo "Don't run this script by hand! You probably want to use install-infinidb.sh." 1>&2 - exit 1 -fi - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -pwprompt= -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--password='` -eq 11 ]; then - password="`echo $arg | awk -F= '{print $2}'`" - pwprompt="--password=$password" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - fi -done - -test -f $installdir/post/functions && . $installdir/post/functions - -mt=`module_type` -mid=`module_id` - -# for CE version -if [ -z "$mt" ]; then - mt=pm -fi -if [ -z "$mid" ]; then - mid=1 -fi - -has_um=`$installdir/bin/getConfig SystemModuleConfig ModuleCount2` -if [ -z "$has_um" ]; then - has_um=0 -fi - ->/tmp/upgrade-status.log.$$ -echo "mt = $mt" >>/tmp/upgrade-status.log.$$ -echo "mid = $mid" >>/tmp/upgrade-status.log.$$ -echo "has_um = $has_um" >>/tmp/upgrade-status.log.$$ - -#This upgrade only for UM or PM with no UM -if [ $has_um -eq 0 -o "x$mt" = xum ]; then - #--------------------------------------------------------------------------- - # See if compressiontype column is in SYSCOLUMN - #--------------------------------------------------------------------------- - echo "checking calpontsys for compressiontype..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep compressiontype >>/tmp/upgrade-status.log.$$ 2>&1 - - # - # Add compressiontype column to SYSCOLUMN if applicable - # - if [ $? -ne 0 ]; then - echo "calpontsys needs upgrade for compressiontype" >>/tmp/upgrade-status.log.$$ - echo "added compressiontype column" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - if [ $mid -eq 1 ]; then - echo "update compressiontype to backend" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - fi - - # - # Verify that compressiontype was successfully added to SYSCOLUMN - # - rm -f /tmp/idb_upgrade.sql - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep compressiontype >/tmp/upgrade-status-1.log 2>&1 - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding compressiontype to SYSCOLUMN!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 1 ]; then - echo "FAILED adding compressiontype to SYSCOLUMN!" - exit 1 - fi - - # - # Verify that compressiontype (OID 1041) was successfully added to BRM - # - if [ $has_um -eq 0 ]; then - $installdir/bin/editem -o1041 1>/tmp/upgrade-status-1.log 2>/dev/null - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding compressiontype to BRM!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -lt 2 ]; then - echo "FAILED adding compressiontype to BRM!" - exit 1 - fi - fi - fi - - #--------------------------------------------------------------------------- - # See if autoincrement column is in SYSTABLE - #--------------------------------------------------------------------------- - echo "checking calpontsys for autoincrement..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable;' \ - calpontsys | grep autoincrement >>/tmp/upgrade-status.log.$$ 2>&1 - - # - # Add autoincrement column to SYSTABLE if applicable - # - if [ $? -ne 0 ]; then - echo "calpontsys needs upgrade for autoincrement" >>/tmp/upgrade-status.log.$$ - echo "add autoincrement columns" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - if [ $mid -eq 1 ]; then - echo "update autoincrement to backend" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - fi - - # - #Verify that autoincrement was successfully added to SYSTABLE - # - rm -f /tmp/idb_upgrade.sql - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable;' \ - calpontsys | grep autoincrement >/tmp/upgrade-status-1.log 2>&1 - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding autoincrement to SYSTABLE!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 1 ]; then - echo "FAILED adding autoincrement to SYSTABLE!" - exit 1 - fi - - # - # Verify that autoincrement (OID 1011) was successfully added to BRM - # - if [ $has_um -eq 0 ]; then - $installdir/bin/editem -o1011 1>/tmp/upgrade-status-1.log 2>/dev/null - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding autoincrement to BRM!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ "x$cnt" = x ]; then - cnt=0 - fi - if [ $cnt -lt 2 ]; then - echo "FAILED adding autoincrement to BRM!" - exit 1 - fi - fi - fi - - #--------------------------------------------------------------------------- - # See if nextvalue column is in SYSCOLUMN - #--------------------------------------------------------------------------- - echo "checking calpontsys for nextvalue..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep nextvalue >>/tmp/upgrade-status.log.$$ 2>&1 - - # - # Add nextvalue column to SYSCOLUMN if applicable. - # Also set old autoincrement column in SYSCOLUMN to 'n'. - # - if [ $? -ne 0 ]; then - echo "calpontsys needs upgrade for nextvalue" >>/tmp/upgrade-status.log.$$ - echo "add nextvalue columns" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - if [ $mid -eq 1 ]; then - echo "update nextvalue to backend" >>/tmp/upgrade-status.log.$$ - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - fi - - # - # Verify that nextvalue was successfully added to SYSCOLUMN - # - rm -f /tmp/idb_upgrade.sql - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep nextvalue >/tmp/upgrade-status-1.log 2>&1 - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding nextvalue to SYSCOLUMN!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 1 ]; then - echo "FAILED adding nextvalue to SYSCOLUMN!" - exit 1 - fi - - # - # Verify that nextvalue (OID 1042) was successfully added to BRM - # - if [ $has_um -eq 0 ]; then - $installdir/bin/editem -o1042 1>/tmp/upgrade-status-1.log 2>/dev/null - rc=$? - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - if [ $rc -ne 0 ]; then - echo "FAILED adding nextvalue to BRM!" - exit 1 - fi - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ "x$cnt" = x ]; then - cnt=0 - fi - if [ $cnt -lt 2 ]; then - echo "FAILED adding nextvalue to BRM!" - exit 1 - fi - fi - fi - - #--------------------------------------------------------------------------- - # See if systable schema and tablename columns are varchar(128). - #--------------------------------------------------------------------------- - recreate=0 - echo "checking calpontsys.systable schema and tablename for varchar(128)..." >>/tmp/upgrade-status.log.$$ - colCount=` \ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable;' \ - calpontsys | egrep "schema|tablename" | grep "varchar(128)" | wc -l` - if [ $colCount -ne 2 ]; then - recreate=1 - echo "calpontsys needs upgrade to expand systable schema and tablename" >>/tmp/upgrade-status.log.$$ - fi - - #--------------------------------------------------------------------------- - # See if syscolumn schema, tablename, and columname columns are varchar(128). - #--------------------------------------------------------------------------- - if [ $recreate -eq 0 ]; then - echo "checking calpontsys.syscolumn schema, tablename, columnname for varchar(128)..." >>/tmp/upgrade-status.log.$$ - colCount=` \ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | egrep "schema|tablename|columnname" | grep "varchar(128)" | wc -l` - if [ $colCount -ne 3 ]; then - recreate=1 - echo "calpontsys needs upgrade to expand syscolumn schema, tablename, and columnname" >>/tmp/upgrade-status.log.$$ - fi - fi - - #--------------------------------------------------------------------------- - # See if defaultvalue column in SYSCOLUMN is varchar(64) - #--------------------------------------------------------------------------- - if [ $recreate -eq 0 ]; then - echo "checking calpontsys for defaultvalue varchar(64)..." >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep defaultvalue | grep 'varchar(64)' >>/tmp/upgrade-status.log.$$ 2>&1 - if [ $? -ne 0 ]; then - recreate=1 - echo "calpontsys needs upgrade to change defaultvalue" >>/tmp/upgrade-status.log.$$ - fi - fi - - # - # Change defaultvalue column to varchar(64) if applicable - # - if [ $recreate -ne 0 ]; then - cat >/tmp/idb_upgrade.sql <>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys >/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - echo "create systable and syscolumn with schema sync only" >>/tmp/upgrade-status.log.$$ - cat $installdir/mysql/syscatalog_mysql.sql >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - calpontsys <$installdir/mysql/syscatalog_mysql.sql >>/tmp/upgrade-status.log.$$ 2>&1 - - checkForError - - # - # Verify column widths: - # varchar(64) for syscolumn.defaultvalue - # varchar(128) for systable (schema, tablename) and syscolumn (schema, tablename, and columnname). - # - rm -f /tmp/idb_upgrade.sql - echo "verify column widths" >>/tmp/upgrade-status.log.$$ - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe syscolumn;' \ - calpontsys | grep defaultvalue | grep 'varchar(64)' >/tmp/upgrade-status-1.log 2>&1 - $installdir/mysql/bin/mysql \ - --defaults-file=$installdir/mysql/my.cnf \ - --user=root $pwprompt \ - --execute='describe systable; describe syscolumn;' \ - calpontsys | egrep "schema|tablename|columnname" | grep 'varchar(128)' >>/tmp/upgrade-status-1.log 2>&1 - cat /tmp/upgrade-status-1.log >>/tmp/upgrade-status.log.$$ - cnt=`wc -l /tmp/upgrade-status-1.log | awk '{print $1}'` - rm -f /tmp/upgrade-status-1.log - if [ -z "$cnt" ]; then - cnt=0 - fi - if [ $cnt -ne 6 ]; then - echo "FAILED width of schema, tablename, columnname, defaultvalue verification!" - exit 1 - fi - fi -fi - -echo "OK" diff --git a/export/bin/user_installer.sh b/export/bin/user_installer.sh deleted file mode 100755 index 1e3986807..000000000 --- a/export/bin/user_installer.sh +++ /dev/null @@ -1,323 +0,0 @@ -#!/usr/bin/expect -# -# $Id: user_installer.sh 1066 20081113 21:44:44Z dhill $ -# -# Install RPM and custom OS files on system -# Argument 1 - Remote Module Name -# Argument 2 - Remote Server Host Name or IP address -# Argument 3 - Root Password of remote server -# Argument 4 - Package name being installed -# Argument 5 - Install Type, "initial" or "upgrade" -# Argument 6 - Debug flag 1 for on, 0 for off -set timeout 30 -set USERNAME root -set MODULE [lindex $argv 0] -set SERVER [lindex $argv 1] -set PASSWORD [lindex $argv 2] -set VERSION [lindex $argv 3] -set INSTALLTYPE [lindex $argv 4] -set PKGTYPE [lindex $argv 5] -set NODEPS [lindex $argv 6] -set MYSQLPW [lindex $argv 7] -set MYSQLPORT [lindex $argv 8] -set DEBUG [lindex $argv 9] -set INSTALLDIR "/usr/local/MariaDB/Columnstore" -set IDIR [lindex $argv 10] -if { $IDIR != "" } { - set INSTALLDIR $IDIR -} -set USERNAME "root" -set UNM [lindex $argv 11] -if { $UNM != "" } { - set USERNAME $UNM -} - -if { $MYSQLPW == "none" } { - set MYSQLPW " " -} - -set BASH "/bin/bash " -#if { $DEBUG == "1" } { -# set BASH "/bin/bash -x " -#} - -set HOME "$env(HOME)" - -log_user $DEBUG -spawn -noecho /bin/bash -# -if { $PKGTYPE == "rpm" } { - set PKGERASE "rpm -e --nodeps \$(rpm -qa | grep '^infinidb')" - set PKGERASE1 "rpm -e --nodeps " - - set PKGINSTALL "rpm -ivh $NODEPS --force infinidb*$VERSION*" - set PKGUPGRADE "rpm -Uvh --noscripts infinidb*$VERSION*" -} else { - if { $PKGTYPE == "deb" } { - set PKGERASE "dpkg -P \$(dpkg --get-selections | grep '^infinidb')" - set PKGERASE1 "dpkg -P " - set PKGINSTALL "dpkg -i --force-confnew infinidb*$VERSION*" - set PKGUPGRADE "dpkg -i --force-confnew infinidb*$VERSION*" - } else { - send_user "Invalid Package Type of $PKGTYPE" - exit 1 - } -} - -# check and see if remote server has ssh keys setup, set PASSWORD if so -send_user " " -send "ssh $USERNAME@$SERVER 'time'\n" -set timeout 60 -expect { - "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit 1 } - "service not known" { send_user "FAILED: Invalid Host\n" ; exit 1 } - "authenticity" { send "yes\n" - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - "sys" { set PASSWORD "ssh" } - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } - timeout { send_user "ERROR: Timeout to host\n" ; exit 1 } -} -set timeout 30 -expect { - -re {[$#] } { } - "sys" { } -} -send_user "\n" -#BUG 5749 - SAS: didn't work on their system until I added the sleep 60 -sleep 60 - -if { $INSTALLTYPE == "initial" || $INSTALLTYPE == "uninstall" } { - # - # erase InfiniDB packages - # - send_user "Erase InfiniDB Packages on Module " - send "ssh $USERNAME@$SERVER '$PKGERASE ;$PKGERASE1 dummy'\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 120 - expect { - "package dummy" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; exit 1 } - "Permission denied, please try again" { send_user "ERROR: Invalid password\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } - send_user "\n" -} - -if { $INSTALLTYPE == "uninstall" } { exit 0 } - -# -# send the InfinIDB package -# -set timeout 30 -#expect -re {[$#] } -send_user "Copy new InfiniDB Packages to Module " -send "ssh $USERNAME@$SERVER 'rm -f /root/infinidb-*.$PKGTYPE'\n" -if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } -} -expect { - -re {[$#] } { } - "Connection refused" { send_user "ERROR: Connection refused\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No route to host" { send_user "ERROR: No route to host\n" ; exit 1 } -} -set timeout 30 -expect { - -re {[$#] } { } -} - -send "scp $HOME/infinidb*$VERSION* $USERNAME@$SERVER:.;$PKGERASE dummy\n" -if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } -} -set timeout 120 -expect { - "package dummy" { send_user "DONE" } - "directory" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } -} -send_user "\n" - -#sleep to make sure it's finished -sleep 5 -# -set timeout 30 -expect -re {[$#] } -if { $INSTALLTYPE == "initial"} { - # - # install package - # - send_user "Install InfinIDB Packages on Module " - send "ssh $USERNAME@$SERVER '$PKGINSTALL ;$PKGERASE dummy'\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 180 - expect { - "package dummy" { send_user "DONE" } - "error: Failed dependencies" { send_user "ERROR: Failed dependencies\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "needs" { send_user "ERROR: disk space issue\n" ; exit 1 } - "conflicts" { send_user "ERROR: File Conflict issue\n" ; exit 1 } - } - send_user "\n" - - set timeout 30 -} -#sleep to make sure it's finished -sleep 5 -# -if { $INSTALLTYPE == "initial"} { - # - # copy over InfiniDB config file - # - send_user "Copy InfiniDB Config file to Module " - send "scp $INSTALLDIR/etc/* $USERNAME@$SERVER:$INSTALLDIR/etc/.\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 30 - expect { - "directory" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - -re {[$#] } { send_user "DONE" } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } - send_user "\n" - #sleep to make sure it's finished - sleep 5 - # - # copy over custom OS tmp files - # - send_user "Copy Custom OS files to Module " - send "scp -r $INSTALLDIR/local/etc $USERNAME@$SERVER:$INSTALLDIR/local/.\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 30 - expect { - "directory" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - -re {[$#] } { send_user "DONE" } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } - send_user "\n" - #sleep to make sure it's finished - sleep 5 - # - # copy over InfiniDB OS files - # - send_user "Copy InfiniDB OS files to Module " - send "scp $INSTALLDIR/local/etc/$MODULE/* $USERNAME@$SERVER:$INSTALLDIR/local/.\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 30 - expect { - "directory" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit 1 } - -re {[$#] } { send_user "DONE" } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - } - send_user "\n" - #sleep to make sure it's finished - sleep 5 - # - # Start module installer to setup Custom OS files - # - send_user "Run Module Installer " - send "ssh $USERNAME@$SERVER '$BASH $INSTALLDIR/bin/module_installer.sh --module=um --port=$MYSQLPORT'\n" - if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } - } - set timeout 200 - expect { - "!!!Module" { send_user "DONE" } - "FAILED" { send_user "ERROR: missing OS file\n" ; exit 1 } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } - "No such file" { send_user "ERROR: File Not Found\n" ; exit 1 } - } - send_user "\n" - set timeout 30 - #expect -re {[$#] } -} - -# -# check InfiniDB syslog functionality -# - -send_user "Check InfiniDB system logging functionality " -send " \n" -send date\n -send "ssh $USERNAME@$SERVER '$BASH $INSTALLDIR/bin/syslogSetup.sh check'\n" -if { $PASSWORD != "ssh" } { - set timeout 30 - expect { - "word: " { send "$PASSWORD\n" } - "passphrase" { send "$PASSWORD\n" } - } -} -set timeout 30 -expect { - "Logging working" { send_user "DONE" } - timeout { send_user "DONE" } - "not working" { send_user "WARNING: InfiniDB system logging functionality not working" } - "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 } -} -send_user "\n" - -send_user "\nInstallation Successfully Completed on '$MODULE'\n" -exit 0 -# vim:ts=4 sw=4: - diff --git a/export/bin/xm_installer.sh b/export/bin/xm_installer.sh deleted file mode 100755 index 37d778e39..000000000 --- a/export/bin/xm_installer.sh +++ /dev/null @@ -1,173 +0,0 @@ -#!/usr/bin/expect -# -# $Id$ -# -# Install custom OS files on External Module -# Argument 1 - Remote Module Name -# Argument 2 - Remote Server Host Name or IP address -# Argument 3 - OAM Parent Host Name -# Argument 4 - Root Password of remote server -# Argument 5 - Debug flag 1 for on, 0 for off -set timeout 10 -set USERNAME root -set MODULE [lindex $argv 0] -set SERVER [lindex $argv 1] -set OAMHOSTNAME [lindex $argv 2] -set PASSWORD [lindex $argv 3] -set DEBUG [lindex $argv 4] -log_user $DEBUG -spawn -noecho /bin/bash -# -# Validate Calpont RPM is installed -# -send_user "\n" -send_user "Check Calpont RPM installed " -expect -re "# " -send "ssh $USERNAME@$SERVER 'rpm -iq calpont'\n" -expect { - -re "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit } - -re "service not known" { send_user "FAILED: Invalid Host\n" ; exit } - -re "authenticity" { send "yes\n" - expect { - -re "word: " { send "$PASSWORD\n" } - } - } - -re "word: " { send "$PASSWORD\n" } -} -expect { - -re "tools " { send_user "DONE" } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } - -re "package calpont" { send_user "ERROR: Calpont RPM not installed on External Module\n" ; exit -1 } -} -# -# Create mount directories -# -send_user "\n" -send_user "Create etc mount directory " -expect -re "# " -send "ssh $USERNAME@$SERVER 'mkdir /mnt/$OAMHOSTNAME\_etc'\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "# " { send_user "DONE" } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } - -re "mkdir: cannot" { send_user "DONE: already installed\n" - send_user "\nInstallation Successfully Completed on '$MODULE'\n"; exit 0 } -} -send_user "\n" -send_user "Create OAM mount directory " -send "ssh $USERNAME@$SERVER 'mkdir /mnt/$OAMHOSTNAME\_OAM'\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "# " { send_user "DONE" } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } - -re "mkdir: cannot" { send_user "DONE: already installed\n" - send_user "\nInstallation Successfully Completed on '$MODULE'\n"; exit 0 } -} -# -# copy over calpont OS files -# -send_user "\n" -send_user "Copy Mount File to Module " -send "scp /tmp/etc/$MODULE/*mount $USERNAME@$SERVER:/mnt/.\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "100%" { send_user "DONE" } - -re "scp" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } - -re "No such file or directory" { send_user "ERROR: Invalid file\n" ; exit -1 } -} -# -send_user "\n" -send_user "Copy Custom inittab to Module " -send "scp /tmp/etc/$MODULE/inittab.calpont $USERNAME@$SERVER:/tmp/.\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "100%" { send_user "DONE" } - -re "scp" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } - -re "No such file or directory" { send_user "ERROR: Invalid file\n" ; exit -1 } -} -# -send_user "\n" -send_user "Copy syslogd.conf to Module " -send "scp /etc/syslog.conf $USERNAME@$SERVER:/etc/.\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "100%" { send_user "DONE" } - -re "scp" { send_user "ERROR\n" ; - send_user "\n*** Installation ERROR\n" ; - exit -1 } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } - -re "No such file or directory" { send_user "ERROR: Invalid file\n" ; exit -1 } -} -# -# chmod of mount file -# -send_user "\n" -send_user "Run chmod on Mount File " -send "ssh $USERNAME@$SERVER 'chmod 755 /mnt/$OAMHOSTNAME\_*mount'\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "# " { send_user "DONE" } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } -} -# -# Update External Module inittab -# -send_user "\n" -send_user "Update inittab " -send "ssh $USERNAME@$SERVER 'cat /tmp/inittab.calpont >> /etc/inittab'\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "# " { send_user "DONE" } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } -} -# -# Restart External Module syslogd -# -send_user "\n" -send_user "Restart syslogd " -send "ssh $USERNAME@$SERVER 'service syslog restart'\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "# " { send_user "DONE" } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } -} -# -# startup ProcMon -# -send_user "\n" -send_user "Startup ProcMon " -send "ssh $USERNAME@$SERVER 'kill -HUP 1'\n" -expect -re "word: " -# send the password -send "$PASSWORD\n" -expect { - -re "# " { send_user "DONE" } - -re "Permission denied" { send_user "ERROR: Invalid password\n" ; exit -1 } -} -send_user "\n" -# -send_user "\nInstallation Successfully Completed on '$MODULE'\n" -exit 0 - diff --git a/export/local/module b/export/local/module deleted file mode 100755 index 1516f1d24..000000000 --- a/export/local/module +++ /dev/null @@ -1 +0,0 @@ -pm1 diff --git a/libtool b/libtool index 7356729f3..e25377724 100755 --- a/libtool +++ b/libtool @@ -331,7 +331,7 @@ link_all_deplibs=unknown sys_lib_search_path_spec=`echo "/lib64 /usr/lib64 /usr/local/lib64" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` # Run-time system search path for libraries -sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /usr/lib64/ctapi /usr/local/Calpont/lib /usr/local/Calpont/mysql/lib/mysql hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg /usr/lib64/mysql /usr/lib64/qt-3.3/lib /usr/lib/vmware-tools/lib32/libvmGuestLib.so /usr/lib/vmware-tools/lib64/libvmGuestLib.so /usr/lib/vmware-tools/lib32/libvmGuestLibJava.so /usr/lib/vmware-tools/lib64/libvmGuestLibJava.so /usr/lib/vmware-tools/lib32/libDeployPkg.so /usr/lib/vmware-tools/lib64/libDeployPkg.so /usr/lib64/xulrunner " +sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /usr/lib64/ctapi /usr/local/MariaDB/Columnstore/lib /usr/local/MariaDB/Columnstore/mysql/lib/mysql hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg /usr/lib64/mysql /usr/lib64/qt-3.3/lib /usr/lib/vmware-tools/lib32/libvmGuestLib.so /usr/lib/vmware-tools/lib64/libvmGuestLib.so /usr/lib/vmware-tools/lib32/libvmGuestLibJava.so /usr/lib/vmware-tools/lib64/libvmGuestLibJava.so /usr/lib/vmware-tools/lib32/libDeployPkg.so /usr/lib/vmware-tools/lib64/libDeployPkg.so /usr/lib64/xulrunner " # Fix the shell variable $srcfile for the compiler. fix_srcfile_path="" @@ -7550,7 +7550,7 @@ link_all_deplibs=unknown sys_lib_search_path_spec=`echo "/lib64 /usr/lib64 /usr/local/lib64" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` # Run-time system search path for libraries -sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /usr/lib64/ctapi /usr/local/Calpont/lib /usr/local/Calpont/mysql/lib/mysql hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg /usr/lib64/mysql /usr/lib64/qt-3.3/lib /usr/lib/vmware-tools/lib32/libvmGuestLib.so /usr/lib/vmware-tools/lib64/libvmGuestLib.so /usr/lib/vmware-tools/lib32/libvmGuestLibJava.so /usr/lib/vmware-tools/lib64/libvmGuestLibJava.so /usr/lib/vmware-tools/lib32/libDeployPkg.so /usr/lib/vmware-tools/lib64/libDeployPkg.so /usr/lib64/xulrunner " +sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /usr/lib64/ctapi /usr/local/MariaDB/Columnstore/lib /usr/local/MariaDB/Columnstore/mysql/lib/mysql hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg /usr/lib64/mysql /usr/lib64/qt-3.3/lib /usr/lib/vmware-tools/lib32/libvmGuestLib.so /usr/lib/vmware-tools/lib64/libvmGuestLib.so /usr/lib/vmware-tools/lib32/libvmGuestLibJava.so /usr/lib/vmware-tools/lib64/libvmGuestLibJava.so /usr/lib/vmware-tools/lib32/libDeployPkg.so /usr/lib/vmware-tools/lib64/libDeployPkg.so /usr/lib64/xulrunner " # Fix the shell variable $srcfile for the compiler. fix_srcfile_path="" diff --git a/libtool~ b/libtool~ new file mode 100755 index 000000000..7356729f3 --- /dev/null +++ b/libtool~ @@ -0,0 +1,7574 @@ +#! /bin/sh + +# libtoolT - Provide generalized library-building support services. +# Generated automatically by (GNU infinidb 4.6.1) +# NOTE: Changes made to this file will be lost: look at ltmain.sh. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 +# Free Software Foundation, Inc. +# +# This file is part of GNU Libtool: +# Originally by Gordon Matzigkeit , 1996 +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# A sed program that does not truncate output. +SED="/bin/sed" + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="/bin/sed -e 1s/^X//" + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# The names of the tagged configurations supported by this script. +available_tags=" CXX" + +# ### BEGIN LIBTOOL CONFIG + +# Libtool was configured on host srvhall03: + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# Whether or not to build shared libraries. +build_libtool_libs=yes + +# Whether or not to build static libraries. +build_old_libs=no + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=no + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=no + +# Whether or not to optimize for fast installation. +fast_install=yes + +# The host system. +host_alias= +host=x86_64-unknown-linux-gnu +host_os=linux-gnu + +# The build system. +build_alias= +build=x86_64-unknown-linux-gnu +build_os=linux-gnu + +# An echo program that does not interpret backslashes. +echo="echo" + +# The archiver. +AR="ar" +AR_FLAGS="cru" + +# A C compiler. +LTCC="gcc" + +# LTCC compiler flags. +LTCFLAGS="" + +# A language-specific compiler. +CC="gcc" + +# Is the compiler the GNU C compiler? +with_gcc=yes + +gcc_dir=`gcc -print-file-name=. | /bin/sed 's,/\.$,,'` +gcc_ver=`gcc -dumpversion` + +# An ERE matcher. +EGREP="grep -E" + +# The linker used to build libraries. +LD="/usr/bin/ld -m elf_x86_64" + +# Whether we need hard or soft links. +LN_S="ln -s" + +# A BSD-compatible nm program. +NM="/usr/bin/nm -B" + +# A symbol stripping program +STRIP="strip" + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=file + +# Used on cygwin: DLL creation program. +DLLTOOL="dlltool" + +# Used on cygwin: object dumper. +OBJDUMP="objdump" + +# Used on cygwin: assembler. +AS="as" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Object file suffix (normally "o"). +objext="o" + +# Old archive suffix (normally "a"). +libext="a" + +# Shared library suffix (normally ".so"). +shrext_cmds='.so' + +# Executable file suffix (normally ""). +exeext="" + +# Additional compiler flags for building library objects. +pic_flag=" -fPIC -DPIC" +pic_mode=default + +# What is the maximum length of a command? +max_cmd_len=32768 + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Must we lock files when doing compilation? +need_locks="no" + +# Do we need the lib prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Whether dlopen is supported. +dlopen_support=unknown + +# Whether dlopen of programs is supported. +dlopen_self=unknown + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=unknown + +# Compiler flag to prevent dynamic linking. +link_static_flag="" + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin" + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="\${wl}--export-dynamic" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec="" + +# Library versioning type. +version_type=linux + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec="\${libname}\${release}\${shared_ext}\$versuffix \${libname}\${release}\${shared_ext}\$major \$libname\${shared_ext}" + +# The coded name of the library, if different from the real name. +soname_spec="\${libname}\${release}\${shared_ext}\$major" + +# Commands used to build and install an old-style archive. +RANLIB="ranlib" +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib" +old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$oldlib" +old_postuninstall_cmds="" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build and install a shared archive. +archive_cmds="\$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" +archive_expsym_cmds="\$echo \\\"{ global:\\\" > \$output_objdir/\$libname.ver~ + cat \$export_symbols | sed -e \\\"s/\\\\(.*\\\\)/\\\\1;/\\\" >> \$output_objdir/\$libname.ver~ + \$echo \\\"local: *; };\\\" >> \$output_objdir/\$libname.ver~ + \$CC -shared \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-version-script \${wl}\$output_objdir/\$libname.ver -o \$lib" +postinstall_cmds="" +postuninstall_cmds="" + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds="" +module_expsym_cmds="" + +# Commands to strip libraries. +old_striplib="strip --strip-debug" +striplib="strip --strip-unneeded" + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=`echo "" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=`echo "" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps="" + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=`echo "" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd="\$MAGIC_CMD" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that forces no undefined symbols. +no_undefined_flag="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir" + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval="" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'" + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'" + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'" + +# This is the shared library runtime path variable. +runpath_var=LD_RUN_PATH + +# This is the shared library path variable. +shlibpath_var=LD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=no + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=yes + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist. +hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir" + +# If ld is used when linking, flag to hardcode $libdir into +# a binary during linking. This must work even if $libdir does +# not exist. +hardcode_libdir_flag_spec_ld="" + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator="" + +# Set to yes if using DIR/libNAME during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=no + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=no + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=unsupported + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=no + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=unknown + +# Compile-time system search path for libraries +sys_lib_search_path_spec=`echo "/lib64 /usr/lib64 /usr/local/lib64" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /usr/lib64/ctapi /usr/local/Calpont/lib /usr/local/Calpont/mysql/lib/mysql hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg /usr/lib64/mysql /usr/lib64/qt-3.3/lib /usr/lib/vmware-tools/lib32/libvmGuestLib.so /usr/lib/vmware-tools/lib64/libvmGuestLib.so /usr/lib/vmware-tools/lib32/libvmGuestLibJava.so /usr/lib/vmware-tools/lib64/libvmGuestLibJava.so /usr/lib/vmware-tools/lib32/libDeployPkg.so /usr/lib/vmware-tools/lib64/libDeployPkg.so /usr/lib64/xulrunner " + +# Fix the shell variable $srcfile for the compiler. +fix_srcfile_path="" + +# Set to yes if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_" + +# Symbols that must always be exported. +include_expsyms="" + +# ### END LIBTOOL CONFIG + +# ltmain.sh - Provide generalized library-building support services. +# NOTE: Changing this file will not affect anything until you rerun configure. +# +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 +# Free Software Foundation, Inc. +# Originally by Gordon Matzigkeit , 1996 +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +basename="s,^.*/,,g" + +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath="$0" + +# The name of this program: +progname=`echo "$progpath" | $SED $basename` +modename="$progname" + +# Global variables: +EXIT_SUCCESS=0 +EXIT_FAILURE=1 + +PROGRAM=ltmain.sh +PACKAGE=libtool +VERSION=1.5.22 +TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)" + +# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE). +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac +fi + +# Check that we have a working $echo. +if test "X$1" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift +elif test "X$1" = X--fallback-echo; then + # Avoid inline document here, it may be left over + : +elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then + # Yippee, $echo works! + : +else + # Restart under the correct shell, and then maybe $echo will work. + exec $SHELL "$progpath" --no-reexec ${1+"$@"} +fi + +if test "X$1" = X--fallback-echo; then + # used as fallback echo + shift + cat <&2 + $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit $EXIT_FAILURE +fi + +# Global variables. +mode=$default_mode +nonopt= +prev= +prevopt= +run= +show="$echo" +show_help= +execute_dlfiles= +duplicate_deps=no +preserve_args= +lo2o="s/\\.lo\$/.${objext}/" +o2lo="s/\\.${objext}\$/.lo/" +extracted_archives= +extracted_serial=0 + +##################################### +# Shell function definitions: +# This seems to be the best place for them + +# func_mktempdir [string] +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, STRING is the basename for that directory. +func_mktempdir () +{ + my_template="${TMPDIR-/tmp}/${1-$progname}" + + if test "$run" = ":"; then + # Return a directory name, but don't create it in dry-run mode + my_tmpdir="${my_template}-$$" + else + + # If mktemp works, use that first and foremost + my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + + if test ! -d "$my_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + my_tmpdir="${my_template}-${RANDOM-0}$$" + + save_mktempdir_umask=`umask` + umask 0077 + $mkdir "$my_tmpdir" + umask $save_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$my_tmpdir" || { + $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2 + exit $EXIT_FAILURE + } + fi + + $echo "X$my_tmpdir" | $Xsed +} + + +# func_win32_libid arg +# return the library type of file 'arg' +# +# Need a lot of goo to handle *both* DLLs and import libs +# Has to be a shell function in order to 'eat' the argument +# that is supplied when $file_magic_command is called. +func_win32_libid () +{ + win32_libid_type="unknown" + win32_fileres=`file -L $1 2>/dev/null` + case $win32_fileres in + *ar\ archive\ import\ library*) # definitely import + win32_libid_type="x86 archive import" + ;; + *ar\ archive*) # could be an import, or static + if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ + $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then + win32_nmres=`eval $NM -f posix -A $1 | \ + $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'` + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac + fi + ;; + *DLL*) + win32_libid_type="x86 DLL" + ;; + *executable*) # but shell scripts are "executable" too... + case $win32_fileres in + *MS\ Windows\ PE\ Intel*) + win32_libid_type="x86 DLL" + ;; + esac + ;; + esac + $echo $win32_libid_type +} + + +# func_infer_tag arg +# Infer tagged configuration to use if any are available and +# if one wasn't chosen via the "--tag" command line option. +# Only attempt this if the compiler in the base compile +# command doesn't match the default compiler. +# arg is usually of the form 'gcc ...' +func_infer_tag () +{ + if test -n "$available_tags" && test -z "$tagname"; then + CC_quoted= + for arg in $CC; do + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + CC_quoted="$CC_quoted $arg" + done + case $@ in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then + # Evaluate the configuration. + eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + CC_quoted= + for arg in $CC; do + # Double-quote args containing other shell metacharacters. + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + CC_quoted="$CC_quoted $arg" + done + case "$@ " in + " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + $echo "$modename: unable to infer tagged configuration" + $echo "$modename: specify a tag with \`--tag'" 1>&2 + exit $EXIT_FAILURE +# else +# $echo "$modename: using $tagname tagged configuration" + fi + ;; + esac + fi +} + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ + f_ex_an_ar_dir="$1"; shift + f_ex_an_ar_oldlib="$1" + + $show "(cd $f_ex_an_ar_dir && $AR x $f_ex_an_ar_oldlib)" + $run eval "(cd \$f_ex_an_ar_dir && $AR x \$f_ex_an_ar_oldlib)" || exit $? + if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then + : + else + $echo "$modename: ERROR: object name conflicts: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" 1>&2 + exit $EXIT_FAILURE + fi +} + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ + my_gentop="$1"; shift + my_oldlibs=${1+"$@"} + my_oldobjs="" + my_xlib="" + my_xabs="" + my_xdir="" + my_status="" + + $show "${rm}r $my_gentop" + $run ${rm}r "$my_gentop" + $show "$mkdir $my_gentop" + $run $mkdir "$my_gentop" + my_status=$? + if test "$my_status" -ne 0 && test ! -d "$my_gentop"; then + exit $my_status + fi + + for my_xlib in $my_oldlibs; do + # Extract the objects. + case $my_xlib in + [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; + *) my_xabs=`pwd`"/$my_xlib" ;; + esac + my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'` + my_xlib_u=$my_xlib + while :; do + case " $extracted_archives " in + *" $my_xlib_u "*) + extracted_serial=`expr $extracted_serial + 1` + my_xlib_u=lt$extracted_serial-$my_xlib ;; + *) break ;; + esac + done + extracted_archives="$extracted_archives $my_xlib_u" + my_xdir="$my_gentop/$my_xlib_u" + + $show "${rm}r $my_xdir" + $run ${rm}r "$my_xdir" + $show "$mkdir $my_xdir" + $run $mkdir "$my_xdir" + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then + exit $exit_status + fi + case $host in + *-darwin*) + $show "Extracting $my_xabs" + # Do not bother doing anything if just a dry run + if test -z "$run"; then + darwin_orig_dir=`pwd` + cd $my_xdir || exit $? + darwin_archive=$my_xabs + darwin_curdir=`pwd` + darwin_base_archive=`$echo "X$darwin_archive" | $Xsed -e 's%^.*/%%'` + darwin_arches=`lipo -info "$darwin_archive" 2>/dev/null | $EGREP Architectures 2>/dev/null` + if test -n "$darwin_arches"; then + darwin_arches=`echo "$darwin_arches" | $SED -e 's/.*are://'` + darwin_arch= + $show "$darwin_base_archive has multiple architectures $darwin_arches" + for darwin_arch in $darwin_arches ; do + mkdir -p "unfat-$$/${darwin_base_archive}-${darwin_arch}" + lipo -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" + cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" + func_extract_an_archive "`pwd`" "${darwin_base_archive}" + cd "$darwin_curdir" + $rm "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" + done # $darwin_arches + ## Okay now we have a bunch of thin objects, gotta fatten them up :) + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print| xargs basename | sort -u | $NL2SP` + darwin_file= + darwin_files= + for darwin_file in $darwin_filelist; do + darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP` + lipo -create -output "$darwin_file" $darwin_files + done # $darwin_filelist + ${rm}r unfat-$$ + cd "$darwin_orig_dir" + else + cd "$darwin_orig_dir" + func_extract_an_archive "$my_xdir" "$my_xabs" + fi # $darwin_arches + fi # $run + ;; + *) + func_extract_an_archive "$my_xdir" "$my_xabs" + ;; + esac + my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` + done + func_extract_archives_result="$my_oldobjs" +} +# End of Shell function definitions +##################################### + +# Darwin sucks +eval std_shrext=\"$shrext_cmds\" + +disable_libs=no + +# Parse our command line options once, thoroughly. +while test "$#" -gt 0 +do + arg="$1" + shift + + case $arg in + -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; + *) optarg= ;; + esac + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + execute_dlfiles) + execute_dlfiles="$execute_dlfiles $arg" + ;; + tag) + tagname="$arg" + preserve_args="${preserve_args}=$arg" + + # Check whether tagname contains only valid characters + case $tagname in + *[!-_A-Za-z0-9,/]*) + $echo "$progname: invalid tag name: $tagname" 1>&2 + exit $EXIT_FAILURE + ;; + esac + + case $tagname in + CC) + # Don't test for the "default" C tag, as we know, it's there, but + # not specially marked. + ;; + *) + if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$progpath" > /dev/null; then + taglist="$taglist $tagname" + # Evaluate the configuration. + eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $progpath`" + else + $echo "$progname: ignoring unknown tag $tagname" 1>&2 + fi + ;; + esac + ;; + *) + eval "$prev=\$arg" + ;; + esac + + prev= + prevopt= + continue + fi + + # Have we seen a non-optional argument yet? + case $arg in + --help) + show_help=yes + ;; + + --version) + $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" + $echo + $echo "Copyright (C) 2005 Free Software Foundation, Inc." + $echo "This is free software; see the source for copying conditions. There is NO" + $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." + exit $? + ;; + + --config) + ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $progpath + # Now print the configurations for the tags. + for tagname in $taglist; do + ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$progpath" + done + exit $? + ;; + + --debug) + $echo "$progname: enabling shell trace mode" + set -x + preserve_args="$preserve_args $arg" + ;; + + --dry-run | -n) + run=: + ;; + + --features) + $echo "host: $host" + if test "$build_libtool_libs" = yes; then + $echo "enable shared libraries" + else + $echo "disable shared libraries" + fi + if test "$build_old_libs" = yes; then + $echo "enable static libraries" + else + $echo "disable static libraries" + fi + exit $? + ;; + + --finish) mode="finish" ;; + + --mode) prevopt="--mode" prev=mode ;; + --mode=*) mode="$optarg" ;; + + --preserve-dup-deps) duplicate_deps="yes" ;; + + --quiet | --silent) + show=: + preserve_args="$preserve_args $arg" + ;; + + --tag) + prevopt="--tag" + prev=tag + preserve_args="$preserve_args --tag" + ;; + --tag=*) + set tag "$optarg" ${1+"$@"} + shift + prev=tag + preserve_args="$preserve_args --tag" + ;; + + -dlopen) + prevopt="-dlopen" + prev=execute_dlfiles + ;; + + -*) + $echo "$modename: unrecognized option \`$arg'" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + ;; + + *) + nonopt="$arg" + break + ;; + esac +done + +if test -n "$prevopt"; then + $echo "$modename: option \`$prevopt' requires an argument" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE +fi + +case $disable_libs in +no) + ;; +shared) + build_libtool_libs=no + build_old_libs=yes + ;; +static) + build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` + ;; +esac + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + +if test -z "$show_help"; then + + # Infer the operation mode. + if test -z "$mode"; then + $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2 + $echo "*** Future versions of Libtool will require --mode=MODE be specified." 1>&2 + case $nonopt in + *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*) + mode=link + for arg + do + case $arg in + -c) + mode=compile + break + ;; + esac + done + ;; + *db | *dbx | *strace | *truss) + mode=execute + ;; + *install*|cp|mv) + mode=install + ;; + *rm) + mode=uninstall + ;; + *) + # If we have no mode, but dlfiles were specified, then do execute mode. + test -n "$execute_dlfiles" && mode=execute + + # Just use the default operation mode. + if test -z "$mode"; then + if test -n "$nonopt"; then + $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 + else + $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 + fi + fi + ;; + esac + fi + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$execute_dlfiles" && test "$mode" != execute; then + $echo "$modename: unrecognized option \`-dlopen'" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help="$help" + help="Try \`$modename --help --mode=$mode' for more information." + + # These modes are in order of execution frequency so that they run quickly. + case $mode in + # libtool compile mode + compile) + modename="$modename: compile" + # Get the compilation command and the source file. + base_compile= + srcfile="$nonopt" # always keep a non-empty value in "srcfile" + suppress_opt=yes + suppress_output= + arg_mode=normal + libobj= + later= + + for arg + do + case $arg_mode in + arg ) + # do not "continue". Instead, add this to base_compile + lastarg="$arg" + arg_mode=normal + ;; + + target ) + libobj="$arg" + arg_mode=normal + continue + ;; + + normal ) + # Accept any command-line options. + case $arg in + -o) + if test -n "$libobj" ; then + $echo "$modename: you cannot specify \`-o' more than once" 1>&2 + exit $EXIT_FAILURE + fi + arg_mode=target + continue + ;; + + -static | -prefer-pic | -prefer-non-pic) + later="$later $arg" + continue + ;; + + -no-suppress) + suppress_opt=no + continue + ;; + + -Xcompiler) + arg_mode=arg # the next one goes into the "base_compile" arg list + continue # The current "srcfile" will either be retained or + ;; # replaced later. I would guess that would be a bug. + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` + lastarg= + save_ifs="$IFS"; IFS=',' + for arg in $args; do + IFS="$save_ifs" + + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + lastarg="$lastarg $arg" + done + IFS="$save_ifs" + lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` + + # Add the arguments to base_compile. + base_compile="$base_compile $lastarg" + continue + ;; + + * ) + # Accept the current argument as the source file. + # The previous "srcfile" becomes the current argument. + # + lastarg="$srcfile" + srcfile="$arg" + ;; + esac # case $arg + ;; + esac # case $arg_mode + + # Aesthetically quote the previous argument. + lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` + + case $lastarg in + # Double-quote args containing other shell metacharacters. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, and some SunOS ksh mistreat backslash-escaping + # in scan sets (worked around with variable expansion), + # and furthermore cannot handle '|' '&' '(' ')' in scan sets + # at all, so we specify them separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + lastarg="\"$lastarg\"" + ;; + esac + + base_compile="$base_compile $lastarg" + done # for arg + + case $arg_mode in + arg) + $echo "$modename: you must specify an argument for -Xcompile" + exit $EXIT_FAILURE + ;; + target) + $echo "$modename: you must specify a target with \`-o'" 1>&2 + exit $EXIT_FAILURE + ;; + *) + # Get the name of the library object. + [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + xform='[cCFSifmso]' + case $libobj in + *.ada) xform=ada ;; + *.adb) xform=adb ;; + *.ads) xform=ads ;; + *.asm) xform=asm ;; + *.c++) xform=c++ ;; + *.cc) xform=cc ;; + *.ii) xform=ii ;; + *.class) xform=class ;; + *.cpp) xform=cpp ;; + *.cxx) xform=cxx ;; + *.f90) xform=f90 ;; + *.for) xform=for ;; + *.java) xform=java ;; + *.obj) xform=obj ;; + esac + + libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` + + case $libobj in + *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; + *) + $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 + exit $EXIT_FAILURE + ;; + esac + + func_infer_tag $base_compile + + for arg in $later; do + case $arg in + -static) + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + + qlibobj=`$echo "X$libobj" | $Xsed -e "$sed_quote_subst"` + case $qlibobj in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + qlibobj="\"$qlibobj\"" ;; + esac + test "X$libobj" != "X$qlibobj" \ + && $echo "X$libobj" | grep '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && $echo "$modename: libobj name \`$libobj' may not contain shell special characters." + objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir= + else + xdir=$xdir/ + fi + lobj=${xdir}$objdir/$objname + + if test -z "$base_compile"; then + $echo "$modename: you must specify a compilation command" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Delete any leftover library objects. + if test "$build_old_libs" = yes; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + $run $rm $removelist + trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15 + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2*) + pic_mode=default + ;; + esac + if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test "$compiler_c_o" = no; then + output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} + lockfile="$output_obj.lock" + removelist="$removelist $output_obj $lockfile" + trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15 + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test "$need_locks" = yes; then + until $run ln "$progpath" "$lockfile" 2>/dev/null; do + $show "Waiting for $lockfile to be removed" + sleep 2 + done + elif test "$need_locks" = warn; then + if test -f "$lockfile"; then + $echo "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit $EXIT_FAILURE + fi + $echo "$srcfile" > "$lockfile" + fi + + if test -n "$fix_srcfile_path"; then + eval srcfile=\"$fix_srcfile_path\" + fi + qsrcfile=`$echo "X$srcfile" | $Xsed -e "$sed_quote_subst"` + case $qsrcfile in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + qsrcfile="\"$qsrcfile\"" ;; + esac + + $run $rm "$libobj" "${libobj}T" + + # Create a libtool object file (analogous to a ".la" file), + # but don't create it if we're doing a dry run. + test -z "$run" && cat > ${libobj}T </dev/null`" != "X$srcfile"; then + $echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then + $show "$mv $output_obj $lobj" + if $run $mv $output_obj $lobj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the PIC object to the libtool object file. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T </dev/null`" != "X$srcfile"; then + $echo "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support \`-c' and \`-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $run $rm $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed + if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then + $show "$mv $output_obj $obj" + if $run $mv $output_obj $obj; then : + else + error=$? + $run $rm $removelist + exit $error + fi + fi + + # Append the name of the non-PIC object the libtool object file. + # Only append if the libtool object file exists. + test -z "$run" && cat >> ${libobj}T <> ${libobj}T <&2 + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + -static) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=built + ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + esac + build_libtool_libs=no + build_old_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test "$#" -gt 0; do + arg="$1" + shift + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test + ;; + *) qarg=$arg ;; + esac + libtool_args="$libtool_args $qarg" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + compile_command="$compile_command @OUTPUT@" + finalize_command="$finalize_command @OUTPUT@" + ;; + esac + + case $prev in + dlfiles|dlprefiles) + if test "$preload" = no; then + # Add the symbol object into the linking commands. + compile_command="$compile_command @SYMFILE@" + finalize_command="$finalize_command @SYMFILE@" + preload=yes + fi + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test "$dlself" = no; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test "$prev" = dlprefiles; then + dlself=yes + elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test "$prev" = dlfiles; then + dlfiles="$dlfiles $arg" + else + dlprefiles="$dlprefiles $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols="$arg" + if test ! -f "$arg"; then + $echo "$modename: symbol file \`$arg' does not exist" + exit $EXIT_FAILURE + fi + prev= + continue + ;; + expsyms_regex) + export_symbols_regex="$arg" + prev= + continue + ;; + inst_prefix) + inst_prefix_dir="$arg" + prev= + continue + ;; + precious_regex) + precious_files_regex="$arg" + prev= + continue + ;; + release) + release="-$arg" + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat $save_arg` + do +# moreargs="$moreargs $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit $EXIT_FAILURE + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit $EXIT_FAILURE + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + done + else + $echo "$modename: link input file \`$save_arg' does not exist" + exit $EXIT_FAILURE + fi + arg=$save_arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit $EXIT_FAILURE + ;; + esac + if test "$prev" = rpath; then + case "$rpath " in + *" $arg "*) ;; + *) rpath="$rpath $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) xrpath="$xrpath $arg" ;; + esac + fi + prev= + continue + ;; + xcompiler) + compiler_flags="$compiler_flags $qarg" + prev= + compile_command="$compile_command $qarg" + finalize_command="$finalize_command $qarg" + continue + ;; + xlinker) + linker_flags="$linker_flags $qarg" + compiler_flags="$compiler_flags $wl$qarg" + prev= + compile_command="$compile_command $wl$qarg" + finalize_command="$finalize_command $wl$qarg" + continue + ;; + xcclinker) + linker_flags="$linker_flags $qarg" + compiler_flags="$compiler_flags $qarg" + prev= + compile_command="$compile_command $qarg" + finalize_command="$finalize_command $qarg" + continue + ;; + shrext) + shrext_cmds="$arg" + prev= + continue + ;; + darwin_framework|darwin_framework_skip) + test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + prev= + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi # test -n "$prev" + + prevarg="$arg" + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + compile_command="$compile_command $link_static_flag" + finalize_command="$finalize_command $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 + continue + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: more than one -exported-symbols argument is not allowed" + exit $EXIT_FAILURE + fi + if test "X$arg" = "X-export-symbols"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + -framework|-arch|-isysroot) + case " $CC " in + *" ${arg} ${1} "* | *" ${arg} ${1} "*) + prev=darwin_framework_skip ;; + *) compiler_flags="$compiler_flags $arg" + prev=darwin_framework ;; + esac + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + continue + ;; + + -inst-prefix-dir) + prev=inst_prefix + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix* | /*-*-irix*) + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + ;; + esac + continue + ;; + + -L*) + dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 + absdir="$dir" + notinst_path="$notinst_path $dir" + fi + dir="$absdir" + ;; + esac + case "$deplibs " in + *" -L$dir "*) ;; + *) + deplibs="$deplibs -L$dir" + lib_search_path="$lib_search_path $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; + *) dllsearchpath="$dllsearchpath:$dir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + *) dllsearchpath="$dllsearchpath:$testbindir";; + esac + ;; + esac + continue + ;; + + -l*) + if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*) + # These systems don't actually have a C or math library (as such) + continue + ;; + *-*-os2*) + # These systems don't actually have a C library (as such) + test "X$arg" = "X-lc" && continue + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + test "X$arg" = "X-lc" && continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C and math libraries are in the System framework + deplibs="$deplibs -framework System" + continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test "X$arg" = "X-lc" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test "X$arg" = "X-lc" && continue + ;; + esac + elif test "X$arg" = "X-lc_r"; then + case $host in + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac + fi + deplibs="$deplibs $arg" + continue + ;; + + # Tru64 UNIX uses -model [arg] to determine the layout of C++ + # classes, name mangling, and exception handling. + -model) + compile_command="$compile_command $arg" + compiler_flags="$compiler_flags $arg" + finalize_command="$finalize_command $arg" + prev=xcompiler + continue + ;; + + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) + compiler_flags="$compiler_flags $arg" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + continue + ;; + + -module) + module=yes + continue + ;; + + # -64, -mips[0-9] enable 64-bit mode on the SGI compiler + # -r[0-9][0-9]* specifies the processor on the SGI compiler + # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler + # +DA*, +DD* enable 64-bit mode on the HP compiler + # -q* pass through compiler args for the IBM compiler + # -m* pass through architecture-specific compiler args for GCC + # -m*, -t[45]*, -txscale* pass through architecture-specific + # compiler args for GCC + # -pg pass through profiling flag for GCC + # @file GCC response files + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \ + -t[45]*|-txscale*|@*) + + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + compiler_flags="$compiler_flags $arg" + continue + ;; + + -shrext) + prev=shrext + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + # The PATH hackery in wrapper scripts is required on Windows + # in order for the loader to find any dlls it needs. + $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 + $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 + fast_install=no + ;; + *) no_install=yes ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -o) prev=output ;; + + -precious-files-regex) + prev=precious_regex + continue + ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + $echo "$modename: only absolute run-paths are allowed" 1>&2 + exit $EXIT_FAILURE + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + continue + ;; + + -static | -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + -version-number) + prev=vinfo + vinfo_number=yes + continue + ;; + + -Wc,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` + arg= + save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Wl,*) + args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` + arg= + save_ifs="$IFS"; IFS=',' + for flag in $args; do + IFS="$save_ifs" + case $flag in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + flag="\"$flag\"" + ;; + esac + arg="$arg $wl$flag" + compiler_flags="$compiler_flags $wl$flag" + linker_flags="$linker_flags $flag" + done + IFS="$save_ifs" + arg=`$echo "X$arg" | $Xsed -e "s/^ //"` + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + -XCClinker) + prev=xcclinker + continue + ;; + + # Some other compiler flag. + -* | +*) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + + *.$objext) + # A standard object. + objs="$objs $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + pic_object= + non_pic_object= + + # Read the .lo file + # If there is no directory component, then add one. + case $arg in + */* | *\\*) . $arg ;; + *) . ./$arg ;; + esac + + if test -z "$pic_object" || \ + test -z "$non_pic_object" || + test "$pic_object" = none && \ + test "$non_pic_object" = none; then + $echo "$modename: cannot find name of object for \`$arg'" 1>&2 + exit $EXIT_FAILURE + fi + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + if test "$pic_object" != none; then + # Prepend the subdirectory the object is found in. + pic_object="$xdir$pic_object" + + if test "$prev" = dlfiles; then + if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + dlfiles="$dlfiles $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test "$prev" = dlprefiles; then + # Preload the old-style object. + dlprefiles="$dlprefiles $pic_object" + prev= + fi + + # A PIC object. + libobjs="$libobjs $pic_object" + arg="$pic_object" + fi + + # Non-PIC object. + if test "$non_pic_object" != none; then + # Prepend the subdirectory the object is found in. + non_pic_object="$xdir$non_pic_object" + + # A standard non-PIC object + non_pic_objects="$non_pic_objects $non_pic_object" + if test -z "$pic_object" || test "$pic_object" = none ; then + arg="$non_pic_object" + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object="$pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if test -z "$run"; then + $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 + exit $EXIT_FAILURE + else + # Dry-run case. + + # Extract subdirectory from the argument. + xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$arg"; then + xdir= + else + xdir="$xdir/" + fi + + pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` + non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` + libobjs="$libobjs $pic_object" + non_pic_objects="$non_pic_objects $non_pic_object" + fi + fi + ;; + + *.$libext) + # An archive. + deplibs="$deplibs $arg" + old_deplibs="$old_deplibs $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + if test "$prev" = dlfiles; then + # This library was specified with -dlopen. + dlfiles="$dlfiles $arg" + prev= + elif test "$prev" = dlprefiles; then + # The library was specified with -dlpreopen. + dlprefiles="$dlprefiles $arg" + prev= + else + deplibs="$deplibs $arg" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + ;; + esac # arg + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + done # argument parsing loop + + if test -n "$prev"; then + $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + compile_command="$compile_command $arg" + finalize_command="$finalize_command $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` + libobjs_save="$libobjs" + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` + if test "X$output_objdir" = "X$output"; then + output_objdir="$objdir" + else + output_objdir="$output_objdir/$objdir" + fi + # Create the object directory. + if test ! -d "$output_objdir"; then + $show "$mkdir $output_objdir" + $run $mkdir $output_objdir + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then + exit $exit_status + fi + fi + + # Determine the type of output + case $output in + "") + $echo "$modename: you must specify an output file" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + case $host in + *cygwin* | *mingw* | *pw32*) + # don't eliminate duplications in $postdeps and $predeps + duplicate_compiler_generated_deps=yes + ;; + *) + duplicate_compiler_generated_deps=$duplicate_deps + ;; + esac + specialdeplibs= + + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + if test "X$duplicate_deps" = "Xyes" ; then + case "$libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + fi + libs="$libs $deplib" + done + + if test "$linkmode" = lib; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + + # Compute libraries that are listed more than once in $predeps + # $postdeps and mark them as special (i.e., whose duplicates are + # not to be eliminated). + pre_post_deps= + if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then + for pre_post_dep in $predeps $postdeps; do + case "$pre_post_deps " in + *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; + esac + pre_post_deps="$pre_post_deps $pre_post_dep" + done + fi + pre_post_deps= + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + notinst_deplibs= # not-installed libtool libraries + case $linkmode in + lib) + passes="conv link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 + exit $EXIT_FAILURE + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=no + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + for pass in $passes; do + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan"; then + libs="$deplibs" + deplibs= + fi + if test "$linkmode" = prog; then + case $pass in + dlopen) libs="$dlfiles" ;; + dlpreopen) libs="$dlprefiles" ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test "$pass" = dlopen; then + # Collect dlpreopened libraries + save_deplibs="$deplibs" + deplibs= + fi + for deplib in $libs; do + lib= + found=no + case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + compiler_flags="$compiler_flags $deplib" + fi + continue + ;; + -l*) + if test "$linkmode" != lib && test "$linkmode" != prog; then + $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 + continue + fi + name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` + for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do + for search_ext in .la $std_shrext .so .a; do + # Search the libtool library + lib="$searchdir/lib${name}${search_ext}" + if test -f "$lib"; then + if test "$search_ext" = ".la"; then + found=yes + else + found=no + fi + break 2 + fi + done + done + if test "$found" != yes; then + # deplib doesn't seem to be a libtool library + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + else # deplib is a libtool library + # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, + # We need to do some special things here, and not later. + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + case " $predeps $postdeps " in + *" $deplib "*) + if (${SED} -e '2q' $lib | + grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + library_names= + old_library= + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + for l in $old_library $library_names; do + ll="$l" + done + if test "X$ll" = "X$old_library" ; then # only static version available + found=no + ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` + test "X$ladir" = "X$lib" && ladir="." + lib=$ladir/$old_library + if test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + fi + ;; + *) ;; + esac + fi + fi + ;; # -l + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test "$pass" = conv && continue + newdependency_libs="$deplib $newdependency_libs" + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + ;; + prog) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + continue + fi + if test "$pass" = scan; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` + ;; + *) + $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 + ;; + esac # linkmode + continue + ;; # -L + -R*) + if test "$pass" = link; then + dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) xrpath="$xrpath $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) lib="$deplib" ;; + *.$libext) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + valid_a_lib=no + case $deplibs_check_method in + match_pattern*) + set dummy $deplibs_check_method + match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` + if eval $echo \"$deplib\" 2>/dev/null \ + | $SED 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + valid_a_lib=yes + fi + ;; + pass_all) + valid_a_lib=yes + ;; + esac + if test "$valid_a_lib" != yes; then + $echo + $echo "*** Warning: Trying to link with static lib archive $deplib." + $echo "*** I have the capability to make that library automatically link in when" + $echo "*** you link to this library. But I can only do this if you have a" + $echo "*** shared version of the library, which you do not appear to have" + $echo "*** because the file extensions .$libext of this argument makes me believe" + $echo "*** that it is just a static archive that I should not used here." + else + $echo + $echo "*** Warning: Linking the shared library $output against the" + $echo "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + fi + continue + ;; + prog) + if test "$pass" != link; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac # linkmode + ;; # *.$libext + *.lo | *.$objext) + if test "$pass" = conv; then + deplibs="$deplib $deplibs" + elif test "$linkmode" = prog; then + if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + newdlprefiles="$newdlprefiles $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + newdlfiles="$newdlfiles $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=yes + continue + ;; + esac # case $deplib + if test "$found" = yes || test -f "$lib"; then : + else + $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2 + exit $EXIT_FAILURE + fi + + # Check to see that this really is a libtool archive. + if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit $EXIT_FAILURE + fi + + ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` + test "X$ladir" = "X$lib" && ladir="." + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + # If the library was installed with an old release of libtool, + # it will not redefine variables installed, or shouldnotlink + installed=yes + shouldnotlink=no + avoidtemprpath= + + + # Read the .la file + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + + if test "$linkmode,$pass" = "lib,link" || + test "$linkmode,$pass" = "prog,scan" || + { test "$linkmode" != prog && test "$linkmode" != lib; }; then + test -n "$dlopen" && dlfiles="$dlfiles $dlopen" + test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" + fi + + if test "$pass" = conv; then + # Only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit $EXIT_FAILURE + fi + # It is a libtool convenience library, so add in its objects. + convenience="$convenience $ladir/$objdir/$old_library" + old_convenience="$old_convenience $ladir/$objdir/$old_library" + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if test "X$duplicate_deps" = "Xyes" ; then + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + fi + tmp_libs="$tmp_libs $deplib" + done + elif test "$linkmode" != prog && test "$linkmode" != lib; then + $echo "$modename: \`$lib' is not a convenience library" 1>&2 + exit $EXIT_FAILURE + fi + continue + fi # $pass = conv + + + # Get the name of the library we link against. + linklib= + for l in $old_library $library_names; do + linklib="$l" + done + if test -z "$linklib"; then + $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 + exit $EXIT_FAILURE + fi + + # This library was specified with -dlopen. + if test "$pass" = dlopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 + exit $EXIT_FAILURE + fi + if test -z "$dlname" || + test "$dlopen_support" != yes || + test "$build_libtool_libs" = no; then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + dlprefiles="$dlprefiles $lib $dependency_libs" + else + newdlfiles="$newdlfiles $lib" + fi + continue + fi # $pass = dlopen + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 + $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 + abs_ladir="$ladir" + fi + ;; + esac + laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + + # Find the relevant object directory and library name. + if test "X$installed" = Xyes; then + if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + $echo "$modename: warning: library \`$lib' was moved." 1>&2 + dir="$ladir" + absdir="$abs_ladir" + libdir="$abs_ladir" + else + dir="$libdir" + absdir="$libdir" + fi + test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes + else + if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then + dir="$ladir" + absdir="$abs_ladir" + # Remove this search path later + notinst_path="$notinst_path $abs_ladir" + else + dir="$ladir/$objdir" + absdir="$abs_ladir/$objdir" + # Remove this search path later + notinst_path="$notinst_path $abs_ladir" + fi + fi # $installed = yes + name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + + # This library was specified with -dlpreopen. + if test "$pass" = dlpreopen; then + if test -z "$libdir"; then + $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 + exit $EXIT_FAILURE + fi + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + newdlprefiles="$newdlprefiles $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + newdlprefiles="$newdlprefiles $dir/$dlname" + else + newdlprefiles="$newdlprefiles $dir/$linklib" + fi + fi # $pass = dlpreopen + + if test -z "$libdir"; then + # Link the convenience library + if test "$linkmode" = lib; then + deplibs="$dir/$old_library $deplibs" + elif test "$linkmode,$pass" = "prog,link"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + + if test "$linkmode" = prog && test "$pass" != link; then + newlib_search_path="$newlib_search_path $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=no + if test "$link_all_deplibs" != no || test -z "$library_names" || + test "$build_libtool_libs" = no; then + linkalldeplibs=yes + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test + esac + # Need to link against all dependency_libs? + if test "$linkalldeplibs" = yes; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + if test "X$duplicate_deps" = "Xyes" ; then + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + fi + tmp_libs="$tmp_libs $deplib" + done # for deplib + continue + fi # $linkmode = prog... + + if test "$linkmode,$pass" = "prog,link"; then + if test -n "$library_names" && + { { test "$prefer_static_libs" = no || + test "$prefer_static_libs,$installed" = "built,yes"; } || + test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then + # Make sure the rpath contains only unique directories. + case "$temp_rpath " in + *" $dir "*) ;; + *" $absdir "*) ;; + *) temp_rpath="$temp_rpath $absdir" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi # $linkmode,$pass = prog,link... + + if test "$alldeplibs" = yes && + { test "$deplibs_check_method" = pass_all || + { test "$build_libtool_libs" = yes && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test "$use_static_libs" = built && test "$installed" = yes ; then + use_static_libs=no + fi + if test -n "$library_names" && + { test "$use_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + notinst_deplibs="$notinst_deplibs $lib" + need_relink=yes + fi + # This is a shared library + + # Warn about portability, can't link against -module's on + # some systems (darwin) + if test "$shouldnotlink" = yes && test "$pass" = link ; then + $echo + if test "$linkmode" = prog; then + $echo "*** Warning: Linking the executable $output against the loadable module" + else + $echo "*** Warning: Linking the shared library $output against the loadable module" + fi + $echo "*** $linklib is not portable!" + fi + if test "$linkmode" = lib && + test "$hardcode_into_libs" = yes; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) compile_rpath="$compile_rpath $absdir" + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + realname="$2" + shift; shift + libname=`eval \\$echo \"$libname_spec\"` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname="$dlname" + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin* | mingw*) + major=`expr $current - $age` + versuffix="-$major" + ;; + esac + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot="$soname" + soname=`$echo $soroot | ${SED} -e 's/^.*\///'` + newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a" + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + $show "extracting exported symbol list from \`$soname'" + save_ifs="$IFS"; IFS='~' + cmds=$extract_expsyms_cmds + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + $show "generating import library for \`$soname'" + save_ifs="$IFS"; IFS='~' + cmds=$old_archive_from_expsyms_cmds + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi # test -n "$old_archive_from_expsyms_cmds" + + if test "$linkmode" = prog || test "$mode" != relink; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test "$hardcode_direct" = no; then + add="$dir/$linklib" + case $host in + *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; + *-*-sysv4*uw2*) add_dir="-L$dir" ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir="-L$dir" ;; + *-*-darwin* ) + # if the lib is a module then we can not link against + # it, someone is ignoring the new warnings I added + if /usr/bin/file -L $add 2> /dev/null | + $EGREP ": [^:]* bundle" >/dev/null ; then + $echo "** Warning, lib $linklib is a module, not a shared library" + if test -z "$old_library" ; then + $echo + $echo "** And there doesn't seem to be a static archive available" + $echo "** The link will probably fail, sorry" + else + add="$dir/$old_library" + fi + fi + esac + elif test "$hardcode_minus_L" = no; then + case $host in + *-*-sunos*) add_shlibpath="$dir" ;; + esac + add_dir="-L$dir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = no; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + relink) + if test "$hardcode_direct" = yes; then + add="$dir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$dir" + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + add_dir="$add_dir -L$inst_prefix_dir$libdir" + ;; + esac + fi + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + add_shlibpath="$dir" + add="-l$name" + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test "$lib_linked" != yes; then + $echo "$modename: configuration error: unsupported hardcode properties" + exit $EXIT_FAILURE + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; + esac + fi + if test "$linkmode" = prog; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test "$hardcode_direct" != yes && \ + test "$hardcode_minus_L" != yes && \ + test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + fi + fi + fi + + if test "$linkmode" = prog || test "$mode" = relink; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test "$hardcode_direct" = yes; then + add="$libdir/$linklib" + elif test "$hardcode_minus_L" = yes; then + add_dir="-L$libdir" + add="-l$name" + elif test "$hardcode_shlibpath_var" = yes; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; + esac + add="-l$name" + elif test "$hardcode_automatic" = yes; then + if test -n "$inst_prefix_dir" && + test -f "$inst_prefix_dir$libdir/$linklib" ; then + add="$inst_prefix_dir$libdir/$linklib" + else + add="$libdir/$linklib" + fi + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir="-L$libdir" + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + add_dir="$add_dir -L$inst_prefix_dir$libdir" + ;; + esac + fi + add="-l$name" + fi + + if test "$linkmode" = prog; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test "$linkmode" = prog; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test "$hardcode_direct" != unsupported; then + test -n "$old_library" && linklib="$old_library" + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test "$build_libtool_libs" = yes; then + # Not a shared library + if test "$deplibs_check_method" != pass_all; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + $echo + $echo "*** Warning: This system can not link to static lib archive $lib." + $echo "*** I have the capability to make that library automatically link in when" + $echo "*** you link to this library. But I can only do this if you have a" + $echo "*** shared version of the library, which you do not appear to have." + if test "$module" = yes; then + $echo "*** But as you try to build a module library, libtool will still create " + $echo "*** a static module, that should work as long as the dlopening application" + $echo "*** is linked with the -dlopen flag to resolve symbols at runtime." + if test -z "$global_symbol_pipe"; then + $echo + $echo "*** However, this would only work if libtool was able to extract symbol" + $echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + $echo "*** not find such a program. So, this module is probably useless." + $echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + else + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi # link shared/static library? + + if test "$linkmode" = lib; then + if test -n "$dependency_libs" && + { test "$hardcode_into_libs" != yes || + test "$build_old_libs" = yes || + test "$link_static" = yes; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) xrpath="$xrpath $temp_xrpath";; + esac;; + *) temp_deplibs="$temp_deplibs $libdir";; + esac + done + dependency_libs="$temp_deplibs" + fi + + newlib_search_path="$newlib_search_path $absdir" + # Link against this library + test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + if test "X$duplicate_deps" = "Xyes" ; then + case "$tmp_libs " in + *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; + esac + fi + tmp_libs="$tmp_libs $deplib" + done + + if test "$link_all_deplibs" != no; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + case $deplib in + -L*) path="$deplib" ;; + *.la) + dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$deplib" && dir="." + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 + absdir="$dir" + fi + ;; + esac + if grep "^installed=no" $deplib > /dev/null; then + path="$absdir/$objdir" + else + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit $EXIT_FAILURE + fi + if test "$absdir" != "$libdir"; then + $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 + fi + path="$absdir" + fi + depdepl= + case $host in + *-*-darwin*) + # we do not want to link against static libs, + # but need to link against shared + eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names" ; then + for tmp in $deplibrary_names ; do + depdepl=$tmp + done + if test -f "$path/$depdepl" ; then + depdepl="$path/$depdepl" + fi + # do not add paths which are already there + case " $newlib_search_path " in + *" $path "*) ;; + *) newlib_search_path="$newlib_search_path $path";; + esac + fi + path="" + ;; + *) + path="-L$path" + ;; + esac + ;; + -l*) + case $host in + *-*-darwin*) + # Again, we only want to link against shared libraries + eval tmp_libs=`$echo "X$deplib" | $Xsed -e "s,^\-l,,"` + for tmp in $newlib_search_path ; do + if test -f "$tmp/lib$tmp_libs.dylib" ; then + eval depdepl="$tmp/lib$tmp_libs.dylib" + break + fi + done + path="" + ;; + *) continue ;; + esac + ;; + *) continue ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + case " $deplibs " in + *" $depdepl "*) ;; + *) deplibs="$depdepl $deplibs" ;; + esac + done + fi # link_all_deplibs != no + fi # linkmode = lib + done # for deplib in $libs + dependency_libs="$newdependency_libs" + if test "$pass" = dlpreopen; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test "$pass" != dlopen; then + if test "$pass" != conv; then + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) lib_search_path="$lib_search_path $dir" ;; + esac + done + newlib_search_path= + fi + + if test "$linkmode,$pass" != "prog,link"; then + vars="deplibs" + else + vars="compile_deplibs finalize_deplibs" + fi + for var in $vars dependency_libs; do + # Add libraries to $var in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + # FIXME: Pedantically, this is the right thing to do, so + # that some nasty dependency loop isn't accidentally + # broken: + #new_libs="$deplib $new_libs" + # Pragmatically, this seems to cause very few problems in + # practice: + case $deplib in + -L*) new_libs="$deplib $new_libs" ;; + -R*) ;; + *) + # And here is the reason: when a library appears more + # than once as an explicit dependence of a library, or + # is implicitly linked in more than once by the + # compiler, it is considered special, and multiple + # occurrences thereof are not removed. Compare this + # with having the same library being listed as a + # dependency of multiple other libraries: in this case, + # we know (pedantically, we assume) the library does not + # need to be listed more than once, so we keep only the + # last copy. This is not always right, but it is rare + # enough that we require users that really mean to play + # such unportable linking tricks to link the library + # using -Wl,-lname, so that libtool does not consider it + # for duplicate removal. + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + ;; + *) tmp_libs="$tmp_libs $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done # for var + fi + # Last step: remove runtime libs from dependency_libs + # (they stay in deplibs) + tmp_libs= + for i in $dependency_libs ; do + case " $predeps $postdeps $compiler_lib_search_path " in + *" $i "*) + i="" + ;; + esac + if test -n "$i" ; then + tmp_libs="$tmp_libs $i" + fi + done + dependency_libs=$tmp_libs + done # for pass + if test "$linkmode" = prog; then + dlfiles="$newdlfiles" + dlprefiles="$newdlprefiles" + fi + + case $linkmode in + oldlib) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info/-version-number' is ignored for archives" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 + fi + + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 + fi + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs="$output" + objs="$objs$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form `libNAME.la'. + case $outputname in + lib*) + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + ;; + *) + if test "$module" = no; then + $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + if test "$need_lib_prefix" != no; then + # Add the "lib" prefix for modules if required + name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + else + libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` + fi + ;; + esac + + if test -n "$objs"; then + if test "$deplibs_check_method" != pass_all; then + $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 + exit $EXIT_FAILURE + else + $echo + $echo "*** Warning: Linking the shared library $output against the non-libtool" + $echo "*** objects $objs is not portable!" + libobjs="$libobjs $objs" + fi + fi + + if test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 + fi + + set dummy $rpath + if test "$#" -gt 2; then + $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 + fi + install_libdir="$2" + + oldlibs= + if test -z "$rpath"; then + if test "$build_libtool_libs" = yes; then + # Building a libtool convenience library. + # Some compilers have problems with a `.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info/-version-number' is ignored for convenience libraries" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 + fi + else + + # Parse the version information argument. + save_ifs="$IFS"; IFS=':' + set dummy $vinfo 0 0 0 + IFS="$save_ifs" + + if test -n "$8"; then + $echo "$modename: too many parameters to \`-version-info'" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # convert absolute version numbers to libtool ages + # this retains compatibility with .la files and attempts + # to make the code below a bit more comprehensible + + case $vinfo_number in + yes) + number_major="$2" + number_minor="$3" + number_revision="$4" + # + # There are really only two kinds -- those that + # use the current revision as the major version + # and those that subtract age and use age as + # a minor version. But, then there is irix + # which has an extra 1 added just for fun + # + case $version_type in + darwin|linux|osf|windows|none) + current=`expr $number_major + $number_minor` + age="$number_minor" + revision="$number_revision" + ;; + freebsd-aout|freebsd-elf|sunos) + current="$number_major" + revision="$number_minor" + age="0" + ;; + irix|nonstopux) + current=`expr $number_major + $number_minor - 1` + age="$number_minor" + revision="$number_minor" + ;; + esac + ;; + no) + current="$2" + revision="$3" + age="$4" + ;; + esac + + # Check that each of the things are valid numbers. + case $current in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + $echo "$modename: CURRENT \`$current' must be a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit $EXIT_FAILURE + ;; + esac + + case $revision in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + $echo "$modename: REVISION \`$revision' must be a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit $EXIT_FAILURE + ;; + esac + + case $age in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + $echo "$modename: AGE \`$age' must be a nonnegative integer" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit $EXIT_FAILURE + ;; + esac + + if test "$age" -gt "$current"; then + $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 + $echo "$modename: \`$vinfo' is not valid version information" 1>&2 + exit $EXIT_FAILURE + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + # Darwin ld doesn't like 0 for these options... + minor_current=`expr $current + 1` + verstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" + ;; + + freebsd-aout) + major=".$current" + versuffix=".$current.$revision"; + ;; + + freebsd-elf) + major=".$current" + versuffix=".$current"; + ;; + + irix | nonstopux) + major=`expr $current - $age + 1` + + case $version_type in + nonstopux) verstring_prefix=nonstopux ;; + *) verstring_prefix=sgi ;; + esac + verstring="$verstring_prefix$major.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test "$loop" -ne 0; do + iface=`expr $revision - $loop` + loop=`expr $loop - 1` + verstring="$verstring_prefix$major.$iface:$verstring" + done + + # Before this point, $major must not contain `.'. + major=.$major + versuffix="$major.$revision" + ;; + + linux) + major=.`expr $current - $age` + versuffix="$major.$age.$revision" + ;; + + osf) + major=.`expr $current - $age` + versuffix=".$current.$age.$revision" + verstring="$current.$age.$revision" + + # Add in all the interfaces that we are compatible with. + loop=$age + while test "$loop" -ne 0; do + iface=`expr $current - $loop` + loop=`expr $loop - 1` + verstring="$verstring:${iface}.0" + done + + # Make executables depend on our current version. + verstring="$verstring:${current}.0" + ;; + + sunos) + major=".$current" + versuffix=".$current.$revision" + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 filesystems. + major=`expr $current - $age` + versuffix="-$major" + ;; + + *) + $echo "$modename: unknown library version type \`$version_type'" 1>&2 + $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 + exit $EXIT_FAILURE + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + case $version_type in + darwin) + # we can't check for "0.0" in archive_cmds due to quoting + # problems, so we reset it completely + verstring= + ;; + *) + verstring="0.0" + ;; + esac + if test "$need_version" = no; then + versuffix= + else + versuffix=".0.0" + fi + fi + + # Remove version info from name if versioning should be avoided + if test "$avoid_version" = yes && test "$need_version" = no; then + major= + versuffix= + verstring="" + fi + + # Check to see if the archive will have undefined symbols. + if test "$allow_undefined" = yes; then + if test "$allow_undefined_flag" = unsupported; then + $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 + build_libtool_libs=no + build_old_libs=yes + fi + else + # Don't allow undefined symbols. + allow_undefined_flag="$no_undefined_flag" + fi + fi + + if test "$mode" != relink; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`$echo "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) + if test "X$precious_files_regex" != "X"; then + if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi + fi + removelist="$removelist $p" + ;; + *) ;; + esac + done + if test -n "$removelist"; then + $show "${rm}r $removelist" + $run ${rm}r $removelist + fi + fi + + # Now set the variables for building old libraries. + if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + oldlibs="$oldlibs $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. +# for path in $notinst_path; do +# lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"` +# deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"` +# dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"` +# done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + temp_xrpath="$temp_xrpath -R$libdir" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles="$dlfiles" + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) dlfiles="$dlfiles $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles="$dlprefiles" + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) dlprefiles="$dlprefiles $lib" ;; + esac + done + + if test "$build_libtool_libs" = yes; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + deplibs="$deplibs -framework System" + ;; + *-*-netbsd*) + # Don't link with libc until the a.out ld.so is fixed. + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test "$build_libtool_need_lc" = "yes"; then + deplibs="$deplibs -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release="" + versuffix="" + major="" + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behavior. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $rm conftest.c + cat > conftest.c </dev/null` + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null \ + | grep " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib="$potent_lib" + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; + *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ + | ${SED} 10q \ + | $EGREP "$file_magic_regex" > /dev/null; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break 2 + fi + done + done + fi + if test -n "$a_deplib" ; then + droppeddeps=yes + $echo + $echo "*** Warning: linker path does not have real file for library $a_deplib." + $echo "*** I have the capability to make that library automatically link in when" + $echo "*** you link to this library. But I can only do this if you have a" + $echo "*** shared version of the library, which you do not appear to have" + $echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib" ; then + $echo "*** with $libname but no candidates were found. (...for file magic test)" + else + $echo "*** with $libname and none of the candidates passed a file format test" + $echo "*** using a file magic. Last file checked: $potlib" + fi + fi + else + # Add a -L argument. + newdeplibs="$newdeplibs $a_deplib" + fi + done # Gone through all deplibs. + ;; + match_pattern*) + set dummy $deplibs_check_method + match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` + for a_deplib in $deplibs; do + name=`expr $a_deplib : '-l\(.*\)'` + # If $name is empty we are operating on a -L argument. + if test -n "$name" && test "$name" != "0"; then + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + case " $predeps $postdeps " in + *" $a_deplib "*) + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + ;; + esac + fi + if test -n "$a_deplib" ; then + libname=`eval \\$echo \"$libname_spec\"` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + potlib="$potent_lib" # see symlink-check above in file_magic test + if eval $echo \"$potent_lib\" 2>/dev/null \ + | ${SED} 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + newdeplibs="$newdeplibs $a_deplib" + a_deplib="" + break 2 + fi + done + done + fi + if test -n "$a_deplib" ; then + droppeddeps=yes + $echo + $echo "*** Warning: linker path does not have real file for library $a_deplib." + $echo "*** I have the capability to make that library automatically link in when" + $echo "*** you link to this library. But I can only do this if you have a" + $echo "*** shared version of the library, which you do not appear to have" + $echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib" ; then + $echo "*** with $libname but no candidates were found. (...for regex pattern test)" + else + $echo "*** with $libname and none of the candidates passed a file format test" + $echo "*** using a regex pattern. Last file checked: $potlib" + fi + fi + else + # Add a -L argument. + newdeplibs="$newdeplibs $a_deplib" + fi + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs="" + tmp_deplibs=`$echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ + -e 's/ -[LR][^ ]*//g'` + if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + for i in $predeps $postdeps ; do + # can't use Xsed below, because $i might contain '/' + tmp_deplibs=`$echo "X $tmp_deplibs" | ${SED} -e "1s,^X,," -e "s,$i,,"` + done + fi + if $echo "X $tmp_deplibs" | $Xsed -e 's/[ ]//g' \ + | grep . >/dev/null; then + $echo + if test "X$deplibs_check_method" = "Xnone"; then + $echo "*** Warning: inter-library dependencies are not supported in this platform." + else + $echo "*** Warning: inter-library dependencies are not known to be supported." + fi + $echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + fi + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'` + ;; + esac + + if test "$droppeddeps" = yes; then + if test "$module" = yes; then + $echo + $echo "*** Warning: libtool could not satisfy all declared inter-library" + $echo "*** dependencies of module $libname. Therefore, libtool will create" + $echo "*** a static module, that should work as long as the dlopening" + $echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + $echo + $echo "*** However, this would only work if libtool was able to extract symbol" + $echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + $echo "*** not find such a program. So, this module is probably useless." + $echo "*** \`nm' from GNU binutils and a full rebuild may help." + fi + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + $echo "*** The inter-library dependencies that have been dropped here will be" + $echo "*** automatically added whenever a program is linked with this library" + $echo "*** or is declared to -dlopen it." + + if test "$allow_undefined" = no; then + $echo + $echo "*** Since this library must not contain undefined symbols," + $echo "*** because either the platform does not support them or" + $echo "*** it was explicitly requested with -no-undefined," + $echo "*** libtool will only create a static version of it." + if test "$build_old_libs" = no; then + oldlibs="$output_objdir/$libname.$libext" + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + new_libs="$new_libs -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$new_libs $deplib" ;; + esac + ;; + *) new_libs="$new_libs $deplib" ;; + esac + done + deplibs="$new_libs" + + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test "$build_libtool_libs" = yes; then + if test "$hardcode_into_libs" = yes; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath="$finalize_rpath" + test "$mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + dep_rpath="$dep_rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + if test -n "$hardcode_libdir_flag_spec_ld"; then + eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" + else + eval dep_rpath=\"$hardcode_libdir_flag_spec\" + fi + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath="$finalize_shlibpath" + test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval shared_ext=\"$shrext_cmds\" + eval library_names=\"$library_names_spec\" + set dummy $library_names + realname="$2" + shift; shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname="$realname" + fi + if test -z "$dlname"; then + dlname=$soname + fi + + lib="$output_objdir/$realname" + linknames= + for link + do + linknames="$linknames $link" + done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then + $show "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $run $rm $export_symbols + cmds=$export_symbols_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + if len=`expr "X$cmd" : ".*"` && + test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then + $show "$cmd" + $run eval "$cmd" || exit $? + skipped_export=false + else + # The command line is too long to execute in one step. + $show "using reloadable object file for export list..." + skipped_export=: + # Break out early, otherwise skipped_export may be + # set to false by a later but shorter cmd. + break + fi + done + IFS="$save_ifs" + if test -n "$export_symbols_regex"; then + $show "$EGREP -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" + $run eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + $show "$mv \"${export_symbols}T\" \"$export_symbols\"" + $run eval '$mv "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' + fi + + tmp_deplibs= + for test_deplib in $deplibs; do + case " $convenience " in + *" $test_deplib "*) ;; + *) + tmp_deplibs="$tmp_deplibs $test_deplib" + ;; + esac + done + deplibs="$tmp_deplibs" + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + else + gentop="$output_objdir/${outputname}x" + generated="$generated $gentop" + + func_extract_archives $gentop $convenience + libobjs="$libobjs $func_extract_archives_result" + fi + fi + + if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + linker_flags="$linker_flags $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test "$mode" = relink; then + $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test "$module" = yes && test -n "$module_cmds" ; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + eval test_cmds=\"$module_expsym_cmds\" + cmds=$module_expsym_cmds + else + eval test_cmds=\"$module_cmds\" + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds + else + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds + fi + fi + + if test "X$skipped_export" != "X:" && + len=`expr "X$test_cmds" : ".*" 2>/dev/null` && + test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then + : + else + # The command line is too long to link in one step, link piecewise. + $echo "creating reloadable object files..." + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + output_la=`$echo "X$output" | $Xsed -e "$basename"` + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + delfiles= + last_robj= + k=1 + output=$output_objdir/$output_la-${k}.$objext + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + eval test_cmds=\"$reload_cmds $objlist $last_robj\" + if test "X$objlist" = X || + { len=`expr "X$test_cmds" : ".*" 2>/dev/null` && + test "$len" -le "$max_cmd_len"; }; then + objlist="$objlist $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test "$k" -eq 1 ; then + # The first file doesn't have a previous command to add. + eval concat_cmds=\"$reload_cmds $objlist $last_robj\" + else + # All subsequent reloadable object files will link in + # the last one created. + eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" + fi + last_robj=$output_objdir/$output_la-${k}.$objext + k=`expr $k + 1` + output=$output_objdir/$output_la-${k}.$objext + objlist=$obj + len=1 + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" + + if ${skipped_export-false}; then + $show "generating symbol list for \`$libname.la'" + export_symbols="$output_objdir/$libname.exp" + $run $rm $export_symbols + libobjs=$output + # Append the command to create the export file. + eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\" + fi + + # Set up a command to remove the reloadable object files + # after they are used. + i=0 + while test "$i" -lt "$k" + do + i=`expr $i + 1` + delfiles="$delfiles $output_objdir/$output_la-${i}.$objext" + done + + $echo "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + save_ifs="$IFS"; IFS='~' + for cmd in $concat_cmds; do + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test "$module" = yes && test -n "$module_cmds" ; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds + fi + fi + + # Append the command to remove the reloadable object files + # to the just-reset $cmds. + eval cmds=\"\$cmds~\$rm $delfiles\" + fi + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test "$mode" = relink; then + $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)' + fi + + exit $lt_exit + } + done + IFS="$save_ifs" + + # Restore the uninstalled library and exit + if test "$mode" = relink; then + $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? + + if test -n "$convenience"; then + if test -z "$whole_archive_flag_spec"; then + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + fi + fi + + exit $EXIT_SUCCESS + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" + $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test "$module" = yes || test "$export_dynamic" = yes; then + # On all known operating systems, these are identical. + dlname="$soname" + fi + fi + ;; + + obj) + if test -n "$deplibs"; then + $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 + fi + + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 + fi + + if test -n "$rpath"; then + $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 + fi + + if test -n "$xrpath"; then + $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 + fi + + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 + fi + + case $output in + *.lo) + if test -n "$objs$old_deplibs"; then + $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 + exit $EXIT_FAILURE + fi + libobj="$output" + obj=`$echo "X$output" | $Xsed -e "$lo2o"` + ;; + *) + libobj= + obj="$output" + ;; + esac + + # Delete the old objects. + $run $rm $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # reload_cmds runs $LD directly, so let us get rid of + # -Wl from whole_archive_flag_spec and hope we can get by with + # turning comma into space.. + wl= + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" + reload_conv_objs=$reload_objs\ `$echo "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'` + else + gentop="$output_objdir/${obj}x" + generated="$generated $gentop" + + func_extract_archives $gentop $convenience + reload_conv_objs="$reload_objs $func_extract_archives_result" + fi + fi + + # Create the old-style object. + reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + + output="$obj" + cmds=$reload_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit $EXIT_SUCCESS + fi + + if test "$build_libtool_libs" != yes; then + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $run eval "echo timestamp > $libobj" || exit $? + exit $EXIT_SUCCESS + fi + + if test -n "$pic_flag" || test "$pic_mode" != default; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output="$libobj" + cmds=$reload_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + fi + + if test -n "$gentop"; then + $show "${rm}r $gentop" + $run ${rm}r $gentop + fi + + exit $EXIT_SUCCESS + ;; + + prog) + case $host in + *cygwin*) output=`$echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;; + esac + if test -n "$vinfo"; then + $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 + fi + + if test -n "$release"; then + $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 + fi + + if test "$preload" = yes; then + if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && + test "$dlopen_self_static" = unknown; then + $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." + fi + fi + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'` + finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'` + ;; + esac + + case $host in + *darwin*) + # Don't allow lazy linking, it breaks C++ global constructors + if test "$tagname" = CXX ; then + compile_command="$compile_command ${wl}-bind_at_load" + finalize_command="$finalize_command ${wl}-bind_at_load" + fi + ;; + esac + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + new_libs="$new_libs -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$new_libs $deplib" ;; + esac + ;; + *) new_libs="$new_libs $deplib" ;; + esac + done + compile_deplibs="$new_libs" + + + compile_command="$compile_command $compile_deplibs" + finalize_command="$finalize_command $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) finalize_rpath="$finalize_rpath $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) perm_rpath="$perm_rpath $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + testbindir=`$echo "X$libdir" | $Xsed -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; + *) dllsearchpath="$dllsearchpath:$libdir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + *) dllsearchpath="$dllsearchpath:$testbindir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath="$rpath" + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs="$libdir" + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + rpath="$rpath $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir="$hardcode_libdirs" + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath="$rpath" + + if test -n "$libobjs" && test "$build_old_libs" = yes; then + # Transform all the library objects into standard objects. + compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + fi + + dlsyms= + if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + dlsyms="${outputname}S.c" + else + $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 + fi + fi + + if test -n "$dlsyms"; then + case $dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist="$output_objdir/${outputname}.nm" + + $show "$rm $nlist ${nlist}S ${nlist}T" + $run $rm "$nlist" "${nlist}S" "${nlist}T" + + # Parse the name list into a source file. + $show "creating $output_objdir/$dlsyms" + + test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ +/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ +/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +/* Prevent the only kind of declaration conflicts we can make. */ +#define lt_preloaded_symbols some_other_symbol + +/* External symbol declarations for the compiler. */\ +" + + if test "$dlself" = yes; then + $show "generating symbol list for \`$output'" + + test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` + for arg in $progfiles; do + $show "extracting global C symbols from \`$arg'" + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $run eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + if test -n "$export_symbols_regex"; then + $run eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' + $run eval '$mv "$nlist"T "$nlist"' + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols="$output_objdir/$outputname.exp" + $run $rm $export_symbols + $run eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* ) + $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + $run eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac + else + $run eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + $run eval 'grep -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + $run eval 'mv "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* ) + $run eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + $run eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac + fi + fi + + for arg in $dlprefiles; do + $show "extracting global C symbols from \`$arg'" + name=`$echo "$arg" | ${SED} -e 's%^.*/%%'` + $run eval '$echo ": $name " >> "$nlist"' + $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" + done + + if test -z "$run"; then + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $mv "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if grep -v "^: " < "$nlist" | + if sort -k 3 /dev/null 2>&1; then + sort -k 3 + else + sort +2 + fi | + uniq > "$nlist"S; then + : + else + grep -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' + else + $echo '/* NONE */' >> "$output_objdir/$dlsyms" + fi + + $echo >> "$output_objdir/$dlsyms" "\ + +#undef lt_preloaded_symbols + +#if defined (__STDC__) && __STDC__ +# define lt_ptr void * +#else +# define lt_ptr char * +# define const +#endif + +/* The mapping between symbol names and symbols. */ +" + + case $host in + *cygwin* | *mingw* ) + $echo >> "$output_objdir/$dlsyms" "\ +/* DATA imports from DLLs on WIN32 can't be const, because + runtime relocations are performed -- see ld's documentation + on pseudo-relocs */ +struct { +" + ;; + * ) + $echo >> "$output_objdir/$dlsyms" "\ +const struct { +" + ;; + esac + + + $echo >> "$output_objdir/$dlsyms" "\ + const char *name; + lt_ptr address; +} +lt_preloaded_symbols[] = +{\ +" + + eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms" + + $echo >> "$output_objdir/$dlsyms" "\ + {0, (lt_ptr) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + fi + + pic_flag_for_symtable= + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; + esac;; + *-*-hpux*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag";; + esac + esac + + # Now compile the dynamic symbol file. + $show "(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" + $run eval '(cd $output_objdir && $LTCC $LTCFLAGS -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + + # Clean up the generated files. + $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" + $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" + + # Transform the symbol file into the correct name. + case $host in + *cygwin* | *mingw* ) + if test -f "$output_objdir/${outputname}.def" ; then + compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP` + finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}.def $output_objdir/${outputname}S.${objext}%" | $NL2SP` + else + compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP` + finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP` + fi + ;; + * ) + compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP` + finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%" | $NL2SP` + ;; + esac + ;; + *) + $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 + exit $EXIT_FAILURE + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP` + finalize_command=`$echo "X$finalize_command" | $SP2NL | $Xsed -e "s% @SYMFILE@%%" | $NL2SP` + fi + + if test "$need_relink" = no || test "$build_libtool_libs" != yes; then + # Replace the output file specification. + compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$output"'%g' | $NL2SP` + link_command="$compile_command$compile_rpath" + + # We have no uninstalled library dependencies, so finalize right now. + $show "$link_command" + $run eval "$link_command" + exit_status=$? + + # Delete the generated files. + if test -n "$dlsyms"; then + $show "$rm $output_objdir/${outputname}S.${objext}" + $run $rm "$output_objdir/${outputname}S.${objext}" + fi + + exit $exit_status + fi + + if test -n "$shlibpath_var"; then + # We should set the shlibpath_var + rpath= + for dir in $temp_rpath; do + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) + # Absolute path. + rpath="$rpath$dir:" + ;; + *) + # Relative path: add a thisdir entry. + rpath="$rpath\$thisdir/$dir:" + ;; + esac + done + temp_rpath="$rpath" + fi + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + rpath="$rpath$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + rpath="$rpath$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test "$no_install" = yes; then + # We don't need to create a wrapper script. + link_command="$compile_var$compile_command$compile_rpath" + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $run $rm $output + # Link the executable and exit + $show "$link_command" + $run eval "$link_command" || exit $? + exit $EXIT_SUCCESS + fi + + if test "$hardcode_action" = relink; then + # Fast installation is not supported + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + + $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 + $echo "$modename: \`$output' will be relinked during installation" 1>&2 + else + if test "$fast_install" != no; then + link_command="$finalize_var$compile_command$finalize_rpath" + if test "$fast_install" = yes; then + relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $SP2NL | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g' | $NL2SP` + else + # fast_install is set to needless + relink_command= + fi + else + link_command="$compile_var$compile_command$compile_rpath" + relink_command="$finalize_var$finalize_command$finalize_rpath" + fi + fi + + # Replace the output file specification. + link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname + + $show "$link_command" + $run eval "$link_command" || exit $? + + # Now create the wrapper script. + $show "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + relink_command="(cd `pwd`; $relink_command)" + relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP` + fi + + # Quote $echo for shipping. + if test "X$echo" = "X$SHELL $progpath --fallback-echo"; then + case $progpath in + [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $progpath --fallback-echo";; + *) qecho="$SHELL `pwd`/$progpath --fallback-echo";; + esac + qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` + else + qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` + fi + + # Only actually do things if our run command is non-null. + if test -z "$run"; then + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) output=`$echo $output|${SED} 's,.exe$,,'` ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) + exeext=.exe + outputname=`$echo $outputname|${SED} 's,.exe$,,'` ;; + *) exeext= ;; + esac + case $host in + *cygwin* | *mingw* ) + output_name=`basename $output` + output_path=`dirname $output` + cwrappersource="$output_path/$objdir/lt-$output_name.c" + cwrapper="$output_path/$output_name.exe" + $rm $cwrappersource $cwrapper + trap "$rm $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 + + cat > $cwrappersource <> $cwrappersource<<"EOF" +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#if defined(PATH_MAX) +# define LT_PATHMAX PATH_MAX +#elif defined(MAXPATHLEN) +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ + defined (__OS2__) +# define HAVE_DOS_BASED_FILE_SYSTEM +# ifndef DIR_SEPARATOR_2 +# define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +# define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ + (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) +#endif /* DIR_SEPARATOR_2 */ + +#ifndef PATH_SEPARATOR_2 +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) +#else /* PATH_SEPARATOR_2 */ +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) +#endif /* PATH_SEPARATOR_2 */ + +#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ + if (stale) { free ((void *) stale); stale = 0; } \ +} while (0) + +/* -DDEBUG is fairly common in CFLAGS. */ +#undef DEBUG +#if defined DEBUGWRAPPER +# define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__) +#else +# define DEBUG(format, ...) +#endif + +const char *program_name = NULL; + +void * xmalloc (size_t num); +char * xstrdup (const char *string); +const char * base_name (const char *name); +char * find_executable(const char *wrapper); +int check_executable(const char *path); +char * strendzap(char *str, const char *pat); +void lt_fatal (const char *message, ...); + +int +main (int argc, char *argv[]) +{ + char **newargz; + int i; + + program_name = (char *) xstrdup (base_name (argv[0])); + DEBUG("(main) argv[0] : %s\n",argv[0]); + DEBUG("(main) program_name : %s\n",program_name); + newargz = XMALLOC(char *, argc+2); +EOF + + cat >> $cwrappersource <> $cwrappersource <<"EOF" + newargz[1] = find_executable(argv[0]); + if (newargz[1] == NULL) + lt_fatal("Couldn't find %s", argv[0]); + DEBUG("(main) found exe at : %s\n",newargz[1]); + /* we know the script has the same name, without the .exe */ + /* so make sure newargz[1] doesn't end in .exe */ + strendzap(newargz[1],".exe"); + for (i = 1; i < argc; i++) + newargz[i+1] = xstrdup(argv[i]); + newargz[argc+1] = NULL; + + for (i=0; i> $cwrappersource <> $cwrappersource <> $cwrappersource <<"EOF" + return 127; +} + +void * +xmalloc (size_t num) +{ + void * p = (void *) malloc (num); + if (!p) + lt_fatal ("Memory exhausted"); + + return p; +} + +char * +xstrdup (const char *string) +{ + return string ? strcpy ((char *) xmalloc (strlen (string) + 1), string) : NULL +; +} + +const char * +base_name (const char *name) +{ + const char *base; + +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) + /* Skip over the disk name in MSDOS pathnames. */ + if (isalpha ((unsigned char)name[0]) && name[1] == ':') + name += 2; +#endif + + for (base = name; *name; name++) + if (IS_DIR_SEPARATOR (*name)) + base = name + 1; + return base; +} + +int +check_executable(const char * path) +{ + struct stat st; + + DEBUG("(check_executable) : %s\n", path ? (*path ? path : "EMPTY!") : "NULL!"); + if ((!path) || (!*path)) + return 0; + + if ((stat (path, &st) >= 0) && + ( + /* MinGW & native WIN32 do not support S_IXOTH or S_IXGRP */ +#if defined (S_IXOTH) + ((st.st_mode & S_IXOTH) == S_IXOTH) || +#endif +#if defined (S_IXGRP) + ((st.st_mode & S_IXGRP) == S_IXGRP) || +#endif + ((st.st_mode & S_IXUSR) == S_IXUSR)) + ) + return 1; + else + return 0; +} + +/* Searches for the full path of the wrapper. Returns + newly allocated full path name if found, NULL otherwise */ +char * +find_executable (const char* wrapper) +{ + int has_slash = 0; + const char* p; + const char* p_next; + /* static buffer for getcwd */ + char tmp[LT_PATHMAX + 1]; + int tmp_len; + char* concat_name; + + DEBUG("(find_executable) : %s\n", wrapper ? (*wrapper ? wrapper : "EMPTY!") : "NULL!"); + + if ((wrapper == NULL) || (*wrapper == '\0')) + return NULL; + + /* Absolute path? */ +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) + if (isalpha ((unsigned char)wrapper[0]) && wrapper[1] == ':') + { + concat_name = xstrdup (wrapper); + if (check_executable(concat_name)) + return concat_name; + XFREE(concat_name); + } + else + { +#endif + if (IS_DIR_SEPARATOR (wrapper[0])) + { + concat_name = xstrdup (wrapper); + if (check_executable(concat_name)) + return concat_name; + XFREE(concat_name); + } +#if defined (HAVE_DOS_BASED_FILE_SYSTEM) + } +#endif + + for (p = wrapper; *p; p++) + if (*p == '/') + { + has_slash = 1; + break; + } + if (!has_slash) + { + /* no slashes; search PATH */ + const char* path = getenv ("PATH"); + if (path != NULL) + { + for (p = path; *p; p = p_next) + { + const char* q; + size_t p_len; + for (q = p; *q; q++) + if (IS_PATH_SEPARATOR(*q)) + break; + p_len = q - p; + p_next = (*q == '\0' ? q : q + 1); + if (p_len == 0) + { + /* empty path: current directory */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal ("getcwd failed"); + tmp_len = strlen(tmp); + concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + } + else + { + concat_name = XMALLOC(char, p_len + 1 + strlen(wrapper) + 1); + memcpy (concat_name, p, p_len); + concat_name[p_len] = '/'; + strcpy (concat_name + p_len + 1, wrapper); + } + if (check_executable(concat_name)) + return concat_name; + XFREE(concat_name); + } + } + /* not found in PATH; assume curdir */ + } + /* Relative path | not found in path: prepend cwd */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal ("getcwd failed"); + tmp_len = strlen(tmp); + concat_name = XMALLOC(char, tmp_len + 1 + strlen(wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + + if (check_executable(concat_name)) + return concat_name; + XFREE(concat_name); + return NULL; +} + +char * +strendzap(char *str, const char *pat) +{ + size_t len, patlen; + + assert(str != NULL); + assert(pat != NULL); + + len = strlen(str); + patlen = strlen(pat); + + if (patlen <= len) + { + str += len - patlen; + if (strcmp(str, pat) == 0) + *str = '\0'; + } + return str; +} + +static void +lt_error_core (int exit_status, const char * mode, + const char * message, va_list ap) +{ + fprintf (stderr, "%s: %s: ", program_name, mode); + vfprintf (stderr, message, ap); + fprintf (stderr, ".\n"); + + if (exit_status >= 0) + exit (exit_status); +} + +void +lt_fatal (const char *message, ...) +{ + va_list ap; + va_start (ap, message); + lt_error_core (EXIT_FAILURE, "FATAL", message, ap); + va_end (ap); +} +EOF + # we should really use a build-platform specific compiler + # here, but OTOH, the wrappers (shell script and this C one) + # are only useful if you want to execute the "real" binary. + # Since the "real" binary is built for $host, then this + # wrapper might as well be built for $host, too. + $run $LTCC $LTCFLAGS -s -o $cwrapper $cwrappersource + ;; + esac + $rm $output + trap "$rm $output; exit $EXIT_FAILURE" 1 2 15 + + $echo > $output "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +Xsed='${SED} -e 1s/^X//' +sed_quote_subst='$sed_quote_subst' + +# Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE). +if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variable: + notinst_deplibs='$notinst_deplibs' +else + # When we are sourced in execute mode, \$file and \$echo are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + echo=\"$qecho\" + file=\"\$0\" + # Make sure echo works. + if test \"X\$1\" = X--no-reexec; then + # Discard the --no-reexec flag, and continue. + shift + elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then + # Yippee, \$echo works! + : + else + # Restart under the correct shell, and then maybe \$echo will work. + exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} + fi + fi\ +" + $echo >> $output "\ + + # Find the directory that this script lives in. + thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` + done + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test "$fast_install" = yes; then + $echo >> $output "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || \\ + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $mkdir \"\$progdir\" + else + $rm \"\$progdir/\$file\" + fi" + + $echo >> $output "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if relink_command_output=\`eval \$relink_command 2>&1\`; then : + else + $echo \"\$relink_command_output\" >&2 + $rm \"\$progdir/\$file\" + exit $EXIT_FAILURE + fi + fi + + $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $rm \"\$progdir/\$program\"; + $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $rm \"\$progdir/\$file\" + fi" + else + $echo >> $output "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + $echo >> $output "\ + + if test -f \"\$progdir/\$program\"; then" + + # Export our shlibpath_var if we have one. + if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $echo >> $output "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` + + export $shlibpath_var +" + fi + + # fixup the dll searchpath if we need to. + if test -n "$dllsearchpath"; then + $echo >> $output "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + $echo >> $output "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. +" + case $host in + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2*) + $echo >> $output "\ + exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" + ;; + + *) + $echo >> $output "\ + exec \"\$progdir/\$program\" \${1+\"\$@\"} +" + ;; + esac + $echo >> $output "\ + \$echo \"\$0: cannot exec \$program \$*\" + exit $EXIT_FAILURE + fi + else + # The program doesn't exist. + \$echo \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 + \$echo \"This script is just a wrapper for \$program.\" 1>&2 + $echo \"See the $PACKAGE documentation for more information.\" 1>&2 + exit $EXIT_FAILURE + fi +fi\ +" + chmod +x $output + fi + exit $EXIT_SUCCESS + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + if test "$build_libtool_libs" = convenience; then + oldobjs="$libobjs_save" + addlibs="$convenience" + build_libtool_libs=no + else + if test "$build_libtool_libs" = module; then + oldobjs="$libobjs_save" + build_libtool_libs=no + else + oldobjs="$old_deplibs $non_pic_objects" + fi + addlibs="$old_convenience" + fi + + if test -n "$addlibs"; then + gentop="$output_objdir/${outputname}x" + generated="$generated $gentop" + + func_extract_archives $gentop $addlibs + oldobjs="$oldobjs $func_extract_archives_result" + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + cmds=$old_archive_from_new_cmds + else + # POSIX demands no paths to be encoded in archives. We have + # to avoid creating archives with duplicate basenames if we + # might have to extract them afterwards, e.g., when creating a + # static archive out of a convenience library, or when linking + # the entirety of a libtool archive into another (currently + # not supported by libtool). + if (for obj in $oldobjs + do + $echo "X$obj" | $Xsed -e 's%^.*/%%' + done | sort | sort -uc >/dev/null 2>&1); then + : + else + $echo "copying selected object files to avoid basename conflicts..." + + if test -z "$gentop"; then + gentop="$output_objdir/${outputname}x" + generated="$generated $gentop" + + $show "${rm}r $gentop" + $run ${rm}r "$gentop" + $show "$mkdir $gentop" + $run $mkdir "$gentop" + exit_status=$? + if test "$exit_status" -ne 0 && test ! -d "$gentop"; then + exit $exit_status + fi + fi + + save_oldobjs=$oldobjs + oldobjs= + counter=1 + for obj in $save_oldobjs + do + objbase=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + case " $oldobjs " in + " ") oldobjs=$obj ;; + *[\ /]"$objbase "*) + while :; do + # Make sure we don't pick an alternate name that also + # overlaps. + newobj=lt$counter-$objbase + counter=`expr $counter + 1` + case " $oldobjs " in + *[\ /]"$newobj "*) ;; + *) if test ! -f "$gentop/$newobj"; then break; fi ;; + esac + done + $show "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" + $run ln "$obj" "$gentop/$newobj" || + $run cp "$obj" "$gentop/$newobj" + oldobjs="$oldobjs $gentop/$newobj" + ;; + *) oldobjs="$oldobjs $obj" ;; + esac + done + fi + + eval cmds=\"$old_archive_cmds\" + + if len=`expr "X$cmds" : ".*"` && + test "$len" -le "$max_cmd_len" || test "$max_cmd_len" -le -1; then + cmds=$old_archive_cmds + else + # the command line is too long to link in one step, link in parts + $echo "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + + # Is there a better way of finding the last object in the list? + for obj in $save_oldobjs + do + last_oldobj=$obj + done + for obj in $save_oldobjs + do + oldobjs="$objlist $obj" + objlist="$objlist $obj" + eval test_cmds=\"$old_archive_cmds\" + if len=`expr "X$test_cmds" : ".*" 2>/dev/null` && + test "$len" -le "$max_cmd_len"; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + if test "$obj" = "$last_oldobj" ; then + RANLIB=$save_RANLIB + fi + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + objlist= + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + if test "X$oldobjs" = "X" ; then + eval cmds=\"\$concat_cmds\" + else + eval cmds=\"\$concat_cmds~\$old_archive_cmds\" + fi + fi + fi + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + eval cmd=\"$cmd\" + IFS="$save_ifs" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$generated"; then + $show "${rm}r$generated" + $run ${rm}r$generated + fi + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test "$build_old_libs" = yes && old_library="$libname.$libext" + $show "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` + relink_command="$var=\"$var_value\"; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e "$sed_quote_subst" | $NL2SP` + if test "$hardcode_automatic" = yes ; then + relink_command= + fi + + + # Only create the output if not a dry run. + if test -z "$run"; then + for installed in no yes; do + if test "$installed" = yes; then + if test -z "$install_libdir"; then + break + fi + output="$output_objdir/$outputname"i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + if test -z "$libdir"; then + $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 + exit $EXIT_FAILURE + fi + newdependency_libs="$newdependency_libs $libdir/$name" + ;; + *) newdependency_libs="$newdependency_libs $deplib" ;; + esac + done + dependency_libs="$newdependency_libs" + newdlfiles= + for lib in $dlfiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit $EXIT_FAILURE + fi + newdlfiles="$newdlfiles $libdir/$name" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` + eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + if test -z "$libdir"; then + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + exit $EXIT_FAILURE + fi + newdlprefiles="$newdlprefiles $libdir/$name" + done + dlprefiles="$newdlprefiles" + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + newdlfiles="$newdlfiles $abs" + done + dlfiles="$newdlfiles" + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + *) abs=`pwd`"/$lib" ;; + esac + newdlprefiles="$newdlprefiles $abs" + done + dlprefiles="$newdlprefiles" + fi + $rm $output + # place dlname in correct position for cygwin + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; + esac + $echo > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Should we warn about portability when linking against -modules? +shouldnotlink=$module + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test "$installed" = no && test "$need_relink" = yes; then + $echo >> $output "\ +relink_command=\"$relink_command\"" + fi + done + fi + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" + $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? + ;; + esac + exit $EXIT_SUCCESS + ;; + + # libtool install mode + install) + modename="$modename: install" + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + # Allow the use of GNU shtool's install command. + $echo "X$nonopt" | grep shtool > /dev/null; then + # Aesthetically quote it. + arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + install_prog="$arg " + arg="$1" + shift + else + install_prog= + arg=$nonopt + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog$arg" + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=no + stripme= + for arg + do + if test -n "$dest"; then + files="$files $dest" + dest=$arg + continue + fi + + case $arg in + -d) isdir=yes ;; + -f) + case " $install_prog " in + *[\\\ /]cp\ *) ;; + *) prev=$arg ;; + esac + ;; + -g | -m | -o) prev=$arg ;; + -s) + stripme=" -s" + continue + ;; + -*) + ;; + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + prev= + else + dest=$arg + continue + fi + ;; + esac + + # Aesthetically quote the argument. + arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` + case $arg in + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + arg="\"$arg\"" + ;; + esac + install_prog="$install_prog $arg" + done + + if test -z "$install_prog"; then + $echo "$modename: you must specify an install program" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + if test -n "$prev"; then + $echo "$modename: the \`$prev' option requires an argument" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + if test -z "$files"; then + if test -z "$dest"; then + $echo "$modename: no file or destination specified" 1>&2 + else + $echo "$modename: you must specify a destination" 1>&2 + fi + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Strip any trailing slash from the destination. + dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=yes + if test "$isdir" = yes; then + destdir="$dest" + destname= + else + destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` + test "X$destdir" = "X$dest" && destdir=. + destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` + + # Not a directory, so check to see that there is only one file specified. + set dummy $files + if test "$#" -gt 2; then + $echo "$modename: \`$dest' is not a directory" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + staticlibs="$staticlibs $file" + ;; + + *.la) + # Check to see that this really is a libtool archive. + if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + library_names= + old_library= + relink_command= + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) current_libdirs="$current_libdirs $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) future_libdirs="$future_libdirs $libdir" ;; + esac + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ + test "X$dir" = "X$file/" && dir= + dir="$dir$objdir" + + if test -n "$relink_command"; then + # Determine the prefix the user has applied to our future dir. + inst_prefix_dir=`$echo "$destdir" | $SED "s%$libdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that + # are installed to the same prefix. + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. + if test "$inst_prefix_dir" = "$destdir"; then + $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 + exit $EXIT_FAILURE + fi + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. + relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%" | $NL2SP` + else + relink_command=`$echo "$relink_command" | $SP2NL | $SED "s%@inst_prefix_dir@%%" | $NL2SP` + fi + + $echo "$modename: warning: relinking \`$file'" 1>&2 + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + exit $EXIT_FAILURE + fi + fi + + # See the names of the shared library. + set dummy $library_names + if test -n "$2"; then + realname="$2" + shift + shift + + srcname="$realname" + test -n "$relink_command" && srcname="$realname"T + + # Install the shared library and build the symlinks. + $show "$install_prog $dir/$srcname $destdir/$realname" + $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? + if test -n "$stripme" && test -n "$striplib"; then + $show "$striplib $destdir/$realname" + $run eval "$striplib $destdir/$realname" || exit $? + fi + + if test "$#" -gt 0; then + # Delete the old symlinks, and create new ones. + # Try `ln -sf' first, because the `ln' binary might depend on + # the symlink we replace! Solaris /bin/ln does not understand -f, + # so we also need to try rm && ln -s. + for linkname + do + if test "$linkname" != "$realname"; then + $show "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })" + $run eval "(cd $destdir && { $LN_S -f $realname $linkname || { $rm $linkname && $LN_S $realname $linkname; }; })" + fi + done + fi + + # Do each command in the postinstall commands. + lib="$destdir/$realname" + cmds=$postinstall_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test "$mode" = relink; then + $run eval '(cd $output_objdir && $rm ${realname}T && $mv ${realname}U $realname)' + fi + + exit $lt_exit + } + done + IFS="$save_ifs" + fi + + # Install the pseudo-library for information purposes. + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + instname="$dir/$name"i + $show "$install_prog $instname $destdir/$name" + $run eval "$install_prog $instname $destdir/$name" || exit $? + + # Maybe install the static library, too. + test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` + ;; + *.$objext) + staticdest="$destfile" + destfile= + ;; + *) + $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + ;; + esac + + # Install the libtool object if requested. + if test -n "$destfile"; then + $show "$install_prog $file $destfile" + $run eval "$install_prog $file $destfile" || exit $? + fi + + # Install the old object if enabled. + if test "$build_old_libs" = yes; then + # Deduce the name of the old-style object file. + staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` + + $show "$install_prog $staticobj $staticdest" + $run eval "$install_prog \$staticobj \$staticdest" || exit $? + fi + exit $EXIT_SUCCESS + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile="$destdir/$destname" + else + destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + destfile="$destdir/$destfile" + fi + + # If the file is missing, and there is a .exe on the end, strip it + # because it is most likely a libtool script we actually want to + # install + stripped_ext="" + case $file in + *.exe) + if test ! -f "$file"; then + file=`$echo $file|${SED} 's,.exe$,,'` + stripped_ext=".exe" + fi + ;; + esac + + # Do a test to see if this is really a libtool program. + case $host in + *cygwin*|*mingw*) + wrapper=`$echo $file | ${SED} -e 's,.exe$,,'` + ;; + *) + wrapper=$file + ;; + esac + if (${SED} -e '4q' $wrapper | grep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then + notinst_deplibs= + relink_command= + + # Note that it is not necessary on cygwin/mingw to append a dot to + # foo even if both foo and FILE.exe exist: automatic-append-.exe + # behavior happens only for exec(3), not for open(2)! Also, sourcing + # `FILE.' does not work on cygwin managed mounts. + # + # If there is no directory component, then add one. + case $wrapper in + */* | *\\*) . ${wrapper} ;; + *) . ./${wrapper} ;; + esac + + # Check the variables that should have been set. + if test -z "$notinst_deplibs"; then + $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2 + exit $EXIT_FAILURE + fi + + finalize=yes + for lib in $notinst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + # If there is no directory component, then add one. + case $lib in + */* | *\\*) . $lib ;; + *) . ./$lib ;; + esac + fi + libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test + if test -n "$libdir" && test ! -f "$libfile"; then + $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 + finalize=no + fi + done + + relink_command= + # Note that it is not necessary on cygwin/mingw to append a dot to + # foo even if both foo and FILE.exe exist: automatic-append-.exe + # behavior happens only for exec(3), not for open(2)! Also, sourcing + # `FILE.' does not work on cygwin managed mounts. + # + # If there is no directory component, then add one. + case $wrapper in + */* | *\\*) . ${wrapper} ;; + *) . ./${wrapper} ;; + esac + + outputname= + if test "$fast_install" = no && test -n "$relink_command"; then + if test "$finalize" = yes && test -z "$run"; then + tmpdir=`func_mktempdir` + file=`$echo "X$file$stripped_ext" | $Xsed -e 's%^.*/%%'` + outputname="$tmpdir/$file" + # Replace the output file specification. + relink_command=`$echo "X$relink_command" | $SP2NL | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g' | $NL2SP` + + $show "$relink_command" + if $run eval "$relink_command"; then : + else + $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 + ${rm}r "$tmpdir" + continue + fi + file="$outputname" + else + $echo "$modename: warning: cannot relink \`$file'" 1>&2 + fi + else + # Install the binary that we compiled earlier. + file=`$echo "X$file$stripped_ext" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + destfile=`$echo $destfile | ${SED} -e 's,.exe$,,'` + ;; + esac + ;; + esac + $show "$install_prog$stripme $file $destfile" + $run eval "$install_prog\$stripme \$file \$destfile" || exit $? + test -n "$outputname" && ${rm}r "$tmpdir" + ;; + esac + done + + for file in $staticlibs; do + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + + # Set up the ranlib parameters. + oldlib="$destdir/$name" + + $show "$install_prog $file $oldlib" + $run eval "$install_prog \$file \$oldlib" || exit $? + + if test -n "$stripme" && test -n "$old_striplib"; then + $show "$old_striplib $oldlib" + $run eval "$old_striplib $oldlib" || exit $? + fi + + # Do each command in the postinstall commands. + cmds=$old_postinstall_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || exit $? + done + IFS="$save_ifs" + done + + if test -n "$future_libdirs"; then + $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 + fi + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + test -n "$run" && current_libdirs=" -n$current_libdirs" + exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' + else + exit $EXIT_SUCCESS + fi + ;; + + # libtool finish mode + finish) + modename="$modename: finish" + libdirs="$nonopt" + admincmds= + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for dir + do + libdirs="$libdirs $dir" + done + + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + cmds=$finish_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" || admincmds="$admincmds + $cmd" + done + IFS="$save_ifs" + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $run eval "$cmds" || admincmds="$admincmds + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + test "$show" = : && exit $EXIT_SUCCESS + + $echo "X----------------------------------------------------------------------" | $Xsed + $echo "Libraries have been installed in:" + for libdir in $libdirs; do + $echo " $libdir" + done + $echo + $echo "If you ever happen to want to link against installed libraries" + $echo "in a given directory, LIBDIR, you must either use libtool, and" + $echo "specify the full pathname of the library, or use the \`-LLIBDIR'" + $echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + $echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + $echo " during execution" + fi + if test -n "$runpath_var"; then + $echo " - add LIBDIR to the \`$runpath_var' environment variable" + $echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + $echo " - use the \`$flag' linker flag" + fi + if test -n "$admincmds"; then + $echo " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + $echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + fi + $echo + $echo "See any operating system documentation about shared libraries for" + $echo "more information, such as the ld(1) and ld.so(8) manual pages." + $echo "X----------------------------------------------------------------------" | $Xsed + exit $EXIT_SUCCESS + ;; + + # libtool execute mode + execute) + modename="$modename: execute" + + # The first argument is the command name. + cmd="$nonopt" + if test -z "$cmd"; then + $echo "$modename: you must specify a COMMAND" 1>&2 + $echo "$help" + exit $EXIT_FAILURE + fi + + # Handle -dlopen flags immediately. + for file in $execute_dlfiles; do + if test ! -f "$file"; then + $echo "$modename: \`$file' is not a file" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + dir= + case $file in + *.la) + # Check to see that this really is a libtool archive. + if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : + else + $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Read the libtool library. + dlname= + library_names= + + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" + continue + fi + + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + + if test -f "$dir/$objdir/$dlname"; then + dir="$dir/$objdir" + else + $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 + exit $EXIT_FAILURE + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + test "X$dir" = "X$file" && dir=. + ;; + + *) + $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir="$absdir" + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic="$magic" + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -*) ;; + *) + # Do a test to see if this is really a libtool program. + if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + # If there is no directory component, then add one. + case $file in + */* | *\\*) . $file ;; + *) . ./$file ;; + esac + + # Transform arg to wrapped name. + file="$progdir/$program" + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` + args="$args \"$file\"" + done + + if test -z "$run"; then + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved environment variables + for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES + do + eval "if test \"\${save_$lt_var+set}\" = set; then + $lt_var=\$save_$lt_var; export $lt_var + else + $lt_unset $lt_var + fi" + done + + + # Now prepare to actually exec the command. + exec_cmd="\$cmd$args" + else + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" + $echo "export $shlibpath_var" + fi + $echo "$cmd$args" + exit $EXIT_SUCCESS + fi + ;; + + # libtool clean and uninstall mode + clean | uninstall) + modename="$modename: $mode" + rm="$nonopt" + files= + rmforce= + exit_status=0 + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic="$magic" + + for arg + do + case $arg in + -f) rm="$rm $arg"; rmforce=yes ;; + -*) rm="$rm $arg" ;; + *) files="$files $arg" ;; + esac + done + + if test -z "$rm"; then + $echo "$modename: you must specify an RM program" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + fi + + rmdirs= + + origobjdir="$objdir" + for file in $files; do + dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` + if test "X$dir" = "X$file"; then + dir=. + objdir="$origobjdir" + else + objdir="$dir/$origobjdir" + fi + name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` + test "$mode" = uninstall && objdir="$dir" + + # Remember objdir for removal later, being careful to avoid duplicates + if test "$mode" = clean; then + case " $rmdirs " in + *" $objdir "*) ;; + *) rmdirs="$rmdirs $objdir" ;; + esac + fi + + # Don't error if the file doesn't exist and rm -f was used. + if (test -L "$file") >/dev/null 2>&1 \ + || (test -h "$file") >/dev/null 2>&1 \ + || test -f "$file"; then + : + elif test -d "$file"; then + exit_status=1 + continue + elif test "$rmforce" = yes; then + continue + fi + + rmfiles="$file" + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + . $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + rmfiles="$rmfiles $objdir/$n" + done + test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" + + case "$mode" in + clean) + case " $library_names " in + # " " in the beginning catches empty $dlname + *" $dlname "*) ;; + *) rmfiles="$rmfiles $objdir/$dlname" ;; + esac + test -n "$libdir" && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" + ;; + uninstall) + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + cmds=$postuninstall_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" + if test "$?" -ne 0 && test "$rmforce" != yes; then + exit_status=1 + fi + done + IFS="$save_ifs" + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + cmds=$old_postuninstall_cmds + save_ifs="$IFS"; IFS='~' + for cmd in $cmds; do + IFS="$save_ifs" + eval cmd=\"$cmd\" + $show "$cmd" + $run eval "$cmd" + if test "$?" -ne 0 && test "$rmforce" != yes; then + exit_status=1 + fi + done + IFS="$save_ifs" + fi + # FIXME: should reinstall the best remaining shared library. + ;; + esac + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if (${SED} -e '2q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + + # Read the .lo file + . $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" \ + && test "$pic_object" != none; then + rmfiles="$rmfiles $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" \ + && test "$non_pic_object" != none; then + rmfiles="$rmfiles $dir/$non_pic_object" + fi + fi + ;; + + *) + if test "$mode" = clean ; then + noexename=$name + case $file in + *.exe) + file=`$echo $file|${SED} 's,.exe$,,'` + noexename=`$echo $name|${SED} 's,.exe$,,'` + # $file with .exe has already been added to rmfiles, + # add $file without .exe + rmfiles="$rmfiles $file" + ;; + esac + # Do a test to see if this is a libtool program. + if (${SED} -e '4q' $file | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then + relink_command= + . $dir/$noexename + + # note $name still contains .exe if it was in $file originally + # as does the version of $file that was added into $rmfiles + rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" + if test "$fast_install" = yes && test -n "$relink_command"; then + rmfiles="$rmfiles $objdir/lt-$name" + fi + if test "X$noexename" != "X$name" ; then + rmfiles="$rmfiles $objdir/lt-${noexename}.c" + fi + fi + fi + ;; + esac + $show "$rm $rmfiles" + $run $rm $rmfiles || exit_status=1 + done + objdir="$origobjdir" + + # Try to remove the ${objdir}s in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + $show "rmdir $dir" + $run rmdir $dir >/dev/null 2>&1 + fi + done + + exit $exit_status + ;; + + "") + $echo "$modename: you must specify a MODE" 1>&2 + $echo "$generic_help" 1>&2 + exit $EXIT_FAILURE + ;; + esac + + if test -z "$exec_cmd"; then + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$generic_help" 1>&2 + exit $EXIT_FAILURE + fi +fi # test -z "$show_help" + +if test -n "$exec_cmd"; then + eval exec $exec_cmd + exit $EXIT_FAILURE +fi + +# We need to display help for each of the modes. +case $mode in +"") $echo \ +"Usage: $modename [OPTION]... [MODE-ARG]... + +Provide generalized library-building support services. + + --config show all configuration variables + --debug enable verbose shell tracing +-n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --finish same as \`--mode=finish' + --help display this help message and exit + --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] + --quiet same as \`--silent' + --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + --version print version information + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for +a more detailed description of MODE. + +Report bugs to ." + exit $EXIT_SUCCESS + ;; + +clean) + $echo \ +"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + +compile) + $echo \ +"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -prefer-pic try to building PIC objects only + -prefer-non-pic try to building non-PIC objects only + -static always build a \`.o' file suitable for static linking + +COMPILE-COMMAND is a command to be used in creating a \`standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix \`.c' with the +library object suffix, \`.lo'." + ;; + +execute) + $echo \ +"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to \`-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + +finish) + $echo \ +"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the \`--dry-run' option if you just want to see what would be executed." + ;; + +install) + $echo \ +"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the \`install' or \`cp' program. + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + +link) + $echo \ +"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE Use a list of object files found in FILE to specify objects + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -static do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + +All other options (arguments beginning with \`-') are ignored. + +Every other argument is treated as a filename. Files ending in \`.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in \`.la', then a libtool library is created, +only library objects (\`.lo' files) may be specified, and \`-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created +using \`ar' and \`ranlib', or on Windows using \`lib'. + +If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +is created, otherwise an executable program is created." + ;; + +uninstall) + $echo \ +"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + +*) + $echo "$modename: invalid operation mode \`$mode'" 1>&2 + $echo "$help" 1>&2 + exit $EXIT_FAILURE + ;; +esac + +$echo +$echo "Try \`$modename --help' for more information about other modes." + +exit $? + +# The TAGs below are defined such that we never get into a situation +# in which we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +# ### BEGIN LIBTOOL TAG CONFIG: disable-shared +disable_libs=shared +# ### END LIBTOOL TAG CONFIG: disable-shared + +# ### BEGIN LIBTOOL TAG CONFIG: disable-static +disable_libs=static +# ### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: +# ### BEGIN LIBTOOL TAG CONFIG: CXX + +# Libtool was configured on host srvhall03: + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# Whether or not to build shared libraries. +build_libtool_libs=yes + +# Whether or not to build static libraries. +build_old_libs=no + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=no + +# Whether or not to disallow shared libs when runtime libs are static +allow_libtool_libs_with_static_runtimes=no + +# Whether or not to optimize for fast installation. +fast_install=yes + +# The host system. +host_alias= +host=x86_64-unknown-linux-gnu +host_os=linux-gnu + +# The build system. +build_alias= +build=x86_64-unknown-linux-gnu +build_os=linux-gnu + +# An echo program that does not interpret backslashes. +echo="echo" + +# The archiver. +AR="ar" +AR_FLAGS="cru" + +# A C compiler. +LTCC="gcc" + +# LTCC compiler flags. +LTCFLAGS="" + +# A language-specific compiler. +CC="g++" + +# Is the compiler the GNU C compiler? +with_gcc=yes + +gcc_dir=`gcc -print-file-name=. | /bin/sed 's,/\.$,,'` +gcc_ver=`gcc -dumpversion` + +# An ERE matcher. +EGREP="grep -E" + +# The linker used to build libraries. +LD="/usr/bin/ld -m elf_x86_64" + +# Whether we need hard or soft links. +LN_S="ln -s" + +# A BSD-compatible nm program. +NM="/usr/bin/nm -B" + +# A symbol stripping program +STRIP="strip" + +# Used to examine libraries when file_magic_cmd begins "file" +MAGIC_CMD=file + +# Used on cygwin: DLL creation program. +DLLTOOL="dlltool" + +# Used on cygwin: object dumper. +OBJDUMP="objdump" + +# Used on cygwin: assembler. +AS="as" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Object file suffix (normally "o"). +objext="o" + +# Old archive suffix (normally "a"). +libext="a" + +# Shared library suffix (normally ".so"). +shrext_cmds='.so' + +# Executable file suffix (normally ""). +exeext="" + +# Additional compiler flags for building library objects. +pic_flag=" -fPIC -DPIC" +pic_mode=default + +# What is the maximum length of a command? +max_cmd_len=32768 + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Must we lock files when doing compilation? +need_locks="no" + +# Do we need the lib prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Whether dlopen is supported. +dlopen_support=unknown + +# Whether dlopen of programs is supported. +dlopen_self=unknown + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=unknown + +# Compiler flag to prevent dynamic linking. +link_static_flag="" + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin" + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="\${wl}--export-dynamic" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" + +# Compiler flag to generate thread-safe objects. +thread_safe_flag_spec="" + +# Library versioning type. +version_type=linux + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME. +library_names_spec="\${libname}\${release}\${shared_ext}\$versuffix \${libname}\${release}\${shared_ext}\$major \$libname\${shared_ext}" + +# The coded name of the library, if different from the real name. +soname_spec="\${libname}\${release}\${shared_ext}\$major" + +# Commands used to build and install an old-style archive. +RANLIB="ranlib" +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib" +old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$oldlib" +old_postuninstall_cmds="" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build and install a shared archive. +archive_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" +archive_expsym_cmds="\$CC -shared -nostdlib \$predep_objects \$libobjs \$deplibs \$postdep_objects \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib" +postinstall_cmds="" +postuninstall_cmds="" + +# Commands used to build a loadable module (assumed same as above if empty) +module_cmds="" +module_expsym_cmds="" + +# Commands to strip libraries. +old_striplib="strip --strip-debug" +striplib="strip --strip-unneeded" + +# Dependencies to place before the objects being linked to create a +# shared library. +predep_objects=`echo "/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crti.o /usr/lib/gcc/x86_64-redhat-linux/4.4.7/crtbeginS.o" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Dependencies to place after the objects being linked to create a +# shared library. +postdep_objects=`echo "/usr/lib/gcc/x86_64-redhat-linux/4.4.7/crtendS.o /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crtn.o" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Dependencies to place before the objects being linked to create a +# shared library. +predeps="" + +# Dependencies to place after the objects being linked to create a +# shared library. +postdeps="-lstdc++ -lm -lgcc_s -lc -lgcc_s" + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=`echo "-L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../.." | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method == file_magic. +file_magic_cmd="\$MAGIC_CMD" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that forces no undefined symbols. +no_undefined_flag="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="PATH=\\\"\\\$PATH:/sbin\\\" ldconfig -n \$libdir" + +# Same as above, but a single script fragment to be evaled but not shown. +finish_eval="" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'" + +# Transform the output of nm in a proper C declaration +global_symbol_to_cdecl="sed -n -e 's/^. .* \\(.*\\)\$/extern int \\1;/p'" + +# Transform the output of nm in a C name address pair +global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\) \$/ {\\\"\\1\\\", (lt_ptr) 0},/p' -e 's/^[BCDEGRST] \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (lt_ptr) \\&\\2},/p'" + +# This is the shared library runtime path variable. +runpath_var=LD_RUN_PATH + +# This is the shared library path variable. +shlibpath_var=LD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=no + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=yes + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist. +hardcode_libdir_flag_spec="\${wl}--rpath \${wl}\$libdir" + +# If ld is used when linking, flag to hardcode $libdir into +# a binary during linking. This must work even if $libdir does +# not exist. +hardcode_libdir_flag_spec_ld="" + +# Whether we need a single -rpath flag with a separated argument. +hardcode_libdir_separator="" + +# Set to yes if using DIR/libNAME during linking hardcodes DIR into the +# resulting binary. +hardcode_direct=no + +# Set to yes if using the -LDIR flag during linking hardcodes DIR into the +# resulting binary. +hardcode_minus_L=no + +# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into +# the resulting binary. +hardcode_shlibpath_var=unsupported + +# Set to yes if building a shared library automatically hardcodes DIR into the library +# and all subsequent libraries and executables linked against it. +hardcode_automatic=no + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at relink time. +variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=unknown + +# Compile-time system search path for libraries +sys_lib_search_path_spec=`echo "/lib64 /usr/lib64 /usr/local/lib64" | $SED -e "s@${gcc_dir}@\${gcc_dir}@g;s@${gcc_ver}@\${gcc_ver}@g"` + +# Run-time system search path for libraries +sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /usr/lib64/ctapi /usr/local/Calpont/lib /usr/local/Calpont/mysql/lib/mysql hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg hwcap 1 nosegneg /usr/lib64/mysql /usr/lib64/qt-3.3/lib /usr/lib/vmware-tools/lib32/libvmGuestLib.so /usr/lib/vmware-tools/lib64/libvmGuestLib.so /usr/lib/vmware-tools/lib32/libvmGuestLibJava.so /usr/lib/vmware-tools/lib64/libvmGuestLibJava.so /usr/lib/vmware-tools/lib32/libDeployPkg.so /usr/lib/vmware-tools/lib64/libDeployPkg.so /usr/lib64/xulrunner " + +# Fix the shell variable $srcfile for the compiler. +fix_srcfile_path="" + +# Set to yes if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="" + +# Symbols that must always be exported. +include_expsyms="" + +# ### END LIBTOOL TAG CONFIG: CXX + diff --git a/oam/etc/ProcessConfig.xml.singleserver b/oam/etc/ProcessConfig.xml.singleserver index ec46cb75f..e9a36bd10 100644 --- a/oam/etc/ProcessConfig.xml.singleserver +++ b/oam/etc/ProcessConfig.xml.singleserver @@ -4,7 +4,7 @@ ProcessMonitor ChildExtOAMModule - /usr/local/Calpont/bin/ProcMon + /usr/local/MariaDB/Columnstore/bin/ProcMon 0 1 @@ -14,7 +14,7 @@ ProcessManager ParentOAMModule - /usr/local/Calpont/bin/ProcMgr + /usr/local/MariaDB/Columnstore/bin/ProcMgr 1 2 @@ -24,17 +24,17 @@ SNMPTrapDaemon ParentOAMModule - /usr/local/Calpont/sbin/snmptrapd - /usr/local/Calpont/sbin/snmptrapd + /usr/local/MariaDB/Columnstore/sbin/snmptrapd + /usr/local/MariaDB/Columnstore/sbin/snmptrapd -M - /usr/local/Calpont/share/snmp/mibs + /usr/local/MariaDB/Columnstore/share/snmp/mibs -m - /usr/local/Calpont/share/snmp/mibs/CALPONT-MIB.txt + /usr/local/MariaDB/Columnstore/share/snmp/mibs/CALPONT-MIB.txt -c - /usr/local/Calpont/etc/snmptrapd.conf + /usr/local/MariaDB/Columnstore/etc/snmptrapd.conf -C -Lf - /var/log/Calpont/snmptrapd.log + /usr/local/MariaDB/Columnstore/snmptrapd.log -p /var/run/snmptrapd.pid 1 @@ -47,8 +47,8 @@ DBRMControllerNode ParentOAMModule - /usr/local/Calpont/bin/controllernode - /usr/local/Calpont/bin/controllernode + /usr/local/MariaDB/Columnstore/bin/controllernode + /usr/local/MariaDB/Columnstore/bin/controllernode fg 2 4 @@ -60,13 +60,13 @@ SNMPAgent ChildOAMModule - /usr/local/Calpont/sbin/snmpd - /usr/local/Calpont/sbin/snmpd + /usr/local/MariaDB/Columnstore/sbin/snmpd + /usr/local/MariaDB/Columnstore/sbin/snmpd -c - /usr/local/Calpont/etc/snmpd.conf + /usr/local/MariaDB/Columnstore/etc/snmpd.conf -C -Lf - /var/log/Calpont/snmpd.log + /usr/local/MariaDB/Columnstore/snmpd.log -p /var/run/snmpd.pid 0 @@ -78,8 +78,8 @@ ServerMonitor ChildOAMModule - /usr/local/Calpont/bin/ServerMonitor - /usr/local/Calpont/bin/ServerMonitor + /usr/local/MariaDB/Columnstore/bin/ServerMonitor + /usr/local/MariaDB/Columnstore/bin/ServerMonitor 2 6 @@ -89,8 +89,8 @@ DBRMWorkerNode ChildExtOAMModule - /usr/local/Calpont/bin/workernode - /usr/local/Calpont/bin/workernode + /usr/local/MariaDB/Columnstore/bin/workernode + /usr/local/MariaDB/Columnstore/bin/workernode DBRM_Worker fg 2 @@ -102,7 +102,7 @@ DecomSvr pm - /usr/local/Calpont/bin/DecomSvr + /usr/local/MariaDB/Columnstore/bin/DecomSvr 2 15 @@ -112,7 +112,7 @@ PrimProc pm - /usr/local/Calpont/bin/PrimProc + /usr/local/MariaDB/Columnstore/bin/PrimProc 2 20 @@ -122,7 +122,7 @@ ExeMgr pm - /usr/local/Calpont/bin/ExeMgr + /usr/local/MariaDB/Columnstore/bin/ExeMgr 2 30 PrimProc @@ -133,7 +133,7 @@ WriteEngineServer pm - /usr/local/Calpont/bin/WriteEngineServer + /usr/local/MariaDB/Columnstore/bin/WriteEngineServer 2 40 LOADSHARE @@ -172,7 +172,7 @@ mysqld pm - /usr/local/Calpont/mysql/libexe/mysqld + /usr/local/MariaDB/Columnstore/mysql/libexe/mysqld 0 100 diff --git a/oam/install_scripts/Makefile~ b/oam/install_scripts/Makefile~ deleted file mode 100755 index 0c0b57896..000000000 --- a/oam/install_scripts/Makefile~ +++ /dev/null @@ -1,57 +0,0 @@ -include ../../rules.mak -#****************************************************************************************** -# -# $Id: Makefile 3250 2012-09-26 17:44:13Z rdempsey $ -# -# Copyright (C) 2009-2012 Calpont Corporation -# All rights reserved -#*****************************************************************************************/ -.PHONY: install clean test docs coverage leakcheck - -SCRIPTS=post-install pre-uninstall remote_command.sh \ -columnstoreLogRotate transactionLog transactionLogArchiver.sh system_installer.sh \ -module_installer.sh patch_installer.sh xm_installer.sh startupTests.sh \ -director_installer.sh user_installer.sh performance_installer.sh \ -remote_scp_get.sh columnstoreAlias run.sh upgrade-columnstore.sh \ -post-mysql-install post-mysqld-install binary_installer.sh \ -os_check.sh columnstore columnstoreSyslog columnstoreSyslog-ng syslogSetup.sh \ -remote_scp_put.sh columnstoreUninstall.sh columnstore.def \ -remotessh.exp master-rep-columnstore.sh slave-rep-columnstore.sh rsync.sh \ -myCnf-include-args.text myCnf-exclude-args.text remote_command_verify.sh \ -columnstoreSyslog7 disable-rep-columnstore.sh columnstore.conf - -LOCAL=module - -bootstrap: - umask 002; \ - mkdir -p $(INSTALL_ROOT_BIN); \ - pushd $(INSTALL_ROOT_BIN) >/dev/null; \ - rm -f $(SCRIPTS); \ - popd >/dev/null; \ - $(INSTALL) $(SCRIPTS) $(INSTALL_ROOT_BIN) - pushd $(INSTALL_ROOT_BIN) >/dev/null; \ - chmod -f 555 $(SCRIPTS); \ - popd >/dev/null - umask 002; \ - mkdir -p $(INSTALL_ROOT_LOCAL); \ - pushd $(INSTALL_ROOT_LOCAL) >/dev/null; \ - rm -f $(LOCAL); \ - popd >/dev/null; \ - $(INSTALL) $(LOCAL) $(INSTALL_ROOT_LOCAL) - pushd $(INSTALL_ROOT_LOCAL) >/dev/null; \ - chmod -f 555 $(LOCAL); \ - popd >/dev/null - -clean: - rm -f $(OBJS) $(PROGRAM) core *~ *.tag *.d *.d.* - -install: bootstrap - -test: - -docs: - -coverage: - -leakcheck: - diff --git a/oam/install_scripts/binary_installer.sh b/oam/install_scripts/binary_installer.sh index c8a20ee38..9b0a14588 100644 --- a/oam/install_scripts/binary_installer.sh +++ b/oam/install_scripts/binary_installer.sh @@ -53,7 +53,7 @@ if { $INSTALLTYPE == "initial" || $INSTALLTYPE == "uninstall" } { send_user "Uninstall Calpont Package " send " \n" send date\n - send "ssh $USERNAME@$SERVER 'rm -f /etc/init.d/infinidb /etc/init.d/mysql-Calpont $INSTALLDIR/releasenum >/dev/null 2>&1'\n" + send "ssh $USERNAME@$SERVER 'rm -f /etc/init.d/infinidb /etc/init.d/mysql-Columnstore $INSTALLDIR/releasenum >/dev/null 2>&1'\n" set timeout 20 expect { "Host key verification failed" { send_user "FAILED: Host key verification failed\n" ; exit 1} diff --git a/oam/install_scripts/calpontAlias b/oam/install_scripts/calpontAlias index bf34a4e9a..61a9afe77 100644 --- a/oam/install_scripts/calpontAlias +++ b/oam/install_scripts/calpontAlias @@ -3,11 +3,11 @@ alias mcsmysql='/usr/local/Calpont/mysql/bin/mysql --defaults-file=/usr/local/Calpont/mysql/my.cnf -u root' alias ma=/usr/local/Calpont/bin/mcsadmin alias mcsadmin=/usr/local/Calpont/bin/mcsadmin -alias home='cd /usr/local/Calpont/' -alias log='cd /var/log/Calpont/' -alias core='cd /var/log/Calpont/corefiles' +alias home='cd /usr/local/MariaDB/Columnstore' +alias log='cd /var/log/Columnstore/' +alias core='cd /var/log/Columnstore/corefiles' alias tmsg='tail -f /var/log/messages' -alias tdebug='tail -f /var/log/Calpont/debug.log' -alias tinfo='tail -f /var/log/Calpont/info.log' +alias tdebug='tail -f /var/log/Columnstore/debug.log' +alias tinfo='tail -f /var/log/Columnstore/info.log' alias dbrm='cd /usr/local/Calpont/data1/systemFiles/dbrm' alias module='cat /usr/local/Calpont/local/module' diff --git a/oam/install_scripts/calpontLogRotate b/oam/install_scripts/calpontLogRotate index 48dec8381..780d9743d 100644 --- a/oam/install_scripts/calpontLogRotate +++ b/oam/install_scripts/calpontLogRotate @@ -3,21 +3,21 @@ # as part of the RPM installation # -/var/log/Calpont/*.log { +/var/log/Columnstore/*.log { missingok rotate 7 daily dateext copytruncate - olddir /var/log/Calpont/archive + olddir /var/log/Columnstore/archive } -/var/log/Calpont/*.log1 { +/var/log/Columnstore/*.log1 { missingok rotate 7 daily nocreate compress - olddir /var/log/Calpont/archive + olddir /var/log/Columnstore/archive } /usr/local/Calpont/etc/Calpont.xml { daily diff --git a/oam/install_scripts/calpontSyslog b/oam/install_scripts/calpontSyslog index 8bc56eb3e..dab3c966b 100644 --- a/oam/install_scripts/calpontSyslog +++ b/oam/install_scripts/calpontSyslog @@ -1,7 +1,7 @@ # Calpont Database Platform Logging -local1.=crit -/var/log/Calpont/crit.log -local1.=err -/var/log/Calpont/err.log -local1.=warning -/var/log/Calpont/warning.log -local1.=info -/var/log/Calpont/info.log -local1.=debug -/var/log/Calpont/debug.log -local2.=crit -/var/log/Calpont/data/data_mods.log +local1.=crit -/var/log/Columnstore/crit.log +local1.=err -/var/log/Columnstore/err.log +local1.=warning -/var/log/Columnstore/warning.log +local1.=info -/var/log/Columnstore/info.log +local1.=debug -/var/log/Columnstore/debug.log +local2.=crit -/var/log/Columnstore/data/data_mods.log diff --git a/oam/install_scripts/calpontSyslog-ng b/oam/install_scripts/calpontSyslog-ng index 6b7051bf7..c4d30e3e0 100755 --- a/oam/install_scripts/calpontSyslog-ng +++ b/oam/install_scripts/calpontSyslog-ng @@ -21,27 +21,27 @@ filter f_local1debug { facility(local1) and level(debug); }; filter f_local2crit { facility(local2) and level(crit); }; destination d_crit{ - file("/var/log/Calpont/crit.log"); + file("/var/log/Columnstore/crit.log"); }; destination d_err{ - file("/var/log/Calpont/err.log"); + file("/var/log/Columnstore/err.log"); }; destination d_warning{ - file("/var/log/Calpont/warning.log"); + file("/var/log/Columnstore/warning.log"); }; destination d_info{ - file("/var/log/Calpont/info.log"); + file("/var/log/Columnstore/info.log"); }; destination d_debug{ - file("/var/log/Calpont/debug.log"); + file("/var/log/Columnstore/debug.log"); }; destination d_data_mods{ - file("/var/log/Calpont/data/data_mods.log"); + file("/var/log/Columnstore/data/data_mods.log"); }; log{ diff --git a/oam/install_scripts/calpontSyslog7 b/oam/install_scripts/calpontSyslog7 index e5dcd33b9..d3d34cdc9 100644 --- a/oam/install_scripts/calpontSyslog7 +++ b/oam/install_scripts/calpontSyslog7 @@ -1,8 +1,8 @@ # Calpont Database Platform Logging -local1.crit -/var/log/Calpont/crit.log -local1.err -/var/log/Calpont/err.log -local1.warning -/var/log/Calpont/warning.log -local1.info -/var/log/Calpont/info.log -local1.debug -/var/log/Calpont/debug.log -local2.crit -/var/log/Calpont/data/data_mods.log +local1.crit -/var/log/Columnstore/crit.log +local1.err -/var/log/Columnstore/err.log +local1.warning -/var/log/Columnstore/warning.log +local1.info -/var/log/Columnstore/info.log +local1.debug -/var/log/Columnstore/debug.log +local2.crit -/var/log/Columnstore/data/data_mods.log diff --git a/oam/install_scripts/columnstore b/oam/install_scripts/columnstore index c5d44a947..4f2e569bc 100644 --- a/oam/install_scripts/columnstore +++ b/oam/install_scripts/columnstore @@ -34,7 +34,7 @@ export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR InstallDir=$INFINIDB_INSTALL_DIR -if [ $InstallDir != "/usr/local/Calpont" ]; then +if [ $InstallDir != "/usr/local/MariaDB/Columnstore" ]; then export PATH=$InstallDir/bin:$InstallDir/mysql/bin:/bin:/usr/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$InstallDir/lib:$InstallDir/mysql/lib/mysql fi @@ -107,7 +107,7 @@ start() { #columnstore core files $SUDO ulimit -c unlimited > /dev/null 2>&1 $SUDO sysctl -q -w kernel.core_uses_pid=1 > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_pattern=/var/log/Calpont/corefiles/core.%e.%p > /dev/null 2>&1 + $SUDO sysctl -q -w kernel.core_pattern=/var/log/Columnstore/corefiles/core.%e.%p > /dev/null 2>&1 fi RETVAL=0 @@ -128,8 +128,8 @@ stop() { RETVAL=$? rm -f /var/lock/subsys/columnstore fuser -k 8604/tcp > /dev/null 2>&1 - test -f $InstallDir/mysql/mysql-Calpont || return $RETVAL - $InstallDir/mysql/mysql-Calpont stop > /dev/null 2>&1 + test -f $InstallDir/mysql/mysql-Columnstore || return $RETVAL + $InstallDir/mysql/mysql-Columnstore stop > /dev/null 2>&1 if [ -x $InstallDir/bin/columnstore.post-stop ]; then $InstallDir/bin/columnstore.post-stop fi diff --git a/oam/install_scripts/columnstore.conf b/oam/install_scripts/columnstore.conf index abb2e8fd4..38a817015 100644 --- a/oam/install_scripts/columnstore.conf +++ b/oam/install_scripts/columnstore.conf @@ -1,2 +1,2 @@ -/usr/local/Calpont/lib +/usr/local/MariaDB/Columnstore/lib diff --git a/oam/install_scripts/columnstore.def b/oam/install_scripts/columnstore.def index 4ebfb2019..ab843979a 100644 --- a/oam/install_scripts/columnstore.def +++ b/oam/install_scripts/columnstore.def @@ -2,7 +2,7 @@ # Copy this file to /etc/default and rename it to 'infinidb'. # Change this line to your InfiniDB installation directory -INFINIDB_INSTALL_DIR=/usr/local/Calpont +INFINIDB_INSTALL_DIR=/usr/local/MariaDB/Columnstore LD_LIBRARY_PATH=$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR diff --git a/oam/install_scripts/columnstore.upstart b/oam/install_scripts/columnstore.upstart index bb53d6901..1a0767584 100644 --- a/oam/install_scripts/columnstore.upstart +++ b/oam/install_scripts/columnstore.upstart @@ -12,5 +12,5 @@ stop on runlevel 5 stop on runlevel 6 respawn -exec /usr/local/Calpont/bin/ProcMon +exec /usr/local/MariaDB/Columnstore/bin/ProcMon diff --git a/oam/install_scripts/columnstoreAlias b/oam/install_scripts/columnstoreAlias index bf34a4e9a..8819ccd58 100644 --- a/oam/install_scripts/columnstoreAlias +++ b/oam/install_scripts/columnstoreAlias @@ -1,13 +1,13 @@ # InfiniDB Alias Commands # -alias mcsmysql='/usr/local/Calpont/mysql/bin/mysql --defaults-file=/usr/local/Calpont/mysql/my.cnf -u root' -alias ma=/usr/local/Calpont/bin/mcsadmin -alias mcsadmin=/usr/local/Calpont/bin/mcsadmin -alias home='cd /usr/local/Calpont/' -alias log='cd /var/log/Calpont/' -alias core='cd /var/log/Calpont/corefiles' +alias mcsmysql='/usr/local/MariaDB/Columnstore/mysql/bin/mysql --defaults-file=/usr/local/MariaDB/Columnstore/mysql/my.cnf -u root' +alias ma=/usr/local/MariaDB/Columnstore/bin/mcsadmin +alias mcsadmin=/usr/local/MariaDB/Columnstore/bin/mcsadmin +alias home='cd /usr/local/MaridDB/Columnstore' +alias log='cd /var/log/Columnstore/' +alias core='cd /var/log/Columnstore/corefiles' alias tmsg='tail -f /var/log/messages' -alias tdebug='tail -f /var/log/Calpont/debug.log' -alias tinfo='tail -f /var/log/Calpont/info.log' -alias dbrm='cd /usr/local/Calpont/data1/systemFiles/dbrm' -alias module='cat /usr/local/Calpont/local/module' +alias tdebug='tail -f /var/log/Columnstore/debug.log' +alias tinfo='tail -f /var/log/Columnstore/info.log' +alias dbrm='cd /usr/local/MariaDB/Columnstore/data1/systemFiles/dbrm' +alias module='cat /usr/local/MariaDB/Columnstore/local/module' diff --git a/oam/install_scripts/columnstoreLogRotate b/oam/install_scripts/columnstoreLogRotate index 48dec8381..edeee5e1c 100644 --- a/oam/install_scripts/columnstoreLogRotate +++ b/oam/install_scripts/columnstoreLogRotate @@ -3,33 +3,33 @@ # as part of the RPM installation # -/var/log/Calpont/*.log { +/var/log/Columnstore/*.log { missingok rotate 7 daily dateext copytruncate - olddir /var/log/Calpont/archive + olddir /var/log/Columnstore/archive } -/var/log/Calpont/*.log1 { +/var/log/Columnstore/*.log1 { missingok rotate 7 daily nocreate compress - olddir /var/log/Calpont/archive + olddir /var/log/Columnstore/archive } -/usr/local/Calpont/etc/Calpont.xml { +/usr/local/MariaDB/Columnstore/etc/Calpont.xml { daily dateext copy - olddir /usr/local/Calpont/etc/ + olddir /usr/local/MariaDB/Columnstore/etc/ } -/usr/local/Calpont/mysql/db/*.err { +/usr/local/MariaDB/Columnstore/mysql/db/*.err { missingok rotate 7 daily dateext copytruncate - olddir /usr/local/Calpont/mysql/db + olddir /usr/local/MariaDB/Columnstore/mysql/db } diff --git a/oam/install_scripts/columnstoreSyslog b/oam/install_scripts/columnstoreSyslog index 8bc56eb3e..dab3c966b 100644 --- a/oam/install_scripts/columnstoreSyslog +++ b/oam/install_scripts/columnstoreSyslog @@ -1,7 +1,7 @@ # Calpont Database Platform Logging -local1.=crit -/var/log/Calpont/crit.log -local1.=err -/var/log/Calpont/err.log -local1.=warning -/var/log/Calpont/warning.log -local1.=info -/var/log/Calpont/info.log -local1.=debug -/var/log/Calpont/debug.log -local2.=crit -/var/log/Calpont/data/data_mods.log +local1.=crit -/var/log/Columnstore/crit.log +local1.=err -/var/log/Columnstore/err.log +local1.=warning -/var/log/Columnstore/warning.log +local1.=info -/var/log/Columnstore/info.log +local1.=debug -/var/log/Columnstore/debug.log +local2.=crit -/var/log/Columnstore/data/data_mods.log diff --git a/oam/install_scripts/columnstoreSyslog-ng b/oam/install_scripts/columnstoreSyslog-ng index 6b7051bf7..c4d30e3e0 100755 --- a/oam/install_scripts/columnstoreSyslog-ng +++ b/oam/install_scripts/columnstoreSyslog-ng @@ -21,27 +21,27 @@ filter f_local1debug { facility(local1) and level(debug); }; filter f_local2crit { facility(local2) and level(crit); }; destination d_crit{ - file("/var/log/Calpont/crit.log"); + file("/var/log/Columnstore/crit.log"); }; destination d_err{ - file("/var/log/Calpont/err.log"); + file("/var/log/Columnstore/err.log"); }; destination d_warning{ - file("/var/log/Calpont/warning.log"); + file("/var/log/Columnstore/warning.log"); }; destination d_info{ - file("/var/log/Calpont/info.log"); + file("/var/log/Columnstore/info.log"); }; destination d_debug{ - file("/var/log/Calpont/debug.log"); + file("/var/log/Columnstore/debug.log"); }; destination d_data_mods{ - file("/var/log/Calpont/data/data_mods.log"); + file("/var/log/Columnstore/data/data_mods.log"); }; log{ diff --git a/oam/install_scripts/columnstoreSyslog7 b/oam/install_scripts/columnstoreSyslog7 index e5dcd33b9..d3d34cdc9 100644 --- a/oam/install_scripts/columnstoreSyslog7 +++ b/oam/install_scripts/columnstoreSyslog7 @@ -1,8 +1,8 @@ # Calpont Database Platform Logging -local1.crit -/var/log/Calpont/crit.log -local1.err -/var/log/Calpont/err.log -local1.warning -/var/log/Calpont/warning.log -local1.info -/var/log/Calpont/info.log -local1.debug -/var/log/Calpont/debug.log -local2.crit -/var/log/Calpont/data/data_mods.log +local1.crit -/var/log/Columnstore/crit.log +local1.err -/var/log/Columnstore/err.log +local1.warning -/var/log/Columnstore/warning.log +local1.info -/var/log/Columnstore/info.log +local1.debug -/var/log/Columnstore/debug.log +local2.crit -/var/log/Columnstore/data/data_mods.log diff --git a/oam/install_scripts/columnstore~ b/oam/install_scripts/columnstore~ deleted file mode 100644 index cba5ddd4d..000000000 --- a/oam/install_scripts/columnstore~ +++ /dev/null @@ -1,184 +0,0 @@ -#!/bin/bash -# -# $Id: infinidb 3704 2013-08-07 03:33:20Z bwilkinson $ -# -# infinidb Starts Calpont InfiniDB database platform -# -# -# chkconfig: 2345 99 99 -# description: Calpont InfiniDB is a database platform that utilizes Mysql -# -### BEGIN INIT INFO -# Provides: infinidb -# Required-Start: $local_fs $remote_fs $network $syslog $all -# Required-Stop: $local_fs $remote_fs $network $syslog -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Start/stop InfiniDB DW DBMS -### END INIT INFO - -# Source function library. -if [ -f /etc/init.d/functions ]; then - . /etc/init.d/functions -fi - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - test -f /etc/default/infinidb && . /etc/default/infinidb -fi - -if [ -z "$INFINIDB_INSTALL_DIR" ]; then - INFINIDB_INSTALL_DIR=/usr/local/Calpont -fi - -export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR - -InstallDir=$INFINIDB_INSTALL_DIR - -if [ $InstallDir != "/usr/local/Calpont" ]; then - export PATH=$InstallDir/bin:$InstallDir/mysql/bin:/bin:/usr/bin - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$InstallDir/lib:$InstallDir/mysql/lib/mysql -fi - -#hadoop -plugin=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DataFilePlugin` -if [ -n "$plugin" ]; then - setenv=`$InstallDir/bin/getConfig SystemConfig DataFileEnvFile` - . $InstallDir/bin/$setenv >/dev/null 2>&1 -fi - -if [ -e $InstallDir/lib/libjemalloc.so ]; then - export LD_PRELOAD=$InstallDir/lib/libjemalloc.so -elif [ -e $InstallDir/lib/libjemalloc.so.1 ]; then - export LD_PRELOAD=$InstallDir/lib/libjemalloc.so.1 -fi - -test -f $InstallDir/post/functions && . $InstallDir/post/functions - -mt=`module_type` -mid=`module_id` - -has_um=`$InstallDir/bin/getConfig SystemModuleConfig ModuleCount2` -if [ "x$has_um" = x ]; then - has_um=0 -fi - -user=$USER -if [ -z "$user" ]; then - user=root -fi - -checkInstallSetup() { - InitialInstallFlag=`$InstallDir/bin/getConfig -c $InstallDir/etc/Calpont.xml Installation InitialInstallFlag` - if [ $InitialInstallFlag != "y" ]; then - echo "Please run the postConfigure install script, check the Installation Guide" - echo "for additional details" - rm -f /var/lock/subsys/infinidb - exit 1 - fi -} - -[ -f $InstallDir/bin/ProcMon ] || exit 0 - -start() { - if [ -f /var/lock/subsys/infinidb ]; then - echo "InfiniDB Database Platform already running" - exit 0 - fi - - (mkdir -p /var/lock/subsys && touch /var/lock/subsys/infinidb) >/dev/null 2>&1 - - if [ -x $InstallDir/bin/infinidb.pre-start ]; then - $InstallDir/bin/infinidb.pre-start - if [ $? -ne 0 ]; then - echo "Error running InfiniDB pre-start script, not starting InfiniDB" - rm -f /var/lock/subsys/infinidb - exit 1 - fi - fi - checkInstallSetup - - CoreFileFlag=`$InstallDir/bin/getConfig -c $InstallDir/etc/Calpont.xml Installation CoreFileFlag` - if [ $CoreFileFlag = "y" ]; then - SUDO= - if [ "$user" != "root" ]; then - SUDO="sudo" - fi - - #infinidb core files - $SUDO ulimit -c unlimited > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_uses_pid=1 > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_pattern=/var/log/Calpont/corefiles/core.%e.%p > /dev/null 2>&1 - fi - - RETVAL=0 - echo "Starting InfiniDB Database Platform" - rm -f /tmp/StopCalpont - exec $InstallDir/bin/run.sh $InstallDir/bin/ProcMon > /dev/null 2>&1 & - - return $RETVAL -} -stop() { - echo "Shutting down InfiniDB Database Platform" - touch /tmp/StopCalpont - pkill -9 ProcMon - pkill -9 ProcMgr - pkill -9 snmptrapd - sleep 1 - $InstallDir/bin/clearShm - RETVAL=$? - rm -f /var/lock/subsys/infinidb - fuser -k 8604/tcp > /dev/null 2>&1 - test -f $InstallDir/mysql/mysql-Calpont || return $RETVAL - $InstallDir/mysql/mysql-Calpont stop > /dev/null 2>&1 - if [ -x $InstallDir/bin/infinidb.post-stop ]; then - $InstallDir/bin/infinidb.post-stop - fi - return $RETVAL -} -restart() { - stop - start -} -status() { - isrunning=0 - if [ $EUID -eq 0 ]; then - if [ -f /var/lock/subsys/infinidb ]; then - isrunning=1 - fi - else - pgrep ProcMon >/dev/null 2>&1 - if [ $? -eq 0 ]; then - isrunning=1 - fi - fi - if [ $isrunning -ne 0 ]; then - echo "InfiniDB is running" - else - echo "InfiniDB is not running" - exit 3 - fi -} - -case "$1" in -start) - start - ;; -stop) - stop - ;; -restart) - restart - ;; -condrestart) - [ -f /var/lock/subsys/infinidb ] && restart || : - ;; -status) - status - ;; -*) - echo $"Usage: $0 {start|stop|restart|condrestart|status}" - exit 1 -esac - -exit $? - diff --git a/oam/install_scripts/crontab b/oam/install_scripts/crontab index 31da51f75..90aa62f0a 100644 --- a/oam/install_scripts/crontab +++ b/oam/install_scripts/crontab @@ -14,5 +14,5 @@ HOME=/ 42 4 1 * * root run-parts /etc/cron.monthly # Translation Log Archiver, default to every 10 minutes -00,10,20,30,40,50 * * * * root /usr/local/Calpont/bin/transactionLogArchiver.sh +00,10,20,30,40,50 * * * * root /usr/local/MariaDB/Columnstore/bin/transactionLogArchiver.sh diff --git a/oam/install_scripts/infinidb b/oam/install_scripts/infinidb index cba5ddd4d..f30c4fdc6 100644 --- a/oam/install_scripts/infinidb +++ b/oam/install_scripts/infinidb @@ -107,7 +107,7 @@ start() { #infinidb core files $SUDO ulimit -c unlimited > /dev/null 2>&1 $SUDO sysctl -q -w kernel.core_uses_pid=1 > /dev/null 2>&1 - $SUDO sysctl -q -w kernel.core_pattern=/var/log/Calpont/corefiles/core.%e.%p > /dev/null 2>&1 + $SUDO sysctl -q -w kernel.core_pattern=/var/log/Columnstore/corefiles/core.%e.%p > /dev/null 2>&1 fi RETVAL=0 @@ -128,8 +128,8 @@ stop() { RETVAL=$? rm -f /var/lock/subsys/infinidb fuser -k 8604/tcp > /dev/null 2>&1 - test -f $InstallDir/mysql/mysql-Calpont || return $RETVAL - $InstallDir/mysql/mysql-Calpont stop > /dev/null 2>&1 + test -f $InstallDir/mysql/mysql-Columnstore || return $RETVAL + $InstallDir/mysql/mysql-Columnstore stop > /dev/null 2>&1 if [ -x $InstallDir/bin/infinidb.post-stop ]; then $InstallDir/bin/infinidb.post-stop fi diff --git a/oam/install_scripts/module_installer.sh~ b/oam/install_scripts/module_installer.sh~ deleted file mode 100755 index cec9428fb..000000000 --- a/oam/install_scripts/module_installer.sh~ +++ /dev/null @@ -1,167 +0,0 @@ -#!/bin/bash -# -# $Id: module_installer.sh 421 2007-04-05 15:46:55Z dhill $ -# -# Setup the Custom OS files during a System install on a module -# -# -# append calpont OS files to Linux OS file -# -# - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -user=$USER -if [ -z "$user" ]; then - user=root -fi -quiet=0 -shiftcnt=0 - -for arg in "$@"; do - if [ $(expr -- "$arg" : '--prefix=') -eq 9 ]; then - prefix="$(echo $arg | awk -F= '{print $2}')" - installdir=$prefix/MariaDB/Columnstore - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--rpmmode=') -eq 10 ]; then - rpmmode="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--installdir=') -eq 13 ]; then - installdir="$(echo $arg | awk -F= '{print $2}')" - prefix=$(dirname $installdir) - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--user=') -eq 7 ]; then - user="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--quiet') -eq 7 ]; then - quiet=1 - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--port') -eq 6 ]; then - mysqlPort="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - elif [ $(expr -- "$arg" : '--module') -eq 8 ]; then - module="$(echo $arg | awk -F= '{print $2}')" - ((shiftcnt++)) - fi -done -shift $shiftcnt - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql -fi - -export INFINIDB_INSTALL_DIR=$installdir - -cloud=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation Cloud` -if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then - cp $INFINIDB_INSTALL_DIR/local/etc/*.pem /root/. > /dev/null 2>&1 - - if test -f $INFINIDB_INSTALL_DIR/local/etc/pm1/fstab ; then - echo "Setup fstab on Module" - touch /etc/fstab - rm -f /etc/fstab.calpontSave - mv /etc/fstab /etc/fstab.calpontSave - cat $INFINIDB_INSTALL_DIR/local/etc/pm1/fstab >> /etc/fstab - fi -fi - -test -f $INFINIDB_INSTALL_DIR/post/functions && . $INFINIDB_INSTALL_DIR/post/functions - -mid=`module_id` - -#if um, cloud, separate system type, external um storage, then setup mount -if [ $module = "um" ]; then - if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then - systemtype=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation ServerTypeInstall` - if [ $systemtype = "1" ]; then - umstoragetype=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation UMStorageType` - if [ $umstoragetype = "external" ]; then - echo "Setup UM Volume Mount" - device=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation UMVolumeDeviceName$mid` - mkdir -p $INFINIDB_INSTALL_DIR/mysql/db > /dev/null 2>&1 - mount $device $INFINIDB_INSTALL_DIR/mysql/db -t ext2 -o defaults - chown mysql:mysql -R $INFINIDB_INSTALL_DIR/mysql > /dev/null 2>&1 - fi - fi - fi -fi - -#if pm, create dbroot directories -if [ $module = "pm" ]; then - numdbroots=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DBRootCount` - for (( id=1; id<$numdbroots+1; id++ )); do - mkdir -p $INFINIDB_INSTALL_DIR/data$id > /dev/null 2>&1 - chmod 755 $INFINIDB_INSTALL_DIR/data$id - done -fi - -echo "Setup rc.local on Module" -if [ $EUID -eq 0 -a -f $INFINIDB_INSTALL_DIR/local/rc.local.calpont ]; then - if [ $user = "root" ]; then - touch /etc/rc.local - rm -f /etc/rc.local.calpontSave - cp /etc/rc.local /etc/rc.local.calpontSave - cat $INFINIDB_INSTALL_DIR/local/rc.local.calpont >> /etc/rc.local - else - sudo touch /etc/rc.local - sudo rm -f /etc/rc.local.calpontSave - sudo cp /etc/rc.local /etc/rc.local.calpontSave - sudo cat $INFINIDB_INSTALL_DIR/local/rc.local.calpont >> /etc/rc.local - fi -fi - -if [ $user != "root" ]; then - echo "Setup .bashrc on Module for non-root" - - eval userhome=~$user - bashFile=$userhome/.bashrc - touch ${bashFile} - - echo " " >> ${bashFile} - echo "export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR" >> ${bashFile} - echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFINIDB_INSTALL_DIR/lib:$INFINIDB_INSTALL_DIR/mysql/lib/mysql" >> ${bashFile} -fi - -plugin=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DataFilePlugin` -if [ -n "$plugin" ]; then - echo "Setup .bashrc on Module for local-query" - - setenv=`$INFINIDB_INSTALL_DIR/bin/getConfig SystemConfig DataFileEnvFile` - - eval userhome=~$user - bashFile=$userhome/.bashrc - touch ${bashFile} - - echo " " >> ${bashFile} - echo ". $INFINIDB_INSTALL_DIR/bin/$setenv" >> ${bashFile} -fi - -# if mysqlrep is on and module has a my.cnf file, upgrade it - -MySQLRep=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation MySQLRep` -if [ $MySQLRep = "y" ]; then - if test -f $INFINIDB_INSTALL_DIR/mysql/my.cnf ; then - echo "Run Upgrade on my.cnf on Module" - $INFINIDB_INSTALL_DIR/bin/mycnfUpgrade > /tmp/mycnfUpgrade.log 2>&1 - fi -fi - -if test -f $INFINIDB_INSTALL_DIR/mysql/my.cnf ; then - echo "Run Mysql Port update on my.cnf on Module" - $INFINIDB_INSTALL_DIR/bin/mycnfUpgrade $mysqlPort > /tmp/mycnfUpgrade_port.log 2>&1 -fi - -# if um, run mysql install scripts -if [ $module = "um" ]; then - echo "Run post-mysqld-install" - $INFINIDB_INSTALL_DIR/bin/post-mysqld-install > /tmp/post-mysqld-install.log 2>&1 - echo "Run post-mysql-install" - $INFINIDB_INSTALL_DIR/bin/post-mysql-install > /tmp/post-mysql-install.log 2>&1 -fi - - -echo " " -echo "!!!Module Installation Successfully Completed!!!" - -exit 0 diff --git a/oam/install_scripts/post-install b/oam/install_scripts/post-install index c55bab2ec..a126601c7 100755 --- a/oam/install_scripts/post-install +++ b/oam/install_scripts/post-install @@ -101,14 +101,14 @@ chown -h $user.$user libjemalloc.so >/dev/null 2>&1 cd / -test -d /var/log/Calpont || mkdir /var/log/Calpont >/dev/null 2>&1 -test -d /var/log/Calpont/archive || mkdir /var/log/Calpont/archive >/dev/null 2>&1 -test -d /var/log/Calpont/corefiles || mkdir /var/log/Calpont/corefiles >/dev/null 2>&1 -test -d /var/log/Calpont/trace || mkdir /var/log/Calpont/trace >/dev/null 2>&1 -test -h /var/log/Calpont/data && rm -f /var/log/Calpont/data -test -d /var/log/Calpont/data || mkdir /var/log/Calpont/data >/dev/null 2>&1 +test -d /var/log/Columnstore || mkdir /var/log/Columnstore >/dev/null 2>&1 +test -d /var/log/Columnstore/archive || mkdir /var/log/Columnstore/archive >/dev/null 2>&1 +test -d /var/log/Columnstore/corefiles || mkdir /var/log/Columnstore/corefiles >/dev/null 2>&1 +test -d /var/log/Columnstore/trace || mkdir /var/log/Columnstore/trace >/dev/null 2>&1 +test -h /var/log/Columnstore/data && rm -f /var/log/Columnstore/data +test -d /var/log/Columnstore/data || mkdir /var/log/Columnstore/data >/dev/null 2>&1 # make sure trace dir is world-writable and sticky -chmod 1755 /var/log/Calpont/trace >/dev/null 2>&1 +chmod 1755 /var/log/Columnstore/trace >/dev/null 2>&1 test -d $installdir/data || mkdir $installdir/data test -d $installdir/data1 || mkdir $installdir/data1 test -d $installdir/data1/systemFiles || mkdir $installdir/data1/systemFiles @@ -132,12 +132,12 @@ chmod -R 755 $installdir/data/bulk >/dev/null 2>&1 mkdir -p /tmp/infinidb_tmp_files >/dev/null 2>&1 #setup core file directory and link -mkdir /var/log/Calpont/corefiles > /dev/null 2>&1 -chmod 755 /var/log/Calpont/corefiles > /dev/null 2>&1 +mkdir /var/log/Columnstore/corefiles > /dev/null 2>&1 +chmod 755 /var/log/Columnstore/corefiles > /dev/null 2>&1 #create mount directories mkdir /mnt/tmp > /dev/null 2>&1 -mkdir /var/log/Calpont/data/archive > /dev/null 2>&1 +mkdir /var/log/Columnstore/data/archive > /dev/null 2>&1 # install Calpont Log Rotate File test -d $installdir/mysql/db || mkdir -p $installdir/mysql/db @@ -169,9 +169,9 @@ else sudo $installdir/bin/syslogSetup.sh --installdir=$installdir install > /tmp/syslog_install.log 2>&1 sudo chown $user:$user $installdir/etc/Calpont.xml sudo chmod 755 /var/log - sudo chmod -R 755 /var/log/Calpont + sudo chmod -R 755 /var/log/Columnstore sudo chmod -R 777 /dev/shm - sudo rm -f /var/lock/subsys/mysql-Calpont + sudo rm -f /var/lock/subsys/mysql-Columnstore sudo rm -f /tmp/StopCalpont sed -i -e s@/usr/local/MariaDB/Columnstore@$installdir@g $installdir/bin/infinidb.def diff --git a/oam/install_scripts/post-install~ b/oam/install_scripts/post-install~ deleted file mode 100755 index 0cb541031..000000000 --- a/oam/install_scripts/post-install~ +++ /dev/null @@ -1,336 +0,0 @@ -#!/bin/bash -# -# $Id: post-install 3705 2013-08-07 19:47:20Z dhill $ -# -# Post-install steps for calpont install - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -user=$USER -if [ -z "$user" ]; then - user=root -fi -quiet=0 - -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--rpmmode='` -eq 10 ]; then - rpmmode="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--user='` -eq 7 ]; then - user="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--quiet'` -eq 7 ]; then - quiet=1 - elif [ `expr -- "$arg" : '--plugin='` -eq 9 ]; then - plugin="`echo $arg | awk -F= '{print $2}'`" - else - echo "post-install: ignoring unknown argument: $arg" 1>&2 - fi -done - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - export INFINIDB_INSTALL_DIR=$installdir - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$installdir/lib -else - # add library config file - /bin/cp -f $installdir/bin/infinidb.conf /etc/ld.so.conf.d/. - ldconfig -fi - -#check 64-bit OS compatiable -arch=`uname -m` -patcnt=`expr "$arch" : 'i.86'` -is64bitos=1 -if [ $patcnt -ne 0 ]; then - is64bitos=0 -fi -is64bitpkg=1 -file $installdir/bin/PrimProc | grep '64-bit' >/dev/null 2>&1 -if [ $? -ne 0 ]; then - is64bitpkg=0 -fi -if [ $is64bitpkg -eq 1 -a $is64bitos -ne 1 ]; then - echo "ERROR: Incompatiable Version, package is intended for a x86_64 architecture" - echo "exiting...." - exit 1 -fi - -if [ ! -f $installdir/etc/Calpont.xml ]; then - echo "$installdir/etc/Calpont.xml not found, exiting" - exit 1 -fi - -cd $installdir/lib || exit 1 -for lib in *.so.1.0.0; do - blib=`basename $lib .1.0.0` - ln -sf $lib $blib -done -chown -h $user.$user *.so >/dev/null 2>&1 -if [ -f libnetsnmp.so.5.2.1 ]; then - for lib in *.so.5.2.1; do - blib=`basename $lib .5.2.1` - ln -sf $lib $blib - ln -sf $lib ${blib}.5 - done - chown -h $user.$user *.so *.so.5 >/dev/null 2>&1 -fi -if [ -f libstdc++.so.6.0.14 ]; then - ln -sf libstdc++.so.6.0.14 libstdc++.so.6 - chown -h $user.$user libstdc++.so.6 >/dev/null 2>&1 -fi - -ln -sf libjemalloc.so.3.3.0 libjemalloc.so -chown -h $user.$user libjemalloc.so >/dev/null 2>&1 - -# TODO-based on early experience with HDP it doesn't install bigtop -# so the code below will not correctly detect JAVA_HOME. Need to -# decide how to handle -# Autodetect JAVA_HOME if not defined -#if [ -e /usr/libexec/bigtop-detect-javahome ]; then -#. /usr/libexec/bigtop-detect-javahome -#elif [ -e /usr/lib/bigtop-utils/bigtop-detect-javahome ]; then -#. /usr/lib/bigtop-utils/bigtop-detect-javahome -#fi -#ln -sf $JAVA_HOME/jre/lib/amd64/server/libjvm.so -#chown -h $user.$user libjvm.so >/dev/null 2>&1 - -cd / - -test -d /var/log/Calpont || mkdir /var/log/Calpont >/dev/null 2>&1 -test -d /var/log/Calpont/archive || mkdir /var/log/Calpont/archive >/dev/null 2>&1 -test -d /var/log/Calpont/corefiles || mkdir /var/log/Calpont/corefiles >/dev/null 2>&1 -test -d /var/log/Calpont/trace || mkdir /var/log/Calpont/trace >/dev/null 2>&1 -test -h /var/log/Calpont/data && rm -f /var/log/Calpont/data -test -d /var/log/Calpont/data || mkdir /var/log/Calpont/data >/dev/null 2>&1 -# make sure trace dir is world-writable and sticky -chmod 1755 /var/log/Calpont/trace >/dev/null 2>&1 -test -d $installdir/data || mkdir $installdir/data -test -d $installdir/data1 || mkdir $installdir/data1 -test -d $installdir/data1/systemFiles || mkdir $installdir/data1/systemFiles -test -d $installdir/data1/systemFiles/dbrm || mkdir $installdir/data1/systemFiles/dbrm -test -d $installdir/data1/systemFiles/dataTransaction || rmdir $installdir/data1/systemFiles/dataTransaction >/dev/null 2>&1 -test -d $installdir/data1/systemFiles/dataTransaction/archive || rmdir $installdir/data1/systemFiles/dataTransaction/archive >/dev/null 2>&1 -chmod 1755 $installdir/data1 >/dev/null 2>&1 -chmod -R 1755 $installdir/data1/systemFiles >/dev/null 2>&1 -chmod 1755 $installdir/etc > /dev/null 2>&1 - -#create the bulk-load dirs -mkdir -p $installdir/data/bulk/data/import >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/log >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/job >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/rollback >/dev/null 2>&1 -mkdir -p $installdir/data/bulk/tmpjob >/dev/null 2>&1 -rm -f $installdir/data/bulk/tmpjob/* >/dev/null 2>&1 -chmod -R 755 $installdir/data/bulk >/dev/null 2>&1 - -#create infinidb temp file directory -mkdir -p /tmp/infinidb_tmp_files >/dev/null 2>&1 - -#setup core file directory and link -mkdir /var/log/Calpont/corefiles > /dev/null 2>&1 -chmod 755 /var/log/Calpont/corefiles > /dev/null 2>&1 - -#create mount directories -mkdir /mnt/tmp > /dev/null 2>&1 -mkdir /var/log/Calpont/data/archive > /dev/null 2>&1 - -# install Calpont Log Rotate File -test -d $installdir/mysql/db || mkdir -p $installdir/mysql/db -cp $installdir/bin/calpontLogRotate /etc/logrotate.d/calpont > /dev/null 2>&1 -rm -rf $installdir/mysql/db/infinidb_log_archive > /dev/null 2>&1 - -# delete Calpont shared memory segments -$installdir/bin/Calpont/bin/clearShm > /dev/null 2>&1 - -#setup the infinidb service script -rm -f /etc/init.d/infinidb >/dev/null 2>&1 -cp $installdir/bin/infinidb /etc/init.d >/dev/null 2>&1 -if [ -x /sbin/chkconfig ]; then - /sbin/chkconfig --add infinidb > /dev/null 2>&1 - /sbin/chkconfig infinidb on > /dev/null 2>&1 -elif [ -x /usr/sbin/update-rc.d ]; then - /usr/sbin/update-rc.d infinidb defaults 99 > /dev/null 2>&1 -else - echo "" - echo "Package 'chkconfig' or 'update-rc.d' not installed, contact your sysadmin if you want to setup to autostart for infinidb" -fi - -#setup InfiniDB system logging -if [ $user = "root" ]; then - $installdir/bin/syslogSetup.sh install > /tmp/syslog_install.log 2>&1 - chmod 777 -R /dev/shm - rm -f /etc/default/infinidb -else - sudo $installdir/bin/syslogSetup.sh --installdir=$installdir install > /tmp/syslog_install.log 2>&1 - sudo chown $user:$user $installdir/etc/Calpont.xml - sudo chmod 755 /var/log - sudo chmod -R 755 /var/log/Calpont - sudo chmod -R 777 /dev/shm - sudo rm -f /var/lock/subsys/mysql-Calpont - sudo rm -f /tmp/StopCalpont - - sed -i -e s@/usr/local/MariaDB/Columnstore@$installdir@g $installdir/bin/infinidb.def - sudo cp $installdir/bin/infinidb.def /etc/default/infinidb -fi - -#check if InfiniDB system logging was setup -cat /tmp/syslog_install.log | grep 'No System Logging' >/dev/null 2>&1 -if [ $? -eq 0 ]; then - cat /tmp/syslog_install.log -fi - -#setup alias commands -eval userhome=~$user -bashFile=$userhome/.bashrc -touch ${bashFile} -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - sed -i -e s@/usr/local/MariaDB/Columnstore@$installdir@g $installdir/bin/calpontAlias -fi -egrep -qs 'Calpont Database Platform Alias Commands' ${bashFile} -rc1=$? -egrep -qs 'InfiniDB Alias Commands' ${bashFile} -rc2=$? -if [ $rc1 -ne 0 -a $rc2 -ne 0 ]; then - rm -f ${bashFile}.calpontSave - cp ${bashFile} ${bashFile}.calpontSave >/dev/null 2>&1 - cat $installdir/bin/calpontAlias >> ${bashFile} - echo " " >> ${bashFile} -fi - -#check and get amazon EC2 env variables -if [ -n "$EC2_HOME" ]; then - $installdir/bin/setConfig -d Installation EC2_HOME $EC2_HOME - - if [ -n "$EC2_HOME" ]; then - $installdir/bin/setConfig -d Installation JAVA_HOME $JAVA_HOME - fi - - $installdir/bin/setConfig -d Installation EC2_PATH $PATH:/home/ec2/bin:/opt/aws/bin -fi - -#log install message -test -f $installdir/post/functions && . $installdir/post/functions -LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$installdir/lib $installdir/bin/cplogger -i 19 "***** InfiniDB Installed *****" - -#setup hadoop -hadoop=`which hadoop 2>/dev/null` -if [ -z $hadoop ]; then - #check for non-root user - if [ $installdir != "/usr/local/MariaDB/Columnstore" -a $quiet -eq 0 ]; then -cat < /tmp/hdfs-20-test.log 2>&1 - if [ $? -eq 0 ]; then - #Passed set in config file - $installdir/bin/setConfig -d SystemConfig DataFilePlugin $installdir/lib/hdfs-20.so - $installdir/bin/setConfig -d SystemConfig DataFileEnvFile setenv-hdfs-20 - - #check for non-root user - if [ $installdir != "/usr/local/MariaDB/Columnstore" -a $quiet -eq 0 ]; then -cat < /tmp/hdfs-12-test.log 2>&1 - if [ $? -eq 0 ]; then - #Passed set in config file - $installdir/bin/setConfig -d SystemConfig DataFilePlugin $installdir/lib/hdfs-12.so - $installdir/bin/setConfig -d SystemConfig DataFileEnvFile setenv-hdfs-12 - - if [ $installdir != "/usr/local/MariaDB/Columnstore" -a $quiet -eq 0 ]; then -cat </dev/null 2>&1 + $installdir/mysql/mysql-Columnstore stop >/dev/null 2>&1 sleep 2 - $installdir/mysql/mysql-Calpont start + $installdir/mysql/mysql-Columnstore start sleep 5 @@ -111,13 +111,13 @@ if [ -x $installdir/mysql/mysql-Calpont ]; then checkForError if [ $? -ne 0 ]; then echo "ERROR: missing or invalid password, or InfiniDB plugin install missing" - $installdir/mysql/mysql-Calpont stop + $installdir/mysql/mysql-Columnstore stop sleep 2 exit 1; fi fi - $installdir/mysql/mysql-Calpont stop + $installdir/mysql/mysql-Columnstore stop fi exit 0 diff --git a/oam/install_scripts/post-mysqld-install b/oam/install_scripts/post-mysqld-install index 612055f39..4408ed1b8 100755 --- a/oam/install_scripts/post-mysqld-install +++ b/oam/install_scripts/post-mysqld-install @@ -79,7 +79,7 @@ chmod -R og-rw $mysql_datadir/mysql # Change permissions again to fix any new files. chown -R $user.$user $installdir/mysql -test -e /etc/init.d/mysql-Calpont || cp $installdir/mysql/mysql-Calpont /etc/init.d >/dev/null 2>&1 +test -e /etc/init.d/mysql-Columnstore || cp $installdir/mysql/mysql-Columnstore /etc/init.d >/dev/null 2>&1 if [ -f $installdir/lib/libcalmysql.so.1.0.0 ]; then libcalmysql=$installdir/lib/libcalmysql.so.1.0.0 diff --git a/oam/install_scripts/pre-uninstall b/oam/install_scripts/pre-uninstall index 6b73fb5d8..ba4a8616a 100755 --- a/oam/install_scripts/pre-uninstall +++ b/oam/install_scripts/pre-uninstall @@ -72,10 +72,10 @@ if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then fi #remove log file directories -#rm -rf /var/log/Calpont > /dev/null 2>&1 +#rm -rf /var/log/Columnstore > /dev/null 2>&1 #rm -f $installdir/mysql/db/*.err > /dev/null 2>&1 -rm -f /var/log/Calpont/activeAlarms > /dev/null 2>&1 -rm -f /var/log/Calpont/*.log1 > /dev/null 2>&1 +rm -f /var/log/Columnstore/activeAlarms > /dev/null 2>&1 +rm -f /var/log/Columnstore/*.log1 > /dev/null 2>&1 rm -rf $installdir/mysql/db/infinidb_log_archive > /dev/null 2>&1 sudo rm -f /etc/default/infinidb @@ -116,7 +116,7 @@ else fi # delete core files -#rm -f /var/log/Calpont/corefiles/* > /dev/null 2>&1 +#rm -f /var/log/Columnstore/corefiles/* > /dev/null 2>&1 #uninstall InfiniDB system logging if [ -x $installdir/bin/syslogSetup.sh ]; then diff --git a/oam/install_scripts/pre-uninstall~ b/oam/install_scripts/pre-uninstall~ deleted file mode 100755 index ce85dea5d..000000000 --- a/oam/install_scripts/pre-uninstall~ +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/bash -# -# $Id: post-uninstall 421 2007-04-05 15:46:55Z dhill $ -# -# Post-uninstall steps for calpont install - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -rpmmode=install -user=$USER -sudo=sudo -if [ -z "$user" ]; then - user=root - sudo=" " -fi -quiet=0 - -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--rpmmode='` -eq 10 ]; then - rpmmode="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--user='` -eq 7 ]; then - user="`echo $arg | awk -F= '{print $2}'`" - elif [ `expr -- "$arg" : '--quiet'` -eq 7 ]; then - quiet=1 - else - echo "post-uninstall: ignoring unknown argument: $arg" 1>&2 - fi -done - -#stop services -$installdir/bin/infinidb stop > /dev/null 2>&1 -if test -f /etc/init.d/calpont-Mysql ; then - $installdir/myql/calpont-Mysql stop > /dev/null 2>&1 -fi - -if [ $installdir == "/usr/local/MariaDB/Columnstore" ]; then - # remove library config file - rm -f /etc/ld.so.conf.d/infinidb.conf - rm -f /etc/ld.so.cache - ldconfig -fi - -# uninstall OS scripts updated by postConfigure -if test -f /root/.bashrc.calpontSave ; then - $sudo mv -f /root/.bashrc.calpontSave /root/.bashrc > /dev/null 2>&1 -fi -if test -f /etc/exports.calpontSave ; then - $sudo mv -f /etc/exports.calpontSave /etc/exports > /dev/null 2>&1 -else - $sudo rm -f /etc/exports > /dev/null 2>&1 -fi -if test -f /etc/rc.d/rc.local.calpontSave ; then - $sudo mv -f /etc/rc.d/rc.local.calpontSave /etc/rc.d/rc.local > /dev/null 2>&1 -fi -if test -f /etc/rc.local.calpontSave ; then - $sudo mv -f /etc/rc.local.calpontSave /etc/rc.local > /dev/null 2>&1 -fi - -export INFINIDB_INSTALL_DIR=$installdir - -cloud=`$INFINIDB_INSTALL_DIR/bin/getConfig Installation Cloud` -if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then - if test -f /etc/fstab ; then - $sudo sed -i '/Calpont\/data/d' /etc/fstab > /dev/null 2>&1 - fi -fi - -#remove log file directories -#rm -rf /var/log/Calpont > /dev/null 2>&1 -#rm -f $installdir/mysql/db/*.err > /dev/null 2>&1 -rm -f /var/log/Calpont/activeAlarms > /dev/null 2>&1 -rm -f /var/log/Calpont/*.log1 > /dev/null 2>&1 -rm -rf $installdir/mysql/db/infinidb_log_archive > /dev/null 2>&1 -sudo rm -f /etc/default/infinidb - -# remove Calpont Log Rotate File abd Transaction Log File -rm -f /etc/logrotate.d/calpont > /dev/null 2>&1 -rm -f /etc/cron.d/transactionLog > /dev/null 2>&1 - -# delete Calpont shared memory segments -pkill -9 ProcMon -$installdir/bin/clearShm > /dev/null 2>&1 - -# delete prat files -rm -f /etc/cron.d/ps > /dev/null 2>&1 -rm -f /etc/pscollect > /dev/null 2>&1 -/etc/init.d/crond reload > /dev/null 2>&1 -systemctl reload crond.service > /dev/null 2>&1 - -# delete tmp files -rm -f $installdir/local/*.calpont -rm -rf $installdir/local/etc/ -rm -rf /tmp/bucketreuse -rm -f /tmp/calpont.txt -rm -f /tmp/dbbuilder.* -rm -f /tmp/dbrmfiles -rm -f /var/lock/subsys/infinidb -rm -f /tmp/pkgcheck -rm -f /tmp/upgrade-status.log.* -rm -f /tmp/mount.log -rm -f $installdir/data/bulk/tmpjob/* >/dev/null 2>&1 -rm -rf /tmp/infinidb_tmp_files -rm -f $installdir/local/moveDbrootTransactionLog - -#delete any old setenv files under home directory -if [ $user = "root" ]; then - rm -f /root/setenv-hdfs* -else - rm -f /home/$user/setenv-hdfs* -fi - -# delete core files -#rm -f /var/log/Calpont/corefiles/* > /dev/null 2>&1 - -#uninstall InfiniDB system logging -if [ -x $installdir/bin/syslogSetup.sh ]; then - if [ $user = "root" ]; then - $installdir/bin/syslogSetup.sh uninstall >/dev/null 2>&1 - rm -f /etc/init.d/infinidb > /dev/null 2>&1 - else - sudo $installdir/bin/syslogSetup.sh uninstall >/dev/null 2>&1 - fi -fi - -if [ -x /sbin/chkconfig ]; then - /sbin/chkconfig infinidb off > /dev/null 2>&1 - /sbin/chkconfig --del infinidb > /dev/null 2>&1 -elif [ -x /usr/sbin/update-rc.d ]; then - /usr/sbin/update-rc.d -f infinidb remove > /dev/null 2>&1 -fi - -if [ $quiet != 1 ]; then - #make copy of Calpont.xml - /bin/cp -f $installdir/etc/Calpont.xml $installdir/etc/Calpont.xml.rpmsave > /dev/null 2>&1 - /bin/cp -f $installdir/mysql/my.cnf $installdir/mysql/my.cnf.rpmsave > /dev/null 2>&1 -fi - -#umount file systems -if [ $user = "root" ]; then - rm -f $installdir/data*/OAMdbrootCheck > /dev/null 2>&1 -else - sudo rm -f $installdir/data*/OAMdbrootCheck > /dev/null 2>&1 -fi - -#tell user to run post configure script -echo " " -echo "Calpont uninstall completed" - -exit 0 - diff --git a/oam/install_scripts/syslogSetup.sh b/oam/install_scripts/syslogSetup.sh index 549ba01d6..0ab0d3aa3 100644 --- a/oam/install_scripts/syslogSetup.sh +++ b/oam/install_scripts/syslogSetup.sh @@ -161,7 +161,7 @@ if [ ! -z "$syslog_conf" ] ; then if [ $rsyslog7 == 1 ]; then rm -f /etc/rsyslog.d/49-calpont.conf cat ${columnstoreSyslogFile7} >> ${syslog_conf} - chown syslog:adm /var/log/Calpont + chown syslog:adm /var/log/Columnstore else cat ${columnstoreSyslogFile} >> ${syslog_conf} fi @@ -228,7 +228,7 @@ test -f $installdir/post/functions && . $installdir/post/functions number=$RANDOM cplogger -i 100 "InfiniDB Log Test: $number" sleep 3 -egrep -qs "InfiniDB Log Test: $number" /var/log/Calpont/info.log +egrep -qs "InfiniDB Log Test: $number" /var/log/Columnstore/info.log if [ $? -eq 0 ]; then echo "InfiniDB System Logging working" exit 0 diff --git a/oam/install_scripts/syslogSetup.sh~ b/oam/install_scripts/syslogSetup.sh~ deleted file mode 100644 index 60ac3c7bb..000000000 --- a/oam/install_scripts/syslogSetup.sh~ +++ /dev/null @@ -1,262 +0,0 @@ -#!/bin/bash -# -# $Id: syslogSetup.sh 421 2007-04-05 15:46:55Z dhill $ -# -# syslogSetup.sh - install / uninstall Calpont InfiniDB system logging configuration - -# no point in going any further if not root... (only works in bash) -test $EUID -eq 0 || exit 0 - -prefix=/usr/local -installdir=$prefix/MariaDB/Columnstore -syslog_conf=nofile -rsyslog7=0 - -for arg in "$@"; do - if [ `expr -- "$arg" : '--prefix='` -eq 9 ]; then - prefix="`echo $arg | awk -F= '{print $2}'`" - installdir=$prefix/MariaDB/Columnstore - elif [ `expr -- "$arg" : '--installdir='` -eq 13 ]; then - installdir="`echo $arg | awk -F= '{print $2}'`" - prefix=`dirname $installdir` - elif [ `expr -- "$arg" : '--..*'` -ge 3 ]; then - echo "ignoring unknown argument: $arg" 1>&2 - elif [ `expr -- "$arg" : '--'` -eq 2 ]; then - shift - break - else - break - fi - shift -done - -if [ $installdir != "/usr/local/MariaDB/Columnstore" ]; then - export INFINIDB_INSTALL_DIR=$installdir - export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INFINIDB_INSTALL_DIR/lib -fi - -calpontSyslogFile=$installdir/bin/calpontSyslog -calpontSyslogFile7=$installdir/bin/calpontSyslog7 - -checkSyslog() { -#check which syslog daemon is being used -#first check which is running -daemon="nodaemon" -cnt=`ps -ef | grep -v grep | grep syslog-ng | wc -l` -if [ $cnt -gt 0 ]; then - daemon="syslog-ng" -else cnt=`ps -ef | grep -v grep | grep rsyslog | wc -l` - if [ $cnt -ge 1 ]; then - daemon="rsyslog" - else cnt=`ps -ef | grep -v grep | grep syslogd | wc -l` - if [ $cnt -ge 1 ]; then - if [ "$daemon" != "rsyslog" ]; then - daemon=syslog - fi - fi - fi -fi - -#if none running, check installed -if [ "$daemon" = "nodaemon" ]; then - if [ -f /etc/init.d/syslog ]; then - daemon="syslog" - /etc/init.d/syslog start > /dev/null 2>&1 - elif [ -f /etc/init.d/rsyslog ]; then - daemon="rsyslog" - /etc/init.d/rsyslog start > /dev/null 2>&1 - elif [ -f /etc/init.d/syslog-ng ]; then - daemon="syslog-ng" - /etc/init.d/syslog-ng start > /dev/null 2>&1 - fi -fi - -#if none running or installed, exit -if [ "$daemon" = "nodaemon" ]; then - echo "" - echo "*** No System Logging Application found (syslog, rsyslog, or syslog-ng)" - echo "*** For InfiniDB System Logging functionality, install a System Logging package and reinstall InfiniDB" - echo "" - exit 1 -fi - -#check which syslog config file is installed -if [ "$daemon" = "syslog-ng" ]; then - if [ -f /etc/syslog-ng/syslog-ng.conf ]; then - syslog_conf=/etc/syslog-ng/syslog-ng.conf - calpontSyslogFile=$installdir/bin/calpontSyslog-ng - echo "" - echo "System logging being used: syslog-ng" - echo "" - fi -elif [ "$daemon" = "rsyslog" ]; then - #check if rsyslog version 7 or greater - rsyslogd -v > /tmp/rsyslog.ver - cnt=`grep "rsyslogd 7" /tmp/rsyslog.ver | wc -l` - if [ $cnt -gt 0 ]; then - rsyslog7=1 - fi - cnt=`grep "rsyslogd 8" /tmp/rsyslog.ver | wc -l` - if [ $cnt -gt 0 ]; then - rsyslog7=1 - fi - cnt=`grep "rsyslogd 9" /tmp/rsyslog.ver | wc -l` - if [ $cnt -gt 0 ]; then - rsyslog7=1 - fi - - if [ -f /etc/rsyslog.conf ]; then - cnt=`grep "/etc/rsyslog.d/" /etc/rsyslog.conf | wc -l` - if [ $cnt -gt 0 ]; then - if [ $rsyslog7 == 1 ]; then - syslog_conf=/etc/rsyslog.d/49-calpont.conf - else - syslog_conf=/etc/rsyslog.d/calpont.conf - fi - else - syslog_conf=/etc/rsyslog.conf - fi - echo "" - echo "System logging being used: rsyslog" - echo "" - fi -elif [ "$daemon" = "syslog" ]; then - if [ -f /etc/syslog.conf ]; then - syslog_conf=/etc/syslog.conf - echo "" - echo "System logging being used: syslog" - echo "" - elif [ -d /etc/syslog-ng/syslog-ng.conf ]; then - syslog_conf=/etc/syslog-ng/syslog-ng.conf - calpontSyslogFile=$installdir/bin/calpontSyslog-ng - echo "" - echo "System logging being used: syslog-ng" - echo "" - fi -else - echo "" - echo "*** No System Logging Application found (syslog, rsyslog, or syslog-ng)" - echo "*** For InfiniDB System Logging functionality, install a System Logging package and reinstall InfiniDB" - echo "" - exit 1 -fi - -} - -install() { -checkSyslog -if [ ! -z "$syslog_conf" ] ; then - $installdir/bin/setConfig -d Installation SystemLogConfigFile ${syslog_conf} >/dev/null 2>&1 - if [ "$syslog_conf" != /etc/rsyslog.d/calpont.conf ]; then - rm -f ${syslog_conf}.calpontSave - cp ${syslog_conf} ${syslog_conf}.calpontSave >/dev/null 2>&1 - sed -i '/# Calpont/,$d' ${syslog_conf}.calpontSave > /dev/null 2>&1 - fi - - egrep -qs 'Calpont Database Platform Logging' ${syslog_conf} - if [ $? -ne 0 ]; then - #set the syslog for calpont logging - # remove older version incase it was installed by previous build - rm -rf /etc/rsyslog.d/calpont.conf - if [ $rsyslog7 == 1 ]; then - rm -f /etc/rsyslog.d/49-calpont.conf - cat ${calpontSyslogFile7} >> ${syslog_conf} - chown syslog:adm /var/log/Calpont - else - cat ${calpontSyslogFile} >> ${syslog_conf} - fi - fi - - pkill -hup syslogd > /dev/null 2>&1 - pkill -hup syslog-ng > /dev/null 2>&1 - pkill -hup rsyslogd > /dev/null 2>&1 - /etc/init.d/rsyslog restart > /dev/null 2>&1 - systemctl restart rsyslog.service > /dev/null 2>&1 -fi - -} - -uninstall() { -checkSyslog -if [ ! -z "$syslog_conf" ] ; then - if [ "$syslog_conf" != /etc/rsyslog.d/calpont.conf ]; then - if [ "$syslog_conf" != /etc/rsyslog.d/49-calpont.conf ]; then - egrep -qs 'Calpont Database Platform Logging' ${syslog_conf} - if [ $? -eq 0 ]; then - if [ -f ${syslog_conf}.calpontSave ] ; then - #uninstall the syslog for calpont logging - mv -f ${syslog_conf} ${syslog_conf}.calpontBackup - mv -f ${syslog_conf}.calpontSave ${syslog_conf} >/dev/null 2>&1 - if [ ! -f ${syslog_conf} ] ; then - cp ${syslog_conf}.calpontBackup ${syslog_conf} - fi - fi - fi - sed -i '/# Calpont/,$d' ${syslog_conf} > /dev/null 2>&1 - else - rm -f "$syslog_conf" - fi - else - rm -f "$syslog_conf" - fi - - pkill -hup syslogd > /dev/null 2>&1 - pkill -hup syslog-ng > /dev/null 2>&1 - /etc/init.d/rsyslog restart > /dev/null 2>&1 - systemctl restart rsyslog.service > /dev/null 2>&1 - - $installdir/bin/setConfig -d Installation SystemLogConfigFile "unassigned" - -fi - -} - -status() { -checkSyslog -if [ ! -z "$syslog_conf" ] ; then - egrep -qs 'Calpont Database Platform Logging' ${syslog_conf} - if [ $? -eq 0 ]; then - echo $syslog_conf - else - echo "No System Log Config File configured for InfiniDB System Logging" - fi -fi -} - -check() { -test -f $installdir/post/functions && . $installdir/post/functions -number=$RANDOM -cplogger -i 100 "InfiniDB Log Test: $number" -sleep 3 -egrep -qs "InfiniDB Log Test: $number" /var/log/Calpont/info.log -if [ $? -eq 0 ]; then - echo "InfiniDB System Logging working" - exit 0 -else - echo "InfiniDB System Logging not working" - exit 1 -fi -} - - -case "$1" in - install) - install - ;; - uninstall) - uninstall - ;; - status) - status - ;; - check) - check - ;; - *) - echo $"Usage: $0 {install|uninstall|status|check)" - exit 1 -esac - - -exit 0 -/ diff --git a/oam/install_scripts/transactionLog b/oam/install_scripts/transactionLog index 3763b5cd2..f1cbbf6bc 100644 --- a/oam/install_scripts/transactionLog +++ b/oam/install_scripts/transactionLog @@ -8,5 +8,5 @@ MAILTO=root HOME=/ # Translation Log Archiver, default to every 10 minutes -*/10 * * * * root /usr/local/Calpont/bin/transactionLogArchiver.sh +*/10 * * * * root /usr/local/MariaDB/Columnstore/bin/transactionLogArchiver.sh diff --git a/oam/install_scripts/transactionLogArchiver.sh b/oam/install_scripts/transactionLogArchiver.sh index 7e5a47f39..b5f74d234 100755 --- a/oam/install_scripts/transactionLogArchiver.sh +++ b/oam/install_scripts/transactionLogArchiver.sh @@ -3,7 +3,7 @@ # $Id: transactionLogArchiver.sh 1375 2009-04-30 13:53:06Z rdempsey $ DATE=`date +'%s'` -CDATA=/var/log/Calpont/data +CDATA=/var/log/Columnstore/data if [ ! -d $CDATA/archive ]; then echo "Installation error: $CDATA/archive is not a directory." 1>&2 diff --git a/oam/oamcpp/liboamcpp.cpp b/oam/oamcpp/liboamcpp.cpp index 0b07f2faf..f475ba27d 100644 --- a/oam/oamcpp/liboamcpp.cpp +++ b/oam/oamcpp/liboamcpp.cpp @@ -2320,7 +2320,7 @@ namespace oam moduleName = boost::get<0>(st); } catch (...) { - //system("touch /var/log/Calpont/test2"); + //system("touch /var/log/Columnstore/test2"); } for ( int i = 0 ; i < 5 ; i++) @@ -2342,7 +2342,7 @@ namespace oam } catch(...) { - //system("touch /var/log/Calpont/test3"); + //system("touch /var/log/Columnstore/test3"); } sleep(1); @@ -2724,7 +2724,7 @@ namespace oam if (localModule.empty() ) { // not found - //system("touch /var/log/Calpont/test8"); + //system("touch /var/log/Columnstore/test8"); exceptionControl("getModuleInfo", API_FAILURE); } @@ -2785,7 +2785,7 @@ namespace oam moduleName = boost::get<0>(st); } catch (...) { - //system("touch /var/log/Calpont/test4"); + //system("touch /var/log/Columnstore/test4"); exceptionControl("getMyProcessStatus", API_FAILURE); } @@ -2826,7 +2826,7 @@ namespace oam { // shutdown connection processor.shutdown(); - //system("touch /var/log/Calpont/test5"); + //system("touch /var/log/Columnstore/test5"); exceptionControl("getMyProcessStatus", API_FAILURE); } @@ -2838,14 +2838,14 @@ namespace oam } catch(...) { - //system("touch /var/log/Calpont/test6"); + //system("touch /var/log/Columnstore/test6"); processor.shutdown(); exceptionControl("getMyProcessStatus", API_INVALID_PARAMETER); } } catch(...) { - //system("touch /var/log/Calpont/test7"); + //system("touch /var/log/Columnstore/test7"); processor.shutdown(); exceptionControl("getMyProcessStatus", API_INVALID_PARAMETER); } @@ -2857,7 +2857,7 @@ namespace oam catch(...) {} } - //system("touch /var/log/Calpont/test9"); + //system("touch /var/log/Columnstore/test9"); exceptionControl("getMyProcessStatus", API_FAILURE); return boost::make_tuple(-1, "", -1); @@ -3390,7 +3390,7 @@ namespace oam //make 1 log file made up of archive and current *.log (void)system("touch /tmp/logs"); - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string cmd = "ls " + path + logdir + "/archive | grep '" + logFileName + "' > /tmp/logfiles"; (void)system(cmd.c_str()); @@ -7124,7 +7124,7 @@ namespace oam * * Function: actionMysqlCalpont * - * Purpose: mysql-Calpont service command + * Purpose: mysql-Columnstore service command * ****************************************************************************/ @@ -7160,7 +7160,7 @@ namespace oam return; // check if mysql-Capont is installed - string mysqlscript = InstallDir + "/mysql/mysql-Calpont"; + string mysqlscript = InstallDir + "/mysql/mysql-Columnstore"; if (access(mysqlscript.c_str(), X_OK) != 0) return; diff --git a/oam/oamcpp/liboamcpp.h b/oam/oamcpp/liboamcpp.h index 9d6cd4805..462f9ad07 100644 --- a/oam/oamcpp/liboamcpp.h +++ b/oam/oamcpp/liboamcpp.h @@ -358,12 +358,12 @@ namespace oam */ const std::string LogFile[] = { - "local1.=crit -/var/log/Calpont/crit.log", - "local1.=err -/var/log/Calpont/err.log", - "local1.=warning -/var/log/Calpont/warning.log", - "local1.=info -/var/log/Calpont/info.log", - "local1.=debug -/var/log/Calpont/debug.log", - "local2.=crit -/var/log/Calpont/data/data_mods.log", + "local1.=crit -/var/log/Columnstore/crit.log", + "local1.=err -/var/log/Columnstore/err.log", + "local1.=warning -/var/log/Columnstore/warning.log", + "local1.=info -/var/log/Columnstore/info.log", + "local1.=debug -/var/log/Columnstore/debug.log", + "local2.=crit -/var/log/Columnstore/data/data_mods.log", "" }; diff --git a/oam/post/functions b/oam/post/functions index ade49f609..84d0ff253 100755 --- a/oam/post/functions +++ b/oam/post/functions @@ -7,7 +7,7 @@ if [ -z "$INFINIDB_INSTALL_DIR" ]; then fi if [ -z "$INFINIDB_INSTALL_DIR" ]; then - INFINIDB_INSTALL_DIR=/usr/local/Calpont + INFINIDB_INSTALL_DIR=/usr/local/MariaDB/Columnstore fi export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR diff --git a/oam/replaytxnlog/replaytxnlog.cpp b/oam/replaytxnlog/replaytxnlog.cpp index 7327e5e36..936764934 100644 --- a/oam/replaytxnlog/replaytxnlog.cpp +++ b/oam/replaytxnlog/replaytxnlog.cpp @@ -349,7 +349,7 @@ list ReplayTxnLog::getLogFileNames() oam.getLogFile("pm1", "data", fullLogFileName); #else */ - fullLogFileName = "/var/log/Calpont/data/data_mods.log"; + fullLogFileName = "/var/log/Columnstore/data/data_mods.log"; /* #endif */ diff --git a/oamapps/calpontConsole/Makefile b/oamapps/calpontConsole/Makefile index 55a73ad1c..693cf51cb 100755 --- a/oamapps/calpontConsole/Makefile +++ b/oamapps/calpontConsole/Makefile @@ -57,7 +57,7 @@ tdriver: tdriver.o $(LINK.cpp) -o $@ $^ $(TLIBS) test: $(LIBRARY) tdriver - rm -f /var/log/Calpont/uiCommands.log + rm -f /var/log/Columnstore/uiCommands.log LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib ./tdriver %-gcov.o: %.cpp @@ -69,7 +69,7 @@ tdriver-gcov: calpontConsole-gcov.o $(subst .o,-gcov.o,$(OBJS)) leakcheck: $(LIBRARY) tdriver - rm -f /var/log/Calpont/uiCommands.log + rm -f /var/log/Columnstore/uiCommands.log LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib valgrind --tool=memcheck --leak-check=yes ./tdriver %.d: %.cpp diff --git a/oamapps/calpontConsole/calpontConsole.h b/oamapps/calpontConsole/calpontConsole.h index ec4caff05..e313d54c0 100644 --- a/oamapps/calpontConsole/calpontConsole.h +++ b/oamapps/calpontConsole/calpontConsole.h @@ -57,7 +57,7 @@ const int ArgNum = 10; const int DescNumMax = 10; const int cmdNum = 68; -const std::string DEFAULT_LOG_FILE = "/var/log/Calpont/uiCommands.log"; +const std::string DEFAULT_LOG_FILE = "/var/log/Columnstore/uiCommands.log"; std::ofstream logFile; /** diff --git a/oamapps/calpontDB/calpontDB.cpp b/oamapps/calpontDB/calpontDB.cpp index 1307f490c..7369f12f4 100644 --- a/oamapps/calpontDB/calpontDB.cpp +++ b/oamapps/calpontDB/calpontDB.cpp @@ -103,7 +103,7 @@ int main(int argc, char **argv) { dbrm.setSystemSuspended(true); sleep(5); - string cmd = startup::StartUp::installDir() + "/bin/save_brm > /var/log/Calpont/save_brm.log1 2>&1"; + string cmd = startup::StartUp::installDir() + "/bin/save_brm > /var/log/Columnstore/save_brm.log1 2>&1"; int rtnCode = system(cmd.c_str()); if (rtnCode == 0) { diff --git a/oamapps/calpontSupport/alarmReport.sh b/oamapps/calpontSupport/alarmReport.sh index 6d58f7b9b..eabd7fe10 100755 --- a/oamapps/calpontSupport/alarmReport.sh +++ b/oamapps/calpontSupport/alarmReport.sh @@ -23,12 +23,12 @@ echo " " echo "-- Today's Alarms --" echo " " -cat /var/log/Calpont/alarm.log 2>/dev/null +cat /var/log/Columnstore/alarm.log 2>/dev/null -if test -f /var/log/Calpont/archive/alarm.log-$DATE ; then +if test -f /var/log/Columnstore/archive/alarm.log-$DATE ; then echo "-- Archived Alarms --" echo " " - cat /var/log/Calpont/archive/alarm.log-$DATE 2>/dev/null + cat /var/log/Columnstore/archive/alarm.log-$DATE 2>/dev/null fi } > /tmp/logReport.log diff --git a/oamapps/calpontSupport/configReport.sh b/oamapps/calpontSupport/configReport.sh index 14d72a4b2..62f16e724 100755 --- a/oamapps/calpontSupport/configReport.sh +++ b/oamapps/calpontSupport/configReport.sh @@ -33,9 +33,9 @@ if test -f /sbin/chkconfig ; then echo "################# /sbin/chkconfig --list | grep infinidb #################" echo " " $SUDO /sbin/chkconfig --list | grep infinidb 2>/dev/null - echo "################# /sbin/chkconfig --list | grep mysql-Calpont #################" + echo "################# /sbin/chkconfig --list | grep mysql-Columnstore #################" echo " " - $SUDO /sbin/chkconfig --list | grep mysql-Calpont 2>/dev/null + $SUDO /sbin/chkconfig --list | grep mysql-Columnstore 2>/dev/null fi echo " " diff --git a/oamapps/calpontSupport/configReport.sh~ b/oamapps/calpontSupport/configReport.sh~ new file mode 100755 index 000000000..14d72a4b2 --- /dev/null +++ b/oamapps/calpontSupport/configReport.sh~ @@ -0,0 +1,64 @@ +#!/bin/bash +# +# $Id: hardwareReport.sh 421 2007-04-05 15:46:55Z dhill $ +# +if [ $1 ] ; then + MODULE=$1 +else + MODULE="pm1" +fi + +if [ $2 ] ; then + INSTALLDIR=$2 +else + INSTALLDIR="/usr/local/MariaDB/Columnstore" +fi + +if [ $USER = "root" ]; then + SUDO=" " +else + SUDO="sudo" +fi + +$SUDO rm -f /tmp/${MODULE}_configReport.txt + +{ +echo " " +echo "******************** Configuration/Status Report for ${MODULE} ********************" +echo " " + +if test -f /sbin/chkconfig ; then + echo "-- chkconfig configuration --" + echo " " + echo "################# /sbin/chkconfig --list | grep infinidb #################" + echo " " + $SUDO /sbin/chkconfig --list | grep infinidb 2>/dev/null + echo "################# /sbin/chkconfig --list | grep mysql-Calpont #################" + echo " " + $SUDO /sbin/chkconfig --list | grep mysql-Calpont 2>/dev/null +fi + +echo " " +echo "-- fstab Configuration --" +echo " " +echo "################# cat /etc/fstab #################" +echo " " +$SUDO cat /etc/fstab 2>/dev/null + +echo " " +echo "-- Server Processes --" +echo " " +echo "################# ps axu #################" +echo " " +$SUDO ps axu + +echo " " +echo "-- Server Processes with resource usage --" +echo " " +echo "################# top -b -n 1 #################" +echo " " +$SUDO top -b -n 1 + +} > /tmp/${MODULE}_configReport.txt + +exit 0 \ No newline at end of file diff --git a/oamapps/calpontSupport/logReport.sh b/oamapps/calpontSupport/logReport.sh index b02aec7de..f03ade048 100755 --- a/oamapps/calpontSupport/logReport.sh +++ b/oamapps/calpontSupport/logReport.sh @@ -22,6 +22,6 @@ fi $SUDO rm -f /tmp/${MODULE}_logReport.tar.gz -tar -zcf /tmp/${MODULE}_logReport.tar.gz /var/log/Calpont > /dev/null 2>&1 +tar -zcf /tmp/${MODULE}_logReport.tar.gz /var/log/Columnstore > /dev/null 2>&1 exit 0 diff --git a/oamapps/mcsadmin/Makefile b/oamapps/mcsadmin/Makefile index 42b40d138..5ffafdc64 100755 --- a/oamapps/mcsadmin/Makefile +++ b/oamapps/mcsadmin/Makefile @@ -57,7 +57,7 @@ tdriver: tdriver.o $(LINK.cpp) -o $@ $^ $(TLIBS) test: $(LIBRARY) tdriver - rm -f /var/log/Calpont/uiCommands.log + rm -f /var/log/Columnstore/uiCommands.log LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib ./tdriver %-gcov.o: %.cpp @@ -69,7 +69,7 @@ tdriver-gcov: mcsadmin-gcov.o $(subst .o,-gcov.o,$(OBJS)) leakcheck: $(LIBRARY) tdriver - rm -f /var/log/Calpont/uiCommands.log + rm -f /var/log/Columnstore/uiCommands.log LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib valgrind --tool=memcheck --leak-check=yes ./tdriver %.d: %.cpp diff --git a/oamapps/mcsadmin/Makefile~ b/oamapps/mcsadmin/Makefile~ deleted file mode 100755 index 7df230913..000000000 --- a/oamapps/mcsadmin/Makefile~ +++ /dev/null @@ -1,83 +0,0 @@ -:****************************************************************************************** -# $Id: Makefile 2339 2012-05-02 18:20:56Z pleblanc $ -# -# Copyright (C) 2009-2012 Calpont Corporation -# All rights reserved -#*****************************************************************************************/ -include ../../rules.mak - -# The name of the executable - -PROGRAM=mcadmin -VERSION=1.0.0 - -# List all the source files here -SRCS=mcadmin.cpp - -# Run-time directories for project shared libs -CALPONT_LIBRARY_PATH=$(EXPORT_ROOT)/lib - -# Preprocessor flags -CPPFLAGS=-I$(EXPORT_ROOT)/include -I/usr/include/libxml2 - -# Compiler flags -CXXFLAGS+=$(DEBUG_FLAGS) -Wall - -# Linker flags -# we need to add some search paths here because on a boostrap build we won't find liboamcpp -# anywhere except in ../oamcpp -CLIBS=-L../oamcpp -L$(EXPORT_ROOT)/lib $(IDB_COMMON_LIBS) $(IDB_SNMP_LIBS) -LDFLAGS+=$(CLIBS) -Wl,--rpath -Wl,/usr/local/MariaDB/Columnstore/lib -TLIBS=-L/usr/local/lib -lcppunit -ldl -GLIBS=$(CLIBS) - -.PHONY: install clean test docs FORCE coverage leakcheck - -GLIBS=-lcppunit -ldl - -OBJS=$(SRCS:.cpp=.o) - -$(PROGRAM): $(OBJS) - $(LINK.cpp) -o $@ $^ -Wl,-Bstatic -lreadline -Wl,-Bdynamic -lncurses -ltinfo - -install: bootstrap $(PROGRAM) - mkdir -p $(INSTALL_ROOT_BIN) - $(INSTALL) $(PROGRAM) $(INSTALL_ROOT_BIN) - -bootstrap: - -clean: - rm -f $(OBJS) tdriver.o $(PROGRAM) $(LIBRARY) tdriver core *~ *.tag *-gcov.* *.gcov tdriver-gcov *.d *.d.* tdriver.output - rm -rf html - -docs: - doxygen $(EXPORT_ROOT)/etc/Doxyfile - -tdriver: tdriver.o - $(LINK.cpp) -o $@ $^ $(TLIBS) - -test: $(LIBRARY) tdriver - rm -f /var/log/Calpont/uiCommands.log - LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib ./tdriver - -%-gcov.o: %.cpp - $(COMPILE.cpp) -o $@ $^ - -tdriver-gcov: CXXFLAGS+=-fprofile-arcs -ftest-coverage -tdriver-gcov: mcadmin-gcov.o $(subst .o,-gcov.o,$(OBJS)) - $(LINK.cpp) -o $@ $^ $(GLIBS) - - -leakcheck: $(LIBRARY) tdriver - rm -f /var/log/Calpont/uiCommands.log - LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib valgrind --tool=memcheck --leak-check=yes ./tdriver - -%.d: %.cpp - @set -e; rm -f $@; \ - $(CC) -MM $(CPPFLAGS) $< > $@.$$$$; \ - sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \ - rm -f $@.$$$$ - -ifndef BOOTSTRAP --include $(SRCS:.cpp=.d) tdriver.d -endif diff --git a/oamapps/mcsadmin/mcadmin.cpp~ b/oamapps/mcsadmin/mcadmin.cpp~ deleted file mode 100644 index 467420c7f..000000000 --- a/oamapps/mcsadmin/mcadmin.cpp~ +++ /dev/null @@ -1,8496 +0,0 @@ -/* Copyright (C) 2014 InfiniDB, Inc. - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; version 2 of - the License. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ - - -/****************************************************************************************** - * $Id: calpontConsole.cpp 3110 2013-06-20 18:09:12Z dhill $ - * - ******************************************************************************************/ - -#include -#include -extern int h_errno; - -#include "calpontConsole.h" -#include "boost/filesystem/operations.hpp" -#include "boost/filesystem/path.hpp" -#include "boost/tokenizer.hpp" -#include "sessionmanager.h" -#include "dbrm.h" -namespace fs = boost::filesystem; - -using namespace snmpmanager; -using namespace std; -using namespace oam; -using namespace config; - -#include "installdir.h" - -// Variables shared in both main and functions - -Config* fConfig = 0; -string Section; -int CmdID = 0; -string CmdList[cmdNum]; -int CmdListID[cmdNum]; -string cmdName; -const string SECTION_NAME = "Cmd"; -int serverInstallType; -string systemName; -string parentOAMModule; -string localModule; -bool rootUser = true; -string HOME = "/root"; - -bool repeatStop; - -static void checkPromptThread(); - -bool waitForActive() -{ - Oam oam; - SystemStatus systemstatus; - SystemProcessStatus systemprocessstatus; - bool bfirst = true; - - for (int i = 0 ; i < 1200 ; i ++) - { - sleep (3); - try - { - oam.getSystemStatus(systemstatus); - if (systemstatus.SystemOpState == ACTIVE) - { - return true; - } - if (systemstatus.SystemOpState == FAILED) - { - return false; - } - if (systemstatus.SystemOpState == MAN_OFFLINE) - { - return false; - } - cout << "." << flush; - - // Check DMLProc for a switch to BUSY_INIT. - // In such a case, we need to print a message that rollbacks - // are occurring and will take some time. - if (bfirst) // Once we've printed our message, no need to waste cpu looking - { - oam.getProcessStatus(systemprocessstatus); - for (unsigned int i = 0 ; i < systemprocessstatus.processstatus.size(); i++) - { - if (systemprocessstatus.processstatus[i].ProcessName == "DMLProc") - { - if (systemprocessstatus.processstatus[i].ProcessOpState == oam::ROLLBACK_INIT) - { - cout << endl << endl <<" System Not Ready, DMLProc is checking/processing rollback of abandoned transactions. Processing could take some time, please wait..." << flush; - bfirst = false; - } - // At this point, we've found our DMLProc, so there's no need to spin the for loop - // any further. - break; - } - } - } - } - catch (...) - { - // At some point, we need to give up, ProcMgr just isn't going to respond. - if (i > 60) // 3 minutes - { - cout << "ProcMgr not responding while waiting for system to start"; - break; - } - } - } - - return false; -} - -bool waitForStop() -{ - Oam oam; - SystemStatus systemstatus; - SystemProcessStatus systemprocessstatus; - - for (int i = 0 ; i < 1200 ; i ++) - { - sleep (3); - try - { - oam.getSystemStatus(systemstatus); - if (systemstatus.SystemOpState == MAN_OFFLINE) - { - return true; - } - if (systemstatus.SystemOpState == FAILED) - { - return false; - } - cout << "." << flush; - } - catch (...) - { - // At some point, we need to give up, ProcMgr just isn't going to respond. - if (i > 60) // 3 minutes - { - cout << "ProcMgr not responding while waiting for system to start"; - break; - } - } - } - - return false; -} - -//------------------------------------------------------------------------------ -// Signal handler to catch SIGTERM signal to terminate the process -//------------------------------------------------------------------------------ -void handleSigTerm(int i) -{ - std::cout << "Received SIGTERM to terminate Calpont Console..." << std::endl; - -} - -//------------------------------------------------------------------------------ -// Signal handler to catch Control-C signal to terminate the process -//------------------------------------------------------------------------------ -void handleControlC(int i) -{ - std::cout << "Received Control-C to terminate the console..." << std::endl; - exit(0); -} - -//------------------------------------------------------------------------------ -// Initialize signal handling -//------------------------------------------------------------------------------ -void setupSignalHandlers() -{ -#ifdef _MSC_VER - //FIXME -#else - // Control-C signal to terminate a command - struct sigaction act; - memset(&act, 0, sizeof(act)); - act.sa_handler = handleControlC; - sigaction(SIGINT, &act, 0); - - // catch SIGTERM signal to terminate the program -// memset(&act, 0, sizeof(act)); -// act.sa_handler = handleSigTerm; -// sigaction(SIGTERM, &act, 0); -#endif -} - -int main(int argc, char *argv[]) -{ -#ifndef _MSC_VER - setuid(0); // set effective ID to root; ignore return status -#endif - setlocale(LC_ALL, ""); - - Oam oam; - char* pcommand = 0; - string arguments[ArgNum]; - - const char* p = getenv("HOME"); - if (!p) - p = ""; - else - HOME = p; - - string ccHistoryFile = HOME + "/.cc_history"; - - string cf = startup::StartUp::installDir() + "/etc/" + ConsoleCmdsFile; - fConfig = Config::makeConfig(cf); - -// setupSignalHandlers(); - - // Get System Name - try{ - oam.getSystemConfig("SystemName", systemName); - } - catch(...) - { - cout << endl << "**** Failed : Failed to read systemName Name" << endl; - exit(-1); - } - - //get parentModule Name - parentOAMModule = getParentOAMModule(); - - // get Local Module Name and Single Server Install Indicator - oamModuleInfo_t st; - try { - st = oam.getModuleInfo(); - localModule = boost::get<0>(st); - serverInstallType = boost::get<5>(st); - } - catch (...) { - cout << endl << "**** Failed : Failed to read Local Module Name" << endl; - exit(-1); - } - - //check if root-user - int user; - user = getuid(); - if (user != 0) - rootUser = false; - - // create/open command log file if not created - - logFile.open(DEFAULT_LOG_FILE.c_str(), ios::app); - - if (geteuid() == 0 && !logFile) - { - cerr << "UI Command log file cannot be opened" << endl; - } - writeLog("Start of a command session!!!"); - - // get and sort command list for future help display - - for(int i=0; igetConfig(Section, "Name"); - if (cmdName.empty()) - // no command skip - continue; - - CmdList[i] = cmdName; - CmdListID[i] = i; - - // sort - - for(int j=0; j 1) - { - int j=0; - string command; - for(; argc > 1; j++, argc--) - { - arguments[j] = argv[j+1]; - command.append(arguments[j]); - command.append(" "); - } - // add to history and UI command log file - read_history(ccHistoryFile.c_str()); - add_history (command.c_str()); - writeLog(command.c_str()); - write_history(ccHistoryFile.c_str()); - - checkRepeat(arguments, j); - } - else - { - cout << endl << "Calpont InfiniDB Command Console" << endl; - cout << " enter 'help' for list of commands" << endl; - cout << " enter 'exit' to exit the Calpont InfiniDB Command Console" << endl; - cout << " use up/down arrows to recall commands" << endl << endl; - - // output current active alarm stats - printAlarmSummary(); - printCriticalAlarms(); - - //read readline history file - read_history(ccHistoryFile.c_str()); - - while (true) - { - //get parentModule Name - parentOAMModule = getParentOAMModule(); - - // flush agument list - for(int j=0; j < ArgNum; j++) - { - arguments[j].clear(); - } - - // read input - pcommand = readline("InfiniDB> "); - - if (!pcommand) // user hit -D - pcommand = strdup("exit"); - - else if (!*pcommand) - { - // just an enter-key was entered, ignore and reprompt - continue; - } - - // add to history and UI command log file - add_history (pcommand); - writeLog(pcommand); - write_history(ccHistoryFile.c_str()); - - string command = pcommand; - - //check if a argument was entered as a set of char with quotes around them - int commandLoc=0; - int numberArgs=0; - bool validCMD=true; - - for(int i=0; i < ArgNum; i++) - { - string::size_type pos = command.find(" ", commandLoc); - string::size_type pos1 = command.find("\"", commandLoc); - string::size_type pos3 = command.find("\'", commandLoc); - if ( (pos == string::npos && pos1 == string::npos) || - (pos == string::npos && pos3 == string::npos) ) { - //end of the command - string argtemp = command.substr(commandLoc,80); - if ( argtemp != "" ) { - arguments[numberArgs] = argtemp; - numberArgs++; - } - break; - } - if (pos < pos1 && pos < pos3) { - // hit ' ' first - string argtemp = command.substr(commandLoc, pos-commandLoc); - if ( argtemp != "" ) { - arguments[numberArgs] = argtemp; - numberArgs++; - } - commandLoc = pos+1; - } - else - { - if ( pos >= pos1 ) { - //hit " first - string::size_type pos2 = command.find("\"", pos1+1); - if (pos2 != string::npos) { - arguments[numberArgs] = command.substr(pos1+1,pos2-pos1-1); - numberArgs++; - commandLoc = pos2+1; - } - else - { - cout << "Invalid Command, mismatching use of quotes" << endl; - validCMD=false; - break; - } - } - else - { - //hit ' first - string::size_type pos2 = command.find("\'", pos3+1); - if (pos2 != string::npos) { - arguments[numberArgs] = command.substr(pos3+1,pos2-pos3-1); - numberArgs++; - commandLoc = pos2+1; - } - else - { - cout << "Invalid Command, mismatching use of quotes" << endl; - validCMD=false; - break; - } - } - } - } - if (validCMD) - checkRepeat(arguments, numberArgs); - - free (pcommand); - } - } -} - -void checkRepeat(string* arguments, int argNumber) -{ - Oam oam; - bool repeat = false; - int repeatCount = 5; - for ( int i=0; i < argNumber ; i++) - { - if( arguments[i].find("-r") == 0) { - // entered - if ( arguments[i] != "-r") { - //strip report count off - repeatCount = atoi(arguments[i].substr(2,10).c_str()); - if ( repeatCount < 1 || repeatCount > 60 ) { - cout << "Failed: incorrect repeat count entered, valid range is 1-60, set to default of 5" << endl; - repeatCount = 5; - } - } - repeat = true; - arguments[i].clear(); - cout << "repeating the command '" << arguments[0] << "' every " << repeatCount << " seconds, enter CTRL-D to stop" << endl; - sleep(5); - break; - } - } - - bool threadCreate = false; - if (repeat) { - while(true) { - system("clear"); - if ( processCommand(arguments) ) - return; - else { - if ( !threadCreate ) { - threadCreate = true; - repeatStop = false; - pthread_t PromptThread; - pthread_create (&PromptThread, NULL, (void*(*)(void*)) &checkPromptThread, NULL); - } - - for ( int i = 0 ; i < repeatCount ; i ++ ) - { - if (repeatStop) - break; - sleep(1); - } - - if (repeatStop) - break; - } - } - } - else - processCommand(arguments); -} - -int processCommand(string* arguments) -{ - Oam oam; - // Possible command line arguments - GRACEFUL_FLAG gracefulTemp = GRACEFUL; - ACK_FLAG ackTemp = ACK_YES; - CC_SUSPEND_ANSWER suspendAnswer = CANCEL; - bool bNeedsConfirm = true; - string password; - - // get command info from Command config file - CmdID = -1; - - // put inputted command into lowercase - string inputCmd = arguments[0]; - transform (inputCmd.begin(), inputCmd.end(), inputCmd.begin(), to_lower()); - - for (int i = 0; i < cmdNum; i++) - { - // put table command into lowercase - string cmdName_LC = CmdList[i]; - transform (cmdName_LC.begin(), cmdName_LC.end(), cmdName_LC.begin(), to_lower()); - - if (cmdName_LC.find(inputCmd) == 0) - { - // command found, ECHO command - cout << cmdName_LC << " " << oam.getCurrentTime() << endl; - CmdID = CmdListID[i]; - break; - } - } - if (CmdID == -1) - { - // get is command in the Support Command list - for (int i = 0;;i++) - { - if (supportCmds[i] == "") - // end of list - break; - if (supportCmds[i].find(inputCmd) == 0) { - // match found, go process it - cout << supportCmds[i] << " " << oam.getCurrentTime() << endl; - int status = ProcessSupportCommand(i, arguments); - if ( status == -1 ) - // didn't process it for some reason - break; - return 1; - } - } - - // command not valid - cout << arguments[0] << ": Unknown Command, type help for list of commands" << endl << endl; - return 1; - } - - switch( CmdID ) - { - case 0: // help - case 1: // ? - { - const string DESC_NAME = "Desc"; - string desc; - string descName; - const string ARG_NAME = "Arg"; - string arg; - string argName; - - string argument1_LC = arguments[1]; - transform (argument1_LC.begin(), argument1_LC.end(), argument1_LC.begin(), to_lower()); - - if (argument1_LC.find("-a") == 0 || argument1_LC == "") - { - // list commands and brief description (Desc1) - cout << endl << "List of commands:" << endl; - cout << "Note: the command must be the first entry entered on the command line" << endl << endl; - cout.setf(ios::left); - cout.width(34); - cout << "Command" << "Description" << endl; - cout.setf(ios::left); - cout.width(34); - cout << "------------------------------" << "--------------------------------------------------------" << endl; - - for(int i=0; igetConfig(Section, "Name"); - if (cmdName.empty() || cmdName == "AVAILABLE") - // no command skip - continue; - cout.setf(ios::left); - cout.width(34); - cout << cmdName << fConfig->getConfig(Section, "Desc1") << endl; - } - cout << endl << "For help on a command, enter 'help' followed by command name" << endl; - } - else - { - if (argument1_LC.find("-v") == 0) - { - // list of commands with their descriptions - cout << endl << "List of commands and descriptions:" << endl << endl; - for(int k=0 ; k < cmdNum ; k++) - { - Section = SECTION_NAME + oam.itoa(CmdListID[k]); - cmdName = fConfig->getConfig(Section, "Name"); - if (cmdName.empty() || cmdName == "AVAILABLE") - //no command skip - continue; - cout << "Command: " << cmdName << endl << endl; - int i=2; - cout << " Description: " << fConfig->getConfig(Section, "Desc1") << endl; - while (true) - { - desc = DESC_NAME + oam.itoa(i); - descName = fConfig->getConfig(Section, desc); - if (descName.empty()) - //end of Desc list - break; - cout << " " << descName << endl; - i++; - } - i=2; - cout << endl << " Arguments: " << fConfig->getConfig(Section, "Arg1") << endl; - while (true) - { - arg = ARG_NAME + oam.itoa(i); - argName = fConfig->getConfig(Section, arg); - if (argName.empty()) - //end of arg list - break; - cout << " " << argName << endl; - i++; - } - cout << endl; - } - } - else - { // description for a single command - int j=0; - for (j = 0; j < cmdNum; j++) - { - // get cmd description - - Section = SECTION_NAME + oam.itoa(j); - - cmdName = fConfig->getConfig(Section, "Name"); - - string cmdName_LC = cmdName; - transform (cmdName_LC.begin(), cmdName_LC.end(), cmdName_LC.begin(), to_lower()); - - if (cmdName_LC == argument1_LC) - { - // command found, output description - cout << endl << " Command: " << cmdName << endl << endl; - int i=2; - cout << " Description: " << fConfig->getConfig(Section, "Desc1") << endl; - while (true) - { - desc = DESC_NAME + oam.itoa(i); - descName = fConfig->getConfig(Section, desc); - if (descName.empty()) - //end of Desc list - break; - cout << " " << descName << endl; - i++; - } - i=2; - cout << endl << " Arguments: " << fConfig->getConfig(Section, "Arg1") << endl; - while (true) - { - arg = ARG_NAME + oam.itoa(i); - argName = fConfig->getConfig(Section, arg); - if (argName.empty()) - //end of arg list - break; - cout << " " << argName << endl; - i++; - } - break; - } - } - if (j == cmdNum) - { - // command not valid - cout << arguments[1] << ": Unknown Command, type help for list of commands" << endl << endl; - break; - } - } - } - cout << endl; - } - break; - - case 2: // exit - case 3: // quit - { - // close the log file - writeLog("End of a command session!!!"); - logFile.close(); - cout << "Exiting the Calpont Command Console" << endl; - - exit (0); - } - break; - - case 4: // getSystemConfig - { - SystemSoftware systemsoftware; - SystemConfig systemconfig; - string returnValue; - - if (arguments[1] == "all" || arguments[1] == "") - { - - // get and all display System config parameters - - try - { - oam.getSystemSoftware(systemsoftware); - oam.getSystemConfig(systemconfig); - - cout << endl << "System Configuration" << endl << endl; - - cout << "SystemName = " << systemconfig.SystemName << endl; - cout << "SoftwareVersion = " << systemsoftware.Version << endl; - cout << "SoftwareRelease = " << systemsoftware.Release << endl; - - cout << "ParentOAMModuleName = " << systemconfig.ParentOAMModule << endl; - cout << "StandbyOAMModuleName = " << systemconfig.StandbyOAMModule << endl; - cout << "NMSIPAddr = " << systemconfig.NMSIPAddr << endl; - cout << "ModuleHeartbeatPeriod = " << systemconfig.ModuleHeartbeatPeriod << endl; - cout << "ModuleHeartbeatCount = " << systemconfig.ModuleHeartbeatCount << endl; -// cout << "ProcessHeartbeatPeriod = " << systemconfig.ProcessHeartbeatPeriod << endl; - cout << "DBRootCount = " << systemconfig.DBRootCount << endl; - - std::vector::iterator pt = systemconfig.DBRoot.begin(); - int id=1; - for( ; pt != systemconfig.DBRoot.end() ; pt++) - { - string dbroot = *pt; - cout << "DBRoot" + oam.itoa(id) + " = " + dbroot << endl; - ++id; - } - - cout << "DBRMRoot = " << systemconfig.DBRMRoot << endl; - cout << "ExternalCriticalThreshold = " << systemconfig.ExternalCriticalThreshold << endl; - cout << "ExternalMajorThreshold = " << systemconfig.ExternalMajorThreshold << endl; - cout << "ExternalMinorThreshold = " << systemconfig.ExternalMinorThreshold << endl; - cout << "MaxConcurrentTransactions = " << systemconfig.MaxConcurrentTransactions << endl; - cout << "SharedMemoryTmpFile = " << systemconfig.SharedMemoryTmpFile << endl; - cout << "NumVersionBufferFiles = " << systemconfig.NumVersionBufferFiles << endl; - cout << "VersionBufferFileSize = " << systemconfig.VersionBufferFileSize << endl; - cout << "OIDBitmapFile = " << systemconfig.OIDBitmapFile << endl; - cout << "FirstOID = " << systemconfig.FirstOID << endl; - cout << "TransactionArchivePeriod = " << systemconfig.TransactionArchivePeriod << endl; - - } - catch (exception& e) - { - cout << endl << "**** getSystemConfig Failed : " << e.what() << endl; - } - } - else - { // get a single parameter - - try - { - oam.getSystemConfig(arguments[1], returnValue); - cout << endl << " " << arguments[1] << " = " << returnValue << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** getSystemConfig Failed : " << e.what() << endl; - } - } - } - break; - - case 5: // setSystemConfig - parameters: Module name, Parameter name and value - { - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** setSystemConfig Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - if (arguments[2] == "") - { - // need 2 arguments - cout << endl << "**** setSystemConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - try - { - if ( arguments[2] == "=" ) { - cout << endl << "**** setSystemConfig Failed : Invalid Value of '=', please re-enter" << endl; - break; - } - oam.setSystemConfig(arguments[1], arguments[2]); - cout << endl << " Successfully set " << arguments[1] << " = " << arguments[2] << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** setSystemConfig Failed : " << e.what() << endl; - } - } - break; - - case 6: // getModuleTypeConfig - { - SystemModuleTypeConfig systemmoduletypeconfig; - ModuleTypeConfig moduletypeconfig; - ModuleConfig moduleconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - string returnValue; - string Argument; - - if (arguments[1] == "all" || arguments[1] == "") - { - - // get and all display Module config parameters - - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - cout << endl << "Module Type Configuration" << endl << endl; - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - - if ( moduleCount < 1 ) - continue; - - string moduletype = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - cout << "ModuleType '" << moduletype << "' Configuration information" << endl << endl; - - cout << "ModuleDesc = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleDesc << endl; - cout << "RunType = " << systemmoduletypeconfig.moduletypeconfig[i].RunType << endl; - cout << "ModuleCount = " << moduleCount << endl; - - if ( moduleCount > 0 ) - { - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - string modulename = (*pt).DeviceName; - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - string ipAddr = (*pt1).IPAddr; - string servername = (*pt1).HostName; - cout << "ModuleHostName and ModuleIPAddr for NIC ID " + oam.itoa((*pt1).NicID) + " on module '" << modulename << "' = " << servername << " , " << ipAddr << endl; - } - } - } - - DeviceDBRootList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleDBRootList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleDBRootList.end() ; pt++) - { - if ( (*pt).dbrootConfigList.size() > 0 ) - { - cout << "DBRootIDs assigned to module 'pm" << (*pt).DeviceID << "' = "; - DBRootConfigList::iterator pt1 = (*pt).dbrootConfigList.begin(); - for( ; pt1 != (*pt).dbrootConfigList.end() ; ) - { - cout << *pt1; - pt1++; - if (pt1 != (*pt).dbrootConfigList.end()) - cout << ", "; - } - } - cout << endl; - } - - cout << "ModuleCPUCriticalThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleCPUCriticalThreshold << endl; - cout << "ModuleCPUMajorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleCPUMajorThreshold << endl; - cout << "ModuleCPUMinorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleCPUMinorThreshold << endl; - cout << "ModuleCPUMinorClearThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleCPUMinorClearThreshold << endl; - cout << "ModuleDiskCriticalThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleDiskCriticalThreshold << endl; - cout << "ModuleDiskMajorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleDiskMajorThreshold << endl; - cout << "ModuleDiskMinorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleDiskMinorThreshold << endl; - cout << "ModuleMemCriticalThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleMemCriticalThreshold << endl; - cout << "ModuleMemMajorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleMemMajorThreshold << endl; - cout << "ModuleMemMinorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleMemMinorThreshold << endl; - cout << "ModuleSwapCriticalThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleSwapCriticalThreshold << endl; - cout << "ModuleSwapMajorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleSwapMajorThreshold << endl; - cout << "ModuleSwapMinorThreshold % = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleSwapMinorThreshold << endl; - - DiskMonitorFileSystems::iterator pt2 = systemmoduletypeconfig.moduletypeconfig[i].FileSystems.begin(); - int id=1; - for( ; pt2 != systemmoduletypeconfig.moduletypeconfig[i].FileSystems.end() ; pt2++) - { - string fs = *pt2; - cout << "ModuleDiskMonitorFileSystem#" << id << " = " << fs << endl; - ++id; - } - cout << endl; - } - } - catch (exception& e) - { - cout << endl << "**** getModuleTypeConfig Failed = " << e.what() << endl; - } - } - else - { // get a single module type config - if (arguments[2] == "") - { - try - { - oam.getSystemConfig(arguments[1], moduletypeconfig); - - cout << endl << "Module Type Configuration for " << arguments[1] << endl << endl; - - int moduleCount = moduletypeconfig.ModuleCount; - string moduletype = moduletypeconfig.ModuleType; - - cout << "ModuleDesc = " << moduletypeconfig.ModuleDesc << endl; - cout << "ModuleCount = " << moduleCount << endl; - cout << "RunType = " << moduletypeconfig.RunType << endl; - - if ( moduleCount > 0 ) - { - DeviceNetworkList::iterator pt = moduletypeconfig.ModuleNetworkList.begin(); - for( ; pt != moduletypeconfig.ModuleNetworkList.end() ; pt++) - { - string modulename = (*pt).DeviceName; - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - string ipAddr = (*pt1).IPAddr; - string servername = (*pt1).HostName; - cout << "ModuleHostName and ModuleIPAddr for NIC ID " + oam.itoa((*pt1).NicID) + " on module " << modulename << " = " << servername << " , " << ipAddr << endl; - } - } - } - - int dbrootCount = moduletypeconfig.ModuleDBRootList.size(); - - cout << "DBRootCount = " << dbrootCount << endl; - - if ( dbrootCount > 0 ) - { - DeviceDBRootList::iterator pt = moduletypeconfig.ModuleDBRootList.begin(); - for( ; pt != moduletypeconfig.ModuleDBRootList.end() ; pt++) - { - cout << "DBRoot IDs assigned to 'pm" + oam.itoa((*pt).DeviceID) + "' = "; - - DBRootConfigList::iterator pt1 = (*pt).dbrootConfigList.begin(); - for( ; pt1 != (*pt).dbrootConfigList.end() ; ) - { - cout << *pt1; - pt1++; - if (pt1 != (*pt).dbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - } - - cout << "ModuleCPUCriticalThreshold % = " << moduletypeconfig.ModuleCPUCriticalThreshold << endl; - cout << "ModuleCPUMajorThreshold % = " << moduletypeconfig.ModuleCPUMajorThreshold << endl; - cout << "ModuleCPUMinorThreshold % = " << moduletypeconfig.ModuleCPUMinorThreshold << endl; - cout << "ModuleCPUMinorClearThreshold % = " << moduletypeconfig.ModuleCPUMinorClearThreshold << endl; - cout << "ModuleDiskCriticalThreshold % = " << moduletypeconfig.ModuleDiskCriticalThreshold << endl; - cout << "ModuleDiskMajorThreshold % = " << moduletypeconfig.ModuleDiskMajorThreshold << endl; - cout << "ModuleDiskMinorThreshold % = " << moduletypeconfig.ModuleDiskMinorThreshold << endl; - cout << "ModuleMemCriticalThreshold % = " << moduletypeconfig.ModuleMemCriticalThreshold << endl; - cout << "ModuleMemMajorThreshold % = " << moduletypeconfig.ModuleMemMajorThreshold << endl; - cout << "ModuleMemMinorThreshold % = " << moduletypeconfig.ModuleMemMinorThreshold << endl; - cout << "ModuleSwapCriticalThreshold % = " << moduletypeconfig.ModuleSwapCriticalThreshold << endl; - cout << "ModuleSwapMajorThreshold % = " << moduletypeconfig.ModuleSwapMajorThreshold << endl; - cout << "ModuleSwapMinorThreshold % = " << moduletypeconfig.ModuleSwapMinorThreshold << endl; - - DiskMonitorFileSystems::iterator pt = moduletypeconfig.FileSystems.begin(); - int id=1; - for( ; pt != moduletypeconfig.FileSystems.end() ; pt++) - { - string fs = *pt; - cout << "ModuleDiskMonitorFileSystem#" << id << " = " << fs << endl; - ++id; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getModuleTypeConfig Failed = " << e.what() << endl; - } - } - else - { // get a parameter for a module type - try { - oam.getSystemConfig(systemmoduletypeconfig); - } - catch(...) - {} - - unsigned int i = 0; - for( i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if(systemmoduletypeconfig.moduletypeconfig[i].ModuleType == arguments[1]) - { - string argument2 = arguments[2]; - string::size_type pos = arguments[2].rfind("#",200); - if (pos != string::npos) - { - string ID = arguments[2].substr(pos+1,5); - arguments[2] = arguments[2].substr(0,pos); - arguments[2] = arguments[2] + ID + "-"; - } - - Argument = arguments[2] + oam.itoa(i+1); - try - { - oam.getSystemConfig(Argument, returnValue); - cout << endl << " " << argument2 << " = " << returnValue << endl << endl; - break; - } - catch (exception& e) - { - cout << endl << "**** getModuleTypeConfig Failed = " << e.what() << endl; - break; - } - } - } - if( i == systemmoduletypeconfig.moduletypeconfig.size() ) - { - // module type not found - cout << endl << "**** getModuleTypeConfig Failed : Invalid Module Type" << endl; - break; - } - } - } - } - break; - - case 7: // setModuleTypeConfig - parameters: Module type, Parameter name and value - { - SystemModuleTypeConfig systemmoduletypeconfig; - ModuleTypeConfig moduletypeconfig; - string Argument; - - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** setModuleTypeConfig Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - if (arguments[3] == "") - { - // need 3 arguments - cout << endl << "**** setModuleTypeConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - if ( arguments[3] == "=" ) { - cout << endl << "**** setModuleTypeConfig Failed : Invalid Value of '=', please re-enter" << endl; - break; - } - - try { - oam.getSystemConfig(systemmoduletypeconfig); - } - catch(...) - {} - - unsigned int i = 0; - for( i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if(systemmoduletypeconfig.moduletypeconfig[i].ModuleType == arguments[1]) - { - string argument2 = arguments[2]; - string::size_type pos = arguments[2].rfind("#",200); - if (pos != string::npos) - { - string ID = arguments[2].substr(pos+1,5); - arguments[2] = arguments[2].substr(0,pos); - arguments[2] = arguments[2] + ID + "-"; - } - - Argument = arguments[2] + oam.itoa(i+1); - try - { - oam.setSystemConfig(Argument, arguments[3]); - cout << endl << " Successfully set " << argument2 << " = " << arguments[3] << endl << endl; - break; - } - catch (exception& e) - { - cout << endl << "**** setModuleTypeConfig Failed = " << e.what() << endl; - break; - } - } - } - if( i == systemmoduletypeconfig.moduletypeconfig.size() ) - { - // module type not found - cout << endl << "**** setModuleTypeConfig Failed : Invalid Module Type" << endl; - break; - } - } - break; - - case 8: // getProcessConfig - { - SystemProcessConfig systemprocessconfig; - ProcessConfig processconfig; - string returnValue; - - if (arguments[1] == "all" || arguments[1] == "") - { - // get and all display Process config parameters - - try - { - oam.getProcessConfig(systemprocessconfig); - - cout << endl << "Process Configuration" << endl << endl; - - for( unsigned int i = 0 ; i < systemprocessconfig.processconfig.size(); i++) - { - cout << "Process #" << i+1 << " Configuration information" << endl; - - cout << "ProcessName = " << systemprocessconfig.processconfig[i].ProcessName << endl; - cout << "ModuleType = " << systemprocessconfig.processconfig[i].ModuleType << endl; - cout << "ProcessLocation = " << systemprocessconfig.processconfig[i].ProcessLocation << endl; - - for( int j = 0 ; j < oam::MAX_ARGUMENTS; j++) - { - if (systemprocessconfig.processconfig[i].ProcessArgs[j].empty()) - break; - cout << "ProcessArg" << j+1 << " = " << systemprocessconfig.processconfig[i].ProcessArgs[j] << endl; - } - cout << "BootLaunch = " << systemprocessconfig.processconfig[i].BootLaunch << endl; - cout << "LaunchID = " << systemprocessconfig.processconfig[i].LaunchID << endl; - - for( int j = 0 ; j < MAX_DEPENDANCY; j++) - { - if (systemprocessconfig.processconfig[i].DepProcessName[j].empty()) - break; - cout << "DepModuleName" << j+1 << " = " << systemprocessconfig.processconfig[i].DepModuleName[j] << endl; - cout << "DepProcessName" << j+1 << " = " << systemprocessconfig.processconfig[i].DepProcessName[j] << endl; - } - // display Process Group variables, if they exist - - cout << "RunType = " << systemprocessconfig.processconfig[i].RunType << endl; - cout << "LogFile = " << systemprocessconfig.processconfig[i].LogFile << endl; - - cout << endl; - } - } - catch (exception& e) - { - cout << endl << "**** getProcessConfig Failed = " << e.what() << endl; - } - } - else - { // get a single process info - parameters: module-name, process-name - if (arguments[2] == "") - { - cout << endl << "**** getProcessConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - if (arguments[3] == "") - { - //**** Add API to get single process info - try - { - oam.getProcessConfig(arguments[1], arguments[2], processconfig); - - cout << endl << "Process Configuration for " << arguments[1] << " on module " << arguments[2] << endl << endl; - - cout << "ProcessName = " << processconfig.ProcessName << endl; - cout << "ModuleType = " << processconfig.ModuleType << endl; - cout << "ProcessLocation = " << processconfig.ProcessLocation << endl; - for( int j = 0 ; j < oam::MAX_ARGUMENTS; j++) - { - if (processconfig.ProcessArgs[j].empty()) - break; - cout << "ProcessArg" << j+1 << " = " << processconfig.ProcessArgs[j] << endl; - } - cout << "BootLaunch = " << processconfig.BootLaunch << endl; - cout << "LaunchID = " << processconfig.LaunchID << endl; - - for( int j = 0 ; j < MAX_DEPENDANCY; j++) - { - if (processconfig.DepProcessName[j].empty()) - break; - cout << "DepProcessName" << j+1 << " = " << processconfig.DepProcessName[j] << endl; - cout << "DepModuleName" << j+1 << " = " << processconfig.DepModuleName[j] << endl; - } - - cout << "RunType = " << processconfig.RunType << endl; - cout << "LogFile = " << processconfig.LogFile << endl; - - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getProcessConfig Failed = " << e.what() << endl; - } - } - else - { // get a parameter for a process - parameters: module-name, process-name, - // parameter-name - // get module ID from module name entered, then get parameter - try - { - oam.getProcessConfig(arguments[1], arguments[2], arguments[3], returnValue); - cout << endl << " " << arguments[3] << " = " << returnValue << endl << endl; - break; - } - catch (exception& e) - { - cout << endl << "**** getProcessConfig Failed = " << e.what() << endl; - break; - } - } - } - } - break; - - case 9: // setProcessConfig - parameters: Module name, Process Name, Parameter name and value - { - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** setProcessConfig Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - if (arguments[4] == "") - { - cout << endl << "**** setProcessConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - try - { - if ( arguments[4] == "=" ) { - cout << endl << "**** setProcessConfig Failed : Invalid Value of '=', please re-enter" << endl; - break; - } - - oam.setProcessConfig(arguments[1], arguments[2], arguments[3], arguments[4]); - cout << endl << " Successfully set " << arguments[3] << " = " << arguments[4] << endl << endl; - break; - } - catch (exception& e) - { - cout << endl << "**** setProcessConfig Failed = " << e.what() << endl; - break; - } - } - break; - - case 10: // getAlarmConfig- parameters: all or AlarmID - { - AlarmConfig alarmconfig; - - if (arguments[1] == "all" || arguments[1] == "") - { - - // get and all display Alarm config parameters - - cout << endl << "Alarm Configuration" << endl << endl; - - for( int alarmID = 1 ; alarmID < MAX_ALARM_ID; alarmID++) - { - try - { - oam.getAlarmConfig(alarmID, alarmconfig); - - cout << "Alarm ID #" << alarmID << " Configuration information" << endl; - - cout << "BriefDesc = " << alarmconfig.BriefDesc << endl; - cout << "DetailedDesc = " << alarmconfig.DetailedDesc << endl; - // cout << "EmailAddr = " << alarmconfig.EmailAddr << endl; - // cout << "PagerNum = " << alarmconfig.PagerNum << endl; - - switch(alarmconfig.Severity) - { - case CRITICAL: - cout << "Severity = CRITICAL" << endl; - break; - case MAJOR: - cout << "Severity = MAJOR" << endl; - break; - case MINOR: - cout << "Severity = MINOR" << endl; - break; - case WARNING: - cout << "Severity = WARNING" << endl; - break; - default: - cout << "Severity = INFORMATIONAL" << endl; - break; - } - - cout << "Threshold = " << alarmconfig.Threshold << endl; - // cout << "Occurrences = " << alarmconfig.Occurrences << endl; - // cout << "LastIssueTime = " << alarmconfig.LastIssueTime << endl << endl; - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getAlarmConfig Failed = " << e.what() << endl; - break; - } - } - break; - } - else - { // get a single Alarm info - try - { - oam.getAlarmConfig(atoi(arguments[1].c_str()), alarmconfig); - - cout << endl << "Alarm ID #" << arguments[1] << " Configuration information" << endl; - - cout << "BriefDesc = " << alarmconfig.BriefDesc << endl; - cout << "DetailedDesc = " << alarmconfig.DetailedDesc << endl; - // cout << "EmailAddr = " << alarmconfig.EmailAddr << endl; - // cout << "PagerNum = " << alarmconfig.PagerNum << endl; - - switch(alarmconfig.Severity) - { - case CRITICAL: - cout << "Severity = CRITICAL" << endl; - break; - case MAJOR: - cout << "Severity = MAJOR" << endl; - break; - case MINOR: - cout << "Severity = MINOR" << endl; - break; - case WARNING: - cout << "Severity = WARNING" << endl; - break; - default: - cout << "Severity = INFORMATIONAL" << endl; - break; - } - - cout << "Threshold = " << alarmconfig.Threshold << endl; - // cout << "Occurrences = " << alarmconfig.Occurrences << endl; - // cout << "LastIssueTime = " << alarmconfig.LastIssueTime << endl << endl; - cout << endl; - break; - } - catch (exception& e) - { - cout << endl << "**** getAlarmConfig Failed = " << e.what() << endl; - break; - } - } - } - break; - - case 11: // setAlarmConfig - parameters: AlarmID, Parameter name and value - { - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** setAlarmConfig Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - if (arguments[3] == "") - { - // need 3 arguments - cout << endl << "**** setAlarmConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - try - { - if ( arguments[3] == "=" ) { - cout << endl << "**** setAlarmConfig Failed : Invalid Value of '=', please re-enter" << endl; - break; - } - - if ( arguments[2] == "Threshold" && arguments[3] != "0" && atoi(arguments[3].c_str()) == 0 ) { - cout << endl << "**** setAlarmConfig Failed : New value must be a number" << endl; - break; - } - - oam.setAlarmConfig(atoi(arguments[1].c_str()), arguments[2], atoi(arguments[3].c_str())); - cout << endl << " Successfully set " << arguments[2] << " = " << arguments[3] << endl << endl; - break; - } - catch (exception& e) - { - cout << endl << "**** setAlarmConfig Failed = " << e.what() << endl; - break; - } - } - break; - - case 12: // getActiveAlarms - parameters: none - { - AlarmList alarmList; - try { - oam.getActiveAlarms(alarmList); - } - catch(...) - { - // need arguments - cout << endl << "**** getActiveAlarms Failed : Error in oam.getActiveAlarms" << endl; - break; - } - - cout << endl << "Active Alarm List:" << endl << endl; - - AlarmList :: iterator i; - for (i = alarmList.begin(); i != alarmList.end(); ++i) - { - cout << "AlarmID = " << i->second.getAlarmID() << endl; - cout << "Brief Description = " << i->second.getDesc() << endl; - cout << "Alarm Severity = "; - switch (i->second.getSeverity()) - { - case CRITICAL: - cout << "CRITICAL" << endl; - break; - case MAJOR: - cout << "MAJOR" << endl; - break; - case MINOR: - cout << "MINOR" << endl; - break; - case WARNING: - cout << "WARNING" << endl; - break; - case INFORMATIONAL: - cout << "INFORMATIONAL" << endl; - break; - } - cout << "Time Issued = " << i->second.getTimestamp() << endl; - cout << "Reporting Module = " << i->second.getSname() << endl; - cout << "Reporting Process = " << i->second.getPname() << endl; - cout << "Reported Device = " << i->second.getComponentID() << endl << endl; - } - } - break; - - case 13: // getStorageConfig - { - try - { - systemStorageInfo_t t; - t = oam.getStorageConfig(); - - string cloud; - try { - oam.getSystemConfig("Cloud", cloud); - } - catch(...) {} - - string::size_type pos = cloud.find("amazon",0); - if (pos != string::npos) - cloud = "amazon"; - - cout << endl << "System Storage Configuration" << endl << endl; - - cout << "Performance Module (DBRoot) Storage Type = " << boost::get<0>(t) << endl; - if ( cloud == "amazon" ) - cout << "User Module Storage Type = " << boost::get<3>(t) << endl; - cout << "System Assigned DBRoot Count = " << boost::get<1>(t) << endl; - - DeviceDBRootList moduledbrootlist = boost::get<2>(t); - - typedef std::vector dbrootList; - dbrootList dbrootlist; - - DeviceDBRootList::iterator pt = moduledbrootlist.begin(); - for( ; pt != moduledbrootlist.end() ; pt++) - { - cout << "DBRoot IDs assigned to 'pm" + oam.itoa((*pt).DeviceID) + "' = "; - DBRootConfigList::iterator pt1 = (*pt).dbrootConfigList.begin(); - for( ; pt1 != (*pt).dbrootConfigList.end() ;) - { - cout << *pt1; - dbrootlist.push_back(*pt1); - pt1++; - if (pt1 != (*pt).dbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - - //get any unassigned DBRoots - DBRootConfigList undbrootlist; - try { - oam.getUnassignedDbroot(undbrootlist); - } - catch(...) {} - - if ( !undbrootlist.empty() ) - { - cout << endl << "DBRoot IDs unassigned = "; - DBRootConfigList::iterator pt1 = undbrootlist.begin(); - for( ; pt1 != undbrootlist.end() ;) - { - cout << *pt1; - pt1++; - if (pt1 != undbrootlist.end()) - cout << ", "; - } - cout << endl; - } - - cout << endl; - // um volumes - if (cloud == "amazon" && boost::get<3>(t) == "external") - { - ModuleTypeConfig moduletypeconfig; - oam.getSystemConfig("um", moduletypeconfig); - for ( int id = 1; id < moduletypeconfig.ModuleCount+1 ; id++) - { - string volumeNameID = "UMVolumeName" + oam.itoa(id); - string volumeName = oam::UnassignedName; - string deviceNameID = "UMVolumeDeviceName" + oam.itoa(id); - string deviceName = oam::UnassignedName; - try { - oam.getSystemConfig( volumeNameID, volumeName); - oam.getSystemConfig( deviceNameID, deviceName); - } - catch(...) - {} - - cout << "Amazon EC2 Volume Name/Device Name for 'um" << id << "': " << volumeName << ", " << deviceName << endl; - } - } - - // pm volumes - if (cloud == "amazon" && boost::get<0>(t) == "external") - { - cout << endl; - - DBRootConfigList dbrootConfigList; - try - { - oam.getSystemDbrootConfig(dbrootConfigList); - - DBRootConfigList::iterator pt = dbrootConfigList.begin(); - for( ; pt != dbrootConfigList.end() ; pt++) - { - string volumeNameID = "PMVolumeName" + oam.itoa(*pt); - string volumeName = oam::UnassignedName; - string deviceNameID = "PMVolumeDeviceName" + oam.itoa(*pt); - string deviceName = oam::UnassignedName; - string amazonDeviceNameID = "PMVolumeAmazonDeviceName" + oam.itoa(*pt); - string amazondeviceName = oam::UnassignedName; - - try { - oam.getSystemConfig( volumeNameID, volumeName); - oam.getSystemConfig( deviceNameID, deviceName); - oam.getSystemConfig( amazonDeviceNameID, amazondeviceName); - } - catch(...) - { - continue; - } - - cout << "Amazon EC2 Volume Name/Device Name/Amazon Device Name for DBRoot" << oam.itoa(*pt) << ": " << volumeName << ", " << deviceName << ", " << amazondeviceName << endl; - } - } - catch (exception& e) - { - cout << endl << "**** getSystemDbrootConfig Failed : " << e.what() << endl; - } - - // print un-assigned dbroots - DBRootConfigList::iterator pt1 = undbrootlist.begin(); - for( ; pt1 != undbrootlist.end() ; pt1++) - { - string volumeNameID = "PMVolumeName" + oam.itoa(*pt1); - string volumeName = oam::UnassignedName; - string deviceNameID = "PMVolumeDeviceName" + oam.itoa(*pt1); - string deviceName = oam::UnassignedName; - string amazonDeviceNameID = "PMVolumeAmazonDeviceName" + oam.itoa(*pt1); - string amazondeviceName = oam::UnassignedName; - - try { - oam.getSystemConfig( volumeNameID, volumeName); - oam.getSystemConfig( deviceNameID, deviceName); - oam.getSystemConfig( amazonDeviceNameID, amazondeviceName); - } - catch(...) - { - continue; - } - - cout << "Amazon EC2 Volume Name/Device Name/Amazon Device Name for DBRoot" << oam.itoa(*pt1) << ": " << volumeName << ", " << deviceName << ", " << amazondeviceName << endl; - } - } - - string GlusterConfig; - string GlusterCopies; - string GlusterStorageType; - try { - oam.getSystemConfig("GlusterConfig", GlusterConfig); - oam.getSystemConfig("GlusterCopies", GlusterCopies); - oam.getSystemConfig("GlusterStorageType", GlusterStorageType); - } - catch(...) {} - - if ( GlusterConfig == "y" ) - { - cout << endl << "Data Redundant Configuration" << endl << endl; - cout << "Copies Per DBroot = " << GlusterCopies << endl; - cout << "Storage Type = " << GlusterStorageType << endl; - - oamModuleInfo_t st; - string moduleType; - try { - st = oam.getModuleInfo(); - moduleType = boost::get<1>(st); - } - catch (...) {} - - if ( moduleType != "pm") - break; - - try - { - DBRootConfigList dbrootConfigList; - oam.getSystemDbrootConfig(dbrootConfigList); - - DBRootConfigList::iterator pt = dbrootConfigList.begin(); - for( ; pt != dbrootConfigList.end() ; pt++) - { - cout << "DBRoot #" << oam.itoa(*pt) << " has copies on PMs = "; - - string pmList = ""; - try { - string errmsg; - oam.glusterctl(oam::GLUSTER_WHOHAS, oam.itoa(*pt), pmList, errmsg); - } - catch (...) - {} - - boost::char_separator sep(" "); - boost::tokenizer< boost::char_separator > tokens(pmList, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - cout << *it << " "; - } - - cout << endl; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getSystemDbrootConfig Failed : " << e.what() << endl; - } - } - } - catch (exception& e) - { - cout << endl << "**** getStorageConfig Failed : " << e.what() << endl; - } - - cout << endl; - - break; - } - - case 14: // addDbroot parameters: dbroot-number - { - string GlusterConfig = "n"; - try { - oam.getSystemConfig( "GlusterConfig", GlusterConfig); - } - catch(...) - {} - - if (GlusterConfig == "y") { - cout << endl << "**** addDbroot Not Supported on Data Redundancy Configured System, use addModule command to expand your capacity" << endl; - break; - } - - if ( localModule != parentOAMModule ) { - // exit out since not on active module - cout << endl << "**** addDbroot Failed : Can only run command on Active OAM Parent Module (" << parentOAMModule << ")." << endl; - break; - } - - string cloud; - bool amazon = false; - try { - oam.getSystemConfig("Cloud", cloud); - } - catch(...) {} - - string::size_type pos = cloud.find("amazon",0); - if (pos != string::npos) - amazon = true; - - if (arguments[1] == "") - { - // need atleast 1 arguments - cout << endl << "**** addDbroot Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - int dbrootNumber = atoi(arguments[1].c_str()); - - string DBRootStorageType; - try { - oam.getSystemConfig( "DBRootStorageType", DBRootStorageType); - } - catch(...) {} - - string EBSsize = oam::UnassignedName; - if (amazon && DBRootStorageType == "external" ) - { - if ( arguments[2] != "") - EBSsize = arguments[2]; - else - { - cout << endl; - oam.getSystemConfig("PMVolumeSize", EBSsize); - - string prompt = "Enter EBS storage size in GB, current setting is " + EBSsize + " : "; - EBSsize = dataPrompt(prompt); - } - } - - //get dbroots ids for reside PM - try - { - DBRootConfigList dbrootlist; - oam.addDbroot(dbrootNumber, dbrootlist, EBSsize); - - cout << endl << " New DBRoot IDs added = "; - - DBRootConfigList::iterator pt = dbrootlist.begin(); - for( ; pt != dbrootlist.end() ;) - { - cout << oam.itoa(*pt); - pt++; - if (pt != dbrootlist.end()) - cout << ", "; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** addDbroot Failed: " << e.what() << endl; - break; - } - - cout << endl; - } - break; - - case 15: // removeDbroot parameters: dbroot-list - { - string GlusterConfig = "n"; - try { - oam.getSystemConfig( "GlusterConfig", GlusterConfig); - } - catch(...) - {} - - if ( localModule != parentOAMModule ) { - // exit out since not on active module - cout << endl << "**** removeDbroot Failed : Can only run command on Active OAM Parent Module (" << parentOAMModule << ")." << endl; - break; - } - - if (arguments[1] == "") - { - // need atleast 1 arguments - cout << endl << "**** removeDbroot Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - SystemStatus systemstatus; - try { - oam.getSystemStatus(systemstatus); - - if (systemstatus.SystemOpState != oam::ACTIVE ) { - cout << endl << "**** removeDbroot Failed, System has to be in a ACTIVE state" << endl; - break; - } - } - catch (exception& e) - { - cout << endl << "**** removeDbroot Failed : " << e.what() << endl; - break; - } - catch(...) - { - cout << endl << "**** removeDbroot Failed, Failed return from getSystemStatus API" << endl; - break; - } - - systemStorageInfo_t t; - try - { - t = oam.getStorageConfig(); - } - catch(...) {} - - string dbrootIDs = arguments[1]; - - DBRootConfigList dbrootlist; - - bool assign = false; - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(dbrootIDs, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - //check if dbroot is assigned to a pm - DeviceDBRootList moduledbrootlist = boost::get<2>(t); - - DeviceDBRootList::iterator pt = moduledbrootlist.begin(); - for( ; pt != moduledbrootlist.end() ; pt++) - { - DBRootConfigList::iterator pt1 = (*pt).dbrootConfigList.begin(); - for( ; pt1 != (*pt).dbrootConfigList.end() ; pt1++) - { - if ( atoi((*it).c_str()) == *pt1 ) { - cout << endl << "**** removeDbroot Failed, dbroot " << *it << " is assigned to a module, unassign first before removing" << endl; - assign = true; - break; - } - } - } - - if (assign) - break; - - dbrootlist.push_back(atoi((*it).c_str())); - } - - if (assign) - break; - - cout << endl; - - try - { - oam.removeDbroot(dbrootlist); - - cout << endl << " Successful Removal of DBRoots " << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** removeDbroot Failed: " << e.what() << endl; - break; - } - } - break; - - case 16: // stopSystem - parameters: graceful flag, Ack flag - { - BRM::DBRM dbrm; - bool bDBRMReady = dbrm.isDBRMReady(); - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - - if ( gracefulTemp == INSTALL ) - { - cout << endl << "Invalid Parameter, INSTALL option not supported. Please use shutdownSystem Command" << endl << endl; - break; - } - - cout << endl << "This command stops the processing of applications on all Modules within the Calpont System" << endl; - - try - { - cout << endl << " Checking for active transactions" << endl; - - if (gracefulTemp != GRACEFUL || - !bDBRMReady || - dbrm.isReadWrite()) - { - suspendAnswer = FORCE; - } - - if (suspendAnswer == CANCEL) // We don't have an answer from the command line or some other state. - { - // If there are bulkloads, ddl or dml happening, Ask what to do. - bool bIsDbrmUp = true; - execplan::SessionManager sessionManager; - BRM::SIDTIDEntry blockingsid; - std::vector tableLocks = dbrm.getAllTableLocks(); - bool bActiveTransactions = false; - if (!tableLocks.empty()) - { - oam.DisplayLockedTables(tableLocks, &dbrm); - bActiveTransactions = true; - } - if (sessionManager.checkActiveTransaction(0, bIsDbrmUp, blockingsid)) - { - cout << endl << "There are active transactions being processed" << endl; - bActiveTransactions = true; - } - - if (bActiveTransactions) - { - suspendAnswer = AskSuspendQuestion(CmdID); - // if (suspendAnswer == FORCE) - // { - // if (confirmPrompt("Force may cause data problems and should only be used in extreme circumstances")) - // { - // break; - // } - // } - bNeedsConfirm = false; - } - else - { - suspendAnswer = FORCE; - } - } - if (suspendAnswer == CANCEL) - { - // We're outa here. - break; - } - - if (bNeedsConfirm) - { - if (confirmPrompt("")) - break; - } - - switch (suspendAnswer) - { - case WAIT: - cout << endl << " Waiting for all transactions to complete" << flush; - dbrm.setSystemShutdownPending(true, false, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case ROLLBACK: - cout << endl << " Rollback of all transactions" << flush; - dbrm.setSystemShutdownPending(true, true, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case FORCE: - cout << endl << " System being stopped now..." << flush; - if (bDBRMReady) - { - dbrm.setSystemShutdownPending(true, false, true); - } - break; - case CANCEL: - break; - } - - oam.stopSystem(gracefulTemp, ackTemp); - - if ( waitForStop() ) - cout << endl << " Successful stop of System " << endl << endl; - else - cout << endl << "**** stopSystem Failed : check log files" << endl; - - checkForDisabledModules(); - } - catch (exception& e) - { - string Failed = e.what(); - - if (Failed.find("Connection refused") != string::npos) - { - cout << endl << "**** stopSystem Failure : ProcessManager not Active" << endl; - cout << "Retry or Run 'shutdownSystem FORCEFUL' command" << endl << endl; - } - else - { - cout << endl << "**** stopSystem Failure : " << e.what() << endl; - cout << "Retry or Run 'shutdownSystem FORCEFUL' command" << endl << endl; - } - } - } - break; - - case 17: // shutdownSystem - parameters: graceful flag, Ack flag, suspendAnswer - { - BRM::DBRM dbrm; - bool bDBRMReady = dbrm.isDBRMReady(); - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - - cout << endl << "This command stops the processing of applications on all Modules within the Calpont System" << endl; - - try - { - cout << endl << " Checking for active transactions" << endl; - - if (gracefulTemp != GRACEFUL || - !bDBRMReady || - dbrm.isReadWrite()) - { - suspendAnswer = FORCE; - } - - if (suspendAnswer == CANCEL) // We don't have an answer from the command line. - { - // If there are bulkloads, ddl or dml happening, Ask what to do. - bool bIsDbrmUp = true; - execplan::SessionManager sessionManager; - BRM::SIDTIDEntry blockingsid; - std::vector tableLocks = dbrm.getAllTableLocks(); - bool bActiveTransactions = false; - if (!tableLocks.empty()) - { - oam.DisplayLockedTables(tableLocks, &dbrm); - bActiveTransactions = true; - } - if (sessionManager.checkActiveTransaction(0, bIsDbrmUp, blockingsid)) - { - cout << endl << " There are active transactions being processed" << endl; - bActiveTransactions = true; - } - - if (bActiveTransactions) - { - suspendAnswer = AskSuspendQuestion(CmdID); - bNeedsConfirm = false; - } - else - { - suspendAnswer = FORCE; - } - } - if (suspendAnswer == CANCEL) - { - // We're outa here. - break; - } - - if (bNeedsConfirm) - { - if (confirmPrompt("")) - break; - } - - switch (suspendAnswer) - { - case WAIT: - cout << endl << " Waiting for all transactions to complete" << flush; - dbrm.setSystemShutdownPending(true, false, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case ROLLBACK: - cout << endl << " Rollback of all transactions" << flush; - dbrm.setSystemShutdownPending(true, true, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case FORCE: - cout << endl << " Stopping System..." << flush; - if (bDBRMReady) - { - dbrm.setSystemShutdownPending(true, false, true); - } - break; - case CANCEL: - break; - } - - // This won't return until the system is shutdown. It might take a while to finish what we're working on first. - - oam.stopSystem(gracefulTemp, ackTemp); - - if ( waitForStop() ) - cout << endl << " Successful stop of System " << endl; - else - cout << endl << "**** stopSystem Failed : check log files" << endl; - - cout << endl << " Shutting Down System..." << flush; - - oam.shutdownSystem(gracefulTemp, ackTemp); - - //hdfs / hadoop config - string DBRootStorageType; - try { - oam.getSystemConfig( "DBRootStorageType", DBRootStorageType); - } - catch(...) {} - - if ( DBRootStorageType == "hdfs") - { - string cmd = "pdsh -a '/" + startup::StartUp::installDir() + "/bin/infinidb stop' > /tmp/cc-stop.pdsh 2>&1"; - system(cmd.c_str()); - if (oam.checkLogStatus("/tmp/cc-stop.pdsh", "exit") ) { - cout << endl << "ERROR: Stopping InfiniDB Service failure, check /tmp/cc-stop.pdsh. exit..." << endl; - } - } - else - { - string cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /tmp/status.log"; - system(cmd.c_str()); - } - } - catch (exception& e) - { - string Failed = e.what(); - - if ( gracefulTemp == FORCEFUL ) - { - string cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /tmp/status.log"; - system(cmd.c_str()); - cout << endl << " Successful shutdown of System (stopped local infinidb service) " << endl << endl; - } - - if (Failed.find("Connection refused") != string::npos) - { - cout << endl << "**** shutdownSystem Error : ProcessManager not Active, stopping infinidb service" << endl; - string cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /tmp/status.log"; - system(cmd.c_str()); - cout << endl << " Successful stop of local infinidb service " << endl << endl; - } - else - { - cout << endl << "**** shutdownSystem Failure : " << e.what() << endl; - cout << "Retry using FORCEFUL option" << endl << endl; - } - - //hdfs / hadoop config - string DBRootStorageType; - try { - oam.getSystemConfig( "DBRootStorageType", DBRootStorageType); - } - catch(...) {} - - if ( DBRootStorageType == "hdfs") - { - string cmd = "pdsh -a '" + startup::StartUp::installDir() + "/bin/infinidb stop' > /tmp/cc-stop.pdsh 2>&1"; - system(cmd.c_str()); - if (oam.checkLogStatus("/tmp/cc-stop.pdsh", "exit") ) { - cout << endl << "ERROR: Stopping InfiniDB Service failure, check /tmp/cc-stop.pdsh. exit..." << endl; - break; - } - } - } - - sleep(10); - } - break; - - case 18: // startSystem - parameters: Ack flag - { - // startSystem Command - - //don't start if a disable module has a dbroot assigned to it - if (!checkForDisabledModules()) { - cout << endl << "Error: startSystem command can't be performed: disabled module has a dbroot assigned to it" << endl; - break; - } - - // if infinidb service is down, then start system by starting all of the infinidb services - // this would be used after a shutdownSystem command - // if infinidb service is up, send message to ProcMgr to start system (which starts all processes) - - string cmd = startup::StartUp::installDir() + "/bin/infinidb status > /tmp/status.log"; - system(cmd.c_str()); - if (!oam.checkLogStatus("/tmp/status.log", "InfiniDB is running") ) - { - cout << "startSystem command, 'infinidb' service is down, sending command to" << endl; - cout << "start the 'infinidb' service on all modules" << endl << endl; - - SystemModuleTypeConfig systemmoduletypeconfig; - ModuleTypeConfig moduletypeconfig; - ModuleConfig moduleconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - int systemModuleNumber = 0; - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - systemModuleNumber = systemModuleNumber + systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - } - } - catch (exception& e) - { - cout << endl << "**** startSystem Failed = " << e.what() << endl; - break; - } - - if ( systemModuleNumber > 1 ) - { - if (arguments[1] != "") - password = arguments[1]; - else - password = "ssh"; - - // - // perform start of InfiniDB of other servers in the system - // - - DeviceNetworkList::iterator pt; - string modulename; - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - for (pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); - ++pt) - { - modulename = (*pt).DeviceName; - if ( (*pt).DisableState == oam::MANDISABLEDSTATE || - (*pt).DisableState == oam::AUTODISABLEDSTATE ) - { - cout << " Module '" << modulename << "' is disabled and will not be started" << endl; - } - } - } - cout << endl << " System being started, please wait..."; - cout.flush(); - bool FAILED = false; - - //hdfs / hadoop config - string DBRootStorageType; - try { - oam.getSystemConfig( "DBRootStorageType", DBRootStorageType); - } - catch(...) {} - - if ( DBRootStorageType == "hdfs") - { - string cmd = "pdsh -a '" + startup::StartUp::installDir() + "/bin/infinidb restart' > /tmp/cc-restart.pdsh 2>&1"; - system(cmd.c_str()); - if (oam.checkLogStatus("/tmp/cc-restart.pdsh", "exit") ) { - cout << endl << "ERROR: Restart InfiniDB Service failure, check /tmp/cc-restart.pdsh. exit..." << endl; - break; - } - } - else - { - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - if ( moduleCount == 0 ) - // skip if no modules - continue; - - for (pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); - ++pt) - { - modulename = (*pt).DeviceName; - - if ( (*pt).DisableState == oam::MANDISABLEDSTATE || - (*pt).DisableState == oam::AUTODISABLEDSTATE ) - { - continue; - } - - if ( modulename == localModule ) - { - cmd = startup::StartUp::installDir() + "/bin/infinidb restart > /tmp/start.log 2>&1"; - int rtnCode = system(cmd.c_str()); - if (geteuid() == 0 && WEXITSTATUS(rtnCode) != 0) - { - cout << endl << "error with running 'infinidb restart' on local module " << endl; - cout << endl << "**** startSystem Failed" << endl; - break; - } - - continue; - } - - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - //run remote command script - cmd = startup::StartUp::installDir() + "/bin/remote_command.sh " + (*pt1).IPAddr + " " + password + " '" + startup::StartUp::installDir() + "/bin/infinidb restart' 0"; - int rtnCode = system(cmd.c_str()); - if (WEXITSTATUS(rtnCode) < 0) { - cout << endl << "error with running 'infinidb start' on module " + modulename << endl; - cout << endl << "**** startSystem Failed" << endl; - - // stop local infinidb service - cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /tmp/stop.log 2>&1"; - system(cmd.c_str()); - - FAILED = true; - break; - } - else - { - if (rtnCode > 0) { - cout << endl << "Invalid Password when running 'infinidb start' on module " + modulename << ", can retry by providing password as the second argument" << endl; - cout << endl << "**** startSystem Failed" << endl; - - // stop local infinidb service - cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /tmp/stop.log 2>&1"; - system(cmd.c_str()); - - FAILED = true; - break; - } - } - } - if (FAILED) - break; - } - } - if (FAILED) - break; - } - - if (FAILED) - break; - } - else - { - //just kick off local server - cout << " System being started, please wait..."; - cout.flush(); - cmd = startup::StartUp::installDir() + "/bin/infinidb restart > /tmp/start.log 2>&1"; - int rtnCode = system(cmd.c_str()); - if (geteuid() == 0 && WEXITSTATUS(rtnCode) != 0) { - cout << endl << "error with running 'infinidb restart' on local module " << endl; - cout << endl << "**** startSystem Failed" << endl; - break; - } - } - - if ( waitForActive() ) - cout << endl << " Successful start of System " << endl << endl; - else - cout << endl << "**** startSystem Failed : check log files" << endl; - } - else - { - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - - try - { - cout << " System being started, please wait..."; - cout.flush(); - oam.startSystem(ackTemp); - if ( waitForActive() ) - cout << endl << " Successful start of System " << endl << endl; - else - cout << endl << "**** startSystem Failed : check log files" << endl; - } - catch (exception& e) - { - cout << endl << "**** startSystem Failed : " << e.what() << endl; - string Failed = e.what(); - if (Failed.find("Database Test Error") != string::npos) - cout << "Database Test Error occurred, check Alarm and Logs for addition Information" << endl; - } - } - } - break; - - case 19: // restartSystem - parameters: graceful flag, Ack flag - { - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm, &password); - - //don't start if a disable module has a dbroot assigned to it - if (!checkForDisabledModules()) { - cout << endl << "Error: restartSystem command can't be performed: disabled module has a dbroot assigned to it" << endl; - break; - } - - // if infinidb service is down, then start system by starting all of the infinidb services - // this would be used after a shutdownSystem command - // if infinidb service is up, send message to ProcMgr to start system (which starts all processes) - - string cmd = startup::StartUp::installDir() + "/bin/infinidb status > /tmp/status.log"; - system(cmd.c_str()); - if (!oam.checkLogStatus("/tmp/status.log", "InfiniDB is running") ) - { - if (bNeedsConfirm) - { - if (confirmPrompt("")) // returns true if user wants to quit. - break; - } - cout << "restartSystem command, 'infinidb' service is down, sending command to" << endl; - cout << "start the 'infinidb' service on all modules" << endl << endl; - - SystemModuleTypeConfig systemmoduletypeconfig; - ModuleTypeConfig moduletypeconfig; - ModuleConfig moduleconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - int systemModuleNumber = 0; - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - systemModuleNumber = systemModuleNumber + systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - } - } - catch (exception& e) - { - cout << endl << "**** restartSystem Failed = " << e.what() << endl; - break; - } - - if ( systemModuleNumber > 1 ) - { - if (password.empty()) - password = "ssh"; - - // - // perform start of InfiniDB of other servers in the system - // - - DeviceNetworkList::iterator pt; - string modulename; - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - for (pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); - ++pt) - { - modulename = (*pt).DeviceName; - if ( (*pt).DisableState == oam::MANDISABLEDSTATE || - (*pt).DisableState == oam::AUTODISABLEDSTATE ) - { - cout << " Module '" << modulename << "' is disabled and will not be started" << endl; - } - } - } - cout << endl << " System being started, please wait..."; - cout.flush(); - bool FAILED = false; - - //hdfs / hadoop config - string DBRootStorageType; - try { - oam.getSystemConfig( "DBRootStorageType", DBRootStorageType); - } - catch(...) {} - - if ( DBRootStorageType == "hdfs") - { - string cmd = "pdsh -a '" + startup::StartUp::installDir() + "/bin/infinidb restart' > /tmp/cc-restart.pdsh 2>&1"; - system(cmd.c_str()); - if (oam.checkLogStatus("/tmp/cc-restart.pdsh", "exit") ) { - cout << endl << "ERROR: Restart InfiniDB Service failue, check /tmp/cc-restart.pdsh. exit..." << endl; - break; - } - } - else - { - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - if ( moduleCount == 0 ) - // skip if no modules - continue; - - for (pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); - ++pt) - { - modulename = (*pt).DeviceName; - - if ( (*pt).DisableState == oam::MANDISABLEDSTATE || - (*pt).DisableState == oam::AUTODISABLEDSTATE ) - { - continue; - } - - if ( modulename == localModule ) - continue; // do last - - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - //run remote command script - cmd = startup::StartUp::installDir() + "/bin/remote_command.sh " + (*pt1).IPAddr + " " + password + " '" + startup::StartUp::installDir() + "/bin/infinidb restart' 0"; - - int rtnCode = system(cmd.c_str()); - if (WEXITSTATUS(rtnCode) < 0) { - cout << endl << "error with running 'infinidb start' on module " + modulename << endl; - cout << endl << "**** restartSystem Failed" << endl; - - // stop local infinidb service - cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /tmp/stop.log 2>&1"; - system(cmd.c_str()); - - FAILED = true; - break; - } - else - { - if (rtnCode > 0) { - cout << endl << "Invalid Password when running 'infinidb start' on module " + modulename << ", can retry by providing password as the second argument" << endl; - cout << endl << "**** restartSystem Failed" << endl; - FAILED = true; - - // stop local infinidb service - cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /tmp/stop.log 2>&1"; - system(cmd.c_str()); - - break; - } - } - } - if (FAILED) - break; - } - if (FAILED) - break; - - //RESTART LOCAL HOST - cmd = startup::StartUp::installDir() + "/bin/infinidb restart > /tmp/start.log 2>&1"; - int rtnCode = system(cmd.c_str()); - if (geteuid() == 0 && WEXITSTATUS(rtnCode) != 0) - { - cout << endl << "error with running 'infinidb restart' on local module " << endl; - cout << endl << "**** restartSystem Failed" << endl; - break; - } - } - - if (FAILED) - break; - } - } - else - { - //just kick off local server - cout << " System being restarted, please wait..."; - cout.flush(); - string cmd = startup::StartUp::installDir() + "/bin/infinidb restart > /tmp/start.log 2>&1"; - int rtnCode = system(cmd.c_str()); - if (WEXITSTATUS(rtnCode) != 0) { - cout << endl << "error with running 'infinidb start' on local module " << endl; - cout << endl << "**** restartSystem Failed" << endl; - break; - } - } - - if ( waitForActive() ) - cout << endl << " Successful restart of System " << endl << endl; - else - cout << endl << "**** restartSystem Failed : check log files" << endl; - } - else - { - BRM::DBRM dbrm; - bool bDBRMReady = dbrm.isDBRMReady(); - - try - { - if (gracefulTemp != GRACEFUL || - !bDBRMReady || - dbrm.isReadWrite()) - { - suspendAnswer = FORCE; - } - - if (suspendAnswer == CANCEL) // We don't have an answer from the command line. - { - // If there are bulkloads, ddl or dml happening, Ask what to do. - bool bIsDbrmUp = true; - execplan::SessionManager sessionManager; - BRM::SIDTIDEntry blockingsid; - std::vector tableLocks = dbrm.getAllTableLocks(); - bool bActiveTransactions = false; - if (!tableLocks.empty()) - { - oam.DisplayLockedTables(tableLocks, &dbrm); - bActiveTransactions = true; - } - if (sessionManager.checkActiveTransaction(0, bIsDbrmUp, blockingsid)) - { - cout << endl << "There are active transactions being processed" << endl; - bActiveTransactions = true; - } - - if (bActiveTransactions) - { - suspendAnswer = AskSuspendQuestion(CmdID); - // if (suspendAnswer == FORCE) - // { - // if (confirmPrompt("Force may cause data problems and should only be used in extreme circumstances")) - // { - // break; - // } - // } - bNeedsConfirm = false; - } - else - { - suspendAnswer = FORCE; - } - } - if (suspendAnswer == CANCEL) - { - // We're outa here. - break; - } - if (bNeedsConfirm) - { - if (confirmPrompt("")) - break; - } - switch (suspendAnswer) - { - case WAIT: - cout << endl << " Waiting for all transactions to complete" << flush; - dbrm.setSystemShutdownPending(true, false, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case ROLLBACK: - cout << endl << " Rollback of all transactions" << flush; - dbrm.setSystemShutdownPending(true, true, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case FORCE: - cout << endl << " System being restarted now ..." << flush; - if (bDBRMReady) - { - dbrm.setSystemShutdownPending(true, false, true); - } - break; - case CANCEL: - break; - } - - int returnStatus = oam.restartSystem(gracefulTemp, ackTemp); - switch (returnStatus) - { - case API_SUCCESS: - if ( waitForActive() ) - cout << endl << " Successful restart of System " << endl << endl; - else - cout << endl << "**** restartSystem Failed : check log files" << endl; - break; - case API_CANCELLED: - cout << endl << " Restart of System canceled" << endl << endl; - break; - default: - cout << endl << "**** restartSystem Failed : Check system logs" << endl; - break; - } - } - catch (exception& e) - { - cout << endl << "**** restartSystem Failed : " << e.what() << endl; - string Failed = e.what(); - if (Failed.find("Database Test Error") != string::npos) - cout << "Database Test Error occurred, check Alarm and Logs for additional Information" << endl; - } - } - } - break; - - case 20: // getSystemStatus - parameters: NONE - { - try { - printSystemStatus(); - } - catch (...) - { - break; - } - - } - break; - - case 21: // getProcessStatus - parameters: NONE - { - try { - printProcessStatus(); - } - catch (...) - { - break; - } - } - break; - - case 22: // system - UNIX system command - { - if (arguments[1] == "") - { - // need arguments - cout << endl << "**** system Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - for(int j=2; j < ArgNum; j++) - { - arguments[1].append(" "); - arguments[1].append(arguments[j]); - } - - system (arguments[1].c_str()); - } - break; - - case 23: // getAlarmHistory - { - if (arguments[1] == "") - { - // need arguments - cout << endl << "**** getAlarmHistory Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - if ( arguments[1].size() != 8 ) { - cout << "date not in correct format, enter MM/DD/YY" << endl; - break; - } - - if ( !(arguments[1].substr(2,1) == "/" && arguments[1].substr(5,1) == "/") ) { - cout << "date not in correct format, enter MM/DD/YY" << endl; - break; - } - - AlarmList alarmList; - try { - oam.getAlarms(arguments[1], alarmList); - } - catch (exception& e) - { - cout << endl << "**** getAlarms Failed = " << e.what() << endl; - break; - } - - cout << endl << "Historical Alarm List for " + arguments[1] + " :" << endl << endl; - - AlarmList :: iterator i; - int counter = 0; - for (i = alarmList.begin(); i != alarmList.end(); ++i) - { - switch (i->second.getState()) - { - case SET: - cout << "SET" << endl; - break; - case CLEAR: - cout << "CLEAR" << endl; - break; - } - cout << "AlarmID = " << i->second.getAlarmID() << endl; - cout << "Brief Description = " << i->second.getDesc() << endl; - cout << "Alarm Severity = "; - switch (i->second.getSeverity()) - { - case CRITICAL: - cout << "CRITICAL" << endl; - break; - case MAJOR: - cout << "MAJOR" << endl; - break; - case MINOR: - cout << "MINOR" << endl; - break; - case WARNING: - cout << "WARNING" << endl; - break; - case INFORMATIONAL: - cout << "INFORMATIONAL" << endl; - break; - } - cout << "Time Issued = " << i->second.getTimestamp() << endl; - cout << "Reporting Module = " << i->second.getSname() << endl; - cout << "Reporting Process = " << i->second.getPname() << endl; - cout << "Reported Device = " << i->second.getComponentID() << endl << endl; - - counter++; - if ( counter > 4 ) { - // continue prompt - if (confirmPrompt("Displaying Alarm History")) - break; - counter=0; - } - } - } - break; - - case 24: // monitorAlarms - { - cout << endl << "Monitor for System Alarms" << endl; - cout << " Enter control-C to return to command line" << endl << endl; - - string cmd = "tail -n 0 -f " + snmpmanager::ALARM_FILE; - system(cmd.c_str()); - } - break; - - case 25: // resetAlarm - { - if (arguments[1] == "") - { - // need 3 arguments - cout << endl << "**** resetAlarm Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - try - { - // check if requested alarm is Active - AlarmList alarmList; - Oam oam; - try { - oam.getActiveAlarms(alarmList); - } - catch (exception& e) - { - cout << endl << "**** getActiveAlarm Failed = " << e.what() << endl; - break; - } - - bool found = false; - AlarmList::iterator i; - for (i = alarmList.begin(); i != alarmList.end(); ++i) - { - // check if matching ID - if ( arguments[1] != "ALL" ) { - if (atoi(arguments[1].c_str()) != (i->second).getAlarmID() ) - continue; - - if ( arguments[2] != "ALL") { - if (arguments[2].compare((i->second).getSname()) != 0) - continue; - - if ( arguments[3] != "ALL") { - if (arguments[3].compare((i->second).getComponentID()) != 0 ) - continue; - } - } - } - - SNMPManager aManager; - aManager.sendAlarmReport((i->second).getComponentID().c_str(), - (i->second).getAlarmID(), - CLEAR, - (i->second).getSname(), - "calpontConsole"); - - cout << endl << " Alarm Successfully Reset: "; - cout << "ID = " << oam.itoa((i->second).getAlarmID()); - cout << " / Module = " << (i->second).getSname(); - cout << " / Device = " << (i->second).getComponentID() << endl; - found = true; - } - // check is a SET alarm was found, if not return - if (!found) - { - cout << endl << "**** resetAlarm Failed : Requested Alarm is not Set" << endl; - break; - } - } - catch (exception& e) - { - cout << endl << "**** resetAlarm Failed = " << e.what() << endl; - break; - } - } - break; - - case 26: // enableLog - { - if (arguments[2] == "") - { - // need 2 arguments - cout << endl << "**** Failed : enableLog Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - // covert second argument (level) into lowercase - transform (arguments[2].begin(), arguments[2].end(), arguments[2].begin(), to_lower()); - - try - { - oam.updateLog(ENABLEDSTATE, arguments[1], arguments[2]); - cout << endl << " Successful Enabling of Logging " << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** enableLog Failed : " << e.what() << endl; - } - } - break; - - case 27: // disableLog - { - if (arguments[2] == "") - { - // need 2 arguments - cout << endl << "**** disableLog Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - // covert second argument (level) into lowercase - transform (arguments[2].begin(), arguments[2].end(), arguments[2].begin(), to_lower()); - - try - { - oam.updateLog(MANDISABLEDSTATE, arguments[1], arguments[2]); - cout << endl << " Successful Disabling of Logging " << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** disableLog Failed : " << e.what() << endl; - } - } - break; - - case 28: // switchParentOAMModule - { - BRM::DBRM dbrm; - bool bDBRMReady = dbrm.isDBRMReady(); - string module; - bool bUseHotStandby = true; - SystemStatus systemstatus; - Oam oam; - - //first check that the system is in a ACTIVE OR MAN_OFFLINE STATE - try - { - oam.getSystemStatus(systemstatus); - if (systemstatus.SystemOpState == ACTIVE || - systemstatus.SystemOpState == MAN_OFFLINE) - { - module = ""; - } - else - { - cout << endl << "**** switchParentOAMModule Failed : System Status needs to be ACTIVE or MAN_OFFLINE" << endl; - break; - } - } - catch(...) - {} - - // First get the values for the standard arguments - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - - // Now check for arguments unique to this command. In this case, a valid - // module name. - for (int i = 1; i < ArgNum; i++) - { - if (arguments[i].size() > 0) - { - if (oam.validateModule(arguments[i]) == API_SUCCESS) - { - module = arguments[i]; - bUseHotStandby = false; - break; - } - } - } - //check if there are more than 1 pm modules to start with - ModuleTypeConfig moduletypeconfig; - oam.getSystemConfig("pm", moduletypeconfig); - if ( moduletypeconfig.ModuleCount < 2 ) - { - cout << endl << "**** switchParentOAMModule Failed : Command only support on systems with Multiple Performance Modules" << endl; -// break; - } - - string DBRootStorageType; - try - { - oam.getSystemConfig("DBRootStorageType", DBRootStorageType); - } - catch(...) {} - - string GlusterConfig = "n"; - try - { - oam.getSystemConfig( "GlusterConfig", GlusterConfig); - } - catch(...) - {} - - if (DBRootStorageType == "internal" && GlusterConfig == "n") - { - cout << endl << "**** switchParentOAMModule Failed : DBRoot Storage type = internal/non-data-replication" << endl; - break; - } - - string ParentOAMModuleName; - try - { - oam.getSystemConfig("ParentOAMModuleName", ParentOAMModuleName); - } - catch(...) {} - - if (bUseHotStandby) - { - oam.getSystemConfig("StandbyOAMModuleName", module); - if ( module.empty() || module == oam::UnassignedName ) - { - cout << endl << "**** switchParentOAMModule Failed : There's no hot standby defined" << endl << " enter a Performance Module" << endl; - break; - } - - cout << endl << "Switching to the Hot-Standby Parent OAM Module '" << module << "'" << endl; - } - else - { - parentOAMModule = getParentOAMModule(); - if ( module == parentOAMModule ) - { - cout << endl << "**** switchParentOAMModule Failed : " << module << " is already the Active Parent OAM Module" << endl; - break; - } - - cout << endl << "Switching to the Performance Module '" << module << "'" << endl; - } - - //check for gluster system is do-able - if (GlusterConfig == "y") - { - // get to-module assigned DBRoots and see if current active PM - // has a copy - - DBRootConfigList toPMbrootConfigList; - - try - { - string moduleID = module.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - oam.getPmDbrootConfig(atoi(moduleID.c_str()), toPMbrootConfigList); - - bool match = false; - DBRootConfigList::iterator pt = toPMbrootConfigList.begin(); - for( ; pt != toPMbrootConfigList.end() ; pt++) - { - // check if ACTIVE PM has a copy of Dbroot - string pmList = ""; - try { - string errmsg; - int ret = oam.glusterctl(oam::GLUSTER_WHOHAS, oam.itoa(*pt), pmList, errmsg); - if ( ret != 0 ) - { - cout << endl << "**** switchParentOAMModule Failed : " << module << " glusterctl error" << endl; - break; - } - } - catch (...) - { - cout << endl << "**** switchParentOAMModule Failed : " << module << " glusterctl error" << endl; - break; - } - - boost::char_separator sep(" "); - boost::tokenizer< boost::char_separator > tokens(pmList, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it1 = tokens.begin(); - it1 != tokens.end(); - ++it1) - { - string pmModule = "pm" + *it1; - if ( pmModule == ParentOAMModuleName ) { - match = true; - break; - } - } - } - - if (!match) { - cout << endl << "**** switchParentOAMModule Failed : The Current Active PM doesn't have a copy of any DBROOTs that reside on the Siwtching PM " << endl; - break; - } - - //check if switching to PM has DBROOT 1 - string pmList = ""; - try { - string errmsg; - int ret = oam.glusterctl(oam::GLUSTER_WHOHAS, "1", pmList, errmsg); - if ( ret != 0 ) - { - cout << endl << "**** switchParentOAMModule Failed : " << module << " glusterctl error" << endl; - break; - } - } - catch (...) - { - cout << endl << "**** switchParentOAMModule Failed : " << module << " glusterctl error" << endl; - break; - } - - match = false; - boost::char_separator sep(" "); - boost::tokenizer< boost::char_separator > tokens(pmList, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it1 = tokens.begin(); - it1 != tokens.end(); - ++it1) - { - string pmModule = "pm" + *it1; - if ( pmModule == module ) { - match = true; - break; - } - } - - if (!match) { - cout << endl << "**** switchParentOAMModule Failed : The Switching to PM doesn't have a copy of the DBROOT #1" << endl; - break; - } - } - catch (exception& e) - { - cout << endl << "**** getPmDbrootConfig Failed for '" << module << "' : " << e.what() << endl; - break; - } - } - - - if (bNeedsConfirm) - { - // confirm request - if (confirmPrompt("This command switches the Active Parent OAM Module and should only be executed on an idle system.")) - break; - } - - string MySQLRep; - string MySQLPasswordConfig; - try { - oam.getSystemConfig("MySQLRep", MySQLRep); - oam.getSystemConfig("MySQLPasswordConfig", MySQLPasswordConfig); - } - catch(...) {} - - if ( MySQLRep == "y" && MySQLPasswordConfig == oam::UnassignedName ) { - cout << endl; - string prompt = "MySQL Replication is enabled, is there a 'MySQL' Password configured in " + HOME + "/.my.cnf (y,n): "; - MySQLPasswordConfig = dataPrompt(prompt); - } - - if ( MySQLPasswordConfig != "y" ) - MySQLPasswordConfig = "n"; - - try { - oam.setSystemConfig("MySQLPasswordConfig", MySQLPasswordConfig); - } - catch(...) {} - - try - { - cout << endl << " Check for active transactions" << endl; - - if (!bDBRMReady || - dbrm.isReadWrite() != 0) - { - suspendAnswer = FORCE; - } - - if (suspendAnswer == CANCEL) // We don't have an answer from the command line. - { - // If there are bulkloads, ddl or dml happening, Ask what to do. - bool bIsDbrmUp = true; - execplan::SessionManager sessionManager; - BRM::SIDTIDEntry blockingsid; - std::vector tableLocks = dbrm.getAllTableLocks(); - bool bActiveTransactions = false; - if (!tableLocks.empty()) - { - oam.DisplayLockedTables(tableLocks, &dbrm); - bActiveTransactions = true; - } - if (sessionManager.checkActiveTransaction(0, bIsDbrmUp, blockingsid)) - { - cout << endl << "There are active transactions being processed" << endl; - bActiveTransactions = true; - } - - if (bActiveTransactions) - { - suspendAnswer = AskSuspendQuestion(CmdID); - // if (suspendAnswer == FORCE) - // { - // if (confirmPrompt("Force may cause data problems and should only be used in extreme circumstances")) - // { - // break; - // } - // } - } - else - { - suspendAnswer = FORCE; - } - } - if (suspendAnswer == CANCEL) - { - // We're outa here. - break; - } - switch (suspendAnswer) - { - case WAIT: - cout << endl << " Waiting for all transactions to complete" << flush; - dbrm.setSystemShutdownPending(true, false, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case ROLLBACK: - cout << endl << " Rollback of all transactions" << flush; - dbrm.setSystemShutdownPending(true, true, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case FORCE: - cout << endl << " Switch Active Parent OAM Module starting..." << endl; - if (bDBRMReady) - { - dbrm.setSystemShutdownPending(true, false, true); - } - break; - case CANCEL: - break; - } - - if (oam.switchParentOAMModule(module, gracefulTemp)) - { - if (waitForActive()) { - // give time for new ProcMgr to go active - sleep (10); - cout << endl << " Successful Switch Active Parent OAM Module" << endl << endl; - } - else - cout << endl << "**** Switch Active Parent OAM Module failed : check log files" << endl; - } - else - { - // give time for new ProcMgr to go active - sleep (10); - cout << endl << " Successful Switch Active Parent OAM Module" << endl << endl; - } - } - catch (exception& e) - { - cout << endl << "**** switchParentOAMModule Failed : " << e.what() << endl; - break; - } - } - break; - - case 29: // getStorageStatus - { - SystemStatus systemstatus; - Oam oam; - - cout << "System External DBRoot Storage Statuses" << endl << endl; - cout << "Component Status Last Status Change" << endl; - cout << "------------ -------------------------- ------------------------" << endl; - - try - { - oam.getSystemStatus(systemstatus, false); - - if ( systemstatus.systemdbrootstatus.dbrootstatus.size() == 0 ) - { - cout << " No External DBRoot Storage Configured" << endl; - break; - } - - for( unsigned int i = 0 ; i < systemstatus.systemdbrootstatus.dbrootstatus.size(); i++) - { - if( systemstatus.systemdbrootstatus.dbrootstatus[i].Name.empty() ) - // end of list - break; - - cout << "DBRoot #"; - cout.setf(ios::left); - cout.width(6); - cout << systemstatus.systemdbrootstatus.dbrootstatus[i].Name; - cout.width(29); - int state = systemstatus.systemdbrootstatus.dbrootstatus[i].OpState; - printState(state, " "); - cout.width(24); - string stime = systemstatus.systemdbrootstatus.dbrootstatus[i].StateChangeDate ; - stime = stime.substr (0,24); - cout << stime << endl; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getSystemStatus Failed = " << e.what() << endl; - } - } - break; - - case 30: // getLogConfig - { - try - { - SystemLogConfigData systemconfigdata; - LogConfigData logconfigdata; - - oam.getLogConfig(systemconfigdata); - - string configFileName; - oam.getSystemConfig("SystemLogConfigFile", configFileName); - - cout << endl << "Calpont System Log Configuration Data" << endl << endl; - - cout << "System Logging Configuration File being used: " << configFileName << endl << endl; - - cout << "Module Configured Log Levels" << endl; - cout << "------ ---------------------------------------" << endl; - - SystemLogConfigData::iterator pt = systemconfigdata.begin(); - for(; pt != systemconfigdata.end() ; pt++) - { - logconfigdata = *pt; - string module = logconfigdata.moduleName; - int data = logconfigdata.configData; - if ( data < API_MAX ) - { - // failure API status returned - cout.setf(ios::left); - cout.width(10); - cout << logconfigdata.moduleName; - cout << "getLogConfig Failed - Error : " << data << endl; - } - else - { - cout.setf(ios::left); - cout.width(10); - cout << logconfigdata.moduleName; - - data = data - API_MAX; - if( data == 0 ) - // no level configured - cout << "None Configured" << endl; - else - { - if ( ((data & LEVEL_CRITICAL) ? 1 : 0) == 1 ) - cout << "Critical "; - if ( ((data & LEVEL_ERROR) ? 1 : 0) == 1 ) - cout << "Error "; - if ( ((data & LEVEL_WARNING) ? 1 : 0) == 1 ) - cout << "Warning "; - if ( ((data & LEVEL_INFO) ? 1 : 0) == 1 ) - cout << "Info "; - if ( ((data & LEVEL_DEBUG) ? 1 : 0) == 1 ) - cout << "Debug "; - if ( ((data & LEVEL_DATA) ? 1 : 0) == 1 ) - cout << "Data"; - cout << endl; - } - } - } - } - catch (exception& e) - { - cout << endl << "**** getLogConfig Failed : " << e.what() << endl; - break; - } - - } - break; - - case 31: // movePmDbrootConfig parameters: pm-reside dbroot-list pm-to - { - if ( localModule != parentOAMModule ) { - // exit out since not on active module - cout << endl << "**** movePmDbrootConfig Failed : Can only run command on Active OAM Parent Module (" << parentOAMModule << ")." << endl; - break; - } - - //check the system status / service status and only allow command when System is MAN_OFFLINE - string cmd = startup::StartUp::installDir() + "/bin/infinidb status > /tmp/status.log"; - system(cmd.c_str()); - if (oam.checkLogStatus("/tmp/status.log", "InfiniDB is running") ) - { - SystemStatus systemstatus; - try { - oam.getSystemStatus(systemstatus); - - if (systemstatus.SystemOpState != oam::MAN_OFFLINE ) { - cout << endl << "**** movePmDbrootConfig Failed, System has to be in a MAN_OFFLINE state, stop system first" << endl; - break; - } - } - catch (exception& e) - { - cout << endl << "**** movePmDbrootConfig Failed : " << e.what() << endl; - break; - } - catch(...) - { - cout << endl << "**** movePmDbrootConfig Failed, Failed return from getSystemStatus API" << endl; - break; - } - } - - if (arguments[3] == "") - { - // need arguments - cout << endl << "**** movePmDbrootConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - string residePM = arguments[1]; - string dbrootIDs = arguments[2]; - string toPM = arguments[3]; - - string residePMID = residePM.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE);; - string toPMID = toPM.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE);; - - // check module status - try{ - bool degraded; - int opState; - oam.getModuleStatus(toPM, opState, degraded); - - if (opState == oam::AUTO_DISABLED || - opState == oam::MAN_DISABLED) - { - cout << "**** movePmDbrootConfig Failed: " << toPM << " is DISABLED." << endl; - cout << "Run alterSystem-EnableModule to enable module" << endl; - break; - } - - if (opState == oam::FAILED) - { - cout << "**** movePmDbrootConfig Failed: " << toPM << " is in a FAILED state." << endl; - break; - } - } - catch (exception& ex) - {} - - bool moveDBRoot1 = false; - bool found = false; - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(dbrootIDs, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - if (*it == "1" ) { - moveDBRoot1 = true; - break; - } - - //if gluster, check if toPM is has a copy - string GlusterConfig; - try { - oam.getSystemConfig("GlusterConfig", GlusterConfig); - } - catch(...) {} - - if ( GlusterConfig == "y" ) - { - string pmList = ""; - try { - string errmsg; - oam.glusterctl(oam::GLUSTER_WHOHAS, *it, pmList, errmsg); - } - catch (...) - {} - - boost::char_separator sep(" "); - boost::tokenizer< boost::char_separator > tokens(pmList, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it1 = tokens.begin(); - it1 != tokens.end(); - ++it1) - { - if ( *it1 == toPMID ) - { - found = true; - break; - } - } - - if (!found) - { - cout << endl << "**** movePmDbrootConfig Failed : Data Redundancy Configured, DBRoot #" << *it << " doesn't have a copy on " << toPM << endl; - cout << "Run getStorageConfig to get copy information" << endl << endl; - break; - } - } - else - found = true; - } - - if (moveDBRoot1) { - cout << endl << "**** movePmDbrootConfig Failed : Can't move dbroot #1" << endl << endl; - break; - } - - if (!found) - { - break; - } - - - if (residePM.find("pm") == string::npos ) { - cout << endl << "**** movePmDbrootConfig Failed : Parmameter 1 is not a Performance Module name, enter 'help' for additional information" << endl; - break; - } - - if (toPM.find("pm") == string::npos ) { - cout << endl << "**** movePmDbrootConfig Failed : Parmameter 3 is not a Performance Module name, enter 'help' for additional information" << endl; - break; - } - - if (residePM == toPM ) { - cout << endl << "**** movePmDbrootConfig Failed : Reside and To Performance Modules are the same" << endl; - break; - } - - //get dbroots ids for reside PM - DBRootConfigList residedbrootConfigList; - - try - { - oam.getPmDbrootConfig(atoi(residePMID.c_str()), residedbrootConfigList); - - cout << endl << "DBRoot IDs currently assigned to '" + residePM + "' = "; - - DBRootConfigList::iterator pt = residedbrootConfigList.begin(); - for( ; pt != residedbrootConfigList.end() ;) - { - cout << oam.itoa(*pt); - pt++; - if (pt != residedbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getPmDbrootConfig Failed for '" << residePM << "' : " << e.what() << endl; - break; - } - - //get dbroots ids for reside PM - DBRootConfigList todbrootConfigList; - try - { - oam.getPmDbrootConfig(atoi(toPMID.c_str()), todbrootConfigList); - - cout << "DBRoot IDs currently assigned to '" + toPM + "' = "; - - DBRootConfigList::iterator pt = todbrootConfigList.begin(); - for( ; pt != todbrootConfigList.end() ;) - { - cout << oam.itoa(*pt); - pt++; - if (pt != todbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getPmDbrootConfig Failed for '" << toPM << "' : " << e.what() << endl; - break; - } - - cout << endl << "DBroot IDs being moved, please wait..." << endl << endl; - - try { - oam.manualMovePmDbroot(residePM, dbrootIDs, toPM); - } - catch (...) - { - cout << endl << "**** manualMovePmDbroot Failed : API Failure" << endl; - break; - } - - //get dbroots ids for reside PM - try - { - residedbrootConfigList.clear(); - oam.getPmDbrootConfig(atoi(residePMID.c_str()), residedbrootConfigList); - - cout << "DBRoot IDs newly assigned to '" + residePM + "' = "; - - DBRootConfigList::iterator pt = residedbrootConfigList.begin(); - for( ; pt != residedbrootConfigList.end() ;) - { - cout << oam.itoa(*pt); - pt++; - if (pt != residedbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getPmDbrootConfig Failed for '" << toPM << "' : " << e.what() << endl; - break; - } - - try - { - todbrootConfigList.clear(); - oam.getPmDbrootConfig(atoi(toPMID.c_str()), todbrootConfigList); - - cout << "DBRoot IDs newly assigned to '" + toPM + "' = "; - - DBRootConfigList::iterator pt = todbrootConfigList.begin(); - for( ; pt != todbrootConfigList.end() ;) - { - cout << oam.itoa(*pt); - pt++; - if (pt != todbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getPmDbrootConfig Failed for '" << toPM << "' : " << e.what() << endl; - break; - } - - } - break; - - case 32: // suspendDatabaseWrites - { - BRM::DBRM dbrm; - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - - cout << endl << "This command suspends the DDL/DML writes to the Calpont Database" << endl; - try - { - - if (!dbrm.isDBRMReady()) - { - cout << endl << " The Controller Node is not responding.\n The system can't be set into write suspend mode" << endl << flush; - break; - } - else - if (dbrm.isReadWrite() != 0) - { - suspendAnswer = FORCE; - } - - // If there are bulkloads, ddl or dml happening, refuse the request - if (suspendAnswer == CANCEL) // We don't have an answer from the command line. - { - // If there are bulkloads, ddl or dml happening, Ask what to do. - bool bIsDbrmUp = true; - execplan::SessionManager sessionManager; - BRM::SIDTIDEntry blockingsid; - std::vector tableLocks = dbrm.getAllTableLocks(); - bool bActiveTransactions = false; - if (!tableLocks.empty()) - { - oam.DisplayLockedTables(tableLocks, &dbrm); - bActiveTransactions = true; - } - if (sessionManager.checkActiveTransaction(0, bIsDbrmUp, blockingsid)) - { - cout << endl << "There are active transactions being processed" << endl; - bActiveTransactions = true; - } - - if (bActiveTransactions) - { - suspendAnswer = AskSuspendQuestion(CmdID); - // if (suspendAnswer == FORCE) - // { - // if (confirmPrompt("Force may cause data problems and should only be used in extreme circumstances")) - // { - // break; - // } - // } - bNeedsConfirm = false; - } - else - { - suspendAnswer = FORCE; - } - } - if (suspendAnswer == CANCEL) - { - // We're outa here. - break; - } - if (bNeedsConfirm) - { - if (confirmPrompt("")) - break; - } - switch (suspendAnswer) - { - case WAIT: - cout << endl << " Waiting for all transactions to complete" << flush; - dbrm.setSystemSuspendPending(true, false); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case ROLLBACK: - cout << endl << " Rollback of all transactions" << flush; - dbrm.setSystemSuspendPending(true, true); - gracefulTemp = GRACEFUL_WAIT; // Causes procmgr to wait for all table locks to free and all transactions to finish before shutdown - break; - case FORCE: - case CANCEL: - default: - gracefulTemp = FORCEFUL; - break; - } - - // stop writes to Calpont Database - oam.SuspendWrites(gracefulTemp, ackTemp); - } - catch (exception& e) - { - cout << endl << "**** stopDatabaseWrites Failed: " << e.what() << endl; - } - catch(...) - { - cout << endl << "**** stopDatabaseWrites Failed" << endl; - break; - } - break; - } - - case 33: // resumeDatabaseWrites - { - if ( arguments[1] != "y" ) { - if (confirmPrompt("This command resumes the DDL/DML writes to the Calpont Database")) - break; - } - - // resume writes to Calpont Database - - try{ - SystemProcessStatus systemprocessstatus; - BRM::DBRM dbrm; - - dbrm.setSystemSuspended(false); - - oam.getProcessStatus(systemprocessstatus); - for( unsigned int i = 0 ; i < systemprocessstatus.processstatus.size(); i++) - { - if (systemprocessstatus.processstatus[i].ProcessName == "DMLProc") - { - oam.setProcessStatus(systemprocessstatus.processstatus[i].ProcessName, systemprocessstatus.processstatus[i].Module, ACTIVE, 1); - } - if (systemprocessstatus.processstatus[i].ProcessName == "DDLProc") - { - oam.setProcessStatus(systemprocessstatus.processstatus[i].ProcessName, systemprocessstatus.processstatus[i].Module, ACTIVE, 1); - } - if (systemprocessstatus.processstatus[i].ProcessName == "WriteEngineServer") - { - oam.setProcessStatus(systemprocessstatus.processstatus[i].ProcessName, systemprocessstatus.processstatus[i].Module, ACTIVE, 1); - } - } - oam.setSystemStatus(ACTIVE); - cout << endl << "Resume Calpont Database Writes Request successfully completed" << endl; - } - catch (exception& e) - { - cout << endl << "**** resumeDatabaseWrites Failed: " << e.what() << endl; - } - catch(...) - { - cout << endl << "**** resumeDatabaseWrites Failed" << endl; - break; - } - break; - } - - case 34: // unassignDbrootPmConfig parameters: dbroot-list reside-pm - { - if ( localModule != parentOAMModule ) { - // exit out since not on active module - cout << endl << "**** unassignDbrootPmConfig Failed : Can only run command on Active OAM Parent Module (" << parentOAMModule << ")." << endl; - break; - } - - - if (arguments[2] == "") - { - // need atleast 2 arguments - cout << endl << "**** unassignDbrootPmConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - string dbrootIDs = arguments[1]; - string residePM = arguments[2]; - - if (arguments[2].find("pm") == string::npos ) { - cout << endl << "**** unassignDbrootPmConfig Failed : Parmameter 2 is not a Performance Module name, enter 'help' for additional information" << endl; - break; - } - - // check module status - try{ - bool degraded; - int opState; - oam.getModuleStatus(residePM, opState, degraded); - - if (opState != oam::MAN_OFFLINE) - { - cout << endl << "**** unassignDbrootPmConfig Failed, " + residePM + " has to be in a MAN_OFFLINE state" << endl; - break; - } - - } - catch (exception& ex) - {} - - DBRootConfigList dbrootlist; - - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(dbrootIDs, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - dbrootlist.push_back(atoi((*it).c_str())); - } - - cout << endl; - - //get dbroots ids for reside PM - try - { - oam.unassignDbroot(residePM, dbrootlist); - - cout << endl << " Successfully Unassigned DBRoots " << endl << endl; - - } - catch (exception& e) - { - cout << endl << "**** Failed Unassign of DBRoots: " << e.what() << endl; - break; - } - } - break; - - case 35: // assignDbrootPmConfig parameters: pm dbroot-list - { - if ( localModule != parentOAMModule ) { - // exit out since not on active module - cout << endl << "**** assignDbrootPmConfig Failed : Can only run command on Active OAM Parent Module (" << parentOAMModule << ")." << endl; - break; - } - - //check the system status / service status and only allow command when System is MAN_OFFLINE - string cmd = startup::StartUp::installDir() + "/bin/infinidb status > /tmp/status.log"; - system(cmd.c_str()); - if (!oam.checkLogStatus("/tmp/status.log", "InfiniDB is running") ) - { - cout << endl << "**** assignDbrootPmConfig Failed, System is down. Needs to be running" << endl; - break; - } - - if (arguments[2] == "") - { - // need atleast 2 arguments - cout << endl << "**** assignDbrootPmConfig Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - string dbrootIDs = arguments[1]; - string toPM = arguments[2]; - - if (arguments[2].find("pm") == string::npos ) { - cout << endl << "**** assignDbrootPmConfig Failed : Parmameter 2 is not a Performance Module name, enter 'help' for additional information" << endl; - break; - } - - // check module status - try{ - bool degraded; - int opState; - oam.getModuleStatus(toPM, opState, degraded); - - if (opState == oam::AUTO_DISABLED || - opState == oam::MAN_DISABLED) - { - cout << "**** assignDbrootPmConfig Failed: " << toPM << " is DISABLED." << endl; - cout << "Run alterSystem-EnableModule to enable module" << endl; - break; - } - - if (!opState == oam::MAN_OFFLINE) - { - cout << "**** assignDbrootPmConfig Failed: " << toPM << " needs to be MAN_OFFLINE." << endl; - break; - } - } - catch (exception& ex) - {} - - DBRootConfigList dbrootlist; - - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(dbrootIDs, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - dbrootlist.push_back(atoi((*it).c_str())); - } - - cout << endl; - - //get dbroots ids for reside PM - try - { - oam.assignDbroot(toPM, dbrootlist); - - cout << endl << " Successfully Assigned DBRoots " << endl << endl; - - try { - string DBRootStorageType; - oam.getSystemConfig("DBRootStorageType", DBRootStorageType); - - if (DBRootStorageType == "external" ){ - string GlusterConfig = "n"; - string cloud = oam::UnassignedName; - try { - oam.getSystemConfig("Cloud", cloud); - oam.getSystemConfig( "GlusterConfig", GlusterConfig); - } - catch(...) - {} - - if ( GlusterConfig == "n" && cloud == oam::UnassignedName) - cout << " REMINDER: Update the /etc/fstab on " << toPM << " to include these dbroot mounts" << endl << endl; - break; - - } - } - catch(...) {} - - } - catch (exception& e) - { - cout << endl << "**** Failed Assign of DBRoots: " << e.what() << endl; - break; - } - } - break; - - case 36: // getAlarmSummary - { - printAlarmSummary(); - } - break; - - case 37: // getSystemInfo - { - try { - printSystemStatus(); - } - catch (...) - { - break; - } - - try { - printProcessStatus(); - } - catch (...) - { - break; - } - - printAlarmSummary(); - } - break; - - case 38: // getModuleConfig - { - SystemModuleTypeConfig systemmoduletypeconfig; - ModuleTypeConfig moduletypeconfig; - ModuleConfig moduleconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - string returnValue; - string Argument; - - if (arguments[1] == "all" || arguments[1] == "") - { - - // get and all display Module Name config parameters - - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - cout << endl << "Module Name Configuration" << endl; - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - if ( moduleCount == 0 ) - // skip if no modules - continue; - - string moduletype = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - string modulename = (*pt).DeviceName; - string moduleID = modulename.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - cout << endl << "Module '" << modulename << "' Configuration information" << endl << endl; - - cout << "ModuleType = " << moduletype << endl; - cout << "ModuleDesc = " << systemmoduletypeconfig.moduletypeconfig[i].ModuleDesc << " #" << moduleID << endl; - - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - cout << "ModuleIPAdd NIC ID " + oam.itoa((*pt1).NicID) + " = " << (*pt1).IPAddr << endl; - cout << "ModuleHostName NIC ID " + oam.itoa((*pt1).NicID) + " = " << (*pt1).HostName << endl; - } - - DeviceDBRootList::iterator pt3 = systemmoduletypeconfig.moduletypeconfig[i].ModuleDBRootList.begin(); - for( ; pt3 != systemmoduletypeconfig.moduletypeconfig[i].ModuleDBRootList.end() ; pt3++) - { - if ( (*pt3).DeviceID == atoi(moduleID.c_str()) ) { - cout << "DBRootIDs assigned = "; - DBRootConfigList::iterator pt2 = (*pt3).dbrootConfigList.begin(); - for( ; pt2 != (*pt3).dbrootConfigList.end() ;) - { - cout << oam.itoa(*pt2); - pt2++; - if (pt2 != (*pt3).dbrootConfigList.end() ) - cout << ", "; - } - cout << endl; - } - } - } - } - } - catch (exception& e) - { - cout << endl << "**** getModuleConfig Failed = " << e.what() << endl; - } - } - else - { // get a single module name info - if (arguments[2] == "") - { - try - { - oam.getSystemConfig(arguments[1], moduleconfig); - - cout << endl << "Module Name Configuration for " << arguments[1] << endl << endl; - - cout << "ModuleType = " << moduleconfig.ModuleType << endl; - cout << "ModuleDesc = " << moduleconfig.ModuleDesc << endl; - HostConfigList::iterator pt1 = moduleconfig.hostConfigList.begin(); - for( ; pt1 != moduleconfig.hostConfigList.end() ; pt1++) - { - cout << "ModuleIPAdd NIC ID " + oam.itoa((*pt1).NicID) + " = " << (*pt1).IPAddr << endl; - cout << "ModuleHostName NIC ID " + oam.itoa((*pt1).NicID) + " = " << (*pt1).HostName << endl; - } - - if ( moduleconfig.ModuleType == "pm" ) - { - - cout << "DBRootIDs assigned = "; - - DBRootConfigList::iterator pt2 = moduleconfig.dbrootConfigList.begin(); - for( ; pt2 != moduleconfig.dbrootConfigList.end() ; ) - { - cout << oam.itoa(*pt2); - pt2++; - if (pt2 != moduleconfig.dbrootConfigList.end()) - cout << ", "; - } - cout << endl << endl; - } - } - catch (exception& e) - { - cout << endl << "**** getModuleConfig Failed = " << e.what() << endl; - } - } - else - { // get a parameter for a module - // get module ID from module name entered, then get parameter - oam.getSystemConfig(systemmoduletypeconfig); - - cout << endl; - bool found = false; - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - string moduleType = arguments[1].substr(0,MAX_MODULE_TYPE_SIZE); - string moduleID = arguments[1].substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - if ( moduleCount == 0 ) - // skip if no modules - continue; - - if(systemmoduletypeconfig.moduletypeconfig[i].ModuleType == moduleType ) - { - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - if ( (*pt).DeviceName != arguments[1] ) - continue; - - found = true; - if ( arguments[2] == "ModuleIPAdd" || arguments[2] == "ModuleHostName") { - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - if ( arguments[2] == "ModuleIPAdd" ) - cout << "ModuleIPAdd NIC ID " + oam.itoa((*pt1).NicID) + " = " << (*pt1).IPAddr << endl; - else - cout << "ModuleHostName NIC ID " + oam.itoa((*pt1).NicID) + " = " << (*pt1).HostName << endl; - } - } - else - { - Argument = arguments[2] + oam.itoa(i+1); - try - { - oam.getSystemConfig(Argument, returnValue); - cout << endl << " " << arguments[2] << " = " << returnValue << endl << endl; - break; - } - catch (exception& e) - { - cout << endl << "**** getModuleConfig Failed = " << e.what() << endl; - break; - } - } - } - } - } - if( !found ) - { - // module name not found - cout << endl << "**** getModuleConfig Failed : Invalid Module Name" << endl; - break; - } - cout << endl; - } - } - } - break; - - case 39: - { - } - break; - - case 40: - { - } - break; - - case 41: - { - } - break; - - case 42: - { - } - break; - - case 43: // assignElasticIPAddress - { - //get cloud configuration data - string cloud = oam::UnassignedName; - try{ - oam.getSystemConfig("Cloud", cloud); - } - catch(...) {} - - if ( cloud == oam::UnassignedName ) - { - cout << endl << "**** assignElasticIPAddress Not Supported : For Amazon Systems only" << endl; - break; - } - - if (arguments[2] == "") - { - // need 2 arguments - cout << endl << "**** assignElasticIPAddress Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** assignElasticIPAddress Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - string IPaddress = arguments[1]; - string moduleName = arguments[2]; - - if ( oam.validateModule(moduleName) != API_SUCCESS) { - cout << endl << "**** assignElasticIPAddress Failed : Invalid Module name" << endl; - break; - } - - if ( moduleName == localModule ) - { - if ( arguments[3] != "y") { - string warning = "Warning: Assigning Elastic IP Address to local module will lock up this terminal session."; - // confirm request - if (confirmPrompt(warning)) - break; - } - } - - //check and add Elastic IP Address - int AmazonElasticIPCount = 0; - try{ - oam.getSystemConfig("AmazonElasticIPCount", AmazonElasticIPCount); - } - catch(...) { - AmazonElasticIPCount = 0; - } - - bool found = false; - int id = 1; - for ( ; id < AmazonElasticIPCount+1 ; id++ ) - { - string AmazonElasticModule = "AmazonElasticModule" + oam.itoa(id); - string ELmoduleName; - string AmazonElasticIPAddr = "AmazonElasticIPAddr" + oam.itoa(id); - string ELIPaddress; - try{ - oam.getSystemConfig(AmazonElasticModule, ELmoduleName); - oam.getSystemConfig(AmazonElasticIPAddr, ELIPaddress); - } - catch(...) {} - - if ( ELmoduleName == moduleName && - ELIPaddress == IPaddress) - { //assign again incase it got unconnected - //get instance id - string instanceName = oam::UnassignedName; - try - { - ModuleConfig moduleconfig; - oam.getSystemConfig(moduleName, moduleconfig); - HostConfigList::iterator pt1 = moduleconfig.hostConfigList.begin(); - instanceName = (*pt1).HostName; - } - catch(...) - {} - - try{ - oam.assignElasticIP(instanceName, IPaddress); - cout << endl << " Successfully completed Assigning Elastic IP Address " << endl << endl; - } - catch(...) {} - found = true; - break; - } - - if ( ELmoduleName == moduleName ) - { - cout << endl << "**** assignElasticIPAddress Failed : module already assigned IP Address " << ELIPaddress << endl; - found = true; - break; - } - - if ( ELIPaddress == IPaddress ) - { - cout << endl << "**** assignElasticIPAddress Failed : IP Address already assigned to module " << ELmoduleName << endl; - found = true; - break; - } - } - - if (found) - break; - - AmazonElasticIPCount++; - - //get instance id - string instanceName = oam::UnassignedName; - try - { - ModuleConfig moduleconfig; - oam.getSystemConfig(moduleName, moduleconfig); - HostConfigList::iterator pt1 = moduleconfig.hostConfigList.begin(); - instanceName = (*pt1).HostName; - } - catch(...) - {} - - try{ - oam.assignElasticIP(instanceName, IPaddress); - } - catch(...) { - cout << endl << "**** assignElasticIPAddress Failed : assignElasticIP API Error" << endl; - break; - } - - //add to configuration - string AmazonElasticModule = "AmazonElasticModule" + oam.itoa(id); - string AmazonElasticIPAddr = "AmazonElasticIPAddr" + oam.itoa(id); - - Config* sysConfig = Config::makeConfig(); - try { - sysConfig->setConfig("Installation", "AmazonElasticIPCount", oam.itoa(AmazonElasticIPCount)); - sysConfig->setConfig("Installation", AmazonElasticModule, moduleName); - sysConfig->setConfig("Installation", AmazonElasticIPAddr, IPaddress); - sysConfig->write(); - } - catch(...) - { - cout << "ERROR: Problem setting AmazonElasticModule in the Calpont System Configuration file" << endl; - break; - } - - cout << endl << " Successfully completed Assigning Elastic IP Address " << endl << endl; - } - break; - - case 44: // unassignElasticIPAddress - { - //get cloud configuration data - string cloud = oam::UnassignedName; - try{ - oam.getSystemConfig("Cloud", cloud); - } - catch(...) {} - - if ( cloud == oam::UnassignedName ) - { - cout << endl << "**** unassignElasticIPAddress Not Supported : For Amazon Systems only" << endl; - break; - } - - if (arguments[1] == "") - { - // need 2 arguments - cout << endl << "**** unassignElasticIPAddress Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** unassignElasticIPAddress Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - string IPaddress = arguments[1]; - - //check and add Elastic IP Address - int AmazonElasticIPCount = 0; - try{ - oam.getSystemConfig("AmazonElasticIPCount", AmazonElasticIPCount); - } - catch(...) { - AmazonElasticIPCount = 0; - } - - bool found = false; - int id = 1; - for ( ; id < AmazonElasticIPCount+1 ; id++ ) - { - string AmazonElasticModule = "AmazonElasticModule" + oam.itoa(id); - string ELmoduleName; - string AmazonElasticIPAddr = "AmazonElasticIPAddr" + oam.itoa(id); - string ELIPaddress; - try{ - oam.getSystemConfig(AmazonElasticIPAddr, ELmoduleName); - oam.getSystemConfig(AmazonElasticIPAddr, ELIPaddress); - } - catch(...) {} - - if ( ELIPaddress == IPaddress ) - { - found = true; - try{ - oam.deassignElasticIP(IPaddress); - } - catch(...) { - cout << endl << "**** deassignElasticIPAddress Failed : deassignElasticIP API Error"; - break; - } - - int oldAmazonElasticIPCount = AmazonElasticIPCount; - - Config* sysConfig = Config::makeConfig(); - //move up any others - if ( oldAmazonElasticIPCount > id ) - { - for ( int newid = id+1 ; newid < oldAmazonElasticIPCount+1 ; newid++ ) - { - AmazonElasticModule = "AmazonElasticModule" + oam.itoa(newid); - AmazonElasticIPAddr = "AmazonElasticIPAddr" + oam.itoa(newid); - - try{ - oam.getSystemConfig(AmazonElasticModule, ELmoduleName); - oam.getSystemConfig(AmazonElasticIPAddr, ELIPaddress); - } - catch(...) {} - - AmazonElasticModule = "AmazonElasticModule" + oam.itoa(newid-1); - AmazonElasticIPAddr = "AmazonElasticIPAddr" + oam.itoa(newid-1); - - try{ - oam.setSystemConfig(AmazonElasticModule, ELmoduleName); - oam.setSystemConfig(AmazonElasticIPAddr, ELIPaddress); - } - catch(...) {} - } - } - - AmazonElasticModule = "AmazonElasticModule" + oam.itoa(oldAmazonElasticIPCount); - AmazonElasticIPAddr = "AmazonElasticIPAddr" + oam.itoa(oldAmazonElasticIPCount); - - //delete last entry and update count - AmazonElasticIPCount--; - try { - sysConfig->setConfig("Installation", "AmazonElasticIPCount", oam.itoa(AmazonElasticIPCount)); - sysConfig->delConfig("Installation", AmazonElasticModule); - sysConfig->delConfig("Installation", AmazonElasticIPAddr); - sysConfig->write(); - } - catch(...) - { - cout << "ERROR: Problem setting AmazonElasticModule in the Calpont System Configuration file" << endl; - break; - } - } - } - - if (!found) { - cout << endl << " Elastic IP Address " << IPaddress << " not assigned to a module" << endl << endl; - break; - } - - cout << endl << " Successfully completed Unassigning Elastic IP Address " << endl << endl; - - } - break; - - case 45: // getSystemNetworkConfig - { - // get and display Module Network Config - SystemModuleTypeConfig systemmoduletypeconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - - //check and add Elastic IP Address - int AmazonElasticIPCount = 0; - try{ - oam.getSystemConfig("AmazonElasticIPCount", AmazonElasticIPCount); - } - catch(...) { - AmazonElasticIPCount = 0; - } - - // get max length of a host name for header formatting - - int maxSize = 9; - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - string moduletype = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - string moduletypedesc = systemmoduletypeconfig.moduletypeconfig[i].ModuleDesc; - - if ( moduleCount > 0 ) - { - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for ( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - if ( maxSize < (int) (*pt1).HostName.size() ) - maxSize = (*pt1).HostName.size(); - } - } - } - } - } - catch (exception& e) - { - cout << endl << "**** getSystemNetworkConfig Failed = " << e.what() << endl; - } - - cout << endl << "System Network Configuration" << endl << endl; - - cout.setf(ios::left); - cout.width(15); - cout << "Module Name"; - cout.width(30); - cout << "Module Description"; - cout.width(10); - cout << "NIC ID"; - cout.width(maxSize + 5); - cout << "Host Name"; - cout.width(20); - cout << "IP Address"; - cout.width(14); - cout << "Status"; - if ( AmazonElasticIPCount > 0 ) - { - cout.width(20); - cout << "Elastic IP Address"; - } - cout << endl; - cout.width(15); - cout << "-----------"; - cout.width(30); - cout << "-------------------------"; - cout.width(10); - cout << "------"; - for ( int i=0 ; i < maxSize ; i++ ) - { - cout << "-"; - } - cout << " "; - cout.width(20); - cout << "---------------"; - cout.width(14); - cout << "------------"; - if ( AmazonElasticIPCount > 0 ) - { - cout.width(20); - cout << "------------------"; - } - cout << endl; - - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - string moduletype = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - string moduletypedesc = systemmoduletypeconfig.moduletypeconfig[i].ModuleDesc; - - if ( moduleCount > 0 ) - { - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - string modulename = (*pt).DeviceName; - string moduleID = modulename.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - string modulenamedesc = moduletypedesc + " #" + moduleID; - - cout.setf(ios::left); - cout.width(15); - cout << modulename; - cout.width(33); - cout << modulenamedesc; - - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for ( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - string ipAddr = (*pt1).IPAddr; - string hostname = (*pt1).HostName; - string nicID = oam.itoa((*pt1).NicID); - int state; - - if ( nicID != "1" ) { - cout.width(48); - cout << " "; - } - - cout.width(7); - cout << nicID; - cout.width(maxSize + 5); - cout << hostname; - cout.width(20); - cout << ipAddr; - cout.width(14); - - try { - oam.getNICStatus(hostname, state); - - printState(state, " "); - } - catch (exception& e) - { - cout << INITIALSTATE; - } - - if ( nicID == "1" && AmazonElasticIPCount > 0 ) - { - int id = 1; - for ( ; id < AmazonElasticIPCount+1 ; id++ ) - { - string AmazonElasticModule = "AmazonElasticModule" + oam.itoa(id); - string ELmoduleName; - string AmazonElasticIPAddr = "AmazonElasticIPAddr" + oam.itoa(id); - string ELIPaddress; - try{ - oam.getSystemConfig(AmazonElasticModule, ELmoduleName); - oam.getSystemConfig(AmazonElasticIPAddr, ELIPaddress); - } - catch(...) {} - - if ( modulename == ELmoduleName ) - { - cout.width(20); - cout << ELIPaddress; - break; - } - } - } - cout << endl; - } - } - } - } - } - catch (exception& e) - { - cout << endl << "**** getSystemNetworkConfig Failed = " << e.what() << endl; - } - - //get cloud configuration data - string cloud = oam::UnassignedName; - try{ - oam.getSystemConfig("Cloud", cloud); - } - catch(...) {} - - if ( cloud == "amazon-ec2" || cloud == "amazon-vpc" ) - { - cout << endl << "Amazon Instance Configuration" << endl << endl; - - string PMInstanceType = oam::UnassignedName; - string UMInstanceType = oam::UnassignedName; - try{ - oam.getSystemConfig("PMInstanceType", PMInstanceType); - oam.getSystemConfig("UMInstanceType", UMInstanceType); - - cout << "PMInstanceType = " << PMInstanceType << endl; - cout << "UMInstanceType = " << UMInstanceType << endl; - } - catch(...) {} - - if ( cloud == "amazon-vpc" ) - { - string AmazonSubNetID = oam::UnassignedName; - try{ - oam.getSystemConfig("AmazonSubNetID", AmazonSubNetID); - - cout << "AmazonSubNetID = " << AmazonSubNetID << endl; - } - catch(...) {} - } - } - - cout << endl; - - // get and all display Ext Devices Name config parameters - - try - { - SystemExtDeviceConfig systemextdeviceconfig; - oam.getSystemConfig(systemextdeviceconfig); - - if ( systemextdeviceconfig.Count == 0 ) - break; - - cout << endl << "External Device Configuration" << endl << endl; - - cout.setf(ios::left); - cout.width(30); - cout << "Device Name"; - cout.width(20); - cout << "IP Address"; - cout.width(10); - cout << "Status"; - cout << endl; - cout.width(30); - cout << "---------------------"; - cout.width(20); - cout << "---------------"; - cout.width(12); - cout << "------------"; - cout << endl; - - for ( unsigned int i = 0 ; i < systemextdeviceconfig.Count ; i++ ) - { - cout.setf(ios::left); - cout.width(30); - cout << systemextdeviceconfig.extdeviceconfig[i].Name; - cout.width(20); - cout << systemextdeviceconfig.extdeviceconfig[i].IPAddr; - cout.width(12); - - int state; - try { - oam.getExtDeviceStatus(systemextdeviceconfig.extdeviceconfig[i].Name, state); - - printState(state, " "); - } - catch (exception& e) - { - cout << INITIALSTATE; - } - cout << endl; - } - - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getextdeviceconfig Failed = " << e.what() << endl; - } - - cout << endl; - - break; - } - - case 46: // enableMySQLReplication - { - string MySQLRep; - try { - oam.getSystemConfig("MySQLRep", MySQLRep); - } - catch(...) {} - - if ( MySQLRep == "y" ) { - string warning = "MySQL Replication Feature is already enabled"; - // confirm request - if (confirmPrompt(warning)) - break; - } - - string password; - if ( arguments[1] == "") { - cout << endl; - string prompt = "Enter the 'User' Password or 'ssh' if configured with ssh-keys"; - password = dataPrompt(prompt); - } - else - password = arguments[1]; - - if ( password == "") - password = oam::UnassignedName; - - string MySQLPasswordConfig; - try { - oam.getSystemConfig("MySQLPasswordConfig", MySQLPasswordConfig); - } - catch(...) {} - - if ( MySQLPasswordConfig == oam::UnassignedName ) { - cout << endl; - string prompt = "Is there a 'MySQL' Password configured on the MySQL Front-end Modules in " + HOME + "/.my.cnf (y,n): "; - MySQLPasswordConfig = dataPrompt(prompt); - } - - if ( MySQLPasswordConfig != "y" ) - MySQLPasswordConfig = "n"; - - try { - oam.setSystemConfig("MySQLPasswordConfig", MySQLPasswordConfig); - } - catch(...) {} - - //set flag - try { - oam.setSystemConfig("MySQLRep", "y"); - sleep(2); - } - catch(...) {} - - try - { - oam.enableMySQLRep(password); - cout << endl << " Successful Enabling of MySQL Replication " << endl << endl; - - //display Primary UM Module / Master Node - string PrimaryUMModuleName; - try { - oam.getSystemConfig("PrimaryUMModuleName", PrimaryUMModuleName); - } - catch(...) {} - - cout << " MySQL Replication Master Node is " << PrimaryUMModuleName << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** enableMySQLRep Failed : " << e.what() << endl; - } - break; - } - - case 47: // getCalpontSoftwareInfo - { - cout << endl; - if ( rootUser) - { - system("rpm -qi infinidb-platform > /tmp/calpont.txt 2>&1"); - if (oam.checkLogStatus("/tmp/calpont.txt", "Name")) - system("cat /tmp/calpont.txt"); - else { - system("dpkg -s calpont > /tmp/calpont.txt 2>&1"); - if (oam.checkLogStatus("/tmp/calpont.txt", "Status: install")) - system("cat /tmp/calpont.txt"); - else { - SystemSoftware systemsoftware; - oam.getSystemSoftware(systemsoftware); - - cout << "SoftwareVersion = " << systemsoftware.Version << endl; - cout << "SoftwareRelease = " << systemsoftware.Release << endl; - } - } - } - else - { - SystemSoftware systemsoftware; - oam.getSystemSoftware(systemsoftware); - - cout << "SoftwareVersion = " << systemsoftware.Version << endl; - cout << "SoftwareRelease = " << systemsoftware.Release << endl; - } - cout << endl; - break; - } - - case 48: // addModule - parameters: Module type/Module Name, Number of Modules, Server Hostnames, - // Server root password optional - { - if (arguments[1] == "") - { - // need at least arguments - cout << endl << "**** addModule Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - switch ( serverInstallType ) { - case (oam::INSTALL_COMBINE_DM_UM_PM): - { - if (arguments[1].find("um") != string::npos ) { - cout << endl << "**** addModule Failed : User Module Types not supported on this Combined Server Installation" << endl; - return(0); - } - break; - } - } - - string GlusterConfig = "n"; - int GlusterCopies; - string cloud = oam::UnassignedName; - string GlusterStorageType; - string AmazonVPCNextPrivateIP; - try { - oam.getSystemConfig("Cloud", cloud); - oam.getSystemConfig("AmazonVPCNextPrivateIP", AmazonVPCNextPrivateIP); - oam.getSystemConfig("GlusterConfig", GlusterConfig); - oam.getSystemConfig("GlusterCopies", GlusterCopies); - oam.getSystemConfig("GlusterStorageType", GlusterStorageType); - } - catch(...) {} - - ModuleTypeConfig moduletypeconfig; - DeviceNetworkConfig devicenetworkconfig; - DeviceNetworkList devicenetworklist; - DeviceNetworkList enabledevicenetworklist; - HostConfig hostconfig; - - string moduleType; - string moduleName; - int moduleCount; - string password; - typedef std::vector inputNames; - inputNames inputnames; - typedef std::vector umStorageNames; - umStorageNames umstoragenames; - int hostArg; - int dbrootPerPM = 0; - - //check if module type or module name was entered - if ( arguments[1].size() == 2 ) - { //Module Type was entered - if (arguments[3] == "" && cloud == oam::UnassignedName) - { - // need at least arguments - cout << endl << "**** addModule Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - //Module Type was entered - moduleType = arguments[1]; - moduleCount = atoi(arguments[2].c_str()); - hostArg = 3; - if (arguments[4] != "") - password = arguments[4]; - else - { - cout << endl; - string prompt = "Enter the 'User' Password or 'ssh' if configured with ssh-keys"; - password = dataPrompt(prompt); - } - - if (arguments[5] != "") - dbrootPerPM = atoi(arguments[5].c_str()); - } - else - { - //Module Name was entered - if (arguments[2] == "" && cloud == oam::UnassignedName) - { - // need at least arguments - cout << endl << "**** addModule Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - moduleName = arguments[1]; - moduleType = arguments[1].substr(0,MAX_MODULE_TYPE_SIZE); - moduleCount = 1; - hostArg = 2; - if (arguments[3] != "") - password = arguments[3]; - else - { - cout << endl; - string prompt = "Enter the 'User' Password or 'ssh' if configured with ssh-keys"; - password = dataPrompt(prompt); - } - - if (arguments[4] != "") - dbrootPerPM = atoi(arguments[4].c_str()); - } - -//do we needed this check???? - if ( moduleCount < 1 || moduleCount > 10 ) { - cout << endl << "**** addModule Failed : Failed to Add Module, invalid number-of-modules entered (1-10)" << endl; - break; - } - - if ( GlusterConfig == "y" && moduleType == "pm" ) { - if ( localModule != parentOAMModule ) { - // exit out since not on active module - cout << endl << "**** addModule Failed : Can only run command on Active OAM Parent Module (" << parentOAMModule << ")." << endl; - break; - } - - if ( fmod((float) moduleCount , (float) GlusterCopies) != 0 ) { - cout << endl << "**** addModule Failed : Failed to Add Module, invalid number-of-modules: must be multiple of Data Redundancy Copies, which is " << GlusterCopies << endl; - break; - } - } - - //check and parse input Hostname/VPC-IP Addresses - if (arguments[hostArg] != "") { - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(arguments[hostArg], sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - inputnames.push_back(*it); - } - } - - if ( inputnames.size() < (unsigned) moduleCount ) { - if ( cloud == oam::UnassignedName ) - { - cout << endl << "**** addModule Failed : Failed to Add Module, number of hostnames is less than Module Count" << endl; - break; - } - else - { - if ( cloud == "amazon-ec2" ) - { - cout << endl << "Launching new Instance(s)" << endl; - for ( int id = inputnames.size() ; id < moduleCount ; id++ ) - { - inputnames.push_back(oam::UnassignedName); - } - } - else - { // amazon-vpc - if ( inputnames.size() == 0 ) - { - if ( AmazonVPCNextPrivateIP == oam::UnassignedName) - { - cout << endl << "**** addModule Failed : Failed to Add Module, enter VPC Private IP Address" << endl; - break; - } - else - { - if ( AmazonVPCNextPrivateIP == "autoassign") - { - for ( int id = inputnames.size() ; id < moduleCount ; id++ ) - { - inputnames.push_back("autoassign"); - } - } - else - { - for ( int id = inputnames.size() ; id < moduleCount ; id++ ) - { - inputnames.push_back(AmazonVPCNextPrivateIP); - - try - { - AmazonVPCNextPrivateIP = oam.incrementIPAddress(AmazonVPCNextPrivateIP); - } - catch(...) - { - cout << endl << "ERROR: incrementIPAddress API error, check logs" << endl; - exit(1); - } - } - } - } - } - } - } - } - - //get configured moduleNames - try{ - oam.getSystemConfig(moduleType, moduletypeconfig); - } - catch(...) - { - cout << endl << "**** addModule Failed : Failed to Add Module, getSystemConfig API Failed" << endl; - break; - } - - //get module names already in-use and Number of NIC IDs for module - typedef std::vector moduleNameList; - moduleNameList modulenamelist; - int nicNumber=1; - - DeviceNetworkList::iterator pt = moduletypeconfig.ModuleNetworkList.begin(); - for( ; pt != moduletypeconfig.ModuleNetworkList.end() ; pt++) - { - modulenamelist.push_back((*pt).DeviceName); - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - if ( (*pt1).HostName != oam::UnassignedName ) { - if ( nicNumber < (*pt1).NicID ) - nicNumber = (*pt1).NicID; - } - } - } - - if ( ((unsigned) nicNumber * moduleCount) != inputnames.size() && cloud == oam::UnassignedName ) { - cout << endl << "**** addModule Failed : Failed to Add Module, invalid number of hostNames entered. Enter " + oam.itoa(nicNumber * moduleCount) + " hostname(s), which is the number of NICs times the number of modules" << endl; - break; - } - - int moduleID = 1; - inputNames::const_iterator listPT1 = inputnames.begin(); - umStorageNames::const_iterator listPT2 = umstoragenames.begin(); - for ( int i = 0 ; i < moduleCount ; i++ ) - { - //validate or determine module name - moduleNameList::const_iterator listPT = modulenamelist.begin(); - for( ; listPT != modulenamelist.end() ; listPT++) - { - if ( !moduleName.empty() ) { - //add by moduleName, validate that Entered module name doesn't exist - if ( moduleName == (*listPT) ) { - cout << endl << "**** addModule Failed : Module Name already exist" << endl; - return 1; - } - } - else - { - //add by moduleType, get available module name - string newModuleName = moduleType + oam.itoa(moduleID); - if ( newModuleName == (*listPT) ) - moduleID++; - else - { - moduleName = newModuleName; - moduleID++; - break; - } - } - } - - if ( moduleName.empty() ) { - moduleName = moduleType + oam.itoa(moduleID); - moduleID++; - } - - // store module name - devicenetworkconfig.DeviceName = moduleName; - enabledevicenetworklist.push_back(devicenetworkconfig); - - for ( int j = 0 ; j < nicNumber ; j ++ ) - { - //get/check Server Hostnames IP address - string hostName; - string IPAddress; - if ( cloud == "amazon-ec2") - { - hostName = *listPT1; - if ( hostName != oam::UnassignedName ) - { - IPAddress = oam.getEC2InstanceIpAddress(hostName); - if (IPAddress == "stopped" || IPAddress == "terminated") { - cout << "ERROR: Instance " + hostName + " not running, please start and retry" << endl << endl; - return 1; - } - } - else - IPAddress = oam::UnassignedName; - } - else - { - if ( cloud == "amazon-vpc") - { - if ( *listPT1 != "autoassign" ) - { - if ( oam.isValidIP(*listPT1) ) { - //ip address entered - hostName = oam::UnassignedName; - IPAddress = *listPT1; - } - else - { //instance id entered - hostName = *listPT1; - IPAddress = oam.getEC2InstanceIpAddress(hostName); - if (IPAddress == "stopped" || IPAddress == "terminated") { - cout << "ERROR: Instance " + hostName + " not running, please start and retry" << endl << endl; - return 1; - } - } - } - else - { - hostName = oam::UnassignedName; - IPAddress = "autoassign"; - } - } - else - { // non-amazon - hostName = *listPT1; - IPAddress = oam.getIPAddress(hostName); - if ( IPAddress.empty() ) { - // prompt for IP Address - string prompt = "IP Address of " + hostName + " not found, enter IP Address or enter 'abort'"; - IPAddress = dataPrompt(prompt); - if ( IPAddress == "abort" || !oam.isValidIP(IPAddress)) - return 1; - } - } - } - - hostconfig.IPAddr = IPAddress; - hostconfig.HostName = hostName; - hostconfig.NicID = j+1; - devicenetworkconfig.hostConfigList.push_back(hostconfig); - listPT1++; - } - - devicenetworklist.push_back(devicenetworkconfig); - devicenetworkconfig.hostConfigList.clear(); - moduleName.clear(); - } - - DBRootConfigList dbrootlist; - int dbrootNumber=-1; - typedef std::vector storageDeviceList; - storageDeviceList storagedevicelist; - string deviceType; - - if ( GlusterConfig == "y" && moduleType == "pm") - { - cout << endl << "System is configured with Data Redundancy, DBRoot Storage will" << endl; - cout << "will be created with the Modules during this command." << endl; - cout << "The Data Redundancy Packages should already be installed on the" << endl; - cout << "Servers being installed." << endl; - cout << "Also the Servers should have either a password-less ssh configured" << endl; - cout << "for the local server or setup for a login via password." << endl; - cout << "If its setup for login via password, then you will be required to" << endl; - cout << "enter the password when prompted. You will be prompted 2 * the" << endl; - cout << "number of modules being added." << endl; - - // confirm request - if (confirmPrompt(" ")) - break; - - if ( dbrootPerPM == 0) { - cout << endl; - // prompt for number of DBRoot - string prompt = "Number of DBRoots Per Performance Module you want to add"; - dbrootPerPM = atoi(dataPrompt(prompt).c_str()); - } - else - cout << endl << "Number of DBRoots Per Performance Module to be added is " << oam.itoa(dbrootPerPM) << endl; - - dbrootNumber = dbrootPerPM * moduleCount; - - if ( GlusterStorageType == "storage" ) - { - cout << endl << "Data Redundancy Storage Type is configured for 'storage'" << endl; - - cout << "You will need " << oam.itoa(dbrootNumber*GlusterCopies); - cout << " total storage locations and " << oam.itoa(dbrootPerPM*GlusterCopies) << " storage locations per PM. You will now " << endl; - cout << "be asked to enter the device names for the storage locations. You will enter " << endl; - cout << "them for each PM, on one line, separated by spaces (" << oam.itoa(dbrootPerPM*GlusterCopies) << " names on each line)." << endl; - - DeviceNetworkList::iterator pt = devicenetworklist.begin(); - string firstPM = (*pt).DeviceName.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - for( ; pt != devicenetworklist.end() ; pt++) - { - cout << endl; - string prompt = "Storage Device Names for " + (*pt).DeviceName; - string devices = dataPrompt(prompt); - storagedevicelist.push_back(devices); - } - - cout << endl; - string prompt = "Filesystem type for these storage locations (ext2,ext3,xfs,etc)"; - deviceType = dataPrompt(prompt); - } - - } - - string mysqlpassword = oam::UnassignedName; - - try{ - cout << endl << "Adding Modules "; - DeviceNetworkList::iterator pt = devicenetworklist.begin(); - string firstPM = (*pt).DeviceName.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - for( ; pt != devicenetworklist.end() ; pt++) - { - cout << (*pt).DeviceName << ", "; - } - - cout << "please wait..." << endl; - - oam.addModule(devicenetworklist, password, mysqlpassword); - - cout << "Add Module(s) successfully completed" << endl; - - if ( GlusterConfig == "y" && moduleType == "pm" ) { - - if ( GlusterStorageType == "storage" ) { - //send messages to update fstab to new modules, if needed - DeviceNetworkList::iterator pt2 = devicenetworklist.begin(); - storageDeviceList::iterator pt3 = storagedevicelist.begin(); - for( ; pt2 != devicenetworklist.end() ; pt2++, pt3++) - { - string moduleName = (*pt2).DeviceName; - string devices = *pt3; - int brinkID = 1; - boost::char_separator sep(" "); - boost::tokenizer< boost::char_separator > tokens(devices, sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - string deviceName = *it; - string entry = deviceName + " " + startup::StartUp::installDir() + "/gluster/brick" + oam.itoa(brinkID) + " " + deviceType + " defaults 1 2"; - - //send update pm - oam.distributeFstabUpdates(entry, moduleName); - brinkID++; - } - } - } - - //enable modules - try - { - cout << endl << "Enabling Modules " << endl; - oam.enableModule(enabledevicenetworklist); - cout << "Successful Enable of Modules " << endl; - } - catch (exception& e) - { - cout << endl << "**** enableModule Failed : " << e.what() << endl; - break; - } - - cout << endl << "Adding DBRoots" << endl; - - //add dbroots - string firstDBroot; - try - { - oam.addDbroot(dbrootNumber, dbrootlist); - - cout << "New DBRoot IDs added = "; - DBRootConfigList::iterator pt1 = dbrootlist.begin(); - firstDBroot = oam.itoa(*pt1); - for( ; pt1 != dbrootlist.end() ;) - { - cout << oam.itoa(*pt1); - pt1++; - if (pt1 != dbrootlist.end()) - cout << ", "; - } - cout << endl; - - } - catch (exception& e) - { - cout << endl << "**** addDbroot Failed: " << e.what() << endl; - break; - } - - cout << endl << "Assigning DBRoots" << endl << endl; - - DeviceNetworkList::iterator pt = devicenetworklist.begin(); - DBRootConfigList::iterator pt1 = dbrootlist.begin(); - for( ; pt != devicenetworklist.end() ; pt++) - { - string moduleName = (*pt).DeviceName; - - DBRootConfigList dbrootlist; - - for( int dbrootNum = 0; dbrootNum < dbrootPerPM ; dbrootNum++) - { - dbrootlist.push_back(*pt1); - pt1++; - } - - //assign dbroots to pm - try - { - oam.assignDbroot(moduleName, dbrootlist); - - cout << endl << "Successfully Assigned DBRoots " << endl; - - } - catch (exception& e) - { - cout << endl << "**** Failed Assign of DBRoots: " << e.what() << endl; - break; - } - } - - cout << endl << "Run Data Redundancy Setup for DBRoots" << endl; - - try { - string errmsg; - int ret = oam.glusterctl(oam::GLUSTER_ADD, firstPM, firstDBroot, errmsg); - if ( ret != 0 ) - { - cout << endl << "**** Failed Data Redundancy Add of DBRoots: " << errmsg << endl; - break; - } - - cout << endl << "Successfully Completed Data Redundancy Add DBRoots " << endl; - - } - catch (...) - { - cout << endl << "**** glusterctl GLUSTER_ADD Failed" << endl; - break; - } - - cout << endl << "addModule Command Successfully completed: Run startSystem command to Activate newly added Performance Modules" << endl << endl; - } - else - { - cout << "addModule Command Successfully completed: Modules are Disabled, run alterSystem-enableModule command to enable them" << endl << endl; - } - - try { - oam.setSystemConfig("AmazonVPCNextPrivateIP", AmazonVPCNextPrivateIP); - } - catch(...) {} - - } - catch (exception& e) - { - cout << endl << "**** addModule Failed: " << e.what() << endl; - } - catch(...) - { - cout << endl << "**** addModule Failed : Failed to Add Module" << endl; - } - break; - } - - case 49: // removeModule - parameters: Module name/type, number-of-modules - { - if (arguments[1] == "") - { - // need atleast 1 arguments - cout << endl << "**** removeModule Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - parentOAMModule = getParentOAMModule(); - if ( arguments[1] == parentOAMModule ) { - // exit out since you can't manually remove OAM Parent Module - cout << endl << "**** removeModule Failed : can't manually remove the Active OAM Parent Module." << endl; - break; - } - - switch ( serverInstallType ) { - case (oam::INSTALL_COMBINE_DM_UM_PM): - { - if (arguments[1].find("um") != string::npos ) { - cout << endl << "**** removeModule Failed : User Modules not supported on the Combined Server Installation" << endl; - return 0; - } - } - } - - ModuleTypeConfig moduletypeconfig; - DeviceNetworkConfig devicenetworkconfig; - DeviceNetworkList devicenetworklist; - bool quit = false; - - string moduleType; - - //check if module type or module name was entered - if ( arguments[1].size() == 2 ) { - //Module Type was entered - - if ( arguments[3] != "y") { - cout << endl << "!!!!! DESTRUCTIVE COMMAND !!!!!" << endl; - string warning = "This command does a remove a module from the Calpont System"; - // confirm request - if (confirmPrompt(warning)) - break; - } - - int moduleCount = atoi(arguments[2].c_str()); - if ( moduleCount < 1 || moduleCount > 10 ) { - cout << endl << "**** removeModule Failed : Failed to Remove Module, invalid number-of-modules entered (1-10)" << endl; - break; - } - - cout << endl; - - moduleType = arguments[1]; - - //store moduleNames - try{ - oam.getSystemConfig(moduleType, moduletypeconfig); - } - catch(...) - { - cout << endl << "**** removeModule Failed : Failed to Remove Module, getSystemConfig API Failed" << endl; - break; - } - - int currentModuleCount = moduletypeconfig.ModuleCount; - - if ( moduleCount > currentModuleCount ) { - cout << endl << "**** removeModule Failed : Failed to Remove Module, mount count entered to larger than configured" << endl; - break; - } - if ( moduleCount == currentModuleCount ) { - if ( moduleType == "pm" ) { - cout << endl << "**** removeModule Failed : Failed to Remove Module, you can't remove last Director Module" << endl; - break; - } - } - - //get module names in-use - typedef std::vector moduleNameList; - moduleNameList modulenamelist; - - DeviceNetworkList::iterator pt = moduletypeconfig.ModuleNetworkList.begin(); - for( ; pt != moduletypeconfig.ModuleNetworkList.end() ; pt++) - { - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - if ( (*pt1).HostName != oam::UnassignedName ) - modulenamelist.push_back((*pt).DeviceName); - } - - moduleNameList::reverse_iterator pt1 = modulenamelist.rbegin(); - for ( int i=0 ; i < moduleCount ; i++) - { - devicenetworkconfig.DeviceName = *pt1; - pt1++; - devicenetworklist.push_back(devicenetworkconfig); - } - } - else - { - //Module Name was entered - - if ( arguments[2] != "y") { - cout << endl << "!!!!! DESTRUCTIVE COMMAND !!!!!" << endl; - string warning = "This command does a stop and remove a module from the Calpont System"; - // confirm request - if (confirmPrompt(warning)) - break; - } - - cout << endl; - - //parse module names - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(arguments[1], sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - devicenetworkconfig.DeviceName = *it; - devicenetworklist.push_back(devicenetworkconfig); - - moduleType = (*it).substr(0,MAX_MODULE_TYPE_SIZE); - - try{ - oam.getSystemConfig(moduleType, moduletypeconfig); - } - catch(...) - { - cout << endl << "**** removeModule Failed : Failed to Remove Module, getSystemConfig API Failed" << endl; - quit = true; - break; - } - - int currentModuleCount = moduletypeconfig.ModuleCount; - - if ( moduleType == "pm" && currentModuleCount == 1) { - cout << endl << "**** removeModule Failed : Failed to Remove Module, you can't remove last Performance Module" << endl; - quit = true; - break; - } - - if ( moduleType == "um" && currentModuleCount == 1) { - cout << endl << "**** removeModule Failed : Failed to Remove Module, you can't remove last User Module" << endl; - quit = true; - break; - } - } - } - - if (quit) - break; - - DeviceNetworkList::iterator pt = devicenetworklist.begin(); - DeviceNetworkList::iterator endpt = devicenetworklist.end(); - - // check for module status and if any dbroots still assigned - for( ; pt != endpt ; pt++) - { - if ( moduleType == "pm" ) { - // check for dbroots assigned - DBRootConfigList dbrootConfigList; - string moduleID = (*pt).DeviceName.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - try { - oam.getPmDbrootConfig(atoi(moduleID.c_str()), dbrootConfigList); - } - catch(...) - {} - - if ( !dbrootConfigList.empty() ) { - cout << "**** removeModule Failed : " << (*pt).DeviceName << " has dbroots still assigned. Please run movePmDbrootConfig or unassignPmDbrootConfig."; - quit = true; - cout << endl; - break; - } - } - - // check module status - try{ - bool degraded; - int opState; - oam.getModuleStatus((*pt).DeviceName, opState, degraded); - - if (opState == oam::MAN_OFFLINE || - opState == oam::MAN_DISABLED || - opState == oam::FAILED) - continue; - else - { - cout << "**** removeModule Failed : " << (*pt).DeviceName << " is not MAN_OFFLINE, DISABLED, or FAILED state."; - quit = true; - cout << endl; - break; - } - } - catch (exception& ex) - {} - } - - if (quit) { - cout << endl; - break; - } - - try{ - cout << endl << "Removing Module(s) "; - DeviceNetworkList::iterator pt = devicenetworklist.begin(); - for( ; pt != devicenetworklist.end() ; pt++) - { - cout << (*pt).DeviceName << ", "; - } - cout << "please wait..." << endl; - - oam.removeModule(devicenetworklist); - cout << endl << "Remove Module successfully completed" << endl << endl; - } - catch (exception& e) - { - cout << endl << "Failed to Remove Module: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** removeModule Failed : Failed to Remove Module" << endl << endl; - break; - } - break; - } - - case 50: // getModuleHostNames - { - SystemModuleTypeConfig systemmoduletypeconfig; - ModuleTypeConfig moduletypeconfig; - ModuleConfig moduleconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - string returnValue; - string Argument; - - // get and all display Module HostNames (NIC 1) - // No other data will be displayed, only the hostnames. - // This feature is designed for use by other processes. - // It was specifically installed for the sqoop import feature (version 4.5) - // If arguments[1] == PM, display only PMs, UM, display only UMs, else all. - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - if ( moduleCount == 0 ) - // skip if no modules - continue; - - string moduletype = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - if (arguments[1] == "pm" && moduletype != "pm") - continue; - if (arguments[1] == "um" && moduletype != "um") - continue; - - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - for( ; pt1 != (*pt).hostConfigList.end() ; pt1++) - { - // Only print for NIC 1 - if ((*pt1).NicID == 1) - { - // We need the name with domain and everything. - if ((*pt1).HostName == "localhost") - { - char hostName[128] = {0}; - gethostname(hostName, 128); - cout << hostName << endl; - } - else - { - struct hostent* hentName = gethostbyname((*pt1).HostName.c_str()); - if (hentName) - { - cout << hentName->h_name << endl; - } - else - { - cout << (*pt1).HostName.c_str() << endl; - } - } - } - } - } - } - } - catch (exception& e) - { - cout << endl << "**** getModuleHostNames Failed = " << e.what() << endl; - } - break; - } - - case 51: // disableMySQLReplication - { - string MySQLRep; - try { - oam.getSystemConfig("MySQLRep", MySQLRep); - } - catch(...) {} - - if ( MySQLRep == "n" ) { - string warning = "MySQL Replication Feature is already disable"; - // confirm request - if (confirmPrompt(warning)) - break; - } - - string MySQLPasswordConfig; - try { - oam.getSystemConfig("MySQLPasswordConfig", MySQLPasswordConfig); - } - catch(...) {} - - if ( MySQLPasswordConfig == oam::UnassignedName ) { - cout << endl; - string prompt = "Is there a 'MySQL' Password configured on the MySQL Front-end Modules in " + HOME + "/.my.cnf (y,n): "; - MySQLPasswordConfig = dataPrompt(prompt); - } - - if ( MySQLPasswordConfig != "y" ) - MySQLPasswordConfig = "n"; - - try { - oam.setSystemConfig("MySQLPasswordConfig", MySQLPasswordConfig); - } - catch(...) {} - - //set flag - try { - oam.setSystemConfig("MySQLRep", "n"); - sleep(2); - } - catch(...) {} - - try - { - oam.disableMySQLRep(); - cout << endl << " Successful Disable of MySQL Replication " << endl; - } - catch (exception& e) - { - cout << endl << "**** disableMySQLRep Failed : " << e.what() << endl; - } - - break; - } - - case 52: // getModuleCpuUsers - { - if (arguments[1] == "") - { - // need 1 arguments - cout << endl << "**** getModuleCpuUsers Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - int topNumber = 5; - - if (arguments[2] != "") - { - topNumber = atoi(arguments[2].c_str()); - if ( topNumber < 1 || topNumber > 10 ) { - cout << endl << "**** getModuleCpuUsers Failed : Invalid top Number entered" << endl; - break; - } - } - - TopProcessCpuUsers topprocesscpuusers; - try{ - oam.getTopProcessCpuUsers(arguments[1], topNumber, topprocesscpuusers); - - printModuleCpuUsers(topprocesscpuusers); - - } - catch (exception& e) - { - cout << endl << "Failed to get Top CPU Users: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getModuleCpuUsers Failed : Failed to get Top CPU Users" << endl << endl; - break; - } - break; - } - - case 53: // getSystemCpuUsers - { - int topNumber = 5; - - if (arguments[1] != "") - { - topNumber = atoi(arguments[1].c_str()); - if ( topNumber < 1 || topNumber > 10 ) { - cout << endl << "**** getSystemCpuUsers Failed : Invalid top Number entered" << endl; - break; - } - } - - cout << endl << "System Process Top CPU Users per Module" << endl << endl; - - SystemTopProcessCpuUsers systemtopprocesscpuusers; - TopProcessCpuUsers topprocesscpuusers; - try{ - oam.getTopProcessCpuUsers(topNumber, systemtopprocesscpuusers); - - for( unsigned int i = 0 ; i < systemtopprocesscpuusers.topprocesscpuusers.size(); i++) - { - printModuleCpuUsers(systemtopprocesscpuusers.topprocesscpuusers[i]); - } - - } - catch (exception& e) - { - cout << endl << "Failed to get Top CPU Users: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getSystemCpuUsers Failed : Failed to get Top CPU Users" << endl << endl; - break; - } - break; - } - - case 54: // getModuleCpu - { - if (arguments[1] == "") - { - // need 1 arguments - cout << endl << "**** getModuleCpu Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - ModuleCpu modulecpu; - try{ - oam.getModuleCpuUsage(arguments[1], modulecpu); - - printModuleCpu(modulecpu); - - } - catch (exception& e) - { - cout << endl << "Failed to get CPU Usage: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getModuleCpu Failed : Failed to get Module CPU Usage" << endl << endl; - break; - } - break; - } - - case 55: // getSystemCpu - { - cout << endl << "System CPU Usage per Module" << endl << endl; - - SystemCpu systemcpu; - - try{ - oam.getSystemCpuUsage(systemcpu); - - for( unsigned int i = 0 ; i < systemcpu.modulecpu.size(); i++) - { - printModuleCpu(systemcpu.modulecpu[i]); - } - - } - catch (exception& e) - { - cout << endl << "Failed to get CPU Usage: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getSystemCpu Failed : Failed to get CPU Usage" << endl << endl; - break; - } - break; - } - - case 56: // getModuleMemoryUsers - { - if (arguments[1] == "") - { - // need 1 arguments - cout << endl << "**** getModuleMemoryUsers Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - int topNumber = 5; - - if (arguments[2] != "") - { - topNumber = atoi(arguments[2].c_str()); - if ( topNumber < 1 || topNumber > 10 ) { - cout << endl << "**** getModuleMemoryUsers Failed : Invalid top Number entered" << endl; - break; - } - } - - TopProcessMemoryUsers topprocessmemoryusers; - try{ - oam.getTopProcessMemoryUsers(arguments[1], topNumber, topprocessmemoryusers); - - printModuleMemoryUsers(topprocessmemoryusers); - - } - catch (exception& e) - { - cout << endl << "Failed to get Top Memory Users: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getModuleMemoryUsers Failed : Failed to get Top Memory Users" << endl << endl; - break; - } - break; - } - - case 57: // getSystemMemoryUsers - { - int topNumber = 5; - - if (arguments[1] != "") - { - topNumber = atoi(arguments[1].c_str()); - if ( topNumber < 1 || topNumber > 10 ) { - cout << endl << "**** getSystemMemoryUsers Failed : Invalid top Number entered" << endl; - break; - } - } - - cout << endl << "System Process Top Memory Users per Module" << endl << endl; - - SystemTopProcessMemoryUsers systemtopprocessmemoryusers; - TopProcessMemoryUsers topprocessmemoryusers; - try{ - oam.getTopProcessMemoryUsers(topNumber, systemtopprocessmemoryusers); - - for( unsigned int i = 0 ; i < systemtopprocessmemoryusers.topprocessmemoryusers.size(); i++) - { - printModuleMemoryUsers(systemtopprocessmemoryusers.topprocessmemoryusers[i]); - } - - } - catch (exception& e) - { - cout << endl << "Failed to get Top CPU Users: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getSystemMemoryUsers Failed : Failed to get Top CPU Users" << endl << endl; - break; - } - break; - } - - case 58: // getModuleMemory - { - if (arguments[1] == "") - { - // need 1 arguments - cout << endl << "**** getModuleMemory Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - ModuleMemory modulememory; - try{ - oam.getModuleMemoryUsage(arguments[1], modulememory); - - cout << endl << "Module Memory Usage (in K bytes)" << endl << endl; - - cout.setf(ios::left); - cout.width(8); - cout << "Module"; - cout.width(11); - cout << "Mem Total"; - cout.width(9); - cout << "Mem Used"; - cout.width(9); - cout << "cache"; - cout.width(12); - cout << "Mem Usage %"; - cout.width(11); - cout << "Swap Total"; - cout.width(10); - cout << "Swap Used"; - cout.width(13); - cout << "Swap Usage %"; - cout << endl; - - cout.setf(ios::left); - cout.width(8); - cout << "------"; - cout.width(11); - cout << "---------"; - cout.width(9); - cout << "-------"; - cout.width(9); - cout << "-------"; - cout.width(12); - cout << "----------"; - cout.width(11); - cout << "----------"; - cout.width(10); - cout << "---------"; - cout.width(13); - cout << "-----------"; - cout << endl; - - printModuleMemory(modulememory); - } - catch (exception& e) - { - cout << endl << "Failed to get Memory Usage: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getModuleMemory Failed : Failed to get Module Memory Usage" << endl << endl; - break; - } - break; - } - - case 59: // getSystemMemory - { - cout << endl << "System Memory Usage per Module (in K bytes)" << endl << endl; - - cout.setf(ios::left); - cout.width(8); - cout << "Module"; - cout.width(11); - cout << "Mem Total"; - cout.width(10); - cout << "Mem Used"; - cout.width(9); - cout << "Cache"; - cout.width(13); - cout << "Mem Usage %"; - cout.width(12); - cout << "Swap Total"; - cout.width(11); - cout << "Swap Used"; - cout.width(14); - cout << "Swap Usage %"; - cout << endl; - - cout.setf(ios::left); - cout.width(8); - cout << "------"; - cout.width(11); - cout << "---------"; - cout.width(10); - cout << "--------"; - cout.width(9); - cout << "-------"; - cout.width(13); - cout << "-----------"; - cout.width(12); - cout << "----------"; - cout.width(11); - cout << "---------"; - cout.width(14); - cout << "------------"; - cout << endl; - - SystemMemory systemmemory; - - try{ - oam.getSystemMemoryUsage(systemmemory); - - for( unsigned int i = 0 ; i < systemmemory.modulememory.size(); i++) - { - printModuleMemory(systemmemory.modulememory[i]); - } - - } - catch (exception& e) - { - cout << endl << "Failed to get Memory Usage: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getSystemCpu Failed : Failed to get Memory Usage" << endl << endl; - break; - } - break; - } - - case 60: // getModuleDisk - { - if (arguments[1] == "") - { - // need 1 arguments - cout << endl << "**** getModuleDisk Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - ModuleDisk moduledisk; - try{ - oam.getModuleDiskUsage(arguments[1], moduledisk); - - printModuleDisk(moduledisk); - - } - catch (exception& e) - { - cout << endl << "Failed to get Disk Usage: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getModuleDisk Failed : Failed to get Module Disk Usage" << endl << endl; - break; - } - break; - } - - case 61: // getSystemDisk - { - cout << endl << "System Disk Usage per Module" << endl << endl; - - SystemDisk systemdisk; - - try{ - oam.getSystemDiskUsage(systemdisk); - - for( unsigned int i = 0 ; i < systemdisk.moduledisk.size(); i++) - { - printModuleDisk(systemdisk.moduledisk[i]); - } - - } - catch (exception& e) - { - cout << endl << "Failed to get Memory Usage: " << e.what() << endl << endl; - } - catch(...) - { - cout << endl << "**** getSystemCpu Failed : Failed to get Memory Usage" << endl << endl; - break; - } - break; - } - - case 62: // getModuleResources - { - if (arguments[1] == "") - { - // need 1 arguments - cout << endl << "**** getModuleResources Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - int topNumber = 5; - - TopProcessCpuUsers topprocesscpuusers; - try{ - oam.getTopProcessCpuUsers(arguments[1], topNumber, topprocesscpuusers); - } - catch (exception& e) - { - cout << endl << "Failed to get Top CPU Users: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleCpuUsers Failed : Failed to get Top CPU Users" << endl << endl; - break; - } - - ModuleCpu modulecpu; - try{ - oam.getModuleCpuUsage(arguments[1], modulecpu); - } - catch (exception& e) - { - cout << endl << "Failed to get CPU Usage: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleCpu Failed : Failed to get Module CPU Usage" << endl << endl; - break; - } - - TopProcessMemoryUsers topprocessmemoryusers; - try{ - oam.getTopProcessMemoryUsers(arguments[1], topNumber, topprocessmemoryusers); - } - catch (exception& e) - { - cout << endl << "Failed to get Top Memory Users: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleMemoryUsers Failed : Failed to get Top Memory Users" << endl << endl; - break; - } - - ModuleMemory modulememory; - try{ - oam.getModuleMemoryUsage(arguments[1], modulememory); - } - catch (exception& e) - { - cout << endl << "Failed to get Memory Usage: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleMemory Failed : Failed to get Module Memory Usage" << endl << endl; - break; - } - - ModuleDisk moduledisk; - try{ - oam.getModuleDiskUsage(arguments[1], moduledisk); - } - catch (exception& e) - { - cout << endl << "Failed to get Disk Usage: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleDisk Failed : Failed to get Module Disk Usage" << endl << endl; - break; - } - - printModuleResources(topprocesscpuusers, modulecpu, topprocessmemoryusers, modulememory, moduledisk); - - break; - } - - case 63: // getSystemResources - { - cout << endl << "System Resource Usage per Module" << endl << endl; - - int topNumber = 5; - - SystemModuleTypeConfig systemmoduletypeconfig; - ModuleTypeConfig moduletypeconfig; - - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - continue; - - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - - if ( moduleCount == 0 ) - continue; - - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - string modulename = (*pt).DeviceName; - if ( modulename == "unknown" ) - continue; - - TopProcessCpuUsers topprocesscpuusers; - try{ - oam.getTopProcessCpuUsers(modulename, topNumber, topprocesscpuusers); - } - catch (exception& e) - { - cout << endl << "Failed to get Top CPU Users: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleCpuUsers Failed : Failed to get Top CPU Users" << endl << endl; - break; - } - - ModuleCpu modulecpu; - try{ - oam.getModuleCpuUsage(modulename, modulecpu); - } - catch (exception& e) - { - cout << endl << "Failed to get CPU Usage: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleCpu Failed : Failed to get Module CPU Usage" << endl << endl; - break; - } - - TopProcessMemoryUsers topprocessmemoryusers; - try{ - oam.getTopProcessMemoryUsers(modulename, topNumber, topprocessmemoryusers); - } - catch (exception& e) - { - cout << endl << "Failed to get Top Memory Users: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleMemoryUsers Failed : Failed to get Top Memory Users" << endl << endl; - break; - } - - ModuleMemory modulememory; - try{ - oam.getModuleMemoryUsage(modulename, modulememory); - } - catch (exception& e) - { - cout << endl << "Failed to get Memory Usage: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleMemory Failed : Failed to get Module Memory Usage" << endl << endl; - break; - } - - ModuleDisk moduledisk; - try{ - oam.getModuleDiskUsage(modulename, moduledisk); - } - catch (exception& e) - { - cout << endl << "Failed to get Disk Usage: " << e.what() << endl << endl; - break; - } - catch(...) - { - cout << endl << "**** getModuleDisk Failed : Failed to get Module Disk Usage" << endl << endl; - break; - } - - printModuleResources(topprocesscpuusers, modulecpu, topprocessmemoryusers, modulememory, moduledisk); - } - } - } - catch (exception& e) - { - cout << endl << "**** getSystemResources Failed : " << e.what() << endl; - } - break; - } - - case 64: // getActiveSQLStatements - { - cout << endl << "Get List of Active SQL Statements" << endl; - cout << "=================================" << endl << endl; - - ActiveSqlStatements activesqlstatements; - - try - { - oam.getActiveSQLStatements(activesqlstatements); - - if ( activesqlstatements.size() == 0 ) - { - cout << "No Active SQL Statements at this time" << endl << endl; - break; - } - - cout << "Start Time Time (hh:mm:ss) Session ID SQL Statement" << endl; - cout << "---------------- ---------------- -------------------- ------------------------------------------------------------" << endl; - - for ( unsigned int i = 0 ; i < activesqlstatements.size(); i++) - { - struct tm tmStartTime; - char timeBuf[36]; - time_t startTime = activesqlstatements[i].starttime; - localtime_r(&startTime, &tmStartTime); - (void)strftime(timeBuf, 36, "%b %d %H:%M:%S", &tmStartTime); - - cout.setf(ios::left); - cout.width(21); - cout << timeBuf; - - //get current time in Epoch - time_t cal; - time (&cal); - - int runTime = cal - activesqlstatements[i].starttime; - int runHours = runTime/3600; - int runMinutes = (runTime - (runHours*3600))/60; - int runSeconds = runTime - (runHours*3600) - (runMinutes*60); - - cout.width(15); - string hours = oam.itoa(runHours); - string minutes = oam.itoa(runMinutes); - string seconds = oam.itoa(runSeconds); - - string run; - if ( hours.size() == 1 ) - run = "0" + hours + ":"; - else - run = hours + ":"; - - if ( minutes.size() == 1 ) - run = run + "0" + minutes + ":"; - else - run = run + minutes + ":"; - - if ( seconds.size() == 1 ) - run = run + "0" + seconds; - else - run = run + seconds; - - cout << run; - - cout.width(23); - cout << activesqlstatements[i].sessionid; - - string SQLStatement = activesqlstatements[i].sqlstatement; - int pos=0; - for ( ;; ) - { - string printSQL = SQLStatement.substr(pos, 60); - pos=pos+60; - cout << printSQL << endl; - - if ( printSQL.size() < 60 ) - break; - - cout.width(59); - cout << " "; - } - cout << endl; - } - - } - catch (exception& e) - { - cout << endl << "Failed to get List of Active SQL Statements: " << e.what() << endl << endl; - } - catch (...) - { - cout << endl << "**** getActiveSQLStatements Failed : Failed to get List of Active SQL Statements" << endl << endl; - break; - } - break; - } - - case 65: // alterSystem-disableModule - { - if (arguments[1] == "") - { - // need arguments - cout << endl << "**** alterSystem-disableModule Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - parentOAMModule = getParentOAMModule(); - if ( arguments[1] == parentOAMModule ) { - // exit out since you can't manually remove OAM Parent Module - cout << endl << "**** alterSystem-disableModule Failed : can't manually disable the Active OAM Parent Module." << endl; - break; - } - - string moduleType = arguments[1].substr(0,MAX_MODULE_TYPE_SIZE); - - gracefulTemp = INSTALL; - - //display Primary UM Module - string PrimaryUMModuleName; - try { - oam.getSystemConfig("PrimaryUMModuleName", PrimaryUMModuleName); - } - catch(...) {} - - bool primUM = false; - if ( PrimaryUMModuleName == arguments[1] ) - { - cout << endl << "This command stops the processing of applications on the Primary User Module, which is where DDL/DML are performed"; - if (confirmPrompt("If there is another module that can be changed to a new Primary User Module, this will be done")) - break; - primUM = true; - } - else - { - // confirm request - if ( arguments[2] != "y" ) { - if (confirmPrompt("This command stops the processing of applications on a Module within the Calpont System")) - break; - } - } - - //parse module names - DeviceNetworkConfig devicenetworkconfig; - DeviceNetworkList devicenetworklist; - - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(arguments[1], sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - devicenetworkconfig.DeviceName = *it; - devicenetworklist.push_back(devicenetworkconfig); - } - - DeviceNetworkList::iterator pt = devicenetworklist.begin(); - DeviceNetworkList::iterator endpt = devicenetworklist.end(); - - bool quit = false; - - // check for module status and if any dbroots still assigned - if ( moduleType == "pm" ) { - for( ; pt != endpt ; pt++) - { - // check for dbroots assigned - DBRootConfigList dbrootConfigList; - string moduleID = (*pt).DeviceName.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE); - try { - oam.getPmDbrootConfig(atoi(moduleID.c_str()), dbrootConfigList); - } - catch(...) - {} - - if ( !dbrootConfigList.empty() ) { - cout << endl << "**** alterSystem-disableModule Failed : " << (*pt).DeviceName << " has dbroots still assigned and will not be disabled. Please run movePmDbrootConfig or unassignPmDbrootConfig."; - quit = true; - cout << endl; - break; - } - } - - if (quit) { - cout << endl; - break; - } - } - - if ( devicenetworklist.empty() ) { - cout << endl << "quiting, no modules to remove." << endl << endl; - break; - } - - // stop module - try - { - cout << endl << " Stopping Modules" << endl; - oam.stopModule(devicenetworklist, gracefulTemp, ackTemp); - cout << " Successful stop of Modules " << endl; - } - catch (exception& e) - { - - string Failed = e.what(); - if (Failed.find("Disabled") != string::npos) - cout << endl << " Successful stop of Modules " << endl; - else { - cout << endl << "**** stopModule Failed : " << e.what() << endl; - break; - } - } - - // disable module - try - { - cout << endl << " Disabling Modules" << endl; - oam.disableModule(devicenetworklist); - cout << " Successful disable of Modules " << endl; - - //display Primary UM Module - string PrimaryUMModuleName; - try { - oam.getSystemConfig("PrimaryUMModuleName", PrimaryUMModuleName); - } - catch(...) {} - - if ( primUM && - PrimaryUMModuleName != arguments[1] ) - cout << endl << " New Primary User Module = " << PrimaryUMModuleName << endl; - - } - catch (exception& e) - { - cout << endl << "**** disableModule Failed : " << e.what() << endl; - break; - } - - cout << endl; - break; - } - - case 66: // alterSystem-enableModule - { - if (arguments[1] == "") - { - // need arguments - cout << endl << "**** alterSystem-enableModule Failed : Missing a required Parameter, enter 'help' for additional information" << endl; - break; - } - - string moduleType = arguments[1].substr(0,MAX_MODULE_TYPE_SIZE); - - ACK_FLAG ackTemp = ACK_YES; - - // confirm request - if ( arguments[2] != "y" ) { - if (confirmPrompt("This command starts the processing of applications on a Module within the Calpont System")) - break; - } - - //parse module names - DeviceNetworkConfig devicenetworkconfig; - DeviceNetworkList devicenetworklist; - boost::char_separator sep(", "); - boost::tokenizer< boost::char_separator > tokens(arguments[1], sep); - for ( boost::tokenizer< boost::char_separator >::iterator it = tokens.begin(); - it != tokens.end(); - ++it) - { - devicenetworkconfig.DeviceName = *it; - devicenetworklist.push_back(devicenetworkconfig); - } - - //get the system status, enable modules and startmodules if system is ACTIVE - SystemStatus systemstatus; - try { - oam.getSystemStatus(systemstatus); - - // enable module - try - { - cout << endl << " Enabling Modules " << endl; - oam.enableModule(devicenetworklist); - cout << " Successful enable of Modules " << endl; - } - catch (exception& e) - { - cout << endl << "**** enableModule Failed : " << e.what() << endl; - break; - } - - if ( moduleType == "pm" ) - { - cout << endl << " Performance Module(s) Enabled, run movePmDbrootConfig or assignDbrootPmConfig to assign dbroots, if needed" << endl << endl; - break; - } - else - { - if (systemstatus.SystemOpState == oam::ACTIVE ) { - try - { - cout << endl << " Starting Modules" << endl; - oam.startModule(devicenetworklist, ackTemp); - - //reload DBRM with new configuration, needs to be done here after startModule - string cmd = startup::StartUp::installDir() + "/bin/dbrmctl reload > /dev/null 2>&1"; - system(cmd.c_str()); - sleep(15); - - cout << " Successful start of Modules " << endl; - } - catch (exception& e) - { - cout << endl << "**** startModule Failed : " << e.what() << endl; - break; - } - } - else - cout << endl << " System not Active, run 'startSystem' to start system if needed" << endl; - } - } - catch (exception& e) - { - cout << endl << "**** alterSystem-enableModule Failed : " << e.what() << endl; - break; - } - catch(...) - { - cout << endl << "**** alterSystem-enableModule Failed, Failed return from getSystemStatus API" << endl; - break; - } - - cout << endl; - - break; - } - - case 67: // AVAILABLE - { - } - - - default: - { - cout << arguments[0] << ": Unknown Command, type help for list of commands" << endl << endl; - return 1; - } - } - return 0; -} - -/****************************************************************************************** - * @brief ProcessSupportCommand - * - * purpose: Process Support commands - * - ******************************************************************************************/ -int ProcessSupportCommand(int CommandID, std::string arguments[]) -{ - Oam oam; - GRACEFUL_FLAG gracefulTemp = GRACEFUL; - ACK_FLAG ackTemp = ACK_YES; - CC_SUSPEND_ANSWER suspendAnswer = WAIT; - bool bNeedsConfirm = true; - - switch( CommandID ) - { - case 0: // helpsupport - { - // display commands in the Support Command list - cout << endl << "List of Support commands" << endl << endl; - - for (int i = 1;;i++) - { - if (supportCmds[i] == "") - // end of list - break; - cout << " " << supportCmds[i] << endl; - } - cout << endl; - } - break; - - case 1: // stopprocess - parameters: Process-name, Module-name, Graceful flag, Ack flag - { - if (arguments[2] == "") - { - // need arguments - cout << endl << "**** stopprocess Failed : Missing a required Parameter, Enter Process and Module names" << endl; - break; - } - - // don't allow stopping of Process-Monitor - if ( arguments[1] == "ProcessMonitor" ) { - cout << "ProcessMonitor is controlled by 'init' and can not be stopped" << endl; - break; - } - else - { - // give warning for Process-Monitor - if ( arguments[1] == "ProcessManager" ) { - if (confirmPrompt("ProcessManager is the Interface for the Console and should only be removed as part of a Calpont Package installation")) - break; - } - else - { - if ( arguments[3] != "y" ) { - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - // confirm request - if (confirmPrompt("This command stops the processing of an application on a Module within the Calpont System")) - break; - } - } - } - - try - { - oam.stopProcess(arguments[2], arguments[1], gracefulTemp, ackTemp); - cout << endl << " Successful stop of Process " << arguments[1] << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** stopprocess Failed : " << e.what() << endl; - } - } - break; - - case 2: // startprocess - parameters: Process-name, Module-name, Graceful flag, Ack flag - { - if (arguments[2] == "") - { - // need arguments - cout << endl << "**** startprocess Failed : Missing a required Parameter, Enter Process and Module names" << endl; - break; - } - - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - - try - { - oam.startProcess(arguments[2], arguments[1], gracefulTemp, ackTemp); - cout << endl << " Successful start of Process " << arguments[1] << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** startprocess Failed : " << e.what() << endl; - } - } - break; - - case 3: // restartprocess - parameters: Process-name, Module-name, Graceful flag, Ack flag - { - if (arguments[2] == "") - { - // need arguments - cout << endl << "**** restartprocess Failed : Missing a required Parameter, Enter Process and Module names" << endl; - break; - } - - getFlags(arguments, gracefulTemp, ackTemp, suspendAnswer, bNeedsConfirm); - - // confirm request - if (confirmPrompt("This command restarts the processing of an application on a Module within the Calpont System")) - break; - - try - { - oam.restartProcess(arguments[2], arguments[1], gracefulTemp, ackTemp); - cout << endl << " Successful restart of Process " << arguments[1] << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** restartprocess Failed : " << e.what() << endl; - } - } - break; - - case 4: // killpid - { - if (arguments[1] == "" || arguments[2] != "") - { - // need arguments - cout << endl << "**** killpid Failed : Invalid or Missing Parameter, Enter local Process-ID" << endl; - break; - } - - pid_t PID = atoi(arguments[1].c_str()); - if ( PID <= 0 ) { - cout << endl << "**** killpid Failed : Invalid Process-ID Entered" << endl; - break; - } - - int status = kill( PID, SIGTERM); - if ( status != API_SUCCESS) - cout << endl << " Failure in kill of Process-ID " << arguments[1] << ", Failed: " << errno << endl << endl; - else - cout << endl << " Successful kill of Process-ID " << arguments[1] << endl << endl; - } - break; - - case 5: // rebootsystem - parameters: password - { - if ( !rootUser) - { - cout << endl << "**** rebootsystem Failed : command not available when running as non-root user" << endl; - break; - } - - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** rebootsystem Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - if (arguments[1] == "" || arguments[1] == "y") - { - // need arguments - cout << endl << "**** rebootsystem Failed : Invalid or Missing Parameter, Provide root-password" << endl; - break; - } - - string password = arguments[1]; - if ( arguments[2] != "y") { - cout << endl << "!!!!! DESTRUCTIVE COMMAND !!!!!" << endl; - string warning = "This command stops the Processing of applications and reboots all modules within the Calpont System"; - // confirm request - if (confirmPrompt(warning)) - break; - } - cout << endl << " Stop System being performed, please wait..." << endl; - - try - { - cout << endl << " System being stopped, please wait... " << endl; - oam.stopSystem(GRACEFUL, ACK_YES); - - if ( waitForStop() ) - cout << endl << " Successful stop of System " << endl << endl; - else - cout << endl << "**** stopSystem Failed : check log files" << endl; - } - catch (exception& e) - { - cout << endl << "**** stopSystem Failed : " << e.what() << endl; - string warning = "stopSystem command failed,"; - // confirm request - if (confirmPrompt(warning)) - break; - } - - SystemModuleTypeConfig systemmoduletypeconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - - try - { - oam.getSystemConfig(systemmoduletypeconfig); - - bool FAILED = false; - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) - // end of list - break; - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - string moduletype = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - if ( moduleCount > 0 ) - { - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - string modulename = (*pt).DeviceName; - if (modulename == parentOAMModule ) { - //do me last - continue; - } - - //skip modules in MAN_DISABLED state - try{ - int opState; - bool degraded; - oam.getModuleStatus(modulename, opState, degraded); - - if (opState == oam::MAN_DISABLED ) - //skip - continue; - } - catch (exception& ex) - {} - - //run remote command script - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - string cmd = startup::StartUp::installDir() + "/bin/remote_command.sh " + (*pt1).IPAddr + " " + password + " reboot " ; - int rtnCode = system(cmd.c_str()); - if (WEXITSTATUS(rtnCode) != 0) { - cout << "Failed with running remote_command.sh" << endl; - FAILED = true; - } - else - cout << endl << " Successful reboot request of Module " << modulename << endl; - } - } - } - - if ( FAILED ) - break; - - //reboot local module - int rtnCode = system("reboot"); - if (WEXITSTATUS(rtnCode) != 0) - cout << "Failed rebooting local module" << endl; - else - { - cout << endl << " Successful reboot request of local Module" << endl; - // close the log file - writeLog("End of a command session!!!"); - logFile.close(); - cout << endl << "Exiting the Calpont Command Console" << endl; - exit (0); - } - } - catch(...) - { - cout << endl << "**** rebootsystem Failed : Failed on getSystemConfig API" << endl; - break; - } - } - break; - - case 6: // rebootnode - parameters: module-name password - { - if ( !rootUser) - { - cout << endl << "**** rebootnode Failed : command not available when running as non-root user" << endl; - break; - } - - if (arguments[1] == "" || arguments[2] == "") - { - // need arguments - cout << endl << "**** rebootnode Failed : Invalid or Missing Parameter, Enter module-name and root-password" << endl; - break; - } - - string inputModuleName = arguments[1]; - string password = arguments[2]; - if ( arguments[3] != "y") { - cout << endl << "!!!!! DESTRUCTIVE COMMAND !!!!!" << endl; - string warning = "This command reboots a node within the Calpont System"; - // confirm request - if (confirmPrompt(warning)) - break; - } - - SystemModuleTypeConfig systemmoduletypeconfig; - systemmoduletypeconfig.moduletypeconfig.clear(); - - try - { - oam.getSystemConfig(systemmoduletypeconfig); - unsigned int i = 0; - for( ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - if( systemmoduletypeconfig.moduletypeconfig[i].ModuleType.empty() ) { - // end of list - break; - } - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - string moduletype = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - if ( moduleCount > 0 ) - { - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end() ; pt++) - { - string modulename = (*pt).DeviceName; - if (inputModuleName == modulename ) { - if (inputModuleName == localModule ) { - //reboot local module - int rtnCode = system("reboot"); - if (WEXITSTATUS(rtnCode) != 0) - cout << "Failed rebooting local node" << endl; - else - { - cout << endl << " Successful reboot request of Node " << modulename << endl; - // close the log file - writeLog("End of a command session!!!"); - logFile.close(); - cout << endl << "Exiting the Calpont Command Console" << endl; - exit (0); - } - } - else - { - HostConfigList::iterator pt1 = (*pt).hostConfigList.begin(); - string ipAddr = (*pt1).IPAddr; - //run remote command script - string cmd = startup::StartUp::installDir() + "/bin/remote_command.sh " + ipAddr + " " + password + " reboot " ; - int rtnCode = system(cmd.c_str()); - if (WEXITSTATUS(rtnCode) != 0) - cout << "Failed with running remote_command.sh" << endl; - else - cout << endl << " Successful reboot request of Node " << modulename << endl; - return(0); - } - } - } - } - } - } - catch(...) - { - cout << endl << "**** rebootnode Failed : Failed on getSystemConfig API" << endl; - break; - } - } - break; - - case 7: // stopdbrmprocess - { - if ( arguments[1] != "y" ) { - // confirm request - if (confirmPrompt("This command stops the dbrm processes within the Calpont System")) - break; - } - - try - { - oam.stopProcessType("DBRM"); - cout << endl << " Successful stop of DBRM Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** stopdbrmprocess Failed : " << e.what() << endl; - } - } - break; - - case 8: // startdbrmprocess - { - try - { - oam.startProcessType("DBRM"); - cout << endl << " Successful Start of DBRM Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** startdbrmprocess Failed : " << e.what() << endl; - } - } - break; - - case 9: // restartdbrmprocess - { - if ( arguments[1] != "y" ) { - // confirm request - if (confirmPrompt("This command restarts the dbrm processes within the Calpont System")) - break; - } - - try - { - oam.restartProcessType("DBRM"); - cout << endl << " Successful Restart of DBRM Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** restartdbrmprocess Failed : " << e.what() << endl; - } - } - break; - - case 10: // setsystemstartupstate - { - Config* sysConfig = Config::makeConfig(); - - parentOAMModule = getParentOAMModule(); - if ( localModule != parentOAMModule ) { - // exit out since not on Parent OAM Module - cout << endl << "**** setsystemstartupstate Failed : only should be run on the Parent OAM Module, which is '" << parentOAMModule << "'" << endl; - break; - } - - string systemStartupOffline; - try { - systemStartupOffline = sysConfig->getConfig("Installation", "SystemStartupOffline"); - cout << "SystemStartupOffline currently set to '" + systemStartupOffline + "'" << endl; - } - catch(...) - { - cout << "ERROR: Problem getting systemStartupOffline from the Calpont System Configuration file" << endl; - return 1; - } - - while(true) - { - char* pcommand = 0; - string prompt; - string temp = "cancel"; - prompt = "Set system startup state to offline: (y,n,cancel) [cancel]: "; - pcommand = readline(prompt.c_str()); - if (pcommand) - { - if (strlen(pcommand) > 0) temp = pcommand; - free(pcommand); - pcommand = 0; - } - if ( temp == "cancel" ) - return 0; - if ( temp == "n" || temp == "y") { - systemStartupOffline = temp; - break; - } - cout << "Invalid Option, please re-enter" << endl; - } - - try { - sysConfig->setConfig("Installation", "SystemStartupOffline", systemStartupOffline); - sysConfig->write(); - } - catch(...) - { - cout << "ERROR: Problem setting systemStartupOffline in the Calpont System Configuration file" << endl; - exit(-1); - } - cout << endl << " Successful setting of systemStartupOffline to '" << systemStartupOffline << "'" << endl << endl; - } - break; - - case 11: // stopPrimProcs - { - if ( arguments[1] != "y" ) { - // confirm request - if (confirmPrompt("This command stops the PrimProc processes within the Calpont System")) - break; - } - - try - { - oam.stopProcessType("PrimProc"); - cout << endl << " Successful stop of PrimProc Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** stopPrimProcs Failed : " << e.what() << endl; - } - } - break; - - case 12: // startPrimProcs - { - try - { - oam.startProcessType("PrimProc"); - cout << endl << " Successful Start of PrimProc Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** startPrimProcs Failed : " << e.what() << endl; - } - } - break; - - case 13: // restartPrimProcs - { - if ( arguments[1] != "y" ) { - // confirm request - if (confirmPrompt("This command restarts the PrimProc processes within the Calpont System")) - break; - } - - try - { - oam.restartProcessType("PrimProc"); - cout << endl << " Successful Restart of PrimProc Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** restartPrimProcs Failed : " << e.what() << endl; - } - } - break; - - case 14: // stopExeMgrs - { - if ( arguments[1] != "y" ) { - // confirm request - if (confirmPrompt("This command stops the ExeMgr processes within the Calpont System")) - break; - } - - try - { - oam.stopProcessType("ExeMgr"); - cout << endl << " Successful stop of ExeMgr Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** stopExeMgrs Failed : " << e.what() << endl; - } - } - break; - - case 15: // startExeMgrs - { - try - { - oam.startProcessType("ExeMgr"); - cout << endl << " Successful Start of ExeMgr Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** startExeMgrs Failed : " << e.what() << endl; - } - } - break; - - case 16: // restartExeMgrs - { - if ( arguments[1] != "y" ) { - // confirm request - if (confirmPrompt("This command restarts the ExeMgr processes within the Calpont System")) - break; - } - - try - { - oam.restartProcessType("ExeMgr"); - cout << endl << " Successful Restart of ExeMgr Processes" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** restartExeMgrs Failed : " << e.what() << endl; - } - } - break; - - case 17: // getProcessStatusStandby - parameters: NONE - { - printProcessStatus("ProcStatusControlStandby"); - } - break; - - case 18: // distributeconfigfile - parameters: option, moduleName - { - string name = "system"; - - if ( arguments[1] != "" ) - name = arguments[1]; - - try - { - oam.distributeConfigFile(name); - cout << endl << " Successful Distribution of Calpont Config File" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** Distribution of Calpont Config File Failed : " << e.what() << endl; - } - } - break; - - case 19: // getPmDbrootConfig - paramaters: pm id - { - string pmID; - if (arguments[1] == "") { - cout << endl; - string prompt = "Enter the Performance Module ID"; - pmID = dataPrompt(prompt); - } - else - pmID = arguments[1]; - - try - { - DBRootConfigList dbrootConfigList; - oam.getPmDbrootConfig(atoi(pmID.c_str()), dbrootConfigList); - - cout << "DBRoot IDs assigned to 'pm" + pmID + "' = "; - - DBRootConfigList::iterator pt = dbrootConfigList.begin(); - for( ; pt != dbrootConfigList.end() ;) - { - cout << oam.itoa(*pt); - pt++; - if (pt != dbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getPmDbrootConfig Failed : " << e.what() << endl; - } - } - break; - - case 20: // getDbrootPmConfig - parameters dbroot id - { - string dbrootID; - if (arguments[1] == "") { - cout << endl; - string prompt = "Enter the DBRoot ID"; - dbrootID = dataPrompt(prompt); - } - else - dbrootID = arguments[1]; - - try - { - int pmID; - oam.getDbrootPmConfig(atoi(dbrootID.c_str()), pmID); - - cout << endl << " DBRoot ID " << dbrootID << " is assigned to 'pm" << pmID << "'" << endl; - } - catch (exception& e) - { - cout << endl << "**** getDbrootPmConfig Failed : " << e.what() << endl; - } - } - break; - - case 21: // getSystemDbrootConfig - { - cout << endl << "System DBroot Configuration" << endl << endl; - - try - { - DBRootConfigList dbrootConfigList; - oam.getSystemDbrootConfig(dbrootConfigList); - - cout << "System DBRoot IDs = "; - DBRootConfigList::iterator pt = dbrootConfigList.begin(); - for( ; pt != dbrootConfigList.end() ;) - { - cout << oam.itoa(*pt); - pt++; - if (pt != dbrootConfigList.end()) - cout << ", "; - } - cout << endl; - } - catch (exception& e) - { - cout << endl << "**** getSystemDbrootConfig Failed : " << e.what() << endl; - } - } - break; - - case 22: // checkDBFunctional - { - try { - oam.checkDBFunctional(false); - cout << endl << " checkDBFunctional Successful" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** checkDBFunctional Failed : " << e.what() << endl; - cout << endl << " can check UM /tmp/dbfunctional.log for possible additional information" << endl << endl; - } - catch(...) - { - cout << endl << " checkDBFunctional Failed: check UM /tmp/dbfunctional.log" << endl << endl; - } - } - break; - - case 23: // getsystemreadflags - { - - cout << " Print the DB System Flags. 1 = set and ready, 0 = clear and not ready" << endl; - - BRM::DBRM dbrm; - - cout << endl; - try { - cout << "getSystemQueryReady = " << dbrm.getSystemQueryReady() << endl; - } - catch(...) - {} - - try { - cout << "getSystemReady = " << dbrm.getSystemReady() << endl; - } - catch(...) - {} - - try { - cout << "getSystemSuspended = " << dbrm.getSystemSuspended() << endl; - } - catch(...) - {} - } - break; - - case 24: // setsystemqueryready - { - BRM::DBRM dbrm; - - string set = "0"; - if (arguments[1] == "") { - cout << endl; - string prompt = "Enter 1 for set and 0 for clear"; - set = dataPrompt(prompt); - } - else - set = arguments[1]; - - bool flag = true; - if ( set == "0" ) - flag = false; - - cout << endl; - try { - cout << "getSystemQueryReady = " << dbrm.getSystemQueryReady() << endl; - } - catch(...) - {} - - cout << endl; - try { - dbrm.setSystemQueryReady(flag); - cout << "setSystemQueryReady = " << flag << endl; - } - catch(...) - {} - - cout << endl; - try { - cout << "getSystemQueryReady = " << dbrm.getSystemQueryReady() << endl; - } - catch(...) - {} - } - - default: // shouldn't get here, but... - return 1; - - } // end of switch - - return 0; -} - -/****************************************************************************************** - * @brief getFlags - * - * purpose: get and convert Graceful and Ack flags - * - ******************************************************************************************/ -void getFlags(const string* arguments, GRACEFUL_FLAG& gracefulTemp, ACK_FLAG& ackTemp, oam::CC_SUSPEND_ANSWER& suspendAnswer, bool& bNeedsConfirm, string* password) -{ - gracefulTemp = GRACEFUL; // default - ackTemp = ACK_YES; // default - suspendAnswer = CANCEL; - bNeedsConfirm = true; - for( int i = 1; i < ArgNum; i++) - { - if (strcasecmp(arguments[i].c_str(), "Y") == 0) - bNeedsConfirm = false; - else - if (strcasecmp(arguments[i].c_str(), "N") == 0) - bNeedsConfirm = true; - else - if (strcasecmp(arguments[i].c_str(), "GRACEFUL") == 0) - gracefulTemp = oam::GRACEFUL; - else - if (strcasecmp(arguments[i].c_str(), "FORCEFUL") == 0) - gracefulTemp = FORCEFUL; - else - if (strcasecmp(arguments[i].c_str(), "INSTALL") == 0) - gracefulTemp = INSTALL; - else - if (strcasecmp(arguments[i].c_str(), "ACK_YES") == 0 || strcasecmp(arguments[i].c_str(), "YES_ACK") == 0) - ackTemp = ACK_YES; - else - if (strcasecmp(arguments[i].c_str(), "ACK_NO") == 0 || strcasecmp(arguments[i].c_str(), "NO_ACK") == 0) - ackTemp = ACK_NO; - else - if (strcasecmp(arguments[i].c_str(), "WAIT") == 0) - suspendAnswer = WAIT; - else - if (strcasecmp(arguments[i].c_str(), "ROLLBACK") == 0) - suspendAnswer = ROLLBACK; - else - if (strcasecmp(arguments[i].c_str(), "FORCE") == 0) - suspendAnswer = FORCE; - else - if (password && arguments[i].length() > 0) - *password = arguments[i]; - } -} - - -/****************************************************************************************** - * @brief confirmPrompt - * - * purpose: Confirmation prompt - * - ******************************************************************************************/ -int confirmPrompt(std::string warningCommand) -{ - char* pcommand = 0; - char *p; - string argument = "n"; - - while(true) - { - // read input - if (warningCommand.size() > 0) - { - cout << endl << warningCommand << endl; - } - pcommand = readline(" Do you want to proceed: (y or n) [n]: "); - - if (pcommand && *pcommand) { - p = strtok(pcommand," "); - argument = p; - free(pcommand); - pcommand = 0; - } - - if (pcommand) { - free(pcommand); - pcommand = 0; - } - - // covert argument into lowercase - transform (argument.begin(), argument.end(), argument.begin(), to_lower()); - - if( argument == "y") - return 0; - else if( argument == "n") - return 1; - } -} - -/****************************************************************************************** - * @brief dataPrompt - * - * purpose: Prompt for additional data - * - ******************************************************************************************/ -std::string dataPrompt(std::string promptCommand) -{ - char data[CmdSize]; - char* pdata = data; - char *pd; - string argument; - - while(true) - { - // read input - cout << promptCommand << endl; - pdata = readline(" Please enter: "); - - if (!pdata) // user hit -D - pdata = strdup("exit"); - - else if (!*pdata) - // just an enter-key was entered, ignore and reprompt - continue; - - pd = pdata; - argument = pd; - - return argument; - } -} - - -/****************************************************************************************** - * @brief writeLog for command - * - * purpose: write command to the log file - * - ******************************************************************************************/ -void writeLog(string command) -{ - Oam oam; - - //filter off password on reboot commands - - logFile << oam.getCurrentTime() << ": " << command << endl; - logFile.flush(); - return; -} - -/****************************************************************************************** - * @brief printAlarmSummary - * - * purpose: get active alarms and produce a summary - * - ******************************************************************************************/ -void printAlarmSummary() -{ - AlarmList alarmList; - Oam oam; - try { - oam.getActiveAlarms(alarmList); - } - catch(...) - { - return; - } - - int critical = 0, major = 0, minor = 0, warning = 0, info = 0; - AlarmList :: iterator i; - for (i = alarmList.begin(); i != alarmList.end(); ++i) - { - switch (i->second.getSeverity()) - { - case CRITICAL: - ++critical; - break; - case MAJOR: - ++major; - break; - case MINOR: - ++minor; - break; - case WARNING: - ++warning; - break; - case INFORMATIONAL: - ++info; - break; - } - } - cout << endl << "Active Alarm Counts: "; - cout << "Critical = " << critical; - cout << ", Major = " << major; - cout << ", Minor = " << minor; - cout << ", Warning = " << warning; - cout << ", Info = " << info; - cout << endl; -} - -/****************************************************************************************** - * @brief printCriticalAlarms - * - * purpose: get active Critical alarms - * - ******************************************************************************************/ -void printCriticalAlarms() -{ - AlarmList alarmList; - Oam oam; - try { - oam.getActiveAlarms(alarmList); - } - catch(...) - { - return; - } - - cout << endl << "Critical Active Alarms:" << endl << endl; - - AlarmList :: iterator i; - for (i = alarmList.begin(); i != alarmList.end(); ++i) - { - switch (i->second.getSeverity()) - { - case CRITICAL: - cout << "AlarmID = " << i->second.getAlarmID() << endl; - cout << "Brief Description = " << i->second.getDesc() << endl; - cout << "Alarm Severity = "; - cout << "CRITICAL" << endl; - cout << "Time Issued = " << i->second.getTimestamp() << endl; - cout << "Reporting Module = " << i->second.getSname() << endl; - cout << "Reporting Process = " << i->second.getPname() << endl; - cout << "Reported Device = " << i->second.getComponentID() << endl << endl; - break; - case MAJOR: - case MINOR: - case WARNING: - case INFORMATIONAL: - break; - } - } -} - -/****************************************************************************************** - * @brief printSystemStatus - * - * purpose: get and Display System and Module Statuses - * - ******************************************************************************************/ -void printSystemStatus() -{ - SystemStatus systemstatus; - Oam oam; - BRM::DBRM dbrm(true); - - cout << endl << "System " << systemName << endl << endl; - cout << "System and Module statuses" << endl << endl; - cout << "Component Status Last Status Change" << endl; - cout << "------------ -------------------------- ------------------------" << endl; - - try - { - oam.getSystemStatus(systemstatus, false); - cout << "System "; - cout.setf(ios::left); - cout.width(29); - int state = systemstatus.SystemOpState; - string extraInfo = " "; - bool bRollback = false; - bool bForce = false; - - if (dbrm.isDBRMReady()) - { - if (dbrm.getSystemSuspended() > 0) - { - extraInfo = " WRITE SUSPENDED"; - } - else - if (dbrm.getSystemSuspendPending(bRollback) > 0) - { - extraInfo = " WRITE SUSPEND PENDING"; - } - else - if (dbrm.getSystemShutdownPending(bRollback, bForce) > 0) - { - extraInfo = " SHUTDOWN PENDING"; - } - } - printState(state, extraInfo); - cout.width(24); - string stime = systemstatus.StateChangeDate; - stime = stime.substr (0,24); - cout << stime << endl << endl; - - for( unsigned int i = 0 ; i < systemstatus.systemmodulestatus.modulestatus.size(); i++) - { - if( systemstatus.systemmodulestatus.modulestatus[i].Module.empty() ) - // end of list - break; - - cout << "Module "; - cout.setf(ios::left); - cout.width(7); - cout << systemstatus.systemmodulestatus.modulestatus[i].Module; - cout.width(29); - state = systemstatus.systemmodulestatus.modulestatus[i].ModuleOpState; - - // get NIC functional state (degraded or not) - bool degraded = false; - try { - int state; - oam.getModuleStatus(systemstatus.systemmodulestatus.modulestatus[i].Module, state, degraded); - } - catch (...) - {} - - string nicFun = " "; - if (degraded) - nicFun = "/" + DEGRADEDSTATE; - - printState(state, nicFun); - - cout.width(24); - string stime = systemstatus.systemmodulestatus.modulestatus[i].StateChangeDate ; - stime = stime.substr (0,24); - cout << stime << endl; - } - cout << endl; - - if ( systemstatus.systemmodulestatus.modulestatus.size() > 1) { - // get and display Parent OAM Module - cout << "Active Parent OAM Performance Module is '" << getParentOAMModule() << "'" << endl; - - //display Primary UM Module - string PrimaryUMModuleName; - try { - oam.getSystemConfig("PrimaryUMModuleName", PrimaryUMModuleName); - } - catch(...) {} - - if ( serverInstallType != oam::INSTALL_COMBINE_DM_UM_PM ) - { - ModuleTypeConfig moduletypeconfig; - try{ - oam.getSystemConfig("um", moduletypeconfig); - } - catch(...) - {} - - if ( moduletypeconfig.ModuleCount > 1 ) - { - if ( PrimaryUMModuleName != oam::UnassignedName ) - cout << "Primary Front-End MySQL Module is '" << PrimaryUMModuleName << "'" << endl; - } - } - else - { - if ( PrimaryUMModuleName != oam::UnassignedName ) - cout << "Primary Front-End MySQL Module is '" << PrimaryUMModuleName << "'" << endl; - } - } - - //display local Query / PMwithUM feature, if enabled - string PMwithUM; - try { - oam.getSystemConfig("PMwithUM", PMwithUM); - } - catch(...) {} - - if ( PMwithUM == "y" ) - cout << "Local Query Feature is enabled" << endl; - - //display MySQL replication feature, if enabled - string MySQLRep; - try { - oam.getSystemConfig("MySQLRep", MySQLRep); - } - catch(...) {} - - if ( MySQLRep == "y" ) - cout << "MySQL Replication Feature is enabled" << endl << endl; - } - catch (exception& e) - { - cout << endl << "**** printSystemStatus Failed = " << e.what() << endl; - throw runtime_error(""); - } -} - -/****************************************************************************************** - * @brief printProcessStatus - * - * purpose: get and Display Process Statuses - * - ******************************************************************************************/ -void printProcessStatus(std::string port) -{ - SystemProcessStatus systemprocessstatus; - ProcessStatus processstatus; - ModuleTypeConfig moduletypeconfig; - Oam oam; - BRM::DBRM dbrm(true); - - int state; - string extraInfo = " "; - bool bRollback = false; - bool bForce = false; - bool bSuspend = false; - if (dbrm.isDBRMReady()) - { - if (dbrm.getSystemSuspended() > 0) - { - bSuspend = true; - extraInfo = "WRITE_SUSPEND"; - } - else - if (dbrm.getSystemSuspendPending(bRollback) > 0) - { - bSuspend = true; - if (bRollback) - { - extraInfo = "ROLLBACK"; - } - else - { - extraInfo = "SUSPEND_PENDING"; - } - } - else - if (dbrm.getSystemShutdownPending(bRollback, bForce) > 0) - { - bSuspend = true; - if (bRollback) - { - extraInfo = "ROLLBACK"; - } - else - { - extraInfo = "SHUTDOWN_PENDING"; - } - } - } - - cout << endl << "Calpont Process statuses" << endl << endl; - cout << "Process Module Status Last Status Change Process ID" << endl; - cout << "------------------ ------ --------------- ------------------------ ----------" << endl; - try - { - oam.getProcessStatus(systemprocessstatus, port); - - string prevModule = systemprocessstatus.processstatus[0].Module; - - for( unsigned int i = 0 ; i < systemprocessstatus.processstatus.size(); i++) - { - if( prevModule != systemprocessstatus.processstatus[i].Module) - cout << endl; //added a space line between different modules - - cout.setf(ios::left); - cout.width(20); - cout << systemprocessstatus.processstatus[i].ProcessName; - cout.width(10); - cout << systemprocessstatus.processstatus[i].Module; - cout.width(18); - state = systemprocessstatus.processstatus[i].ProcessOpState; - // For these processes, if state is ACTIVE and we're in write - // suspend, then we want to display the extra data instead of state. - // Otherwise, we ignore extra data and display state. - if (state == ACTIVE && bSuspend && - ( systemprocessstatus.processstatus[i].ProcessName == "DMLProc" - || systemprocessstatus.processstatus[i].ProcessName == "DDLProc" - || systemprocessstatus.processstatus[i].ProcessName == "WriteEngineServer")) - { - printState(LEAVE_BLANK, extraInfo); - } - else - { - state = systemprocessstatus.processstatus[i].ProcessOpState; - printState(state, " "); - } - cout.width(24); - string stime = systemprocessstatus.processstatus[i].StateChangeDate ; - stime = stime.substr (0,24); - cout << stime; - if ( state == COLD_STANDBY ) { - cout << endl; - continue; - } - else - { - cout.setf(ios::right); - cout.width(12); - if ( systemprocessstatus.processstatus[i].ProcessID != 0 ) - cout << systemprocessstatus.processstatus[i].ProcessID << endl; - else - cout << endl; - } - cout.unsetf(ios::right); - - prevModule = systemprocessstatus.processstatus[i].Module; - - } - } - catch (exception& e) - { - cout << endl << "**** printProcessStatus Failed = " << e.what() << endl; - throw runtime_error(""); - } -} - -/****************************************************************************************** - * @brief printModuleCpuUsers - * - * purpose: get and Display Module TOP CPU users - * - ******************************************************************************************/ -void printModuleCpuUsers(TopProcessCpuUsers topprocesscpuusers) -{ - cout << "Module '" + topprocesscpuusers.ModuleName + "' Top CPU Users" << endl << endl; - cout << "Process CPU Usage %" << endl; - cout << "----------------- -----------" << endl; - - for( unsigned int i = 0 ; i < topprocesscpuusers.processcpuuser.size(); i++) - { - cout.setf(ios::left); - cout.width(25); - cout << topprocesscpuusers.processcpuuser[i].ProcessName; - cout.width(10); - cout << topprocesscpuusers.processcpuuser[i].CpuUsage << endl; - } - cout << endl; -} - -/****************************************************************************************** - * @brief printModuleCpu - * - * purpose: get and Display Module CPU Usage - * - ******************************************************************************************/ -void printModuleCpu(ModuleCpu modulecpu) -{ - Oam oam; - - cout << endl << "Module '" + modulecpu.ModuleName + "' CPU Usage % = " + oam.itoa(modulecpu.CpuUsage) << endl; -} - -/****************************************************************************************** - * @brief printModuleMemoryUsers - * - * purpose: get and Display Module TOP Memory users - * - ******************************************************************************************/ -void printModuleMemoryUsers(TopProcessMemoryUsers topprocessmemoryusers) -{ - cout << "Module '" + topprocessmemoryusers.ModuleName + "' Top Memory Users (in bytes)" << endl << endl; - cout << "Process Memory Used Memory Usage %" << endl; - cout << "----------------- ----------- --------------" << endl; - - for( unsigned int i = 0 ; i < topprocessmemoryusers.processmemoryuser.size(); i++) - { - cout.setf(ios::left); - cout.width(20); - cout << topprocessmemoryusers.processmemoryuser[i].ProcessName; - cout.width(19); - cout << topprocessmemoryusers.processmemoryuser[i].MemoryUsed; - cout.width(3); - cout << topprocessmemoryusers.processmemoryuser[i].MemoryUsage << endl; - } - cout << endl; -} - -/****************************************************************************************** - * @brief printModuleMemory - * - * purpose: get and Display Module Memory Usage - * - ******************************************************************************************/ -void printModuleMemory(ModuleMemory modulememory) -{ - Oam oam; - cout.setf(ios::left); - cout.width(8); - cout << modulememory.ModuleName; - cout.width(11); - cout << oam.itoa(modulememory.MemoryTotal); - cout.width(10); - cout << oam.itoa(modulememory.MemoryUsed); - cout.width(13); - cout << oam.itoa(modulememory.cache); - cout.width(9); - cout << oam.itoa(modulememory.MemoryUsage); - cout.width(12); - cout << oam.itoa(modulememory.SwapTotal); - cout.width(16); - cout << oam.itoa(modulememory.SwapUsed); - cout.width(7); - cout << oam.itoa(modulememory.SwapUsage); - cout << endl; -} - -/****************************************************************************************** - * @brief printModuleDisk - * - * purpose: get and Display Module disk usage - * - ******************************************************************************************/ -void printModuleDisk(ModuleDisk moduledisk) -{ - Oam oam; - - cout << "Module '" + moduledisk.ModuleName + "' Disk Usage (in 1K blocks)" << endl << endl; - cout << "Mount Point Total Blocks Used Blocks Usage %" << endl; - cout << "----------------------------- ------------ ------------ -------" << endl; - - string etcdir = startup::StartUp::installDir() + "/etc"; - for( unsigned int i = 0 ; i < moduledisk.diskusage.size(); i++) - { - //skip mounts to other server disk - if ( moduledisk.diskusage[i].DeviceName.find("/mnt", 0) == string::npos && - moduledisk.diskusage[i].DeviceName.find(etcdir, 0) == string::npos ) { - cout.setf(ios::left); - cout.width(31); - cout << moduledisk.diskusage[i].DeviceName; - cout.width(14); - cout << moduledisk.diskusage[i].TotalBlocks; - cout.width(17); - cout << moduledisk.diskusage[i].UsedBlocks; - cout.width(2); - cout << moduledisk.diskusage[i].DiskUsage << endl; - } - } - cout << endl; -} - -/****************************************************************************************** - * @brief printModuleResources - * - * purpose: get and Display Module resource usage - * - ******************************************************************************************/ -void printModuleResources(TopProcessCpuUsers topprocesscpuusers, ModuleCpu modulecpu, TopProcessMemoryUsers topprocessmemoryusers, ModuleMemory modulememory, ModuleDisk moduledisk) -{ - Oam oam; - string etcdir = startup::StartUp::installDir() + "/etc"; - - cout << endl << "Module '" + topprocesscpuusers.ModuleName + "' Resource Usage" << endl << endl; - - cout << "CPU: " + oam.itoa(modulecpu.CpuUsage) << "% Usage" << endl; - - cout << "Mem: " << oam.itoa(modulememory.MemoryTotal) << "k total, " << oam.itoa(modulememory.MemoryUsed); - cout << "k used, " << oam.itoa(modulememory.cache) << "k cache, " << oam.itoa(modulememory.MemoryUsage) << "% Usage" << endl; - cout << "Swap: " << oam.itoa(modulememory.SwapTotal) << " k total, " << oam.itoa(modulememory.SwapUsed); - cout << "k used, " << oam.itoa(modulememory.SwapUsage) << "% Usage" << endl; - - cout << "Top CPU Process Users: "; - - for( unsigned int i = 0 ; i < topprocesscpuusers.processcpuuser.size(); i++) - { - cout << topprocesscpuusers.processcpuuser[i].ProcessName << " "; - cout << topprocesscpuusers.processcpuuser[i].CpuUsage; - if ( i+1 != topprocesscpuusers.processcpuuser.size() ) - cout << "%, "; - else - cout << "%"; - } - cout << endl; - - cout << "Top Memory Process Users: "; - - for( unsigned int i = 0 ; i < topprocessmemoryusers.processmemoryuser.size(); i++) - { - cout << topprocessmemoryusers.processmemoryuser[i].ProcessName << " "; - cout << topprocessmemoryusers.processmemoryuser[i].MemoryUsage; - if ( i+1 != topprocessmemoryusers.processmemoryuser.size() ) - cout << "%, "; - else - cout << "%"; - } - cout << endl; - - cout << "Disk Usage: "; - - for( unsigned int i = 0 ; i < moduledisk.diskusage.size(); i++) - { - //skip mounts to other server disk - if ( moduledisk.diskusage[i].DeviceName.find("/mnt", 0) == string::npos && - moduledisk.diskusage[i].DeviceName.find(etcdir, 0) == string::npos ) { - cout << moduledisk.diskusage[i].DeviceName << " "; - cout << moduledisk.diskusage[i].DiskUsage; - if ( i+1 != moduledisk.diskusage.size() ) - cout << "%, "; - else - cout << "%"; - } - } - cout << endl << endl; -} - -/****************************************************************************************** - * @brief printModuleResources - * - * purpose: get and Display Module resource usage - * - ******************************************************************************************/ -void printState(int state, std::string addInfo) -{ - switch (state) { - case MAN_OFFLINE: - cout << MANOFFLINE + addInfo; - break; - case AUTO_OFFLINE: - cout << AUTOOFFLINE + addInfo; - break; - case MAN_INIT: - cout << MANINIT + addInfo; - break; - case AUTO_INIT: - cout << AUTOINIT + addInfo; - break; - case ACTIVE: - cout << ACTIVESTATE + addInfo; - break; - case LEAVE_BLANK: - cout << addInfo; - break; - case STANDBY: - cout << STANDBYSTATE + addInfo; - break; - case FAILED: - cout << FAILEDSTATE + addInfo; - break; - case UP: - cout << UPSTATE + addInfo; - break; - case DOWN: - cout << DOWNSTATE + addInfo; - break; - case COLD_STANDBY: - cout << COLDSTANDBYSTATE + addInfo; - break; - case INITIAL: - cout << INITIALSTATE + addInfo; - break; - case MAN_DISABLED: - cout << MANDISABLEDSTATE + addInfo; - break; - case AUTO_DISABLED: - cout << AUTODISABLEDSTATE + addInfo; - break; - case STANDBY_INIT: - cout << STANDBYINIT + addInfo; - break; - case BUSY_INIT: - cout << BUSYINIT + addInfo; - break; - case DEGRADED: - cout << DEGRADEDSTATE + addInfo; - break; - default: - cout << INITIALSTATE + addInfo; - break; - } -} - -/****************************************************************************************** - * @brief checkPromptThread - * - * purpose: check for exit out of repeat command - * - ******************************************************************************************/ -static void checkPromptThread() -{ - char* pcommand = 0; - - while(true) - { - // check input - pcommand = readline(""); - - if (!pcommand) { // user hit -D - repeatStop = true; - break; - } - free(pcommand); - pcommand = 0; - } - pthread_exit(0); - return; -} - -/****************************************************************************************** - * @brief getParentOAMModule - * - * purpose: get Parent OAm Module name - * - ******************************************************************************************/ -std::string getParentOAMModule() -{ - Oam oam; - - // Get Parent OAM module Name - try{ - string parentOAMModule; - oam.getSystemConfig("ParentOAMModuleName", parentOAMModule); - return parentOAMModule; - } - catch(...) - { - cout << endl << "**** Failed : Failed to read Parent OAM Module Name" << endl; - exit(-1); - } -} - -/****************************************************************************************** - * @brief checkForDisabledModules - * - * purpose: Chcek and report any modules in a disabled state - * - ******************************************************************************************/ -bool checkForDisabledModules() -{ - - SystemModuleTypeConfig systemmoduletypeconfig; - Oam oam; - - try{ - oam.getSystemConfig(systemmoduletypeconfig); - } - catch(...) - { - return false; - } - - bool found = false; - bool dbroot = false; - for( unsigned int i = 0 ; i < systemmoduletypeconfig.moduletypeconfig.size(); i++) - { - int moduleCount = systemmoduletypeconfig.moduletypeconfig[i].ModuleCount; - if( moduleCount == 0) - continue; - - string moduleType = systemmoduletypeconfig.moduletypeconfig[i].ModuleType; - - DeviceNetworkList::iterator pt = systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.begin(); - for ( ; pt != systemmoduletypeconfig.moduletypeconfig[i].ModuleNetworkList.end(); pt++) - { - string moduleName = (*pt).DeviceName; - - // report DISABLED modules - try{ - int opState; - bool degraded; - oam.getModuleStatus(moduleName, opState, degraded); - - if (opState == oam::MAN_DISABLED || opState == oam::AUTO_DISABLED) { - if (!found) { - cout << " NOTE: These module(s) are DISABLED: "; - found = true; - } - cout << moduleName << " "; - - if ( moduleType == "um" ) - continue; - - //check if module has any dbroots assigned to it - string PMID = moduleName.substr(MAX_MODULE_TYPE_SIZE,MAX_MODULE_ID_SIZE);; - DBRootConfigList dbrootConfigList; - try - { - oam.getPmDbrootConfig(atoi(PMID.c_str()), dbrootConfigList); - - if ( dbrootConfigList.size() != 0 ) - dbroot = true; - } - catch (exception& e) - {} - } - } - catch(...) - {} - } - } - - if(found) - cout << endl << endl; - - if(dbroot) - return false; - - return true; -} - -/** @brief Ask the user for cancel/wait/rollback/force - * - * When a Shutdown, stop, restart or suspend operation is - * requested but there are active transactions of some sort, - * we ask the user what to do. - */ -CC_SUSPEND_ANSWER AskSuspendQuestion(int CmdID) -{ - char* szAnswer = 0; - char *p; - string argument = "cancel"; - - const char* szCommand = "Unknown"; - switch (CmdID) - { - case 16: - szCommand = "stop"; - break; - case 17: - szCommand = "shutdown"; - break; - case 19: - szCommand = "restart"; - break; - case 28: - szCommand = "switch parent oam"; - break; - case 32: - szCommand = "suspend"; - break; - default: - return CANCEL; - break; - } - cout << "Your options are:" << endl - << " Cancel -- Cancel the " << szCommand << " request" << endl - << " Wait -- Wait for write operations to end and then " << szCommand << endl; -// << " Rollback -- Rollback all transactions and then " << szCommand << endl; - if (CmdID != 28 && CmdID != 32) - { - cout << " Force -- Force a " << szCommand << endl; - } - - while(true) - { - argument = "cancel"; - // read input - szAnswer = readline("What would you like to do: [Cancel]: "); - - if (szAnswer && *szAnswer) - { - p = strtok(szAnswer," "); - argument = p; - free(szAnswer); - szAnswer = 0; - } - - // In case they just hit return. - if (szAnswer) - { - free(szAnswer); - szAnswer = 0; - } - - // convert argument into lowercase - transform(argument.begin(), argument.end(), argument.begin(), to_lower()); - - if( argument == "cancel") - { - return CANCEL; - } - else if( argument == "wait") - { - return WAIT; - } -// else if( argument == "rollback") -// { -// return ROLLBACK; -// } - else if( argument == "force" && (CmdID == 16 || CmdID == 17 || CmdID == 19)) - { - return FORCE; - } - else - { - cout << argument << " is an invalid response" << endl; - } - } -} - -// vim:ts=4 sw=4: - diff --git a/oamapps/mcsadmin/mcadmin.d.20892 b/oamapps/mcsadmin/mcadmin.d.20892 deleted file mode 100644 index e69de29bb..000000000 diff --git a/oamapps/mcsadmin/mcadmin.d.21522 b/oamapps/mcsadmin/mcadmin.d.21522 deleted file mode 100644 index e69de29bb..000000000 diff --git a/oamapps/mcsadmin/mcadmin.h~ b/oamapps/mcsadmin/mcadmin.h~ deleted file mode 100644 index ec4caff05..000000000 --- a/oamapps/mcsadmin/mcadmin.h~ +++ /dev/null @@ -1,135 +0,0 @@ -/* Copyright (C) 2014 InfiniDB, Inc. - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; version 2 of - the License. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, - MA 02110-1301, USA. */ - -/****************************************************************************************** - * $Id: calpontConsole.h 3071 2013-04-04 18:45:53Z rdempsey $ - * - ******************************************************************************************/ -/** - * @file - */ -#ifndef CALPONTCONSOLE_H -#define CALPONTCONSOLE_H - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "liboamcpp.h" -#include "configcpp.h" -#include "snmpmanager.h" -#include "snmpglobal.h" -#include "calpontsystemcatalog.h" -#include "brmtypes.h" - - -const int CmdSize = 80; -const int ArgNum = 10; -const int DescNumMax = 10; -const int cmdNum = 68; - -const std::string DEFAULT_LOG_FILE = "/var/log/Calpont/uiCommands.log"; -std::ofstream logFile; - -/** - * write the command to the log file - */ -void writeLog(std::string command); - -/** @brief location of the Process Configuration file - */ -const std::string ConsoleCmdsFile= "ConsoleCmds.xml"; - -void getFlags(const std::string* arguments, oam::GRACEFUL_FLAG& gracefulTemp, oam::ACK_FLAG& ackTemp, oam::CC_SUSPEND_ANSWER& suspendAnswer, bool& bNeedsConfirm, std::string* password = NULL); -int confirmPrompt(std::string warningCommand); -std::string dataPrompt(std::string promptCommand); -int processCommand(std::string*); -int ProcessSupportCommand(int CommandID, std::string arguments[]); -void printAlarmSummary(); -void printCriticalAlarms(); -void checkRepeat(std::string*, int); -void printSystemStatus(); -void printProcessStatus(std::string port = "ProcStatusControl"); -void printModuleCpuUsers(oam::TopProcessCpuUsers topprocesscpuusers); -void printModuleCpu(oam::ModuleCpu modulecpu); -void printModuleMemoryUsers(oam::TopProcessMemoryUsers topprocessmemoryusers); -void printModuleMemory(oam::ModuleMemory modulememory); -void printModuleDisk(oam::ModuleDisk moduledisk); -void printModuleResources(oam::TopProcessCpuUsers topprocesscpuusers, oam::ModuleCpu modulecpu, oam::TopProcessMemoryUsers topprocessmemoryusers, oam::ModuleMemory modulememory, oam::ModuleDisk moduledisk); -void printState(int state, std::string addInfo); -std::string getParentOAMModule(); -bool checkForDisabledModules(); -oam::CC_SUSPEND_ANSWER AskSuspendQuestion(int CmdID); - - - -class to_lower -{ - public: - char operator() (char c) const // notice the return type - { - return tolower(c); - } -}; - -/** @brief Hidden Support commands in lower-case -*/ -const std::string supportCmds[] = { "helpsupport", - "stopprocess", - "startprocess", - "restartprocess", - "killpid", - "rebootsystem", - "rebootnode", - "stopdbrmprocess", - "startdbrmprocess", - "restartdbrmprocess", - "setsystemstartupstate", - "stopprimprocs", - "startprimprocs", - "restartprimprocs", - "stopexemgrs", - "startexemgrs", - "restartexemgrs", - "getprocessstatusstandby", - "distributeconfigfile", - "getpmdbrootconfig", - "getdbrootpmconfig", - "getsystemdbrootconfig", - "checkdbfunctional", - "getsystemreadflags", - "setsystemqueryready", - "" -}; - - -#endif diff --git a/oamapps/mcsadmin/mcsadmin.d b/oamapps/mcsadmin/mcsadmin.d deleted file mode 100644 index 7be05f777..000000000 --- a/oamapps/mcsadmin/mcsadmin.d +++ /dev/null @@ -1,1049 +0,0 @@ -mcsadmin.o mcsadmin.d : mcsadmin.cpp mcsadmin.h \ - /home/dhill/InfiniDB_MariaDB/export/include/liboamcpp.h \ - /home/dhill/InfiniDB_MariaDB/export/include/bytestream.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/shared_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/shared_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/user.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/select_compiler_config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/compiler/gcc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/select_stdlib_config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/no_tr1/utility.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/stdlib/libstdcpp3.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/select_platform_config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/platform/linux.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/posix_features.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/suffix.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/no_tr1/memory.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/assert.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/checked_delete.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/throw_exception.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/shared_count.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/bad_weak_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/sp_counted_base.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/sp_has_sync.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/sp_typeinfo.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/sp_counted_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/sp_convertible.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/sp_nullptr_t.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/spinlock_pool.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/spinlock.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/spinlock_sync.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/yield_k.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/memory_order.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/detail/operator_bool.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/version.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/uuid/uuid.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/cstdint.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_pod.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_void.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/bool_trait_def.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/template_arity_spec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/int.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/int_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/adl_barrier.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/adl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/msvc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/intel.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/gcc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/workaround.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/nttp_decl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/nttp.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/integral_wrapper.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/integral_c_tag.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/static_constant.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/static_cast.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/cat.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/config/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/template_arity_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessor/params.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/preprocessor.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/comma_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/punctuation/comma_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/control/if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/control/iif.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/logical/bool.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/facilities/empty.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/punctuation/comma.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repeat.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/repeat.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/debug/error.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/detail/auto_rec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/tuple/eat.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/inc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/arithmetic/inc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/lambda.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/ttp.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/ctps.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/overload_resolution.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/integral_constant.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/bool.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/bool_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/integral_c.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/integral_c_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/lambda_support.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/bool_trait_undef.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_scalar.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_arithmetic.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_integral.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_float.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/ice_or.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/intrinsics.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_same.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_reference.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_lvalue_reference.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_rvalue_reference.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/ice.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/yes_no_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/ice_and.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/ice_not.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/ice_eq.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_volatile.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/cv_traits_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_pointer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_member_pointer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_member_function_pointer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/is_mem_fun_pointer_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/remove_cv.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/broken_compiler_spec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/type_trait_def.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/type_trait_undef.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/exceptclasses.h \ - /home/dhill/InfiniDB_MariaDB/export/include/errorcodes.h \ - /home/dhill/InfiniDB_MariaDB/export/include/errorids.h \ - /home/dhill/InfiniDB_MariaDB/export/include/idberrorinfo.h \ - /home/dhill/InfiniDB_MariaDB/export/include/messageobj.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/any.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/remove_reference.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/decay.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_array.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_function.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/false_result.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/is_function_ptr_helper.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/remove_bounds.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/add_pointer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/eval_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/value_wknd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/integral.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/eti.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/na_spec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/lambda_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/void_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/na.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/na_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/lambda_arity_param.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/arity.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/dtp.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessor/enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessor/def_params_tail.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/limits/arity.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/logical/and.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/logical/bitand.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/identity.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/facilities/identity.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/empty.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/arithmetic/add.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/arithmetic/dec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/control/while.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/fold_left.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/detail/fold_left.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/control/expr_iif.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/adt.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/detail/is_binary.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/detail/check.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/logical/compl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/fold_right.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/detail/fold_right.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/reverse.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/control/detail/while.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/tuple/elem.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/facilities/overload.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/variadic/size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/tuple/rem.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/variadic/elem.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/arithmetic/sub.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/identity.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/add_reference.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_const.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/static_assert.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/enable_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/messagelog.h \ - /home/dhill/InfiniDB_MariaDB/export/include/loggingid.h \ - /home/dhill/InfiniDB_MariaDB/export/include/logger.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/thread.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/thread_only.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/platform.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/requires_threads.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/thread_data.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/auto_link.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/exceptions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/system/system_error.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/system/error_code.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/system/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/system/api_config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/operators.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/noncopyable.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/cerrno.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/abi_prefix.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/abi_suffix.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/lock_guard.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/delete.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/move.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_convertible.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_abstract.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/add_lvalue_reference.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/add_rvalue_reference.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/utility.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/detail/config_begin.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/core.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/detail/meta_utils.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/detail/config_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_trivial_destructor.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_nothrow_move_constructible.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_trivial_move_constructor.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_nothrow_copy.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_trivial_copy.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/declval.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_nothrow_move_assignable.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_trivial_move_assign.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_nothrow_assign.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_trivial_assign.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/lockable_wrapper.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/lock_options.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/lock_types.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/lockable_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_class.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/thread_time.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_clock.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/c_time.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/compiler_config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/locale_config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/microsec_time_clock.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/filetime_functions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/posix_time_types.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/ptime.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/posix_time_system.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/posix_time_config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/limits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/no_tr1/cmath.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_duration.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_defs.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/special_defs.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_resolution_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/int_adapter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/gregorian_types.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/year_month_day.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/period.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_calendar.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_weekday.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/constrained_value.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_base_of.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_base_and_derived.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_defs.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_day_of_year.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian_calendar.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian_calendar.ipp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_ymd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_day.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_year.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_month.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_duration.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_duration.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_duration_types.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_duration_types.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/greg_date.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/adjust_functors.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/wrapping_int.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_generators.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_clock_device.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_system_split.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_system_counted.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/date_duration_operators.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/posix_time_duration.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/time_period.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/dst_rules.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/time_point.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/duration.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/detail/static_assert.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/logical.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/or.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/use_preprocessed.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/nested_type_wknd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/include_preprocessed.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/compiler.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/stringize.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/or.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/and.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/and.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/not.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/ratio.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/detail/mpl/abs.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/detail/mpl/sign.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/detail/mpl/gcd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/largest_int.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/dependent_nttp.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/detail/mpl/lcm.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/integer_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/ratio_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ratio/detail/overflow_helpers.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/common_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/typeof/typeof.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/typeof/message.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/typeof/native.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_floating_point.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_unsigned.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/detail/is_evenly_divisible_by.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/mutex.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/mutex.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/xtime.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/conversion.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/conversion.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/timespec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/pthread_mutex_scoped_lock.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/system_clocks.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/detail/system.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/clock_string.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/chrono/ceil.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/condition_variable_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/cv_status.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/scoped_enum_emulation.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/enable_shared_from_this.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/enable_shared_from_this.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/weak_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/optional.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/optional/optional.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/alignment_of.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/size_t_trait_def.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/size_t.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/size_t_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/size_t_trait_undef.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_nothrow_constructor.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_trivial_constructor.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/type_with_alignment.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/for_each_i.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/for.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/detail/for.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/tuple/to_list.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/transform.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/list/append.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/reference_content.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/void.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/none.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/none_t.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/swap.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/addressof.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/compare_pointees.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/in_place_factory.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/detail/in_place_factory_prefix.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/punctuation/paren.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/iteration/iterate.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/array/elem.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/array/data.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/array/size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/slot/slot.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/slot/detail/def.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/enum_params.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/enum_binary_params.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/enum_trailing_params.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/iteration/detail/iter/forward1.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/iteration/detail/bounds/lower1.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/slot/detail/shared.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/iteration/detail/bounds/upper1.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/detail/in_place_factory_suffix.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/optional/optional_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/thread.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/thread_heap_alloc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/thread_heap_alloc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/make_tuple_indices.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/invoke.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/is_convertible.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/ref.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/bind.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mem_fn.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/mem_fn.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/get_pointer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/mem_fn_template.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/mem_fn_cc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/is_placeholder.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/arg.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/visit_each.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/storage.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/bind_template.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/bind_cc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/bind_mf_cc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/bind_mf2_cc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/bind/placeholders.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/io/ios_state.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/io_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash/hash.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash/hash_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash/detail/hash_float.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash/detail/float_functions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash/detail/limits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/integer/static_log2.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/integer_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash/extensions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/container_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/repeat_from_to.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/thread_interruption.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/v2/thread.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/condition_variable.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/condition_variable.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/thread_group.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/shared_mutex.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/shared_mutex.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/once.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/once_atomic.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/no_exceptions_support.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/atomic.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/detail/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/detail/platform.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/detail/gcc-x86.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/detail/base.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/detail/lockpool.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/detail/link.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/atomic/detail/type-classification.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_signed.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/recursive_mutex.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/pthread/recursive_mutex.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/tss.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/locks.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/lock_algorithms.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/barrier.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/iterate.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function/detail/prologue.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/no_tr1/functional.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function/function_base.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/integer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/composite_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_union.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function_equal.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function/function_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/enum_params.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function/detail/function_iterate.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function/detail/maybe_include.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/function/function_template.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/result_of.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/enum_shifted_params.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/facilities/intercept.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/has_xxx.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/type_wrapper.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/yes_no.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/arrays.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/has_xxx.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/msvc_typename.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/utility/detail/result_of_iterate.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/future.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/detail/async_func.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/tuple/tuple.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/tuple/detail/tuple_basic.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/cv_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/add_const.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/add_volatile.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/add_cv.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/remove_const.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/remove_volatile.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/function_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/exception_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/exception/detail/exception_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/scoped_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/scoped_ptr.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/is_fundamental.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/scoped_array.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/scoped_array.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/next_prior.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/thread/future_error_code.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/atomic_undef_macros.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/atomic_redef_macros.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/messageids.h \ - /home/dhill/InfiniDB_MariaDB/export/include/serializeable.h \ - /home/dhill/InfiniDB_MariaDB/export/include/configcpp.h \ - /usr/include/libxml2/libxml/parser.h \ - /usr/include/libxml2/libxml/xmlversion.h \ - /usr/include/libxml2/libxml/xmlexports.h \ - /usr/include/libxml2/libxml/tree.h \ - /usr/include/libxml2/libxml/xmlstring.h \ - /usr/include/libxml2/libxml/xmlregexp.h \ - /usr/include/libxml2/libxml/dict.h /usr/include/libxml2/libxml/hash.h \ - /usr/include/libxml2/libxml/valid.h \ - /usr/include/libxml2/libxml/xmlerror.h \ - /usr/include/libxml2/libxml/list.h \ - /usr/include/libxml2/libxml/xmlautomata.h \ - /usr/include/libxml2/libxml/entities.h \ - /usr/include/libxml2/libxml/encoding.h \ - /usr/include/libxml2/libxml/xmlIO.h \ - /usr/include/libxml2/libxml/globals.h /usr/include/libxml2/libxml/SAX.h \ - /usr/include/libxml2/libxml/xlink.h /usr/include/libxml2/libxml/SAX2.h \ - /usr/include/libxml2/libxml/xmlmemory.h \ - /usr/include/libxml2/libxml/threads.h \ - /home/dhill/InfiniDB_MariaDB/export/include/xmlparser.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/tuple/tuple.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/snmpmanager.h \ - /home/dhill/InfiniDB_MariaDB/export/include/alarm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/snmpglobal.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/net-snmp-config.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/system/linux.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/system/sysv.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/system/generic.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/machine/generic.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/net-snmp-includes.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/definitions.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/types.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/asn1.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_impl.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp-tc.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/utilities.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_client.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/system.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/tools.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/int64.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/mt_support.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_alarm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/callback.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/data_list.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/oid_stash.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/check_varbind.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/container.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/factory.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_logging.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/container_binary_array.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/container_list_ssll.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/container_iterator.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/container.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_assert.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/version.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/session_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_transport.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmpCallbackDomain.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmpUnixDomain.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmpUDPDomain.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmpTCPDomain.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/ucd_compat.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/pdu_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/mib_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/mib.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/parse.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/varbind_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/config_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/read_config.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/default_store.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_parse_args.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_enum.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/vacm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/output_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_debug.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/snmpv3_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmpv3.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/transform_oids.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/keytools.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/scapi.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/lcd_time.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmp_secmod.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmpv3-security-includes.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/library/snmpusm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/net-snmp-agent-includes.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/snmp_agent.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/snmp_vars.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/agent_handler.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/var_struct.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/agent_registry.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/ds_agent.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/agent_read_config.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/agent_trap.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/all_helpers.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/instance.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/baby_steps.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/scalar.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/scalar_group.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/watcher.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/multiplexer.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/null.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/debug_handler.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/cache_handler.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/old_api.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/read_only.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/row_merge.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/serialize.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/bulk_to_next.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/mode_end_call.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/table.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/table_data.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/table_dataset.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/table_iterator.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/table_container.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/mfd.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/mib_module_config.h \ - /home/dhill/InfiniDB_MariaDB/export/include/net-snmp/agent/agent_module_config.h \ - /home/dhill/InfiniDB_MariaDB/export/include/dbrm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/shared_array.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/smart_ptr/shared_array.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/brmtypes.h \ - /home/dhill/InfiniDB_MariaDB/export/include/logicalpartition.h \ - /home/dhill/InfiniDB_MariaDB/export/include/calpontsystemcatalog.h \ - /home/dhill/InfiniDB_MariaDB/export/include/we_typeext.h \ - /home/dhill/InfiniDB_MariaDB/export/include/columnresult.h \ - /home/dhill/InfiniDB_MariaDB/export/include/joblisttypes.h \ - /home/dhill/InfiniDB_MariaDB/export/include/messagequeue.h \ - /home/dhill/InfiniDB_MariaDB/export/include/serversocket.h \ - /home/dhill/InfiniDB_MariaDB/export/include/socket.h \ - /home/dhill/InfiniDB_MariaDB/export/include/iosocket.h \ - /home/dhill/InfiniDB_MariaDB/export/include/socketparms.h \ - /home/dhill/InfiniDB_MariaDB/export/include/extentmap.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/shared_memory_object.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/config_begin.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/workaround.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/config_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/creation_tags.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/exceptions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/errors.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/move.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/move/algorithm.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/interprocess_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/os_file_functions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/permissions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/make_unsigned.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/tmp_dir_helpers.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/mapped_region.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/utilities.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/min_max.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/type_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/transform_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/mpl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/containers/version_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/container/detail/version_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/container/detail/config_begin.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/container/detail/mpl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/container/detail/type_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/container/detail/config_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/container/detail/config_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/pointer_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/detail/config_begin.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/detail/workaround.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/detail/config_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/detail/memory_util.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/detail/mpl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/detail/preprocessor.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/iteration/local.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/punctuation/paren_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/control/expr_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/enum_trailing.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/repetition/enum_shifted.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/logical/not.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/intrusive/detail/has_member_function_callable_with.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/iteration/detail/local.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/shmkeys.h \ - /home/dhill/InfiniDB_MariaDB/export/include/mastersegmenttable.h \ - /home/dhill/InfiniDB_MariaDB/export/include/rwlock.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/sync/interprocess_semaphore.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/detail/posix_time_types_wrk.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/sync/posix/semaphore.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/sync/posix/semaphore_wrapper.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/interprocess/sync/posix/ptime_to_timespec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/posix_time.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/time_formatters.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/gregorian.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/formatters.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_formatting.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/iso_format.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/parse_format_base.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_format_simple.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/gregorian_io.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_facet.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/replace.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/iterator_range_core.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/iterator_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/iterator_facade.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/interoperable.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/detail/config_def.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/detail/config_undef.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/detail/facade_iterator_category.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/iterator_categories.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/placeholders.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/arg.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/arg_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/na_assert.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/assert.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/pp_counter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/arity_spec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/arg_typedef.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/arg.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/placeholders.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/indirect_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/remove_pointer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/detail/enable_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/always.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/apply.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/apply_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/apply_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/apply_wrap.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/has_apply.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/has_apply.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/msvc_never_true.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/apply_wrap.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/lambda.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/bind.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/bind_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/bind.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/bind_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/next.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/next_prior.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/common_name_wknd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/protect.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/bind.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/full_lambda.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/quote.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/has_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/bcc.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/quote.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/template_arity.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/template_arity.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/full_lambda.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/apply.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/functions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/begin.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/mutable_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/detail/extract_optional_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/const_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/detail/implementation_help.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/detail/common.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/detail/sfinae.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/size_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/difference_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/distance.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/empty.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/rbegin.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/reverse_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/reverse_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/iterator_adaptor.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/rend.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/algorithm/equal.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/concepts.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept_check.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept/assert.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept/detail/general.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept/detail/backward_compatibility.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept/detail/has_constraints.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/conversion_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept/usage.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept/detail/concept_def.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/seq/for_each_i.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/seq/seq.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/seq/elem.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/seq/size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/preprocessor/seq/enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/concept/detail/concept_undef.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/iterator_concepts.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/value_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/detail/misc_concept.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/detail/safe_bool.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/find_format.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/as_literal.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/iterator_range.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/iterator_range_io.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/range/detail/str_types.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/concept.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/find_format.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/find_format_store.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/replace_storage.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/sequence_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/yes_no_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/sequence.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/find_format_all.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/finder.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/constants.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/finder.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/compare.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/formatter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/formatter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/util.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/special_values_formatter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/period_formatter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/period_parser.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/string_parse_tree.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/lexical_cast.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/lcast_precision.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/array.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/swap.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/functional/hash_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/cast.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/converter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/conversion_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/conversion_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/meta.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/equal_to.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/comparison_op.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/numeric_op.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/numeric_cast.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/tag.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/has_tag.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/numeric_cast_utils.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/forwarding.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/msvc_eti_base.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/is_msvc_eti_arg.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/equal_to.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/int_float_mixture.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/int_float_mixture_enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/sign_mixture.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/sign_mixture_enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/udt_builtin_mixture.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/udt_builtin_mixture_enum.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/is_subranged.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/multiplies.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/times.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/arithmetic_op.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/times.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessor/default_params.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/less.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/less.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/converter_policies.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/converter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/bounds.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/bounds.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/numeric_cast_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/numeric_cast_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_common.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/numeric/conversion/detail/preprocessed/numeric_cast_traits_long_long.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_left_shift.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/detail/has_binary_operator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/type_traits/has_right_shift.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/special_functions/sign.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/tools/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/tools/user.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/fenv.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/special_functions/math_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/special_functions/detail/round_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/tools/promotion.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/policies/policy.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/limits/list.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/list20.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/list10.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/list0.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/long.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/long_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/push_front.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/push_front_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/item.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/tag.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/pop_front.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/pop_front_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/push_back.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/push_back_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/front.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/front_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/clear.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/clear_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/O1_size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/O1_size_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/size_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/empty.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/empty_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/begin_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/begin_end_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/iterator_tags.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/deref.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/msvc_type.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/lambda_spec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/include_preprocessed.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/preprocessed/plain/list10.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/list/aux_/preprocessed/plain/list20.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/list.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/contains.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/contains_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/sequence_tag.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/sequence_tag_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/has_begin.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/contains_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/begin_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/begin_end_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/traits_lambda_spec.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/find.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/find_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/find_if_pred.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/iter_apply.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/iter_fold_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/pair.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/iter_fold_if_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/iter_fold_if_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/same_as.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/remove_if.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/fold.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/O1_size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/O1_size_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/has_size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/fold_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/fold_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/reverse_fold.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/reverse_fold_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/reverse_fold_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/inserter_algorithm.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/back_inserter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/push_back.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/push_back_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/inserter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/front_inserter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/push_front.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/push_front_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/clear.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/clear_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/limits/vector.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/vector20.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/vector10.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/vector0.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/at.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/at_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/tag.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/config/typeof.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/front.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/push_front.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/item.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/pop_front.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/push_back.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/pop_back.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/pop_back_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/back.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/back_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/clear.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/vector0.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/plus.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/plus.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/minus.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/minus.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/advance_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/distance_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/prior.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/O1_size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/empty.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/begin_end.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/include_preprocessed.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector10.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/vector/aux_/preprocessed/typeof_based/vector20.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/vector.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/at.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/at_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/advance.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/negate.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/advance_forward.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/advance_forward.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/advance_backward.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/advance_backward.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/size.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/size_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/distance.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/iter_fold.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/iter_fold_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/iter_fold_impl.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/iterator_range.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/comparison.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/not_equal_to.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/not_equal_to.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/greater.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/greater.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/less_equal.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/less_equal.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/greater_equal.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/mpl/aux_/preprocessed/gcc/greater_equal.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/config/no_tr1/complex.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/special_functions/detail/fp_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/endian.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/detail/endian_compat.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/other/endian.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/version_number.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/make.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/detail/test.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/library/c/gnu.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/library/c/_prefix.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/detail/_cassert.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/os/macos.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/os/bsd.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/os/bsd/bsdi.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/os/bsd/dragonfly.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/os/bsd/free.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/os/bsd/open.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/predef/os/bsd/net.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/special_functions/fpclassify.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/math/tools/real_cast.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/container/container_fwd.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/case_conv.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/transform_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/detail/case_conv.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/string_convert.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_generator_formatter.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_generator_parser.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/format_date_parser.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/strings_from_facet.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/special_values_parser.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/gregorian/parsers.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_parsing.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/tokenizer.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/token_iterator.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/iterator/detail/minimum_category.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/token_functions.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_formatting_streams.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_formatting_locales.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/date_names_put.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_parsing.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/posix_time_io.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/time_facet.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/algorithm/string/erase.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/date_time/posix_time/time_parsers.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/undoable.h \ - /home/dhill/InfiniDB_MariaDB/export/include/brmshmimpl.h \ - /home/dhill/InfiniDB_MariaDB/export/include/vss.h \ - /home/dhill/InfiniDB_MariaDB/export/include/hasher.h \ - /home/dhill/InfiniDB_MariaDB/export/include/vbbm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/copylocks.h \ - /home/dhill/InfiniDB_MariaDB/export/include/sessionmanagerserver.h \ - /home/dhill/InfiniDB_MariaDB/export/include/atomicops.h \ - /home/dhill/InfiniDB_MariaDB/export/include/configcpp.h \ - /home/dhill/InfiniDB_MariaDB/export/include/snmpmanager.h \ - /home/dhill/InfiniDB_MariaDB/export/include/snmpglobal.h \ - /home/dhill/InfiniDB_MariaDB/export/include/calpontsystemcatalog.h \ - /home/dhill/InfiniDB_MariaDB/export/include/brmtypes.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/filesystem/operations.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/filesystem/config.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/filesystem/path.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/filesystem/path_traits.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/io/detail/quoted_manip.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/detail/bitmask.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/sessionmanager.h \ - /home/dhill/InfiniDB_MariaDB/export/include/brm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/blockresolutionmanager.h \ - /home/dhill/InfiniDB_MariaDB/export/include/boost/shared_array.hpp \ - /home/dhill/InfiniDB_MariaDB/export/include/dbrm.h \ - /home/dhill/InfiniDB_MariaDB/export/include/installdir.h diff --git a/oamapps/mcsadmin/mcsadmin.h b/oamapps/mcsadmin/mcsadmin.h index e1b174e35..53c178da1 100644 --- a/oamapps/mcsadmin/mcsadmin.h +++ b/oamapps/mcsadmin/mcsadmin.h @@ -57,7 +57,7 @@ const int ArgNum = 10; const int DescNumMax = 10; const int cmdNum = 68; -const std::string DEFAULT_LOG_FILE = "/var/log/Calpont/uiCommands.log"; +const std::string DEFAULT_LOG_FILE = "/var/log/Columnstore/uiCommands.log"; std::ofstream logFile; /** diff --git a/oamapps/mcsadmin/mcsadmin.o b/oamapps/mcsadmin/mcsadmin.o deleted file mode 100644 index 264b242bcaf2f9c6fdf06d828ff38433db59e8d4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2934896 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 z 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 nY|$_s<-rWJs{{r8u*Xr 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 z zGSxt=wJt$rulFG?F+i+@1`fWb$@u@s3lqGM70g;x3=1dVa!3%vD&Z)4j0bt86^?DR zP~W=lHG@pyf8{mdjFl<7PNq+nZjc6I?PY2_pd#5O8_x#p6`YX~fS+Kr@|$xlrF7i!45i|K((aIb6T9{&_vXj{=~)BEL$T92Vf%0jS4V#Xh5< zGUN6So@9dlw61>5pnW+`|8R=uUmu)%5tU~a6ZU&!3JD~ zmDDu?{mH6Qb?i7)GI!Dor@AoE0J3%ki?323&z<9i)j*BWM7Xdg)C8eXg%+6aMJEp+^;J+c^TQ z>vt8yjzv=(Lg?olVJDq4u6nF=Bd;ubct21ya-kOi>fK~jaFT7BG`TL+5Ud=29fcU6 z0zwfGz2sF>$2O%Z2enyKGMgptElhk7EAs5H*ht;Cp-@e(X^9AHgaJadoIpM#=}?B4I?IUS{-$vNj9&gzi!3IQv7M z0|M4g1UdsdY8UXLoppog4@pdj;J@bw0@oi)IPDXVK01v;BA&kT;abLQ<5vv0oE9Y= zuX76*Yf`-n(H|FNL$Vea2pS6|Z*k+^@FLm3aC~;yC!p>EUZiyu;(wR+m(7#;5NNpQ z3}job`!0IBt4#0_64X=ak+F>R22foHp{{Q+%%qw46&WC&ynI#dzsvu><<$qkU)lH{ zc`az`Syg{qRtsmG+yBUmUNJIn=KmruF)>6ythuImW2KSSk^|kj$p4Yo!l8#$?jh+K z&~92G{*Syk5rp&edPXFJC_YY%Pc z*V&?-Bq2RCAw9?q;&e5qfl=i5k>1OPx{k~{uBvBKCHCQ??>m>=m90LA^Tcu%ILNAp zNVsX^5@_GW#rNslqQ8FN#VQxN^pd#b&YdULy`W)yQSsQ_jO0e6yL)#j*IBiN9POL3 zNsjYL_g+oWax51|OZe+9p1NuEeTwa!sBY2|00!A&cl!tly-b2&^q#kLCt>AL*~l}i zmHnhE-CRH}(ujefH}3Hfytkgl@p1`KKJZ&9`6gV&!aRSP&yHdi>h%E110@0R0{#_E zc1uQ;qF5<8+(K*6*$v$`-F+CDg;Y#NNuDW05we?C*($vVbvB=T;!2d{h-1TvbVK)m zAUHE&Jo2kaIU?_z1Q*D@dx?6w z1nwSM?gqj}p%Y!_3x&63t0h;Y>55{^20?oaB45^{IbsMfhbs7?x``CN;DwasK(=nJ zgwq(rvfxYc7Iq8hfL}_$*ka%v=PEs>IM2Qlk8dQNi-e?H0O`MAdqapM6(^6wJ1b}G zVvyp|Ri%}1UwLPCKjG4vDB4daO&ifw8q%PGbE|Tz^FVaf!{mMOXoM~`9o}jL?s4(u z1yvPw&Z@myR@Q+(>`jK+x7WH#)5rv052-0?D#*2 z2z1CTm;KJW^Igp5uJdLByi25C$F7JZ}lB`qaV$Nd@D35;*@UQtEQA|_OJ*~p2xh1wnNURS3n^2m9` z4eVYDohRT`i+H=-!S!1&esjt<667ELcfW~2qIg%Qu-~MMS z$NoX9DWw&Q${&+py{ad{{Kr6$(LJ9msy_6dEi3E7>o~u`h}&W#YVP&Pdd(6tva~2t zQJg(A;CtwF_)Lr=9K!UNP7~7`_@L6LDQIep{ zh&q(mYCT7M_qdXlD%dQteahJ+HX)g_0jn>)^BE3B#A2IXaUXBoZ+RdB1MO}*=yam& z)KcRK0ME$4Cf(DViIZ4vX2o&11-Ag)ed)KE#H-EEqNj;4_g*xuG-(HU=HL*K2QV>y zonm*Z^YxNAQfqVro9$$hg4uX%LGg;ca!;OgDUbE zE&09pr`u^E56i|AvEJmJ2QiWJmBd1#Cfq+hM=QV{X>M{^hj=5eEDQ94xYB4DpXK(s0QyJ9=4>rdl|gI+{Le9#V8-5fUGQD8 zgb2}D!ZDrU7vU{ai7+U|iq<%!cU05TFpK`7mrL2BPg7!Xk>zA}nI~syEBpQHjMYN9 zuEyu=6zpoDYYFNzh>Hm3GQrXDKn}`Kau5xskCB0%kO1;e!+v#==S++ zekOxiLxmcTMo*0v{>x<=)n>RD$4+f3FvVU5b?I(kz}i9mPc53N^nX1S_{@q+<_)zo zTI#{r1x{K7_7eQ&%*kg~l7gEoW#B*!`^Jdq7m{OJ?2Y!MR-uX8P`qgn35o2m%z-02 zZa2i|D-31QoaZ?2JFi-uuHk-);J1gF_^!c#=_5&i%z+z3X&c%h21BB$T&hx{s}jT9 zt}icFr_+oOr7T}*0N0+nZe}@)=eNiPEj#p_Pbsl-)rMrK%YuB#&Z*B8b z+e16cJ%&S68|!@(tQw2Lnyl#n6sSjG@qNTn&Vz_16l&{<5cUs^iUq#+B@DZSL@b)D z{iMUR!#5?kHz`(aWYDy`TLgl)U%nCp>Ez1PC4bDIU%hk!kMyEkf;pLL#%t=uXaYYB z4bXvzFwVaOU*YG#wh$F8CX!5MrCZFjX~UZK2IGlLL>bYoX};7kA!GyaH?0gHmT;0} zq7e+{t5ID?a;Z3kE%wlN$Jl8pQpWBCC(Bi%43%Hv8Uj!(7cQLeEJx7K%YuEl+MrxH zBt%B?1UKb*PvQ7irS&u@;8W)9RNbco=FyS zqYLVcEcsd-Kp|0iobw#wk}!`TjRn(iA7%#cFQut3OZ$S|vrIgp=Y(q2wxv&=dq9z9 zwcoR?h})Z8=a?GPLSolIP#yRC_llvS@xlz20_(&`wHsr36Z&I%9ZsDGDwPY<8`}_q zs>->8bP4K{B95Vj`!LU%zsQ@H{M@ z42LjcEjINSaZfavwcL}{ix>wVcc+6q52o&LNne96hU4BhrA3f$e8nd<&M*?Y*??cq z)L5G2T}%g0&xF@`u2!iaK2P0zeoThasT~Zub881B!~QN9=rO54nq>B@Jxh>&k7G@D zf@htLY1h%({!8G?;Y4f>@8`Ap8#^Dx6CHaP6pJtVF2xLjpo=f+=0B6f{2k-Ba7&mT z&GXwU%{iuz7^)>+o4%c&Ib}hWY$X8ozNB5u@{kf46UVUTe0Tj#|A#bRAy89%a`v6+ z%6)%Ci|gk+vjk=$yVhq!wxex~HuKe}UIAx`T!WuWQ+l z0>@)Sq973ry9k$<97BEnP_HWc!PZY-?J$;>if==<7dNild$V2<@z9rOIu_1_=Q=`O z7JNVO2{&SJrDi;m;U4jxT?eg%mktRGf5nWxCYDjMzn4i|Idk6|-6*G&)=UX$B39or z5{~+4_L^>pvbB^|9=vyz?pUPvF{!VhBO`fBCy`tBN(TRW+Be{QHj!4rP%XsLyM?5J zn?O`WADN+MkmqRR1*)xI%uX_VGZDTg_3ItWf=+4Wf2)xTTf^A`6jSO$NY;!k$N!~B zauOV>K?7Q7PiN&_cRyT^EZ9S1TkAHgla$)2AO@LZI-0egQJ9zCrG47#a2Xdm%l>=6 zjc9+C0g||^8xjj*hAzn2+~8SSq9PLmqxc3rlO;B8S72|@OJ3*|&y*wf8|PlH?I=Z` zBZ(+uwX{s!ozOG9!seoIDrOf6B!&3xHF-qp#prW?ecC}jmMp{{krr`Y7qI~>>41CL z={_p7dkXXCaMZMyGHfS7CKW%|UYwS{a>w(Nfcpsw|h++*sCYWkO>VfA6X8C$?)_(1Eq+Es^R0C=FaG+98k zfiGmTpj=C^2hWc38@{>rg2UzH#o7m?XdA&&9RYy@9^9-?x(jt5Th-Gs}keYAdp- zReGrHI)%SOsb0+wuzf|6+^Sl%S&%NvE|2E>UA7nHm|BRwo_4%5)?^CHy%SGk8>bIdHWnYp$d=Kg`qO4apHh!;^REe}DrXSfKN`R?(q<}p2m9(Re zW{?0@=O?-1KMJKZ|6zg4o}Ww9{Ai`K%9`T0V-4$wkX6T)WH`mOApitL;_`J zqLdgSlZbX6Zl06yEECkh+4hN_r+?aVo=lDt2BbdkVo<;cUqGGqtWs4@LO)rEmi#_k z2#NBq!M0;~5DfcKwD?rmZ79?Bs3=%1^rExrP}aLn|D^x*&LZf?rVo7ereS1O z7c=#SP#K)_1x}<)3_lD`xKXc1r;5Z3lrQa=SOBXCk4^7fS=35v$`WDSrU@tgDr=x- zak;bRuEpoIRe{fkMAdjvGjTvFdU(gSb;oX zO1OEtTLqF>0!GBUwj{+G&!mfns1=7P4X7dL zsH?+sqo+>+FK6Cx;2z|~vhY>}?!5OifIaZgJ&bl&6{&a}jp3}a@=mJkoJ0jw1y%KV zv-`>7hOS^rVHY1A_j)Vu61%$MgCQ*x46M#7eNVuLI~{S}#VV<%5BX2#y$&)RzNz~Y z8$T%gim=i>OR$=?G+ngh<3J|H1Wt&t{ z;@RLw(p`qljA~zxQ5>dGvg9^I1E@SQ?!HmI1Yo`fDBfKSJgc*#|I$`wD*BGsEc)le zIX%;0Vv)RSZldR%Rl)~;t=!dBokR~(_Yb%mX+b>Z{8Zo9*}|C^3|U)Zf)5t}#^wq) zH`jl#E`tP)Qm9wjOj>`M`Y#}lN}InQGHFf0L_$f|u&~f0s`i_>_APes9lVq^>3>K2 z5^a2m-ql$jq9S_mGx$3Cj|m6CI95I$81v)!no@K zmZIz&K7UAH>enA%;+19;epDkKNj9N;e;K1Vl*@zEkvW)(8J$B@l1f%i2`Th8XH6xyE3@I&jhvZnVCy&h}7m|?jg=;dA zOU$cB=VNsKedKxTrx!Mgd_XQPL=+~IpaFT-=Y%k7Y{jH~G-~N5_-lX*WMN!yQ-B=P zK+J>Gf^e;L?L>6YpmbgoWT@i_ILHT8IEjEx3ci7|P3ao??5F+V4oV4^&(dGAwL|Oy zLK~!DqplPjklzRjy$uwWUQ%3om44uJjc1h6C8Rz<4b1r>Cd3in(qCc5(+cyq?4@_jp)I^+)toc2A3}SUO5e90 z2ihS7Crj02ZLqY#H=@?~4^Q#XM4?j?M!Vq-F{q;mezw1M$>$4^S=rLZpK^<$F>nl< zZjzf9M&Mg;vF0~nXj;F=(#+r$23zkHk^Nfk9=0}ezMy^Kr4C_pt0~F((zC~LkBMeC zRIp7qubFY?1QnqM41_WQslW5`CHQ>Y=1KKAlhRv!{+A7^vIQS$K{%W_x|9Mqoy$@q zVK6`3zypl^ym`J+(nNUqYuIr#gMQr;O|^-74{JH-6`C?L+L8cpA;rrn$V=KdK-6vV`V(o<&pbva^l9Q`n~{h89O}Fp%B1hKl$xzuCR{URQFdH0WBmpf< zXI^rL0_rC~sDTR3am9hm-!-P|gI?>;#X&MM9F=~He<-|n!kCt}YHVKL9XM23iP&6D z{N}R6JNS&dX#$eX3EoH2t2<}ZJf6awe!dt?&<+Zm;+z&zNFo5PLGJ%O8PK1t*ok42=vp z{*bP9eS0d7zq+n)Dj}HI37stT<1#*F*BOorfjqhsvD++htvB%}?+pN^vHZ2K5_rp+W(>6bp8h6Kr8XZMY2kN3f1teJ8>1pMi-7h>kI4NQQ|k=kuVN( zJ{CR(7JvAX>5b7eJS~lIoE?#f&N9A+H8~nxIU-epHHganAu67>U#OHk?SN|&+n@Yp zGrFSSUHXMI+pJS^`dii~yz_T)fa8h9x!$oMU5&bfJ8rMOM9uCOE2X&+U=Q8GEwLk? zT)$v!*cdJJs#N z!^q3cfi^?>>xcWC-<56aU&k6f3V4bIo_y_pL_NJ!=(6kbFUkJQ0Tr`YPV5J(1o&tw zT_Q7O+rK!AavMGr&P>>^SWc}r8~Hgy)IUS3@Wn+0d% zFL@-cH)ig;>fYNg=pSDiKfL)u0uGp>XgQ1R=wY$3C={s)XOyNG!%uMjfuV7O!cP3M z{_%nF&L7@s2Y2UDa0U@u^Gk<#N(Vs?K5oV@$WY2UZKtq4vI+-lty+29WIA-LI)Lx7 zfk!9W&lnpC2ydekX~g6T$%god3?2r`abnW(PF|s}4t!F~N3#ru!0~~LnZ007+$(7g zK_Hr8dO-=zli?lG{`quZkIaS)(7GT;8|s4HUdWQWcL$-_i79PEuY!s{fu%z1j)(j+kA^?u0UJRx;QHgeq#Yoj8vIL?lJSwb|0W|8ev?FI z6&X_SBs^J{TWSHTGEmY`u|z$|@<|eVh3h;aRKT`+h5 z1OseG^Fl!yf65wI11yHCzB1Uu6Bc?4e?!e{Gc3aj07$&-WW6zZ!U0ngEyv4&rZM_+ zeA!3BknUWxzUWyrC(*67R}gM=ld|zAyMl!eyYFXV3l%U?aC&#A2&`?6Xrx1152MKM5#Lh!q9O-?UYN}O8Mijg2D4N}e-Nn)0b`OU2~T0oMII-aqrd9j`>q&tGJ_@I32^s&$3ROd z$i3>BhcG~o01atFuPJ|Gv*7t)fbVuvOlnjhMD&#K9E|h4=}o%k0rPko|HVjfSUYl zO~r)ITYrNZxJSj*d}B5rcaTfaXc;Y4`7911X)AiJ9eRy!U;*f#llww*p3-^tb`!%oqE-`B{kUUq zwwsW37?ysXA~i+)L{4N!!Jyxe&VJ}HPB$>evzJrR%A?CHuHbos>w zA-D%>nShqOPQ59(v(xUPRhZ0NlxsKk?zHc+FC&ZWS!chexp~2u#sp)UG5sHyc8Dnc zm9=D2l*CjNTiVV7aeKa#=wo;Um-uJ^`M}m_MD**h0z_PlZ7avEaLe$9Y3OspznFIK z{|Ba@MDJUv&H`C*M713tV~RF<*8_DwvF|yl_1S&Ym?vU9=3t;%%xXRs)W_huX#@|_ z@#jrV+Dp0IYin|dxfGn#nTRL0PWxqNFn4?6ygJq1pI<#M_IP#jWS$(zohf=e-0Oic z{S%;{UO67C;z)TQg5$d5B5GBg&qI43mZHED&`g@i;J*RhL3E;KbhGWF!^$h9A$w!d8>at6)yKC2lzX-UuY?vrq8Js3;_IJX42A*)cy-m3NAw~(33TW*lP@)N2`PckN zG)Y|uS_YLA!#}AMaCL=)r#N+5I*KX$9M*Bg4^1f7Vqd`CeQr&ExK~Ieq!7BFEubA8 zVU5#qxtjp^4cac|5z>z48Ty1$wv@>|=|%uJvAf_uaqY15vJ8yl8`KBQ)3Y4CZ!+5y z0>vfXB;AN4`J)g~%1+~i%RB-=7WqmO$OV;7J~pe3f&TC|Wg9s`xJ)a%2id~zfw7nb z{OkoLvP;nXo5Vt(&B4Zyn|uY))8qIZ3_}&+EeeHjSh?zk6x6%-b`^0JUBkCWD#wqu zH1e{)G6Gb887nzet&fHpRH)o^CkD`5BXoQlYvx(W!iAkFyWF#v-=lF^)Ny5@AN#Nf zHtt;(#ni5l#@q%J(e6K;oPOC?l+$wMFVSfG$ThnD?c#f3tuC}wv%%<_kj5PeU1z)6 zN&fGUE>$BVD|mx+;FhE{uw4QS>A+}7xn!*dZWY_q5_;1al>|U|yefJgauz){Z(a^5 zdfpK{h7KuE%vjpepRqAykvmAubq#e}$|_FZYd8D3!=Z!c>INCCq#wab+UlQ5x=H?> zS0!S1T$`uB=SM2<{2#M#N*WJix+hn%_X5#jZSa^e;YYpmyj}eECthxLI%=_wrT4Mg zs=EY=#t6FqV)P9i8g9>2O~NN9+7EO^kWjV<9sSv_lVC=lwNXSm;`eTX86ASU@bX>b z^JcYW^b}?%B-WQm9I7uRV-bQlUhZxrB!t>R*|>Cxk_^42Xp4vBt&k*wj*A*N1O{!QYJwQv7RS~ zS_JMv3)zB|^bS}_yMdMTX!A`SFx714rDo`LBo)>V`kLt06U9=jA#o2`&}4G}SeJ;S z_gH%@b=`}sTi>TT{{lZrRb|y_c^S9#WCpr2_^cRI>4RXve%=&{+pH6p(|ps}>JP8u z-c!)1<#du7< zDNNOJs7@2CD;N5wuQm#4NY~x0+-vvONA_2SEvpJv^9vFF)p@Bvi=^vthKCt!JD&ht z?%&J{NN%8+p?4;g%=amER=k_=JzhVxy)FoVUtukNj&{}Z*ONMs`WNoa5_4qRvbo8f z_`x)V)1WIXzbiy1AECjo$75@nK&eEu6TjX8kQak;0$F_k-3^(_!uHm1A)=O=( z8d~1G1E;R#K{Z&u7q}bdX%VCbh_gU6DQ;D&uty!DJ z7g*F%jKeR!(`F*>{J9#FT0}D(PIBd6%DS=tSSNMq@4&r0l`b5AdVSSwk9{BVjc}Ck z_itL5Z!pgT!Lh!~w8-w)uvF`l(}#O3xTaTy`9l8g>%!6Q`%y5RN~0FSXG1uTaMOMp z*pJSkYSc-H?28>iYa6fsiRgsCh=x^nYYcxwwCr073Eax^{YMH3$&yk3M&u3*^ zD@TgD9GVsx0qu&ecfTO55&bgI%JiLs)xEGjlwX(k^O$5 zV)4OdyHvOmsvRv~pQ6I1e6fkpuAa?^9(AjX#KPe@ex$O_sbrKO>zEH7_ z&Te|NFJV1v7D`}lwNg@EaGi9EHlkstSBykc6zuBg;iVkUd1}kah z60nk{sF3?V>_PN*UKHb(v&mVl%%RlcUYoT7u-Z%pl$KHdk&J zp(HneNEN*Y*zMp+m!I!m{$#~12j{PqDT~{kVPly-dUqktQnH%i)E)^Rz4vV0SD_ZN zl8slTLvInaK|6odoJF$N_BLLXLD`A>Yj=R9^xyAD&FV*NmC$4}rIw9c&-jcyd-9rn zlIohS7>w_85>Y1@>ed`q(aEP`3xV;ZCuNy93pG&FW%^>4UOS@1VV}cTdtog|$w+x` z+3v!U&7_FE#(md4I(){neZbEeH5zJn6u%=?frLZ|%;hHANoRiN;d6oV?pF5tLuKha zao#vPZ9#ZQbcBgWyFXJ^wS>XUu>QPgZ0P2}c~cYq<*$CQ-GRS;2QaVZ+QWha+Z_d9 zyW<ZPOJI*zR~fV@iDI5Xh@%GUsy_c=BoqwmTvl!FC5G z$P{dMm`T|E!|r%|$JPyRDUuxYuBxXp?h}0IXSgB)RP{|Q@gPzo$=$MJ;Ta}oKBO6= zBha#a$ye9nd;0EWU}t0jnRF69fiQMnkOO2kCRkkKTcm*KLS7R$l7Mx=MVWX(=6X^x z9;=fx)ODv&r%>6cV=$w5AvK~Q;}9`UsTM*0nqviC0K@8Y!pW=xnE8&Q2lQ2!9vnNT z^@h%YKR)u0l1Tygx*;0PzAW93dL6|ZRDdd7&xG%{2SGNkRmZ7$W;}8>(czWP?2}d3 zB>UnVnqQV9nA{;PXX}a({7r9%yBUBCSexM3Q88#RzEWpeaFXG4p8`apOISP*)?lPP z1EeVg+Z~#Anv75H56q*-3O6!>j&TfNtXcos9W9^qKMH5lr67)I++ns(LstRxKT2wC zm#I?232`MyRu~%goV;c%pMT+wjiHxQvjJMnT#u>?d8m`vu1C7HV#-9pPDZ+ZW}EE0 z)}0O`lcz2y24?DY@q=&au#6@qcT>1X)e$5fP)z&> zq@(={XU}jSFQuaV6@}NQ(w`ZZ4{;Ht)OS#Q{YgDQb@>>+c-KUT{86DG_Q@$sHDB=& z^UO}McovP0gPW_z8|`b$T)j)#UE|a5r@qZqBFl&d%|Dcecbr2>Q_oJ$;9o?}PJ?Pm zTuDZV=*q79pOMXrf2h1c8XOfB1wY%G?#JeRwKpc+B`bqNi4*sX`Vwd~pUB8eFc^L! zdQcRx15y%%*NJ$6c!qDpMa2QfU`P%%tutrifG+S6sr&+UHgi!u%p7NeXB-m(69UkI z=Vwi2FUJ_3Sg<(K5Havh*J&cPbLLJ_&%twDNz3$b9YzxPTmsF1E~Xl8*amFD0~R2gA$ub z_+wbPWNZ=)VGypd$prFNWx^x=$VngouQbeaVk6}JS@5#PH~tNhNZIVPa*G-pyK|3S zYt$zOjZ-Dg(6RXNCA#KJ*UuV>e0*VMercC}G&)wx2rEzZ(uPGtCrpw5DWP-*D+@#~fY(*92K8>+_~ z)YP#=_SZc4Inv%^m~__`Fhfs!QQ~ZceQtjZ%7p(SFW_{U;c8yM#?}^0sh=LjEZ0(f z5cbu0EBG^X3G_BX6hd;Gznn;Q^1x`P@6l+IXMx|#b8&Z3qg*2*NmmIWac~*C z1$InL5U!sd#6AXV0^8P2=fI;4AO9IVCqeoaRixfC2yBYHBzEf3WlESV@NRe&1vM|S z(Ah5O&ynh9WGzv$&Dg_!{RT(dJRn+ik#&RXw?ldszSugWInntiC5!1lGRdAFB>}mDSUCc8dcHYjQb`uQekX;VUgN$3!9&v|%NTCTdtsC7bXN02&*1` zI=26WeOk|aAb#=&!er5plHTeLXZ=h#?|%JuxNGfH8u#@{1%V}b5KF;HO*cU!4@&1m z>#Eszx;CqGL&7x(?@>>v>wK0O_IjsV^i>FNdPdz%)N_xCboXJTn z{^523xWxB%6IPqErenMTae)fvhl(P{EFv}|Bab!qw>@7i>q>2d=_b>EixeP>^Y5+* zLG$+)xSb|ZFr}4hX%4*Kf$62Nc0OUf8m=skY0eG+oNj1SdkD{=QhJC$BB}oF<}SNh z0SXxr9GDZO3PgVtj$Ma*%7Xj+Yu|c#dYrNH`ypqIqCx#m#rcpR?IAMA!R7oywJU}< z^D@wS%Z9$9B2#PLLQA2B*M$Uv$y}%0&ZJ$H$sj4_&v>KOP``IpeN*qmupn{Ij}@@@ zQP>l=TdjeIG9umw*mVSH{XQ8v8@dhMofgFor8qlf`h9X-AxZK9LmjwaACz8ElcHeKL9vB+rqwp=6n>|Y%%-zRyoEFUX z#%}$t+Pxg!9_}Pcz3-$4$4|&no4Ra<5Z< z;n5avyBYhPlz_M0j8A`^D;6E}Fz{|hE>#EA3eVr&3`QJnWq034Nbqh3&UJil2Xj~{ zc?DoR^b>+yZG8fg+nA+G8&?-H$b!6sYdWQ0hrz{i!wn>59GD4o_}nc3d)9x418$3! zw=sj<6JvwjlX7RNeTJajgK|ckpdR}-tZb_R*J(D*aMv1NzqG&x5N$sKWfM^n;eBQK zbzIYsWHJe>-d2p zO=W%{!x|Udd>Jlr;)9PvlK$UU4oyJZ$mwW(I>I~lA8PEUbz<@-eJE_xXw^EnBJVgvg5M&!I7s#4o-U=5uamGWzrF8 zta0EQZj=A^c=EP_oP_1n_xUWHRhE@Z=i{$s`mnOiIV@OhppBI8h3n6GJ1uXuR{pIm z61p8*StwEoRZ};{13xKBOI%P?LO^-*1mMO2PZ)k>NZ07+eZ)>mQPWnZs|F4SD{+_W z(7S1tQh_w|MJ*9O$NBP-aDM*Don|FNS8!%R?4RsDG?=nK&bOcQc=|^V3g~%1JaWbk zs6lv788~H6);820v38SG5#jE$qo}76=SQBs8*%Q-Un|Dx=It``DEhHYR;T%yy{(j% zpIew|TD#gUv#{=P6jIo~c)t_Jl|igcMS&jNO9#Byulu4ExKo~9ClOnbHXdau(p zF*wK2AimcXW(%lV3m!2X-K#U?S*p3x>_o2zMzKxheL;64NMMol*I7N5U>gHj1fa0# z_uueTf9&odnu%#W+L)yjMbpx3)@hmWRVU_)s%72ZumLwlzU^1EMK&8%pY7gVl=t@s z5K{mQVZLFo>BA|?rfd+vervd6^i((>Q}}SsG(WYyY=2;r#P=g`d84Xb0rINfXwTBx z5mAt8SrD!R)G~w!Ygm6L=()Bn`6IC9c(83JOn=FAk;w?&cl->i+89YeCxrj5o@9po zF0blbJp}yE5j=nH3)n+;w#MQaxb&2BHy`6v!@h*QZWB$7x|w*aEinZv-j#muJ}U&& z-SId5WUC0~$rkSm`&C;GbI!5&%V%Svm9XwHjQdlu52o*mtWWv*hb4mO_0*Zuk9BWl zmM)s7OOcW|q|?n#C#=!j3jCMku*O|Ty-xIxopTO0uAfPGNg*WoAFme?Uwaw_LZ$4N zU6y#+%3QcFD9#rdUpLEMT-9|Aat5|tiMb_palXdTK?bDyDJ-!TIO(p6pQlj@rTEnr zNY-H=A900wBphHiG`pwyea$JB2bWp!DR}+86W=_Ch2>`+TIrJLrGmA6*h83Q($-_s zmNS_}sVM;v%TBQLvst5^j0NueFZYa<4d`G2ul&Qk$Ot<-tt3B zEs<`|C_XdOdd?()sq9RL+5O%sOkPEtb4hkG#hi1;1yrg}1yRLp-Xp@CLdwFIjfAuG zJ)&MEp4Eg%Skdi%_a0Y%qRp<-l0OH1d=Pvdylpn&HYYc$f9N6DP_zR+F|pSBc3jbg z_Bo$Czkr%-G^2>=)fq$!b(nn@49iiF_u)1*;bgz+bdh{pz@B zq+Q5!`U;U5@47uru#`mOl=PNPxkFgt{s*tAYV&^2o;=on8Rc@7 z5f#!$Qk67-Sw#kSN40G!U|xIr)&DByIyXUI&+rsCabY=42-5s{EBS5iCyQjn59AmA zex5E8Xopw@Xa_1H7zY~hQhE18c-xR~gUV2?{YI<=c(y?#B|4{phM`p3u|Gq2gY?hy zcG^v$))QlK&S=EvsNsg7Z+lgSu)OHrOjAGID?dJ1G2AgvQs#R((W?H$&hhjhfASyKLJRtL# z?Qs6D3w7Jzg*xfK3w0_~)M1;s?lO*>3~UF(X=zPY4QR%k{SsX?%8|E)Y-0o%`2DF6^;<_o6u)Y!P#-o5SpGFfLRC~G5jN<_9rnZtQK?mfjzq3%E$Y* zmnf%e15u_^K>J87|BR5%kG@#65Er?`Pc#O7NuGiO>}rsYGo%|{_}-mr0V|3XvTg#f zx0)PRiYhPKg910hesCk5()aV?!<{nsU1YoKg}#oRYllYnsB|R!1&`IqafIVUA3uot z7`eF?>DHGKJ~XfeLVKgOA;&#anPSo6ty9!EA=MLfAmu+xL1?j)QKtOL3w5@%6oE{f zmW)86Ly$>`i$wa-mLI_#D<;#*@{Sut>;ewCNO|Vd2m2kbH9>PF@kyf~3zuG{NlKgL zS}0Q8TskhSj~UD>wN40@L2X>38R%Lq3^5ov(D>v8#X;^7+jSTLTbmrfAJ3ecgYP)2 z_>byAVZxtkOK_?o>JM13jATQ?=k-IpK%W|?qk*lyLRKj$XPa(qOg{|)lM+94vvBhP9qFP*a!B3{-rQGYEmI{v#g|Y{@-EB zA(=`ARQclP3RjsX?D0z09rgJ-HicPH4dJ}8>e&#l*_8%s>9o%T=P)J_Q_KJdeoAc1 ziS>MO+;Fq|9`kA2%co18V39LM&Oww=W;ciWwJF&~t2JQQ&j$O3r zR)n9`hEGiYhCs&h((d1-F$#`@Jg7p~y}wQ!PWQMq!wE6NF{bk&IWS||A_sl5mgIE# zk}N5VIzrn)J#x^_qSeAP$X%B4j`;_fy;cw*PE7(PVT$g;@k&Q{q4A2~WIF}Q$WDKr zeYpBTf1YBv%!(FLYERqRrAn`6e><|b`|7!9>B#c+l(&+-f@ z^O;4C1dgxRrM;mN&xI0_f+^Bm>a)};MFpWfp@xj;F~#HaX;YWZxD~Nn)MKV5g3dM6 zOIqt_l>kE%eMY=562_6z^_96dsN*BO=>JLC|1OKAW#j(JV*P)~VsZ>oGEa4~2e^Y@ znQyANL4BF?`Rfw(A1P4t&Q@VZ`XZN2->1}cp7qqCzF8n~)GGMTFP!lon%Y_xl$0ouPLJ379`k0gc`LcTa zFI8+9bwR8&fNz9*V6mk#5cY@3+%3@GQT-9vX}r(;A;~&SaPn*7$dg9%%m9!HpPekK z!FTYl2SvuPUiMGOs!3h3t223HKQ3JtoXygk4X`xx_!e)pEM^H=fmLy)dO{tm(ARIn zW;Q=7K%69|ek>(Srih|rY@Ex)0R|fn4Vf;n0&M8Hbp{PvYGwW}H(9z&Ur)%jhX42q zpTT(j&|-dqT`b$l|DTM-3??9T)gyHp60s`4u(bUsR*HeybIvNNiOlRv1*@OYbn_pG zC4ECIqSlW7nTfr(G7>z`e;}5`0`_k@D@&xMN>dlqXdhQh$0Xjx7`4I zU>1V>ajw#|+)G0A3^2N24%$k?h-mePQnxCwXJ-p(lGw>tVe1*;8%)c7@xAW{5X|aS zfuztid=gcApd^SYpaVh^zpe8Sj}aoK`l|ud(*Ci`2nLB-6Qb*S9(H?R{i$^Flz1nr z_AkUih-QtBKrX9z6<8~f@<^XLD68+nEz*O|7x_Rm(Ekv|)J-ay`}z&A$1t`KOvf~; z1k#z)r_HsxkViiRHDevT2#U_-K{TSc^FanMm)ea~HU>2*K?b#qx2Rp0|fNOErNdJXUmN6Ek)>JDeY?0< z$LRwEz|fC;eu9>})`az#@ z4j%P|@su9k-k;c1@(%VjaX#_Wo+8}3q)1o+4U*>fbv6_Umr;}VN})v28drn%ElPNm z<+O_ZECa_?{Uat*p0%ZI+&T4BOjyIOc^A@*UZwr9$zQ!J-Rjvs(cqhGGH@mIKZGd} z-QgeSMH=xE#)MP2AvXj-sA=_F{4aow{I4<=B=hDwkYiMfUFd`!kbqv`-c0_oilw5% zs#)$*5vVaLQiG$+bp1LFLicp9E5CJLhc$w?CB^~C7Z%yTaQbR+_8gp;8Luh{1t(^- z$((M`YVMzQBsxCD>P^kco{4hzoXda{GhzQo%)o&YGiDVsvP*Rye+s z8hpOGC2(V7lc1Y}D0)5U_<67TmYCUoOUwk(5^@}i_;!ubRJ`kHkw%@u_y&23_ct+v z6J1U#&;d@&khx&KC1!AY)Dq?(Nk0Fl?@$7E`L|&wgCiVb>Pu_-=cV3!2fnERoJrZ- z^TwY6{dd%p0;0P4m_dz6VBaAT>^roAeTTrDVPzm( zKxQ(JV8T*@2`ddIEJ_kQA;cSDtx4Tt^cfnLp%Bb=%Fc6s3V>y-wJ!K7#Iv;C(O@;c z3;K8D>+J7KfCp>=57rDdj-3v$j@|k(oGlDxJsk+IT)qo9HOD%pM%KF5Xt#SV&zE;8 z;Lk`cwI2GuplPr7CtJsC_+sRgX`Qacp4-B(&L#E?TWx1lk7OclzqVmRK`95NwgY$8 zytWUt_ddfePMF2M_iNd=PJu&>5mk41#$9jjZ@0m1x*7B@uv;~| zXm5yJmc{ynC1PPdFU7! z-D>8(sHrts%5$c(Vh(BDIonY#PQEXLGprTPco)_)<;knEu5}9+6W*)zM%n+z)t!wZ z(=f6B7I-0PM9jrRAL{<-M5RU6;#?>q+UoQvw^98u!N0IkMj0?hO=^GScQ%$*vt<&- z177esTk%*E|EptnZ(E=}OAx?1mU9|vw>#<~K0=3whH{*UqR}8Ld+5h#0z-!P3B{ns zdtoc)NDs0&&K_~-nqhG0W%qWPU9XEloVhrV2C_84#~itL#BtNVj;tt*wvWGSlw_5s z$yZ?jYtZ)r9C~p>3swCadbuyh{=8Yf`8y@g)zP3^`0BlH4! zM+(-l8DJe-%8_3&RV8c>C4_lVnb62JXDj>x-~b_n;kN?i&4jhaeK+%d9rl6L(xRSx z(tcWb(x5hZ$y8*qi+D1Rkjv2sNn@WPL?7fe?o4tJ69vZXS??X>WNkr@DZnr(7KeyR zcA9!%2sSn_XW(ZJfi&1H;AmWi{3m96c;lFrmXA!}z*hxSX~O={n>Pe?xReRK*}HK0 zGDKm5vob?e9p8PYX~063m8`76x2qWM*F*f{^!6nZzE^w>w#k6Rb%C^mQT=HLQqzG^+k zeFZ#AW%6t&Q?0naZ=JEP(5sO(qMMJtZ^PYLRVln9NK)Df_@6?yuE0KU(kZBy>a`%@ zBdCTBzVM?Ql4{rIn5B(wP2XxrF8l{dZ#M`|2_Ox_IXm+Yvp_?BV9u)dG(0r;pJu@cpnbWvh2N)s z9!CHQX`DkQCEF8OaeGK`L<#U)5%BHU>fl-B`H-}M`4`cFh}PJsi0nNsnc`Wh4@zpl z*GmVf+M(l{Sss_ak0hDBN!gGjF=K5yrg$mwNBH=7W-(J~Wnh$`oGI@vkyO1CQZNy* z$O12PAqiKSsC>9~a{{jCRhlFivPcstnBtNLAIeqzm#aLiaba9tw2c4Ho=?> z)e6VdA3YH)!J8_OOH{EFGJ+>tbwH1HPQ%f6^&tMEWM%OfU4@xc zLvVI$c%xg!RnaiXJjF&Y181VF_n z?n=n^YwS8(nK_fx2I%Wxvqk8K4b9O;s*`rvOt6;a2Wwd(3p+huf&=%+q?qki3=-E1 zB9H~rI@E9}w-4AXu+QTI?Hh!TT?DIEM4#2XnFUbD$xYhSJ2Xa#V6(shZTapxbtv8A zW*7fqgsGSPMtE{Wb*sDho0T}{)tCA(U*Z&HU-^_NKf`KQhXgw{E_6LBsg-(PFUC(4 zG`x&Is^^>iP-Xj?U_fvK&WuTz(Je0JVl+5@duhFqeU7_n^8yA@cf-6qX5lO04Y(Xh zk<=V>@A*hLjwup`%O)3ZBE;oY1_7Ko71*!+qS*^{`T9A z-7j`4qAKdI8#gLWY-xjD78QKo#!z9uU*bA|djT_0F z=akZ%0!!MaK124WG*E_1R%-^!9YYdelPjS!{?qtXZoI(sLOAs7n@oC1f%1~<*my#S z70=EkOKuPJKudp7=C{D+Jo(b4EtnUngSN%;q7&)jx28tGBlur2mbsGSrx^PX@V_Uq z4*t(1*6jZ~iKX}dNMh|T=Bw8+=(lp8@-#`W-pX9TZBw<_l3U5IX%0W%QU5txF8-tZ zBW-IzOS}Tb+J^a0+E&UHY`R`B4WrZT{CCKKf}EK3T9rnw=-?6SqB>=pAJ}|FEjp8-KU?ewGe{zFSuc6rtjOjRijd&A|a6bQ^N+ z67f0#Gg4oz21GRLurwBcuPc?P_f3&>uDtEZv03a+eTcm)s=_a?>5o50T^%FfY`C3Qs`X#ZvU2|-YM zj8PT3uQ;1!Nazh#iituuhN;+$1V#&O?Nmcd&I!VIeL&btQ+v;*Ax5-YeLBSVzev^U zKmU=c*#8%)`lDt@f$zwFnAR81t=fQ^GA;0N9X{!k=&13tt0L#ndAB=(#69f5A1 z8H2W6@<_MshxoCl-NUqiJXBqvGTOm*rPhKs`xUoL{uRVf;jrl4DZ%AOU}dnFWyrna zL8f~(NMYA}g3$ox#&d+$U;>XAt`fpKF^=6~o*5L}tpK;<@&q#{%5C=sbiYPpY2E*a z&>UmbfYK)Nv<0Oaah~oe)+nzkDDsH&hJ>k|D+-eek9df%@$Z|7C)pas5|+8q^eC5 zyxr}Q8L~C-FH>1~cVkL{&KJCYpSrFW&3q+M$^~ook9^?VNk!XUiv(Sk>p!Hb!E--W zb8G2;r0VL$cHu9PbcaF-!Qs@#UavoeVk|!h4Q4<`=u2I?PWxm>{kesa?R1WByIb-o zpZo*JsFysTAGN(U>Wr5|0bvEaO>_8kDz83fp92tc?_2woX(O?gHt58bMUF5cliY#F zuLWe%3H9Iv&+iG|f@P+Rukg!L?0*Ovui!)043=l28KvUEE%qgz#l0Vy!nJk8k4#}$ zDnj|AG`?af9hr2T0{^0U6=+mpS>EzS= zL~=o!UaTo@%dZq2TZ@1DH7Vb)^-0f1W21dJKSX9xTB9r(hTs9CLZtsy2(mn&NV-~q zQY>h1=SJ}1`#*rDzw}#jSK&W^#s|>q)1vx+=fwD)yWB9}VFtvaj5V1_;?djxvup;M zCK{hG`jHj{(Q_jO(MG^5H=X#{mu$9F+EjhkCqYxw6Vpj9J$5~l8-KV@>~FsR_-@YO z0E8c%wj*7GJt+IGgiP-yZ`ahKBR9(rd=$3EDaQ zwoi)xAjL#*KA&G<9WFokP%^`?An*l}spy@$w_sMGnsFD-9AI>k<4F{_(X6T`>0&oJ zY47fNDx9idnCxCvdcK`qLkDKjj52U(&jg=tpi%YO;7u1=5Pa)@$n*EHRg3Lca{N<& zA-056n~n{+#g2KG!0V4neBR?Zz}}Qx0!Oh1hjxhExn}cL`$l%I;?X^Eps@p~Z?+KF+IEtH5C?f9?EYDY z2)DQ)*4>Y^yF6jR^mI+c1Bt2kTs?IBJNmn%8B-%1Jb%GStiu4@xe8f+NV3z6R z%w8@U$g_r$aC2^-S3lF70e{k0>KQ&)V5NOJ3r6lJ`zx$G-3B%jQ2I=}dOnp!$I-4n zx{+PRTK@)QYwBp*I#tPr{v6=6U}a%m-JD#)WDEziG0Et$@m$Qv72IC-68$^uAtj>m z8W=XMP;6c@npHcn1JNb-rOGG|pOg15PWV6WfdDH7RzG@?PX*6WC2z58#`v51} zo!(!R+(ryLy=auwK)FIa;?pnzasds69)HST-}oga-Z&u_u;WL(f*xQ%o6sRPK)A_) zL-9*})d7$EGpC4fWvc`Ww0sj9zJkv z;AhSOog&za;Of?30)V!YH_pDYR$!m-)_FiYrp78XCI`Pri5BO8tM!b#9enf-1t+a9dl9;6;G)gL8^MdpO|q(tkqs? z^-E5|li3Pq56zl~Rt=S*jcx^fJpRUdAYM5lcE6T*5|UV|^avU6fbYB@2R5xsDys5gR-#0 zw_yQ^OP^fl9bJze^5!7XofyBEghyEqc4VF&zLey+BPVgDUY7AYS1T;QZ4789nbv5f zlQe1t(7Lvx+EMO|0ui_nI~~Y}UoVk?ozM9$j0?5Lw)qp*df@^~hnUCc4eTI!kH{RI zEutHGG->!=@2VWVXv94HtzHX8*BwU%JEca|Lfb;yp_2@#tj);5%8HKJ-|&nZT{2gO zt=at0oLv%j$mz=f>3};eY308X;}(#hYCJzm&nK)3>hlhA0d?gOP^g>yqfLx)ad&4q6IX_Y>Rbg>BfU? zV*_s|XWxV6re3OO+N)@2IGf?&Z6^=}DO_w7D2u#`Dc$6Hx~+eH5u-)bXhW2J(`S^o zrE8R1iinvgjVxE94Ss{D9tuqUY^ExsKl(Vts2LKNL)0?!yIS%vs=~C~Pm7h2ce9@U~J*@d9jq(;cK-p^zc#R|oAF z^FDSGzX2X?Z~tX^wpXc!E;www1-CkdnB3D zgr_!>jxC@|7g;AXUaNA$9eKg!f?%0mG&lj4A8ih0ze%rqoGPmRSUkyTD8Of1G>d;gT}rutYDPj$u;y|uQJ@> zO3God=i&m6TE6VQqt6|e5yFvP&y>puf{mJ`qAnmknQLT4D1`EUva9UQWHD*CkRAg3 zLMMXGmTCLaw7G=CY;(%7t%$9aef7+g#b)e}OO1Yt*7BOtgw3SQc9PYo>7T((x~$gx zip}`ZwT#iChQTLzj!yR`p>^h!KL;NzD@WA9f7P3ONu!9sL_aUyVyFYASXn}V*x%_+{;!rLhpKko z!$jW=iNH&v@*;SYKtRU~QgbcH|~S;)C50qXXOahy`~K+_9Z+VnO6=8D@7& za=s{Io5aZUPW$qd-Q$8S&aTA&PXfc-zH+k-$%9F%Se1x;FC)rDsc2dloaZSv;uyq?!cRL+s%W6W8iIIS+oOq# zA4PR>{u>4}nz6FRNK+6N=5m_XUoYlQWLqe9i}Aww7&5Nnwn7TreX1a2kD?*nt}0)2 z=(cD?_!uv{P#8-LN*!$^Cb~QRcK&k0cjYorCgIX}u_#v%Wyv+{A#8qTCrjcr;^9VC zUZzAM%&Y=3=osBloZ^(NC&74Mq(Pp`KCye}!*ql6+?aJrWt(Uv4V1Mf77_^N;zJu^ z_Iiu(h!jcVh<^_i)JXi>j;TnKS-hHtnRDxx{%1cfUm9n2jhaWp{Su_xG=XSNbz**yC8uak z1f-n9&`GB-Y`yqf+}LH=RK;^ubw3U?#|FQZSFL~dNEUu5WhHfpBbF?VY;FaW6nhKl zp~{uJyfK_kv(!1X0IhN7_*9NhG00j@e!;)iz8Hu*gXTb;Z6G(uzzarHN9^Z7o$VmC zpn&8dnY^M4eWNu7k@w)2r{{r2AFNCLFm*rIr<(lFJ6Et!vv2IRnota%znLHE`Jd%4 zPj#O);_qy?cQIz&=$HC2DL%aKPUhYGdLO?`cnnca;6Pnj_+gYyg7trYY;1kad>QANcqiZ+yh051YL3n8^T5 zV|)%Kwbp;~0k1buJvCNsBoN%0dU86j$eP><6-5v9TrvlloEE&IYucQA!Ow})gcc<| ztp@O|z;Ri!;QgDN@zll8=8P*srn~kqnKeX)Bh0C8n3vwEp6nuRx(KK)eFLV&(N9BQ zHYhh61l{2jw{EN8QHNWma=aRxK8t)wYxxg-7U>ezU$m4igK2^xYz6t^^A^Wc4H^T8 zlqVD#8x9P3*#yCjcD2t4CDR{AQS+Ih*b0K}YU9d;I8 z(%cM3)CHnteRXMJ9uRhEy`H=P$aWsuJ%IlgLlXE8Xrj967wMnBeLWTxsp;)sWEks} z;J*PHFiOBTv>H6_4F_7jw#}(}K5Zb6|Lpm?N-V+Ld-8M6eDT|q37!yN+J%(?D^L%M zKR~vi%lR=sSev~hkTYPDleBa;ST7@K8Bfqo3$Oy`h(J9%t*|esp@SSn;u(D$Q+}TV zs2Yb7c>!jl9}->(IObV+W$?v^l~{?u{(G+LS!PR*BjwMzOej@)A(9mJXmGe*vrO}V zpM)Q45n|<2X7vnfL6AsRiXguuliM5&9aN*R>&Ur5gh&5?DvmJjY1HQx1>GdmhX!9~ zh=2kup^#@QMH^U9T1!mc$D~=E3OQ^NWJv5u5`m1e8%QfH8)RpKXV}I`bzaMg-bXbW zQAF!8hz%h%Yc(|*nnORhhbR~=qt8h~Mg;CBuHc`Aj zOnC6uxqU|7bDJJHQr-?BCVt4r*Q?j4PBHEyN&wOUeXG32UWY{VuIl5x7OP2FIqZ>O zIL`&(Ezk+pjA&d76#&gB^SiSZO4OXPLtSW$0fBA?O7H+oPSZ^sjz6 zY2i9WBAfs1TvJ)hjGgk!M8)(nQ?RYf(vU*K()U$W0WQiPPpY# zKqrDpyaD3YNaH!DuPiUz*@#c7V4Q5ryRwWhG>RWUX7)=(eG+AUhNUTek&dD$?-m;i z$p+;djzKBsc8}aVXXH~gA9#tu`z&U}3;WE6c!^qepYy#%9jX>4U8B!Dig`i+J!r(G zzJi_96ARmo-^p+^fji5>n_;GBsBkM26hqZCz)qga2H4(P=~=z&fo*eb?JF-X&U&`bxg`De8p1j|KjeN zbZ!08yAv|U4I1vw0UkgU3)q%`l#nvYeQLwt2UA6`hgj9CugE<48>5NJ?q`a&7LM zkZCwF3AnracXt*Y$ZC__hJdJJ}V4Fx8-W>=hu(M#brqEa4t3RuHMbT9ydC_Cd1RfuL#cgX9c<4jC}`P6bOH2~wKr{0UQk;DU4FG4PcsyU zG(rNqJ!?n+SXWWlI9@07De6u_xSFv3;VsQE(1niAVFXIj*u^|HZ76^hA@t2woi1ye7B1-&Ge+oD+ zNB<&NE4femOoGK!NI-Av1bs)XbFJ>H>`P%}cSSmaeozhu0UI*Z;gjt7JoBsgIV?gh zQNK0dYaa}LcjAL~W|j8dt&T0VR1 zOzYq!iwCI04}a>~*zu4W(_^44=(i7z5%uq0v;8}{efBwB`CWSJtSn>gHc!KxNDVXX zaV<#t#-K4yF5aczB;6+RWNultlpS&MW6xE+W2S2*18B7vFLD*O*@~OII2T96W*lV5 zdXr{V}8-2{!1;}6m7P8jEg5gFnepWato6e?Nh_; zJxfTD@8X$p_QJmEfPqlx;!3FHSAQvk?86CTOgNNd(i~A91(ar7i;2uIxH^X-C@@a) zbQqd^*Zd63qMiN(l@=T%eBsMVXIva0DpnmRL1b6O8**vFMbuvrt)w?EGirB+mq)Cp zF4kcXi!&S1qKoFx-es-yNX&k=iEHk{E&M{1pAoe(S*<`QP%h}rJff2VTNnzlr|!pE zE{OdoIG4Hj9n5D^f3_W2%K!aDTrQxH{uEW08QlQE_b>A-Ydp;73yS=#$wzJc6r(BA zw(Ri1%ARXcLRapWB$yYM#SXv~qB2e$g=7Bn>Md?h~;F$EzIgr4)?bmO(h8AQ~sb&0L<(3Sq zWiyc~uKc1w++smu22WY6SvTT^pCq#eY*@-=VINYi z6(*WqWG?V`Ej=Sl;VDoSlosWH_h@h6+YMzt%dXXv`9x~%#%Lfq-z?G-@?c<5IMg^Q z3bwzj27VG0og8`NiLAy{-?>$HB~x#obabpNW+_Lmn3-_iXLtZqjW}Z-SXwRbK;SYe zidt$R6E}($DvA~<$_8(&(0{jdw@#BKOWCLn=0O+_i!QPU=ghpz=pl?FezAxoYpy7J zBcoh16^Nb%WrZuNfrBsRNbU*t5MYp1J2nb>`=0u{xZq+L4Q+{vx>8-ml|(W~Rk4gP zm$)UjA7aI8P%GWCyDZKC68&!?X+Y6)t}2B{*k^J8EDrI=Ot`Ttk7%$9D%KX;Xx@pj zxvH^wlCk80A1oAtXw9s-M?nG{*^@^ve<-cUV{9mw95*iL8}RuUcI|e|@4%PcBp`gc z$q?>I1Ry?v#FY%(e;!4b*s(+Xj{K*qi0>c}dHk^Qpr9*QBZDD|xAx>!ulE_2&OgRm zXP_s*r@1*rC5T7E0KMr7mqy9vi*bg;3&VN9J0=6mI?RKZ=|7N*7}-}~vj{4J9s%}4 zkQWNmXT2TPu~O*)2}P2H4m?65LXXur0UHYFBtW1u+-Z1}z;*@(Wsj2}*Wk(`j|Z=`7m86ejEK}nAFi1e z?%9@crc)h>n5$ne2goQ~Blc&`y7tCf?95^whM*$*NTMk}f5sqza~wK&33P`yetW2Sf1WJ)0H|T+QU`nu@DMv6lL6MNIq3VQ&)xGjrsNcTLe?N zL`9_*5&yIMFI!pgE2cnP>i&>w${RrrYh9nf?(JAP^|#2PPeo<5=gpS`LQIYl*H`cR zC)zxPd^$55BvY5=M`9Q)`*VxKe1!NW-%=*4cfN$|S8KhgGMNK_F$ZrtsfYu*tdZ(s^qly@M^}C+Bo#seah$G4pIx_BzVuGg5*96xeUb7db zDF!*%(n(T0IY^TE`+joKFl%r`KT_*z%KC^saDYmtkfsihVq7kvFibDvs_4}rcZ!lA6tZ59DRRopMx%&*ii?t~h(%5aw2->;8SZAcKvG#2@$)@)=SX(1>c ziPIA?G2EGI>bT%1bLJc}e<&v{CxsWAoE?{zl$DT?qOYK#!dpAAkEa41;|)`5`51+B z1fOa6mq3n*XzO!82MxN3{hIY>H$Cp%#U~sB=z#jt?D2kGuh|@k=pnHC$ln+smT0kX z9SQZ`)fuP785q0<#-4^3Az{3*Ly;djy`#jfRPCs1@22j--1eq58(^Q#)RA!tn7VTf}&Y_ z4QfmE$%QeY5ZxDQL>G*1nVV&*w13N1F4dqAO@Ko3ojD*ivDkJ-q6AvAE*v!XXpMx! zegD!i$CN`PvF3>pi;0;}cu^yDsAo9Eun{pd%8?Gt{qJJeq6_o4oVZ?MpZrMq0*ce2 zrDj|bGLULwRGH$bu{PolCK-yaR&~a_{^P~BAB3(`gNI!5BRuH%`oh`ty?=@5r(*&; z%yy}yM&{{U>4y$aiHvK4C}@bL<^7M9bh5_-aT{+|Q0{b)c-67wB_fnFs8SrFVhg}0 zAl*=BO`2$&F#RoBh8`Mzx8aW;uzM37q$bZ4g&X&xFoR8-M;!<6KnZ0oCXhlUs~=Hp z=$Qcxb36sv)zC_Z=1|@I^4eXehC$vVKzSK{?`wYY%OSg&^x92PMJFE+Ai8PT-%TL< zI)*kQ<|Pv9DL6#F!loC&BFDxEa|s$Rh7BJA+v7WEr0Mq?;@Zo)cBJkP8q(bJ+WuLx z*w`gu&%S&xQKmP}g$KE}oUS5NZsx28@_zu>Q7Z{Lf#Q%J@x11qe(zz5<#$+>bC~)0 z2&zIMWg7jnsZqRT&-o7Vt}$~C=8k*4R_zE;My|xE`?H+F9h>&u+`lLa>T+CJKwdsl zUB6}J{5OT<49Y0|lwFC_TS)xF(D);gF8aI!JP}X{j(g$F*KXN+f8lTi6wH7PVO7?y zf*oOj;^_A132;N?Qlb7qew8B(ojTN=)E&15#WiS=>qyx&Xp!zX-&FdCN=GKst3-dq z1939uSomk&&7XR~(g@JUh;ee{$gLl9nk#?yi$Xq+Yz-}#!jC^84;^d<>}|y}H-fou z2H4R`e84C#bgeRf3dEg{4;IE3A63pV?nc9MRHmLOxMbjknym}+WKR~R-*C5%38{bH z&@%&DANHX($sp|JrAI5H$el?i&c%-&WlO?+P#fA&1l`3vsUaBt#c;B+BTaN;Dj=i1 zQEJg9IrP$f;G`L~O^3SHy=JC!vh-OxEoadq>EyEXca~$5ab?f@C3!)t6CX+u$%AGV zPni7S-#^p^v5dShjy6+n8zS}}ZcJNBMEU#>jvnw{LKI$#6h)biQM8MAzz@VT3iMu7 zXA=5LOzdrHcE$GL>JMTq=qFbjBfxO|GMK~|@A?3D%DHKS^MiN7c`tyuiyY?CPX1`r zOJzy}saH0HJFM3dAS*?pk+8yVYE&`aZJJu=Xcf9Qm3;(_Jnh95a|vWK5hLuM;tQ_& z{XgUrmy<@o3EQqH$EfET9ZS3BpKA`c!GEDg*sGqZH5$~LC~I-)9y5Z_&ZI!F3u;JLv3 z^|)uUxNVZX>47)NnoB;Bd+%XIAZ!!GkV-b0e>Nl;%wSzXfhg`ynzV%jTi`a7EN76; z{GSJd<;pP6)<)2qoF=_YFxlFOL?coQ=INP_Ua!7(Fyk1m@zk0`>i|U5>G2}zg#$rdJGEfFyq_v zA0K9sNW@)L_#Y)PuA+R;u+f&=Q3CZ%5(y>UoHYH1DE~e-D{&P!JrJlI#665geZ3Ps}oc!{U9cO9Wl~CL=-EN zMG3l+_94R5;Uwxb9g5{Sq^j&nhxX+%Oe*R$yw*F+1S5bnCPwFgx^>$3ZAj6|^}#>a z!K~Y8sv{NUz{@IN-dEo$5=Ui1U#vt32evI30UF}VcMBYQsyy8|LwO(uRD1QA?IEdc zB=1sGu;YGReyq<OJd-}Z;&jj7!7^soGOEY7bY7N7& zPqmnh-;$qmnmO;i@N#{nI&BOM>2hun4-+&;E3;1>`6w2Bh~+0t4k1X9XZHdr!O0-O za3r8zxtwh1a1l~BHsZh*1@+=N?7+i#%9;E@?x4dSA`Bdw%gyfRO%aH#nwe;EahQ15W^)$Jn86a>IIJ za%h86Ev$7lEhFm|)?rNAFyp`PAQinEnG=(v8<~-2r83EI>l2ef(8;D}D(0*W`r3~r2f^31H`7kmLa!U2SmJ@)hw}=Ti`4M@B8njUytdRjm3Tp%$ zOarKr7ObEr>`#}JQt7$V0C2tF%jgtGTg`(VfT<5aYOKl#W+2v5Q~z#4zKIm79>ka_ z25meAuCEL;2hNT{iw)t4956X=an=p*A5XjSS$5FlJ}H= zHqrnt+kA1Yh}V$asni4kS6;{|75mBOz~TN3!;l*5GChBYc9Kecouqr*18CKNZ4H6N zsR83jzK3nTyjH}6iU1r#Fw|XeI)~RfoLS`D@p?&nqZ%9Ypp9VmN8~zT`2s@eVR5Ab z3v2d#mla{XC_3@$2nrCJz0D?PhpFyNo zLj4S#;LNs6?S?PsZcQC&{Z7Jf&qh}zJD|3aSa$KCC_b(|TJ1&TJ_)ln3E!;g1~L@D zp{^p+s&p;?IX`o0QxJ|2CyEn~5UjM{(4tE*9`Dn}kV9;3;_ZKHINw(_ZzEIYus3ye z6j!&E7k}iPohcfP+fw0Z>+SpaHjR~RJD&$?4@ak?zsTfX#r2e8`}|&eP(%PLPJ(H! zuRrnm5_Fnu3`-cRuxpcw=HIbP)#7i;GZnsUOb7R|Sxl@C2^$x1?Q4PZYYR(IvaBdk z`&Ib}F;-q8OO)`9V8OZ|pB_jRN$1m2?X2`V5c0{!cIX4idxG$C-D=g>Qts}v$mfzI zpUz)Y-9;pC?K3!>^RUWBCR<_eb7y%?wf$kna;j^|^*moE=Ez6i)SR zJoX)ko8G}7RDx2;K(@eHr5y6>?PcW7(-(~j3yXl<%NY%Iu(oH+y4?gQI@}bcJYRYH zTrK}M|IDsx#uBBLf&(`ez`75sIEw>|a~+yBf18?v(r1T8Gz+$M`{{fhulu6n;4h-& zIn&4C4bp-gFM?mn6gpWg?9CDPocM9jocT>rBK_o-^*Vg1mT)K%S?d7=V}^n7I+qzs zse~p5TZ=GC!VOys6J{dU2@&?I58OATiy)vZqH>9~PF2<(hQjlY*Tao)5!RxM>NeMFlO_(2^ZgrujBfVmEScP&Bk}?ZK z^{;+`eFI=);b3OLLS=>NrZQrpn@DINVHDRtf?%p!%IaWk=Y~qdfO*P>7cbFex6WI@ z$j-U4BzRnL9e?vYhXMK8w`CRh#DLI(fxwRdp)0{E7EiNe)(|CM6X4wrqwX@8_`gBB zuHIiIXV+8UH=zb)Kwhv}03Q;4e)=TBxOPePOXWrjF_*6lZwDqe-zK^M$=N~wI`RtD zOi4}J$DCpZvTbHUxVfN;d?Qjj*$1x;ag`jctFIms2xeJ{1flB0xS>k48ypq0dp%b8 z5*tg28Gm;l?+(7Rq0;}<=Ym!9t#TWuDFS0(9RRHWrgfJ4ZvJx=82<-&6(~Oj4O2%I z^Q8sMGRc9NT}ammig`(h4n^<+h~8ZfSxc}@(@?!lx|<$Cj=)9mLshgYf#Ru+jq<5I zM3xwyo1WlVh!=VGkGUEf;xp(gf?$XFdmeIEdO7KhS*VM@4K_4K30nks{R2l25jT7G z7kw0|{CBLlK=%uZg54ev`@z?OV%GroYQ52&uK4d`&{ULm9!wo60v93LFmQ6pE%;)@ zxh`5L$FSy8W4Ek6&=OHsxh4`z8fpxTh2kW#YQ0(UdZPjk$7aS7?S>&XnH=^=Sv8#b z`Zg0eFp^GArfi&PQ=Ru>K9BJ!jp9pmmid1bAr|RNud?g48|QADnE1A0C9);C7`QaY z6NmR}vMPT_Q41$-Azh@15{i;1Cx>PVg{m{LsDngpn>#FEF~Q8G ztvcR%-<-1H!OL{y-v0DHZr;EH02%C4^lr-_`MRi(KvDv6p9et#9h?=pCzqN73bz1@ zq-tE0#=bW@q=w(iG&FZEMIWhbf@)#?O5tw9lW&!L2v|M@ZH@vFN6-O|)vYd_ zk`+Z^WOV?uxfjMxl9MRC-$}O>CB7b*gV;fj*4WHAo{C%A}hCh{TyW zhbMs;bhx7LCw!S32vsQ$X+DQ8142!}i|X5E*}=gsTWGf7@Cn`WbiX1Zm`vrt(JowQ zbVaE)5+APL2^Z1pF1e^YI4~^2efWY?N?sm@$P>{70!H5MBjh){aQ|P%AmP47y;IH# zQrqR%B8ci02gNUy;)fX0Hy0nkIa%h($LEm*e>juQ=y-3ajOW>>(; zFyp2Z2&(Qd;^yBB0~@73AR8cOkt&=Ij)z`G&k;@czT_fZ6@3JlAB}_8AfM>BFQmCb zCCUiD79*?DA+UcZK?oKg4O@@qe3E#tvd)Ok5Eums+zk)y$p~&QzgR;1T-3lv2mo_W zzlh{!V-FvNQN1tG=Tqf&2Y5I2gVxj2~a|cq1a!=M7AyG{B4~b-n^VYj*%V z?kpumo|sy4RXDGdx>1&-HEQJukSI1IyE|nmqz>21ZK^&VrY|ooimt@aZ0d2j zUch7=$YdN;P_s<_xhZj<4$*-8JnyS?a#|Q?DHZ(75>1N&yvISj+A z=B=Fr1?J3E^B(DrQ}*2vG8Y#8&nwK)>W>+B9Yvb8b$B^}Iu_gM2ZG!PwsIoj!GftV>57Puxb=ri4q;+B&k$p?zFMc8P|>GcDJ5e z&(%9?d}1|8Eyh6L0f&3rkt@9Xg2gJrgJEna9?y%vlH01*AzF{Q2b$$kQ@k6ANiqDG zeVD#G^&9+d*`NSm1=}3kQ_79LIeuoX`9p2@T5H#*ZvPqjoA7otpv64KN984apyV4Z zD_@WCTuOVp(4sTwMLv!-E6L)HM>miilrWNS<5CQSPR%*a_FP$jx86ft$dcPLe}I$fz7rq;2dlGngbGh(}dYC%iC<&z~PsI*=qrO?TO zN^3TiTz;PEtVMZ~d$;wQF|vO8^nia%*6C@L+4Bv-HgG{SMi-9WggKM0Q(z^ov!g4? z`%xyrc+(0dZCfvz(H0)ZFu|+qI3^*q&DM#!9={uZw++VgBWE0Ce*d;?4VufXU)(^d z_(1t8-*2Hv?*dB!V7}oQ@1gIcQDM) z31=t)Rxvq-30GUBa^m9ZE+lc6;b+B=-GpDurw}wq@JEprokL!rF%i86WLIlu_oFyz zJpno~NezeL`Abyvn$_Gu80YkY(%mYIx1`d_I+=C$ma`*Z-ftE@x`C|WSmC;Ic`>x5 z%rCXQYizi8ixgFJf-%U;lo9qnQM8z4piJS9~bKas(`FHzOKza zPV`9^16Pm+fKu{2gpCk)hzo6%Q1YQ&`=3z|cOCx@U|>2#2YG8da8=p%{pf5r|}~4HW>cG!7jNxuCy~Hy|ev~exUH^7(x ztYb1y%Bl%en8B@M!>SLRwCecKXWVAe$nBOV)X@#&Ou}+y=Z!gb-ZtRQKhYnu^m`37c60KXD@`%>`W)G~E{FL)^dAjv~CLzbYIteq_Sq!$Q*4c@#t^xGNU_ z4Wno4YcYxUcdO@d=^4@}pON!q-p*7ibO?*7_kDyuYeZ|LvPvkAke&g;D}PB0-lylW zLPuBeA!ujjJd4qLjThl<--Ye9b=VCeC5OQTt5GHz@`Db)(pat8y zdH3x~W`Sly6Eh>j|Loj+Y%9d?;A(Bo7bh!Nd$7s~3?c1CEcANkhBmTbr&i~p*IIGD zIO6KV!gI4BlX3JR876;qnZYX7^UxF~`4mRgfM(@QP!Cd*XEl7n9cb5rL>$97cuQwQ zhJ?v+EIDmJY1ipN^}Ek^A9Fb2@-?z-ws)h_vYlJpah_U}KXOXX>3NY!Inm#Lo>NHo zae6H*?e6VSu3b4f&27PI)&1JOtbDIHa8fUT!veLUhRkl<>-KK!>HG-=@iKPvf{4Rr z&K;~sd!YkNit>fw9Fj!5q@n^Kp1#yh1xtNS;fpv13GrYN&?jkTq*sxt2Vk@tQOf23LJaUSIk70c zVQM>gHBHb|UL7&^d-h~aCFXk%6Up7>?E8rKn~U~tfGgt+%ZZoHUrnir%cL22J2$c+ zbu{mLeTNf$5a;EbjGF1%UPP{UpqoyQeT0(}g2IWgT2@0}s~MjFNMId*Ymwr6r=Ih! z9DmT1?`R*DYWIEN16X^!7v|fj6-{-yuGJ!64iBAt>c%)!g7R4t z%Pa9cKN1zK3pgBczNMhLI_m7Qxu^=gIC=?blJKC53X!r$b%ehDpC^q2k}EkHV`~X% z`C0^O;iAiHymz^4@o%Wu*%-4KxEe7au+-PURGi!@dl?jh0w08H!DedCR zUxyMl@&guaTc1CVFdcE>jNst$C$*>CeGXN5qv5-1R&N?gjgC`a2x7mQm1u@d*jy$Y zqoZ)-+>AFGos0~Dy#a?^qlyo;pcXuNl(%sz>QUcQ5(kb17bb~ak=T+x7zghnn|K=KF z?YQM0H#}FI*KwFNuKOYBvkjt|+(Pw)x%8$jtmr(&vORoYlxTzE|9;;v9J4@~BNjj9 z0`)UIHTFSBevW8-BkVQPy}vFJMzs-ajyipnR#_`Jo>i6bXsasQN#V$)ETOC+~G=ckh?;$b^=_nN>(^~cqOh9ct!BmANTN~_RTz-5lBgo zP6jVK5kjG5%S-jItnsi8fDeWk@WB`beK53u4@SoC55}j_CS3&xl&Jz?M7F|5CN#?wK}e!`LE^|?&!M zTt3N0i>rOD20wp_Ef@?l;Zx0#5DjP8=9R?s7xC-}q-xr>a~E23xXsW%!eAh9fi89a zYgO7;NJb*^1oH?9SB`AGY@OhW%QI-m_bMCi%rAQaGn;RBG>{+)7ZckT>TYPjG9ZxyS?I>MO))eNlGo@Tbl4wQTpx5dNMG=`k>XaI#USX#-5hpoPBbAL z774sjPB#qXur{&+)oQU5N*>NB6W?qMq z5|}WMCHusEF5)k!xm=GyWBE`#{}J?NaNpgruQNTvf!+*;?2^Zw74T-V!A@Pdk2-Zc zB2^P}%#(hc_ib?+1-=k|5BoWS83ENES_!dLsv%kGD^hmsKi`bc&qyD>r8Of$-D>@L z52txfF1ZLPkE*`6&>nG7x%zDr2C0Q$EU;E6hF9$XH)r-?$ShU(ky* zbjOc-1SwJm2`LIeCNffg`${JAN*)g%m+|2_$3s9NSm>4rayma4UY0mY21O4aKXnXJ z)qkcP){qm~6eg@nFdH(|&~RNJ?32DiyI=lyVG_>Mcufe)~;LcGXFIZy9LSpM0>oWzGfYE_V)g~Gn zO4CRkW6ZxU<~WCSwNbCOdtQ{xdhQNd6!Egju6KdO$}5sG5@ z+L;ct$W6h-Ni$36Y)`nBxxa~aH9EcJQf>hw+!;<5bkLLF#^n#W(zFdGx!OG&o`f#L&W6<4UoQv$V{=Pv7VyZA&flX0cXJ=ZysF%Q=a@ zSgxY{mpe-v)l}`P&QD2Z?)7hbs-6qTKiov^xQ{8*dXM}NhOQ*a;U`&&mNIOhF_0L( zID#wZ$eX;-8h6T59tSKs7rf&ah9TM5e5gOPMsS<9!nBVywjff)n^+wCFq=M!M2n2e zC{vtll+QM7%%}wve4k4chOP=|Dwz!QXZ!s9cw+(MxH3;a|-J#bwU|YJ?XVn#kbWAb7P>; z6sonaXmQL@H>F+|GULAtb>`1}5Qr8*vdJ!-o7n zqT3WoQ&>{nyAPu8FZc92X+)jy^haHR{bE&OgpKczGU<8m6FN2ILTX|7bFMo@EbW{~ zN^7ZUcQz((SZW3Oc|kO$dBPz3u&iZXS4Y(zzn9^RocSeMijnd*$CCmpY6PI%nmkmX5H)~?+ z5iVLCA%?y|hQ6GlozJ3BIxlw2u(3}Myjx|q;q~}dk9$4KuTFb)tdrDjQZvdSHOxqQ z)tZDyaH-gdO>C*PHp^^^j*8@Y1Vs5RhnvIO!1N65I=pfqda=?p#7< zf`x<2r59+b;{MrG^##KJZmOvMzndxu@;^=0Gqo(=jBM)$FYk)N68FNw?FE0wb(#k( zsHtjb5(kD^urXA!AjkcMVQ3N;kvD*3b@bb=MD zESY@=mn(U%7uAmeJ67_O&}5anXdn3wL9Ao@gR9-gF?ji?w7j?&o17JQ1E8sbo3FXr zZ>C4Km)mc_>n3zePx<_X)r~sPss2lWYn=RZhQxx1sDeDya8yhXu4(cb{@cXEK?I9! zQj71HLT0qJQq|#u%L}z*Rh=k|*(|-s$(;D|m|2xodySa&hHXT_S4F;acKh7#_0^l* z>{vCdXQ#Imrxqmk9TE%M?i}MSX)YeiSU^41{Om?|_n)2$?srdh%K-FL`7ZcSW%O_) z4VxX#!(CXw&sAyE7U-$67p_9pTEVyi0vc7Sp%Ksr+96TV(3Pohk}0=g9fe%bLWu-F zad(2pLZE`Rf?sy~OMSpGpT1=IC>u_u-ae@s?!}O3 z6)Y37j3Jf;$G2Yi>ljUV5aC;czuD3}25VEJD#-5Y7yx_`@r8d3RYx>$r+yi#{Idr> zykU*K>t~KUX@SQY`l`AC8Q5UhiaJvlJP&!7);N=A&=&SiCzn+F8~8-kd{f9|VLJJ> z^T#cU4%OpJa)k^rnNUL}QiorLs@|dNeVYR_Vw-fzZ{|ZIR2l;!&B>(t( z$3#j+e(8HjA6Xy$Kk}Kv1Q)CHzW05NJNc32g6*XB4MDG+u4S&|{%SoqQeD?G>l6QC5-rQB!FR|pr@T45KV8_j!8;!|q&(-}9+ z67kC@B5auHE)@mHEv1fiE;+aH+K%yC`mRMGQr7H)14sFvTN>(oW1*9H? zFQZa3M0OHmmpZb~)W*d+bk|%ne%GA$fS=usL5VER1B9)g0BSQdBSBzkOnH~fX{7Z9 z#EsTBSzWf9$R6CT2ym8r=vQ9iKd=Q3C#lPPz!}!r4I2D7j9xzHahUtbf1s-f82^Bv z$8{6jGuJ6izIKUt)8}@$jVv%?k)Y)RPPoo;qX)QqZ3$X>E8OrOgvreRrD-5UU({7`WJi3qO_aQnvp)E@IEmwUoU0P^`|M; z>3Cmv6+1nYRo#uMzq#7-;ro2Q5y@LqqAi7gQ?|TT$n^HEEAH4oMtTZzfks@DQ@J`X znl->lWMF1%(dI{zj(o_urw{B=axLThg@S$fXexq9+-z$w?w%ciW+je3u3$pq-ndw zy`k(S#RW$%`xsy&`rROqy3Wk2wl?A;R@R~EYU^$LNgLM%$YXSh_pzf7+^b0fjLlDr zE_m@F{8b}cvJ$~}H$BY#$kcCLz62-n^UVKzGBwx7~zHL{w#M--OGqS zmy6@_k5J-#reZiI&QwBP_4`r7NMcA=5sP*{1wHydWFa)I%KJZ4ZrvBaJtIm|)`B1A zz4)#H%kdL@{dNDar zo=LinIu9RT;iL8dpA~{4>Q%eOL8WTIzLjKbg5LC}Zg+-6b*2jsHZ1RpRN(EjL5r#L zR#5i$>C2TxQ-$CVoS{^JERZbvnvsa2^!CD}7vJLwa=#nWI^a~45Hpae6MSEQ|Aylg z244rHxwFCmCj!P&->J~ikS_V4#@Ai+sf#sX0vb(W2t5iND=wJe4#?~y{dmmuFMGm3 zMm82j59c&%~xnOZIRYd^?*F;B_PD(yWK-2@HU0@l~%;p=JU0i(rDj9esS#J{W z1NM;8v9iOYY}rM;$3$9EWVjaRVLXQ|VM1~e)7IEFLaXjP0$Mm~J9v?Ma+kz|> zzgJ$vLgl^y>{)FI9l-n**xt2V)Rp4t3mMAHl$II>ZmGPCdqO;gRjCNmL>!L8D0a?g zHVjSu6rSfyFY}VMvmXquHvlS;)aK?J=OxWLOc*`G_U#xo9WnxArs3^z+x4x_n$8%o zyn`K3d{5%^XL(l&THYlf(afRmRGl21-Tz~G=dqSk#%GM`MIb4~g*K09D11)%=8c;N zP7H^68svLciQZ@(FQL*_>#B1E{nlCpjtkAf);Koydy~dq7Jlqv)b(G>I}&qzV0ovu zBx#YzN87nyfZprfX6wNladG}u@ zYrTIaYt*3So&3v84e{TTHN{|oB_q z?3O_5UN;0^mb22w#@$F?g`1k*s%Hk2Hik~yJLTyl$z(fyTrKE%i>I}i+l^oA-nYQI zSMUV1?p2l0DWDcX2KI_HWZio|LSxueZj(_1!Dj^-Ee&O%%h+gVGq6IV)Zno)DnN6! z^gLi&w~TS7t6<&mgHv!M6d1EDM*+(_4m1H^c^9a0C))k#F47WM-ifplWgF&zmUlYF zd-8q_kCdS0ozttMAHdG{RaXqGpIf&D>hX|KdBKCo!9SOGynf!G<=t?s=DN%8<(>TB z9!yj1o#4+)_&@93xAm-sz`EB*X`G;*gQzm{Ou4B`oAWylZsw*ajgeL~S2n%_-`k|U z_ZMb7MMqgIc&4BSQ@>oJ=z7#u9k7QZeP?d{di?=bd6+3NII-eKwB~lsB`3EAs2};u za9;0z{$o_4Q+klul9A+I;06||Hrd!=LD0vXc`6F-N3KHaJM4U4zdO=-T|SMHddrNW z4yC1{C%9KBe*eR8zH`$-27X)yGMq;x3i7lR{xX~g^`?3E&Rzh<++ZF@N#*el*ad_h z@lj}2(sKz`J`prhjlx3lhaBA?Wp~%F8(60=^sTqDbz#mZGTWA{Lrck}sv#5rmm`ds z+-@qwUW~8gT_XgAZ*TeYDfo2G7Yg8$(wSzA?xCMjX z|8hAZ04~RY&KJ^Fg9>wziv<<@mEdpC&nn_(Ic6X3@Q_;(E(I^EkuQ~KTa8Y0Sldx9 zEx2T_`#EdPzt{CCyZZ%VW7knYbc&5wsSRM*WXSlV0(byf3!D9!3L zP6;4NGk&5i?0-_4jTZlf(k$EZACzW?58I``CFd$8So}NQCwn92h7ytR!|}~%56m2Lr==m3)W35QM}S9~ptqiNhnE z_I1$J+1C*s=sNG&6PkAT$DOh-ve~c6z{pzNw{Ke{z`_vV6u=^{5y%f($bBd!xP)5Y z8rmP`zb7KwXAB8KI-S7S+)9f=z9p9460KNvgx@kI%1KSd*fDB zjk~g}XdMtLkzqI{ktK7X5IE5F&FW~Ftw`RUPO+bH3ouTQ>se6xpq z+Tkd;NwP1Y@2Kx1zt~D7R5phQil=_*2Pn-Rwb+FF955c>XP+0fwMN@(cJ}mbmy9|q zT8FplY3_ozq6Gj-v*+i)eQ(=*-OsYlEz#575kvgZYfyY+h~0Ni^`jPUxLh-?pH7km zG|s8reNhsxUQd|uxS!Cizt5EQ5UM*hp*q;5=Dg%(ES}G7LiNL8v-w$Hovo5FZfx{s zfs=PZqbh;3_(l;sM*P&}dg4;#_SA-_Tve>+T*ASZhln2M9`@XB8@AhV&o8{YT89^r z7xvC-l6UfJS4oF5nGo z3xjLD*&(G6`v>J#GdwzC7PtV__)ETi^J8|uIm<3^I-LytP=fX$`zzedvExx>UukTg z67VpXQ)0S%l+UUv8B?>ZP?A)sMcm86JP#5*U0me4l_`fEzD>Q^7i zI-@>Diico5UHT^b&OoHh2lZ0hoXd-yUX)OZMgqSoD{e2I`X)M}^R-Z?$UPveH&1V8_9W?MUq+BsD9bV|No(j@HsX)7fWkzO|0zY3t zZFQz}sAaOFY{z{f`*4CWW!%?cXDZ?}4*VCG3eIP&x&`rV!jFzsXtMhB+R9a^D)?p2 zw{K*>SBwnKV;U&n=nlR+6`6FH!uOmVgBu?$OVUWo86Gv6%Ii2x(Y>`8zv@YHo<#lN zzwmQq=PnwT87GMS%}Uvi6)CcS@D$H?_VgcX+Mwcw;t4gHmLrr-aZ@gb82(2ICB^vu z;CY=CZA3G^&jj)|uStT7A~jI>?8O)1OH_rJRcjU!#+iCc-$I~3Uh6p%*Hi1PZ9K2&|m*4zyd$UmC%ue2_-46wnAVbV7nOf{`GNpvgeP$#?ofJ0Xxp&@h#L>h*fTOCrbw zMw=IJb=Vh)Y_1$2&Em;9u zX#8vjqck_)7IjqbFO1(r-)eU1_Lr?yMtgt$^XvccT=)YO)GyBk%)eJqLjUf$sL~x? zz5G)_)&HrWmi|;wT-3iSD8j_!|58Dj{YwRP{9h_4vGZ-Q>Tg6J3#%)e+<4 zrtyo+oz|U^H&A}3=SeARR4|6vFD1YVR)pO#J<-~>X)@4`PQQ|NrGriKsb{514!%KOLg`B%ln4?M7X z4sR>A%Cf{+b-;6Q>dAZA2?+0hIM`;|W@CG`C7^rtxLn>8 z5#B8t&oZr3-$c&Q>5t)M-ZOGEf@de%WJ5ofG!I_DTbYgPRwyh~og3!m@gf~mnzKzjgb%@t(1_>N;w_`vZz z%$uK9)_+`Hrv>J_UtEdMk%2O@S+)){@C9Pk9tE3lHo#;w@Htth4e_aQn6<^sJTB|l z<&;Ku5wKiLt!g}EXS%AV%WlX9#%Q&I`%s+WJw#bevwgvrZh`TkSE}zmDgLI}N)?h5 zRtlf}HI?Y0Q$dsE33cfhi=^3R+~Rw033bIj`Ar$4fTL=R&Nl{@aU-Uz5ZTFOQ4=Gn z&NY*qgjr;Z(RdQS7^$iB!vrd()CvvtD%REu5z9xlF8OSRZ0<3?s2;P~En#~1 ztVVYT3JL4XP+#$LNwCbrEa=cod&>{;hp)mACm>Q>r7UpLWa((DFIgDITq{eh2BH4Q zE1&Dq`(eLJXZ~i0+EIvOPnF8*fO__d_fS^SX|N4dcjQZ<8^M8O-B#L^hI~C$))Y`b zCCi-E(q~6cW&F(B3pb-f9oP+Z*kAP% z0%Bj+hX3jF#W86qjKOnPcRQ$l$^pmGY+U<)_0yb@)BlzAQ&z(0Us2;3)S2Fh0Zv(& z68NJ@_c%0W67Cz^RD@L9DIADY2^Oqw{{#z}R!TQik~i?I`(02XThjaye&GzFR#Dlf zSqrvOxEa(kH46)A*ViKnW~g_T9Wv!Ji(Rjtt}U_2ThzbX$- zKzDW#h|U(Sf1^SWz=~H-raKSj9qfW=fc12EDZkN5zC-KP61G;0)lPItZ;nf}lpQVT zR+j6Xy*cr!Qj;cf+fm5zLXmJl06CYlOd5q#B8r~Hyrkm0=Ru)Va-ghI%t|~HQ?6%g z?nwg8In~QgCyrm+gkZG_vr92V>ILyOmqeX2CX~byB7G@(hv4#|Y_`DqTh+>G3{Bi3 zLq(kDLNnve-cULwiyEu;Zo9VzJn_baDg0#Luw&Nf=fNU(W;&?pXb$;wh&z6(K7QLi z&O^Y1YTV&5Mm&D&mgDrw(Z_zu!|&0?3Kjb4$dWm?Zzq>d^A&7DBDFq>PQx)CB)gX z3B9+%_+X)&YTqbcH4xvnm#yJ8CHK*=f$jP*a%Iw|n0?ZY=Jle{8`Qh^_pnB;MGP(- zEi}nBCqJpDbiBPQBx_(2ehNA@Tais>)w5T$N<4$@M7Y6&3PM>>Zra;!4re2{_v13b z?bN66C^8jo`l}p`(y&Fi?Czh^g6R1JK9i`8ilreG?}Q<4!BW_) zXkJ)OPgc6RuC;P~$HxS7_;x(#lkdk7(UQA351uVg|IyRwrLvq4;*ZKAWq#g57ZD2` zi;x4eLJv=eJb}=FRdh~;l@F`0evFpISPqBEB4kSc$f>!71-NDU!Ez@GectRuee z-W}?3uW-Vca=}yg8VrEByF~M*lwd%d4AWA62cNORDeWH!T+K7FPDBzX1}8=t;vKle zj#gF?J8@4;K7-rGz5ftJX~GxeW-9I+IMRqZ4wvkJ`)#S&_ca7j&w*sd3g+oY)+ED{ zW@W?n{O(@S+7|FF>e(vW;j1`xmCp1 zOXXNRe~fc0_lA5EgG=@ta5fZ!*O(egv7SUgW|*!o{Bs?CEkkW_f_oti_$$M|#&xkm z1r{{Z2J23-iynNdq+Uy*ZZxY8$Y`B@X zH_n4XRB+>OFJ!&^kv*)k7pa+Am+oOR&WHDTly0}K&f`*AiuYiYSSVKj!zR=zDqBzI z^#_kC+pjGKNj4aZi^bQ0-xt;|TzfO05%JL%Y1-#c`Dfb$pXR;9c=+ovI8xH@$#M6& zPcHqJLrMpEhmtTOE=eR6Y;Pswmrq=OjI5WxkWfz!Y$Q?L)aMVEGI>tZL)l!+ED!i` zk!D|{EtSw$*q)xasTt2HeIZG3IpyVhIs^PH^;81Q-#3$1a1shB=^!&yf92XAeu8N2 z7q$@%*@%blNlCh4nb$0>1gh`&VbI}rKXABRG&2wo6m?vpqd2w7Oiyn6A}9(G_X)ZX zsg9Vqs1TKDL`^Opt_h^M;USD6|V#0J5m%@>~g!JmJ z>GzeZju$OUswAG8PkJ4riao{?I>E>VQ@&Yr`YtB>Vz;{3`jgZJLGy6I3#ltQS_vK{?jH=yhnLiEM>bue}Wn%U!~F;W|Z&rhf_`Fsj` z)`oxn$jnEAyQ==63E!au|6D=M$BEK`uuqC2+QQ!&LqXD5|E-bpLwk#9X92HE+Cp4s zh4{oo<#5*aBq;~EPI%%5^x(QbrW*~!icqe@E>`KKpzvj}a}S#O$U$@Iwez)Zl-Z@b ze1ilQ%ye4jgzV_oYnq_E>yO_d7uWS)Kua-yG_wo!;-rlHg2N@EG~HeOwNFAOc~CEZ zVqtO#9dTzg!}P8mpVOIL4~}NE^>m0LZohalx2_?@?*39+ZCT2^$(cHS`qj(lT2(#1 zGOM-)Z85Hd%j+kIuMTe0fMh4V`h?fC697{C6H-B?t0Sh+26*hMhTHz%e zBV$g0O>Peqf|N4`mWp5seGD2J1~eHQ8d=bD(8LxLbTfhJ96u2el}JMkM=kH#_*$hK z8W`FWk=@>7A2=WD25>`>A4V>9%iVKk)%&3@1okP7-b)(c(qYXq;?aK*EHT);4ZnypJK_9No>;3Hxv4{4p;c<^A(g&el(%FM&rp=iB zt7nq4f%qKXF$R{42`>n1x=cEG`Ok*fs;&s@hBiC3Qg0DngyrgztDQonbMXWskodO` zb5n)nrlbiE@>j&x1bBW4z?X6rJQ-73hIxzVkdo$(mS>bLBxI zEZM1u;yt&gJ^q~9mc_`pnKI4Mm|{k)>*6{UIAt-{r~2$rD{Iam0&Lw1vF$$62BZ|; z6|$OdCWM6vBN+-?Lo?#|3!gN+bsMgkaI|+SLrU3S34h|h`w=`~FH$NXb_C2ghg2r}gEO@sOX6U0{MdgrQ8YS$jI#)Df zU(TgDC!x&o^WxwQiVG(%18^uc+;_I9r#XI~N6}(^@qZ>cTHg|JX6SKTT49fzsOLW0 z?7qd`jlkZWLw?M0y!6Z4(Z5%74n+>UdA+nWH_iMLE3OyW4@q+k+T8>)PMYlJ$?NbC zE?MQ#$dx8Yh~O#LEGx{JMWuNQ6B#Nz@Cq1Hp+S}uzq?4yLu6VDCz zXp#9O`?wA9c(`L4?##2g&Rt#DLy4?n3^#eW6B-)P@4JeihLF2TO0+jYR@eH2^}Kx$ z+i$i~Sc)L`#Qc%Lpm47l^bDK#6FOCd+(4@17ZbqgHxuB;Rd=3ZXXS4uzzDzuh)N;x z;D-4k3}OPjnsqW2BXGx}9bo4|agGm>oha<;sJ?-kXd;tM!tyWD5tn4QWe2u6D`4z` zWnD^sJZrgx$b86&JAWYo1m1a}?B1h!*!p=^QceaeAz3D566%A~5;8-7B@BFUSX(EV zF#P(xPN=vWLGP9OEX-HPN3^1QTfcw`Jd)`A`rOKp4aX zz;9jKMD_Oxb8p3*$ek{wQoaiL%>)n^qy(4%3yGuiHFUXWxdQzF1|TM?FU7yT?ED+n zQ}4PojxUmP+8I@DCH=sUQh|`4ROwK6?7Qj=4{2TFS`T#cJ~KTuf*0*b6{+zXS0@{v zJQl68m2k2oEyT@mC}uV|%bd&QoT)!T?p@X^Z85*1WIwvEqja&m_>8%yrPasqJ_%C{ z|46vGQ4FThD*B6Jow3kU@O)nVDy~276P2hII6-*-n$U6=Z&M`c92a?086m4;?@Jto zie=~-v+of5T@}m(lNB@X%NJYJjzl~-&U|N9Yb{T->QINuB-M{7&I9H`;su1Dky@|F zHyt^(d*SSK6;;&*d5T_%UD>vC@^Kubp2b)P=w_@Nf0#5VsB1rbIk2x8q~AJjnN_1n zsy+ch6Gw^l-1{lBo<2tn&)}yECib#O-VJ`4%dDmM&rFdlDf1JUyq7U1b+5}@lPq;t z6fg}0DxE#I*U!dn;#sWYSr|rM4R@XF^Vk`ZU&bI_RF+lf>Iy=qCs?Rtojy^b=72xq zjk51HToH_4Xx!Sg(QGYj*BrC&n-uzZAb-TPVG6Cn zHV?9eMX$yuG$>8fkDA8H%E49M&*0@fz(W0hWQvNFl)6Nyo*-`^Kh26%eAt!<(|N6k z%PNxfDI7c%0aFI)B^fIiL^T=swz!s09r7c5qfmZ$uZTx`t)x^S1Y)s9yXT2_`%_=)NFC0bs)_0w~IZF-i5N3mIo4(8|8Pg?_s=Vud7r@KHvYj@a6$7ypyskm-u4D z_rDN<{fZS4d&!lynpd1-=$E$vu_CF#)?_wzPasw_{sw*EdZYCA4--JhgSq|}695Q_ zX#Euu*=qwa0TgcHds!YCP*#RJD{rUSlO#D622koDKCj$#*qsG-#HnB!!lD89#K&|% zNF*Y*Spviafd0b-AT=pDe-!z}1klASqjwjF>C+5^s9t6CH!ScNEZj7u#9D_5J)l@c z46pdH{5o`)0!SITeaEnTkKKzJRij0Q16*I_^A~)&Tt`J85BcZC9_BjoGaBgniU@SE zCksP8=h5n z)7~>A)uMx_obA+lw`Tp+wl+oAdBmCMdGy<*>T z52l~Kx*KL5_t&cgjz1(=9 zA;^E~-=ig{rP7`|Q9qxeFVM)D4U(?IY)8i0gDZ)A5CQxDt$)A%OaHF-OaJa9yt(|J z`uCn6`R=&CgGD(&uxQ{RM<;;Y-RJ8D(w|@vI1nuAn6?g01A;{epkNWoj@%v)EE)#| zix4P$M}7s1^!^GKK{wj`Yp}@wQgxT&?He5=Wl>GYR>EK-{rHbp#wAu_grHy%vf5Q+zR8Ycj*ARn*`d5u^4$_0+$XIlVO5Oz@-B(=+a@u7=l+25eOD#v+nXm zA=Uen*fY8L>z2hU4y*^_twCzWf64j177GNe#a^a$f=?tgel7;B#W=p-+k*c|7G3;( zE%x>EYHvB`1Zt%v>aP0Xa+kT%XzYEnl4IN&z1tmJi6|tsNOdx5V}@dR#w-18&#U^Y z+Gx(vxP5coX!Qu)zU<7*_QOB=ci_?iq<`0|1}+`8Rkvn}i+}6i(GzW<|1((RJ^L@g zqOs=x2o`AtZ)*SBgW8_`GvJYAc^%HvolOf_SzAH+ z_i$#J^si)uYN26>n3#1K$PBdf3jBAhkDW>+?2tV@YQ67|Q=HIs?$}r^#_j#c&?a}B+gM51OXodeGwbJYF{7E?twD{p5rX!nkS z#bSGGnC!s8%h6EN3-{vNu>DXv&e{$C4}0+;Iu!6{_^+-JyBXkT@Ay0%4Yi4+{sfCW zZ_a-Qi?ZWD!6HJYU;6hGGeH0DFqr}9-@*Ur->ZJ>-&sKVckiklvaaFJ7gQkqd-Ptv z4xoR}6GZzA=-*v(_UQkie}7P5*n58s=->UufMbWkcTuu3vy+|b{&HbZRgkjm(i6ym zbHx0JuV{8nxhN-?))c2~1dzTAX6kj?F}eAMVL-{EZ|gQ8RbWg|&I2s# z>T9fTt$b3yQM)}t%=)$G`tnewH`yLiFTcnAN3san>E^XU0){s9;yF$d-mH3b9oQv} z+ZD+K?5|`|hRc@>K~hPO{@uoo$S3C?*A9UG9pab%eX7BNaM1(Mzk|J}2kGCf>rm`2 zK>BxZSrb72ZcdAv^9Z_j;5%Q+p6)MIv}wE}0nZwpGSa)ssCvI~`#AsW+Cf`|vkPnY z;2-+;5J8&1^zVcq{kz{y2Gsn}P%AKR!8RveM8=Sv`Mfl0n)?>@C zg3@W6o=X}hDj9ReMs2k=t~J#pG&XW)1@t8H>&(|vpkR^FpJ36M{hwe_)vsVtC=e`y zyhpqT1&cB!zgGWSu!sQ^EZWuorGFQf`mKMrL&hniEVwm*`_%If{rl;z0-%3KjaKb3 zKh@Z<|E+&V?Q0SMeiPNS)98-CM)tgBvft+RvE#*Hl2z~l_FijS5?7(EqOUHm^FtcQ9J_bUWw}J^ z?;er#LQY9-JD1_QIpC_C-g-GfcbjENdO4AFmpQPlWd@!m(iO23qj2pKJ8QE#RIe@L z_VxQXqZ93-+eu47IHTH|P@qGp@-*9_5_c75k5HnXK-v)6LKebeNZXz`VSAy{4o;td zzaCL!_COFYK7|!54w%VMgxaqq_MWjrl}s-@gu3&u4`GAnn}I(Rg1!c?K=w$5c#VN^ z<0sd-j_NNLLTf{F`qlMvI`<8dM8be8M4%wABkGEeg3<*$8X0x;`TA9Th}q&t2F!cxsY(dnic{*q4v6N= zgAHX{C@ZD6^!trr1Ypg>^i}@ZTbicui3aL28Y~mTxw=OFT(qq#>+pqZ7hlplQy3ny zy9i^O@kk*Slgt*%6$}PsF+BuVgov3=lMw7!Zx9M8Z%LTVUg%j&&|^CWzs>zYeiGg@ zIv?YxqgLj}Sx}8o%91mit6KCz(`7IztwOat$bc%&hcVZM^8hh}94N*E>>a+DIX7N~h^`7G;0Zl_$? zHErf1zm(D@T;u2@>K-+O4ZqvkFfD|n4!^FAl34i=X)9z&Hzd=d!z2>2Y_PnBmJ(6B z!&K4)R}5_fsib8vm=el&6Yei`2jOO%`$?bwakyOc>cF8QA`|5^3-lj!y z$zaCSRNd(*Vo_b}$f}^8p(Wj_?2!VODJ~V6BZ`~Qg?xHfZW=a46WewQQBfVXp%u|R zjCZ!@N@4&(_7u4HL=HnHx_*JsGrZ2e@!6ScvsT0&&B^1M1?^y!?)(7FXQ#mMNIf)? zUnxhvhdLoqp2Yr}#tauicB^wt@~GK@F!?Z1#Ua;_JiU_;8~fgh;I?4 zybZ=x@7BFd{jcQ}9$t}pikS!B9Zw2dT&8##eL=yi2*fn^Pl}^bIj>N>9V;P9&-I_5 z8>6)`!=k-iH7DlO6km;vtDKU^%iRmkml+u-Fcdx=MKKsjg|v$7LW12mKfxi|^{&B>6bU)z_XR39}33R_phS*C$wn z`_;=Q%H=+4%&5>H{LQt7pRhYVVcl;H{n4S^NZYEoEmk zHKG&eKVrI|znv-lgomJP5D*5=2_r~`^CI`byr-%@PXL@tLggLZxErUWg@XPD*09@2 z+xYeUv7;E6AUAjP)I}7Odjg0z5$K@j;~(NCcJT&-*&dsWfbaY8*E;5pi0HbcY~Y|x}TBs5fW6lLF^ ziif6jD<3MG;nuZ9Fh1g+Ci@0eLd*Mx6|L|+a->t=oc$uJbOB@)7l5pi^>?yL42Z0P z50F*l{)4RI{WFq3mXOdw74dzL8Z#mG%vBtkwQ{dzGkfEPn*#@!yx?c`|}BT$IsOOB|-;y-@#RB>+f z^DF4ZAp5sbP`~h^Gs}Q|b z_Zz)SP~L{0Rqx@fNBFG#+>vwk-4`?s8UUt2{$mFOfnX_QE`jN2*qv7GIeu`(8IgtyU*hRQ_XbeUs@QA7^u5o5sGg+tH>`C4ra@|Nu-2(Vc|p^lqyA->&bzn%Mw+y^dJ1Df3SEM)^(nte)F3E77vKuG!4GqX20m)a*kI9@SEuW$!|i@$NdMt zDd|7>O{=~_CwoVOi^1yj1g>2~U!n}AM~ts@-&oDhDm1e7kNtpgT!`G!c0@?|H4V}* zo&Plry81N@VzoL@KXSO+V1QKUt?Pg%W(|A*gH0`Qx90e;iQ2-hsAwdb|N z6ap9qZRlYoySp!IL@;mVMC3&N-rA!|1UiaIG=dH0e~^�sG<{3qwu;jX{RGvmHCX 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

_$X0HccMAIuCVB zOAAN42kS(3C71OMJ+3eh3itRB3+w7A%9m{GO6C&U4y8_yx%p8&WXcT{$Ng{Y=1816 zwXgbD#USb<6DHY4ti$w(qw*5^PxKcSNFa5N=(@@0h3r?widz(7f*E};9)FIU2$#Xh#MR_Y%+}qU^;+TZi{k(yH1)w^JLSk_GM&b zMzD_s+FcK{V$aq2D|~>NsMS(ju9w~3NxI?pGu3M0wUcm5%{njNvM%`aKEXwd;V zORsIG(>h}aB#+ir-_T#qHPzS3{Da3RkD#I5y&(1I`OZSBy$Iq8n&ZaDPoUE+FKvJz zp&L(x(O-&weiyvGd7#+zXzU>uHNof`!f8Z)CyyujivT^U%f*{p0yS(5MvQkB zaoOrA4DAB5enzowe`wLT1<2z<9zWsDnfqRFVp{AMG#^RMulTZoq1{)FO@R-(e~}e3 zp&u@O4?N`=ShDuIqyU%o5BeBBYjC)N-36Yr=6@0re7Qt+iKpZ1K@UoOZ<|`u)rPiz zLxmKUYsJf{;MuZFSot+pSfr~=O$}$`WVCheG2Gq#$x<6=;pg4k{jjabl{{~k>`=NY zkD6Vt4H60r$E{&%-f1MaI{DCQ-a;>AT|bqS>c zN8+zf54#QPYso!Rev)l^H+sQIXt6qx{3Io${QWU^-EHdmRbTvmkK7}wOVq;wT_0WN&7>H@J*^!vp}xV5u45u645-3oYg$i(9IhgBg1e z)60wbdi|I7LxOeWYzn%@Wv2VE6CArMPI_sw8b>8RiZP=_4A92D#t6?pqgO798R)rS zmo_HZGWlXC{js6SMCj~dJ9$|chC0)5n-B9{rEq`@=}pJ8-b(Nxe+^DAUX$|FmK4IW zIfrGGu$od|%vb22JKQ_+k&^XI6Z3nouclwXew@SQmDe_ku|g>LT`b(V{M=UJAs+Ig zS5 zuLXCzUlzS4*h$&Ncz3s#F!+*ASbh_hs~7rY@_JPty(XM{(r(YHWW>zhNVYWp%}cJq z^HYFe+%waudX>HO9qk+Kgx)wzRwKDRcInQt;QmzdWox#AOp~3n4>f(!ah58jt0QZ) z)Z;Gc8mpOS0T(};n|}J+rE~U_n{lt+S|@FD5&iq<8KF^zB;2i{4VSCZkvhf_4JIz` zt_0DV?6fH;O1vzMk3-XDk=$L9br{g*bjM|pGw=(gu*-}pGLk9iC^2fbLE?8zMl*3D zBs}|M71GWbL;2aS&PwG?1I*J)oaZe%)IUo|G0?ZNpBN@VpSyoj=6@uQ^}@aILmN`3 zEWM5^6{ru8)iUg}L%%r@jf8hHX%ZfhJxu5zl}HI$XFb!`_&6CmUzvBfvY3f_<_@1q zyK4+4HSFzZZc!o0mtW!|$o;|hnMyBqn3{G>=f%+h+5L+$1}ExY2xBpLIWkJK_?AMk zFb=-tmZ!tt?!(#6G*lSTz!3k~arhq5y4dj24_b%xN*yQ9L=*lYGUcL&nC?+8fGiTu%+AH zQhey!DiGQFSw~dHsUf*LC5OQ6A;i;vci$eW_NB`kK?ZV04ftfzOkNAZR;;4DtRp?F zjL#y^`s{4F4__ZH{$5(MI~pv%nIPbvjRElF%30bhuq27`+ed?Ej=H)?2+efnIN#7& zT7TitRxq9B`q}pl))4*-;t3(L9CERncF@Jl=E1c;a zlm^M5O^G$<&^~^Tf2B4F&3gw8M=)rSVcyH9#JBFK4g^6h=SD{N{i0&39m#6!^*)lx zRyb|sMZE|4HZ5G-S7{;K`ev@bPu1?#LXvOQ*VW5qBjd*ms9fn|dB0f{`|Q9F|Iolg zGE4DH&+qsDc%~?V4}?aYut*Awv6z1rTOTyM6dX#U4%}*xzMGnH=MMC@5%|2$A2bSO z{%i|qK~s#t%2)<)ZPyFq)rPFpCo;e%|8`e!I#dX1xXg=V!us?l6(vZEhj%KslnS!1 z`ET8i4OXW2P53P5+QPCB-~%?0C}%KlodQ{ZqjO;%Eg6J0lY9WE!Y#ySxN6}#hvU?b zBu#_Jd>v}_X?&0G#~Qbh>~SB+mPd^zHTOeL4Z--p;yb`mKBks-l!&yDBOmZL0HXZb z#BCU1Pk|@U)o;S9h*cZL-%*)I<4V-((CB5!XvDEK)o-s%!qfA3e#IXvz_$P5L5aLZ zwdeN-#E(+}(-$gtK9#@6U;hoDoHHBWQ~bf0qE5glKr*dF)k^k+4b>(~m7%^6wN2rI z1YzbnV(;kumA7QW1lt#QL~SpGlVWrWFmxhFEHMxe1(pFSK5!x>;;-A^Z`D;E)6%Wd zW9sNtXTVt$Xv0cZDiOLJ4!S8>=KSCO`f+jXWwMJL-T$-HA#eIsqNq$2KMk!Q8E<19 zC(U|D+WY|IvBA#oa2HTU#%%lU%zEVM2#G#mt-^bA-ZozTU;sYv%6!nw-CI_9Yf(jUbX62MLg_hU)LV>JWB}=h$U~;&!xMK zh}>s0=US-p_078oDYIP5c51MsuDZ{hN+*(D%L6Boyg#FgkD}*<$y2_ZZDxMuP?giv#}nWEbQd zGJrO#)1X6ilE5gxSY8%eB2-P0VVf-xhM7q@**o1}*ym$HvIVg9RbgRVNYcz|EDoTA zrH`4ST(K#DmVxYp@Ht_?b>Yngf7WdW$Bman*e}C&47#8!k?^+1_7v1IDz=9K=i{gB z^#aQy9YIqRZWDmH_e0P10uys{Slz7t0+}|=SD@mZzEQ8yTQ)hkdkLT*n@z^&pm%*4 zx(y$28>N4^-Dk><7nRaGv|73A;v+N zVd2ef(;fMunH7Aisu*;@`f13%aChMQDed3nNI?j3kttbqNv5hs&ra*+JgA;ozsp#B zHoO*fCvZyhO+Cc|+~CLGfOFccOrXSfp)}i5vM83Ht!G8)<&GD1y|oIackMas(L3_$ za;y7v^@pn@yY9n-D|m;%xt=n#WW?;8TvG$5><5boguQQ z2KmqC+rvPpr^xIXa|~oj0;_CaIp~x<-8!9QYl==#_xxgmzmQ=ek`N_|jT^iaKmWc@ zXlIxcSF3$!CYplqoaMM-vFR2M*ye{_arRS_JE z6>N<@)H-f+IL3Um(pmP{wGqZeex)7OVNd*f-$v2-JTV%cM&UnBLFycQbC#~Dx4|2o{|S4Ci0~)fg9vgG#IrwFyS0pylI=t7#a?(qZXOo zDEGwi8U!1LFWnzdKGn&l-b%hS+fImX5Qy_)MtcyTGC?D(?DFJwNPXMe5tm6@$B2#J z=4D#x@Ilv+@Krvk9f=gv8m4B0DE+)d5jRAaTs0Sxj5d+66){jvpVGSv7|o2lhz!^jOJ+8SaRKwogY`2K z*=jwCjUM4czz~Vd*ADoDQ9Y1F#GXa1Pr$r}H2R>+0pHTcZrUkdns>EQ27i|*C4D-7 zBff1Mb6rRRVQU@rPD|WAA$ntxdV50hJkObVo5pC$vbr z>;bZNBi5F`J+9l8b_em%UdXJonuEj-az)(zn#ME14aKkqLexdw z$NPEDc2M*x$w&L?xs!pH>oydlgO25IFKAGjtJ=oOEXW^4C<0DW~`0zz#$?i2)}psd5xw-eMrQa*Gy1yWfS~oQg6CWCk-#YwgC6 zXJRHL@LRuW>-9N|vUlM3A5o#YDckuV3Q*r<%w8A9GXq1Vi~L!|;hi+qJ$}0q4K|Xm z^rwzFx+{leSq$iqz@ND~5Opn4caiK?z05LBuZAF5526}a&d*rafLnRpzIXl^lxfFR z8cAU^#Blc8h50|V*Z}**s>P1Q%mQWu`$eGM#lB94C5Bgp*d=elw^f~Et9cRJ8)R|$jLDBwE8=gWjFB?k$8?aV6ewG za_v>9mIT%VB;ITt4rdqrk+#m%CTQ{%(>f^DTjib-@8nm) zo@Hp=r^gR-gX-j>EHoY+Q!vA8i~E!Xdfuf%iIcr~d}ap}Yl@-CoTPj0vK;%*R3dX% zD^r2F;j!H8QoM||2u9k2j3QP{#1)(hAf~#uKZBP_ldv_YLnD0oPj5g*h_qjop3nLU z`fv!W%@y=zgZRw!FdvX=WGAoV_$X1b0mVy7I~!vU;kw-px=C5ae)35Q>0h9-hT!vc zHzAA!1QAzirHJ8zY)R874u-<1N*ss0KyON`G477{_GsbT z6gpoF!kq;k$6d9UrvHH^u6T~}b(nr-;n=v-LNqUw>)EP6F> zr6mfTgDp&~#xuCDMkw-$kZqI04UtypNcskrQ2OSF+`caLW zIu={%Sdu>QBa8um;H=WJ(JIMiqd;?$GiyhGXwt{Po?zZY9sc6-r$IMZg@sK(j+u?m zPgYDo+SAA6AK&Rd65=*32Z5qzM9M(&D%S_(RDMs=o?9gSts>6bX{gj$WrGQWpu|RC zyzOUx0MTsB5@f5xsr^tb1!!*0o0--SWLjV(=F791+RBtw&Xfjk>cf7^abm$hwh*aZ zIywPsy{JmXk|2S4hfsSQkhq8@#~RvK%PEZun|H$9O96pwE}%EB$kS{9 zluhXLB94jUk8#_yp-o*NR5c|c^0qeAk@6k9U6J*d?W{FMp7FA zB}>0nqCY*l{^u#k+e2KC+mz;c0BCvXV-ra_lL{!jgUL5AR_f6VSyd?s{z&OI=*OI> zE-O>=3`KQiWOF)a?KUY0S4D{^I3x^@b_mN=XsQZ7fcDX2!_qKuS_ZZ0`Q=eM0P7{-?JhS?99;mUOOe2?9y0&lBah(=pvOI@L>!6_ zP=q)mvkJb>VQN!^jODXy$$=;Od~+4UQn%$H?&vPySHAB)Ex>L+Y?POv_^XQ~w z8QAvi$mal05g6Yoa7E_>1_oe5&jdlET4L@SP|a>?(v$i$T7|FQGN53bn+MbNc|%VG zsTSCb>iT?aq?X1!4Ht#J4>O8w?sZ$;4^tde2b=y|m!3P}+Vx!w6Fg;FHTDOq|i=&@`ct2LjnN zuw=!13;W-~&Y*LIaw9Gc2d1xvWF$Gp@Zr^rYzOVgM`0yVbl4jgX{=DZcm6e}!pi%x zl(3D!Y7i2}%<^RF!66GGT6+ceX{6 z{_x64EBeLQK*RofR23sUU;49^pPM5_=CjewLX!hO_`=*R?x918N-22#W4HC)i1Y3- zT7V7?8%w4f(Tz_@{96Z310r!v=PILGPC458gwYx0t?DJIIBa^LD`yZ{qeqF^Z zPQoj%BLGezOst9xN}ER;8gXuZwha86R^<>IWE{vzd4u&EyNKf z%g+xI@$Ik6_VGudhl+Pe4;vD+p1h%>Yt8&TA);h@_-1nU)6AVr-=~>)(9V+K*l6=U z{`(V0&_Jo(gpiYPkm51XW|P2i_GaBa-ej2vbX+Tga~u+W^^u;h%1%96Z9ctgLuAfd zHkvf?7OIwVNP|!57ZiA~FdNH+Y|VW@Pp$>_@yt~aL?STlk6gfwTD9e_i5m$nt*8rnO-ZV)?SwZ8G_*U08+*%T+h+#9 zq=;X7CiIW4mBA7c@aW$A?Lo90hGp5%>q*Pxn=WQlX@_o21Tv1>M-@W{N%)a(4BQ-* zZF3N}e6J~e-~Y*k)AkP0@{^I^tYRlrd!0P)KxFDAB0BN7LlqnZ){w{EkX8PTjGn3C3H@Ww#l@Hj6Fw`6^*x{$ zizm;0gO368W#xmJc@W?ZP3$XZ;sG5WDN=-%FW1t5Ac0le^L6=7$TtcSeiWz|;dmWZ zU_v1B)_j)H#IVJ`&@DJ_g&ReTL2;ls8VVi*6{7zsG4cGA@D9^fQTss__Mau_Jq2dV z64`>Gzu>wXxtdAYbRT=os?z0Z-Tf5P0a>VfhnSww%WN`ef3iQQ_D3(gz3gp5mO-vG zSer!(zTGZS^8xdN5&7J-iOjymn!TGt@AO7;Rr>A^w(tWAnIan?JwGubolao?DI@qH zK}z-8)@JvBP8wmUit9lq_E-FGAi=bODKUVuhCt}Aq>p+cGe1o;ikb@R241@e1-N&Y zgLmSLq2K%tN6h^WGL*PrftLFg^~rp*TC=pK;)X6fVJewO}A@Z;1?+l0^x?b>$hhO&G5v2j<#Wh3-M6 zq_E=C=A@==8zE7sxsTt6A+aFxchI`dz7K<98?CqKpf4N=+g%C<;fnEG_V-t8cET!e zfTil&Lh@-AW1x;DfP3&bg&Bb$jPwDhY)TmYVk?xXbEM>v8F6(U-C~{yiJ7sEy}o69 zbb#gwIZE*0hM&z&^;0Tj_ZpHGW3M>*+9{u6Uj_8jzipA|rSlr7Dm%i2z&a&B-jB2n z=B>`}4NC&{Mx-%qfk`uO(?hnz?4~0K+NrwVN3ob4S5|BwB+*~(HvC5kuwCHCi;cUw za^z5&4p`zN8B&)bI)*$pA{qS)B|!pxS}`$s z6j5EdFjt~sK2E;n380vXH((t(vwW2|MmKPs47Ll*UxJNab$(Uv{NoLQtMiH%5O6y(0p~-;=*onhwmSdpr&dpDPuNY_QwH7?HG1`FuNB8u zfzUN)@gYzZz7%(`C^DhWmyFSiX?%pa7d{7nXfXJt*YhFg;yUv=xhr|I;qvXGEHYT> zDbG#QpA`gtj$9g;!A~gQmj?MvDr2e~=f*lhv@8DLVN5gGp*#9YOVddrvas#sS#j`7 zp~Qg;u>@27{8h*U)-h~Dl_@0`}G@_tq9g%Ig^ND&3tIRRlR zFEN@}ke~}UapleIyB~f7$f~tbelX%-yXbHt-)}4Qi%h&TISK+Lg^Q5zQ3B-9GNMgV zEC`s0Hzh_9VLjo}M6MvU>dU=Z=JNtW3Cwk|Xh&G9<2{OOLf7DYlm@LZ-&*s)8|QmL zb41$1?BbgIWid=*1B0&}i9mdBFwl1{D%dZ19|jCH)QX7sI?Ijr_ZMqSY0m9{j+G@; zpD~pj1@fAa+m>uEm2TV|`L@Fr*CFiTNRPh!l-l#+HeVVkHd`Tle+`L*2HMivzJfzzGB z*7VCJ9%Pbi=Efaj5u`Wi%=}wL=-_X7?S};UB=2gnS)$iUM&rtnAEWZgRVgnr1Lcg$*F&tj>Ai@ElAUeS zq;J>gR@aW&cpC2F{lsko7QT5gO`Zzwn`^f>g^+wU{$$sW;&^=r;Njj=!OxGzxMDg( z^#Y|Gs|HlZg#vbS{`iUWf}SHK=(}vqGi}MGCJtWG=V?k7|25cFswIN*h*9p>&)xZo z5g|oJ&yN&nmKQer(QES{pgd7o#@+iLXK{!pku>SCGEd0|$vtBh<1Wt77#qYO=zYXw4Kcm5vdyL)0PFOf!{9|Ok z+PlWO)%u)U=7M@vIX-f&f^XEwkYWL!7n+M7C+ONN>i_3WPb1uCL>jMM-k{-wAX#V$ ztVPCMYutt3`Rl_dJhp;*lkCkX)RLY!K6;`L3lo_ePc?;8Ob-}rFKr?LZ6VTPQKtkE zMc8=f3qhzp!6PnY@c<_C6KiRGEaA~D1R^DxrUVuHZ{lRe`d(bA3*lAcg94R$^N9K$ z2k-b9U2*yEbN9>85Ui)muK#SxTXMHu!{-8b5386hOaJTs-G0_RE`pAId?^b=O%`ph zldpl-CgXVjHdNi>YM?;1nkwG0*LZ=}pe)>`;J!f6&XlD0$qT)ohhkxnnu>4ph>Rj& z`+6`FjxC^zp>R9MK0~Xh3W2%7A*>n!SO}3S?^h7Y4w)qy$%5l5FH5{;$IECYe=i20 z_79aMU9jdJWu)EOd`Rs|GX+?C>-}=1Dm+qcO|*rmO!h6Bea^VQ75ViU+Z*zFBOhRC zuG#2CXs-Zo1i7SAHf!-*$xHo+(-G)xCA! zKsfLyDm3v&*=^_z!h{vJ3V$X}xevvkZi&WJ(v2jMx5s72f@UF@LV|4JeCtYt7_ZJE zaH?|m%z@C^Th8^i{1=GhBTMeD|4uCsAvL_9O&4MIWNX`GazeFDpsQcr!}lx^Oh(Tg z>4Kc2t3rNjA5MAMd=T&!%-Z(1AgvHPEl6?2213e`nvCIpdz zR+!d&+EQFvPr}NB}4J&~Jeb1J`pEZAE8ks;1 z^5tXqwu@wFQGJAW&7)3{?SjnOaTdZ#=+8U;$oBe6uz7@VSzOxJu&k4f-4(o6PJbXV z_vkkt&RoZLyJjeI=qUJbkyTNBgA zUiZ^{|E`uocWWQeg6_UT;k+LN<7wZz#Clh9Y=*cx-@56Vh^u$fjIrA|;o9J4h^li7 zv{Xb>38g2WGJo$b|JV#kbzwmg;jG=H854)7QEmLQLl73RGx_GXG`g%?Pt-b43rO)n z;2i(RwL{U+jJd=aGHn(&U~Fkpa=Yfw+$%~@?qrVP-)|5E!|U#E3li`C126!!M*J%eZn}n6uplW`bY~ZJte+! z6pbHJryF2saAubdE$E%rf5WgP#^%K-Wuw?TlRz#(-71`|;@7wbe)e zY2BMtqefSd{w(QPkme@QsD<8crTufLCg&%zk(Iy^io{m)nY-CB372djj1w#Sv8Pm4 z_mCzA)SsLR5FfA*Cc@vgK=qIlAS!~LpvE8UzXB39sfco*CZAvc(#RF6+Aa-jg163I z-Loub%e7fyfb!+X)Lmjs%UR;Fk6L`U6Z;2v(uhv#4AhTbMk-&=;~?4iNaiI|eckj# zzT^q@c9{$js)its+r?0Av2*^a&mypUy4XBjqHKK~N&UJ6-JZ&5I=&=22X6Ndlb9@z zo-A5e>Z11wStzwCD~?)mx2q#@Jn48Y@XAJ9L&7k8D!cMI2}cC|UFBFIC!v)T*`P<` z{*j=*8&f<-D;`_LM;raO7$h>&bFg|trWEtBiP%h%CRSm2*v5+{HsAeY6PcAxt*EE? z^IHHdLG}GCpXlvM!pnT+9wt0sY=JKC)@!Fl0^FyNa%kUfn-wahB@nD0Nj(Vs_Rf4h z05{gVK+u@-?IVi~3Gx+z3q}S1N3y;uf@^`XJU6d++R^J6$`b9*WareMbAd^T#FQF+3*6{N4!$ixTJVCv=bPEwr2cf< zW>A1`^x4VmCGKIXIdy2(en9bwe>!Asz=3OfcB_LcBh~MUURK`7szmnEPu7;^>C7iP zrR{7|4&N(Cy(ZFelJZe&ihnQh4>PF~m>z>aemCic6L~OBjn5S(=$RI?aSVU)3^l$pdZY@O7vaWz`%)^ak}Wk6EC-wP;NwDJa)P@MSPby+ zYDVYdKxOq!E${GU;z8z>z>fQTKE#+z11@f!ep^YCxL<;TVG4PT-+t)g6ZCb;IqBL^Ht0}ijUMZzn)ty`@ zGD&Lv0rHcS0y04{gyk$s$kxs>sa^)A%hV0s^R_ds;X#oQP9fAyOc{b~yJ4B~(8X<@k5gN)tmQ77lR%MgeA( zw^Kp+Tvx#cPiyvC=$Ii`mim5DQB_MiV=nZOcT){c9?M>$`z|IlLxDiCjK)%`iZZ{z zBxay{dbPF$ik@8Z9bcPE0J(WPF8hT7-Kc-K>)z^j(S}}x7z6F2A8IiRqvTj4k2mOj zQss#a;*&)T^!vCXmb*lkp>%2ED!!o0cN==T6p5iaf^p3pfCX>d(qN3b{lPJj@eKZK z+2mP5unptl8`Mb5`M{Y5DSbZ~K`Kyp-@L#N{ONED0%=SFKVGbV$A_d#VJOrm4`|+A z|9Rr@bCC%A*LTwt{vau-b#|rUCt&^Y6)~mN(6DH3=I8@B=?P}rWLkq9kl2RQ>_C2h zigg!bvMkb5!8f=NBm`KIu4EC0mx5ojh=WY5Q+X9Zr@yGcc z_?K+TR3Ni@fn)Wu9jR^Af7&2NQKJ19u}(K~9}t1^W=aT9VU&jyseRe@i;Vr=6vDCy z@YrSo;W(`UOG1p{zw)o)K+)a|G_7Glm0zONvE<7gUxu1TBCEK}CpV|?M1brct#w99~AcMRBWkw>q?=HCB?|9t0d|GYk{ zmK`Lcn|5n)I0a5)QL{(gp~Frjv#h1q=HYaMRVmgDH1_ow0ctwR;-x1%0dCW6X)hXzI;_3d|~-PRp-!^VCM{rMW3yjwI|-Z)vk2Z4S7Z}Y(){b8gq>& zbUz|E__Eir=IHH2&{!Bn#84sk#6j5wT7r&{+!|~~eVLvZO8TDo(I~k$Z2Me~7kJ*R z>-CnKb!w9cq4uY$*aOk$7 zlR4*q^lCEIQV}uhbB@m|#}spu!)}P~@=9t5^TzAIv2`*(02mcgKC}8uSu7P3$tGn$ z9ru^*R|l>zoLTkdsznSh2R+{irYQTiK7n9$2`o=%pGByXWTTpD56fbmgxHZ(v^9j4 zk_t1DLo#hI4F5fl5ahC`-s6fngA<&>67+&{$MHCE_M5Tt$uQxUe~U?=?;Ssq#jCkA zM>k|Ln`E|cz3J6tX^1r?>vFLy%hmjALCBvLc)wIW@A^VOM2~Lt9?%g zSrH)ry(SFb*vD>pFQ?9&&>wwNn_b+Kv0lZN%azYD|H?(&1s z`NJOHw5GWs355Fsg&U`9=sYjgAab4C6-ytyGp~HE&1(TX$}c~NBIuZaC+PJu_m#+c`ZtDb9I8$aVYLIfYUeR}q#SJl<74-srL2Anrk^}Ql6{IQQNYXV}fge;e~8zCQT z6baUtWc&LU<`keQ>)sVi-*J8iH2Hu$>|fcRzw~#(MEXRK5%rFqXfV{2(wQ%~{nUJc zHWGyBa%rg$JWJ+D0xQBM-T6pS^;d8SP6D3%2baXCx+}QE5;Fv75}fI@oHn}BDX*P= zm3Cn38_O0<;74}L`sk7mMMzQsc+-d1L4Y0On*DARm&>!im@lhAAOv~4* zugdH={pO%d*vPfsM%AM1$1qjR2xrc${`C#ZrKN!75KMS1>sX%u;GQ4Re7oM`-R3`* zX!UsVWu9<^84V#$=q*OnDU)ToDXVZWL%Qfp0s3nWip4pwTq#@PUM?I zo{O_Cw17SmJ^9f*fUY2fp10*5?{vCs=SEvUmsGn7KzzqY=(E5i%wV4-Vo2lIaa0Zr zsLK4Ky(h%BovgMLZL_Ze5$H;FajH__DMlrxX<;J4On9~~GazYsw)6aQh3ZIt^1>t& zQq+l8-@9pgJ3KH`O}x_bP%FBXsU`yPTqXoG^04yd$4KkvWHCMeYJ*KgQTvIp)N{;< z4w`;-QPY!^A`z*uzjPhP6RWgwNdtoZiW;vR{D}(ixbYr<@J)_I6 z=t6yX5{ICc3449$va!zij0MrALVz2;`)&+LwYf;Km}EIIe|a_G6D;|fD(Fw%vZ*@D zh%M}AL2`3bL?F8JQ)l3AyUP38u8zES_T#VApVnn7!{M(w>~*4EmT zuTfj=+B^0hrFKb;qSR>Zs=aE2qLdPwQmV1nbLsPXey`WhKR513Zpq1YopV0#&&lXO z>)3sr;URWg>Azf3;F`_DKB!fSUTZ`KR!+Qh|hze-1TYjhaM z8&UVGj3ZLUDsWk(o)9Ok%Rxi?)nMPFprA>{841Ri z=s+xAlAxii8R6dhx5U_(n^fR2b*2D~7L_bVWJZGi}(5;Qh|4Ohi zt8-wf+DLzmzcsf7#V2hW`OLd}R2nJ?_tY9Q+P z-{d5O9KU-r_gP^8=$@cy@sco=1ReQgoLokGn6S_fYCb{yOs1WSFqOPGRDW~A;Z(+x zC6tw}dw+{dJjxIj=iow`pDD{{1Y{%qD8OoP;_AHcf!u+b|Df-p$9mO8YEm-trd4)s zuQ1cKSU;koh{tKE;bJ?@1mdm6GDlDZI= z*tl9{<1er5`Nbb{4U+=G5CEVna_m0fdE4zHzgY_Z>)_GY2zq2h@&}u^sIh5fJ=)Mm zsuAU~&)6sdiQ^FTtsrx6IZ=+bME+Y|K~@AUE`RmCeT2r8gC7k)_J3)8`)5MpvxPYP znk2<}R6V2!V}rupvO&8mtgn+Fc`2!3+!L=JP-eoofACbv8I?pJc+0hjU{#Z06`L5% z(-f?((uFQ+L}P<^+r1G>`Ytk;^jT-+5JD@^C#25SI)?4kZwbX~lFv+`b+$N(5pKZHx2@Z17@D^qLq< z_)W6i33FP1XQO-^u_QZCA(}n133{#*0-CmejbJexMvWR*<9JY11B#9s@oOoz6=kze{`W zm?n9T_5G{APRpqZQlWTrGT!pKX|d3PIy7J%#iejlgzVeJ&j$ni(mpzlh*WrQd7hRW za(#H>kUAQuWe$Hu!1~PIX6&Q=Pg;~l5bt8(FxIO<$FddAgC3bsXO>I`o=jV|%ui!$ z-9OB9`0NK80?m1|G?-$tGVD+C0&mMOD`MXtlBr3F1+CW%&gVT3p}p*gHYe^doeC<3 zkuU+QH6a9RrV@V4Oa|vg-h8D5HwTur5X%WajBXoSYaIr{(W_AJ$D;@d z$e|ib4?z(&9Jv4o{V$2Q?eOA&PXNYwm^eSSmPOVmZ{KLT89M%$UT=M4wdw>!49tW-;m(s{KB; z_IwM1(0!m7%v(bPAl0WVtDbe{ud(>w6{M1BI^3^w%ur47hU;bw2$kOzX~s_}>E{j= zpL4(&n6PH*!ZGy+CYXNK(ECNTJWjpnvkiaulhjjh{BIQvamJHX{ZSu1)y#XVy64{9 zX%CJIjPj!F$xNC3L9YIsEobWK!2?_RZ%K9Z4%zMJA7lipVxM{-XCpuM(~azN`6)G! zFSV!4bVg5QQw%S0HTRiCeQ;&6Dwz+7tBUy@=2oJ3{O(q^8!lQa_ULK6fIBmyKcym^ zDd^>Zr>ZGCUF3xS_6MWS<{#P|#9oyRt-1xuo#a3d_L7+7_Md`ps+30Yc7# z_uyvXQh|o=P%|k&42Y-iULL;tTMWfv`SyZ^6fXAut4Ep=9%6uHN^|!fgii~7SHD+! zmlJ|guo?Gt-`=o7CSmWdGUGmfiGY%@BvC7DbBP|XN<)c&n4)9>N(FYjt-LY0d$n~M z;`c*H1n$bk)k%b$6TRUa(!+9)!a3FN+QKS$sLrxeuW)zHP1K6i2UWIeCn8|^94M-w zUuLKJk$~u0&rSRy_2dULMKjEt^xZ~-6i=Z8TVeUrgW73zozsSH!u&LHZW0*PgTH_3 zWa2%E$xB)g%NZTxA=>w;rR=2X#{~u?h6|_N5r^I<2Y$iq(SL0*MVfF0n}xv zXza{)I_$5d`;JrexO{}~uN@X`HqcZ{itWD!AV6 z%J6`Yo#^TGJi28W)%R$ZyJPD)br-|?SMqkJ2v4T2@L1U5Z)3!V9%XF;Zd{`xBnPDd zOBJd%nF#dQcBn;IoKftvd)&!Epkn>O1DgN+)GmypS!;>1q0*n6zhU=|H-mtydwOxx zQ|iLT%Cf`}l1M-NvVczRl4jSF7#@>q!f~soaU*oIATn}I>TqZ02xWpvMbD1wpf3`| zgl7E=g7~)i9Gviund3lV^HI55i~2Gdgm*T&V0$X(F((n22lf9BZWn zthiV```L8lyQ^~7(wkTK5&xNp`;CGgHVD29gCySamlx2kSH_zvC!?z+I-oflDUdiZ zBs9l4srRH5^~TCRn>|e+2!|yz(?QCC)g8L*ki88=aXd(Dg9ckZ`Kmw=@p3kie8qht z#X2H>7D@nIMCNEtI*QDKrS(bu)|-M!`|$ihLqcFPB1YLbpjPQnQtT+3h@qlg?v#dl zz+Ko&lE8j_mV)p({QCxw`9cJ;b-y112cA>!NOs$+%{wtxl;Lg6ZviKLQ`B%q==>{c zif=I18$p*qvE)(_XiRgD_QZ!9y`5m+=6Ha{R3?1(GxjYCs~CkSe-+CP9jVgQDZ+<8 zbO9eXhKtg2%DBx4li1~Gk@K2-u;AHpj~JL9cd5@{m`S>YdtF!v`4Z^SY!Qpg1+Q@5 zo-oI0(Wa#lTljO{1UT)}q|Y~mS;V|Ml(H*O=-t}W=d1PG_ZIW=aD+8~*>!Gt@)zEP z)OXtqi)`3jI@Vi_i4a-_zuuW8m9KR$1uhQ}DNn6~Nf?+Jx`hyNaj~g5KL9kVV7^yc zp`b;?hZn3DwVVLSu+cBVjm!Ctv!6Ky+=UOU=)aIvLNdD~v0CAiKPPiuR-zit^Hvu% z_agkYb6+N>*SEcjUJ@uC>Z6C3O?o$1{$%Vl4@T%ak~rj4L+3RRHLD9!h;u!Ac79*E zeLxm4AAz7Mg{P+nO0D5``Y3+?nk*(pO3Q=nd>s7WFo-AtTBqT1PYJB8+J}fqiRFMg2BK0FR4Q=$0Ix?YETgvQQy^C^Ps*#dALdCQMI3i~A;R?G0`P5(jIl!A|D+4-615+3{v`r^Ct(ZzqXBZctYE2OfE$F#CV>5)aH| zmjfUclN79B&Z&|xuQ?tskb?=+4X-aTLEC{?8gVX%$%WdGF=6rB!&Ah4Aw3_6BT`P&B?OnYYlRc zLNkrU@oL3=@w*;8jE0F2*2o*#twDR%mu^9Fx#Q(T2wmlUhwC6Vp8FyQ#!MwxZp5Pe z_vglV;IYZS$f&c1e(eOQ*9Qii0frrcGm0ijwcjeO;+ODw?*-hYp|E<^C4w){ZZWjT zZZAD@+38;x2%g8y*x;nMC1aRbeQ=0_c7dk^B;61^kb|K!LfC}{q)y;~kOBY@hI3MQ z6!!3e<8@|v$P?nTckRfwHD6K|-wdIBp4)Ips1AX%*pQupC03WpV-5??j1KYJ*f0;h zsloTjmOyhL#D^9qGEmvERVEz>J_1P?r#j2hQ&7=^W`&Wgg+~TqoG%s;LkeM>B9?Y! z*mAarPSsu9-ZZ3?&W#S~ErIqmshR{m+aZa|U5?OVwMneElLh=soXm_e(J4h=S-Sl* zw|$>#-00rwa6+obHn;=wm1oz?a9#vW6>E;F(kiy^pocx{omBESp-MU%Mr<{T#4J>( zD;H=S%shfDMkkOCcP*rsp4Y}Rx zFrvfbSBw`x)#_I#-q03`5gNdZ_Vo7FC+G@{-QMAe)$JZC&3m1xQr1%cI8<5hJbZqY z;qcqQ5(I>-QsY2fCpC9z5dHv(R>ve+K6p_*Bl&?SLBgsRFZW2I03J|6C!E`|_ZVz2;}LpAVx zAjj|a!T;3Mha1ju=fdc@Z`eMd2u9}#5jAP5jgbHbb4~d8Ko+o z;qIUL$9@491bX-1XS_>awRX~nRYcl5HrO-WMQNnjJIYU??3K0r2agkf$qPXMxQ4pnd? zBwU7Kn#EZM-TU}--FzK2V(Djgh8=^9~0=_THuV zdpsdq#zG8>aSRyz{VhgDt`Q@U?S_vQ(VEsAuaofLTM6v&!8F+&3$dEO7LvqR9-v2d0JJ$U!Q8-7LWf{o~MuiG&H zh!dBnO%ZCykRt17MEXYY7Q+KZAGZNv5z9)B)kFu-$TDG=m*hE&qPRE%wRFdy-J6TSE@-Shz`tS|e{7Q{k#tUkR-6dde5%6Xa>jKJxoo z$+NS|X%Mq5W{4cTqGMb9LUbDHM)!?0vGg2~99SSiVx{$%;gZwKgwSJ37dI52C0~gr zUxF=POCW_W%%pUyp#YLPX^dU#2*(@fp^NdR48Qnhi`!GG!)|Jl?M3%|A`mWP8A#%o zD?D3Dc|f#67V0CEFUm3SFcGk*+0fO>X@ED>&!!R+Le1E}@2JMMQi@6F{Qtusrkmd{ zBiht4p-T>p|A4^Fv3muZY#f9)`$P!RIv$=%`fp{RB!k~C_YQhk%wAOs4u*g^F9ExX0>}FRNn*% zMPpEk5ba%R0FxFA=eWazZz+S&phRo0A#ouNdcIm#s?q!NiYe9up(&3ezfrDMzW_D~ z%J96PjnDxwqGBZ;tS!KUw0I4;_9rn7_Y*6AmxVpCJTHmW`J{*9x97sK^x~ z0D5;UPsoa_!t*|Ehb~tg3Wtg|NTg|{q)z}8MkpT706GP8G@^@oGk~OqFW^bO6@v6~ zJqOZZj*65i$qm2YM;p$X48%hr@(7((6mfClI>oTR5l{{(trXcMXUF3euZ)7|a9h6rGv%`|mR=7}riO^qVq0jen zf^_yAgqW(F$>f?eJi_P2TP0)J2>;=r#GRV|a8Q7Ws?S$kARgg+ugir+$J0(HX@_mXxmePis-7Vu8UOSTi8F z6k5pd(!U>&(}5~VGv;{pJN6AirJTelCk32iyNZAkHOUc51|~qE7@z*Vp^|LK@;jnh z4wXNoifKeFdtT`*Z-KQ;OY{zW?w)bbcBs{1HrbN+`&%YtVBK(_rtcr5$^d&%i6taX z$^*8lRVSS&&v_&S+z%+J>E!gO33ccxH@Sk&sxDSh%DN>qPAX2Wt=O-s?g7tDoTRvB z19!Y2%WAu^ID(i`{%3A`)P9scnDXI>1ft3=V*^8l{I_xL_2il%MV=T5N-I_NZF!+_ zMNSl?I98e8Cy&8SIKmz<4CGGuC}qkbMGzZwy*ut6T0mDG1}|M^i#+D$<|M`1k1zTj zUxe?+X61y5uW0y2F5J_K#--4yvsT+&*7C|CuMk+ z0OVJ?RmMI6+S&&SoPZjs_YDT!PuEkJv97rUz;H~gFAA9oM6)RbIKFT3s%o&U;ZQ`s z9;ZaG3Ki&IgID+10uV@Ck$8~E{x#7cghGtYr!r6Gu<(@w5^Yv&ML+_iu}AZ$7R&c= z#x5G+pNeO3U|E%YtN(94Bcgl3Vzd6gQTJ1OVJ5wBfy`m%u&R}VN-0WgDSe!2Y{AQ> zi?jqgXxgUOU(CsCv*JP669mrVDdL_P&Xk^&0|kGFHxmv*?)`&%IfW4eI=6kv1lOA` z7;M=?xmog^dGeub`LuOIgV?XsCu7B!c+39c0PtA;XU^4a#m_`&R!V#ztO#&T4BZ>$ zOn>yGw?^(xeWwuS<{pSbpX4No<`xcvX|2mY|8U({YUU8Mul@m`Hx|S@2*-aGMBtJC z2ZVwQ_&k;Xn&`#g$?{Yk^dDOzsUhzhl#i2BEw~!O>;YucQiH2l2Jpc&pRi4kE(k6% zLE4=MKYD&`v46^)4XX5dVVXNPrU>^gD3vj(JZr>0E?=faHBrxjPE|)FZ)86yj zi078nrl`JiFKcR3iI>KCy$15{YhV57;y;zMXZ%9ISYw+c9^1u^;F%jyNlN{j+z9)m z38~v!#Qu|{X{Gl)@`DNozuHcOueKdbjUm)6`%`X{WTFaH2I8Yy^uT{;;?9v5os3;U zCI7ugnP)};OdYI;KUe=HFs@!0Y_tNXGXJd9>hea$o&NtDkeazPe|n$G2L_#Z;m%3W0*9#ll7nuLdkvB ztJF_HGW>6GNyTPK|F^i*$=OVT$#?$3go?bw$S|H(3%LQLADH5ioCP~@U^;Yedw``o za8Pcyq7R0~2qpWAnBR%uEb{xt$R?g9NDh2r??s@DN64#3bz82HJ#*f6Fab^uauZ92MbV@rpg_9p8ysNN~+>}(+_g1P<-9MojlrZSSZVL(vC|!9mPka{~?r8 zLaNMpqrg0v23jzH3naa<4jxNsV`K&FEE-&qn`6$fQu(i7SLz?HhppS!f3=$21Y8S9 z-5Rf15%(XwWe9js*vuDU#LvR|-0DtG4w3u|CSY%P#4>MV1v=8;T_ki)-Sdg4R+S9Y zh}J>eYepUO{V!Q|P%^gAIGIo6%hJEBxtx2XK;_ge0lEKsbSV#PnjLE%AoJ}``kR(K z*oa(UnJ^95FY z+3$c@f!$&KUNi>W>|jBA6GY1D8+G_$+&YB&<%gT7iCMCa@PJyvx-=m#HLzJdl!L|@ zgjbeQTp5H28Pb_4VhHXiApeLfGc5-K+71CbuLT0GS{I6d1;BRy{NrV?0S$Je+ zLHD3@6ENn+OgCu_$azP)VS3C}c)IF;zl*or+qm)Wt=;UFbTFX_DN=Z<3LwpM`bCD3 zz`QqXox6qtGlkY`LBwF89{=?X$ha6P0XoMpsN4N8a+@Xpf*JIag_7SRZ6XD*tWy5n zTNI3R^5)+9Au+l+{p|ELHzsx|ky&41u-L5E4)#@YK_`Wh6On8lOoA}me^+Ns)+Gh5 zj>?Za)ab2W74x&KzeYH}ov_n8bFH?k?-|&? zxMQ}E2V8qWSWH8-!9Wj)`9c{w!~JmZ5Ap!H@e>+oL?-cOpp)hcu1QkM8`UoIa9Pdb zWBar~CR(iJA|eVNO3>&72{xq(=sJH}sVEi$ndbCQPKy`; zPQ9CX2F1pT5i!~K33J<32H&j$r`7+?Mz|6D@x;GtV5OEgezojzxN#X__XJO_7?Hc*WGvw;b{J-Eic!&ZjY{MfiFd_&) zvG_M<^Jxmcp62nTTG=c)2GJIeN<>V-%0^Wp}J;fprI6QIN$komS zV6ECpF)TWU_NE+z&anWoRI*uDIIvi~r`m`9sYD(q^Z=R6L6^EN*qpF9*uYOOQ8Hg; z&El0Pmi=nzMdblI)`;Vh&Tv&kx6{f8sbA$60hIn-5n1wD*1iuNAUuAHww@+RJnC^G- z@%W#^QwZt*tvfb7+4%hZnGPtGwd2PlxJEjC|6MAHQ39}JmcC0M^o|KBh04a7l@Wd| zJE{1uxs*v8QgO7(8egfb);b%Yr|dV%|$V#2SiWYXy^rK<8c zz)FM|JCL0o68|vqD*<<`uIEXVHrC!gWaQ#s-wpS8gQ-hhoRo{m13rTVx#qD{>R+CE zSH0UHu!I3hIOrDgYOz|(C#(sc_K#y2f`L>neF#;69&>P#H8v00O=`xiVl;A9x zeII&<1OV(yByXaR6QelYS-wxzB{RLP4U<#u7>dL&Ks!PjGEXVt?w>MmBFJhj=3+bRMtXqWj9a@I$!M9aZx4cqvN(Z( zF_g2kXCjr(!wai8gE~^4bEue9Q9RKqRq1B=xj6#m;eMhO8q!Q;hF=T-xz;eyC(d{+ zJ0X`uF86J+4(zPPLZS9=b-yyQ6xz7rpfr%+S5%-|>;Rh3aU#%Np*Uk|CBhgjx?a-C zR9@%;n1f`%CJpmGMn8KrD7i7 z`^9j22Sc#pXyBbnhk?vlrwBatL-ewctG}zCl&2_8KdWMeMl+=B#p8k0nScy`L{f~K zp2J9AW%X%$|C?|Jcd9fZ7#@7HO@`!>^ECu=s`8oA8WI7O(Pp=1)ImV8VQK8C{x-@l z=5=Akz>TD@cGEYGL>kBi=RO6K80p{)rqiG<2l2&*0cH6sZ;JnjH8%69u52ss=;yat#O*SqT-ZFMCL!ehu8= zvwnl1>|#gE3jk$wLJDV=pd3))(*n$Cwbit8L@wDHH$v!e=N{yg%w0T&7zkMlzixag z&*>1w&ke%Mi>Ks~13XoL{t!rQ zD1=tj6F@H;@>?0-Wguw*-%I~azMPC+j`W8%NSL3q%}5KdC1KN+vC&Y1A)XV#b$+jR z5T$Y&xzGdD7ziVij7l&95Bj%?(~xYqpBH@IorA7`B~h0EPjqkh>izDAFayvsGOGnt z(Mz%j9qDB(t90-*SplTzJQnO-4cxZm=@ff6;RAn>9RNLYU`mf3M2`hP39FuKF=Sel zY}bXRN8wL{P9J&rFPw+bsP0vF_J0M~sqq=fx8^)U>?*j4JV6np3t8CK&uDLrixDg2;DB%2{gJIw*wM8CEDrq0t-%ghnPHlV?0;BL8my>SxUqS_pz7V;y%9v@P`;+L6I<08S$I+{=n>&8dYv***Z~SS#Qz-vN%chQz!7zLu zJTvCI4`SCqQ!t%&;9(?S#rZy1gWp+uyay4bzn*$T3HSEJvNAKSomM&bBpdcwxQVPH z(e4%vowxk>mN~=@)8?g6TiDkL-rFIs+uEJTdfJFsWK%k@EGb;z;$AAuFK?^-2G%Db z#3Pa4)i;&>>eC%z$S?LT9$iq{53<9kyQo7Ooj(wXbBENwp#PF|`%8VVe00r#9Rb$M zNR*>C{rkE^)Pv0r7n0$i8#G0ER)m}QK!o$UTczg+T^A!5s`SwN=(s!}o{VgYV9oQS zRJA$W!_?;Ej^=|wP@aLQUO4l(;bpOInpABtU%s@=KKMTNQY9%i&q&0M8<@LdYV$W# zlH!5|kGrmUAfNjQ6C5HG8|F;H6b3P|@l0)%39dN0hK2vH-${`InAMHxr!7ueQl|`P z!Q@yfLfP{tKQ9$x-cGsi3!a*XP$BHoX;-W705bf2Vnku;f-R`iOy~*zOmZ@OjP zwe!y9=G8!>R<*0nC!aS16X%Kd2>`XQ~S>{(GG3BU5CN|E(Gx z{6VU~`{lRl-!I6un}M1g zE!EH72fJp+xqmLQSol`m($UC`kT7ki9Nps?gXg;j#asob|FYhwX{cP^;|b~eH_}N;JYb=r5RrAYNXYD0tVSfvQ zIV1LXc!EbmN-Zv%gAWsf58nqLl3Z>}UT*Wrd|Nxtylt^z;b2R|R&%wj@cwEdt!)pZZEyIjqk+m*^77-$ zDUAAXSLWm*xN)V$W%``{1s~6=zgpKB!H3#ThUkulw<8jlg3M|ceB3TP050XCYjU!ZDBMtmv^Ofxot5~{p6}E?b|Yje%BE#sji(p>H4uUb&vag zuhw;4@L|oS;dKQ#Y#Cm+ycEXdKi_yYxp)q}^vV1kSQett>Uc7G`}H2iHF%S2(b!QS z?~3Pg+vjYm{4=0f8Qr_Q?D%KSYa#J?w$6_vtvwUh(*U4Ii~Vjr{nDW zY%1if#by88t7D(cxO-*Sime`}qXLDS7;>3!{e0Zol=)XrcO5TiGBLDe*E>)hg{*8tge%X(1mc11Hc{ZwYiv)(TnJ?LjxkTF{ivi?Ko z<#p|reVSPEVe!vZ^zf=HcYS*j6EiQeqxQsG(*KIB^!LHzv{f~lE3@3{-_-@xhWU5% zCaP8?A36xNy!3HVs^7CP{QCdC%#Qtvw@rE*3mGNRTfy^!0<3}p;R)A#Xz|Mk=DU9^ zimeU^Lj?9add^PBvETj(Au2>M;|%_~rixUM#Y?Tf=9+E^hOj@peu^h@4TYawmvO$k zV#x@+lC^4Cj(&8od>zw2!OZ$NuO(&&Uxg}B&>O|S79;W_6gP^2-&S;~SxcpA3pel4 zbFt;k)b_oeo@@&3J=Y+P0^UQs7C+o*_GW+9h0jS(Z7rl@N6pW*5~>^rZ3mZjjCmr- zOi#5mdY#_c@@2Wj_`fejt?i#iYj@O>F5ET4O8~%#Y3g)n#TlMffS}G=J4*$(`rDb!X{>qEkZ25sc zDmQ|5s=PhNoZ$=FGPXVH_pfs;y}cifTii{4BL*rP$AKJh0p~+oe00M-(+Kg37kNKa zX6Z&yU8j7DIbV-jKT|4XE#_>QiyfSpk~|}r*$Z|O{IRp_Nz?JsbY8x!Q$2T4VkFKd zm?QJN!yA>qyBRXx_@af#{MN~|g54K=^F{xyT@lRgnP?D(Sjz7-H`p`bx}z!a>YCtc z<{Ey6@{wiSlZYA#XAa_c`H6wec6O=RyI(BPlYqZ{{qYe;?&0l-Z zkEee)&sa%fiZxi!9_|_>Flq{|LQbN{DWCkLFt-pGlCs*fKwH{7PZZl-9Xs zout!pM~2oNffC-wq_Cy&MxPThx@Y=I<&%pZOWxixJ1H7V)#zZFFG-z+%p8deY-*g8 z&ZMfBb-!v)vXY>X*?yT}l*3onz4Tp6`t4sc9#u`%AalzL#sdj5|3O69s4%X!g!tyTxq=8NpfC^wg8>;62ElZvnI_OqCn7b<}@J?>Uo z^m)&g#p+khj04qa*zE2ty1QzTGrZpOZCGu4{Wqe?uDUz1e`CwdG^slxSo-JDJtqn+ zUJu{NseO1+_px;E*uAc5ak3DJyDvsx;!VUdIA^kDBt=yUGNLmtAQGgbV{VGZ%P231 zO73sf;)ta@FBLjQEY}io0ejg|y&Sgqqp+DLjN%P6t$Eu6Na>|sDi!Qqg8mY*xXr8} zJ(gKrxNIlIV3NQYHj}1@-nfsOP8u@qa~R=mMq$jIo!rfGB;Qgso{Dr3K`VzC-4UdAD@qm5JDrEZ4uu3b&cCX26YWDz(v%!{Y9-NmQq^TqW1Bo69 z+y* zLHj!8*73i?E)^Ihy=dksm%k$={~Lq$%PbHy;!7rNQJ;tpxLYORy#RH@_^o}HH!DL7 z)GG9wO+`*i@mT#l&+xPG#hA8;PrfhyQOxSZzasM~kml_?*Co?FJ9Hk8=a%;!8$)Z- zbczR)F-u&8Ag-(9nTUJ?X~CuDhbdIRhh_Uo+};$cX46(lo3(CQ>`qlyacA@so7jRh{a8qq zkG@LYoO2&!?S>w?`PfXdxK-w|MU#aWnlUzeVa4xkbH2GWTBSk899gDXB;1~391Rc| z+N5WAuPH;jhGAqlwAY(7bo(Bm>ooWdIfninfQ*%il>VJaeFlBmE@-mVI94Sx{AoAy zzzfwHBm0w98Y5!nV~s)O?jL^Sm#gW%Gt&oYCoX(;7l{!t^LUbzz%^D$!|P(qON zB|i3N8f_IS-8A++?|NNYhW<)oom7CB8BN6ZXV8)nHLy3#usa_#LKaet`3i_^s`wtF zz8BkFJ+M{oa5h!`s6ftg|KjWS`kv!0?4EwDM8OtvG8y6OEhgX1o~EMY5bEr#(MH?U z5b9TkqvSR;0ytU;DlLaKtj5WYpwv^5TC6rz;pxYVy|2#IC=1^q1hsCbL6 zY5hw~N#)XT5Zli>2OP#r!#@*e_hYNRuQ1Xj*t9q&H%1CP*-DfC`FTRMEdI#X)rBpc zH?-a-(OErR+-tx>No_bQPylPi>FUXUgPd;*Lnz`8Ez}0iEqdG*vWNv-leMJ;D;zpH z;;u^hyx-1PC|R#$vDcdg1Zq{H;CAlV&h#$pC+K&Y$b79(HjzX!2{NXIM=hJQV)ose zMaZQqZ)9>(XwY;bwgl;KGr_2@x?f&6^~IFzAu&^YVuPmw@&%Wy9*&pzi_FL52-nPnJ9D?HO#}?KvYzD`@zCXFYBqj7JdAG| zyQou;VJWdeeJ^2NLgHH|e~$P|lfX7y+V8c^S1hqR%;gu6k?*(il>wS3?3y=8vwxQ7 z?lOysBD+?~;|OXNBuvc65ML>f3CprgBs_y86$+bk=e8XDQW&#PbibhSIl$r)6pSKl zCsY}sEx?dT$+(;Z2QGd~{(KexJ^AXk+zXcbHgk}-qDw_wY%%5$mt_f$hD*_y-xiAC zgC12q@VTVZm8shC0yODR7@T<-%N|n^%{Lp@tkVjg@1=UG`rQ>x+q&E2Ft1uvwsg+V z)?MeoE`36i%5ZW&H&0G&Zy(7kNk?;O0^of>o!V`Zi zUON7vO&Q;i@8xyQCSW9vl43y6yZZqtX@bt*vbpxBQ*^a`zHBKd*FT@6mbm1zn%`BY zpN-0RC6CO15tdGnNY+AB!2HOcJNIZJHH4ybZ1mCw_lXrj0(J{o!L}&D7M)nzBJD?K z3FUxmCCs9vcG~X{ibS8$$;^biXK1@x-xVqCpBLOwHThYC4;n-#?5Za2xcygHtCiIm z)ZWMb3@6~2?g!>q<5fS_M!v7R?vF-5=izV^eFrP^l@cCx(4Tu29r(wr@#F7CnYwd% zLl*)_na?f^Q7y~MD(fus6D}u{;``QF6#oTpkj;4C4f7%hoOD2pJGebBqfjpUV#lbA zcX>p?{FsBaV8K!`SG-0=nIH2b+ER)!IWO@gTWV6|(;ta?5_IM-1Sd8pE%*(xyaaBe z5h85qWYKn}iOv#KNiT#ww*K=i?j0z@MUPV>Q;s&yKh1KM8ir6im5ttC#f&YV4m5{j zl$7P_bv5~}xtF!`e+`@#DlNr&Qf`gBdm&(Aul>Dj&>qR`qf_UP%>Nwy>sKP#8TIFP zf-Rd)O?9K2MSSRb6XaMPepAyl?W1U7=5MqL82&s{>x6Ly+4w=+4PB2NyIQ|ZDJ`ap z2U=NReN(vSYDoVSBa^4=@^$=~Y4toqOX}n`$*1+ouU50d;I`L)uEO{;_4> z8NZ0CbK?_d$-UPla>{y1%!13!#mDpZ?Ywvm&~O5-I(unYaYCMwYw6p7-6C zCOUpaXNVEodFp63iFC7zb$6|{`2N1f_YEOB(`qI4w_Q*?so~YhB+1O3yDz*%f0^1h zP3Bj*7NIp8>p$a1kuMNuQPF<(5)6FpiZ_wyX8xH%ai&|+Px;X^61(-gXfNTmOee+h zS8i(66pypIPxOGN6mgUv+t z2aD2FrLu16yUL$Vt!Z|$EmtQ8-Ar3_;|Mbyb zLbQACu3)4YsO>aRjr(p@{0bJ`*tLB)L1gEBwDIeC*Tz*ol6=|2%VW!J{eFjk&$a9m zW#C5&8MRu;7sm4#N!K(&$c*w`Qw-5OmCMd}O$Y3EnyZ~ez`AOx2cyHzq+kc}n0S_g z2O+vbb!8yU!}(8aZ&~5u@f*9$ljhS3w->M7<;OaI6!n$dzaH9=T6XX36PCss!@Dbr z!8>{*$m_F;)s-sWC%r(Jj88}IMb5xrFE#OO|G&^baGx*1*irN$&MpzHm$&%*2}VhU z12?&Rd3yGd980TEwos-Bn(##E#_?UE67?%?gCF_b197tPlVltAb@+Fgu9Ufhh>m-~ zD<~bf;&kt|Y1h_IW!7f|uDy?gJTH*v7RLbi=%tQMKr#6g^8ZmKNJl zW-b|9LOTWJ$%NrnA3h#V_&RRB|1&~HCE&{}`5De`-)!4V)+UW}u76F9v8`kN&x>>j zxA#w&&-K0A!+Ab~Y&OT{TjyRPbqZ36Y%Q7ie}uI*9Z$aYiy+7%i*8!eA1}pRNIRG zhj;;litmb%_8S%BL2Kz)rl_nW4ApSyJFk(#9_vz13Gt@hVH*soC&T{Nq5`GkuGDD% zg6ETgEmZX>XfrFKtcgK;{@LcdouA7gxrfB{s&1QM=8qda-|hUG@_NY7R5O#a@_ku) z=g_}};^^lj{npGcfgJ9dZ_ehJFtU5%jcJFbffH|jD$jJiX!VzTc1v_`b0JeRz`jE^ zc2;adrY=pe?fvoOn%lxBng7VhKmVNQ=gv){Eme!AB0+CBt~l#(@(Tyt5D{62b`n%fMibBc{InkJw7zYftfBeon-T`` z;oB}~klkr64?sQdh+CkbVV@o zDi>P)h~<)wkcm<#!*JI#`r1DkD>}Bke%v1VGctf3!|G3elsB%vsoCUW#)q6iZ}7K= zn@7_3VIKJ3{meK;zopdVsOMU|fgYx4&n}1@R>2tf)5$PS|JZumWN);*lGV*N&FWEMMH{_G;ZWEz0aG&nKmuK7yME#gwo?ent z3uR-I@7-()KdXv%TeqJHEIjg68v!nVL=Krn+YxrGn_c zB9~FTC;C0NTIW-@AXyDt$Ln38z$Ybk1r=aGe^ivtAd5_=JbWbaI{uM7IY`8s@TB98qRUneY3FE?VrEwC zU44bLwBJgjm&BxFe?IFEkk-&HZA4!@l8)3m(>FVAeVdvK*+Xn^Va_DR$}pt<-uW9( z{n^_|%MhF57}hr0stwfNUs6+(BxXN38ehLup&_t3d@^_EC~<0d%Wl=Dck>m7ZHEGB zIC<>m)L^c@*fpl>FCBDCRBW=bF^bfP+yv$`Y|kcsf=&p znOk+?XN`^^k(%-MF&t;xPMIz|W0llzyD@X7y&kih%Bz&rQFf(4(=E-^@{rG%7a=X}vcbX&$tWPY{ue1fPWt}d7+M1T?5Uq5DnCw~R$r|7QvrXU{5kSRbp!SpUGV2`QCprT zM{xQgZFB{ROM*<)*x1L%{>(B`lck%_#P&3DiyG0pPhASkqYbqi@cr*-NuV+}pZi`J znIg{(9vL^!Ni5)6tl86hZFKa=mkd+SM!NYWebV&#!ZABXwm?8*>(uH+(pFf)IIiiY zmHARp^h<8`9FcTl7Ng`ht*safC99g@`{K=gKXmMmF(-7cuS=vSkWOvLvLg-h&XMz+ zRzLAeI%aC5-$am8pj7_4`f=5tt>zr&h2Dx?$15+w%1_A1$p~4Z#jr67n-y)V59gjj z#)yO-Z=R^?%f~`KK}q+2h1@n@D5M$s9aN{=Wt#zP8-%h zFn4P-4`s6TPCu~gmc0uG&rIaa$I0{S+wV1b^H*uR`Y%mrq;Y64P74@l+mEut*LR}o z&l`g4yY`i9MC=V{wRWeXMkucCnb653zm7P2oG}$r@W?4KVU@`x?L|aZ%SQ)LdH$NP z-6RkzRnJ8_EyZZL6jX=zOEf68;E~zSWPY6uJD+QK-hy@XV$xtsstKuYTITuRjDbt~ zXn3wkgNp?2XV>YMTS85x#y`rQE)BEqrf69eyk{%BWxz_ZvrDSU#=oes248zbWPUM6tvtYad@%{LZwL>r2I)=49^^FQJmb@ zepnp6)F<^G!4$gZ@lnA4bWzFk&xS|+UaUql24NLuI*wqN%*-l2j!W)a#!jo%bjAJ;0Ixt$zr|XcS$uf3NNcAz;j|L1$D9Z_ zxJVnML%2xlv=O@ECy~|pd6dkpL?%j?`5r_rxEuG)EekXxII8?qKEmiep)j<$a?r` zEoSNeB?j|d+Q@#E##d{ndsz=(t%L4nJ$$rIx)Uz<(R%21*27!tqg&x3Z*72Xh7Y{7 zVY(5{_0mS^ao9CLo1jPGCVy>;u7xu^wQ2h8ym*!_Lwv$rn=_{h_Hozd%|FJ$vmV;A z*?su(QC+8F*|$e^gN|n39@I@b;$PSYxNMuNh|~6V#0P!8GDjjrgx}{UG8q}SPwF$B2vAhYtCdIL&d%C4CT%y;TcnFL>%kEu%f)@Ef&?c7sQ*)f!8F z9sRh3&(KQ!-FCM7pX4U>B#xh+l$svSi_th(U z0FK^Quj#%eKEzeMp?jA2sCf03?&1)4)hD_G4%t;-=r(w8NA-~2+w_#)+w_v&+w`Ve z;D8;~k8Xndw$%W-0ruWjgXlVzYD*2HpZ+O4Gh8Cc8dhyfjisyLrcE_odaq6*U5a?w zhMFq9S3jMO6=LS`QwA9?MDo+89I^-*+v{opUBFtdtHsj$oR`qKh|jF4<(3vJr1v?m zq|;fbRkg;FQ!BmCc>|pakFKaKbTZe-irPUZvVhBKm-Ig8-Ih`H&~b>nEvo}`4BWD$ zj?htDFN^8~9Rb%bs#BJBrY-Hv&_VnM*t|MR`@=c&>LTsIiJMhd&HgX)>OFOnzJdd$ z)Ghh~?weG%>4SfYxMY`I@&w_o33ZP?f;}eGeKTc|U%{&f^d9Uwt{z&tb7qzY@rP0M zir#?hN7Z|J4ZaysUHLEKCHQ<;^_1UV%S(QLEpPe#wS4FWxO7ytPdC6#-D)B|0;dkBNp#&JulG{Z>6%4e@1CPC8261y$m0QsMTgZoFAgr(DU$auv%;O=byqO(xsl9ML0WH zZJ?*&%^JXjB61J%$bPk-|rcTg3e-O)ipQgwpgqNDtX*vN;XjW(FiGPaq7?(LR z4&k{bb)JraW17?jI*OChs4mhGaAc#pLWjZQ4eA;l!gbo9ZqixsR;#*2XZ%4Nt$x}z zJN5_hwDxJwj3OhmRo$ms{~(@sKAl*?r*tv8zVYdtOhb6BMZKU?;FK2i(p*I5U(2t| zHDvy`{F?lKzkkz#$nLCH@94K9g$LT7%e7v8q#u4Ss-{0ZkuSd&T{E9t`6qc_WVF|* zZgj*S#KPhyPcq~WVrb!$mnFm7G)6i1$&d8>gIJmU6iB}Q%{`d(=6kMA4W-@SiyAeI zep$c{vPO-h@8E+fHJZMG^QzQX`U>8zR1@hZ_@r7*q95R*YBhsCfs-rLO!^R>C|7go zE!eY6Eu^n3B#@TrUp`@INm`cz5IEbvk_wTfQL4%)~$SH)c3)L1&N-N!mE&D%pkX^qQDSe+hEg4;O{O?6|%cov4`u8HY`O_dd zvA_%B)M0uU&M8nw=s|cZUmZ6agroD+X}bRRV!iv*oOyeL-;3zBPfI3|k&vpcny&*7 zCaW8CEF6%mZkjI&_a~`4bU56Zs2e2GGYMD4sdwgF!xyotEAOSy z4EN-y?sOeopRIb*HSk@Q>P1()QZsv&e4T#>0p(EV^mz8XpQ!fSbI4E=hy zgLv`|@BGwgHIcrABcjw~`WzmQR8#0vI4n}lqL1O>2sMvBgaaeg0(uW_3s+0%9rz_o zt)jQ!#xS*p?t~-#)JD1;9`jXO>1w#cOYNZ3{wdD*k8Dtq)2d^MsR(F?Qufmt~*d-?jQacUXW8J+x3k?-$v zLCzw5XIQzRr{Tujo38s7Dv3@0l?uLW=l~B499_&*h=yuqzPl=*i;qG1~#?nr#rJXoSJMnZQ z+|i>X(Dk#t%vwpNYgzGbB~^Q`avELA<>H}c(#2dZ9%?pS2;aM_`E>KYiPXGLg=9Ly zWv*%woeH14D8+Q;KgE2AODUO*aN&zmMkm61&q_HR&yUDwrGk#-N92=IO-I9NPf9Hv z2`@h?4Rk(S=dL!I+y0vB+dyWi}uQweTHKz|5Nsr1Hz4N1}iTE^59{ebJB0o)$q5SxN zP^RgZAH`DKr#bTBM==unY2K2tKwthSPNF|8lczt5wWv>PzOF zuWZvk@W7q2N4vpZx5|O}l5?2o8|8?8f?aQvGujI|es{__?E&}PD!23va%!)XJF_$J z(WUZ4AHm5NiW_ekvjIDL?EoRA&}Kh7%Wv>V(ot6b18*bCgxDA)88Tr;EG(+}KtPAiY*WW)K>iYxCNbPexL zDcQF-H0=C(qM9^fUgJc|qHNDie* zDYnE*=^(@l8k*COTtx~4xW4O6enWYcm#|mYUj{2P#T>H38?ju}Zp{&rmGyM8n*`zn&vod9i zUWbdzlpT5%J}6ZVXwTmXpQVq-hEAU4e|(e#x|mhSP?G3E zI5$JdaJ)}dCY^`)Qo52$=Wv?Sm3(@38Xrc%N&!6$Uj!+I^vyp+ud7QjIf-y-kWxaA z!$*NiDLo432P$RsFuWU}RMLZRR)A7X_rvS{N*%rXTM;?^v6-Al_$F9swe+%$j^z9& zDIJdY_dqutj`&@o(r0e_TTwUuaexd(xHeH4GCTbGE&MPYg!oZ{GG^8f-iuep>9;Gy zCukoQDqfkU|KBCqv?mJ{r_9r?@La62K)+q$ut-0n`?0agDt!%yM=KjXJYfAzb63B+>=&rMr?u=fP#}N-~`TpSUS$bQWCb zrex3=@SdxZ_1pK|XD(fV__L={Xc<Te*pLhih-;X4)0LzLDGL=P8`v-N+s0 zuWK(t|umAOAyCJbxWFM~L)|D|y5$ES!ENkD9%K*DmET`VP*zmM7^m zIQdeZrH|l*3we${falNUd2{4&?76&5zutXr#ge{iNnfM4;HWcs-RvpnKu7J^6_4hD-P4OS%(2+Lf>AW)5pdel#Z?9@~^%dF#P4 zwz(;L(k1Y~hU`rj!M+=^FI@n4t;+#)6&$%G2h-Vb-I^RuC&NW6awMGy?=Q>IbUd81 zEXUKC@b#*kNT+iaSLI|nm9w}ar_wR-;*y+B4@}}1d_c~i`{03oIn(UtKg7oI*KD!} zVc&i^hwg&A`s7@?19tC|^XN9XwO1~rTj1v&xtMN(8+znYx&glJmdoinxT;&OrlZiE z_$9fP?sSN);*WJ?twU@Ud~6|4ksUcHx6$ix`>5PWufi`QayPvUH;%}?^dfvWEcesZ z{}7d@Ux&ykg!6{vVR{^18k9%qIk|d_upVo#q+&jBfsi=sEv- zLEa*KJSAV!S8)22d__OP7t``Rea>5(P0Fskw`BmD9GREhX+Jn{UiPGY;J!K8n|?bl z_Mt1-ey8kD=dt~EIe^ZDqub;lIvt*DmBZ;cxU*S~rb9TN4RRdq4;ym+Xrr8^0r`5~3=G{2q%M+3(qguQ_*1pqVO9jrsg!%@OZc=(9-z3uk(LY|`2{vliszRr-l2(OmQv-CEcR4&iaoA7*@JWsE~v1RfS zy$Vm2$}99T99}A~(P4Z8HOlMs&=jAyEpO2a+>ac~JM;X7iXblmZ`0qhJExRM-lEUl)Wt}K6Hm67DGPzk;4eP70Ui}>_5cL z?$-cIb|Bqgh@qg5!DKJO4f%2i-3iy^$zk;C{YAscc7(5T=m>4<-b#htIw zWHaYFM~3%%t-x(jablaI|+4Bz?6 zr*s=!?JJ+tE#thdM82j=;doE^hAtZC|19NOa~Z)YUh)I&3ZLIfuDl`f^VoNy*GbfGF52N^io0i7u zJ2-J#nlK0bcdxU@kB>f&kDX_NHE#H={&k}t?uo00bDCpdLR+NXVWakAocY>uBx zU{yMyli-dO>6DJfoNhQ>kO>I8tw@)29Ne-jU77RycTqh3^@fZ=_;E?PrK8}wCFzci zfUg&&d$V|O<)ZXNhrs6x(hD8L_rZeX##?g-aGA_Y9<(3V#=PW37jTVlNWOF)7xuao zKo7uW2T~y22cPasL1vCF3U{5t$OD8YFQjmK501EyBIrt8#2+}tl2-^PT}z3yJKmuc zcTxtOKhD3Q%h`11IR6nK=g?_<7rV-ZbOQGnFH#X52`@fL#dH`P`XrUmvGCfnR6_^C z?vGL(?GLv+NDZ_v{CF=l(cW;~z0^W`!q<0FHysRjJxYUg4ZQCqkJ7vFLzp~9Z*$u) zd7NJRyEt6@I!SJ_nNWF(Ugr=)(rXS$BX!)Gp!OH9ylP>8k*nLd8 zr8nS~QR&ef3j91GJ=1T;hpxPX`;8{L7o6P4drdShI(d=H$gUWX{OH9|{w-4qq~DG{ zgXlTLGlr#5@!nz>{dVjePEU;THcC>IB`2DGJ1UK%$M}XHl#=KXzRL%s6!Udof2~WU z-;PSt=%G>GUr9=*2S#~qiIhQ?|6M$cea#~KMtQ3xDVy%$j-XGiKG&`iN)-Z%IOBUwOgvB-@Y-cqH7Vq>XK^AF2Kc|Qa$}Lf}z() z4fGS7R3kOgxqlZMBVU`z2ZZOVr53X~a7?w-YR(BfStYg6S8#Zh)Jb2!Bb8D&eFg_s zO1<<6++QIL&_}Rug)~eTqC5NT(g>ZViPaWm<(N+xkeTBJ2g$~rx%iI@qe zO)?f?uV!hBj)!}ir5#K9t~vMUtw2hp>*1Yj zDU+^c``JZWsGpLD6; z>?VhpBn??gK1_!qo}MU;)4_blCP}F4$$7($BD4th7%*!Ywh!g=F))I z{iGMV9ZvO=Jo%81R(RQ0@}`^N1YgOQZiHujq(HiFm^a3ig6LX!(pw6qtKo2ODTKcL zo4D%u8b($kJmMvV)8%lWmlQ#l!hN1nBwY;qcuFyJA>8R9#nJgJkB5{>uft(sQX0L= zHbbQh`V=mWl=A2Zl>aDEDx$OC&NQin&fw}#lgj8cxH(m-pwn3rSE-WDW%=EuD!M@x zB}GovpHAY)U+i_3cs-qfc+rc!jgEu&pY5G=%rNhIYwt3fRK!D|Q#aY7h=5?H zJ~9d!J5Tn0I!6@^xlSXN@Th53BxE{`o5Mpm^T|GGNtvR9v1Pi`3>k*-+M|8ek}^m8 zsA3`2X_53$#ZZdVk|krA?p1K`QBpYrm&ohQ1R4xAsT+ z3GThIKhqDe*NxqskD<9#gnOcs7kR3P%XlZ>|9F2PKl(rs3vo_?<5b)W#y^7w0 zi_h&f^ctLTYOkeN;I$Kb9lZo6pV%Ad1$g1u-bBAXC8n7iLOA@u-a-$+qx<$&dh>7i zbpF~-_8}a!Z||Uc;Ql>(C*1}6?Ag2M4!CRA-b=T^?z{GWx&?08u@C;o`%Za?ZbbZY z+de|S-KlZ(Ki=O;6LdXt%C_xObS-?mWuK#~;esvu0$mC3ZrYdVayV<#zCxG6>l^kp zx=0bVeopITo+9#nowmpzWE{=gcjz2NZ1_0sl4*(v_I5fZ{g81mXFs8R;QTrJDV?E+ zDQ~AsvKZl%4f{2n4M(rpZ|F?U_p1GtPKU!*?f2&J;Ncbf6P?U;y<&f%qhZ%2yDJ~0 z6bUyk+TG}I_+i2BL5IS%3wAHsi^HC^d($36d}@i^hhG1iaBu$VN4g=rF=O|qUj}(z zYY(8G;H7DMApHO*Oxr`~J9u`=9!B55QB(FP`U;+$v`5oBvgo||5JMiwV)FJwJo)w` za)QN)^aZvIpR^~@af-x(d}9E@gQ$WW6!aq z=h6X~Ggqeq(gzdr@}ba@QAA(LI9vQsN}kH%`0hi+AKzD4l{p?{SB}}M={@**%wG4$ z_mx_2mK5>aQG25$-bAk=zB6L)G^YcL=H)|=S$0LZK7Z)9WDn3w$W9!w57P_q+^~I= zo`8o3?PK&995`qnH=m{j_YK%5=^@yAz&=9{z#aYeIl2R`?X}O-ZR~xIeSvO)D|+lp zbQ65qZC{~l;KDBZDqRI1blTS}{amLDxKi5f8+6_vkACf&^z7e6VZ+yLGKY(%&Avlt zanZEecj*i+npXQBoi@ljqS_DXltJDR)qYGT4f2kt_EXEtUeFbY=XKhz=rR_z!+t}T zz*!ykJGuy7Z?`|uuaBy76iiDo6|l-M-A}aoc0mAY=CzewU5&!1H8+qeUc89Mfv)NX|fLC z@of7Hy$c_f*=No4x39bDOT=$0?F;lVTv=gXrSIY3YWpVb$#+w&eVcZNqigNEv@4fj zjs4JkS-85ver$FV?rgN5(EjX0y#4G?@B4*w+6(c{IQup2!MTdF-_p7gx0w$$XRSx z7i{;Z$Kmrpdw|7(bZ0*wEMX6N-!%Bo?_CL@>)>&3d#EKIMrXnGZuW3G1HN&!N7C!C zSC~DXPJ^pl?TK^>U-re8Oeeu5FSblN0X}@T<_zlFd=hOhp>N^B zXnO_ii?W8q+pFjxI4QwiP47vfXYNA{8P(52Tw6UI0dG9o8fYI$6t{h7Bm*ST-2S13 z3`0ixqpj5(h$MDqK6F{a-SjBhp7_v9h9JE1VCyrx@;C96^R?fSJwW%Nk+Ba$W(N^Y ze6S5$Qby=@N%)L@7&Ci<@Z7y^+>$auH%KC9_`@_=BZ;`74>OjGSvpb@+npa4$WTel zc6?YRt0XZ#_+i5=vn0B^KkSo!*e>?oc1piKBJYfReMa6TdDF)`iP&!GE7|e-^Zg>TL}I5-(oHEYp5kVjGjazl^-I=U4#$LY>}3fD0;{) zd@DZ0klP67p4nn8DRFeSUF4R1NF>|sBEIxPk|iUVPPdEmoDXSavR!Ouf5;*?`*^n$ zTP|H=7wJVG3dlUW7|;7qLariX{lr#AFT<%PwhDR?UOu)}((`cAv8{@pfya+*H9x=4 zMD5S-Gf_tm!yN~5^@Mj)0FBZA)|*T)1dkp+n&P1=||! z4=>HzHfT>cX3n-nyTennwjJ6Pj+nLW(m|ZF1=}9I)ypS;+4jxe!>6OR19Q^;TWrUE zJtEf-E*iBR(<|`)i0y=4f^$Y}r{)raw}x#O^c7mUbM3() zGqx8?+?7uyy@!XVZSM3f95ik7pbu>#CH{jKd5!SEl+D|c;zMuQL`&=kKk^b`zbTu) zB_)7fvWe2@4?*N9!k&}1V0sU(9=C;H0oC48#^gPyM$TP5c^1)^h!A+v4eJcz(;4Kv!~hwrq)XIcI0nmO_`p;hVNJx)>hW zuw~Fb*w0Mg*)nM_IP%VxMZ5n^lxBa;Aw3WtyS3%gZvDL7ku8sYK{Eq4wtV`Dy}z*) z(GPIfQt(=>ZHjh56Y6_2~N>vgVs8J^udAQo(z= z6AlTmJ<@G(r@!r)ZiK7-Z0>xLbv=CPYxAU&zlr;u@4d+MZ^D1?dmr-kS;Kzs^e4l= ziT=&+1IXxa*lm9wOxB>aJYQQVT@EMs*urVoZ{m98`v}tWoA6%yK8k#Oc5%!*W687M zh|7iVF-O)5M-=8e=Gazd;QAkAUOH?TLm2eFFk#$q$hqOYA3$0BIkZ1a;Ltp zA^ngM|MabqcH>%k_|`(d@R70i-`eS}--w!#@4Ly4--y%U?|aCy--yxv?}y1_ByU}R z8>0{4`0H;I^g0}P`E80`g$FLa&6{PDDo;SJf(KqWMRoU5MsilJ+DXireL%DBi!8eSXo8cp)O}&XgeXnQ--~ z5=M>|j#yA4$dSV1^GZB9TsUN2NhF5~56&scjZJrOf(&9rAsMd%b)SE74or{qWU#!|9Hi_lz zPGyH&C7jx>?2$`_Biob%a7R7;_PSrLkj^q^K{3gYToGt9oqPUaIzhLf7^rODiD86Jb;lXMpkbF@uo_foa zVDg6WVUZF-UK7qQQbNfw|3Kw|DV(?>mUj!42=bC}cA*kUUJ%|aP@>3l!WjihEO|zF zEnkTzPYEaID~aSb368m{Wa5!nE-zJ5$Opn_B}yu}K|)TpDvLNFmKXDsJaUDE#!OW{ zu~b5LhN^&fE#Wj(Rm!&$!7Uj|Ik`;uJXNV8mk5`pDm7&9e;|0*)WG?~a%Gy*LM{?M zN>RGVHTCqbgh~&&O4ue{=_ii~$LA@-Wb^OBj}eE&a!jr=K^_pE%26iCeZmnr$`m>9 zA4u3U%@BLU@@Td)OYRa5%2wvc9m4%t$~^Z-*f&dABDV;4WhyJ=CSmtXWu3eud{V4z zkhg@3i^1=&liUqmTYIP^Cm#QasCCm3vC9%E{;Ct=f=ICwpq!GIg!2NG3-X+B zR)BIzJ`nB?QEa{l?+N>aC=TQ!;lNPEiTtm36wc&nu|DswxRWP^WBnCR^04rvuj2FN z*PwjKJ!0L{NAV+f3fFoo{^S8+KVK!B+$vn@r9_dN>*$jpO6-?k9g8Dx{E7M%Q#`Rw zEN^)zY2+H=bPpwyTrM2#t`v|;^N!gF(6!OANl$=;({YL(`*PE7 zmulvA+{DO^MH_eECfc?w+JB4aAgAAi|C&WNG5IDOS1ks(MK@u;Z81#DyNUgEi*e$p zxSh|wJVhQ5w%?Pd$wR`8d-5#rU$}NxUgmlIiJckKDzQf_+w96~ORTyO1x1y(VN=^0{!w zxa>hb6?Pq$y~xMHO=GeT*;V9;nwEXZ{=!SMvfn>`jnAKaAmYzQ_a8|e6PHqxj?~=R84Z|-7)P)v#iJV5~qFG)i*9k9o z${XZi6OIQgHi?raEDu@i5UXfZ9r7-D$%N!li+y71pI99=9sJg%LoQuJ+cwLmqPr7G_<->Z}mK-XaUoYE{gN1kNWP5U; za88}HzQXCXvIp5)c(q3MCVL7e)yRQlcj1L4;Rx#pDtbRy!<8iBW&TYuHrw z&tKgyCvW{kZ;4z@-1rHf61nc5zwW2?ODV7`m`Ri`lLJs>A4nw9^;?hsp6w7VI zg`cP`k~@iWVzo%_{^zez_K+ujqNYIZC60-R0=bVE^e4^+OasJ`pQz542Z=*Jag`?z z5eI&vGEW{R_Wi_Vt~^HU`H6~Ld4kyW6X!Yd46)-U%5&s-V%txgWy>qS?Ru5m{1bWE z^7=o2-7&ZLO#F%b0n;|I;V0Izt9~LiQ$8ma{X|N-d_gSu ziIp_@lIZp)BKu6@s@Cfocw-P=S!s%%Tl6051Q9Wmo4R#Rk0Vw%XCB0CdPL~OF` zPD~Q9$+8zQ;U|`pWPf6XC?`V>ATApbQEU-N+%&?Y)FOmfA~K}Qp~NF2I?64=i5`Dq zuFn+l@4uQ7Nsj%A=p;Fo82uAdiE{kE|C(I_Irt~0;pNNWgatrbFZ$w4Nt;FjusOvVh6OTnexZFWJ6anFKCvjh_hRI#T z-MEX~5o58;H~SOLJ*Ji4`o2nD`Wu76@+NWNZv+I(+rRaFhdd=B0_9!e z#NP-El=pc1Ur^FzIv|dTfB^ZBI3fZ9n6t#b3_epaw4%s1o+5F#3lo_ z+%1y1NCT!kEz*b$BEVZtCk`4AY?OB92ZwUlw66UKhSg_xf6#)?1AJ>92Bwpk{_}E2ORdLp#Sx& zh+uNJ2;P%Ih@B#MR|+N0d_iHeDV*3Y0(PYcVyg()ks^uBVs%G~A~uREZ%eVndQs1| z6i=)bv0G9yv0B7#NomAN(TPndhnV{V)oW5AG2=VpTBRal+IP&gNX5jmF9@qPl@QIJ zO(`X&d`E1HR7Ontj+thuoS5(((all?G44C2o1{uEl0PR=O^o@Ds3xg~X#Q|rEivjl zCL5(XV(P!6CHrOrG5ZH>)}%(Fj~-p)H=2k+dQ?r`XeDO;K<%p3Mm*M|`1nRQapVhT z8%;gG0(yyydIay^=qIL&ysOgSuYe)ql*q7qW0W|iN9xXvv0nk>#8^EVXKqXpBlK{Y zzA?x3{y@!&G|zqbfsap^lYhovOq!gpj0OKHRz5ilgB6Q@MLpp-$Z z`htWSQ|5pE&w0oqPKcWgO4-D*?^qv@ayZ~S(gvhl;?Q@j^-FoYA%1i(AP#&-YQI!S zG(W)>5&OPlrB5m)nqTge5qrKPrB5m+n%|9761%=*xmT(pn%}0^65B+E9;uGlB5u|r z)e|eeV7l7WNNf@T-BJ^=K?HP5&BQvf+9kDce??_oQY$z0-!P$TBbom*vYp%T9jl#E z2Y3445Tfhk3y4&mQa923-#)#>GLf}I>LZ#zrPxn2e@bzHSn?go9nv5l4E_M(5YhZ8 zwlQMFcSJNw6U4CZ7;lhfxY6I>S}4tOqraiGK$;^uiun|p7P#l%;8Gwha-+YYIbT}h z?tX()zO>9O{f4GIX_aXHB=s7%^cx)WqzzvEhK5{elUVQt9#y6-Zo|Lf_71oC8ys?_ zeQxtN)aOVCd~W_7Rh2gn`Q-7R)*KVhbyyp`aYDS-;cV!}IWgor!WyJ&V$gSt)=Rek zMR&&U2&tDGh<;+VPI4r=>fm2`!-?pvgMIl8SE7%|P$#(&H+4wvyWv6f5^buLJc;h# z;a@9x5naBctw!=DI(>&*jpXwygD-JZhpUbo{zL~6TP+0;?L=&~6i7_`g4A+T5Haox z=E_XLL>m!XC4~^LzQL_Z3MEE=L3o)d>{mcI@!}iWDy0bGnTV~FB8d@SFi>hr{#8y2 zF++!%x*KW4IT2edrT+@ZASURLTXQ3eI3tcgk(5K65(lG5$|bseL3WWTk2oO$3Z>%z z`kz^r5dZc1s+8RL4d>ZXC9(b+%Ce>E-y&+rRo{@GCDm~Q&F{VH$wl9glOZ+!7TrY7 z|0dqSNG-oDw~`~jVK7N*BZhs0N0QV|jQxh8WT}%ls}=9xZglZhv^dDT(L)RtXE9M4 zBnEzieWEl%^cUwYK^i6ciq!;Zj5w%8QTmN>;)oU*88>G5)O{4#55<9dwNx88_bQS@z(hm2~{3rUmylnmx{XMe12#Jx7h^t>=7bcw$ z7X?G5Gvf4D)C5cCzqR6mJoXi(L6ZG{Q=MON8YnpuhrXgDP;w>?e8owC=3Jdk{7W}T*6QCCYrzF*@tNUHd$X{i@30_SruunL>%@Vl_$%Bc6VRO_UT)JQk~wQUvkv zD{LdBNaFri)I~^f#9h&z2r1!LhQwbPl73}KCT@R4eYliLG=H5_8gcV0?8BuD;=0Hi zCgl)aMZIxS31=|>TSzH6?Hi_3rE+4zH$lk2 zK2j&K_A9b|r0)Ozb^LpOyGkFq>MNGLr2%5eS0s5!!@uPlA?JR@q=z(0%=(G|4{3~8 z_*J|ok|wxYf5Gv}a+16C7aA`ur-*f*;ht=oCYpZ}e1?1Y7aT4vXSqdxq5i^hj{EW# z>@Fy~M-&3%2K$%Y5Pg#$J!*3UT=_)SOwa5f}f0&6(u}(flLz zo5cCQPPUvRp%3?d$j{$5#z5R=3#+@w%qg4mF&6h>_O zjL8&JI5GP_(c@(qL5vfzu2LjlO~krLQN$>*>LNuGBfetLS&AW=f8ZmQX#RnZIAYjW z1UgIcMDvd#BoISHGAAjK*!`av3$jcj&i;k#6Uz+Z^k1ktu`D4D-9RgvNgX$^_jH+5 zeFJ@uj!3mP5d7Hrt5ER`)ILZf1>C^4vPufNfqbjzZ&b$(l;2t>dECH+WdB{rMP#w8 zA}#$J8a17yCUK(nEqjR>qSafLBgE9dP`hbq`$I7CFBETBwh`_A!u-5t;r|w_`HadW zQxUQ9Gu9GK#l*7D2u?JW5Q{&fA;DBiEclGwcvBfM_cNm6O_ju~&*+FVRTDEl<0{rv zLrndQ^jK3ZF6Gb*A@4aDfrSdB6@5+gq&Jj&EW4Ev0hNK-R0 z_%jY8OfAHK&xngKwGw?lqbJAl@Q!ml&GnPY5eMINa z2naO|5idR=BFHpMv=PAuNo@awOE=RM zvGo&*+)UTRu21N3H`)AObYR5ZTut`G`cLq6H8~S2KVjY3~hF6I`y13B>SEh_f*z68%M^u8b)}AF-iJ zV+PUb6JpPenM9XQ*giLA5#2wb?!uT&^!x;$OJfdkz#79_#$4i%H4?XtdBjm`oNOEO ziR0F2+A$Uor>qgWYb+$rSYvtDSVWw+M%kXRn7C*SmwjUiam5A+Y|wEu*zGh+j>&l;{<#ztbdHHtQkO~ejsENmE?iLKV~+c5SJ z8?14 zHAWYW3&dPH(?h-o74f^nIThBcfQjjO~&k$2v>MohNG*1U0(7-J2uIpY>F&KiSr z#vPu#H4bNtyTnLqRLmL=_-I&TV%m7f2gVxlGsa`0uQlqYj3<0btl>6oJR^EpV|UVc z&ga1z(UZn2J|))ZoG{w_-}C@tjq`D%9nntAZQSTUy#9#cF{2~#;v*c#jLyW(kBA#G zx)8TNVrR(cO5FR1`eCCR@!%tTM~v>oqaShcBeDjJ{=}7!upKl85Z6AUd(ap}9Q+8M9%C@E z|0C+UjUmLIkJ#=qh7!9zBDTvIMr{9xu1;e(vE?H!I*bv-#*awrFh&!rKBBG77(=Z4 zh>><Wn$W=#NOMH|7%qM1~q;0Wstwnre+DL{E{S%2-PD z{fMP%V?ELNBkU`UZAANzI4n1I@CZL3u*}#=wE2kma$`Sn{{yy)jRQQa54b2Xju6*B zpt#UD#$Ep)-lH4GiE|&&ooAdNPJh5~u5p?;`2ile#u?(s2kd7XXNhAUP?lp{Bo2JQ zY?g6}*!KZpS;kc!%Lnvl8jpx=A8?g!JR#P9KvbIXl-T?M8R^DrV%Y~ACmU`49~#RC zIHnqHi6tT+*=R@1{{a6aqdl?k1ICh!PQ;84$WJgj6LUVGHqq!pO#6V9c%v&ZQEVvA z=tfNbfS`DzCo$>+wquN5#JCT*j5T@_BR(J@#^^%~{s8xAqc1V^1Nx$k0Ysk2YFw7W9wE2LDP-7JF z{5|YLjM2o)_h<_-#t{$RBRxx|V0NcA!15r^K3 z*Ph0FV()ttdm0Of{qJ$*X)GqTy~nV-v4q(59*Z8vQew+{c(@zOi1qKW?`kY3Hoixh zo3V;m@gDvz#%f~Cd&IgLYlvm<(c)~ZyW#Ge?}h&%7FabVaWZoI?9zG0I`_znU4hAraC zJ9O+Bw)tqh!^NRthq(9-XS;@7;@mr=>>93lgzwP5ZE*U3X|V6mxMlDlcE3Z!hQW*2 z{th1N25(~PJ2b2re2C2=@2bI<*#8b0n}!f#ttfKE5K62Tl`R`0h?Qa&%Z5~9@jKKk z8nTG_?~t`%$R=iqfO$g>F-P2N-jGMkc!#z*Lq0M29dc(41;o^MIGHsR5fk5GX~s}Y zjCqI7X+sGyPV`~MP)3Y;2fJxQIWhDdRwoS=#PD~>nKD!ngWn-)(ojwGdk4n}Lk%%N zv~R*tNA!7zvT;K_(fu7_#|#Zb&v#fEGc*xh-(hIf&`flAhsqH{3(@Hv97YXoM7wv` z8#c5PFW+Kx$k0K&ev6o4Ll^PJa~(=0Yg7=`z?I? z4Fkm8w;1U+3=ucqqN&d?Ok8=3%wEF?aqTS*dJSX5rMH;tF^m&u-=ekKFhQJuE1n?@ zQ^e`Fxau-Y6UW|SvC}X^oOp|jF2fRW=q-jj44cHxx5#NTY!Q3kqN?4nM{IkGsaC^2 zAC0&0Xf+%WYeebIh7)4NTZAT7xYy^(|a#4R*xBwa-@rcAP(`eGgTN$1HL>Om;*$+^JfSxzOfb|FOW&YA(a=Q9 z5_#hc&BVMnn2$HK5L4bDJJ!(3(|m)K7(*LR{tfKn4DCE2afuj17f(~BHS=abbbThP{SC}{SBhS4C6#c zF_sX+1kvUVGJ_41JmWVw2sX^{SYD$u&@fB9e2wuS!yIw{HIf4i^E}wsnDI9(5RYEt zEWofx+hF#+1Yn*!- z4tQ9vk?n3cI2#SqMmbo5Zm`P z;?DKK?4Z}ExX_2NysKf| z)~B;CUSa-7pTRzT1>Ylm7W?=W>JRnV?1NX>Ind{@_g*3HK%dLreueIReI9$`6)yMm z`RvtKNZ->}vX@_BW>;Uuo_mGn9ep)>;T61g^>ys&S2*0(*Rv;HA%0um!5({sku7~E zd+-&iH}zfY;a70l()Y3ZUSV@XKfvyOh42mi5WC|QTG#a>?ABK}Uek}Vn_eMtO+U`A ze}(>4{RF$_6>L}alkCb@$X?M;vCCdza#=seE`9~~W&J$6;1x=j^h@j$Kj99sCM)Q+hXc;47R@>OI(guaG*a_h$RN!rX*Di0$1NvvP!4FHza2&t)&Z#9^;K zk3BE0+pEuKZ@;Vzesjp&py+n7rzJcBH5=X82Mt0LnWVh;D*$pqT(xM+? zSG|OPvwn(Q_!1ip`dN1FON`a)=h)dIre43u&U}fEI{hv?O!T%=zsHVviPS3nK0Ep) zE~@kg>{wBAwf>Nu@Dhb1hdc!9ha{VF^51*W6* zYwU;@sEX3Bv!hyOOm=LHTU^v7)57sw9MpRlih(m?&`Z$4w61N8y=bM^_)>94yq)z?iE( zg53$!y69urZNRp(K9=1KL^|t}*$qIulRkxA3!FOY)7Vu&vZFqOT@DO7=yTZxz@eQ! zpPdWD+vyA0SwOF?zL=d3T-)eN*(pG#jlPVX2#jCrD%f#=>$R?m9Ssy;>1x;!z~ZH@ zksSy)Ug(~XL|tNXSzt;Iv>nFNiwmlGfqU&ediv1qz z2H026adM;^WS>7r(vfb6eexUwhq@8=;d9s>>PFdn&yjPW8)t7n$JD-VlD+X99{aj! z_T+PZ+;9=qf@e3x|l>>^SBqVB+a9-d=iNq5N37kgaLov<@R z&UxJ_J4e*NpgT9uUDPwHyJW|T^%>ojdG60KIjy^9M?Od3w9dwX9|uGYb2@u=_;WN* z=^WT0&v7uRb7K37y-(vYxdp?KLxXzdDBxX9Q^JBX`N5Pmbgnju8mqWTR z_USWh4(h_$$Ip;BsEc49J`>Nax=6O|b9j#EqS$-S;69*>X74;hWxpEhVS&(PGXOJvVH!&0{{iM{X)2R*uE_SiGjbm>yqBhPT!sY_)~K7)U^E{#3- z3`w23Om>&Z*{;iC_dUZvhc1WREb_PNa@p-7f19p^UH1%~ExJ;6^)s9|>&n>`&yd=z zt7R8IgHMyLj$QB!RgJm^cJ4Fre64F{XFWq$gRX_0{tPYkx;A#oGaS|FI@yWOkWi=V zX2**j*6N1X(a+FbqZ={L@fo(ObffGDF^g*5G}~M3t3o%+c7KMVa@`!;^%=Ixbn|Ry z(T6hK0^9!?hAMSSYzNVYQr)t7Ue91xs#|4WJw;B5Zk>Jp6jQ~z4fe@Xcogfl%(H%q zvLfA{dA?7vQmET!Z$Cv)q3)2q@e~aOx?}e0Q|#sIPT5OO5tFYwXU{)HSDx;YJ@6Fk zS-LCs&{LFV>#o_O;<`CH8%KUTe~Pgjoh^InDKc|)cI=s_IM3DDvumDWIaTMtu6v5Y zG@T>6@hM!=bx!Q℞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ĵ|Z#168N6oE@j1Hv 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 HOZESbXdsO$xqH&k8@{ef0TXp+vI?J0chSuR9 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


qy+@N!PIxqGbo4+ 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 z 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 M;C}D>`8w7AA1emQL;wH) diff --git a/oamapps/postConfigure/installer.cpp b/oamapps/postConfigure/installer.cpp index 53b28496d..d47865030 100644 --- a/oamapps/postConfigure/installer.cpp +++ b/oamapps/postConfigure/installer.cpp @@ -888,7 +888,7 @@ int main(int argc, char *argv[]) else { cout << " FAILED" << endl; - cout << endl << "ERROR: InfiniDB Process failed to start, check log files in /var/log/Calpont" << endl; + cout << endl << "ERROR: InfiniDB Process failed to start, check log files in /var/log/Columnstore" << endl; } } diff --git a/oamapps/postConfigure/postConfigure.cpp b/oamapps/postConfigure/postConfigure.cpp index 1c9db1240..3be0397b1 100644 --- a/oamapps/postConfigure/postConfigure.cpp +++ b/oamapps/postConfigure/postConfigure.cpp @@ -3014,10 +3014,10 @@ int main(int argc, char *argv[]) //check for mysql password on remote UM if ( pwprompt == " " ) { //start mysqld - cmd = installDir + "/bin/remote_command.sh " + remoteModuleIP + " " + password + " '" + installDir + "/mysql/mysql-Calpont start'"; + cmd = installDir + "/bin/remote_command.sh " + remoteModuleIP + " " + password + " '" + installDir + "/mysql/mysql-Columnstore start'"; int rtnCode = system(cmd.c_str()); if (WEXITSTATUS(rtnCode) != 0) { - cout << endl << "Error returned from mysql-Calpont start" << endl; + cout << endl << "Error returned from mysql-Columnstore start" << endl; exit(1); } @@ -3065,10 +3065,10 @@ int main(int argc, char *argv[]) { cout << endl << "Additional MySQL Installation steps Successfully Completed on '" + remoteModuleName + "'" << endl << endl; - cmd = installDir + "/bin/remote_command.sh " + remoteModuleIP + " " + password + " '" + installDir + "/mysql/mysql-Calpont stop'"; + cmd = installDir + "/bin/remote_command.sh " + remoteModuleIP + " " + password + " '" + installDir + "/mysql/mysql-Columnstore stop'"; int rtnCode = system(cmd.c_str()); if (WEXITSTATUS(rtnCode) != 0) { - cout << endl << "Error returned from mysql-Calpont stop" << endl; + cout << endl << "Error returned from mysql-Columnstore stop" << endl; exit(1); } unlink("/tmp/idbmysql.log"); @@ -3532,7 +3532,7 @@ int main(int argc, char *argv[]) else { cout << " FAILED" << endl; - cout << endl << "InfiniDB System failed to start, check log files in /var/log/Calpont" << endl; + cout << endl << "InfiniDB System failed to start, check log files in /var/log/Columnstore" << endl; exit(1); } @@ -4231,7 +4231,7 @@ bool storageSetup(bool amazonInstall) { cout << " Running HDFS Sanity Test (please wait): "; cout.flush(); - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string hdfslog = logdir + "/hdfsCheck.log1"; @@ -4889,7 +4889,7 @@ bool storageSetup(bool amazonInstall) { cout << endl << " Running HDFS Sanity Test (please wait): "; cout.flush(); - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string hdfslog = logdir + "/hdfsCheck.log1"; diff --git a/oamapps/resourceMonitor/Makefile b/oamapps/resourceMonitor/Makefile index 31e72c055..59b41b549 100644 --- a/oamapps/resourceMonitor/Makefile +++ b/oamapps/resourceMonitor/Makefile @@ -60,7 +60,7 @@ tdriver-gcov: resourceMonitor-gcov.o $(subst .o,-gcov.o,$(OBJS)) coverage: tdriver-gcov # rm -f *.gcda -# rm -f /var/log/Calpont/cpu*.log +# rm -f /var/log/Columnstore/cpu*.log # LD_LIBRARY_PATH=$(EXPORT_ROOT)/lib:/usr/local/lib ./tdriver-gcov # for file in $(SRCS); do \ # bfile=`basename $$file .cpp`; \ diff --git a/oamapps/resourceMonitor/resourceMonitor.cpp b/oamapps/resourceMonitor/resourceMonitor.cpp index f680eefd7..8dcc2ef2e 100644 --- a/oamapps/resourceMonitor/resourceMonitor.cpp +++ b/oamapps/resourceMonitor/resourceMonitor.cpp @@ -43,7 +43,7 @@ enum HOST_INFO IDLE }; -const string FE_MOUNT_DIR = "/var/log/Calpont/"; // FE mount dir +const string FE_MOUNT_DIR = "/var/log/Columnstore/"; // FE mount dir const int MONITOR_FREQ = 15; // monitor frequency in sec const int LOG_FREQ = 900; // log frequency in sec const int DEBUG = false; diff --git a/oamapps/sendtrap/Makefile b/oamapps/sendtrap/Makefile index a3a3c4877..bd95f6cf1 100755 --- a/oamapps/sendtrap/Makefile +++ b/oamapps/sendtrap/Makefile @@ -46,8 +46,8 @@ tdriver: tdriver.o $(LINK.cpp) -o $@ $^ $(TLIBS) test: $(LIBRARY) tdriver - rm -f /var/log/Calpont/activeAlarms - rm -f /var/log/Calpont/alarm.log + rm -f /var/log/Columnstore/activeAlarms + rm -f /var/log/Columnstore/alarm.log # LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib ./sendtrap processAlarm < ./test.txt %-gcov.o: %.cpp @@ -59,8 +59,8 @@ tdriver-gcov: sendtrap-gcov.o $(subst .o,-gcov.o,$(OBJS)) coverage: tdriver-gcov rm -f *.gcda - rm -f /var/log/Calpont/activeAlarms - rm -f /var/log/Calpont/alarm.log + rm -f /var/log/Columnstore/activeAlarms + rm -f /var/log/Columnstore/alarm.log # LD_LIBRARY_PATH=$(EXPORT_ROOT)/lib:/usr/local/lib ./tdriver-gcov processAlarm < ./test.txt for file in $(SRCS); do \ bfile=`basename $$file .cpp`; \ @@ -69,8 +69,8 @@ coverage: tdriver-gcov /usr/local/bin/genCoverage.pl $(SRCS) leakcheck: $(LIBRARY) tdriver - rm -f /var/log/Calpont/activeAlarms - rm -f /var/log/Calpont/alarm.log + rm -f /var/log/Columnstore/activeAlarms + rm -f /var/log/Columnstore/alarm.log # LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib valgrind --tool=memcheck --leak-check=yes ./tdriver %.d: %.cpp diff --git a/oamapps/serverMonitor/cpuMonitor.cpp b/oamapps/serverMonitor/cpuMonitor.cpp index bebc04866..cab683b9c 100644 --- a/oamapps/serverMonitor/cpuMonitor.cpp +++ b/oamapps/serverMonitor/cpuMonitor.cpp @@ -39,7 +39,7 @@ pthread_mutex_t CPU_LOCK; * constants define */ -const std::string FE_MOUNT_DIR = "/var/log/Calpont/"; // FE mount dir +const std::string FE_MOUNT_DIR = "/var/log/Columnstore/"; // FE mount dir const int MONITOR_FREQ = 5; // monitor frequency in sec const int LOG_FREQ = 900; // log frequency in sec const int RESOURCE_DEBUG = false; diff --git a/oamapps/serverMonitor/dbhealthMonitor.cpp b/oamapps/serverMonitor/dbhealthMonitor.cpp index 838e85af0..e78d8dcbf 100644 --- a/oamapps/serverMonitor/dbhealthMonitor.cpp +++ b/oamapps/serverMonitor/dbhealthMonitor.cpp @@ -160,11 +160,11 @@ int ServerMonitor::healthCheck(bool action) ACK_FLAG ackTemp = ACK_YES; //run Health script - string cmd = startup::StartUp::installDir() + "/bin/dbhealth.sh > /var/log/Calpont/dbfunctional.log1 2>&1"; + string cmd = startup::StartUp::installDir() + "/bin/dbhealth.sh > /var/log/Columnstore/dbfunctional.log1 2>&1"; system(cmd.c_str()); - if (!oam.checkLogStatus("/var/log/Calpont/dbfunctional.log1", "OK")) { - if (oam.checkLogStatus("/var/log/Calpont/dbfunctional.log1", "ERROR 1045") ) { + if (!oam.checkLogStatus("/var/log/Columnstore/dbfunctional.log1", "OK")) { + if (oam.checkLogStatus("/var/log/Columnstore/dbfunctional.log1", "ERROR 1045") ) { LoggingID lid(SERVER_MONITOR_LOG_ID); MessageLog ml(lid); Message msg; diff --git a/oamapps/serverMonitor/msgProcessor.cpp b/oamapps/serverMonitor/msgProcessor.cpp index 0a6a6ae9a..61c16bc8e 100644 --- a/oamapps/serverMonitor/msgProcessor.cpp +++ b/oamapps/serverMonitor/msgProcessor.cpp @@ -348,7 +348,7 @@ void msgProcessor() time_t moduleStartTime = 0; time_t queryStartTime = 0; - string fileName = "/var/log/Calpont/debug.log"; + string fileName = "/var/log/Columnstore/debug.log"; try { // Get ServerMonitor start time. We don't report any SQL that started before then. diff --git a/oamapps/traphandler/Makefile b/oamapps/traphandler/Makefile index 248676bf7..b52991d6a 100755 --- a/oamapps/traphandler/Makefile +++ b/oamapps/traphandler/Makefile @@ -46,8 +46,8 @@ tdriver: tdriver.o $(LINK.cpp) -o $@ $^ $(TLIBS) test: $(LIBRARY) tdriver - rm -f /var/log/Calpont/activeAlarms - rm -f /var/log/Calpont/alarm.log + rm -f /var/log/Columnstore/activeAlarms + rm -f /var/log/Columnstore/alarm.log # LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib ./trapHandler processAlarm < ./test.txt %-gcov.o: %.cpp @@ -59,8 +59,8 @@ tdriver-gcov: trapHandler-gcov.o $(subst .o,-gcov.o,$(OBJS)) coverage: tdriver-gcov rm -f *.gcda - rm -f /var/log/Calpont/activeAlarms - rm -f /var/log/Calpont/alarm.log + rm -f /var/log/Columnstore/activeAlarms + rm -f /var/log/Columnstore/alarm.log # LD_LIBRARY_PATH=$(EXPORT_ROOT)/lib:/usr/local/lib ./tdriver-gcov processAlarm < ./test.txt for file in $(SRCS); do \ bfile=`basename $$file .cpp`; \ @@ -69,8 +69,8 @@ coverage: tdriver-gcov /usr/local/bin/genCoverage.pl $(SRCS) leakcheck: $(LIBRARY) tdriver - rm -f /var/log/Calpont/activeAlarms - rm -f /var/log/Calpont/alarm.log + rm -f /var/log/Columnstore/activeAlarms + rm -f /var/log/Columnstore/alarm.log # LD_LIBRARY_PATH=.:$(EXPORT_ROOT)/lib:/usr/local/lib valgrind --tool=memcheck --leak-check=yes ./tdriver %.d: %.cpp diff --git a/primitives/blockcache/blockrequestprocessor.cpp b/primitives/blockcache/blockrequestprocessor.cpp index e7f40a6f2..c06d1752e 100644 --- a/primitives/blockcache/blockrequestprocessor.cpp +++ b/primitives/blockcache/blockrequestprocessor.cpp @@ -67,7 +67,7 @@ BlockRequestProcessor::BlockRequestProcessor(uint32_t numBlcks, #ifdef _MSC_VER brpLogFileName << "C:/Calpont/log/trace/brp." << tid; #else - brpLogFileName << "/var/log/Calpont/trace/brp." << tid; + brpLogFileName << "/var/log/Columnstore/trace/brp." << tid; #endif fLogFile.open(brpLogFileName.str().c_str(), ios_base::app | ios_base::ate); } diff --git a/primitives/blockcache/filebuffermgr.cpp b/primitives/blockcache/filebuffermgr.cpp index 69f115654..df2698672 100644 --- a/primitives/blockcache/filebuffermgr.cpp +++ b/primitives/blockcache/filebuffermgr.cpp @@ -71,7 +71,7 @@ FileBufferMgr::FileBufferMgr(const uint32_t numBlcks, const uint32_t blkSz, cons #ifdef _MSC_VER fLog.open("C:/Calpont/log/trace/bc", ios_base::app | ios_base::ate); #else - fLog.open("/var/log/Calpont/trace/bc", ios_base::app | ios_base::ate); + fLog.open("/var/log/Columnstore/trace/bc", ios_base::app | ios_base::ate); #endif } diff --git a/primitives/blockcache/iomanager.cpp b/primitives/blockcache/iomanager.cpp index e594bc16d..3a200fda5 100644 --- a/primitives/blockcache/iomanager.cpp +++ b/primitives/blockcache/iomanager.cpp @@ -489,7 +489,7 @@ void* thr_popper(ioManager *arg) { iomLogFileName << "C:/Calpont/log/trace/iom." << threadId; #else threadId=pthread_self(); - iomLogFileName << "/var/log/Calpont/trace/iom." << threadId; + iomLogFileName << "/var/log/Columnstore/trace/iom." << threadId; #endif lFile.open(iomLogFileName.str().c_str(), ios_base::app | ios_base::ate); } @@ -1293,7 +1293,7 @@ ioManager::ioManager(FileBufferMgr& fbm, #ifdef _MSC_VER FDTraceFile().open("C:/Calpont/log/trace/fdcache", ios_base::ate | ios_base::app); #else - FDTraceFile().open("/var/log/Calpont/trace/fdcache", ios_base::ate | ios_base::app); + FDTraceFile().open("/var/log/Columnstore/trace/fdcache", ios_base::ate | ios_base::app); #endif } diff --git a/primitives/blockcache/stats.cpp b/primitives/blockcache/stats.cpp index 8c1f892f4..25385d9a8 100644 --- a/primitives/blockcache/stats.cpp +++ b/primitives/blockcache/stats.cpp @@ -104,7 +104,7 @@ public: #ifdef _MSC_VER oss << "C:/Calpont/log/trace/" << outName << '.' << sessionID; #else - oss << "/var/log/Calpont/trace/" << outName << '.' << sessionID; + oss << "/var/log/Columnstore/trace/" << outName << '.' << sessionID; #endif oFile.reset(new ofstream()); oFile->open(oss.str().c_str(), ios_base::out | ios_base::ate | ios_base::app); diff --git a/primitives/primproc/bppseeder.cpp b/primitives/primproc/bppseeder.cpp index c9abd146d..aae0a277b 100644 --- a/primitives/primproc/bppseeder.cpp +++ b/primitives/primproc/bppseeder.cpp @@ -221,7 +221,7 @@ int BPPSeeder::operator()() #ifdef _MSC_VER LogFileName << "C:/Calpont/log/trace/pt." << tid; #else - LogFileName << "/var/log/Calpont/trace/pt." << tid; + LogFileName << "/var/log/Columnstore/trace/pt." << tid; #endif spof.reset(new PTLogs_t(gThdCnt, LogFileName.str().c_str())); gThdCnt++; diff --git a/primitives/primproc/primproc.cpp b/primitives/primproc/primproc.cpp index d2f37b0c8..2a657c65f 100644 --- a/primitives/primproc/primproc.cpp +++ b/primitives/primproc/primproc.cpp @@ -252,7 +252,7 @@ void* waitForSIGUSR1(void* p) #ifdef _MSC_VER ofstream out("C:/Calpont/log/trace/pplru.dat"); #else - ofstream out("/var/log/Calpont/trace/pplru.dat"); + ofstream out("/var/log/Columnstore/trace/pplru.dat"); #endif for (int i = 0; i < cacheCount; i++) { @@ -602,7 +602,7 @@ int main(int argc, char* argv[]) #ifdef _MSC_VER ofstream* qszLog = new ofstream("C:/Calpont/log/trace/ppqsz.dat"); #else - ofstream* qszLog = new ofstream("/var/log/Calpont/trace/ppqsz.dat"); + ofstream* qszLog = new ofstream("/var/log/Columnstore/trace/ppqsz.dat"); #endif if (!qszLog->good()) { diff --git a/procmgr/processmanager.cpp b/procmgr/processmanager.cpp index 22517b6a0..a110343da 100644 --- a/procmgr/processmanager.cpp +++ b/procmgr/processmanager.cpp @@ -2455,7 +2455,7 @@ void processMSG(messageqcpp::IOSocket* cfIos) // Wait for everything to settle down sleep(5); // Save the BRM. This command presages a system backup. Best to have a current BRM on disk - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string cmd = startup::StartUp::installDir() + "/bin/save_brm > " + logdir + "/save_brm.log1 2>&1"; int rtnCode = system(cmd.c_str()); @@ -6172,7 +6172,7 @@ std::string ProcessManager::sendMsgProcMon1( std::string module, ByteStream msg, void ProcessManager::saveBRM(bool skipSession, bool clearshm) { Oam oam; - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; log.writeLog(__LINE__, "Running reset_locks", LOG_TYPE_DEBUG); diff --git a/procmgr/processmanager.h b/procmgr/processmanager.h index ee6542a30..9f61f627b 100644 --- a/procmgr/processmanager.h +++ b/procmgr/processmanager.h @@ -97,7 +97,7 @@ namespace processmanager{ typedef std::map srvStateList; const int MAX_ARGUMENTS = 10; - const std::string DEFAULT_LOG_FILE = "/var/log/Calpont/ProcessManager.log"; + const std::string DEFAULT_LOG_FILE = "/var/log/Columnstore/ProcessManager.log"; /** diff --git a/procmon/main.cpp b/procmon/main.cpp index c0f7a1bc1..e6b3120e7 100644 --- a/procmon/main.cpp +++ b/procmon/main.cpp @@ -424,7 +424,7 @@ int main(int argc, char **argv) if ( !gOAMParentModuleFlag ) { runStandby = true; // delete any old active alarm log file - unlink ("/var/log/Calpont/activeAlarms"); + unlink ("/var/log/Columnstore/activeAlarms"); } //launch Status table control thread on 'pm' modules diff --git a/procmon/processmonitor.cpp b/procmon/processmonitor.cpp index 053e06b7d..c916f6182 100644 --- a/procmon/processmonitor.cpp +++ b/procmon/processmonitor.cpp @@ -540,7 +540,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO log.writeLog(__LINE__, "ProcMon Running Hot-Standby"); // delete any old active alarm log file - unlink ("/var/log/Calpont/activeAlarms"); + unlink ("/var/log/Columnstore/activeAlarms"); } //Check for SIMPLEX runtype processes @@ -823,7 +823,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO //reset BRM locks and clearShm if ( requestStatus == oam::API_SUCCESS ) { - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string cmd = startup::StartUp::installDir() + "/bin/reset_locks > " + logdir + "/reset_locks.log1 2>&1"; system(cmd.c_str()); @@ -1387,7 +1387,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO system(cmd.c_str()); cmd = startup::StartUp::installDir() + "/bin/post-mysql-install >> /tmp/rpminstall"; system(cmd.c_str()); - cmd = startup::StartUp::installDir() + "/mysql/mysql-Calpont start > /tmp/mysqldstart"; + cmd = startup::StartUp::installDir() + "/mysql/mysql-Columnstore start > /tmp/mysqldstart"; system(cmd.c_str()); ifstream file ("/tmp/mysqldstart"); @@ -1528,7 +1528,7 @@ void ProcessMonitor::processMessage(messageqcpp::ByteStream msg, messageqcpp::IO runStandby = true; // delete any old active alarm log file - unlink ("/var/log/Calpont/activeAlarms"); + unlink ("/var/log/Columnstore/activeAlarms"); log.writeLog(__LINE__, "Running Standby", LOG_TYPE_INFO); //give time for Status Control thread to start reading incoming messages @@ -2396,7 +2396,7 @@ pid_t ProcessMonitor::startProcess(string processModuleType, string processName, // dbrmFile = tempDBRMDir + dbrmFile.substr(pos,80);; // } - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string cmd = startup::StartUp::installDir() + "/bin/reset_locks > " + logdir + "/reset_locks.log1 2>&1"; @@ -2470,7 +2470,7 @@ pid_t ProcessMonitor::startProcess(string processModuleType, string processName, char timestamp[200]; strftime (timestamp, 200, "%m:%d:%y-%H:%M:%S", &tm); - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string outFileName = logdir + "/" + processName + ".out"; string errFileName = logdir + "/" + processName + ".err"; @@ -3552,7 +3552,7 @@ int ProcessMonitor::buildSystemTables() string fileName = DBdir + "/000.dir"; if (!IDBPolicy::exists(fileName.c_str())) { - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string cmd = startup::StartUp::installDir() + "/bin/dbbuilder 7 > " + logdir + "/dbbuilder.log &"; system(cmd.c_str()); @@ -4335,7 +4335,7 @@ int ProcessMonitor::runStartupTest() return oam::API_SUCCESS; //run startup test script - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string cmd = startup::StartUp::installDir() + "/bin/startupTests.sh > " + logdir + "/startupTests.log1 2>&1"; system(cmd.c_str()); @@ -4399,7 +4399,7 @@ int ProcessMonitor::runHDFSTest() Oam oam; bool fail = false; - string logdir("/var/log/Calpont"); + string logdir("/var/log/Columnstore"); if (access(logdir.c_str(), W_OK) != 0) logdir = "/tmp"; string hdfslog = logdir + "/hdfsCheck.log1"; diff --git a/snmpd/etc/snmpdx.conf b/snmpd/etc/snmpdx.conf index ab26d1246..d5bd57da8 100644 --- a/snmpd/etc/snmpdx.conf +++ b/snmpd/etc/snmpdx.conf @@ -482,7 +482,7 @@ rwuser myuser # # External process to retrieve cpu usage info -#exec cpuLoad /usr/local/Calpont/bin/resourceMonitor +#exec cpuLoad /usr/local/MariaDB/Columnstore/bin/resourceMonitor # For snmpget and snmpwalk to work. # The above lines won't set info to extTable (to be investigated) diff --git a/snmpd/etc/snmpdx.conf.singleserver b/snmpd/etc/snmpdx.conf.singleserver index 12feceee4..9eeab396c 100644 --- a/snmpd/etc/snmpdx.conf.singleserver +++ b/snmpd/etc/snmpdx.conf.singleserver @@ -482,7 +482,7 @@ rwuser myuser # # External process to retrieve cpu usage info -#exec cpuLoad /usr/local/Calpont/bin/resourceMonitor +#exec cpuLoad /usr/local/MariaDB/Columnstore/bin/resourceMonitor # For snmpget and snmpwalk to work. # The above lines won't set info to extTable (to be investigated) diff --git a/snmpd/etc/snmptrapd.conf b/snmpd/etc/snmptrapd.conf index c5de0790c..9c594cd01 100644 --- a/snmpd/etc/snmptrapd.conf +++ b/snmpd/etc/snmptrapd.conf @@ -6,9 +6,9 @@ disableAuthorization yes #forward .1.3.6.1.4.1.2021 0.0.0.0 #CALPONT_NMSADDR #forward default 0.0.0.0 -#traphandle default /usr/local/Calpont/bin/trapHandler default -traphandle .1.3.6.1.2.1.88 /usr/local/Calpont/bin/trapHandler agentTrap -#traphandle .1.3.6.1.4.1.2021 /usr/local/Calpont/bin/trapHandler processAlarm -#traphandle .1.3.6.1.4.1.8072 /usr/local/Calpont/bin/trapHandler processAlarm -traphandle UCD-SNMP-MIB::ucdavis /usr/local/Calpont/bin/trapHandler processAlarm +#traphandle default /usr/local/MariaDB/Columnstore/bin/trapHandler default +traphandle .1.3.6.1.2.1.88 /usr/local/MariaDB/Columnstore/bin/trapHandler agentTrap +#traphandle .1.3.6.1.4.1.2021 /usr/local/MariaDB/Columnstore/bin/trapHandler processAlarm +#traphandle .1.3.6.1.4.1.8072 /usr/local/MariaDB/Columnstore/bin/trapHandler processAlarm +traphandle UCD-SNMP-MIB::ucdavis /usr/local/MariaDB/Columnstore/bin/trapHandler processAlarm diff --git a/snmpd/etc/snmptrapd.conf.singleserver b/snmpd/etc/snmptrapd.conf.singleserver index c5de0790c..9c594cd01 100644 --- a/snmpd/etc/snmptrapd.conf.singleserver +++ b/snmpd/etc/snmptrapd.conf.singleserver @@ -6,9 +6,9 @@ disableAuthorization yes #forward .1.3.6.1.4.1.2021 0.0.0.0 #CALPONT_NMSADDR #forward default 0.0.0.0 -#traphandle default /usr/local/Calpont/bin/trapHandler default -traphandle .1.3.6.1.2.1.88 /usr/local/Calpont/bin/trapHandler agentTrap -#traphandle .1.3.6.1.4.1.2021 /usr/local/Calpont/bin/trapHandler processAlarm -#traphandle .1.3.6.1.4.1.8072 /usr/local/Calpont/bin/trapHandler processAlarm -traphandle UCD-SNMP-MIB::ucdavis /usr/local/Calpont/bin/trapHandler processAlarm +#traphandle default /usr/local/MariaDB/Columnstore/bin/trapHandler default +traphandle .1.3.6.1.2.1.88 /usr/local/MariaDB/Columnstore/bin/trapHandler agentTrap +#traphandle .1.3.6.1.4.1.2021 /usr/local/MariaDB/Columnstore/bin/trapHandler processAlarm +#traphandle .1.3.6.1.4.1.8072 /usr/local/MariaDB/Columnstore/bin/trapHandler processAlarm +traphandle UCD-SNMP-MIB::ucdavis /usr/local/MariaDB/Columnstore/bin/trapHandler processAlarm diff --git a/snmpd/snmpmanager/snmpglobal.h b/snmpd/snmpmanager/snmpglobal.h index 2aae33d9a..318d56973 100644 --- a/snmpd/snmpmanager/snmpglobal.h +++ b/snmpd/snmpmanager/snmpglobal.h @@ -46,9 +46,9 @@ typedef oid CALPONT_OID; const int SET = 1; const int CLEAR = 0; -const std::string ACTIVE_ALARM_FILE = "/var/log/Calpont/activeAlarms"; -const std::string ALARM_FILE = "/var/log/Calpont/alarm.log"; -const std::string ALARM_ARCHIVE_FILE = "/var/log/Calpont/archive"; +const std::string ACTIVE_ALARM_FILE = "/var/log/Columnstore/activeAlarms"; +const std::string ALARM_FILE = "/var/log/Columnstore/alarm.log"; +const std::string ALARM_ARCHIVE_FILE = "/var/log/Columnstore/archive"; const CALPONT_OID SNMPTRAP_OID [] = { 1, 3, 6, 1, 6, 3, 1, 1, 4, 1, 0 }; const CALPONT_OID CALPONT_TRAP_OID [] = { 1, 3, 6, 1, 4, 1, 2021, 991 }; diff --git a/tools/evalidx/checkidx.py b/tools/evalidx/checkidx.py index ec43e45b9..5a8596016 100755 --- a/tools/evalidx/checkidx.py +++ b/tools/evalidx/checkidx.py @@ -9,7 +9,7 @@ def find_paths(): config_file = os.environ['CALPONT_CONFIG_FILE'] except KeyError: try: - config_file = '/usr/local/Calpont/etc' + config_file = '/usr/local/MariaDB/Columnstore/etc' os.lstat(config_file) except: sys.exit('No config file available') diff --git a/tools/evalidx/checkidx.py~ b/tools/evalidx/checkidx.py~ new file mode 100755 index 000000000..ec43e45b9 --- /dev/null +++ b/tools/evalidx/checkidx.py~ @@ -0,0 +1,98 @@ +#!/usr/bin/python + +import os, sys, glob, shutil, xml.dom.minidom + +def find_paths(): + + """Find DBRoot and BulkRoot.""" + try: + config_file = os.environ['CALPONT_CONFIG_FILE'] + except KeyError: + try: + config_file = '/usr/local/Calpont/etc' + os.lstat(config_file) + except: + sys.exit('No config file available') + + + xmldoc = xml.dom.minidom.parse(config_file) + bulk_node = xmldoc.getElementsByTagName('BulkRoot')[0] + db_node = xmldoc.getElementsByTagName('DBRoot')[0] + + bulk_dir = bulk_node.childNodes[0].nodeValue + data_dir = db_node.childNodes[0].nodeValue + + return (bulk_dir, data_dir) + + +def validate_indexes(job_file): + index_files = [] + xmldoc = xml.dom.minidom.parse(job_file) + + for index_node in xmldoc.getElementsByTagName('Index'): + curTreeOid = index_node.getAttribute('iTreeOid') + curListOid = index_node.getAttribute('iListOid') + curMapOid = index_node.getAttribute('mapOid') + curIdxCmdArg = ' -t ' + curTreeOid + ' -l ' + curListOid + ' -v -c ' + curMapOid + ' -b 4' + ' > idxCol_' + curMapOid+'.out' +# print curIdxCmd +# exec_cmd( genii + '/tools/evalidx/evalidx', curIdxCmd ) + index_files.append( curIdxCmdArg ) + + return index_files + +def exec_cmd(cmd, args): + """Execute command using subprocess module or if that fails, + use os.system + """ + + try: + import subprocess + + try: + retcode = call(cmd + " "+args, shell=True) + if retcode < 0: + print >>sys.stderr, "Child was terminated by signal", -retcode + sys.exit(-1) + + else: + print >>sys.stderr, "Child returned", retcode + + except OSError, e: + + print >>sys.stderr, "Execution failed:", e + sys.exit(-1) + except: + res = os.system(cmd+' '+args) + if res: + sys.exit( res ) + + + +def main(): + """ + Validate indexes.. + """ + + if not os.access('.', os.W_OK): + os.chdir('/tmp') + print 'Changing to /tmp to have permission to write files' + + if len(os.getenv('LD_LIBRARY_PATH'))<5: + print 'Suspicous LD_LIBRARY_PATH: %s'%os.getenv('LD_LIBRARY_PATH') + + home = os.getenv('HOME') + genii = home+'/genii' + + (bulkroot, dbroot) = find_paths() + + if len(glob.glob(bulkroot+'/job/Job_300.xml')) == 0: + sys.exit("No Job_300.xml exist ") + + indexes = validate_indexes(bulkroot+'/job/Job_300.xml') + for idxCmdArg in indexes: + print idxCmdArg + exec_cmd( genii + '/tools/evalidx/evalidx', idxCmdArg ) + + +## the following line allows either interactive use or module import +if __name__=="__main__": main() diff --git a/tools/reserveStacks/stack b/tools/reserveStacks/stack index 12d54ae03..2c02de64b 100755 --- a/tools/reserveStacks/stack +++ b/tools/reserveStacks/stack @@ -37,7 +37,7 @@ elif [ $(expr 'release' : "$cmd") -gt 2 ]; then INST=$4 fi if [ -z "$INSTALLDIR" ]; then - INSTALLDIR="/usr/local/Calpont" + INSTALLDIR="/usr/local/MariaDB/Columnstore" if [ $INST ]; then INSTALLDIR=$INST fi diff --git a/tools/reserveStacks/stack~ b/tools/reserveStacks/stack~ new file mode 100755 index 000000000..12d54ae03 --- /dev/null +++ b/tools/reserveStacks/stack~ @@ -0,0 +1,82 @@ +#!/bin/bash + +# BP 09/16/2011 13:43 +# This script will give user to +# list all the calpont stacks +# reserve a calpont stack +# release a calpont stack +# Help to use a test stack without stepping each other. +# + +DB=stacks + +usage() +{ + echo "Usage:" >&2 + echo " ${0##*/} list" >&2 + echo " ${0##*/} reserve stackname who" >&2 + echo " ${0##*/} release stackname who" >&2 +} + +cmd="$1" +argc=$# + +if [ -z "$cmd" -o "$cmd" = "-h" ]; then + usage + exit 1 +fi + +if [ $(expr 'list' : "$cmd") -gt 0 ]; then + cmd=list + INST=$2 +elif [ $(expr 'reserve' : "$cmd") -gt 2 ]; then + cmd=reserve + INST=$4 +elif [ $(expr 'release' : "$cmd") -gt 2 ]; then + cmd=release + INST=$4 +fi +if [ -z "$INSTALLDIR" ]; then + INSTALLDIR="/usr/local/Calpont" + if [ $INST ]; then + INSTALLDIR=$INST + fi + export INSTALLDIR +fi + +if [ -z "$MYSQLCMD" ]; then + if [ -d "$INSTALLDIR/mysql" ]; then + # Linux. + MYSQLCMD="$INSTALLDIR/mysql/bin/mysql -h 10.100.4.51 -u root --database=$DB" + else + # Windows. + MYSQLCMD="$INSTALLDIR/bin/mysql -h 10.100.4.51 -u root --database=$DB" + fi + export MYSQLCMD +fi + +good=0 + +if [ "$cmd" = "list" ]; then + sql="call list_stacks()" + $MYSQLCMD -e "$sql" + good=1 +fi + +if [ "$cmd" = "reserve" -a $argc -ge 3 ]; then + sql="call reserve_stack('$2', '$3')" + $MYSQLCMD -e "$sql" + good=1 +fi + +if [ "$cmd" = "release" -a $argc -ge 3 ]; then + sql="call release_stack('$2', '$3')" + $MYSQLCMD -e "$sql" + good=1 +fi + +if [ $good -eq 0 ]; then + usage + exit 1 +fi + diff --git a/utils/autoconf/INSTALL b/utils/autoconf/INSTALL index 0f12f143b..9825f3e10 100644 --- a/utils/autoconf/INSTALL +++ b/utils/autoconf/INSTALL @@ -43,10 +43,10 @@ the entire Calpont directory tree there. After untaring the sofware or installing the RPM's, setup the software to run (this script needs to run with root privileges). Check the Installation Guide for addition details on using postConfigure: -/usr/local/Calpont/bin/postConfigure +/usr/local/MariaDB/Columnstore/bin/postConfigure Setup some aliases: -. /usr/local/Calpont/bin/calpontAlias +. /usr/local/MariaDB/Columnstore/bin/calpontAlias Connect to MySQL: idbmysql @@ -70,7 +70,7 @@ To use bulk load: 200|2002| 2. Save/place this file in a directory. 3. From that same directory, import the rows: - /usr/local/Calpont/bin/cpimport calpont caltest caltest.tbl + /usr/local/MariaDB/Columnstore/bin/cpimport calpont caltest caltest.tbl And check the import: calpontmysql calpont diff --git a/utils/autoconf/INSTALL~ b/utils/autoconf/INSTALL~ new file mode 100644 index 000000000..0f12f143b --- /dev/null +++ b/utils/autoconf/INSTALL~ @@ -0,0 +1,306 @@ +Installation Instructions +************************* + +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free +Software Foundation, Inc. + +Copyright (C) 2014 InfiniDB, Inc. + +This file is free documentation; the Free Software Foundation gives +unlimited permission to copy, distribute and modify it. + +InfiniDB, Inc. also gives unlimited permission to copy, distribute and +modify it. + +Basic Installation from source +============================== + +**** InfiniDB source build instructions **** + +Consult the generic installation instructions +that follow for detailed information. The short version is: + +cd $HOME +git clone http://github.com/infinidb/mysql +git clone http://github.com/infinidb/infinidb +-- or -- +tar -zxf +cd mysql +./configure --prefix=$HOME +make +make install +cd ../infinidb +./configure --prefix=$HOME +make +make install + +This will create a directory called Calpont in $HOME which conatins +all the software you need. + +Install the InfiniDB software into /usr/local (for example) by copying +the entire Calpont directory tree there. + +After untaring the sofware or installing the RPM's, setup the software +to run (this script needs to run with root privileges). Check the Installation +Guide for addition details on using postConfigure: +/usr/local/Calpont/bin/postConfigure + +Setup some aliases: +. /usr/local/Calpont/bin/calpontAlias + +Connect to MySQL: +idbmysql + +A suggested test scenario: +create database calpont; +use calpont; +create table caltest (col1 int, col2 int) engine=infinidb; +show create table caltest; +set autocommit=0; +insert into caltest values (1, 2); +insert into caltest values (3, 4); +commit; +select * from caltest; + +To use bulk load: +1. A delimited import file should be created to match the table that + you want to import data to similar to the following. In this + example, the file will be saved as idbtest.tbl: + 100|1001| + 200|2002| +2. Save/place this file in a directory. +3. From that same directory, import the rows: + /usr/local/Calpont/bin/cpimport calpont caltest caltest.tbl + +And check the import: +calpontmysql calpont +select * from caltest; + + +That's it. Enjoy. + + +These are generic installation instructions. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, and a +file `config.log' containing compiler output (useful mainly for +debugging `configure'). + + It can also use an optional file (typically called `config.cache' +and enabled with `--cache-file=config.cache' or simply `-C') that saves +the results of its tests to speed up reconfiguring. (Caching is +disabled by default to prevent problems with accidental use of stale +cache files.) + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If you are using the cache, and at +some point `config.cache' contains results you don't want to keep, you +may remove or edit it. + + The file `configure.ac' (or `configure.in') is used to create +`configure' by a program called `autoconf'. You only need +`configure.ac' if you want to change it or regenerate `configure' using +a newer version of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. If you're + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + +Compilers and Options +===================== + +Some systems require unusual options for compilation or linking that the +`configure' script does not know about. Run `./configure --help' for +details on some of the pertinent environment variables. + + You can give `configure' initial values for configuration parameters +by setting variables in the command line or in the environment. Here +is an example: + + ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix + + *Note Defining Variables::, for more details. + +Compiling For Multiple Architectures +==================================== + +You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you must use a version of `make' that +supports the `VPATH' variable, such as GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + If you have to use a `make' that does not support the `VPATH' +variable, you have to compile the package for one architecture at a +time in the source code directory. After you have installed the +package for one architecture, use `make distclean' before reconfiguring +for another architecture. + +Installation Names +================== + +By default, `make install' installs the package's commands under +`/usr/local/bin', include files under `/usr/local/include', etc. You +can specify an installation prefix other than `/usr/local' by giving +`configure' the option `--prefix=PREFIX'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +pass the option `--exec-prefix=PREFIX' to `configure', the package uses +PREFIX as the prefix for installing programs and libraries. +Documentation and other data files still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=DIR' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + +Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Specifying the System Type +========================== + +There may be some features `configure' cannot figure out automatically, +but needs to determine by the type of machine the package will run on. +Usually, assuming the package is built to be run on the _same_ +architectures, `configure' can figure that out, but if it prints a +message saying it cannot guess the machine type, give it the +`--build=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name which has the form: + + CPU-COMPANY-SYSTEM + +where SYSTEM can have one of these forms: + + OS KERNEL-OS + + See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the machine type. + + If you are _building_ compiler tools for cross-compiling, you should +use the option `--target=TYPE' to select the type of system they will +produce code for. + + If you want to _use_ a cross compiler, that generates code for a +platform different from the build platform, you should specify the +"host" platform (i.e., that on which the generated programs will +eventually be run) with `--host=TYPE'. + +Sharing Defaults +================ + +If you want to set default values for `configure' scripts to share, you +can create a site shell script called `config.site' that gives default +values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Defining Variables +================== + +Variables not defined in a site shell script can be set in the +environment passed to `configure'. However, some packages may run +configure again during the build, and the customized values of these +variables may be lost. In order to avoid this problem, you should set +them in the `configure' command line, using `VAR=value'. For example: + + ./configure CC=/usr/local2/bin/gcc + +causes the specified `gcc' to be used as the C compiler (unless it is +overridden in the site shell script). Here is a another example: + + /bin/bash ./configure CONFIG_SHELL=/bin/bash + +Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent +configuration-related scripts to be executed by `/bin/bash'. + +`configure' Invocation +====================== + +`configure' recognizes the following options to control how it operates. + +`--help' +`-h' + Print a summary of the options to `configure', and exit. + +`--version' +`-V' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`--cache-file=FILE' + Enable the cache: use and save the results of the tests in FILE, + traditionally `config.cache'. FILE defaults to `/dev/null' to + disable caching. + +`--config-cache' +`-C' + Alias for `--cache-file=config.cache'. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`configure' also accepts some other, not widely useful, options. Run +`configure --help' for more details. + diff --git a/utils/autoconf/README b/utils/autoconf/README index 2aa1663a5..66a452622 100644 --- a/utils/autoconf/README +++ b/utils/autoconf/README @@ -3,8 +3,8 @@ To build the software from source, consult the file INSTALL. Brief Install Instructions: 1. Install the 3 Calpont InfiniDB RPMs. -2. Install and start the software, run: /usr/local/Calpont/bin/postConfigure -3. Setup some aliases: . /usr/local/Calpont/bin/calpontAlias +2. Install and start the software, run: /usr/local/MariaDB/Columnstore/bin/postConfigure +3. Setup some aliases: . /usr/local/MariaDB/Columnstore/bin/calpontAlias 4. Connect to MySQL: idbmysql 5. Try the test in step 12 below @@ -21,7 +21,7 @@ Detailed Installation Instructions: tar xvf calpont-2.2.0-2.x86_64.rpm.tar.gz 4. Install the 3 RPMs in this order, the Calpont InfiniDB software will be installed in - /usr/local/Calpont. + /usr/local/MariaDB/Columnstore. rpm -ivh infinidb-libs-2.2.0-2.x86_64.rpm rpm -ivh infinidb-platform-2.2.0-2.x86_64.rpm @@ -31,19 +31,19 @@ Detailed Installation Instructions: 5a.To configure and run on a single server system utilizing local disk storage, run install script: - /usr/local/Calpont/bin/postConfigure + /usr/local/MariaDB/Columnstore/bin/postConfigure 5b.To configure and run on a multi-server system and/or to utilize a SAN storage system, follow the instructions in the Calpont InfiniDB Installation Guide. - /usr/local/Calpont/bin/postConfigure + /usr/local/MariaDB/Columnstore/bin/postConfigure 6. Ports utilized by the Calpont InfiniDB Software The Calpont MySQL daemon utilizes port 3306. To use a different port, update the 2 locations in the following file: - /usr/local/Calpont/mysql/my.cnf + /usr/local/MariaDB/Columnstore/mysql/my.cnf port = 3306 port = 3306 @@ -53,7 +53,7 @@ Detailed Installation Instructions: 8600 - 8622, 8700, and 8800 7. Setup some aliases: -. /usr/local/Calpont/bin/calpontAlias +. /usr/local/MariaDB/Columnstore/bin/calpontAlias 8. To manually start and stop the Calpont InfiniDB Software as the root user run: @@ -127,7 +127,7 @@ Detailed Installation Instructions: mysql> -12. Run the following upgrade script to create calponsys schema and upgrade the syscolumn table: /usr/local/Calpont/bin/upgrade-infinidb.sh +12. Run the following upgrade script to create calponsys schema and upgrade the syscolumn table: /usr/local/MariaDB/Columnstore/bin/upgrade-infinidb.sh 13. As an example to get you started, try this: diff --git a/utils/autoconf/README~ b/utils/autoconf/README~ new file mode 100644 index 000000000..2aa1663a5 --- /dev/null +++ b/utils/autoconf/README~ @@ -0,0 +1,145 @@ +To build the software from source, consult the file INSTALL. + +Brief Install Instructions: + +1. Install the 3 Calpont InfiniDB RPMs. +2. Install and start the software, run: /usr/local/Calpont/bin/postConfigure +3. Setup some aliases: . /usr/local/Calpont/bin/calpontAlias +4. Connect to MySQL: idbmysql +5. Try the test in step 12 below + + +Detailed Installation Instructions: + +1. Download the package calpont-2.2.0-2.x86_64.rpm.tar.gz (RHEL5 64-BIT) + to the server where you are installing Calpont. + +2. Obtain root user access. + +3. Unpack the tarball, which will generate 4 RPMs. + + tar xvf calpont-2.2.0-2.x86_64.rpm.tar.gz + +4. Install the 3 RPMs in this order, the Calpont InfiniDB software will be installed in + /usr/local/Calpont. + + rpm -ivh infinidb-libs-2.2.0-2.x86_64.rpm + rpm -ivh infinidb-platform-2.2.0-2.x86_64.rpm + rpm -ivh infinidb-mysql-2.2.0-2.x86_64.rpm + rpm -ivh infinidb-storage-engine-2.2.0-2.x86_64.rpm + +5a.To configure and run on a single server system utilizing local disk storage, + run install script: + + /usr/local/Calpont/bin/postConfigure + +5b.To configure and run on a multi-server system and/or to utilize a SAN storage + system, follow the instructions in the Calpont InfiniDB Installation Guide. + + /usr/local/Calpont/bin/postConfigure + +6. Ports utilized by the Calpont InfiniDB Software + + The Calpont MySQL daemon utilizes port 3306. To use a different port, update + the 2 locations in the following file: + + /usr/local/Calpont/mysql/my.cnf + + port = 3306 + port = 3306 + + You must reserve the following ports to run the Calpont InfiniDB Software: + + 8600 - 8622, 8700, and 8800 + +7. Setup some aliases: +. /usr/local/Calpont/bin/calpontAlias + +8. To manually start and stop the Calpont InfiniDB Software as the root user run: + + cc startSystem + + To stop the Calpont Software, run: + + cc stopSystem + +9. To start/stop the Calpont InfiniDB Software during system boot/shutdown use the + chkconfig command + + /sbin/chkconfig --add infinidb + /sbin/chkconfig infinidb on + +10. After the Calpont InfiniDB Software has been started, use the following command to + connect to the Calpont OAM Console and watch for the System to go to the + ACTIVE status. The follow will repeatedly run the OAM command getsysteminfo + every 5 seconds. + + calpontOAMconsole getsysteminfo -r + + Here is an example display from a Single Server Install: + + System and Module statuses + + Component Status Last Status Change + ------------ ---------------------- ------------------------ + System ACTIVE Mon Apr 6 18:07:14 2009 + + Module dm1 ACTIVE Mon Apr 6 18:07:12 2009 + + Calpont Process statuses + + Process Module Status Last Status Change Process ID + ------------------ ------ ------------ ------------------------ ---------- + ProcessMonitor dm1 ACTIVE Mon Apr 6 18:06:41 2009 12753 + ProcessManager dm1 ACTIVE Mon Apr 6 18:06:46 2009 12954 + SNMPTrapDaemon dm1 ACTIVE Mon Apr 6 18:06:41 2009 12963 + SNMPAgent dm1 ACTIVE Mon Apr 6 18:06:50 2009 13565 + ServerMonitor dm1 ACTIVE Mon Apr 6 18:06:55 2009 13635 + DBRMWorkerNode dm1 ACTIVE Mon Apr 6 18:06:51 2009 13640 + DBRMControllerNode dm1 ACTIVE Mon Apr 6 18:06:52 2009 13645 + ExeMgr dm1 ACTIVE Mon Apr 6 18:07:05 2009 14578 + PrimProc dm1 ACTIVE Mon Apr 6 18:07:03 2009 13842 + DDLProc dm1 ACTIVE Mon Apr 6 18:07:10 2009 14936 + DMLProc dm1 ACTIVE Mon Apr 6 18:07:13 2009 15114 + + Active Alarm Counts: Critical = 0, Major = 0, Minor = 0, Warning = 0, Info = 0 + + Once the System status is ACTIVE, enter the following to exit back to the + UNIX prompt: + + CNTR + + Or to get back Calpont OAM Console Prompt,enter the following: + + CNTR + +11. Use the following command to access the Calpont InfiniDB MySQL console: + + idbmysql + + Example output: + + Welcome to the Mysql monitor. Commands end with ; or \g. + Your Mysql connection id is 1 + Server version: 5.1.26-Calpont-log Source distribution + + Type 'help;' or '\h' for help. Type '\c' to clear the buffer. + + mysql> + +12. Run the following upgrade script to create calponsys schema and upgrade the syscolumn table: /usr/local/Calpont/bin/upgrade-infinidb.sh + +13. As an example to get you started, try this: + + create database calpont; + use calpont; + create table caltest (col1 int, col2 int) engine=infinidb; + show create table caltest; + insert into caltest values (1, 2); + insert into caltest values (3, 4); + commit; + select * from caltest; + +14. Consult the Admin Guide and Syntax Guide for additional information on how + to get started. + diff --git a/utils/idbhdfs/hdfs-12/setenv-hdfs-12 b/utils/idbhdfs/hdfs-12/setenv-hdfs-12 index 239f21505..1237818f4 100755 --- a/utils/idbhdfs/hdfs-12/setenv-hdfs-12 +++ b/utils/idbhdfs/hdfs-12/setenv-hdfs-12 @@ -1,6 +1,6 @@ #!/bin/bash if [ -z "$INFINIDB_INSTALL_DIR" ]; then - INFINIDB_INSTALL_DIR=/usr/local/Calpont + INFINIDB_INSTALL_DIR=/usr/local/MariaDB/Columnstore fi export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR diff --git a/utils/idbhdfs/hdfs-20/setenv-hdfs-20 b/utils/idbhdfs/hdfs-20/setenv-hdfs-20 index 7353b69b1..9d7754e77 100755 --- a/utils/idbhdfs/hdfs-20/setenv-hdfs-20 +++ b/utils/idbhdfs/hdfs-20/setenv-hdfs-20 @@ -1,6 +1,6 @@ #!/bin/bash if [ -z "$INFINIDB_INSTALL_DIR" ]; then - INFINIDB_INSTALL_DIR=/usr/local/Calpont + INFINIDB_INSTALL_DIR=/usr/local/MariaDB/Columnstore fi export INFINIDB_INSTALL_DIR=$INFINIDB_INSTALL_DIR diff --git a/utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java b/utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java index 475b9e57c..952575009 100755 --- a/utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java +++ b/utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java @@ -63,7 +63,7 @@ public class InfiniDBOutputDriver extends Configured implements Tool InfiniDBConfiguration idbconf = new InfiniDBConfiguration(jobconf); idbconf.setInputPath("input"); idbconf.setOutputPath("output"); - idbconf.setInfiniDBHome("/usr/local/Calpont"); + idbconf.setInfiniDBHome("/usr/local/MariaDB/Columnstore"); jobconf.setMapperClass(InfiniDoopMapper.class); jobconf.setNumMapTasks(1); diff --git a/utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java~ b/utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java~ new file mode 100755 index 000000000..475b9e57c --- /dev/null +++ b/utils/infinidb_hadoop/src/infinidb/hadoop/example/InfiniDBOutputDriver.java~ @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2014 InfiniDB, Inc. + * + * InfiniDB, Inc. licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package infinidb.hadoop.example; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; +import java.sql.*; +import java.util.Date; +import java.util.Formatter; +import java.io.IOException; + +import org.apache.hadoop.fs.Path; +import org.apache.hadoop.io.*; +import org.apache.hadoop.mapred.lib.db.*; +import org.apache.hadoop.mapreduce.Job; +import org.apache.hadoop.mapreduce.lib.input.*; +import org.apache.hadoop.mapreduce.lib.output.*; +import org.apache.hadoop.mapred.JobClient; +import org.apache.hadoop.mapred.JobConf; +import org.apache.hadoop.mapred.Mapper; +import org.apache.hadoop.mapred.Reducer; +import org.apache.hadoop.mapred.TextInputFormat; +import org.apache.hadoop.mapred.SequenceFileInputFormat; +import org.apache.hadoop.conf.*; +import org.apache.hadoop.util.*; +import org.apache.hadoop.*; + +import infinidb.hadoop.db.*; + +public class InfiniDBOutputDriver extends Configured implements Tool +{ + public int run (String[] args) throws Exception + { + Configuration conf = new Configuration(); + JobConf jobconf = new JobConf(conf, InfiniDoopDriver.class); + DBConfiguration.configureDB(jobconf, + "com.mysql.jdbc.Driver", + "jdbc:mysql://srvswint4/tpch1","root", ""); + String [] fields = { "n_nationkey", "n_name" }; + String [] outFields = {"id", "name"}; + jobconf.setInputFormat(IDBFileInputFormat.class); + jobconf.setOutputFormat(InfiniDBOutputFormat.class); + jobconf.setOutputKeyClass(NullWritable.class); + jobconf.setOutputValueClass(Text.class); + InfiniDBOutputFormat.setOutput(jobconf, "db", outFields); + InfiniDBConfiguration idbconf = new InfiniDBConfiguration(jobconf); + idbconf.setInputPath("input"); + idbconf.setOutputPath("output"); + idbconf.setInfiniDBHome("/usr/local/Calpont"); + + jobconf.setMapperClass(InfiniDoopMapper.class); + jobconf.setNumMapTasks(1); + jobconf.setNumReduceTasks(2); + JobClient client = new JobClient(); + client.setConf(jobconf); + try { + JobClient.runJob(jobconf); + } catch (Exception e) { + e.printStackTrace(); + } + + return 0; +} + +public static void main(String [] args) throws Exception +{ + int ret = ToolRunner.run(new InfiniDBOutputDriver(), args); + System.exit(ret); +} + +} diff --git a/utils/loggingcpp/Doxyfile b/utils/loggingcpp/Doxyfile new file mode 100644 index 000000000..47a9ba2c7 --- /dev/null +++ b/utils/loggingcpp/Doxyfile @@ -0,0 +1,275 @@ +# Doxyfile 1.4.1-KDevelop + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +PROJECT_NAME = loggingcpp.kdevelop +PROJECT_NUMBER = $VERSION$ +OUTPUT_DIRECTORY = +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +USE_WINDOWS_ENCODING = NO +BRIEF_MEMBER_DESC = YES +REPEAT_BRIEF = YES +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the +ALWAYS_DETAILED_SEC = NO +INLINE_INHERITED_MEMB = NO +FULL_PATH_NAMES = YES +STRIP_FROM_PATH = /home/dhill/InfiniDB_MariaDB/build/ +STRIP_FROM_INC_PATH = +SHORT_NAMES = NO +JAVADOC_AUTOBRIEF = NO +MULTILINE_CPP_IS_BRIEF = NO +DETAILS_AT_TOP = NO +INHERIT_DOCS = YES +DISTRIBUTE_GROUP_DOC = NO +TAB_SIZE = 8 +ALIASES = +OPTIMIZE_OUTPUT_FOR_C = NO +OPTIMIZE_OUTPUT_JAVA = NO +SUBGROUPING = YES +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- +EXTRACT_ALL = NO +EXTRACT_PRIVATE = NO +EXTRACT_STATIC = NO +EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_METHODS = NO +HIDE_UNDOC_MEMBERS = NO +HIDE_UNDOC_CLASSES = NO +HIDE_FRIEND_COMPOUNDS = NO +HIDE_IN_BODY_DOCS = NO +INTERNAL_DOCS = NO +CASE_SENSE_NAMES = YES +HIDE_SCOPE_NAMES = NO +SHOW_INCLUDE_FILES = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = YES +SORT_BRIEF_DOCS = NO +SORT_BY_SCOPE_NAME = NO +GENERATE_TODOLIST = YES +GENERATE_TESTLIST = YES +GENERATE_BUGLIST = YES +GENERATE_DEPRECATEDLIST= YES +ENABLED_SECTIONS = +MAX_INITIALIZER_LINES = 30 +SHOW_USED_FILES = YES +SHOW_DIRECTORIES = YES +FILE_VERSION_FILTER = +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES +WARN_NO_PARAMDOC = NO +WARN_FORMAT = "$file:$line: $text" +WARN_LOGFILE = +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- +INPUT = /home/dhill/InfiniDB_MariaDB/utils/loggingcpp +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.idl \ + *.odl \ + *.cs \ + *.php \ + *.php3 \ + *.inc \ + *.m \ + *.mm \ + *.dox \ + *.C \ + *.CC \ + *.C++ \ + *.II \ + *.I++ \ + *.H \ + *.HH \ + *.H++ \ + *.CS \ + *.PHP \ + *.PHP3 \ + *.M \ + *.MM \ + *.C \ + *.H \ + *.tlh \ + *.diff \ + *.patch \ + *.moc \ + *.xpm \ + *.dox +RECURSIVE = yes +EXCLUDE = +EXCLUDE_SYMLINKS = NO +EXCLUDE_PATTERNS = +EXAMPLE_PATH = +EXAMPLE_PATTERNS = * +EXAMPLE_RECURSIVE = NO +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = +FILTER_SOURCE_FILES = NO +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = NO +INLINE_SOURCES = NO +STRIP_CODE_COMMENTS = YES +REFERENCED_BY_RELATION = YES +REFERENCES_RELATION = YES +VERBATIM_HEADERS = YES +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- +ALPHABETICAL_INDEX = NO +COLS_IN_ALPHA_INDEX = 5 +IGNORE_PREFIX = +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = html +HTML_FILE_EXTENSION = .html +HTML_HEADER = +HTML_FOOTER = +HTML_STYLESHEET = +HTML_ALIGN_MEMBERS = YES +GENERATE_HTMLHELP = NO +CHM_FILE = +HHC_LOCATION = +GENERATE_CHI = NO +BINARY_TOC = NO +TOC_EXPAND = NO +DISABLE_INDEX = NO +ENUM_VALUES_PER_LINE = 4 +GENERATE_TREEVIEW = NO +TREEVIEW_WIDTH = 250 +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- +GENERATE_LATEX = YES +LATEX_OUTPUT = latex +LATEX_CMD_NAME = latex +MAKEINDEX_CMD_NAME = makeindex +COMPACT_LATEX = NO +PAPER_TYPE = a4wide +EXTRA_PACKAGES = +LATEX_HEADER = +PDF_HYPERLINKS = NO +USE_PDFLATEX = NO +LATEX_BATCHMODE = NO +LATEX_HIDE_INDICES = NO +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- +GENERATE_RTF = NO +RTF_OUTPUT = rtf +COMPACT_RTF = NO +RTF_HYPERLINKS = NO +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- +GENERATE_MAN = NO +MAN_OUTPUT = man +MAN_EXTENSION = .3 +MAN_LINKS = NO +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- +GENERATE_XML = yes +XML_OUTPUT = xml +XML_SCHEMA = +XML_DTD = +XML_PROGRAMLISTING = YES +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- +GENERATE_AUTOGEN_DEF = NO +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- +GENERATE_PERLMOD = NO +PERLMOD_LATEX = NO +PERLMOD_PRETTY = YES +PERLMOD_MAKEVAR_PREFIX = +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- +ENABLE_PREPROCESSING = YES +MACRO_EXPANSION = NO +EXPAND_ONLY_PREDEF = NO +SEARCH_INCLUDES = YES +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = +PREDEFINED = +EXPAND_AS_DEFINED = +SKIP_FUNCTION_MACROS = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- +TAGFILES = +GENERATE_TAGFILE = loggingcpp.tag +ALLEXTERNALS = NO +EXTERNAL_GROUPS = YES +PERL_PATH = /usr/bin/perl +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- +CLASS_DIAGRAMS = YES +HIDE_UNDOC_RELATIONS = YES +HAVE_DOT = NO +CLASS_GRAPH = YES +COLLABORATION_GRAPH = YES +GROUP_GRAPHS = YES +UML_LOOK = NO +TEMPLATE_RELATIONS = NO +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES +CALL_GRAPH = NO +GRAPHICAL_HIERARCHY = YES +DIRECTORY_GRAPH = YES +DOT_IMAGE_FORMAT = png +DOT_PATH = +DOTFILE_DIRS = +MAX_DOT_GRAPH_WIDTH = 1024 +MAX_DOT_GRAPH_HEIGHT = 1024 +MAX_DOT_GRAPH_DEPTH = 1000 +DOT_TRANSPARENT = NO +DOT_MULTI_TARGETS = NO +GENERATE_LEGEND = YES +DOT_CLEANUP = YES +#--------------------------------------------------------------------------- +# Configuration::additions related to the search engine +#--------------------------------------------------------------------------- +SEARCHENGINE = NO diff --git a/utils/loggingcpp/loggingcpp.kdevelop b/utils/loggingcpp/loggingcpp.kdevelop new file mode 100644 index 000000000..909011bc7 --- /dev/null +++ b/utils/loggingcpp/loggingcpp.kdevelop @@ -0,0 +1,101 @@ + + + + + dhill@srvhill04.calpont.com + $VERSION$ + KDevCustomProject + C++ + + + + + loggingcpp + executable + + + + + + + + + + ada + ada_bugs_gcc + bash + bash_bugs + clanlib + fortran_bugs_gcc + gnome1 + gnustep + gtk + gtk_bugs + haskell + haskell_bugs_ghc + java_bugs_gcc + java_bugs_sun + kde2book + opengl + pascal_bugs_fp + php + php_bugs + perl + perl_bugs + python + python_bugs + qt-kdev3 + ruby + ruby_bugs + sdl + sw + w3c-dom-level2-html + w3c-svg + w3c-uaag10 + wxwidgets_bugs + + + Guide to the Qt Translation Tools + Qt Assistant Manual + Qt Designer Manual + Qt Reference Documentation + qmake User Guide + + + KDE Libraries (Doxygen) + + + + + + + + + + + + + + true + true + true + false + true + true + true + 250 + 400 + 250 + + + + + false + false + + + *.o,*.lo,CVS + false + + + diff --git a/utils/loggingcpp/loggingcpp.kdevelop.filelist b/utils/loggingcpp/loggingcpp.kdevelop.filelist new file mode 100644 index 000000000..7ec0428d2 --- /dev/null +++ b/utils/loggingcpp/loggingcpp.kdevelop.filelist @@ -0,0 +1,23 @@ +# KDevelop Custom Project File List +errorcodes.cpp +errorcodes.h +errorids.h +exceptclasses.h +idberrorinfo.cpp +idberrorinfo.h +logger.cpp +logger.h +loggingid.h +Makefile +Makefile.am +Makefile.in +message.cpp +messageids.h +messagelog.cpp +messagelog.h +messageobj.h +sqllogger.cpp +sqllogger.h +stopwatch.cpp +stopwatch.h +tdriver.cpp diff --git a/utils/loggingcpp/loggingcpp.kdevelop.pcs b/utils/loggingcpp/loggingcpp.kdevelop.pcs new file mode 100644 index 0000000000000000000000000000000000000000..5e5b9955ae2943e9f3cf50497dcc8ce482f88862 GIT binary patch literal 154066 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 literal 0 HcmV?d00001 diff --git a/utils/loggingcpp/loggingcpp.kdevses b/utils/loggingcpp/loggingcpp.kdevses new file mode 100644 index 000000000..c94251478 --- /dev/null +++ b/utils/loggingcpp/loggingcpp.kdevses @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/utils/loggingcpp/tdriver.cpp b/utils/loggingcpp/tdriver.cpp index a90bb2ec4..21f660187 100644 --- a/utils/loggingcpp/tdriver.cpp +++ b/utils/loggingcpp/tdriver.cpp @@ -195,7 +195,7 @@ void m4() //------------------------------------------------------------------------------ // This method is intended to test the messages used to profile db performance. // The method also provides an example on how to use these log messages. -// Test can be verified by viewing /var/log/Calpont/debug.log. +// Test can be verified by viewing /var/log/Columnstore/debug.log. // // Message types are: // diff --git a/utils/prat/getlogs.sh b/utils/prat/getlogs.sh index 1b8ad21f8..f33c0bee2 100644 --- a/utils/prat/getlogs.sh +++ b/utils/prat/getlogs.sh @@ -51,9 +51,9 @@ getlogsremote () getlogslocal () { mkdir -p $CTOOLS/data/$hostdir/logs if [ $date = $currentdate ]; then - cp -r /var/log/Calpont/* /usr/local/MariaDB/Columnstore/tools/data/$hostdir/logs + cp -r /var/log/Columnstore/* /usr/local/MariaDB/Columnstore/tools/data/$hostdir/logs else - find /var/log/Calpont -type f -name "*$date" -exec sh -c 'exec cp -f "$@" '$CTOOLS/data/$hostdir/logs'' find-copy {} + + find /var/log/Columnstore -type f -name "*$date" -exec sh -c 'exec cp -f "$@" '$CTOOLS/data/$hostdir/logs'' find-copy {} + fi } # diff --git a/utils/scenarios/common/sql/load_TestStats.sql b/utils/scenarios/common/sql/load_TestStats.sql index 141e44686..e1478de78 100644 --- a/utils/scenarios/common/sql/load_TestStats.sql +++ b/utils/scenarios/common/sql/load_TestStats.sql @@ -4,7 +4,7 @@ * Author: Joseph Williams * Purpose: Script to load the performance test result from a CSV file. ******************************************************************************/ -LOAD DATA INFILE '/usr/local/Calpont/data/bulk/data/import/TestStats.tbl' +LOAD DATA INFILE '/usr/local/MariaDB/Columnstore/data/bulk/data/import/TestStats.tbl' INTO TABLE TestStats FIELDS TERMINATED BY '|' diff --git a/utils/scenarios/common/sql/load_TestStats.sql~ b/utils/scenarios/common/sql/load_TestStats.sql~ new file mode 100644 index 000000000..141e44686 --- /dev/null +++ b/utils/scenarios/common/sql/load_TestStats.sql~ @@ -0,0 +1,13 @@ +/***************************************************************************** +* Script Name: load_TestQuery.sql +* Date Created: 2008.08.25 +* Author: Joseph Williams +* Purpose: Script to load the performance test result from a CSV file. +******************************************************************************/ +LOAD DATA INFILE '/usr/local/Calpont/data/bulk/data/import/TestStats.tbl' +INTO TABLE TestStats +FIELDS +TERMINATED BY '|' +ENCLOSED BY '"' +LINES TERMINATED BY '\n' +(IterNum,SessNum,SQLSeqNum,SQLIdxNum,MaxMemPct,NumTempFiles,TempFieSpace,PhyIO,CacheIO,BlocksTouched,CasPartBlks,MsgBytesIn,MsgBytesOut,QuerySetupTime); diff --git a/utils/scenarios/common/sql/load_TestSummary.sql b/utils/scenarios/common/sql/load_TestSummary.sql index 642523171..22745ade5 100644 --- a/utils/scenarios/common/sql/load_TestSummary.sql +++ b/utils/scenarios/common/sql/load_TestSummary.sql @@ -4,7 +4,7 @@ * Author: Joseph Williams * Purpose: Script to load the performance test result from a CSV file. ******************************************************************************/ -LOAD DATA INFILE '/usr/local/Calpont/data/bulk/data/import/TestSummary.tbl' +LOAD DATA INFILE '/usr/local/MariaDB/Columnstore/data/bulk/data/import/TestSummary.tbl' INTO TABLE TestSummary FIELDS TERMINATED BY '|' diff --git a/utils/scenarios/common/sql/load_TestSummary.sql~ b/utils/scenarios/common/sql/load_TestSummary.sql~ new file mode 100644 index 000000000..642523171 --- /dev/null +++ b/utils/scenarios/common/sql/load_TestSummary.sql~ @@ -0,0 +1,14 @@ +/***************************************************************************** +* Script Name: load_TestSumamry.sql +* Date Created: 2008.08.25 +* Author: Joseph Williams +* Purpose: Script to load the performance test result from a CSV file. +******************************************************************************/ +LOAD DATA INFILE '/usr/local/Calpont/data/bulk/data/import/TestSummary.tbl' +INTO TABLE TestSummary +FIELDS +TERMINATED BY '|' +ENCLOSED BY '"' +LINES TERMINATED BY '\n' +(TestID,TestRunID,TestRunDesc,ExecServer,StackName,numDM,numUM,numPM,CalpontDB,ScriptFileName,NumIterations,NumSessions,DataVolume,IOType,NumStmts,NumStmtsProcessed,RunCompleted); + \ No newline at end of file diff --git a/utils/scenarios/common/sql/load_TestTime.sql b/utils/scenarios/common/sql/load_TestTime.sql index c1d4e20ba..e2689fdb4 100644 --- a/utils/scenarios/common/sql/load_TestTime.sql +++ b/utils/scenarios/common/sql/load_TestTime.sql @@ -4,7 +4,7 @@ * Author: Joseph Williams * Purpose: Script to load the performance test result from a CSV file. ******************************************************************************/ -LOAD DATA INFILE '/usr/local/Calpont/data/bulk/data/import/TestTime.tbl' +LOAD DATA INFILE '/usr/local/MariaDB/Columnstore/data/bulk/data/import/TestTime.tbl' INTO TABLE TestTime FIELDS TERMINATED BY '|' diff --git a/utils/scenarios/common/sql/load_TestTime.sql~ b/utils/scenarios/common/sql/load_TestTime.sql~ new file mode 100644 index 000000000..c1d4e20ba --- /dev/null +++ b/utils/scenarios/common/sql/load_TestTime.sql~ @@ -0,0 +1,13 @@ +/***************************************************************************** +* Script Name: load_TestTime.sql +* Date Created: 2008.08.25 +* Author: Joseph Williams +* Purpose: Script to load the performance test result from a CSV file. +******************************************************************************/ +LOAD DATA INFILE '/usr/local/Calpont/data/bulk/data/import/TestTime.tbl' +INTO TABLE TestTime +FIELDS +TERMINATED BY '|' +ENCLOSED BY '"' +LINES TERMINATED BY '\n' +(IterNum,SessNum,SQLSeqNum,SQLIdxNum,StartTime,EndTime); diff --git a/utils/scenarios/perf/source/pf/fm/getlogs.sh b/utils/scenarios/perf/source/pf/fm/getlogs.sh index 427da10aa..a34a8cac0 100755 --- a/utils/scenarios/perf/source/pf/fm/getlogs.sh +++ b/utils/scenarios/perf/source/pf/fm/getlogs.sh @@ -28,6 +28,6 @@ then fi # mkdir /tmp/$host/logs -cp -r /var/log/Calpont/* /tmp/$host/logs +cp -r /var/log/Columnstore/* /tmp/$host/logs # # End of script diff --git a/utils/scenarios/perf/source/pf/fm/getsql.orig b/utils/scenarios/perf/source/pf/fm/getsql.orig index 33e1aed09..e0f8e46f4 100755 --- a/utils/scenarios/perf/source/pf/fm/getsql.orig +++ b/utils/scenarios/perf/source/pf/fm/getsql.orig @@ -41,7 +41,7 @@ cmd="/$startdate/,/$enddate/ {print \$0} " echo $cmd > /tmp/$host/sql/cmd.$$ # # execute the command -awk -f /tmp/$host/sql/cmd.$$ /usr/local/Calpont/mysql/db/$host.log > /tmp/$host/sql/temp.log +awk -f /tmp/$host/sql/cmd.$$ /usr/local/MariaDB/Columnstore/mysql/db/$host.log > /tmp/$host/sql/temp.log # exit # diff --git a/utils/scenarios/perf/source/pf/fm/getsql.orig~ b/utils/scenarios/perf/source/pf/fm/getsql.orig~ new file mode 100755 index 000000000..33e1aed09 --- /dev/null +++ b/utils/scenarios/perf/source/pf/fm/getsql.orig~ @@ -0,0 +1,48 @@ +#!/bin/bash +# +#/******************************************************************************* +#* Script Name: getsql.sh +#* Date Created: 2009.02.17 +#* Author: Joseph Wiiliams +#* Purpose: extract lines from log file within time block +#* +#* Parameter: date - A day of month in question (dd) +#* starttime - A start time in (HH:mm) +#* endtime - An end time in (HH:mm) +#* +#******************************************************************************/ +# +#----------------------------------------------------------------------------- +# command line parameters +#----------------------------------------------------------------------------- +date=$1 +starttime=$2 +endtime=$3 +# +host=$(hostname -s) +# +# change date format to match sql log date format +newdate=`date +%y%m$1` +# +# clean up previous data files +if [ -d /tmp/$host/sql ] +then + rm -rf /tmp/$host/sql +fi +mkdir -p /tmp/$host/sql +# +# create the beginning and ending time search variables +startdate="$newdate $2" +enddate="$newdate $3" +cat $host.log | grep $startdate +# +# create the awk command and write it to a temporary run file +cmd="/$startdate/,/$enddate/ {print \$0} " +echo $cmd > /tmp/$host/sql/cmd.$$ +# +# execute the command +awk -f /tmp/$host/sql/cmd.$$ /usr/local/Calpont/mysql/db/$host.log > /tmp/$host/sql/temp.log +# +exit +# +# End of Script diff --git a/utils/testbc/stats.cpp b/utils/testbc/stats.cpp index b0f804b25..a9b5802c9 100644 --- a/utils/testbc/stats.cpp +++ b/utils/testbc/stats.cpp @@ -92,7 +92,7 @@ public: else outName = name; ostringstream oss; - oss << "/var/log/Calpont/trace/" << outName << '.' << sessionID; + oss << "/var/log/Columnstore/trace/" << outName << '.' << sessionID; oFile.reset(new ofstream()); oFile->open(oss.str().c_str(), ios_base::out | ios_base::ate | ios_base::app); } diff --git a/versioning/BRM/Calpont.xml b/versioning/BRM/Calpont.xml index 704a949b6..3fa8dbd62 100644 --- a/versioning/BRM/Calpont.xml +++ b/versioning/BRM/Calpont.xml @@ -251,7 +251,7 @@ 5 3 60 - /usr/local/Calpont/data + /usr/local/MariaDB/Columnstore/data /home/pleblanc/DBRMRoot_test 90 80 @@ -355,7 +355,7 @@ /tmp/oidbitmap 3000 @@ -364,7 +364,7 @@ Commit - /usr/local/Calpont/data/bulk + /usr/local/MariaDB/Columnstore/data/bulk

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 z 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�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

-f6GkXzg1Z^I?yUxrJ*;gw^< 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�!AE&f$!#G&{S1R=J^s{C-n<^8~&g0Fju8Ku~==!Zj@ZR#xE%@up$ zx5Gr&X!ns6?oAFlm)WMGbAURz&3pM^ve}D4KdlD;f97lR1HS*v*T?_2`I;xyorPPq zQK6WQwZ^+sg)YNOOGQ->_;0Bv#Q&78|0!Mn|CO%)kDf44ZCHXtO-~42(?4_>hw6Vx zUKq5+5Cj~BK7vyTL8PF#nv)mqoMe^l)o4^wKucM&$*>D z+qOHlZQC|F9ox2TqhnhgyJK|HaniB1pMEFT-g6zt{zciS7LxVNix`b;XE|dg?v*ag?Bo%?282X$#nj|XZKWkp(|G%5B zv#dh?ZSytDw%O7f>8YM#`9$uq&_&Qzh;f(rK}3HZ1o?b}$C|88d5ctu`QJ4!tK)a1!W%Y!b2H8?Kw?<|AW*KO2kH{54gV@9o)X)M`S)3Ww7sDF_e z5!uD(`ID&noq@^<-A18cmRUaAaFXT1$X${1_PIp2#YgecXMPe^dpNliILUe+7>R9)-2%OYCn`*O%$mlU#2!Qq^5Km16(get1TGTr zTXg&)CutEE=)fP!E`TYz4Dx{K#eO5Ei~|IPd)Kx$gbdLVGc((+qw1I5`fA%UC=kG} zXeT5w(G1?dC`Yb|7HeLJ#5&moB%1rPa_tES+YT&T_Oe-(cd|$Y)3o4-k?}2QI3#O{eJC~ikb^X@Ef#}Es`D{&0}DJWR2Mq zp&ZmxxIn9YaFdLTMHA0NqKr~W18Uyrq^`R$l@ldV{lRLKXoXd@DAX&+)03q(ypiU| z{3^~d7@s^qNH2msoCry&n1_Q|k+s8(33GyeyaHS!-KTG(glYpAH&jWy!|Tu;o;`4^ z;%#LD*^rGg$*Axl3_(wS-|K_Cq!oiB(7tg7BLQ;VPHX~EjRgWvJb{J%<2b+(}srYNgRKv(C<3?UBtOwrGbEY z@J`<5e*1!25~52`U!tTZ{!k*eb|hC0v7y#L6kQfEZf{&fu|FG-E<&$E5MW3t{r#8> z%%IH-=li||WX6&4w0xFVP(nw8cXJ#GZ5YwViTn(RVuTxzgdhYNS7um@B~&turayV% zmoR@;q54;GPVFkTgGKq^LwH#+oM!%^L;Hqgl~VnJZuPB!;z2L;KKnaKft=Ke)*h3q zJ^TlLMZH#&^jqm*IQ$1F_1F_@foSU#9fsQ~+dM-7R7o*~K-m`V8-}A_WIR(~BSlm& zpBmEOuz;PgEtW>1`a_bCN6Unl$y=?+y0(n%c}TgMzYIj1!zn>(bb=RJiO| zu#UP?KFo~=ln2OJySEHOUCiO>g0W_xj&!}afSo<;EG}QLYqMOs>|wp8N87;0(}7Ca zB*irX>?O;S7bC;IsSuVN!G`*effaJlp(K;yK_t9xf|Dn7BHhH!$x%&Gt7O#c))_Nt74 z8_9hd>xf%P_yL5Okjx}ftgxraRsS=Db1I*jWksU|tL}ZtTQuJvZ%Dvv-w>f$ zzfvu59$c*v4woA!=k+;AI90)$uoz6YCpW(s;kcukU`!sGzP+?B;fy#f8<;xhw{qF~ z@6u1rh@de@7v=}`Tz7N#BakY!!Jx^{V)Y_Hm3|W3<`@w0A^eP@Bc@vnT$=envihVr z@6&rmg7U0euQ%00kDDQV7hoT2&x6v>H5K(DVrhHe&)J`XF zuUrQQW8WS(tEp@tNvnxxk{ZPv+h1m%k1t|xFf%F48OajN)8%a|>!i7tuJZG&;>na^ zXV+v>U>{M_V$*q&E!i6{6aUumG?j^~pCQFLin}o%_bq3!(Tp{ zTD-TuE>^|STVm||{<%wPkZ&W$$u_cRXEw3mu^%KZi&kmnv-ahmMK9AQT2&677eOT@ zn(9wbV`H!&|4SM1?+p-Qj_dy@BRX|Opfpc*Szf?@Ryr!{^XO!)FB2CB?~XV1tTi+j zjq!y&e)N5I{~`epzr`X_7{_!Zsv-EgmW?&gX zxeAt+k9vAin;itt4=SR(Mp*^|(5{E@dAWN01Q{l;3F_BZg zjW~f(4Q*?4Or=%i-UEE6%Cd@sLdbb*rHO(@chJA2)_aJre+ZJOz^G-TTH|#n$Al9m z7E|5*p7$>p4Jk$v1DA)#Mq?tUB+qev5mGj5+^~4?o|<9=1q_v-J-VyH-;UBRdx<5-u$z+%4P}BT-9KIDM6LxTQu-d*t~O zxMaLdf%1!+I0t25?1k8u`NVwN`XdlZ_{*IH#I{J(oa6Z|8jrX{m4Vqde&VHX#g zG`RCMqmUb-vYsI<4>R?EFIz=k5ltDL|FPGz;RP-RuI41kmC~Aap5SwUXl`zx8I5wW z64PiKjMC^ut?lXTRKXim-bnMZgtB3nG`Qn@)~BqdzKZC- z6gMluYIJ<-hu^}Flk1aM>55Ox~2`Wk9Dq z;0Z1XVf*E0BL3M59*wqpD9OI?(2A7&7`JG%D_D0;v>zG_72&JlEcyW49U>85Qx026 z$q9+~z6XR1%aT!M6Y~AywNI3|J1$Aibl*NQeQ72pof~n^wUk9B$Q~rUa`V#?Vyw%K z1y|Y5Nyy-ZOv}s5n@EpIJfmsu7IvYDBD~iekr_74*nm-0@Gyx*ucNGCmg$D3ZBTpO z>VtmbEo7#>l;(@Z#Co|kVGBejis1Wg@d)L5fy5~KgqkWZY9h)!hDsEPs7$QiA=Ic+ zPeMFOsh-vm*C2c_DP|LWMI0rQvZ$?ZUoQEcO2u5x(kdk`a)BPG)HR|~(%o}gjNMgY z5Yf~Yvd;A2CdH4%@*vfN(T4(+dA6Q;#!)#2zfN_}07YQ2^FrN{Tps|D{2-U+90R6; zbO88yPBjRB6rY_B!--1mc?Ks;g*`|dd&1keLwRuhf{QPu9AeRj>L*bOp6&!{%^b`& zM203fuAV0BH$=4QYih>*M0@kSaRZmo@$&RLZ)s25;@w^Q{?h4#eODcSn>p=P7wZCc z<%-B>-cII&ZQfaU&w4x2DZItTQT!RN0oTu;3N2agx(;*8Tm80j99uNrK{ZB$7cZZ) z^;>YwJ9!Rl{A5I~G39n_l>Q(j_iMet(@x}91QkXOvvlJQ&W(*s4OGH)z#~t4ONPtA z;_Jbm*n%(_O43566*V^v`hc=+o?B2Hj+ce%n~XOaYvwc1sGY4J8rEyySbin7s|! zdeGKFkjG=hJT4-B+y(W1#m_`+;(NHOg`4(ERrF{kAzJ`0u0~(;YnlXdHN|EOF$bxb zQ3sG#%8U`Bn4fJ?qz_lPsNZ7d$`B$kPg)Rn<5HBdZ`g#p&eCnX)AiK7S3zoLnqM1` zo5Q7TPGRz(o})XlcFQYLRAz*)z?;l`pw(lM@*%vo2n6 zgFV-18TD{s;d^$IucAk<>67^6!V2+T{Td->jQry#Uu`3kUbUGS0sA%+`uHOryjAU` zM^0!`pW=oR@>rjHJQV~B**Ea+Ks!|$A&HM<>I_(VdP&lT!LVQlm{n{XUW}3| z(?E{5GL=NDNux*_)*ef!LB;FeRDHLPuN}9~asX&1&3e1+Kyx(e1pG5!xs>&z%)|Of z4vxz|OIXTFk4tlXNG&L1wz2%%vF7)Yo1|BP%wgTBTVI2PU*?jW@Lf!Q|Dj9bnQDCV zV2Iw!7rJ<-Z>*v8pfk|7TJr1`*Y^P*&VBhb5+oY|J9~mjo4}u@VmS1z+bW4reLuZ1E{H_s3BJ!v#n1Zw6UILR-67-` z+pD2TXMTkM6vL=9qW0O#o^wX$o%xZn2-Y0$sWI-0W)=Hh*~IU!#|)`+6n86A_q?x; zbyIT%y_tvRjEF6@nIj%zmvsuS7)Sd~h0OaBsoI>>-lhGyH+;O8FT^EeBl~n!yBP4$mu@U0AdCT^R-Mf~;ePu zOr~g}zC&?URROohh9(Ky0)KI#v%Zd_F%~Dlb&24@)U1ml@Qiv(`MXTe&hYk58B#o^ zq9{DIn2q%MomC&mu~Pc2KYxzeU_hh?!X|}Qd+c~8b5M#9d3I!a9`RcK$wdYX-gORi zQ3W7;GY)<_(h-J+DdA-J$V&Yl!PZS%B3>;R*=h(Me#1_8PzM?1ov>lux$H^SNmCC> zgp|R3AV1bFx&mp(g2V_qL#;jW7`FXM#K2UL`Dt_o7AyFP)y6oAgzzz6@_8CH!|f1F zwu=($#TCTN5!Zl2WL61v{bg(Ov?lTyL?1OjfXZ^0q&w0l4N&A-L;NQ*BXN%vDR;Es zOf_Li*^sTJu5wfATp{x7%fL<03tzxO-1oV1U-Zj0y+@_)tbMP5J<8h$m}BiMo*#qD zFAk?j?1VowOTew&XJQH!slK}(IHKYo8D%h_jmLN?b%^R!j(z6H#iiC42v)KdOuAO_ zvfId3?x6Ck7x&q2uV@FEi_{eWz8AAQ+tvF_^4*@(q)@RMwS7ClRQ&N(ZkNC^ersWx zHi0+x&8+eue7XSh1x|Q3tw+~j4GHgYId!L3zfxnu0hK={Ycdg!qp0M9Q7qEYEYJPJ zT1+^Dui|xJO3qEkam-K6u~lk! z8$d$-goBS^KtRBUSCS{b0*DBLuTA&+z*`Y3Jwrfh2o}&x!G9L^6BePDU{=JHl9M%Y zN%l3jO9@g5a@pf(7cmtVi%ksmK^3+3$bhE=Fj5Bj|bY=kHTRGSNO=nr~f95Pjon&VI z-d&2eK+o>ce0PhLn!{spK6c>U)uqd#fkb#Jd4(3z9>&pbN50ik2%Xsq%biBZuPzv& zQ9@YT;&0Lt1rZ+zO97>LotrCM@XxJrTaUJd`}@**+Qi>-(yEYMsrogQD4In6R2(_1u-T%*kGn??h;z)@bjZ%uf?%U~a(X zqZBGkZjKj7&g1w<#(fFyn&t;#CU=rJR8Jqcb-WWcl{@J=r1dI?`m`yB_K@Zb5AKe? z5R^Ayx3G6dK^;0N<}x@;9%}a6noHW6tsA^$dLFK+S}9ueJ4~)K5GEdF^h^HXzoS7A z3*IETNq!C^`WY;9JPR49d-KPGLa>H^!O`z_+tsu4H|2bCMK5xPF@sFjAG?$%i9=6I zO$OM(-_FZOlvGV?HmncDry?DwHm~j5SBD9XYWtR{b6xD;+RR42ws>kYN`3-d%PysX zrJB-TQWV*@$-3DuU{|;#!&LeKHF~$yAJvB5p4qO@-pWyWI9O6p_#Nd${K}-d)*S)@ zDb(wvL!oh5W7s%+E%R}E<{bFrGTg8bG$Ecr1tSk=CXaCOqNnyF>+Ce3kI|Jd;uqQ^ zPq)OXteAl@`B4+YYr4}uMtCvBT^kfEgd!Kn{z8$tfNbJETI2sje8!?lE=?=*^~*3C z@(E>!m1?w%j+#+o!yDYM-1a-+J5?jrv4UH28j)FRg`bPvh0ooz^46eVn_DZfeEp|6 zz)bshN@-$^5s#A-c^5=4{IOcd;ii~evxOzcD;Cp?C+kBSf4#Pz;d9l&2k+A-|Btx# z-zTnpOAwX?{fppcTmQRU4y*PrpifsQBO_f!G$H7}_PMZVm^*{-Q8fK&$9=lTYe%T*_0SfLgpiF??AbHIM45IpUXlXD3>DzlPP?MYcTznK3Czt^|`Qw zkwO0HbBX@vJ{R{=RxZ}R_qmS$wa?Wj`F^DTFMY1FgB;Z_NDuKzo+s&13k<6`nilpO zQW?^$B>H12sWpUU3Mw!|k2eN|dpLFb&+24n&nl*69eihTZ|IZiw-}ptV$||A@BiEhgZR_ui3`a};@KPH8lMoSdK7cG@ z!uNznIeC@EHI?8iwmV3T|4;yPjTIn?#swQRtNB?7BSXs&mG4H#VR~i92 z?`=h8)#YndwHGn~`9r_$B=0wX$&3%?M_D?6kc}06Vz+`uR5fqSV&JLR9k9JTtcKd% z3SM-F_6)wCCAB*YvNv@;4wG*Q@QI`b(Mb!O_1I3HAl1FHVpruVa6vp74S;FKCl*Qf zVUa@7oecj3x$@~h5&2M-_EUkEgsWLF+ATD5AYy~ZQHdhi&b)*DUao@M1-i6q8DJTq zT-$-GH_)_@B3g8^%v!(%`06}Ydn?q;Nc_|edg5t@jgu3jF7+v*jKrSU0MC#P7{=XA zIVvSKp)_tF?4(V#XY3KE3tTlb5%ug-7p-57+0Ph$ZU+g1WNO_bL0^8NLc(apV?dh|cw}gB$+(XP+a&+%K!4nwGmt;y$!d;7`EQwp3MR$;k`lPvJKsfj>bWHMkJ$ z9r`>@?Ajk{NtepbQb!4W5BPiyTUpHSBMq6`ktSshe&S)93?e)I7G_|lt zJ?NAc8PKnVo$!pP6xyXpFT||Sl{K|{n)OS zlj;wxEc%vXjnAYxiQ0h#p=6_P*687JI!>BYpI|^d0NY&U``ke|y z+LhekAxFcS0@WIal-Ue83nF*%G0z7U{xxg*lg(s48a+36nA9A$jiwDi$C68ms{(cU z1+4+@8{97coHe#ZLJg|m!F&5sr>CabH!1!r-MwI(ABIQb4N#)E0sd3G>E!tfwA7Dc z_-jNZ5NlBW-y+d+hvTUT3zgXtA=8zVu&mo*;G!)B6C_$`;R$ET8nBSL|16 zR=uX#;Kc3q=}ueKQ!}?$sc}k8NSq!B9{Xul)6m#p*{SBrGs>px4l>-n_Y`M8`z+Mz z^p<<~+GhZNQ}_LME&L_$LvOl9C6@qhUMT}3rbbOYP`CX03&4&UoU7$%INn3kox zkzs!kS8|>cE^KUCYZE>XQzf-wyeN%s38Ji*g|vr41Kg~K!tL5s4e*?O73P=g48$cFCnrL; zHX_h0Bbpj&s#%1Kv93LGwZ+kHiklITvzUW`%nhcHe$-;A5QRo)Xbyjr;iCmxGb)mk zCmQ0}F9-^oLFeMu2=3!P_;kQ^l=A!8orP-;R0uZqE}rxYPV!gfc|EWATcY6-i5x+- zmjnNF#DgB<2XFg}OiC7}@Va);IWC7T-IU(MA0$d2Md1D=_!!fUxJAdc^7s|w(stnM>NCk4Nye9#gP!^g#XZizukow z696x$-ejMp1GIpiHkFI~A?Qr&J1`}h^IJ&)trYD4LRH5D+Y8$qy5f#-tQ&{QR&dn> zc?rdHv;ef3m_yJ-IVt1+2AZhb8kj8vMeVrTih8^g3fl|Poa)mJaYrBx=8m4n{$yWp zD;C@u*wtDj`*=7y zzY#?;vA*a;d;`?}A$ZVd@H|Su<8T6v3oeX_h(N!EQwS94nq5f>VGZ4_awIfiz#T{O zGr)`GtwZJk2=cDXj+jc6DOPNMhXv>i>ZtF{x(>k$Oz;-;kD(Nd{Vd9>u86VT04qSL zJ7q0U4^3Nz!*Cl8K>#%u=^RD%ue3G2!V1m*lieD|2IYud zV0RI&&BJ5Oy1{*ihgi=~uobmZ&I#edQj$j@zN;Y`SQ)K)V!4ryv+Z}4iNYSZ>YFK|&GqB=pjY9<1X?MC>B_gqt01Yo2g#i2L zX4{Q%vV=~Qoya5emk%g*v)Psf6GGCrms+q}P(bKKsWh+RAiw6gSOSs)abJ1~tuKLe zK$F``n3$22O0#XbFYeCNC2HAffa{i$-F$YLduYY2=C2X?p=-o_5_uN(Ty}Hq!f)FC&O0W2K%YhJX10kbn399Ou%1;{$}- zOtALg1uSx-W{i+sXx*TKzq8sRnb3zra0T5I;0^A=SwSnmL;KPHn|Wv(|Htej*s&IfRO{SZG(`{olxJ+2D=AVqkPqf{4b498ifRu;$znK&|~g|(XMzir2^ z1P~9G>%z%C5{LkH0q&lEZAJYA<~^%W<(m1-RBm1JDj z>5&Hg$?G`95{&rSc`2Q)K{-<#I?<<^gllT=kh5jnA z7rb=h=rmET6qp#{GYZbc6R#kZPhiy8;FxKOM!a*zpb!*1H0WvxjOu=%Vu{p%YkBBj zWC;Ly1*L*&W4DW;fe56niJ!np)%YF#OJV@=CXwUu`xpox%dY@y zjx$>UMT}lrh!@C5G!%&rbC>4_v7>#d^{Y<~;UKIKK@yl`Y z1S1#e{a>N3s-@VwMVu?(QV9HoJK*IW{I`smFZ##93GXy-{Lwxahd=4B1^ox}1^?71 zMOMT`+tBDw|3Ii}3v#y>PGjSq5A7HpQjBI>7$Cj)(?{V6Wn$?H5{Kg30L+b{HgCS`I@xhz)7*6g;*7(SdD^YG1mzhl+StcdZ?#@# z=3Tn_9=E*RB+Mg4?KpaKeiYNZd*sBb>pH5b12f~xro)9B%1C)1YgR>g>#^|lUAz~h zHwc6na9pazkXDhqz!PyCh!%A5tE2)&++f`N7;;#aA7Bj_-?hMHF7I59JubBbe&* z%lYKN>J5$^N1w^DCSAr(wb19r92DIg7VTU;&Wqr|abDq((V2y71VZ2w&*Db<1v+oE z)E?E@K2j#hhz8OB8{rW43R@?Sr&C)Xn%t$GbDWJb&2jYM3GR}#t9`y*1k--`=KXFGN1^PwI z@pB3de1l)~ZNr(T6zA;sEts*&6jjs|V0IJzIRlji4OIv0Z*_$dEeLpFKfRR}0#hi* zlvjVSQeuZ%nx#bw3@eUXOQLxlO_K+S4G&_`cq%rsqwfX3(^oGjyBdT1T-%EeU}Wiq zUQ#_+> zJ3=LWqh_I@b3QYLu>?(5CeeFts&fk~S1P>iX*Kq)wsw!8XAq_u=R&yiy9^{Yi{^U8 zdLyyFZHUc4h^BnSEV z2#2z?7Mn}$mdDBJ$j@T8;VOa_8=@4=Xw(G3qA6ec^p~<>IxtfNF}L1BGtK# z)dgyq2hYzaY1<}3Cu$^Z`9E*Q%4WS)BXDw1~idI$V*uy&MfZYj^&*-W-`+}in$)cxSg zVBgrmJ-ws<2_n%Rj0>#9lV|_h4FKEiYk{apUM$zEVQ3UvBPD8l<2wcZfWVf(*lhcS zKcrOJG2vloB!m$LbJ+%b$IBHgzf6kukmx@Ew1Uf}lu3DK8=3mLC1qaD3)3^*j{-ZF z*(dZsE^^*EDUSm2icHT*2$DJ3ETYjT>(?FT-d?RluwW6qKO>w9QvlP;N9+yS!)keA zi7P>14-l{HTU@*iK-#P1VF(X2fJbdG#WK{OtzWP1hRisx5t;5*{^D3V^=6F2cuhAu z+(G7HbD#)lh0=laFXyAXAa9;wsHc7N<$YsvdlUXeL?Pggjg@3e|j&8jJc$sh%?vjgC6-eaB?^%~ zh`@LSg-k5QC?)hv%|K)?DhR?UrN$k8T_>-Ci{Ab{>R>C=bKBjmNdh3m#TU1zdH@hC zf`Bpuuv&*vPnP2-IFd4M+HgFJPFx)|65oP8i6C!Q@L9xz;#$jaBCpDtklyg}`>H$a zMMC})Fe;IzNQP>(^*sLsOx?c)%%(6fU?yjW*F-%mP80!dkn4W~CY@K>YD?EZ`RP^R z$?*Iscu-Kr=Yg29b3Y%wm-hPEf27bKVfDhut?tWE7~bm8Pml+l&qr0iJI*8<(sO8& z2-`V-c~j)QFJ^VBXho17?9eL6`>tPyEpe(g>#wPCO%R5YC^^(z4a7$*qQM%L8G}r^ ze8)=;73k3SI3l`8*ASw%9yT!}vPp*tkdcy5ZM?z6REy6UBT@~?YpRhdDfyq!hUwU$-UG-a$R6xFoQGE&E0n4f5VG6;0?eG{-^VnTIf8O8{ac1QCpeTFJFYPW-sy2?8Y&)D?y#r2Z-wupEhgZ1bhdJ3JVL`$VJF;^(b^ zpSwmdAi&B0+no0>2x!CKEVe2cn8lJ0jei{uedOfy38j6jM$f?O$J%TE@*3$IWBpB~ zLt>c7%URqT=<@hp0L)^s5z65|%Z{fttiF8KUDaY<6T$AJJ-zAYaE`g7_ihxu<_$jT zx_(w(fkpOpMcc|dAM=2>Vrw2+mTOgp@$iCPH8`Im>3IK5VhKq!u8})`{!Lm zdV*QhF;9uLW@)K>b(bFVbKfsq-B+rE9k5r0kMHA=c#S=$a3L7*zXkVwS0V*Ac>gcq zp)@sxiRr{>q!^S4WTho6oa6kgofG{O{9H`p{JdNm>mu_i^CJBeEKnoL4ULU49W9D< zv(j_Z4fD#glQT7S3bXSxtB{n-%EN^+J;%9AX)0gF*VmQSN~V%b-uIGno*I{aC%uvO zz(WE)JEefL-v2-}%IG8i4gmgzXjm72YU#CG2?pg853@867?YmFAc!9~)0$~_x-NI# ziCT%BHnuz{)@Ud@;ZzW7w^u#(a9W#^-pNyPCcFC`P4%#X2QYU!T&fBgpmoX9{% zm2%X1V<$02vG&lGica%KwYLM3(wsFZ8@SZxLJlP-UT3vd<=vwmU1L))`K}>duC-&B zth=PUcgdx1M#o#9^EaSb&+(8ui%-%1&Sxe*JG)Sn@0z;JGtRpBpz#$uLnI*$&N0)w z#L)y1=_l)6w&GKF$4O7%eB5A!DDAe?81W6<+GkJ$kFM1du7FGZE=@&_*_ z?qWHMoPQ}A5cIZ?P{xZQr`f~K;K6156@K)e8Ex^xvkObYm~}thRsAcjg?cF|q&AW* z;PrXJdKmnZce$XT>Zgp!OqXIO81`fc{JwtSPU{W&C{c)KT#Wp)RKZZ{CwZq9>-Uqd zz6pF1xGw^{KknyTYtJ3S?Nn2_Qr=X+mPV>BANedx;A0N|Rl0*l;HLF&DmVne8mQE{ zd^pgy-&+qdep+4ib#I5cCpWI+@h9n{ycQ@1mME!5D-Q0ju%M6+(y z)2s1S(FZaW=lfnm*^<4=u|%38jxIK*X&AFBm}VXL?+__ryZ8Us1bua#2r<_Gk)Q|3 zmD2xz1^x7byz??LZ0HwOgyG#m@povyAms8w1Vl7xOFL?j@@0{H_xce3 zj#jOXt_Mjgg;{s%drN6A7t%Za+u~;CGN;2m41g@LLY_|mQd13wHY}(~6_OytXMVL3 z6C#|_PbY%ge3NW-c7IUnGbz)N4(RaxQOmV$*MoMEu>$V+n9;GDJaZK=>TSmY#|Ww+ zs67EDPxKL=#yL0Tzx1RW)c1nL=`b44?pL(v-y(j7%Q-@GmGZ)$BVvUoy8(~*WhZbo zj*~;T+N4#oZJ28J8N&nKk~*Iv;72}9gg2!{$rOY)CG*cplo-chMJnp=kPy z@t^S>a;}-dnMi@rgfFKO2aL|8h<)6Z_>+dh{wCFuZ6~BBYSjp(eu{S@u^)wg2AVKo zh&V%B{c)pntsQR+_fw7k67@e*bh*f9nFEo4QLnjB1KP3JAB%}sXZT3l%X{hRHs5iC zuHW~drQb3ATIy11B{`5>(2Kt6#}JYA;Dg+ubI7%lue19+ueW?(R=&7p!|ED*s?xDX z_xgR?2{XZ7ZO9U1hX&n3MxtFwH|4T8AZ3gGH~uNF%Kz zxwi0WhP_`jkN{#CAOf9i){#^phXn+UP_8)qKlDbAlkv{m?a?)Ns6|QAwfA zDu1L`K^4C5ai7MhJfQXS!K(rQp`X%G^gpGbr_1}}EmF}>{lHFYC8)8}YB^0Mn6 z2vg=@YN~v&t%^csjO@QB4UyDP3^F8&=wmB1?Vv2)irsTtF~)uUp|gTjKeSZJq#KXg z8DOBvv^b|(sj<-!x; z%pbe2oL$&gk@=OLV}b!o#w^#-L^|}SGAqMuntF0CP`9`$kN;X9K;}66kNLs>)rMqD zMYRjp4E=xOLXzAlHJJI23&|+Zg@hBE!vKX>^On1h=us{LOVlCb{H z-^w#I2czI_PPP)}kjEy-x-)Wj0s2r_wQkAg7C*F!3R?FzJ`TvhQ56O0Nge_Z%EaD> zBnMDL&xQA(DW!VcgS5!INrviuBS3aNk%xu+h2S+OBT$RY>4r%nP98~>`6P9^UI$wE z04!ydWXKHswl%-7TDW!}D?YoU;nc`ZNqu{CoMH){uCAM!%N9DeH;?KIhC#zahCBv~FsnLBot7@w*ZPX56 zXTL{#-SYVIKjOguhy(w9;=s56imGx*jtFsL4oSd9`Uo5U(oKoTYUa)XiY4)@Ul?tl z2@p?d(4L7Mh)skABK{iz&V|_+9d$F9swQvS9BO2S&!(#PrT4Uo5Qt9ruh@5varMh$ zD1tUp-2#wKabWG8*qV*4X4QI(-sZgnc5O`fV1!jcm7gPhQk+G}om`2WT~2?8%rXN6 z6jJ~QaQ#%lyC=i=*$7t4s_k+I_zSV#G$84d5p#70@G8SUzd!YX^9lZPCHX9&5VQ>| z*5*()-Ay#xAjHOIDPa@sW<8-WnoVJAO`kV11muxv*x1tzVDQn&W24G5ql!v*?E9k?WtV>qp%9T0!<8keuO$K?TLn zk7Y2c@5LKQ9D=zj0%dSr)gWqvo(4oVL9VqpVP$N(Tz6%v-mb}aO7{|GNc@AJl&0Oa z@}rSuiOXV5Yw*?}@XJ_(R~`ZNsmfPnjscA^Fnn;K`YEv1sWuin46KrwH2_|eW(a5E6N`eUfu{ImRPWwz; z7})oR#f{j-;mm9yE@<-~JCzL07hu&ECzOS-Nn5n9J%NO4TaLVO-TM#gbz5u3+tUXZ zdY0kmIJkE=z0LZQG;WVlV}EX3z<%x;wG#1Z)Bi5r*XEXd(AFs9_GaCvK|Ym5Y-!D4 zn9eNnp1uFmg)`fnxa7t z7Qk(%QW{;kq^Cb_AH8lL$O51z%ZUy2*+?^~i6L_wn2W$2S!{e!^mpXSCwl&IT#-;N zmrsQW+Um!S7bEsAauE1B9w#7Hxu zC}b65`Bqr>1;twlNDV^eN-86s&|a$wNXcBd)%>uL^S$ET8{+=4gDD;f#ey&(h?y&! ztZ0pq0!144hSV5@A0UXLur0i!>>xt-Z$wr6LiHPlvyA3!83iSX_Tpw6p5HD`;SMwY zY!#2hR%3HgZ)H0CSl#%Pl|$;Zi!|Jp=nAh3`zB8^1;h#hxR6px=mt3Y@um7a2$uB#CN~N{*8lwHhS>I9?ZkRP*Y9 z=d$_%4cH+vjrCeq)yMX0Z~b=l9~MQVgW;Sc&rQ`DcG8Rl^i{x5N@D; zB$Gk6&T9bL%Wr(=lA|hfbGLzw?+i&CEAb+ULJ&XBU2QefGxUsPqDMAEMEm~MCmVh$ zfZX-2XW6PgMN>e>2xyL37oev#l>Lod@$pqoCICw)2SYR_J{h3(u9>m-T3b{VK>h*w zq*oatohMVJBF#vZ*!oCl65y+}MWzRR#V5uKe!Yt?=066Fq#){w;l;-VGye#3OzJ-U zDErrNWlfdj5mBFU8}o7qu*Y4zLfVN zMI^DSHIP@xn@k)m5cPPy62bw@J`UUi>-aTd_>$%=U;wOu6$Q5$0e&qCWnx2>3BAJ+ z?+4h$Z4@LSb>IhqjuEs~G}f+f!BF0CI7S}l6IekLA%8Ohy4?t>mzkohXyRCFprp|2 z7~k3m+(~58WY#?*Xp1+Hs8akk1pg7@E+ic=B!pBe&abK*F2BTIU|e^qT5wRBw)z$0 zr{$mnh&kC`qN)%`R2>QRlxE5AF=6;k?lJ}3#0Y}%SWR{>bgkMIWeXumNy_?&b+JFu zIrwP@Fa^4pM+N)9i~13CA?ePa4t{B#Fu;Um($rRr=`)wwn6wVfZCRM1^=~4oMi>7H z-9~ya0j3w{TH(W1ArEn%MV!yu52rQKRld15VN<8ia}KM7chd4ByjK4gcd%t*oZ7L= z_}en<8$%seMrObB>`o;Bo76wsok?g#4o*&)<@tMuEDS;-tweu z8ie@cuj>sTMKKm60V5IB>?X2#ikd=OhM}F&sgmafbk5)*!FBXjY4(!lF9qH z{dG2%RTMDXmzKV)-d{3pDb&)A=-L>y&Yjg9XJnarc&_PkGICOBfD&Pl?n2xK(t|EO zd#JfQDMe3rB32P+e*J^BJud;fB|GRbI{hV9)bRtUmPu%1pi60Tes9x9GL~|xf?=1# zyV*U>(SR2$1@(8^XVCCwkk^bU4KEbnaHlMR`n1AMq<9+yEv}R(ec$;sciVYLLYOLc>Sxxz7P`!jyy%Xl3G;rU6bSGXV5k5n|z(9G3@cuyADwlRP zv28XisfSt5?#1{F z(NC2)hq=|iskh%Zh-N!hGtprP*Y%sLP=9kl)~Np2dI|nc7#EL08CCn8OW;tGkQ1-g zTCgU)Dt-c^4|m%U-L}-?E0>T34|I9ml8owz3quW(EOKzDh!#^y(9fZKL9_)Rbn%}D z>`P7RmJ;_6%ygx!k25~WVHsh8c7BOk-$yESXygiFasy%$6Dw;&uwUUshy%b?3UTyU z%*!6n=jKF~sRW;M`*vn?XDva6JlgXnT5+`413||dxCg{4dj^)C6q*}6y{osQiv&u; zj`9mR_S&~zeh`^xqmd#(zlmduZvP;>G>ytbAg32`_j^tf~v>*I%b!I7mj=kTqrK5wG$r8l6$~{^2BPGzW-$kSSfC_Z% zd#}(yZ(P(0mMJN?$)N1QfR6nc1h`|Lbo=W0z#0!}`+|w`bA4^a8}(HaSAK__bX^>siH(8a=X}`()T%`qDu9%zm(n$iGVxy z1Q!O|&4Uk_@?6{{K2LXy4^MXtrF|sdvGnxxY<=hag+wCtHpewh@EwCKtCi^5iPlle z09P)gl_Vs}$VC9$vDZA5!*5C-b9j+T<|%$*xdI%X!uGQatD3etH!HPLvtTym3O_OE z;&W}ilk5QLz?T_-->biO>_4o%c=dE+HzC)A!MmipMtV*xK}2joon7+*K3g+{Sw6M0 z?3pB$YHCG&eT}YEmuYU`o9~P(e0Ed)lDkxFd|b!gz=a(PQY`J2mb)9wiGtxA`9l*Y zO)zv~Ij*06QgyiMpBMI4eB@0l&EX1cdTR+=>LJhDm|g1DqU+CJMltLJJ8hb$&7ySd zG3-N!RNMJ3#vjc+5XbJ|f{u%>&w&fOv-g)ZGR0q2vF7jB8s^|gr>etz;7vC0GbhDy zThQ5(>MyS%(~iCpoFce;Bmd|k8ZkovHaZB`b0P>BM9(KIpqqsuhPe0TeT`i|mG&^WK^Q8R-TB|mI3wu@% zj6X?5jfvNu-gdf~(g%@rh?WY=MstN66UbwJuT9N`kFZT@TLVan&#a+mo-XW%`ag$# zwL6Nd?qXKu=3U?V=NneFg5WQbU!d>*8KwJY#ud!cg?Byu zCzftDr&4z*_=;5`O#rON;?Ejj=%v;Y09UNlu+DL)6HWA2+;%!bx#5YzQm^BHD;C1m z0(^tLiJU1RaK+LYjdt;)oxMCRtS1gl5$XZ(9iWSy{F)$Y} zM**;OkD+Un-6ejrbZg1O{lP5VR0$x~v>u>-V9VEB$gk;LD8S4RS+ zqofa_L*jnNCMzEd!72xr1F<67mRm36rS@;9+6#;9~ zpHkPimjR%Z@n?q|zl0`a>kdIe>}8WVlK>&ms0X8CiVDI_VK9g%AeFHnxCGzeA6ag1 zk9lzkNdwPVu8KeSAU^h(iCtPFxi2Xrd*}L8&%!7B{(78?OD zHM@G288V95MWEY%C%GuA{}N|d8h~R3FPvx~?RbL&@g+`Xn&PD*+P9@pUAz^4Br3~G z($8PG7SQoTY`VVg$72rhxjn3TgGgUGR6fR0xyJHu@@DYiw0&E5n>b9DC1r1Uy}BSs zYnf+u)nD3migxrVY$@bM;oPCweqTTWZ)7UemhL`dC3QPle;zPnl4`#LvuU>*w8!&y+5Zngu?#-Dx#totCdQ%P`R8 z`b5}|xz{Pm36Y9r*WBGX=OV90l;shbX20QxN=Yi1L9GftqL)uy(yDWG5zVn{EW0yU z@rZ8(V7i*RBY(hjrvR9)USs|nTiZa^LQ@PJQ(U_2R{9nV)lfH;s0|^DMtZY#em&-4 zL*T*=JShJ|TQ2dR+j37VU2s{h5-~O;kS2)rk`)C26OzO|U3N}sK*1gVaoHiR;`n{p zLDx4>EFP`^Uv~7R!Iz!1PSPiq?v0af;XCaD9Dt=O!3<{U%AZ3MvzqgQS-M|Tom~^d z0haEEZZd7zUF6B|X64lMaFG%{&~ebqeEKlwch?ML)P=6MY6&wKmtA(@XglP7I@mO% z(dO_E4ZE*0TII`gmoOYQI}&gr^ z-zYkLv%L;53-;}?7cSq&cNv+I`_*i~N!&uqmEWYoJ3_gqH$cnRM%=ig0%m`Y6@b`nmUAko1(cTI~(?nTD)Za^Mxa=AK*5`IatfOLBf)_J)68lj`|v7Tk?!VoGM{hnn2*rtW(+ znzcnNTDC<|Dw;3tF`b5(CZ16Py;e;TjLRlwo2s?_n534PXyidAhH$5&Sj$U>I_~S!!&@f9!w|O=1*J zWJ+Q*P3(~^IBW~s-JmJiuO&V?r3@BgUhjf|e+2jCLQXuLJ?sg)kD(@TR)D@7WD{hw z4_@2JkO{X% z0bXLa5*|?P*n>aRAl(97gS}hPE+k~u(5Qb{K#5K?p`&ENzEJ2xHytY_3K!-^c@u#8 z*#jzHbuFA1py__SJf)bx&{{LWd{%m@l6%f7!iln}&`0TM{W1zFfvzZEKnxBk=kP9s zn{^AeZi!vFrCc56LER>;f1n8r(}nVU!@Qp!J-k~c0wUZf6NS-Lvkn*0Ix6f5^`D~9 zFbU{TuAjVi%6%~IqdiH*d{%UdC#KW?9)g6^)L^LExeBobid&9RcMWT}qTldzJN5b+ zlU|KdU{K;F_X79Ah>5VJnlR>5Ds;Ei8_kZZMnVfEh6s&kyB`CdvK+Y#x(S?x zqLt!;uLKFEX@lBle+aKY7<796$WaYqs`%_Y=aS2-YK4KO*U}rto%2Faw`iE=j88_m z{M6OADY?`U!8^ZqfTuk`egp_vOX&}w609GwCBq{lMJi${S+zp#^>ULf#y1bsY8g+y zC2&>fNQDg`6&#Mwou@oaB3zB07S$)fbbnzJ-QP$~V(d*dwPG>6r%B+r#}m;RpS!Ex zH+`+?o66otTX2wJoLMIQebK3mPK_|^I5<}Q#y6s z4fNjnav8lf(3YdRe8<(tS|GjU@kUH03ZUsa05shP7>9a(b+h4obpbMo;$KL;>E5FY zGc7^lgOv}Q_@A#1MZzbEalhk70%@uswp=608jsBpw zT+Z@C3)hScKC9`FS>0R~{+{?SX2%D9i5#~Kxb6@%-TnNYd(z<*uv{F-^g7!GMe_G` zM|`Uz_&!zs(Kdc(@Lq6S>iaJ8l-<|b=yH#V86Dn&?Jl+WtqSGy+`?Ms%I&Vb_oh>Z zQVANeftjBa*_Ai46(oV{PJTq_T%M$}1+%6aQ952}4DEVUAM?W5JHtr>4TU7M}zddngm`4222gx!FqN`rnSJ?ykF+F)Sp@P5Y>l$@6f(ND+6i)M;hl zH2cvi5Q~rVZKf~DrN%Typ6CG%uO{@3T3L-iiZRvKlz|Lf79CQh7sgDQVrLy{Rd%vc zNta9qxHQmhAG@C|d7(7^vyg~ae-aWO^mf-j1vc+e*uO(1EmV5#ld!*DGc{caOF#mR zR%7N>Yhoc4=Yf2D@Av4@BLNb-CR$9E!W`G=f*=s%8b+6B?W#VFoNLo%zD8lV6NN@4 z^>_1m{NyuW>jPBfARxV{;~d8s8jGsKgdpA#04&`%JY2JIu19XVN3W|k>24;-tvPsBAYgG`$ij9ILBT&A>z zCOhgh2hw{<&Qm8#d3t3{p(ZT`%Y!XB(`go!u}8YGZl1Ii?%t)_hn7-rNiJRM)p?Ps zKNR^wPWHRq{98u+TSolP$%y|gH@qu2h_>GlM5@?o&&2`Bu`erz;n5SgL>vOmJBg*K zbo?pE*o>4%!_ddjMFS1!FmxR7E}Iaqy^ExSnE&eG4|ju+BkL$wr-!{Rgoj=Zojk( zBx@?h2mLnug76BXQ$GZE-)?|0A}jAZiyT&Ko!8$CEuCDWMR#g z-_;Ik75g~7pc%;Iu9?A3onauFbb<3)Fvt0zm0A}M{rRiF3uMlZ_*v1WGGzJxjTw#_ z*K`*88PYgAg6Bwo+MtH?iwPrJFAqAmdkqHKhq-9KGZ~}uZA1sGUMt@Ps~VCx8-Mp9 zi6zLIP9+SX=ENCGp9JghMe_Doe@Z6WLRUJ?H!ccL0A3^?X3#Jd zFvCp<13K7*QfbM4<3(=l-oOYz`%!1L2DInBQefhyp#9D;sSd`A+|hu|@Z$dyGdyF>^mQ4HU3xA&<`OlK+kNFV}HoD-~Ie`+%uM+tMf~7aZi6Q&N*kwVP z#Q|Lg>?1^3`+K%_MC@TQLxZ!fU$icL47Dy5z~2j*->e_LB!dbFBq6cq)j%vb&-q)n z1AYc%zK305hSPUhluCwrtII%)r)400xFE#4O^gE?XBdYK&w?!;ITz#{=;QeB=0~#s zoF5^eng7WPE1d-+^C96uR+82PczVb<2MeaO>G1O~xsH?LsSlsXdPUh56D%;!&vzrE zKw}#XEmAjD5yX)1{9ekOo>GQ883&)rVuF|+5mkk&q|`SPdRIYA$#U`7nzA^ILtE5S zS1S@1HDrul!APP8{xU7(V6ezB{<=7sDPLA9P`h~x1 zuum)6G)c;JNp}nK18DbE8tDS;S%Wc#$fx4IfI*YRPO4l9tenH{kPAt-r9l*^`jGmv z-uL^V1a}C>{*+|W0i?Q7o<(_~3V<1|0ye{E`oLy*3db@DT3I zasQdD`-))9w7U|rKG7h`du{>ScXW-QAm6n46{lZYw-RA%j3F!V0&_JN_`g=|OmT|B zI(JRi=!aZ%&|=`HU=!hpzCLj+z*6(JmfB|~GK|PoT!`>sLxEg&tEZ5y)e+*j2EZnz z3-P_R3!z-_>~163oC$sn3J0=b}fd=;E$MK#O4X_ zhH_j(624G>_MB{lnTJ3~!^d>)C;k;{Py5g8!5Y^=YN+pzB)s== zwr&pILKhE{<8I7E3(1zFr8v-0Xx3PZ_E#y%WUC-+9r59!nMc*4!j5+zGILKRV*e7@ z1>_QRt2p$&O}FIN^N`~n@jbt9!o|{XNog#zg)7S zx+irCR*Sarzn#C<+L?>bfm0HX)%&p1l`>uf?2#1v#mf4&aH*Mu>LB#K4jk>O+^20SnbaAXGir{dYLja{i)o{ zm5*evdJoiM_Ckx?Gh!5U2<=`~n_E!g#IWhXmOj30s}vxSpJA!ek59fRLwp3mDx;MB zvtGjd2fdW9CVdcaEnC#_$w_j*j#;%ZN+{0~Z5{P%)#FAT7b}+q;Pfz1_ix?6vgq4D;xW?#(!(YHksh9Fb_XxI{F}0>@Zp{&{g5Ii(9vV4Wbb$3!WSSit5J0xm-zo$~umKAFP8 z7bZt=+K3FBh~=MKBFN&6%*?`W?#*1`K}M6B$yMduH7}Xbp*%CA2iNppEW71JjqFVm zmLVPrRWo_al3i%iP*rX-27))}{UeSHO+y1xobGsE3Iu z>@a>tsInUF`0S(~GK))ZGhEah+6!$kPP|wZmxJuXkqhqXg=@9#|D;|5R_0aE-+R~@ z>aByBj4~o61^So?@ubKU)crwzJw?ohM5+2ywkF@Z8HxGLp9_1O0D?&YnNIN!Dr5Tx zay~7JQpJnl^Q(Gi74P}D`SjI0-}ARCl)%7HOXXLQeh7m>cj9+#|l zneT}2oW%Gt_`ZSl47Ny5r3qZzQMi{L{^+>c1wMXN$wzBP7-iR$JP0 zrcm5qNwG|e^;2?ZL!mSIZ?wPnXXHYNnwj7^J;Y000cnYSSMyD6lgpl}H(_XY?U#1Ko$>yjU9YYf#XYJpA>@ac?+`r8Ul~H4W*B)_BA1T$E)4 za=wX`legD``{G(Lfr(43B%c$R{e;KeO8E<%1`VlJ-kpxs2)mxjkRc^J4z4ATHhD@B|vy;!eB+4&ST`l4Uift9cKobSsLGRMYd z%p141E?doriVim0UUgl_u-W4KXtEynA@_`Lw>@j$q%-+Hc9~FVa{q5|nU4Q2cA0*d zyHEZ1`Qhh|;_L6V*|ph+*p`nfw4@jo>4DZ;7)MPdOkW9~!PlVNfBH}>`!%d=!3-cpQu5xq-siEtKkfOy( zT-bn`2Q|*`F_oEe<*(ESS3ZpN=|LDkE^K8~i0vcQ999@fci{!_p8aBl@)=MG{DmWG zeIlBh^iKie%%=cx<$cLoxmYHB=YiO261TnD_gip+82cX*#FS47;s;%%CD;XGgcH^Y zG>nKtD0-0gEom6??MMRa#wQo?>c7>@o_HNev04k2-2~EUAb%A#I2`M;0 zoQ?eyAf9^)5YJ=W8|=e1A6rT!zHKuo?fOPhuQVGN~lKFyeA3P++wC4`ui;OEs+!H=s_H%6O=7Ne+T6da?;hW&A_sx=mw z`*+hC$OT`Hs7uG_Wbm}ChOadd?XgttXw* z)t^&1TeXX2^$&bht7RdU%*tTv3D_B(i^XSqjez<=co&xa4w6vp58Z?zG~;bL=Z1e} z+tYp?bNDi$EfvsB8*cssqeKbq6~Rhw6tUMdFb~ZHy+fSgeeOIaFFE&vOh;vdHJCHw zPBZgW&EVTImiyO9Z5;YnCejDSDL25IjXew34_<$6HnL!MpxqWe+BktX8(}mfN66iZ zuu6mOkH0>Q%=s0b9fx>SmVLum0X7>c?s)~ie9j5e&o%>?jG{0etRXpJEZJrbB4|pF z!buN|d^&cr?rQZ2p_Z?P)LWZMIdUvzM&eP?z z#Z95SFR)S@a(0qG>UMT|71C$i*YQR$!O}pPOiAH=<>bwff?6v>QrYci(F6MB{&E9IFjU(KC7`z*sq9KfwFs9XWLdmUv`kE@EvXtOEJ4OnG*8I-lLu z5hm!g3di&k$G&HqD_8dwjHidx5wW7KbhVS5(+{Mki|bvPXL#WT?;LZhVSyYm8eYmw zlngT)kRwKYbE-4G_WZf=k}cxAVe51iiRZnaxeww3>Pna=Cd)Y6#k6~O^a7~TUd-## zVsD)zH#zt74IcG2>@*dr%sc|9`kFRGQblPCi|`UR&5^k$w-w41`VH(xOgzUey=c7q zs0((b)%-VQezY`}6JKo8@BKWBJ<_)_+(LfOIU0?4XY9U@{;;=2dMnkp6mYXIcV!KA z`{q{Dz~MsPaYat(06L}#$w`S!)nzrHmXcR`H7FG`XVQdBjO{x-ng!g=i=P&%S#yX- zcm$S#Kcr8jlNHl&eg}yoRNS5wMz8G}45xiHxgEgwAl%r2*w8VWj#cR~&}ungm8U`t zzG1!5YB+#TDc=91*cR=s{=Q;{c?IsHlB+g5*2-?a`!@h zQKpySz*HBS5wZuBc(0-B8KFUB{AD9>PK9} z>NDw)JRxwA^6MGOz0k~lj2~mtms~z|@OoGJfzs9L9gjrN0?*jUD`HDMuBg-ShYx~# zT3KCP-6zRJ8b!;whwmWWy3Y?=xi&YKJIS~bgoIS-anD?_UxsX@PoUnhXVlYm4~|*K zer>v&K+5~FQOUsBv(q(G^~oT4!KJQb)zH^XHilvV%N7;({OOZY(L zxBX(si26@kU3>ToYwQWm{h^f33s0yHjeCj=)df>48=JpK9g#oBGV3@nehrR{jS8&_ zI2{Lr(EGpHtdKyos^igy`&B9+QUqMbb{V?SAm>3F;7;Xky_d|ay7jqCig4fC(@QsL6h&32Z3Rr4>bx>W%tG`SZx6oV699JxGtpn{Piezhmz*ypJME-H;}H zEO}xUK=So*0DCtg#1c=;0yKbG;Eq*gSEt#l5LX$l)Oqf70zWPzDi2C{rh@)cVN~Wc z9lUo_!68GdVu)$U^MMnpMuc{p8Z89}Aa!iI1qZN_kpCRqY>rzRL;fbQIh)R>B+j-z z_nZ(Qb?85lI%sIZ7hyy~S+l#Bk~(DVvqF5EE2&JUgN8`}P{+egfg`gI%zZ=!seWN? zfm#J`vS+5bA{bd9R?kXb}x+!Hi|vwFowM)6wsp<1CDj#-FipG*{(AMawt4`Y9^ z--ZF4vv9!YtP6-Qf#l$GRyFvX#j1w|kaB&2bCz03{R(i-`a3E2BQ9KP(628opT&6c zSf{=*c@$gsZQPayUX0KH_uObErv@9^k5Eh$`gG-tI`TAei3neRA{x}}rvvPE96v`TV~4~L=#L9HO@=VlsP7?Wl33P^Bsfk2uDW!olz*LC zm1gqX6CT1yG`E^xC8HvH!ENp@3`O{U0JYIP?`&$ED4!L*e^5pFs4cOUa3PpD!Upf| zDw&7sVCngJn|HeT1ojoaO1WF7e$G@V|FH#9j%HZ0OncKg+>VI7U!>EeA8`#=FGb^I zYvpbmZb#7DFA8V=^Dwuwvm7c|BDH)kQF895S-l4J)0DW$ijazPxSVU4ZFXI!s`h*= zUd|V;P(z(?Sxz~lZ4;fYQC;`UN+Y{VZn+QS)rpHb-nMKv^6t4QP_12y*H(_TVBB)f#MS!Grhx7J)hR`=*c zbuRXk^N^1eQ|ivfjcfVv@n*J{2b27{Wnq1mRstJR&nn$m(#K{8F1hV(+Fey$ToskK z4pT!>pY&)<-HGb?+uylHInu_~_T}Bd%x(Tm%y+8IENCie= zasu65Cd1$4`QzKS_J?D(_LW?UJA3eCGdAWy)g!r*NM-YC7(;qt$4d^ZZ+)?Nr)m7V zAzqW!J-xyw zV(<9mg*H1WP3dX44hqq%pgU8QWOw#FitEKZCyO)IiaB7hTHm&kY)sgPY&uu2!eZ~tF^8t3(0VcXR2XHYHh!-Mn z6uy@J>O#9%bDslWc=VjGrLaYd&BkqQ(U}e1M>P$o)mlXqg;sz`R%OV(^kNs(6@Pg$#Yet51Ex5{Z&Ta^RH5;lU(YP)XG-RK=oRk2OmRwLywq1xhbtU{`^1=_ zaSp%~Cx$CtJQw7W?lp?5VhlZ35T%AmF=2Q)PSs7kMg~DMinB+;24R@Z?kX^jK;vedj+J3F9pzr+N{lrG)9N=nZ}{&qUS~F z84YE?74cg7zJYV{mr)e`1G1ox4@@$rt(q$Dq%r-Vyg#Z37F7RL5r@r-+sSQ~21Yk@ z!kyvQy9j=dZUhg?A)l}DORhlYBDGrOXhB-SI8Wvv&I>u0+K&uGi3#beAr`cQMv#Tw zu)QJ7p{kBCCmM-qN({eK!5%{iexKTcq?*71MmNg9qZ?KY0p(&XC9l_-F$aAj5ZfW^ z61-c1)UhlSANCKQ!qWpWx(HZnC_WphRNHwqL`mC4SX+oAR2<}M&yd@?PQ_eB3Nkw= zAF{-2k`S|Kak5?Ya9A5Ci3a0v$185)@TGc`P5-N4B-kGe0X_Yl=o8!3ac%*qp){f& z!Ja#mAW6|}LqKbV_H(pD3k&c_#|g;XZZb*#bNmZuY5XSf+^cHMch^*HMzCbxQRz<| z@ORtmO9mLrM%0f`C)l+vF(y8#${$7`3YmAq`g2m~n?yXDspq)H%3V<%qdhf4e4JTR z3IJ?z*afo@VJ#z_uabQJKN4aATi(^`WT*AUR8$mdIE4ZAj2-?a?=#R5UkE8Qf7iy0 zZcy}ToWM^$q2b+EMkIA-;e6pP~aPn-j5B=0;u0N9)E|OQ`8ekO~;?fdQY}E zD^z{LlP!*u!{rVOoOoDMM-2;4FoGJ-M+%>(%CDE>{5bk{&B)5KkuPSZNFt;z^VY9M z@-;G%f!w@*Sae-_1o;SK)_MH=rqtkVRo#GR^4iY)r4;f?L5;f<`P z;SKZ-QAU?gj#srK+DjEIFBh@E!yC#qGz=GN)xhuus(ldrG~kUVfxU6xJ--8Mus0rv zvyKUP|0X#6gQ7hA-ILcAEBmS2+-uV1W(BHiAgx}scZ(IdwmZ-W}bI*5>3;8aHM+9xKb_$!`$2^ey||qi(~QU};;bA8#33 zT5Vo;k}A`eGn z%V|gq5+RT!J`Gh@YpxN^VA6O16l5) z#{7evAT@PE=iU2n$y#!12j=mUMqOWXj>cjOaYVK`T7N#?@1URo8|ik|swuMk8esPA z5w%40DQ?d!k@2yk=+3u-lUw{bFVG57VAKzm76kf4YH9ex1mR(U{H3&RR9h+aZGTqS zh^j{a6NJ$i+7`c}w<2iQx?)86Vo&nLj!^1LDlogThJ#AdDk9pPRZboo2% znsTP}(iyy=(9cloUL@+XxvD62upncI z96qeinS;`}Vrz`N(d?tgkqwsNT2;ln^g1Ah5ou5OGscvrJ0z2(4_Kzu*QwckLDxbu z8tf5a=Jd>`Q%*_{@2(*+jOv%DBGovO%F=9oddt4@zYvd{+|8tr!^`z0d?1`@2wGb( zv}a`BAA>XHc!6eQ4!=d4ci*9=w<`?N9GOyljzirdf$Gt7|H*F9mDpp1q*}kFc(FBm zWU(p7cK(^*`j(GHON!dzL2B&s!B%Jmc&*U=llGweK&@jeaotA+y(`ZKMT+TE;v;ju z#YIl3pRotaE?lukxYArfwknp|ym}p$o0{_SJPTI0FghnBU(c2T-?Qn8?$IbZb&liR z1zQL<1wO(Bq|v%PsV1fFr>(-_Qxkh?hpz=x|Ani?@h@Dhl6=}&YUF|-R(CC#-nA`O zw&S)hKiftC)s&)S(3Eb_V{YehHI8FX^<6|4;E^mE=C}-|fpQJtmrRs{NolMFA{Wi(-`i-XV& z9h`v@ofOS!zKgu?a~kOcF=L53jFum~);z;1x94oTL;UJ#d z&Y*htpb>vPd-bd&Of&bG$|mDwADS=7?VJ0Xe=)|R{{yVmPXWCZ*!!&Jb@l6Hqv%72 zYQPvDTj#*XAKeZ{A7zYx-c5rrM8TXuqt!v@W#z+au%i^JQ=fP= z?%RI)7`ACG&%lG=s|>lWpQ%B{zePt-exn4cQ-}XkO|7ce^fP1eeMB5Q@b_(g}2 z9{!uG)prwT{QNJn*0AVr*(3#)O{^g9xOq|PVMAF!Hr+YBii`u3wR)nJ;z8OsTJh^1 zEP0f1V6v9N@2$cQzqblWB*|`bKY?YF$CGRl_$`}4pJWrY*fBO9VpY&)>>Uf1|b7|3Yh_|3+&?A%f9b8*s{9 zS^>O?ao+;k=`7ZYx^I!6*jl+ZYbh1GQ#M|50fQs}XDfI4Lm-49!i8@Ij4gx>;*C4p zZdiQpF=OlMnkX>Zf-(;qYSV|lb!fql-eg8J2yujfhrFZ(ssG|NzPZ!ffR|WUHzt|N zwP?^PkUcJfdy-9(Xh#+f!s9w#`iH$_E)R-|cTQv*8CnM|;%HK6r#&o@hxWu*Mjp$HzZ|r&x zwT178Sht$uQQ8fwIH#CH&*eXmE zb59=@G!NGUWYg4d+4RfvnI>Z-RcIazgWf(Mn}Q0#);PV%lE)HIzLZ-LDa6%!;gnv@ zBxY0ajgqXvHH3^0kWKdKzh#rblWbCWl1(dSCmOGG`=tZMGX-5s;vclAA$t;yW4hr` zRsx)@6XR@T^i55eFzPfzOrOYFIbgDu3*fY0>lR!Mf#bx8$Gq2q1^3ZaFBU{)h4ibQ zU$s$U;3r~dH#fo>egVb`wS%1dl&vQ&i65_)N>WQ!n(BsDP%@8z@+G%T6ll-&zL z`eJ}_?PL42RoMJlPp#jMhKvu`D&*?JEr8pC`TJHOOpOL<*;g=ID=t^>5@wwnU~83C zbdhhW`w$>^zZ~Q3)h3OyhX&YM!CiP0=zp-aBIZi>nR?ontKEpMNbF4A5D!JX;l+tM zpt?s}A@&v>ubt`Ev8w3581nV->%fBBm!q<}KGo3zK>O149D|gf7Q9th|0J1a4-v9L z=5@?l0mx3aW3QMuj^+l}8zH9x#A`X*(ViD)7 zG#tDY%oZt;sWM15a~d{?QDAy*Vk3p;@CJ{HYwmjq943mEY$ozj4Y{(($~_ zC^uNP<+EIel7*7LDW9I$CezW zW}bciZMrIwwhf{(aPGCSzQ?y@E$iO%v{58`5@-|y>wXFPhV}Qt>T|ZAA(tRe6W?Fy z9`>4KlINU*8pWAU)p{$-3UsU3l2Pp8dK+O&%ETUm-~q)Xgk+D`OEp7ZG7KoD^5HWk z*>>qZifoAo!qfJw;}StU2u<-(%YixW1~`5>GuWylD1(X*YZZnNmxO>~${Isc?~qKB zK0tX=Os=5oMWq=)F_p+ZDJIB5uwqjGfzel*Caa^+C}=$SL?Y(@#T~o{xvA7+_+hEx z*zghQB}{0W2OCTOE(JHthb76+kByE<*>IivI%Tr-L2ul4C4Sgn177=-EDO%G}Il$_;+65xbSE{xG zBV_H6yi|5%A;XIYkg)?@I9M{(fF)CZhuao3tTZN{qF`bJ66W#=n?)`oFE7mp8%eyf z$zT;(1>zaM?nzlVI7tY79tUb8auVmRmMLgtgCA#SE4Mz!`l66x+QI^-WqBCGk`Nqg z?lBmB?nx@=QM?Hw_gV62d&WD$oBMWzH$#LHk5 zvHi>1o8Ktn^Cay8h3~vuxUXr7Qo}>11DZ!A51%hXx}!N0h7wSh_bPcjW38_oSN$Yd zKzdDb+J(Gncb+#FM1j)zY&%;%@eda9A=*^nVbC*-Sb#-rM4N{l6E5qnz>Ry6f5GS_ zo0T~8)uKjLY=PVDsCnmGbZ0ry%P~fw7c-yg0^2L`02cA!sJS)vn6Wt0l24=Snq}+} zEK0>bY(Mtb%lUf!5rhUeWTy8@KuG8(@)tLS@@-FFk!o)rH2I>vWRXWa-W_-PC#UHj z*WHuetCmN7t=n*3x`%F{oBK~^q5FA z#RaUvLy=Y8)t}k*vspgCFTX*@+jGAnc=9oF%-mgJ*ojxP!L=@^?#E3{7HeaU6B>p< zmbgn{BzR-}lU2BgP=9|`(C;j9!p7Q#yMfkrHUH+RM!$XRkaR((9CPoU060rbk?Y?? zNk=Q+$wwD$_&ZCC^^_%^0J6lCNx!qijo>V??gq8=BNPz;u11YfTveOqT`6^HlFXtP+~mNy z@(SCllT%_zLFm(UX31FNaJ*vjsYoLO;;_LMkaI%Iwg*h^4**82M`0Gmy3=uXiaGHT zfDv1ecXGC|R0gs^+N|CFA(_+x)-4(++j&ne2V=LaBHVdwMKEB{WwDbdS0BLDNFZEX z9StnvB3!~hhK?R+Hbazi6__)-lD5FaKPCOUc7*$$<fVuuuz#N~hkqEf}%bgT#D{S9E zu+dZmHk$M~edz*c%c`-qo4Dbfzs!VEj|ncb231K}zArvs@byz@d|>YYsHp~alFl7#F;9ZR#t3p1{% z*9t%xq99lYMHGv(|Lv8qSj*vpY@ z=w>Gz2kO=+xD>_fBd;-B-`Yq-Z&ib&RY;wC@LM5JsLIej#F?gKL}xR$a~>|Dc*Pm5 zo@%<%eOdVuhF*8dMLs%86pxzRT`Yw0-W^83w}qgq6i5ZapL3Y$`JhYoaG!j<~p;X5R25Q*cQ^+4DJJ8gyj35XIkP zjymwM|7Dhbp{4UiKXFZ-hZeuYfi9`0KlGROCst850zLdVElnu^PTH3kapQ<*^{b@0 zsJZMD$E8D=t;N&2JFf<-0#E;6>+bz9^-t^W+3#iedI_h7GL$Sg_L_g~Qqn81$#F}r zzSq}38rCpURHW3vGF0!V{^4hjQ6`5kr%`$qtdy{ z;QE{qk6)Yl{0filk|}KEj!gG`P(#qq+?4!~rkhGa`7{;1PLwMPyZ)6eH8BQphg&w8 zQI?Wo;lxi|px37^h!J^}!*tyHDC~RMu;LzY!|;O_14NW2SIXX$r)in=OS7Nsa_wQ* zh1NFchr45}T;bxb63nk2f{lN4TbHkPr{8xip^j!mHo=|uy(6B3y#hv~Ti18-HnZNj z_9GBFk!>f47VWpfm`Pfrc0g6pwB`b7VuNl9(yypzF+aW*@YnDxuyIa6XQQpf(Py$V z2{P(2`8eR_|L|5I==vU%%uy_jro?e3+^^)*AN4OhVkCe^%x1IU`zMe1AZOKjy0wgK z`d|h4w4=jfZ4?eU3ehV?d)0?ky!Bc@>Xy3~uiu^tY8i9PpR$a(9#pvPnl5}{TK38Y z`g=HZ0@J&|YW35_pMH?1U%pm?!>KJ+i@!IO*gn5ubymo$5XXcVINE*eowJmc3`VYz z`Xt3_<4}YfmrZO(AmnO^RA_SUOE>YHi~u@axOhiSF1wetX*bX7!l%Q@*;x_iy&hpEYQuJi%P-PYF;bZPB!xY+HCe+z7_e1iOkUabf(^Vf09zJDzs?vnXaOw57P!_T9QB&Roc2sMG2PvN<=I(@w$9 zebjYmE4lJD_i!McFovn4c=U`oe=U!9*cqe&&a*`>-bwPi@OPo-T10R(&hX_dWUv|Z zA565#w1XzVIk> z@vK5h_l8{7LdX{P8+x@0>?(x;yGmM5JmRGcooML`xC)q#z0vV;5gq6J?L;E(R^7F6 zuN-~H?W{ziYZt60CZ&-X$D!EnzUms{g#fY_Ojq7dJmSzN9`Rw*!Pw}g<+2^mvhHig zMnd^<$jBMXF>Dq*1rM4@LoBK?Xz*M0cO3EFi&r$@#Xl2r7DU#4C14|qKa`hW;eSOV z{<%^R6EPueVEcCEW<1>sn89Lit33UIu$JCjEq>=zK^_b}b%5))9A6#I-O5-XRsJlZ z!2mhzjE89}7B;daUeBU=-h--{p$d`=EluFNqV#7)Em&&~G*-xQdY$2)p)0p!EMGpP zKfXTkiFx*j*El|ahWs#D@VFm2PGB1)u|^T&$sf$l8(Tv__NEl>lyiCR@MFXcgg*Lv z|AFE)h}H=26i}XX0r`*gw1jmowCw)ea<%wr6+`a&%F-p7!#*ln9J>}7f`i>NU>GqE7)A_j(P-U2QEW0N^czMzniBEmg-FQ~ zZRPZa-%HwoVXcYx(*zSzf|J>V^@Y=R5jiD5v+DSOyNi<|RT(rlnZe(n)oz;OafLmc zL{Poh>=;G2DL{J?TRUL8_ZDX``-ShP>9d}<%1HMiFd2CMFX{tR9ETLzj(60mC`f7ig(62}1#P|<)*6#sXz z;@mq4>B_TxM=?L>$NGpn(ozq>TVWX&GO>n&Um0Q@+Y5I9Lo9Aofc}*sHVQDrq65eP zhS(q(z!2kyF^D~l`oj?05ki6f%@8B|XNDNX1W$WJN>T_hC7UxsZn>!}+hYlki6^}J za$^_vnu)ia3YVLfDP$-mf3gs5G3MR*5nzp%!uh-;?sLzueg9jp%FV=stTmpj z6=t|BrdJVb!>!@qONJCLAY!=}swHx(x9iZU50k!%ScM#}UH=xb{w-qt-xIN{6=f|k z01|PfCr|4wJYPi_G|6G)DsCHfcd3AZgcv$>h~{Ey_pY(_Vov}ec_;B%ND=Y=pw~e3 zf|w&K3dv!&a@q3o>b;_qGW*qjdr1We$huxD<4roquQk?ej}A~i8)_*2F@6nO2q^(i zCg)@s07N|ZcMvg2bAt~6BBl|v4MnljNB8(SKTT9Q-4)IbK`2>i*!&powvXUV6_wop0jMo6h^dhy(|) z`DB=xNO4bb^8w)^)}$|AkP_B-6;++Smc`Q>jXT8E&96;Y5g6~~K7^}P{Oof)QcGMJ z;zd4JOWK~6vgEEL)x!$zlux75bbgRa7#@)u>#L*B%^hCPi^n!@l=^YXXkp)$@W((L z1Q>`5HwyvT;r~R}u_v}yL_-(9`eNra(G997s4j~yi6a56b6UX$8kpSL)^_8w;+Y%` zf`TP4*H&Wo={HtO*HDCI*=XvKw520eCczWHYJs*Q_P9hyq5jn|RfAn8MHed}4Pdnb zB>=3}P4qS-SH`5(^D9;>fA^6bi$=Lgwi!|*Y>y(B#5tRh6}45N5o8%WGgu#L5a^g% zj+QPjtxYIHDu(tE_hJUWTWF)c{wM){8tuLlx2X)=!u>6f%1O%#ErtVd5Fg*Mlb!AdE7$&rQmm&h&#pXx?5U=E%ZiI9 zTB|Vz=DJc&(3ED_DkNOm;?L6O7|Q zkMZaWn;3G%T&gnTR6}%HSyXq#q)X#N0&O^ECp`iaKykZ92)fv&@xqSHqzFAck@@v)Zt$( zQ*D2@5QDy2h{^xSLhSgjEyP9t*+TrgW$N^d{#DpnMG)~BKtYy!Z-g1_Zii253pVEd z${_{?Zs8y0gANH=G@7y>@mFv&B!WGNXIzwDa-`d#1WQ}oxbHu zLyBb&HIPnVdhSDzs#}Ar`?)B0cd=72pJUSAz8#}HKcgLMBuD(9?zV0DSr42?(y52T zZc@!@FX>&r;AVq0Am?N$bo*68@ENXBj%~+8H~M$LOFl+@tA)DpmkTl*<6t(T3#K-e z@A3bxvml6MX4~{}H4E+bN}7QgqK@KlLnm8UKMa|!ZFKd%0nmx$~;T@v%(e*C||HC?UFh2XPLEjC||e)!$+1eAMNdCxP!N{P6WGzduCzL z7L8E8Bk6kE8?4z@sQ_AQI#6jbq}=T2Pt6nzP&4(^zw$QkXshnqh?co&VrScH&D4lO z9jWn7~aVSvi@_8 zfF5e(79oTVKPc4c=&^yf(w_(9*uUUj69l&}RGoM+v?_l*Srdktza>C1+5Rk{r}7QD z6@|#1!W{^Se+&C7BtG#wBpwQc#F5V~zT}NC2V1(}MR?ZrnR|l2N;|X-0 z1scjcnm0i6)Y2G^4ov=DP*}n4!ldcXKOynhk_aZN4`V<`Jd`spZQ}FKGd8@`D(Yo6 z*XLXjT3o$09HrkOah{|SJta;~nmtv_XV4irxQ+i}k&xkgZ8iA~BZmJgj<}2B4R#Qr z@;ACx)#_kv`&=~u(B})jdG35^TO$F$JD(YTz`+)ltok8jXMPMtT{f8Y5I)plzxbg-H$aAy3n;(*nJK_^W}K zePslQBgS|=|27bFy&8z&UJb-?e;J5L|H(j%^lBj16-&UW)cTu&m|~)({o?PN#Mghd zNesFClqqza3%|5f-E&jxj-?oS`*zzuH8x5|CDCfTMtm-Etrc^|vI(FO`%F?dcl?b; z?CV8Zu3}M)b>tz7g@5I;RGMZST3q}k0m`-b-Ekj9SCPz#w z5F5>66ABSUKsqvXa9xj2KYg{6r+yCV{YV84%8 z)aoHJQV(={U9yo$D%bf9NiU|vC|OT<_n=15B@@Q90>PW1F*iuTGEg}v zAvoICb2!<|)O}q}8%c%#tdW7Rr=D5mY~&70BKA5I3~t+Oc!+}4fPi~mm9k?{6XH6i zz(M`&=Ya-6z8#WdKaFkE(04k6@9R4xIC^zZRxGpQpb|^6olyidLOqEKoWEx0HAq8O zu%JOpyW46>6!>1_UIH z*w@MsY8}6O^IJ=m1*Cv<-|phBB2J=&KAd--a!3-=L$6=ttaF}FG}xs%VO3)eIk;C5 zuYY8LF4%ACG>*C)RmffFGTQF6@ED(*#w6e51ChS!LUkUO#$>#@;NTkY)j(39F_s=GZn}PQHE83HT(*i9>(5yomBeYw$|jmM9$_1G zyUGkX!uxcX-Q^{-{p9D>J4G+p+k|^2y56K%{GXO4>-P(xj4B&l2D#+N`vPmbd4b@$ zeidn4am+E4`vI;&|MD0<_}4LP1lj`ckTP6LmbMS#nw&TcsqgnO zy!X#B+yFR+X9}d5{{0vpn|l#2k|(o@^?D4?Ne+dY3VuC?3j)V*Y$sgNH!|vBU(R)v zEPOKajhqE_02cAno9}u%0E-xWKd^I@ms6HMPgUVKjH^aK0=@?NS%S+0+*>>~MTw1^ zat(D{;*~{wNMWB=ktHK712$36Y&rAT#rnR}geyzcC9=fW9MW5d2`5S?HdS$jI;}4N zs|9G-d_9H-JD2YV_e1=33~zirhJSIP`$v5X!)txZ>oNRk6}!;XE#`G+`j;%?PuZJ( zum0ickBP>g51j%3aHP9CA{5qz!+V(RV!P09Bq(vhZX!|NNj@S##6wiM8mLt+1psWn&Q4vEG zWG=_J1kO=#AUhbQ;39H?lY8z*sT=Dl1L}}H?vzAvV06_uh1;n5jHl6lq}$<6@(F&n zayYH{JCSjR?!YyC1T63OH5?#o?O^=8`+W`nP1e%81;|=+@CJ>^)}w3@&F)TpqJ9M| z3*sVobiZN5QPO{4#G$Wbtv@hg%|9^WFLa5-G-YwLDse-Sc}MMmyM|0EF0j~MZ6L86 z09gw;c7>%kkTA5YpBX6V-P8eT=>@LgqS0Bfz)Lq zkh(mc1yYyC^H9eiM~Fb`QY!n#lfe$pO#1sktDwLqav%9MaA0Q|3H}c|llSY+qzCLw z{*2YAIAHU**Ju1=u~k4bug};jvfoJ1Ue4>rgf&j)sf8cP*MP_eHZO2I$oN5mOzJo< z77xM#(NZ-`U>win6!jQ@5r_PS5trnOy~2orjR`#)6Mzx3V*b*1aRs49pI}eAb=1KN z6ae36{AC5S^q$%xJmXUj0HiJOhGA*UBv$=KKf;*5QkThXcNF{`AU~3*UsIQZ_=GdS zG5qM815nM222-h^DUNXFkVlYTH!-4RY?|27K~##_Cn-E0nZR&m4>{32QJsy2nZW*M zXR-jwTmI}!s@Yh-cc#*Bt%$(Rq*VayOf%GNGppr~4m6WnakpAQH*dTUlaqk%8u)@J zYg(gK%&;y1tW|iL(Y+8OCv#p6S^U+?iXz}wX;t8M`xLU%%Ihs0O2;j*Qrsf5>~&*0 zHH2F6bMiZ@m*Ax`FT``M){TWhkPLUxp%1j(d<|U+w^&ef?Da+YdfNOd&pV#L0`{f( z-_1Hh zp)@EgsYHB`>sdCRb!|^vqN#EP%3By7kziOaDDzH!tko`s%D3h6`7R->8NKN>XiHer5YF97Yi;ZF3ojfoxDm=2Sl z8%OP1oK7(`C@TEQWO$YE9#$%!lB-@E{L$00Ce=PU)Tx?rzpELJ3Q$y#i2b&wJ*b*t*j7! zr!y|I@Ggcy;AmZkf+&f%Dr1*{yVo}DE`&`1+pN9bF5W)e=$Qe;+cKIieH~As-t!C^ zE?q*|pkiZQchhl`_y)FpQvzP*pXAqvv8Q14H-Ht$%z<(=^t`SnHqRfzS*BlBtNLLJr($hbE+KryowBQ#K?S5a?a({k( z-1|*GMBnYggb0-QaRAkE$Y~jZ7}QD*QjtIpUdtE7`lOWBZ4-7Ri-a(|^D^O0Oe=X1oiRDXS;Kl!walq=MQ(#nnM3z8RsW3X-usa%=&5UI&wqOAWC?6_c>Ob#M&;3kaGsWBl7H1=M_YR+O+qS3`rw>h+z`XwtpaMU_~E@?5?DONjCf)qrUAEvbLUAdhdmuvAw&HOm9rCuoIs5 zdM0DOeb#rBADsf?VPhm`7y}5cp9H_3TvF>d5!bLNt%HxllfUgLv-&2*LO0#1hZ|ZY zdpF=ks2|~QLou43&?;qgh?ew?S$NR>hBaRB?DEbq(3mzvwYQ+Ha=Fd?GOhX8&cJ*h$ zb4w3C8{3?h?+R!ZL?}K%sW|2wN@nys`9m1S4?}`ycG+&1$)wNuw^zBO$>Cq<;&&?S zNiRR&4W2n?Hhsx;O=n8vwLvi(zSO6I2vzVnRt$JXnqJon1Qsv+h0l8F*eM7_C+ zEeKZ3t=UOk_g^J55$sZT?5%sn*>eg}rilcq^=0pi-AXkknA?@h&sZGGRA3fEDsH|r za5do7!Krd8z?Nz79e_hxI@J+nHarzr+(((a+f3R*B#q{(%S^h+mi{VwhC1yyQv!A! z#UYzX1(bI?x+|3H@GS^%@OiWxXgLPpC9~(KYL-%#`rM=qqWbX>-$~)ILYd4SAiacy zO5o_`C!nKs;Fc7NB~-D>eth7?Tw`fbXU$^W8D3<0#RM@luRs8pAh78O>s52%@lr4y zNJ~Wdy`7W1r7{PDb;62Mz1U(cdb#u7*7N%wI0p~@Yt&i5dFm` z4pbOBzinKGiV&<%ZQA|RDRN#z={!E7{cI4>A zzLyb|YEkr}!eFcZ_8oBL%YYsReZBHk16RJDx9o29ic#L*z+bO?RPa>)gb5=1jR_)s zcM5MYaf!0cd$x&wJNZle(oJg1%`~@8lHc*6RoU8l@g!2L>s)BE;%DqDCWv!)yXyL0 zZ_D9_dZ%lwlANGA#W(gXGh3P?Hw5SIlI=op<6Aieqb1@!kqgNx4AJri-yU0N$+p#w zfW-9LHLF(DJmiUyuXTyN=G7BgQW4p-7f&lxa$obB8gWEeSq+^?Mrw(N;+gmJG?y82 z7xly#5Kab`=)b`A81WDJg3>(}`oAu$ozgwO1F!2>1FIT#%HK8qxo-4*{6}YVjF2cT zJM|Y>&P)vZqUnYfS}rV}1ca6;023tj?%1vEhJWQIiV2jMJ}bjbbsWa{FHDd@+hEb1 zD1Zq{rFI1{LEtU~!ADq$q+p&{F(TsY#;=$l(%2+oFkz@z026df^b_8WtME4_s9g%c z1ko!M*rhwbSD{VP{Fg_*0d2}s;eCG~@H#B`%)u1?4rc=7(Qvt${4POFsF`a0`!g}a zcm7-SwOxWs0uxfLTvQg==&=3(pBP(6KKM6G++G<%FfB2R+fd?&gl zy84Z!TeP*pV3i4t-ID_p`o!TaBoZLd*>|B)5W|^t12DG6&wUV%-fM2^jAnW^cw$o% z$v91zoMf(Wcdnddc$yv)gAnt1%Wl0uZh@FX#e$Sq1cDIMCmGvjf-XzT`GC18TRB}? zLn|Vtm{%L~Hr;|5*skmrwa!~cl5M3aI0U&_Nbn9 zc&4rb>wg~XkGN>CUhHa60i~Z-Ck+-^ucV-dTJpYu_>Tm&!EcDDK&y@`iTf^i%I5jv zoZ(g(%F)Q1d5YDjxHCiyP9TBEYmQClmR~d#aZNudA>i4z#aZuG40XyK3KT|hNA;7t zC~?=tae{Q}&(N|s8Jk;YAQ}a+c7!Vz#D%Fk>>`xzDfH)X@HX}D*rbktV$Y&m1s4>@ z=TSF;;IXA8)nP7lA$AyNvja8b#YFrt0j6_=`wqD-%&QIN5|id>2=^HC7Hv#1m#*MZ zRe3bW5~v#uJ1BT$uMkj4xMBB|PZz6nxFaE|bi5;hTp2q>^7pRb7ZEOatSZLN&ER$h z4@)obLMj?%_^}dq%`~;ktk8I{A)C$g0Www8LR#uVL&JGnCQ5yirDMf! zYDgFSrxe#Vl=3>lt5Yy}wyS#G+M?&Ys3z{<0%_=EZ1;;C1?eRA6{3GhA-ck5h|X)$ zcq`47vMrLGO6BR%<;%nAmapmhtDhP6pHh#F20fRLqw-4KfmeoqEDv^tZG+mYr6p3g zvrjZ+*Qk>dclX?SV*P%NZ~s-}m-J^yF9HEuRRi%g9VH`Bz394}`GM&VdWpA-#6kQd zs5nX(OG@UTz!n=x^NaLJDSNg^*yV)5UD{^C_2H^Dewo9y+r$xD1!|~X^jdpOwe`(j zA?`j6)C8|d+{AW#ZipT!d%pJf0ola^+*d}>4-n{ty8CP#6)JG#!xPlxq8`UM{8@Ps(3>{9tWJaAYAwiW9Cg-h@~;9i{jZFm zDtBmCpF$_GvGNt&s@qtNjC1?dVPn%AC21)$`6`aAo42P>)d~%;=(5Auo#4=kFXgO< zPiTCgNt&iY&INdTF6{L8B9F_)9^T?#@y6snD%F1Hndwe30C_ zaH-JRJOk@*k>&1y#A|jMJp-)G{%e6wC6IVcvk9X}->8kNZa#DCsoSL+H?KA_Xh`du z*GpgK^41cz-2bfNs9i#mDpB9SIV@Y>@1((|^(dXUKKP4Uw)%E+FknQ^XrkJQa;~Y0 zCd=F=Y$VXmM3Or49~ru6VAbyR#CLj`bz&jH8M$Iq{34l%|WoYl5cIlV@WOXJVsWtoYRz z78agUC~s2sggI!F&wM*QJ8yBrbQp5rF)21Ayk$2StH;TPeFysk!HHyr^6=P4%cdk3ss66CZt10@)C@^n|_bmd;VFxsvizkwEqe-oN z*5+<&G5{g?XxX^wgWkpC1*bx{&{Z3ps}9)$_X{^`f@xWLNp-TaTbDI&D8fYEe6-3{ zrlKPA%fSrX*a9iUhi8y>i=!bT+o``idCJX?aM6=wXwIR^@jdLW*}sA~R~JLIj=-Yb zgz(m-MAJ*netYsfeeJIOsn9bP08gF{sa#Xwwocy<%QH{2>tTSA4qjzzO<>4A&KhED zQC0KbP3u0=9;>gOJQBc@xA)tVw|kcG<7`C4Jl^a0+O=?gzG>ynXTPn$0-bcS-=4f& zz>{|Xc=BlU+P6saGyE!~K3V=4Usjwy!`Tl|{rMZ}nf<**Xd-Mo{v%Demi0^U3R0X~ zw>RVvr)kfeOQ{4=LFRxtUD%{SbA1Aqkm~kBr+kK(q`fUmsEJAc?)wZ=p(HB(DaqP4 zZIR{|kb34eBG+0kT7>vJ`WHwr$wGjh0!-_F;c52&1)fG3ZC=bN2Nzn5!d{)~1zdb1 z`ycluq?T13b1*0-S9kXl?~W6l4hX+0H-~jqQL=) zQ%JMUI1Sn=;V_4qf@lO`$?pnPwZcTS0$>o{h&aG0xB9X%b**KXTnK#DxTF;|rK*-l z{bv1xp-W1p@V^XO+8n3;_T)+bpLz1k!o+&X`6zMW?-e}~+ll1{_xI{%$%(DgT3wbd zEX7u*5erQc3BForY6GUp20i31*(qkItev8Izkfuc=Cd~-5ma-C$GRYl8Mh{0vOj3ghcctZmAFv z5M}TS@>nq;(BzsE)^y>(!jrM4QmDfyEykcB5tf4jh_gRvRY1O4^5|bJd6qn_g6_=Y z@f@``cfamCY|Gn6=U&gwgO;=}Ow`cdnL{Cpc#uHrrfIhhGeDQ&ZS;X@9pCAvHMSyh zig~KThYv2O)uoqjH3s`N9qrJ9TsmGneVc(G{TIzs{LSC{e3Y+ zQt0Mcb;0=G>0dfzkcpk|PU7HS@e1NbOz4&Fy2*^N2s=K$8R=Boz_ov7{xhs+Levi( z><-r#r$RbS)A$8_ZMZ2(8vw$V`_K6C>l-u*15?Bs8{{Cro?gS2=_L%r#gib?pMkDR z4#|2-pz9LNbCl%X4Q(HZ7Tb#tbo?sZ%?>}eQ$G}1oMb*qpAbKI_X5NzSpDY(=||e^ z+G~})cHteVMlU}2x*>)Juwu?GhlguA@GqeA->x#j?*qPKT)k;447~v(u;23vL){Gk z!j|J%K-iLEp-VJ-N#(8G9LyyX$1Y?xfOVwEW|BP6V>zwrO7@RJyIMF`w|mEsOTN} z()20#UU=7yzYjG!BcedUJGxWw>>-4ejgcfx+-MmUo3OAJFsFEOjUF-sl~r*;qU49$ z7)wS@giU>v@%r9n4{I}aUv8}>Mr0NBlsv+-27Gfv$nv^)wK+*l`HJ_g`n#CH9C;0J zMC!!O>XH3r94tg(?9n$Y>9*o63i>QtpCoffz{@F%g$1-M5f+*3kj&-tFC|SY+3j>! z*(EyFq`t7Vjdb;ZRc;MLuAydsiFnesC2h+$yalgJ`xxl&2v#Y6pZ5b8!9Q%7A%=5E zA@<$K6D>IQeKwgR7sWXH{Me=%M)28H0#norePY{!XvW@Kb=|R6k3lO8`il@ zvTWxLSzTzAet6`)A%l62Z9x558@4}Z==(Xqk5{d5k90Ws>^fqHBy|d*Q9R;*EJHPM zWTEkxbIWA9l*lG2!7pA70$6AX*#f`zu%~Zg{9Ki=Hlfe>3GJ7k+v4P=CvZbKx`_zsn1&iX?hKiJ)rB-T#+No zMr)RfE`LuJ{TXz$9a`((!}@=#uFw4U>iUOSG^9VnI{4+GWLPX23}((Pd?Yk79t(-* z>8BMZZ5lL#btB4)4bKx#))PDw)LpNki(QypY@RIA&_u*s7d1gjc-UP?$DN?wN6wE| zgM(pSgBZ=-cDaj`gVW4jb#;`wL5nr`QJVXq&{_G2Ex6!p6;wj0{*0RopW3ekth~>x z(d2s)gYp}2qDe$UcCqez7j&dH=wnF|d|iXla)j4eqHtV5{bN@46u(t5ysGQ(#vT7R zb={ahx=OU!Gj2!rhYrbG7uX2>l$_0u{^e6Oby%^ROX_cgZ+O?E9s8f{tdb+0QFEmG zZy+49(Rb4bEPUNb^uXcg7v_4$VIGX=e;9@~BY)C#!J834tLS6i{45WFxq%ktS^4O{ zIdkc@xGeY*n?ufalX^-w+$&KV``(b7Nhgnbrvm{487e%)mu6irTyK=lq4>7>t@|-9 z)%%r{FZg;hVGlGOAz{+HIqs|l7RxfCvNKi#imrfKhNX_-g6#@7VB+Vm{AG{h}8wK+xAA=-p+&Ik&`N#1E(Ja%#Epf2xK59Fl) zARbVv;0&JF72Y?=uTUi>c0W$DU|Ujfl9IH;@g(-~j^1OA&3dNJ;`6>OeELc0?_pj3 zPkttC=@y==LKB(N$W-P-7&hYBesoG#D6{=rJXaG^k2#KGePqJOPLNv?i}zjVp)f^_ zqRoQgX7A>gT}~%Q4bO{82kx!XMxDF_^fA>i zJ6Y~|tbBs#97fIQN2hFr71;1HJn~F4e%PekqUmefyCdQ->_zn|2TzU+>&Ea)#d-I* zhBz(;H7#j#R2Acnmxo^S1Po-XKr<7QNXA}wEF*U`u}rq1R?&oqp`xI*o~HCIW&M<4 z(>tbUs>1&NQCb)LXK7s=+u80vN$dY3fnV}p5ctvl3j#mu-w6Ee690z;{v%$>zgUtZ zLeDMKQhYe$D39Lb&1`ouf24I^GP>`ew`6O(h?kgK23ol+EU@ySl&{kI79g#+cyKVV zz|e^=fX7kaf``j0 zGqW?}!a%jS%u;5+a`fx4i}SIIg<g%ZfcV+$fpOke_ zkz8B%7Ex<>3qbPv97g%m-t2F zm#@_)4|kBKmAPq$7S_Il^6oIOuIh(oyoG*1x<&G^F2aFux#Dk zpv(%<6TpgB1{{_IG;sM5>w;!nv3B93YRm*TzCgJNjG=~%V7>t`hT#&}!^KAtAJ`B- zfXs`Ef+yE?Ezhud5Sr1syP@t%E8QovFVX?k_FqNRW$sD~vV>=bY3|TwWbZ87o)r|A zCm*4cEiP%91UA>4b$ukdIoTGess>7t$Fpe!jP`@5ZRL78dS#XQk*ClZf2>SA5_}VY zn0j-4N;$Tp4~aZ<4C4h~#3|D#dlyiQox{6bH=KOCkkAP}rE@NW&6L-wWgT6F2v!ak zQ50}8CPwOU9LJExN z;KtwbS3_`*(cB<@YwIi z!4}?$|Jfq>p@hz9LOibS_pr_uua*i7>&Nd~O=igutR<{52`dEmi*X_}%MBN2oFj+4 zhqo7EN7Qj-xb@=zX}whPR}Nu0JMJn1Lm}S4w-N5e(;};1tkVws`ZzAe@}|ufYBr0^24jfQ{>>`h zoqH)7FWd=AI%o&1xnq6Ef!pt4{nkt78)qIhPoJ5etr$-~240L0EOmoKX+j4@<9@5o zJ!8AROE*U?Jnhrbd_|8V=paYl7mK1&90}VrNvU-Ca7Lf7sf31@5bfq)>@w8^dkLV| zbmmt=EZK5UgtIGTjOrmf>fc5BAR9Dk76;drge-+j56#j_n0*5=?9-Y_rid-$=d$s#~8*gt~c}9bcjs+my zm*G+$Uh5T89}2y)Bz;vxlj3eUozt@``*~Bt8%?y{wQ zrVB(GnkhJlNaujUMXP=3Nqlx{ODmZIJoF3gZT1&rO0=JQG7b6cvBpHI@Mx)Xj@aar z)xF<>VxCW?(y>f8_6kHl*D8nWVy_X+ghI3ZdrtrVKBu$jw&lF|naWE=;tLhQ^yz)% zbDIr)ox>gr7NlZP(5YBciGGXfD}JGZJK9;|;wbH7XBa|dRw(tgU~e@g1esEJnaH<0 zK}+T3uw-yQp3ci0Tox@qnmK zPha2XhCst3(l|!7e5{0P8itVb*vgs!Lx3i4*INY-^XXA88ZFp5_H!)SNmv$H>>Cqf zbhU8J;^(Ic!B5sdm@eEuG5lDH=d)EhhKsG1);XS7U5>gfdDDklqyug@?U~hiev^o@4D8f=O(> zNQ-ci?G`<^kjXm>1~#st?xPVXa+*g!>FHC7rG3W09dh3z73ID$&URx~;CqxteNlS! z(2bSu8%-Q^oZ&*f?|Gt4CDAZ7e^Ax00ag9&M6}%8e^k|n{;sOqCmwhIzfslwR4|+BF5{!M;o4tKFi06c z$}+=GS>~rBcYb=Z@>0Gg-6?)2-IcSo=Ag3JG1_UzRI7fSCitAm?N_AvAYP}D=;*R} zN_hsi8#*{2J$~p^^IOIuSv`l|RkhT6cKZsYRz`9v;gR`cOWiGlFt$iIBMrZz8N8mc z4Rl9r$^zT17k(Z^op%0%XsNIi`O4x$U@bCV>gwV%k@z8+{Wk)(6IwOhh!x>l(|-3Z zd_Ql?1Dw*ZEN*(`z{H!aSt>riJDCgn8oPCFVeFxaU>mBZH2%2l1f6}^3GmKrN?Bz6 z4s>||e*tT6k?2B|C|61;yiLc(PTuKX{ZAui5cEWBNAvjHEO%7*m`nJ-bYDt8$ldKT zVAE_tIH{6;P>#Aznur=uz%H}!;ZX=afe`(L7$?W}1wvYJ%Ho0Z(IuuA{+LdqgBx$8 zL0j~m`G`+WTQUP{s64+8rsVC)i}yO4RJdn^5F0D281_0Jd<`G$SGlyUCDI>H(7>Sn z^p8OuL8;L4e;m~R$piDMs#A<hy0Vz(oZiQ3U>OLsyFCCHzf&-;f4@iJ+p=Rb_jh zN=*!fU&)e-^Gbb31*q?oKQea(kNk8(^jk&q0dg)R`FO0`oTFBLqC_4AKz$b?FJ!KN z5WfJ!A2H{60jTelN=`0l5eYPl1&d&1y-wj~5(Gs+bY)cl%Wze@p~jupMEPuosauDk7W>S_f&bQlr$lOj^7W%$l&qWkZ&Cek1jB6v z&YZo7Xc@O+9FxfUer)s?*zwriyp4}3IcWv4;7TH*BB$>ywa;+%WW1{Lt(EFO%X*&% zb6S=9srQmaPE@<)TYhOru2nqCk@N&hZ69s?b>nS$HDPv9S1f!J&9C~|H;voM^WYV|j z@y?RtAACYCPWmFn%IIjH_JN>#xDU$1V${elv1;;=h9;;glOHaX)ZPrhoW6czPD7{* zZZ8?h!Y>T=v5&|n{D33;96#HVx+yr8gn^6 zMS9J-FDl=zfpo%8iL+VZHrdk7vl++@V!MCD#R26(0SJZ(g7SgyPr#30+;2g4TVp;E z(cTsXzsrsw!DZhXkZDIT{#m>s&G&Yz_CsfUvTxaK$PA5Br(hz- zE2JmmA3HMb%!qrn1o4G*${XuR{@|RmPK-T${iWjpcYN0u9T$=5GH9lh zp7XoK`+eG66V?Mq*3#XdiDrrz1fZg1E41f!?FYEAyOVJ6ZU?# z;C)mFeiY`9s$Mt9tY;zv$RjPuOavPcjaf+5}c_9@JhadfM14q}{L^(1+;bi@Udd z&V5;84KMQf#2=|?LFrQRNcnLEz3K+y&~s(bW@}FVY#bcOY}lnV!|#2h@oGUnE5;i+ z(k;Y-Z5-uGweMBjnY+G&r>&EJ~( znWkp{)#A#uCP&`RvvSN<{+Oe$w5jHY(I-}cp}fu?lm|(-oYNdadY{$bzA2TT>5HpB z%O9K#cWbi{y8OBupz*d^X2ie}o1sj%DZ7Lp02sQ+me8h3Ojnj`#g;?^Em>?YuPs?u zLzV_-&5rCX^s$ly6RAd5RP1Lm);dlUpIGV8_jVseFRZz#iz?*uN;c>Y)TW-1Dc9?Z zoeC=Wv-F85O4s-Dhtw&Q#&7qhWA0C;EPt686sNIIO9Q}n_BA4*aOirs4DUpFJ9KA^ zft7`ojwM;C3AkLs^u0lRiKr;-H^C7bcGt7T*6gX~lXBf}=HS!A*`7h^-bS(N(tgE8 zMiNJMh9F4Y2SpJoeYBLOflMN2%d3Md?tE$|f19^z6ArMK3F!&=VX0L4fly%OiHk@r@ zE{AVOVUO)geyIG}1nX#~x=6Lm+>Si-7tt=@q+WufkMXRgJ@lch^1;T>(>7fQL}RQk z+rxDFSXibbkI|x|s?2g8@f$&H)ve(T_K2&-WlzYucc=}G2vV?@A8c{Y&Tw&7QYc^- zO+c!4f^pB<+QxN62U5Ui2WajUIFVBwilUm(#|KKsE`rScqt%J4i4AH}f<(qcht}Vc zb5to~VUyTHv>MqHqVa;55uR4Db9z2O=D`PS2kw`RNDNElm9;7z~{EA(Cy@Ac@ymx)%K}Qc=C@a-}OcaD$5BgZcjCP z?7z!4rlAFutqmot%3U0;&kckr*)5E6@F_A?_v?tVvRA!Yh8r_QB_aaz#x|!`<9063 zx(E3lpG!MN0R-mMFnp}nwI+pRv}WYVez*&d>O$Z1xAa|UoRoul<6YSc^B0>5pM6rM zIw+3z<4?{V5cJVu!)_x8u=e8DSgJu0Ac=yedmy%j<>v?G`K8#M@_@W5)U5OIoMtsb zH8OOwfHs%(h@_xo)*ll=O&fJuyAbDaR$(Dx^NjV^O==oVlY6i8Xz@A+y*}I64}6%9 z5Iq^OJ{sUmLmg0@VSUS#ji;7weD;Qv*En zpk`>+cyJgiR);CMuIh#+v;xx=_>Hp<ca6@mhP%c~iM3Vg;#lI>DB;b&o zkl#Yuv>RpIdZc=5WUQ(46}mvkngG8_c7qu+I_l5;9V9lCsjHe#zP(SPUJ` zLyJ~0`oEOpKAj$;Za|ZU~gVM)LQD8MSVKMt8qE==}7X)@J=<2iBU95W11wbOA|d0Il105;MWqi-as4 z!p^UOac+t$0Dl%Y`DJjDSXZKx@cIC*&zMl3N!*&Lo?TH(fpH@Rg*8Akl@GFJR+^zI zUFPRcdl$#tLOeD(I2M7;0=T%j&rESkGGmJw2AqYSEn&>KK^m|MTNl*g{Gn=RIEQAR zwu{0D*l#$@Vi$cl$ioHRFkK*U+U}LRV{m?fob#Q3r02BVsz#c^ozB@FUwm}ds;>cl zn!##zk4kT3dGaV%M7KEJ-mVnF=ak>v4(6ZhpS?I|4w6TH9HVV({2-CYv9|OnR*oW# zmf@TBLAZUSVetfgn`*_H${bZ24Ou|#5xq#ODBT+Mm|AvYB(s)zlBh!2>f0bLc^1gs z>Qc-x3`VOE80A%pnmoJt;!&_X6cV2Aa9|&uW`&@;4vFbXrm8xyWeeNS->d>ds+Xlni?< z9MT0IyF2rg<|c%#gXYMRcisc(KNRp4-c8bX8=H&j2QoIKO(>ieM2bgmP8PO?s8})t zp#fRjFqXBxJ&kQc2;C#!DqknPovu?#h+IR_9QLo;(z5aehWgpQbvTOWTvv>nc}qRY4v4IuwBS$_b2{&z zfSC@MP3h6tqYFMe{BD2Y`sqN)zD;4^Qm4kUPsC`{V z+ik?|$LPANR=No3ie~{U1d|sGN-g+bJbeXFTurbwZeh{j?ykYzVR3hNcXyZIZXr0q z-67Z#2=4B|7AFKUeT!n;S22G(Z_Ib7(-L zuTNZR4cNJrWQ%^A?rq!KH=J5;zaajFihGvvm`5s2JiYkKmtgVCU-b*aZ(o*5f>0;7 zvJeti(i1ylZCKJo5O0q9Psu3Ci)*E29%rk214dE#+PO94$97iQaaHS+;$Fa`cR232 zL1@9>vO@SyYH|B*ILA1=M>LCNrb$QKW5&NmBRcbkY%*O9wzaG34QG$!&tI{CF%CDiceaZ!hz5=PYWH8Irz$wFl zXsNJ&1RhdmxZvOg*J9QRg-J@1mK3b4GP5ICXBEm<$^i%Qpw$e6$zGhj{TED!AOpUy z$xDqZ&7D%ol(5;S<`t;+xulEg14Lu`s${UFDzvYhd3g-#|1fvITk79bU!k-}0D7=Q z=Q#8_)$yKzr#}R|Xnyu;aGjzIyfT!%XBZulrXxj5o{TBWS!@l(*m>J)&h^(Oe}FPIwod zC?xIs;0<#r8nZY6C@s=ctTb;$7SX%fM#PL&qNj^>p#fjGPjLshbIaZ_8#y%W?d|NW zQ8p_o(uW*ZUeQ1#-M-nwizhiG8I8<<7QppS=J}PmR+LlFh~E$W>b?D51+RMof??+Z z0pbVnA0&cdW8qlgjJaU6P&CsX@YXW=84j3$XI%++8S}gtXs#^zJAU9*z>1o5R$4&< z{d5+VtMnN$AW5`};h#%zH<_zhh(H63vs(ha;Ipm8g^EfDj1Ylie9Yqg6RJ_S2nQKJ z+QH=D_nlcVsVWIS93L-H$TDal=?o?rTp&=LpEzXE?c0I+(z#t_5vqY0Dc~jH#TZ{m zTJDv05wp)V0((A6w}iWyOjZc>Vh;6v{_hVjV>F&q^Li<+lSdidJz+H<7;reck25t;J5g4UU8y#H9G=6Kwnm@lC}5D=WEtM^=K!O8+DDQcg} ztubsmwE%LfpYJ7wf6g9q4SSq&YvDP&=4{ulotG$)C@vCI8Qm$xk@$bVx$b4%ri!>d zvlCSLw^Pb8DaT*y86Q#tDUIlDBtmD{m~-v5cNL!V+(wh{xOded}5lo4*XF* zSoR*}E~sl?KdUUW_>rz(!oK3wkG=~q3RE=@UgF@TH}8EBm#x)adg?7qwHFRP4GUuV@Rk55bV!hxJ9$32O`WfVwTfO~Go#?+tOc zy*QZfQ>WpSapB=L$j}8 zf-!qsk`qso{(lHBvZHoBE8XO$+0B1H_@ly@v@))P+PN2h8jj!HE$W!B(`P@RV1)7M zbbIRlR#tHT^YbTZ_z<|#jf^m+Xs@B`@sn{`V#63Y(}k+`lN{#?s^9BRl?Rt+bhElGWc6f{XQo>=vjofJWPKbgNgMIs^HV^PbUb3q`B)9oVYOxX%Q4MqX8QlEXck&=f6Hqlomoqu;x!o#yJ0po+J(d! zflcxFSAU`1Qz1UPnKUB%L>m1u%@$a-Li6s5Fq*@2{NvQvKbIsj43X+Sx6x;^D(|-o zVq{vYXp`4Q$XT{&=46jlGMC`QV=ydpPpxQteZ%TmAFOw4bRaoDM!S#iGhMhsdM=N6 z9Ulz7FkRtab%BIWbppHvwp{C2;Xx zJHa#3?L%k~h4TkA@AQbRbJLGev-(UCH!<%K5qp*f-@v9F{Hqs1gJ`{gc8%S?whl3# z{EMxpmR31-7a5s7iVoSesJu(Od+`TAfqU1zL-WQV)K`T`XT+A#!E-P6JD*4bciEgE zw2HyOb02oZOQbKFqpJp_KjU;RaO@pIaMB7a!YYL-+Yd2Y+eFP>CKesb*ri*3D)Fpc zIWMtGD1H}Ti8cilYD&fviZIT=#dH@UTZ<*ti89}niY4;KSi4|O-P7IE23Rx_C=1Bk zs1Tw^$ts@Ntl9b44xy&w5%)bm+h3h+hi>j%d~?n_zi9LF$$94WI+Hv5?X(rcn{r7- z^3a;dx<>OQ@}5oHjsgT8FJ+YF&nO+WOiE%YbW~a2m(NG+qC@?C5*}a(t4tVv z--jOLA#CK@P|)<8Q@PGpK5pj8j*_iw8hA3^+)q!mDh}%<&);7d?z@Q=PN`A1xjD`s zCv5gE5?hQmJnJM5$UJ9s;^w{^(v17NwK4V0Y2~*^(Q1v9xJTS%S{&j25yAljkLP?X zr;W^-ay`-}1`DG~jjgOkYe+hSL&m}}bYq@>!ShEko5V?0zkyh!w`yxyYzEqu$gyz1%#mfYcAa`rkK|F0J_LVquL-8_Z&wudaWCj!BOL?V zpPSVZJ3OcvyP}DqpD95UD9`Qorp2k`I@P+1TbazoXYN_qQ~&;+vONX)l+0A0$_0a-;ugZO;8s z{qrvWCpE-;Mrz`=qSCf!!vuo;tQjO{MCqsm2c{*VVT2W49=5VkGVI#QBbU%mDGClj zRlW36&Y8L&woenqg^OSh$nPi+rhQ!!&AmNevuzhm;9h%okony*mw#MO%Je6DTSw}P zqWKQFOWpn9av8Xk(U_ib=BLjsER7%b#Kg^4g-Vz~Mh zLq`0(3;q^I^UlCfpqZv&sLA>F*SF)3Dj`jJ&dy*HHK6$4VYeth_)?jwA2YaG8OOr; zCdQiV?Y$+nl?P9ocyOP8C9=`akn#3aQg@gR!KJFdsryOqJtA9`!$%z+9^yRVU{6@+ zjfU&xiS|9d6I=L6|6P5@#nsHnQj3(S_q~4~Whz(ve3Xobe*9BappV^U^ON+iUw-e* ze)W}Q;3^J_!f7_9@eq4O)x$ZTSPk&$I+Fur``L_{x8IQ~PuOgRpcpUWI?0f=lmhw2=XePqEd| zWwQ84`+zZ4b9QPVfe7gfjrIuLWB*kMvGH2o15WCL7PU#x$SF4EQ@UI*mWY-9Piy@k zdFo(7Y|+<*d+yX10%}p%Lhd$~y!9E0iVMneU!K9eu_AIY#2iTmZLJZbwQLub!t6xx>0Vppi z$vZwFnaPI_M0E%6(PK&|FL`T@qFnhG^%B9htkhE|FWvl)Aq&JWEGRDzb%162wHJhD zr|~Z=>-7WgNUzij@6*MviaW&vE>239t+)M&=Ra-kj8IThefzvdaR!;W_SX#)-N_3% z&;zN#zs=Xq?&RPQYV0<&((^!?R2X+nldr!5zHKJk3zg*KbXJ6 z#ErK3u3j{8Vb06tThl@=`6_nD(__yhn^@$4wCFsc zrjQ{Z!E?1=55M0Y|5LIE+F*~hT>>^trrFERk=oqO5z72ca4jeEevuJe)#^vuumI5D< z7-KxF&0As#hl44uq2ft?nUi6FaqMzhR?=>fyOYJ<+lgPblc2@XF?{X4e-)7>9Uc!BxoNoyDETcd9YsN!)ckAVLo}~hZ(G}Hnu%NW{zc6 z;Dg4iWsawupzINhrQ|S+8{k}%XEsQ~5pU2PmJ}DFzP8Ojz&x{U5hnWt;Ry3e*TorT zq)@3fD75OJjpbez-Z=lR&%X@+bNZ#@aMjccHg(KIbCityH#H0#CKQG(79zYG#%>Cb z7;Bg!G=dhBK2|IgDxHrx76kQ1i%A_z9txtxbZny>z+{h^R{OXAN~N8IkxB)(+i7J( zOAL>+B@?NiW)Uu8jcFE+6tKL{m*OfO2|5yRhZzo)Uk$=C)lY~*B4))TM{pRr)PUNj z#FV{wP8C!B)W5*mPrpk1JjZ&E8tX?wHE#|zZBF!Ul!xyVhF!Fu@&O;B>o~PJJmx2A zS?EvL`2Xq>`ARx@c3`Vgt$HVQ`@g z+nRIz>S4$`X~7OqQ5)``yBQ;gy=o++DNRzPH!+3*q2^3e8J}S{xpdlnCI&a7x8XYB z4X(&Kn3J)@vvsAa$mLl|6fvx>Cxt7C<)Y+jpy;_3>OV`-#1Bwc!>Ro;=Zdoz*Mwcv z{hN=>EoKj|_Nh#HKp>RyOP4Xm9TX0&n*l}#^tjTWB=SorE~HpwfEXeC98wu@fHu_s z%Tqo1B@CBAc^>i<6p}vN7R)S)2X~;ek67f4GCurF*H#xd6Q!U_j+kpxC9lqoiFiFq^ zc&@}nzb1JoVv$3EHG|i*=%J?avl_S@PFs5{<}w&xpjtMBtf7zEF+J+JeYWB8YQ_8M zIoV*C&EiFdaE;83q95E-EeMLRuTH{sp>I?NV)ElhsSJfkp*MNIh~n~-!g}TpSCeap z31MC%59EdZ^wqI}g}V9^9*ol1$1>XOkVM%8&2A4Pieo2=BXhmYiWHIwhlF1=Bo0k? zeOV6^E*UOTCb8R29Cm6QCP%C-{Rts1P@EC2#`;rq9@!OQO{1x`Fr_=Oni=WUX*iPF zm>P6)wf3jz>JNK$W5R<+>V6K2g0Co^RE~VoCtt%TS7@?azacF#SBY6VO};LcQJ_v# zN^B#er~H9nxdgQ~7*(5I9bWXys9owlS9;Dmy|`2rwf+Ej3Z-BWrNAsP$tN(CN+#-K zX)?vOF!Iyw^5dAp3ppOeX+evBE85rO>t`AD`)^1cib*(RN|SJuQAJ8Mj5tOh7CSJ? zvZiWMXpE6u4%721O4WvYSvQIl<&^!PXDXXf)Th;Oz146$O+JgG-x&Oynz1}_@!_47 zX^PNacn#P;8L%rvdH9av@i%MnIbiXJ|5gLmhjuXP(tai=1*ZilUq#xO!nU z92V>=a%oIaEYZdIRSQ)5Q$g-reUKH}p-JDQk8t(GNKTLAS%qS?;hs^Y+LuW0qg5$E zlSx^p9wq;!OCCduQPV=}(p0NjtFnnRpWlHQSXbnr)oG386<(>aR}EbJRAL;pq1}^* z+@Up39xKSm<@nDUw~O~y-FfJ&*BnrS@jy|;;ItGTBG7-(U9gW?%A{c z(kJf^w^2G|^yL^8RkBt9|#`xSPxnpXRjxF(AvsAT9XKD`5<>awP?CJEGI+ln+4qr(mbs zPEV?r{13Mr1_m}3m)z!2YUQ8>HZ`&UFv1d=gF-JN!%6BZLe++lI=655Lx}hfJ*jT; zdG1bfa#};zJB?_WNehO<5}9izZ z7Hp6CA&|^I9q^37GRZcy70yFZonT89A~?~`vBd@h5ZtoRc9}_LWAC<|RW|~8Im$2t z?RaVjE3Geo`6SyqI!w1u5)Sg3ml6V-rU$vhT{=g&!>{^ixx!t3(SBS_R4{L~!dr8F zcw_z1lt21#&gO`_+0@CWZdf`|h-WZOCTmKne`~@~ttHFni<2}g9D3a^$q3mEcOmnM zXyns6kbUBRVAj48YVr?IqI$gCt&+K}8xm09%mpMq#$CBQok$VOoWY@|z=I>Ca|$>FA`Au)8bQfCal}xkyHfZyCzh#JuWsKcw#$w9P*nIXwDwHd22G z3U*WN6Ee?g(VDvXVW&@yQ2A`ihfgu+EIBG@l@Z~N;e)m*|G;B5NDlD;!~6KfvAx1$ zI)MT}+}t#;aKw5B?cyqdG7COCeC52%w0aOcg#rgRo~Kv}1sFBHlRh?Hz|uM0vU_N3 z9+`C4`ixrEa=dALdSbe+{~h$nz{^dBu7uI^Pui>U7Rj-3n|W z7?u@e(jaYJ#d76qz8ZPDC37U5Gu1f6Y6+84$-2-S)tdPI=BFu;P`GUIUDl3M!LHpl zNdXsvV z4;GKd#~MyS18q=)>Mu#=kiR!1o?0qe5-uQrk4iL%QUOI@ck1QY-xipVE(EYudSybFj(4RRZtr{j8m}7u_DQ|LPes@ zu{?@@X2E2o6+@Bt{{U891gG zLO6o9DUy_bQ^c>~m}bYlRzpoe3EaQgEdb5x;Q&5L%dpNlb|~@KB1z^ymE=i;7~M)( z_KqX|ljOeExYjBAlnZVVyHDDkT3}>YO7?H*_|rfpnxRk)3EZTberP00coI9zAMkGL zp_NW)^g4WV2!sEczaYe6=9EhNrGjURyQwW3m@wgGKxkXFz_Fsx%BkV>^*XuIS zU!WDbHRI!0m8QNi4gRL_?jFJSJXnMU`2#6bw; zU_8%$X;dWhfzUyxG;!GIc1+1EOWj!zLW1K2hxq`Q$9xgzE(dy_vTjt7h!<)wvWN~f zXEV!UKD5edID=x^lX<~zSsG!x)CP4xgZM1edYRmV(rH@0McMoa&`ds$Tg!F!+iK2! zi6&x~;&-$7wXfwba$lb7S@Pt_w^Rx=!CI=gQ3O34yBh60uf^+OatBJMDfyNpjPHbS zD&EU=P^K@y z$0qaZjZPn=?V;~2@uB~z&gE+DY`@3lJ?tv*Az@67}u~eT2pL5vsIG7-C%iGWO#vuNou zDX6JtoDwo)_yly=mT8KqcAS#dAJro0K3S$Rr&={jkfzBVaOlyf{3i61UmipF3mbwI z8sUlrv&Rl6&Q2VL!G}`piaPX&=d%mIc1C-2zoV5dzzHrHAINt{dg`&Jxp+uKV0IKNKF^gh%jf7tv$x%OFkbw`z5r!;rXc|VNR{w=}WRr@QkXg1VHp90!+e^za)D=ezF zDYED=Ey}ma*J(Q}>bEJ^>A2MREF!e2IjLV&Pua(>SGQMP*vG6_ZEN%_I^XrJmx`zc zEQz$4kf!+g(Rk?@sgYGDFOHs8L!^u} z3aigfqfdW4IY6(AU!>qxk}QX}nqI`>mXIt-v{~rqj4TshM0%^o&nnxcuG_K5$1hLY za;)oJe8a8zWp~`>%Ob9@nAU2^BCW7A-|Bf0o>gqL$l1osVlXl1-lni_#iG(va_9iR zu62>8U1_xPwUtP}$y=kRJkz#ZKUce6%QjO#Q@d`-woSi4yJ2hj(iWg!x?Hxkl-Gt^ zr{%D)-iB7E(euO0ZfiZLPBx(E&OS)LpQi|5FS*{xQ<7+JvEIp3tYojT-pW%tW$&@x z+g`+Cudv?SULw3mYM0!mbrIKIA-uHQ2AEQLSb@EbfKUjliq;~Y3_>u4r9`V^PDgLq zUpqY{bBCvy-2VHwey!Uc;vzSmyT20Cz@f7$ z@TYde!r9#hgyg5V%VPd*kAKT{Nyn*^f6sQY&*{T0>raFJh6gbEt?^Hls};ms@gO;} zj}o|QL5gH6bhp4D`NCzJTfHFV!WFz*=^&uVvd(P`gzB}auUd3&<@N`pyRZ0};7umf zZI;gxjxZ*XoNATNJQ80vQFT8D)4I{dZ9md&K9*gXAa%r!YCM)_8lPiCZ~q&n!!W^d zqA%5;99LR`CDkuE?)e1I{qR&XLoUulW~zYT4=$}K^VG<6S-di!zug*khNTA@T?{lkn{}c(bl^P9Pey&dOPUb7w*{lQWUX=V&GrCv%2VDz3ou_PuKMz}i_j zbnjOPG!Y8RgXPNG5jTMRl92RsG<4+m8}pTzS@u~c z5NL=!W!B6YKQemInTQlKdN2~#x8)3jOX#%StddZxY0Gd7}Ahps;t*KA&M5z2Hq;j^HYBGr9lUlfXi@H+rAC?I@^ znV*yOGsR}L8_{k<>{+vR&c398{jOq@P7{XV9#pS|>qN&J1P*{tDMgP*W7Ggp>>S?U zO#{1WvMkvUS?v?Io+f47>_kK3*=H_AZVQ2@Qq$}LXuHUZXp2rye*!V{yon6f zd(5)q5n1=_p)FivRIP-FefKKM{`PsdXm!0myJ@jES^xBNmy|7tE@}eDbF9NdEpnpr z?GAm!c(+WI8;QLhUsI|D5P}YNf5eVc&I4 zUlWp+hMK-^g?3s11eVwD>JS$(t)Ob7%u_wn9z^(BPo2s&%96xRj;-}TYiI3fjT`vG z1$acJ0Py^yIja)b{h?I3i9ub=_Vu zg#klN>9gROe=KwY-V=yn3%j|LcaE1q%Dy|Y4Wu2%JFu9B==mW%PnXz$=S`k-yyzgu zH?_WJDUf&vASQB;JU@8T6(1nG$wQ12O?Ccs#qyuc?E~VGdwf0b?jRu7H}?%!eSGDn z=c|pthq&mL54J84fXlYSM(1w z(xak7JMBfs%(4G=0-2iO!*M-L{5KB82jFp{Da5k7%;*V8VSTdS+0A@WZI^T&KRyV$ zKrM865~Uypg~O1cy1~8qMtkVc4 zRe7r8&$tn5M3rlA`1!^kK%wrJ`q{aV2rX0FHt?@d`SytV)oPs` z+gP{ax3elh$;2g;@I8t5R&2DAw|G^vMrDuk*Mb>0l%<67_RgPN9bfHRp`2b>dz>Xf z-W_BO0+D8dvl&-SXUbf?HaZj8R+3#4z`ei3l3hd!Kd-!dZe#5?5e4po`r>6k#vOp? zNHezCKV;WNT!d(Wiwq*tjA8fZ*!2-$&Rew~=bx+0R1BY^CfK_ZK8(Lf5yF;9F<48% zoJaQ=gm_9^2(4G6PxV9qI+I#=4KU}cd1k(Nwq6GlFC8QA1mvCW34sKFXI$$Z4{p9S z&oq$9#_3>sP}OvXx1CgJIg_=0Ty@5I>RfFb#`o^QmE@~O866d)>)OZmG;FB>GY$O} z3OtUO_^m+~^&`UkjI%kZ-1)b+iJPfTGRe@O$}fLMsHtZ??+X{>1*oNwxoX)a=VN+v z4Rn-Is7!=6;vSL6q_ERZfHDvm%kuc<1(pHdD5>%itqeo0i;9ut#jo#K7Nn}D3r%`G z=q!3vcI~d}cyZ6peAijKSVBTd#>~A5+`A}R)jvgMzAH1@7hYkZmEhV2W{$jLi3*B= zjd@$ZM!wLmNR@Vp|kcqeluU~a?JjrdW$*sX(!OXA$H|* z$xU`r0QO>XcV;eSmt*;RR-=+sJ~gl7P3TdG!76pB(pMrLc(Imyq`5xzdK-iDBy2vp1|=ki-XjA{Kt7XG|E2NLLQC=zj8bvLlREA_l3JpevGY?2Rbbn5@PR7Zu3j_twI^U5*>4_0F z_5a13`y-LWm^hjy6itBR0SO$Q1U><#im~H~HC%VeYj@Oy%0Y{=j|}dLF+;A> z;%#>d&~iZI6wZMgwWJ~wFyj5j3#m>g4o%17SDr4j{_Y4OWZz=9-U>MbOP-Uu`8D9 zh5V`q&0R-sM1LqCiq@HB-*E!LnB_Fgb%z{0%X9S}wVM^Q_g2icybpI|*y9}AzdumB2OX28d37Vid$+=|9g2g=~j#k-*^h=D9C?w(cb z**P}BMaAkG{zk04Xy;PdETXffU7E!TZAQ%8d7KCCV}iRU_zEoDi$Sx8*e}TsiCu=Q zB&$)Z!Gg0#vIdUMrBftCME7OYgE#$oq;s6f2)DLe0cV!%YvwmV+xZMT9cFPvkt^NO z9@_;+8&JC!;p2P$NmKXES}DA+zNl`2%3l*czO%2E_8;U{9$7TyVBokuSFsP0ILVBh zk0X6x|164ibu(M6pt0(afupbzjNZDI$YT)9DSIK4|IAZr^)luq?%NREd`;lGC6q9NQ@736Ry)_*9i{l1<~{<6tGf)=7+3dXpe{8-I$TmU?s*dWK$r=VhjCkUD-%y8V%_lH97Jx5SYJ8(0;W|It6qlW)Isge>$_pix$bw`1G8BZ8 zie+<*K%^^~SUU04kHMRBG{i>At6kp~Gf}c9{Nfbgy1zAh#4Tp}XHTf@WPjL76*3AG zTI*YT3}J$N_`AP}XXATR3I)Il*D$>rjMO#!*azGauMhu;-LU>gID9hRI&oAr!<58x zJV(1-uZ-NydFGz`;6~aJ2Tr>c&z=!$t{2+mj0^1B4MbNI&)4iRo%f_s^iiTDJMPL! zV#PZ*xyN~t(f?N{!6br?Z|!X<|$`i(v7G40PL-z(AAxG);xB*cDSmL zJ$uxwlv(lHjl>xqYoT;@)bIAFcofGVS&rlsy;Qb&n2Jmo#ZkD#iw`rB)JtuEG&en5d1l;nHoUYX+ z(B;#iI;S6}gt~2F_BXp?SdGBVEEzL@MZ=d*n(fy9A&;6~mMSGDPMy8r@g{dV<~{iG zuius^6(&v*%{DN7Va@LeF!pXG5X&D#PkQGylhgU`NYbqofXa~ymAJiS&XpiT)jf4q zJrl3Zzq_|OQ%X#rC{f(qT7hw>TqL9b%yV zs+TbX9BL4}uK(AEe)uU3?0~L1x{IgQM~&Pkf%U>Uu0uVTJqEd?I3)w#rS%0QK(v4t z6P7^_aCZ*6Z-&T@1|R$Uos@Qw1Hw)@r4W&XThjVG&F5^z8!3c*OY2Bm1(_q}gW9q@e^g8jT%H;G@8i!fG#Zd+O z5ao6Rnj#T3^|upPlIcUbViCO(bV2srS{3o2>ar(E8W)Lq)$gnfA_oKE9)Iyv3n}Kv z_-9XR`(q)BRef`Mg;5Yk!Pn{I+2bOS73KG34=`KtTXVtN#mAlEx34{rz(qW{Zj<|U zFynYb7XzErlNay`ew@|?^VCJ|*5O&O;OzE`$2!Rh1#`w!6z0*p5!s9LqS=+x}3%v~eu8Ml06+$#&_E?|rzNhvl zxUW*WNcp87R5@ulKMdgReeNv4>VLd)mP%Lus(M`E3eW~jn;UJYf4Wj<7DzYj#JN~C!J;ikvF6F&m&rraUN~v3&B%!$HmQ3oELhyBCrWjr7)y(Hkyb`^A zA--JhzAlZ59^FkN`14`0;I|*MEMvki_~RgNz8#PY@N(}1NqrzcgsrqqkV?@@S-}fQ zhRM!5_py`UxC-!a$9ucI^rf}zq~3{jh{p*p3StX9^myps(|sYx80};bjlb~_{H9Y# zJa&p5f740QUNiGVG7i6Tnogq^^kTjYku67Prs3QHE9;kQ2^V?U&$Jd++9y%n&+^~9Jm-5k#C~x_?xD{bhJ$7wJOK=taS*)eRoY=*7XhoH6AP%*AB+qee~9Xo%YwamFc~s_035Fv{IR z8j$|^@&W-DW+IM8@LK;fD2Td9fIYl$T;^W}5*{;q+OB|(q+E8%IO{7AiKe-Z>RwwiwW>YeBRUf_HRs~R$^%!W{SF8D7- zl@wg@!an|yS6=cUbHC-5B!Yh@>n)JHwHI{7pR|RMLAG@wpMuVawbda zYJMZKFalx-d}RHp^pdR_vKEYXe4)8+=+UXo8Piat(pQEzaSyx?gRksoTvE6fUr{xo z&jqQ!dM)AsKb}Mg?A@<4e)^>ysaF=CJDN(iOht*cnS{*Z-c2Px_;DthpFSRimSnn7 z5c@G^`t9Rh^jdMhy8j-8lYE1u-^Ym%re?59>06Q}n_vD)C`4v#HS;uIHAIKgyBuP@ z*daIaU32FvgvaOZqVg&QRb*|3(Yxg3d;Se;hL3_jn@;=l&twSc*y_~U17Ni28S3!o z|A3C+C;H)Q+Vf0Q&_ltMC~PHJ#{bMzG!pWmpILuyZIj%U-aiyJ704H!y`|H3y(g5; zM3&)U-?Q+Ka>PLxs)E<`L=zzdRee)>qVW*^I1%Ta%9dc#yH9CASLeciD;WRLApwHT zeVZV9gwbq zFOMnG1^c0|AJ`9}+uixV#fsfWvvEOWFBaulGZeSTtq=U?#kHM*NeY4CvvjMs$UB$+ zXg;82!#AE>Bs2{2VAD0yV*5khAv*|}qEE$wjU_4pIZE~FJNqo4M_D3g( zW=B>e43bXDL-jKX2x`_O`(GM-B}_Rge!N;Wggpu> zxEehHdkof-{PGz5c9l&6`YrY(4dj*yqUl&rT(tQR3U(=p5aR!(#FDqP|B28hGC|+} zhZ0T1gZg?PFpDOc%;C*D%5EPK%z6BSn&jpKBKp!`>xe4ZvY07h`=%SHol9P_EYF?C zFWUdmv)#D{Q}6!A3uaBJ>pb0WJG@8+G#}1#Hk-{(U-oso~B5l8E&ye zrJxMYAdqIX`>wM8V|mF8{ujzVP`nchp&cX6I=w3C)8j-ehu|)Dbl12@2K88CjRy-V zB904gW$Z}$WtTk=2GJnuZ&miQ<-!B{OgxAKh3P}cbKyRM?|gvTHeFobypB8lRx$*- z%J|0I9^+0jt%+#~y);I?0>JJbgWQ^VnK}sDGb&J^oL7mH3=o-2bUG$^37& z7r)f{twY}ZPK%|wE=5bzDyc^pMXSsh~ zZ<$IT5zSVoJ62>#=cerqREeH;N+U{$p8%o43TnQ3AUUL<7d<@@LQ1FZe_;H4IJ%h; zQ~c6N6Jk|EJS3bcwSpmk`}(zX2Kko%9vLtkroHqQ99tDj0{~sE_67-}){186@7gj|FaLY-AXR-N=vGb6)*p z82#QL;n!v8L(zen*$&#zv)NhWS zC2!vk#+tWApT?R$9d4!l$q)J#vN9c%@gOJTo}T<~8Uj5YK=aR5!&$?hZ2XyKkoR$s zuVV}96p;qvPj{RVQn?d;!bb~5UjYndni`CIK?#-TAboi z+})wLQ`{*~2(Cejl;Z9!?%cfJ{j-}r&)MW;eCEu|k}*vd`^nBm%S%o5p1Kh1s(c>H z(CV>V$HbFNL)B+CzV%+5*(Z3ANOuHa`RA^a!@Yv2ox@Jp@UT`-_(gfLT`+i=q7|-$ z?f=~}bXjq0pPw_%;fWl>^{{3YjoShZ*uNm-lEPiG_cRB^R#)Qid8<8;$ zr5zWkWc2ZriiE$e0rj!hNfHL%!2TsB_gj5@L&Nud7Xo9&Cp++k(SQ|rZ=RJ+UmbNHT8?*2fV7SqbAZpV9v?Wj)qO5^5Tybrckph+W= z#P8!DNW_It;nt{2{}Ev5pe$(tLq#Cm_UVak{LeC^uhlu<|8(@+ok!zR`hYM`(>&Mv40@2O zz;o9R1YXN}`uvM!dyE10u}E)~Nuca1p2BU#=-YQa>iE$Q@Tc9W7s9z7?#?^67PeL~ z7dg^sua=H_z;N1U{Cl)kKBcn3I0;7`7pUOnD_ zdP@}Y(6rWCJtFF~`^|x5G`Z$Y!vPU<6uoZiut>s#7hLsxkRsH~hm^11gB}>>nN{=% zDy2}bE0c9)sx;*MJG&mRE2a}UkQ;lW+z58FK94nNe&ams9_UV{!5@?LuZ5E=x(WE% zW|ZSy;&-rjMekOv6wNhi^4;`_NybUNR^Vg+DX9;;T&KT(?Fb96%N28p7cUmBeE4_iB~|`qoJ7CuC|wm`Qfr_e{;4*0nZX-RLD);@9-1Zd6X zVf#vLvzWo%4u3(tA8Bv(1xas2^1n&G%~wqRsCu3x;U=x{Tvb9rr1vy=`y26lL;9oD-Lq+VFKQ?XzALrY|pL%5dfVd$gA;{)IvN5`PT&%d$}a zrpcI~KK<3ZaBKVr6qS!N-TUI|7A#IQ%cxO%X3l>m*Ht4<-jA8=3Z2|P@oQ&md@+G_%Rle6D6h)EKvN&u^1kmFu2zP}?edM&|Za@VHrg@7OAA8$&umg{2*L%ua{ zarikBbq{C;p--C9bEmMnS}(2yCv4~rp`I7D(eyh=taBN4Amv-IIFm_U;Y+oRc26a~ za`||nu31B%IeOgCv&ky0y)W*ID~mLJA7VdTmocjR6_RsUbGO3m8KA!|3sCuM6HeNF zxQ%*;B{#ly_4|!qT%os4TISS>UBoM(PhO}u=g3#Wxg0CU}{BB>Db?gd`cIt8P0qL4(C9$iT& zjfYP2=^U#~$3mxhbxzf~hBo#)V$_A-jBxYm9I9CjZDau1>?(`@j^m{9eI^bFEBp{k z8Ej@%k?BJJ_ZWwS_cJiSs>viErO;vRYKP|uAcwlv?2QrN#Q(6q9{YkPRQw8^Ja~oh zKS*1!WOU&4=kumc8l!F00mrV&2$26S;@Ei2Ed<_x(vg0Wl&j=u z!FvfVv>v+dO8~yJHs*ffm-`oc92RK967Pbyu@3*{FX2-@b1?M3fk3fsHK*I3fqcY$ z?T;H8LhOVxLJqEpj(WTJ%QY&r%QdPz5yP4KWTDPpsaYPfzzD@3hk3rvxlmds3QxR# zHS|0w31xLx;DH*Y7~NNB2!|YV?iMV+feL?gGn@?fI0ypB_n8UzjNJT-X|=MM%N}k3 z(EkC^q|9Z``4zYCJQ}mm45o;{HWg?m;c^z)mv{I;n*v=Co0L>;6sh@jcz~Haxk)?@ z!x06kd(F^KCLXhKCO~=9H@SA)MEd#ugjIt8ysem6q9AieBH}J2O-b&fbp$m~tIy1@71#-%1Ml{Ak+%nI&vHey=B7xc1qQV! zCF_2V-CfId;?|-r9bseYUWFDe%JHwrP>^SA(}P<~A5|Mmp3s1cBnq327Y#iG~FiYkmM~KE=6p0GcMM4GA z!k>(I6v=cco}tAc`NpDXx>TrE+RgI}CYg6KR47gFb&WOtje*}F9FBr{=~VRPCWgf# zj+%!9=ee5)DD+M;vFy(r5x>|ZZ&qADY1Q+uZBt#z+oC^;W+`7Kql%5;FB5$z6ojYol~H!L#Dxm0OW4StVhKLz7t0pDBgE=N}_^yWh~{}XowLY zLehTGrefO}mh!C|2N!hXJA0-Ao3Id$p(8UAowz6>+J)JA29tFg08VWg-G2w!ae1d@=>Pq8hGwaC7+0*G}vf#FpzZa*+K-QyVDk`mh`UyAfr`)qbQkZeA-XYvU-= z9&SsI)j90?2oYZFVj~vcnI)4jWkGtrvwJblq0sjl6j_LcAZmU4A#UpJk@Xa`Z(+^= zVF`#0&Rb`%@sw7xAUM{MJL{Q~i*sbq{fb1{Y`Hwj@2`R_I= zMp8UW$6}>VT4KoQpj^qBtb(BQ%a$xfPc$X8ml12XHcy-tlZ8#5lVt* z1j4lfO?kuO=6D7-W6?Q9apyql-kPs-JWz`YbwxmuD1cc4V$U$)CNjkLw*Tw$Sga&! z44f-(h-)%Aro;AS4l-8T&0d*GQ-y z9t98(3=(R>8Q$cHP>YoW$by7;gmAzjKPH!WFm~(X8-{6BS8ASI0M&-Oa+@d-r8O6d zn*tH?@QF4Y3f8-)cTR^^bF9%j$3xBYq(qdqL?-M=u);4vdkr{!_|uz=Luj%{a4y9C zY7J-t`U2mJ{uo(;!ug{>y%>;;1JIT{IHDWb;h6}j{hq=Bkdr)!^GF`IXh-M#O?wae z3=v=mG8TmXD-h042G7B7s!5^*J$S>GnRl2Xj>YZIh~7_a_N)8c6Zp38`Tt1al3)-7 zP4V2&Rc<>+H?Z#rMG(cB(5ZoHPfISVOVXg$cs|eg&2E_^Tap-gpdtPnTKA6MZ8^}H zJa@~iE9a%&6kCoYL_pV<*-BKt{>|<@0f%6Cw6fg)yNsc8R!zS%lTE4$053|I`PXaClCFCx*J5`P89Lx|_>6*@x> z^k<&?kBA*-uf(twIag6**uhhv>E1}b?!MIMwzC!bWV=SK^PM|--T~7+NXo)d*tgUC zFRxYC(qu+oMC|DsVbR=m*>W*u@`xsJh#oWRzOxT{-XSdsys^8$v2?Xa_8-|MaV5cs zZI14|d1sNaCC{6y(G4D}l_h@GkdW9<^l&l8-d4799A(cSsH&wSt;Z;!pcLU_(C}D&sM>a*{gaxTv1s%IB zKcxBgRbuPl4SQj>#NJ;dl{%(sP#JG)w8SP{V(MDwK^cbh2&H>g)Xg0kF?ocFMMo_D z0K_z9k>VyHUqvOlLjV~`^q}yQf|NETjEFvQ$R4L_Dl{N&?K!~;L}i=jlM?FU6Tt3LT z;QN8iP}%LeBul_B&hIa2f3}=M8}yY~BjjQ^Y12SLlmdr*mAmy*1@;{$W>Wn)V(D^6 zlQZlf1;l7l2elc1|neiJ*(3;SJ5|;xB+9ihMeWh%CEq}Qx-^Vdrv4AAqs6M0+TVsZ8 z+jWThMWC9i`(ObPc@5ni;m9oiNV6fa6?c8QB~MNRnE~Fvu%w1V>m(@7P+3X@sEl7I z4vxNG1!QweKR3rqWtp`{(IV~`w)e%vur_#-cGYZ(6S?y^oUkx=c;Xva86u%>v1&|; zBC$dT?u3+o{OTzM#G`Qe(KN{2g_3Zk(4e?t`7-ftKwH>2<_=0kA(}}fGXW?ZD8T(K zck6G7tQ!%WJ9!($UMk$D&*; z7x*Qm*eg!q$pllefr9gKg)iQ6>3QF2Of-5H^0cnw>i(`cF3@Cf2A%=*s*9^=akB7F zzXe3~>);ulV$WhwtoYg(3~w}M`WnM@2}$HU3S66*L0gf3^=4OeaLjnJI|WJV9ggLD zx;7Whrb>4Y&lJ7;@LG~nESg6Bl!6XYtGwEzxpfh!naz|w+J_jIRt8G^)Z%u#50Q=c zSu(xD3m2i#w4bB_xXqW&qW4MntR2eT8uI0 zZMLFSy7uEv+&RyEt;fChuoJwrZ}*eB@mPjOPBmHGKi}M4mxD+u1U7^LJrgUYrC$O$ z6N`z{(qG%4AjV4fQ~eN;cbfJub!cv>|E0TyI}?}B7Mfx19@M;}4`9qKhNPuGUns}F z(G`1DDHjo|oV_!P-eS=y)eqRjQ4D4~z3TwR$5*)j-Jf=CMie-=n|5hNYreCy6vfiC z-w6Ds;TimbE&37ZVMAOVq>HS!6c|!0E|cJ29$WmTfXJ6! zWDLFY;q+ZR7c#uLDT$(}j9icIq!ufTYh5g!51y*pwB~46V0FH}$&&VoVcm&mg&gur zI9ntdz4Ph13p9wN_Ts~?$Sd<<%|ZAB83g7_WqXV?`D#R_NFX!Z`+HJLCp|Boqb?2){*tS{j4kQbf zbFP~6N#o#(%yz=l_BNb*!bLzH^1N~hiX-ZLSa_pIA8P955LGM-7C)4Wf55;kN)S1s zYc{`SQ(O&I_j|!q%nMZr3-uMe96zhQTdVIo)z4XQt z_T5t79_;F4iALL8`*%bZ1NGK3Vnm}Yxwu!i4v5|E4OkVK4g96``m})TpY#P46%GBm zK8j-5{_|dRBOckh{J6ssG`R1PQH=ZYh-@TcwB5T_8CN`vrS|t=10r9jCVuYHJo5TR zLs;>@!hsp+Of%Rw)-;}pnBwD=n?M!pjelY>U6?uq3c6;$iWTagK@MA}umX9oU(v<7 z%~!&7+OIGNefHm9Dx)qw8Uc(*C=`!GKI$JJ*zZQJBd1!-qCXeJ;urlv3%eG@*9|5p z`dUIg25*rT^5ZSvoY4S#8vUL3KLx^5u2$XX=cWu%@z-icexoQ%Tz?ZwWWkSJ^# zsC|Ej;eClK?;W!L!GfFR5R$ z&PVYc&fZJ$gV%ibpX>b7kJkdvbHQd2NGh2@tjm37*V6k6_8`YTU z;Qq6Vkn;^2)fmUJ{6x(vR!7~B%SnP8r#8L{mh~;`I#;tp?Nmwn5{*Nfqx#b7IcM?OumQLlp7{WX-ojdTU*d|Z(ocCsp?x@?Mkr9)S2&4SL z*ZCvsA}8-6>w-LhYm7*89rZwb8~0jSrG2aS%m3WtRyx2;*uyFBIajQ_>T|bm@R&Y% z8m03ks&T;gj4Q-HYU2+++&EEE$LTiy#TkFTinnndhnTujo(*uqn#qO$e;PeMg!gj; z^Q9c5P2HZ%-md62MkWqAV>YWiHS^bKBlG}+*djfUvPqmR44Fkw*$TQb zasiVzuo|RZxu$FxBX|$wT{c5RG7l7gk%>-(ZuZSRHcJn%8;NlZ(}FjoHatdfKn!_O z(77R9rr@fdrX8Iic&H9}J}$_O;5Q|?38^$}4avBMqy#;;F-@=yqx>q_r~NnLEtgw8 zmGh^DM5I1XSq*w)?9uQKya!I9U0sN{*nxAlp0H>C|KMdCV@moiY>FT{7#9|_-o$&{b??y%M$kUcg;VvEWVo>l)m9p zhIt6vt;yoCBdlO`s31P;HPL9}S%WNw4Anp<_9Orf&H!GF;1O2We8FiVSHxNxnM))% z2IRQRh3O>WkQ#q#Zu-uQu!by?5qTYns|(*SoGYYqy}HBdU`nrf=38ie-M{XD@Gp1n zjDCm780pki`jkLVs^AYw!3PvHu2@a@4n*}wz$PANA8JW{qOUXV+r7uA*wBF)?B{15 z&W0h`ODW@eg0V;mq&Lr+Hih@0KaKYYvM}&9Hv1cy2$(jo!Dt(V5bnS5yrXQS4PgD=$UE8nP`81E&OC7RqZNR{t4muH|M3j6IRhe@s|?OS>GJ@@|+qXgth>-J`Y>? zhOn3AkLb!%FI*4!u`)nSYuW#pstW~DnYU#lZLO7mH}X8E?fQan?muKS9VSjl``x)W z-mDod9%U+c?5Ri+Mj=97FBBp$jC^|1utf^_W`0}qy+51^!Lo&ZFu(DLJcIwl6n*Wn zrX_AweE2M{&o{rRmH*_J$0B5uWYHGA!IH;7Dfb5nau>?h&M8oJ{i{nd5j~xQX6}=F ztmbj4$h}`IPGk7MD4FFB<8hjZH?soThq|FrGOHb%@%WT4Ry-Oi2`RUhJpU*tn9ZX5 zCRpj!dq5#s>bAMD(S1*h;_3>+=C*uq)LpGK_oNA!y?I$;>V`)%fjX_iTRZH$72p{W zZ)r5fojI3_UqFVF{OFXr-~z*i4=xwiKH(~1 zJ@-DjPp&u|4{;**X+VR2AtLv`fCjY$C$|o~7o-#9TRV%(JPAqMGBa^0>yb%c3R;Io zorXrp3L)@$aHNZeE;?mBKIyigd2sZ6U?iiU5k4dRX30bt9Bs3*7SL%HxmSEB^i z58zg~FmEMb?xmr(DsUYfr5PB}F95^mp^-<;)UBN^-V5CdWtR&@-ue+-$dgN~A5|HL z%SAWv9&P@c$bCSp-%ney9dzEz4Oy+I6zQlw9K4U}xlfh&RJJ1A8%NWYI|wS-E*JZ} zvyQTjF)6)~Ng*7|gQI3cBXsHWTRU}@C`_z#h1ZL`t^;4a-{n53#j5Gqf{&f7N(LME zWRA}*dF-0^z{lrSC6iyTNSR;ptuB+^L!Pa0Z0Qp}Z|&q;@)U+T5;4DmLdZ*7fJU!` z^gPoQK?}V@=5dJHaPYMObDVT!k6#Cu+^xu)UnCX8mJt$CUL%wENpXIQ+)o2l2Wtdj z4;DCOc?(96XZ_gRwi;d7gBH$$cp_+PAga&3zba%QaM=6});6bl04QV>Uh^(;pAVd1 zGp`vOef=6`PN9W2`5M!wN<5^TyORP`mH(~)i4S9%kiM010|{6p*OO&$7kX3KronO% zCNoiq!bMUGfvS||{rC}V#39~aJ%HIM1(-x(^e~Q4CRN>)0#Wj89!wFmNmf|s=tp*e zaxhUDGIN0;%4Ao%2SxT=0cJ}Na`s%I_w-jE8fN|iOx;%wftbSkpN&&;ZcGA&M`l5L z91y9-8fwT?IFrtm3M?0Sl9^QJT11uEs;G5X8B-v?4}_6@S#Y1b8!s}!YQ>|~`Wf7W zldak2B-;eazJC(HR~5FZ`MMswhXjeIUyy`wg)*h?Kf;VrCNXQ?4qNz;TZKIk2(TB3 zCK+fHbf9EwR^)@52(x**se^1u1PU?s<PBLzu*vu}FxHk8S_kqFokI*1AA%Mr1i;y`MH_Z%}L<=i+03b&@h_rxIJ zZq8s^++v{w0~=Uv*h=XDTg09Z{AwQFBrYuU{>BorAnPX8z*f*fkd2L@0~1+BQDdn} zgZ;r#W2qc3=s?ZZ)YO-8V;3mQtqr%8w9;2DFdZ5dYB!Oup@4jjU`m}cf}92I@ge=< zQ>Q4v6m%mJ_yTUq*6kIUaI=~~yM{T!0WkCl_6K)Tw}xrR;v1zE|D_4+5B8*B&C%ef z6r|S1hFd+mpd;Skv7mz{+x#mNggS^RwGA2O2**K72uxxGrPj(9(ZvV)g!g2uol>+bl{jE}E(G=IJ^qnsHNQ>U?Lj*eK9h#i&#*Nx<0&P7_wu zugVazs~_w7rKndnqnO*t=>8$DGY)^1efHow-JHfSO`*IMjr=DCu~P|xL7swsGuok% zZm0*_G{$!=?m5v6_##{2q4^hy?5pB|PhTC9u8n<{Nz2BITA0z1CBB(MV)VWDIu zon+p@PgFte{r3m(l@If?QK?TtjDNaZis0OG*Aqa%8-~Z;zqKW`2l3O7xopLjfbK zL^nt?G3`FD6$9BV(jGRZ3-#EBsNA0z1IjW+yZNwtUQ{JvHc2%R&0Oa%vK`32n)b@2 z;&D^bb=n=F@0igM3&w%$I4rapb>qdyJ`3GndFc<~H7i8i2OPe` zmRO0$kO5*^UJgE1na>!Bt;DqckbGiVVXZ@Q3XJZsXhP47wV~ktR%SY1nh4AcmXP2MIrdgYiMdNm54t*cd#`c z&VhVzvsI#V0qyrCw4{wQ<*ke*;bC`YbI)xz@d|roijT)*=U>CL7`&@Q+C}^|*<4D#lux%bc`%C%^RE})`z(qw zyWlYaykvF#hQ>kXOwuw`{p&1|#}1>+v!mVeYUq_--HMuB0Vj78=jhM&4CLsaZKD`W ziVX;?X}>2h=C<`i+{?y%Lx;F!>@ah`6WUp3lHPoc!GgMnZK&H}Co1GMp%AMAA4QRB z4U@B}$`tDm-@0TsoP_KC-T%xA;YFcU6#O+qa~Yen8JHqWW?tWs}H~#Kw zN?o@9pfjZcb!UDhk@d)2J0r@i?r%oRc1L|6GW@P%->a-&nV~iHv1RO|ZYFhmWupXI2v$p5*F=hWPE@7u2$f2RjnsKbNY=;z z7%{B}P?c3isL14fkR!OO1YtSWGb;^bjr|)=_Ik}KScyK(F#vE|CEX?K^zq7!0xQdz z3?-bEfASTF{QdbSYA=Uzuf^BCIah;|qQ7~Y3mJ391R@pH&9C}+eiY-{yyn=!f;X2O z;HDM7my?$|M&0}^bP1P!wxp3P;)k-lNosN9s4PMS=C5y@^Q66@bDT|PLB?{4CIVtH zAp&9cC*SHP5GNXwf4%VJd78~tlCxifLPhY)T5fUk0G3J#OY3VxZa>{<7lDs3wv)F8|3R9LTOOdol`H;Iw4h-31?&wIB1ld_PpkDH? zWu8wygeCjBdSp6!+=n$>mJ^3}^*DHQ${H^Aap{5v?lCL91LJlH?RQKcA|`3Bn7TZa zcOUFy^hdw(_}`^|he|=YyDUKcjNLU~1H$oE*}rb&#BQjIy|1Y=pZ$wdmMaI8sYCEm z8G%>C<>aFt>ZZZ))eo|RVtBwY$Y#4RedrY`{eWJ`RVTs-X=rWO;lzHyYo0)7>xV3{ zA(VL_;xEdw#eBs1Yo67=f7owA*YM2)gM5*Vr7@=-9^by^N4`*6i2ckQq}7(z&s-gt zVdY#yY<*H4+!06 zLeJSuAD7S_A1NgUORWk&12z~LzQwUTtd2AQ#?QXu(P3H=#uA? zTQKbiO~j$&OUx{pg^yd!1sXjqPf#%#Y5;!OeikEj*x{ugUh>|`oBY&hzxpJFHWI{L zT!9C3HkV1O2DM)eNbc3m#yx5p@!0m5j=2c->WF-%LGC38S+p|LS+wnK{W4gIT3PsA z;R+6AUzZ#pS7L#fVKM}4>csV*Y$!w}_0_9o&yP+G-RtrnE?s z@WjY;Fpa7=9(G{Td6b(s21Tkwf^()=Fb>60wNX?9I%MT}hjkF&=OUFT1?gnce&d*f zO%oQ4lwC4YG^#41Gnezp$q2lQJQO+=sw6J%NYT!U8cN3>6#D+nS~DxGmA`W1g1lm4 zh$RWX$J}Cph*2g1 z)P^nT+Ru5*|19EHC6gd{&mo_}K^*n=hgV_3MDdIrQB+Jn?IB-tY)LEeg;J8KaeA@+ z`yd^wl1y3=3&b$Jf>VaKEo!$K*p-YvjN!?l1{QM;IAHdfYM48#wP9S@oNT-9qB+lK z?JuEE`CK)fq$!hcPK=O|ojTRMsD8_$Z!&hGt#WlOEW2OhP<4?G^2xr%-KIUBX^N3I zo+zA|{9}TY>QIlk+5)VsX|vaAIH;1twO)iDazl*0D^#@8SUpu1;kBsZPE>}t+%i+9 zAKjAFK<>{@C$uaOSjNlOT5zt)cBFvl!-c9O*~#3&vBFc&j$cGQpKmkLX!3JjkHM}P znLhw45iNERZUC%C8R~* zZG?_Snq`NsNG2R~@p8|c{O+Pr>Oz$j;+O~9aG^Of%qk-W8y+1zeM_bi3CL+pr`-A` zTbhA67jwJZKHq*gU9>QsI6l~*_J3P@82Aj$0W5~klPZlF%QZ#wwVjav>`Q^q{5Tv{-Y|54LrP~e3CAKEEKjoS{t4t6RC^VFw= zAZXIC>2kh{@*2nIz=2#XiF}GmS9U6zW9*j7QLlm-u7UG&XumzQ&Fm9yk*X%M;aqPY zT#_hP{*ld4i4+-FCkz=gfu95@FG&_8r7?9tovjGIT5$)L_8mz5W)w|Bhmc~r&>S@> z@6u5)g|#QZxY$!dBov?}2;N^kdEpP9Uu4KIK$Ig@%QxU39zqZ*#Z=_Ger)wNWU3K!$%e}X_zn<(EBOCRL-X^)2tlXK;Sc8!e{!^JxixG>@Y>V zedUdeUd@6GB)Gl%dgX*GZ=}xo@uv~Mp^q{_3N%-sQP!$HiNG`?_^td>BPtf z?^_XafQ8c=XT&aT;QH(%f<{Qv*a4@QTDM=$WnS$?9%ZYjFOc_ z%TMnfPb;^NnFt_yyV@_~TY|tU7n4K#?q?cy;*+3k&mz;>?SkUBh$8f%{&nWU1A`Yf zqhKtc+<{;4`yUEtByS;?AN?JWt(3qM39$0&$?v$$rEqU2kRV=+=q*7YFF>3sRIfs6 z+C@@5!#p&TIBjy`oxq3@a>*Mo*>{quN-#29Hp647hzxJxhNck|VO-NaB|1`4!A2A< zIMjf&(074+Q!g%LsiY`$1xx2Q%D;ZxAU(^9_8&j)|FF&IwgbBK6d)hs%FaF_YO&Gj z$sfc~$gK)yE+=an#?UK*YocJ+Eof;TBJOZ$Qi#zEcXo_GVyrR?#gfS}U5JzK>DvU} zG&^+DeWpV5R(sDz$vedO)+Cf`-CT1yRH~NXQuN;%I3s&-&n;(WIC-KB<8-CKp&1pq zONbR?akfC1wLZIKz=|;M3dEMeMoD43W-(_T4YVv&TvAtU^s!txrA`OpVGerK6$s`@ACj ziO2$bp2oqfa;`aXWAQN?@cg=#|IGfxhZ8e`!U$SNDM2A+Yvu=v%ts-h&O9fsY5=PY zV6$Bb(G_@V@s;HR#eX~^0`6+d{y=fCy`y8qvvs_at`MrXnDgHSF#^=5-7GF%YSd2$ zmdd4qV5bF2aSGr9{0ZXGj&$}DzHT2_E&l@WwyUkr$l$3&Zu7jfW{Jah#wl0kg5eiZ z2s%BwWOoHR;W#>j6vSu;xfj8QTv=bZJIMj(x7^^q7AXEL=)p_-J=?xZu1cgEL1$}U zfh(f_59POrf%cUuv5I~2?hPfbbl^uy_pnYLH%7Qu`FY+xg&Z{mg7;wH>7jUVpO?*+ z0fXic6fuKoP6c#2Vx`s`HMN8VV1ukOJ~Qy4wkSpo-$o8ul7p_c|IR@`SU~e|vj5@< zx0Z|d^F5HQTmG}&&y9})H~gCWaM>%3yloy6__R8}K-=~3^Snz?_p?QiQe+O#izj8( zpCLGe8RH4w(0zv9typPxgbYrW6jk_=@ta{K27pLEq=fvD^Mw;{`|W?ikvg`wJG>na zE}bhS1|l=?@ywr2`70#AG>b7T8%|RmQU6%HV!3J+*%Hj1Px)K9d1~Oo5vDzlDY}Xw zU;Uzp8=i5<@7}_2NepgKUhkDrREe}B5QABtnH5y0Xp{f9CL{RWyk3x;&n5Bcy;d_d zy9`zvBRV;=%scI%STb7n|KbpsNS4*1z#`f5*uA%t)PJv{%i)?i#Ga! z0e7FCWpf=CbGBA&?u##!T?1Y}R7vq$lHXZ~eHW`ZmXHq;U_!U(VnC`O7d63^Cwnr` zSdp)2X5bghQx`AcyeY$sbRaBZ$y)&Nk^0WfaKV3}K^Pgg35uX~LmJHsbjSakm<2>> ztQN`pEM42Yaf>TT8FconXN-Nw#WaTfN$v>{rHun%mPdz*Ra;GzjH&WrVIlQ{j zl1$&jPTb0)z%WTX`>bc+Uiif&herTRwps71XwIoxPQ^*r3EbYrKH>VVY0sf$j{+(6 zxu46mPWw`wpi?&Y>-(70>iZTqWib;N)<>PvxxDXVT&r8|Vy$Vt71DX%KIyjo!Y~Op zL_jr7RL5&Wh>}0NQiyT={YkXbsoa9shQExW*gNBM0}15#-;NuqjNGxn6j+@T!)*Uvxy1=Sqs{63$JJKFWl{l%2_ zYsg(}yM64VoLD#1@YB2Uv|-)X!Y@L_WnFIvF26J!k6K~_K!>@Lhs}@e)c-#4y8ow@ zC4GoQO)%uk#e8o5gx~8XS4KpN71~UnLZ~nsIP=ydEUc%gkjkJXMb^`3ARVU2WXUf@ z;~sF_ngGAYxym8(jVepp2o~v5hSlzaXZC115+xE&{zGjXK2~{iNh^9B8=YtQ+?2M$ z`;{0u7#y>WcyZaeT10Tno~V@js^@fJRa|}!iQd~puDJeO=wZhqcB5Ez__dk5CEXfO zGS@;i)QVJ<2alLlS$}1TP&%-PB~A_NEj0VGO)#O7Jhtg>v|h0yw~>vUO__pI z+Y*|KWN*y%u_xH34mf_p-muEV7s|g6YTjP@P2Vg@5G{3Ah&{>~2y$p(nEj?+J$>|6 z-TdE*Lr~J3l@JJr2+dEhM)`p-~xwQE3qF=9-cm>rE zG37F{y;l>latBD~^Qdg?_5dBK63%}+ad9f)Ht(t2HgBdmjVN)n=QH|Fxn}c|^k4dt zssOnIwdRtNW%TM`YX2rgTvoczWpgo-d$!2w{P2jM9|+wBD^VP1j-DLyM_vvo(uT(8 zl~V}1QTO&spHq|555nIGg)H`~YUOj>5eJeU58zb85&zh6;vX~x_S!)bZym}IyhHZ{ zWFg36c?DGD_LQmMY?dZj#j|mJ;Uloe>4@WgC-HWApN4<~Nqp`-=Hktwa!EeEG zKjVKvomA&Y1SIv%dP6?kW1VZWJgne9TS{kknC_qd`ppE@fkx06k;uspxn6^(gQR}D zSgJTEimV@T$pLLCO3M%{)5{DLgllQ;ixIR^uF#-CAFbbaouWj*3Vc@#FRfxLCmN{YYPQxK1Oyjsm4^Vv-y=4I4J zdOr~BLEq|?xLbPQK|}5};3U85R(oL`@p-?YSLvK);6c3b6>Hz0Qw#kvhq*yzT9O;Ffu9;nO?$;9Kx2bdz!LOt27$`H*k*D$y;ScWoB_ zl4VBlTXuHq zHj8*^IFES=^9dw9PLO?dJTWV|wQG8zgqcAfId5iXXnnPOorQw~EuH^9{d=HdM|PF- zr&yf_ggCaGatsk)*eKDN*{%!GO#RKn`XL!Df#l`g8$nX^+0zmOf-E~GX4efOXo z-h@J+h}^Bk!RW%3=JkcgyZj@|eZT)j2kclS!l>Mg3Hw52{fCC@a{1(C=t*wLEt&WG z(K%g92a3GGR0AvVaaG2ik1kW>krE>jKN#cI!rhNKgn4g`kUZkz+PPhfk6Aiy2$@o3 zc@h;%o1`kH9;L}r4bK#}u&*ypL!KE{Ds6Y@Z%4&<@<`-HjTW994+uI&O$R>zR%JmI{iHU1$q``FGxya35g>dV%a!1hhPTcc-Z0>A{n@utR=wWaJ9X8WJPwWxCDi8GZz4Op`pdj(z2@8i1xp*j*?WCH&f0zUXS*I#XzP&+qD z4=*3zZmdj6X%sS5!d?pXR`7KWa#RbQ3c+8()c$ct3+6_ZiondP#qrU0F$BD%r_l+| zE~gO9q##1Zi`*A|vKl*b?{}bb-?>;Xrg@SAN#)Om{a|%_Asngw*RpODt9^dXZ*OH^ zE7Y(0_6hiNEZC&HBtDiD4Tww8NbIrd-2~2v9^LkdtH+dUR_j!Js%W`Odn;uQ>h5J( zz+g(>LJs+UhWt~->bG2yFW<*+7q&Y4K&%TlS`+Fovf^frKTw&Dd<8pS)Dg4__S>1S zFj=og3-#iNANI3gy+L65d7ZF`*y`!_HNtKa5)Rux-ob z)v1!N*7o~NW_%Px81D!RzY_v(IsCzIGm*>n6EylwCPPe`ZFX#-wW=l+)6Z=2;IYmz zYEE&>+r7;viKgmQq1w9!)uUcL8D=M+$O^%gGng`AxTT`K^-!-}Z@UlK$@Tp_0*uXl z{G6b1UiVebXX)6cb6IKZXChy!&jxm7#As?GA)(g}{a=wRcAW$bs?{=zSIW-e)!*I1 zaq8lj&mOIpZ@JgC6=PU8w5_P=&Wgv^6}nlw>eLZ?cO@=05Q9hExaEE%l3SWr2uk7d z51cpP{Cmu#11g_$H%@37eiVDDNy*>*5buZWt~inJnHM^Cu3X$e6x2TBIb;hQ%OB_% zpMG<(ueP&lfAtgd@3aWfrG(|@W`b+%s0AYCmVbu*am=P9Klci|3igm?3qhy*&{1p@i}o&OC&+WlyFWl!9&>UH@EZaOC7^RVIsgWBeFeo1=Sf8UZexz`5CU$!Lqp=LkqZ2Xk| zz3|n3vX(dCdk8JfJWn9f#YNupjj9?VOwweWxb@eSL$1$VCbvb(PodNPHKbqM#D$I@ zw!HHwdBW+qYMt7^!=L%`Qk%e&MC`~wZUNIl)F7Xy}t(z>0vL3?k2fz^qES{&oGnzf@Dfr z2?;Fp5m=PW6{^Q8M;}v-|0hYR#<4VdhxKo@oyGbY1Fvo{<7tZIA!U!vTdOjjPhKgTHH zsJxIy*Pnw?dDmU?i7%AINx!z_+oFw!|J9d#KW|yX)Z)E^B@qvLEJ;+o4WMx(QTg7% zCb1sSc;c(y8ieKS@s-lOt}SMQf6fLFg+=Fh(!=(jyV*9?uwZhw6NoP_8Ep6Y*fzOr zXMhVdwiAFYf420CjIAi)nl&tEzf!_K;PejoN;uMUn%%%LI5`L19-r#t2=hx1+W_w- zzl3sxe0m-7h1TI@dRYkx9Ptr2n#>=n-y6hKKsum+B&p)((rDjV0BEqC7Cmt_VB&2x z5^n=0Uhel_M#U++uO{9?;-)Fhv2be1wF!MHG=H)zp zMdhh!IfXbU{B^vLF#QqvS6xq`0nVn;gUkRsZRezEfDWw3QzZ7Unb>F2=<>7RrBfzq z7ozU85%t#-mGaZtSZ(GO6kmzyCky;TRR>r|oYVedzJNF#o{2l9iO(df=FMp0X0^Ee zhFQ&*f46E$j85rbwOwz1Tnab$|-uoK+OTt=PrHIp-;IUMg}SxgvSWUsU9` zm}E)ysL=H2BEJpj!EPx2DYYM>ARWakV*R!N!@l2Au88#;;tJ&XT_%qjK>aZOx`Ak; z?OfDj=rE4IE@S*1Rwq8+MtYRpSA(OPINkp72V8nQn_iMOy_{h^mgDbFn9zTUHa(2N zaaawG@0dE=g(1`pgW!s(z#SX})dW$0&$5~=HBwqfzpV(pQVn@o>D~qc^8&8}pPRs^ z3&8f+IlUR=?fc~AV9r(E__N@<*D}Z#?~@F|s1WvPSpMYv79sKhI(KHoWVwbo*HP?0 z2eH2??6k*rOZR)0-8MR;Vd%B{_svbAKFA47%)Pb~(=BogU3$ZC=`q!%f8gzH9n)Oe zOq@QyOM%Nx&!xAdOK)dbO%ZhIUoe;cCA#z&y7ZXp(mynHxRFN3cd_kQQ-Ray(q`$> z?^@O_##+wJ_GCqLx*TCmz2$n-0L0|NN*N}JnGe}K-eh8QlhK?Y55j`#T7A00~vLYHwqg@vP zpviXb=>|JJnm;^s?i(H#_tAuZjJi>F{|$v<9dRD`Jq}zRdLDlyJ^nbudKgJmL>W!* zFY^4J%2U&F6LFsSi)bBT`Xlo9RpgT@@)qJe^-BySpLr5LmlD6ou*%a>;=f@M|E(+W zNv(lwf1t9}{8>+&0c7xZ!1iYa+bx878j=45kzJ=}zSX{2~mHu_o#RMBOjXM*SH>Rf4KhH+Ms_pt_nyAM#;uJL7aFofuT(hv`ApsRq@b zd&cV2f~t`?6NdR*1Y8P+xh|SG3|%y7n6*4TQBZYaP<5(7^%p8nP0KyRDIDetsz$=} zN94aWP28JCPcYnrwlmo@fZUniBeDO=#J&RSvJ2p#DJH7inm;HV^w)`IW*yp6>*DAk zmi#_SKRE>UzUMCP8o$K)Lt4K+J^CASt6)c%Zn_JAhizx7E?zfQh$6$a-D-vSTW`0c zn^y?QxP>^={H_Hq(>>SDkghErW*wBS{d?xxe?ZrEV}&mAV$OM(~QUl_)S|D(4fpbBLdBX zUM&FHh*OFb{uwCz0;f=>NcVv6&XjBNG9aZKniTbr`X}@J&DJn&yu(7kcIN9IxrQON zzzC^pYDoRFcdF=`7E)IO&O(1k0hdKyNG+BjRWZye8;T+IFD#_~6+`M8hSW7Rr2a+a z`PfpJUJp1+{MiCTsWd#y@mzxcsuCGduvzM9u}o^Qe3*4}Xrj{|oT$=3 zw*O}OVoR7VWD#0zI$}2N1l|ZB>i;tiL-lF4Z}+bNb%5i8m-Qmxg) zk}RD1&^djobN<~p57oz)KptZ~9RI_zUefi*Q=m^K(nAF}MVvK$Jx&s5t*6I2sYlJQ zB!_YOZ~@q-E&%_NNtRTPQ^o@DhwLmzH~FuW%DaZzHPsiCgTT=m93eL+?@MGh|R=+0mMSq;A0G6|5n7K)~)lJLd z%eexB@w_N`{*S@)-e`8{Q+)icpLF>*C+_jgD*?d9^-65w=0q29wt0r!E)BUOS!~`D z&cwex?8s*~`CsFpn8{clWB+GagEX`63)7~1EKS%>gKqizEZD$0JB`p0_mMk$EHMaU z=l*E+GbZsFy?%0qIJ^9@18f>Sm3K>(_YAWdGZH<5V>G?L$aE|*wb&b`mG{86drcMI z7qN4NAnG`YI>@pgjLvlBwVZv!%tsYXZdl;g4mk#N?DsS{AT?+nW_3#q{*7ty|4;*g zZIUwfj8FFp$usq=b(92%ShphIaZdXO8?fo{LbX$d>X~5{M6d|e ze`lfk9~i2PruP?_PVs3`7p5~=rao(`a11kbpB!ydeYhLK^ww=wGi~Rbjy`~u>bzlr z0Zeuy7{MaN0s~swj}zyD-vYqqqGy3FX@Txx)&psQ|6~^UAzEMnOVt3DD$aD8PmA?o zdiXY2pvP396)nJiM8|QbOI*k|`MFj%WS=64^kx$e0yCf#>qm{lfb&_~xuv5Q zp#5$e_A5~BSEAUjK(pU7;>7*-12%U&``wlH>mO$A8lEWp3($TAs{Q8qv{)0S3z!A& znJVl<3p|t7E9C*_{W$qX;Fz_K{XV}mOqa%jIroRLjrVXc=K*j0IGFR0H~uG>^N2V8 z7Z&$TGf|7azWtUy|=97wnt@ z$z-BrGD$Ki{Af%Dc|SY6KKzOG5<3VHrui`loyo&R==>jq&M%8#eL)yoSEf&aOyd=q za;8Xmrb>B=q&(9;hCGZB&YUBof3yQ6OigG|4P!lG)NEb3SGq@P*B{z~(nX?|@df!?b9Ct!!*20Z9F- z#ish+3djWPwwXi>A;B}ZTVZPA+?8ao}t92cI9Vj`^hDnaZqG50WRANh_BPG4d6dA;I=fu+2?@eH*sP8VCR%^ zG1G%N<-9ST1mB&{1)jhJzAOZOSx7p>Qug84)^2(3AjPFum<;J&ot+Pw^=cuokQEaT zVP>)zm=(xbAY)*mjDbZm1{VKhF>of!yQ!SOITK1Ef>Rgz{8TT7D zlOTnuBw(M-Bw`4ztUqG9G^x6j1)Sx>#R4OzT8@$xp3VA{QQ~G=orvYE9BwWQR}Gho z7W~$?Kw(BI3t$#oAVN}x@OzfMn1`_VJ~Q)!zWQ1S@XcBXFUjSHW5p+#`$>5+zswKh ztd@RRBmJ^g`eofu=9jx+dWCVnWits<_(cNVwwXi>A(5<$0y#BYpaK%ispYMS&|1%1 zlc2SMw+bOQ)Ol{YE!^~~5H(Hw35!3r_~AKNa1pTr%||Ttr~XTGKV`{}6!(+rfU{9X z!zLLGn}_2A=*f)Jq2ZipL=Om+jOA?c#lu!N9>h1F1qMHI0pai_6K*jICkQUf9jwT; zBH+{`%_*#O{wgQB%^(Ulo$bR@JgP8>>PwLd5MW(y@B$$WJRg?k)wwTQ$`_ow$r1o5 z&qNW|<-QNS1vV|306OpR>D=IoH|3S+s_g-R!FId+a`&)b4R(`Cm;Or(`l|~4T}Xc_ z)Bo2vgGS%f0U7KbE;mgK&U<*rPZRkKYi6;%!{yOi@jYuU&8L|(RjxE4Q`>#R&25UN zB-*M^Cu_Mq1&w~P%KenKTEZ_R+AbtqBHr;G74RQ$;he}-w*1V&VSZoj2OSxvw>EQiz) zIi!wC^2Ln&+5o3CTp3dG5u`?}k31d{UA86Qw4n88vRL?avG|TM-Ioj9F zmw`Yl5}3sZ{08@58yAx0DZzw=#v(Gp$3LTFKrDtCy?7*Ce&|op-yt4O4uA&NY4FO11aOD808foMtSTj(W?4@bIPyo zX^*mC&-Cr^^zD@To*8c4%}lgY?$`FSOs16|Ce!#=qL)CXvwm&Qc`^yXnM~)0>kkh2 z@cbO(wCck+ZJ^NyQ;BoIul+@jlMsh->hiSjmfH6Wx9&^r=W%bBCinJROsdtcR3Sqk z%emys8kbE$Jh}-fT=7xpHI4Qm6t4OxTr)%ALnvJLQHYsg`XLl<_$c)GM_+<9&IFrY z9}hX@zMXSZu5oVR8b`X@f1VKdZ_9m4Nl6<5&TW*SjK#!niN*1KyNCVyvzx4OGbm3( ze`wj;wZge6z-aKqoXrxhp>0 z*n@KJ4A=Lw7z*6J>&0`wjOTm9tpOR&w70b_Seh!+l2}K%D2kDIdpliEi+l zXRJ;0nQ32`wvk7nc1qjUsaa-s?n}zx8t@IS{7m=Ph{YJ&dy~v2w2)C)oNVP(5y&aXlzViU za*r-k?$KrbL@TFzVOqtwKeL$xDOOGr@VU(-VhD+3tqSB!&Xg;sDVcKRG&NJMoQg8# z%4u4ryK;J-V&#;n?y<1ERmmMGtyUFab{ByFmxC5EdcjSE9EIC#CAX0M{5JOn6Yhx( zeiV)ahinl`UlAR9`2!NUmY(j5jv1NeTAE=f7X5&2^f4Nz!?foyIDa2=C*KAnTsR8C zE#UF6na9IcU?103(mMXcWZ^I=kW(zfVWtd+Suz}Ef6Q<&sTT%v=1A&uCG`?Xecnf- zK1iefuMk5ep+ju*ydz8t*pA2e2;-Crq9DRFbZWp?=K|H7UX%!4E@Z zT%);tkcEt6#9aoxo5&%B5fN#F`pNoXWz3s&3k$WE`bqvv{CZzt3lW&$<9cE|hil># z#ZENDgTD6NM!W~o2YF$UfK36XG}D|cIAxh`RVmNJsxm**YL!)G5w9wXWmP$dRplU7 z6~6zoo%2*?8HY3pn*)q_!dZq6crd_#6U;J9FnyM>gH4p=Pf~Kj3gn@Hvmn!)WGu|o z3-e+A(9Bun8Dgb9Bvsr6{fo$Ln>I3sg=RQx%l3}Lvjag zr-%9=YuO;CZGMhd&V(=FJWKkNtCE!$>2Ip*6c-CDht-C7Is>w#{R`M{bl3~_@&lX$o z*&=7V+o#8gFn#<8Y_!@`q8X)~Zp;0=@+4T zJ6yWDOt~ebOV`6*jM7c^X|z;DH~Q+)rX-5;sA=Ma@I2A+Fg^Jw7$=Y26GrV}TF34@ z!B^PY$8v`&%r+ylY9{#aa&BAj)(QeK^_2YvDR-FX-2Fc19t+drM-Wp*5ofFJ-*ybr zdLu~N)gV2f1Zle#r0oG`n?Fc_&34bfJEVUbGOZ`lzbm{%q(XY;;&{V{WcTAOM~6ykm|01GroJ~JFp%_N!cMem$>~KJ-F=z;blabt_PWVw-$zMKN8rv7DfjaK$%}x~;g5b` z)9IP^j5O`pOzWnM{&hV1Yh?6a$1u6BhDoPSkGVEIRS404&QxM75z+rbM*kUN{GQ?_ z-=LFn=Ldb!uL4-k`AqX+(*-xBt%Q^|g$NABG(U(;&zekcX~r5G^aZL4U^y3kOuJmB z%W3rdWFjya)3LzxJ;wB$$@F$EJJnuh(;k-a#sz&ZKfTR!rvw-ubh?$%fv4KX1)Uzx zg_ooYFJ~q>)qY#V5&rFA??dZm-$>AZJz;Xz$N2?f{+yt~rma%}a!$m#qPskvE6%m| z8gVP`BmaxU`%OfgPlL*B`kb+z6m+io;}+Ol^OU|Wm5ya5IoHl;dVi5=mrskuHeEB7 zZAzOe;JNlmK}78)-rI!l@TrlI*K+!Nli{0gWK_^-TOkn`&~eMt;I`Bto@pH%i5k@M zk+)usygN8qLhL*4WVmTaboOd78Ro+E5ap%4i)>mrH56y3u<*`8oAyqDI|K4uR)6jr ziUN0iq22E)uy;uG#HxV6U@zY^G~*(SVj^7fOskRaCzFHD{Y>*@`vZ4Iu5;*N?|bWJ zU${s}&2k?4<};6y2&*oJ`}tznlSp3-Um@N(`g^&rDBK?VxIOXtmSG^F-lT+{`UpKs zMd&I~-!7{hf}CU1y24P-bGcLWLhcj|$ep76EIEU$qS2Dc|9_8lBBQZc@*rfEJP4U3 z4?=!4Mjv*p6B!jqMiV8YNs>|FM`QG1$2yCGIg=%mDU!)l$)xCGm@UDv&RI6SISE2* zULm{TUzFPG}im+CM0m_9dl@K@Qi zW;$>$i!cdN?BGkl@(7cNAtZRbxzeUn7|{Gk&cZBwytya~k8m!|!m|?!cDK1?U(T{M(K(kM)5ilWdx23`-3xUPKoTV}ZmdOxUE<>RDCkuh)Hmzd1FNrV- zQiOm6tc);;7=kM6guK0~E=z(rE3)te=St7vmBN0$6PyNiB_khH0Sa`0s$`~G8q8TG zO|@E@YK=72+Mmo+%WRs@EU+}fBuHT@3Ail6Bw`5a0i%MvCRLZ^L1$eS9x$qrgQV88 z*)nC2xJgwfVma%x%n8tjEceBNH2Q2JK@?`B9UCC&GqE-Wo!wc!)0=y;^c5>%yMP8CB|ow`tVvd1pxp)uwg*vyX?g4zVVzA6 zG0-hRXP;k!rUVk~&+^WXJ}~*4M0Ngg;J-mWM4OTKIRM>g(<=0FVffj2b&M_T(j$rPz8>-Avg}G0> zUy;tqdrdLR>7aAmGz({Q!n46iX@gT)*232kpI2g3y}!uzfyQ>frSRXiamq(nQ)Ii#Q^wAif~<7z6WUCS#r6q zOV`8RecjC-XeqQ*MSHT$b?>Dlit+*VloP^ji)}VtH!Bn;`2o3+Q4cwq-5DFeXC3qM zMk>rMXZaqWUCA;Ypv}u0;W_u2&$(M|dVMCu%esiutNXVU1OKWK_@!##KUX5KR15s` zLFbx3@PW;B&%ZJ0-y2y;AE1?D;Fqd_|H7xo7MPUJWSdi_67mwTWg@UWm~$&jo;JUoB~P2jv*c;>J6ZCy`Q1b%`lFpTU!2FbXm{Fl z$80chL(u7$6M%bi0&qV|J#4-`NX*0LR3~FO4}24Vhi=Huq|tZ*5g7bUxzdVb187Bg zc6~|SEz2beYw;n`!o>mSQI`Mg`q%htGbDaNV*EKnq6Yx~ahC5i^OG!jcvkRWb^NIp zQ_o~fJaNe;66b^n0BTH`}RDhF;$0?x#2 zpYD@9k%Zh#q{3|dSpnC*kq@DXAHr!mjjk#n&SbyxQ#?*W9L8y?r+krAep+_YbL@Wg zcXO#G1-y)|31m6bvwdguOhG)l2`Lo&D9kjC_8}Bz`6$dbBjH0R%<)l}n{5Q`hfpZ- zQJ9zQ8;S`wdiL0~Z4RWXx=2oGHg5EkWy^Ey!rckau~+8hDA}$t=#*#s&#~7vq3@L@%^Rvwq;eM3~o zrl7=~>cefc=@jO_O%Z2_j=mhH2$hB|%Qb0=6vHg%a|CIagF&atGz{mn)U(1eX@%w4 zNhin4agMMY=LmxDG>z|mOJRIC=u~I>X2&4TifnUsyj;$X1<~m~^X#(eRW>|UnzoVC z+pBt6fRN2oV_W*wE3}_|Vs8n7F=}x#+!f@xF|pAs9U|>M`>F! ztNVWqPz&>RwmnrJVN*!=*8sqA7I1tXQa9cv=dsiO>ukE3VXR5E@3uCWvppO4-F9T- zzFR{!?z` z_GHU_x4qf!zT1uz`)2^f!xboklH+&w3lvtPRVfOL1W zboarJ>28zy++fZjN&T>-ene6~`q8K-J>6er(+y0yJrTw!6~w*>(=^fPehJYO5p?z? zJl!v$_D2|Gs?+@v@<4<^tEc<@4mp6Q`v>=vfkD?;XkH9L*lD++tr1uP)j%T^D z#h)u%-CWuBQF3KTKsf|D-KO0WAy7-xnQ?A;lKZ@F=0p(?gMK+z!)Si%7?GB&ZogYW-Gd}dQsnjkDBszk6M*9ZK);xBO zYOhUSu$fqw|HRl{aw+KaW}8QOu4c=x_d82U%&w680;s^oG5kp=b?XD1&khfPJ1k!_9WYyDxJ24J8i3U+HSt-C;v*uOBKtZE(dMe z%yc;%ah{sG9Okr`P?EqhKY?bOE-L}kKQpn9Blh8l#9ppsODoQfxr#_`;i1xQ(}FS} z^xPN8FI*p9csaTUCdnLw?cI4s$sd7689O3rBnvDTd)x>a$>&~BBYE-&J(627lG`}jRjQp@c_a%3 z`pL7PGi8J?l7Z3G5#Fw!blS8L*7{E*-XLhjNN&YQ7K~RbmXklmv*~1}OH0I=Zt8Lb zWARx~5?JFWaMGr|%=9x%Y`GiI5|P+z6W0B6THQax>;8G0<}U!L*s%$t?w{esR|3ok zImIJi)UBvz7~LIdevsgLAGM zmQ7FuivoxOJtdyt^Q7RVBdiYT=z8wxZPL+*=HZvQ<8v?6{i$MnwsQ$&g3~BHmIpTmC+mZ<#M!B8TO!lXSs*$Vtv-lUnz6D^&Y@v?7TWIHk>6 z-S36fAM?mG*GE@uTFmZD*R$nio8DXq?rDoSEA>> z<0T)=H2fUM)R?-oV7@B} zNdonL0zEdZUdVP3O>FtG>SGa!y)9w3JTHF)c#BWr`fNI>f*sllIqQ++b`~^$fX{IU zd--g;o4e%`%y{10E(utuL47O;I2(|R`2nCEO3{*^04j^nWvfA(I>hll0km<1cg~1? zAcnDGzpZuSOK{`Ep@Xa2pjLHNGRxWQi_}01-X2|D&?ulz1{&a-l$e)3E$N2kUVfz}u z&5h8qRiT`NBk)<_p%L;~;W!#SHqLlf$msE?+b8721TiN<@2`aHTkPiJ2@!gFIoz2U zz!k&eywjF4tPcB%;E@sX@#cb;qua&>5QQCJ^L)}GebPF@s(b@|vWrJoql_*@^YGi; zI#~X4^vPH;@H@F0O+t-?A|CUJ*zSs03L=hGL_F?^ctVPJa)h;2inyDLxF@NIr(6+B zK*W3@;u$XDepkeam^w8%`^X}|7#DC(qX>Ih3jRY8(2$us44GNB=`>8uxt-zrHz?ZlT=n8aVeGI<%>7}JyZlRWu3+}e=DZc#&A6V!6<_@d`- zQfaJ&6#9J>?wKa{DDZa}1S~QyoS>+zh|twFV7xOC=l(}2DiZ!|gyAGFD%BBMSQE;5 zAdAXFx2QZ1MGuVi6_vB1sI&<=ad0e;(97#!aFn>iWm$yoVRz=qqB3y|doEudq0MY2 z_{f*AAG-nmBorMxmIw@Xtj!C@r!pL$jj(RNk@$GHz;dylyV-gQEOVcWadVlga7(TK0NA6s(Djr$6FK47f@N<5~8kG5q~V z`6FE=#*RcK#*MTdN+tGlB@Rd>1eW~UL#}Xv+x6J+4iYVi(9LVv(b7oH_>t(x2_sYa z5u>$m%v-Kg`pKq{Q-E?dGoAieRHpM0DZp_dfch+W4AlsL5-(eBFrNVUg=wz9U$pG0 zV+JYkTSD(n9LXL+e~vI@V=isN0`1Rvv`+%<)X^@Q z^)`j1dZ&cA$_dz_F~gLgos47;GP2(zh|N(?3(JUfH$yW@eaM+I(%X9CFSc-|8sf0L zTja&aG#Mk)M#3dgmkSl%YRmlQbRJyV;r_?FH z(vfDVTQ*WoL7xncu75%hg>BM#0Z=UiV8zI!%O^zh@K=s>ALb5@-gzwS)64DC!}6sZ zU~|W$DXwh`IjcsR$1qoq)aPRi1#YkLBwQ;cTsP9%DuJ5P-|4L6?awT!+YYQWE zHw%TDk=lH1?wBuGJj=GZIr_4KY&fdc=cx4`$Ilyl=yj)Uv*Hh=6?;gG(~fzT zz$kxg(^FOKBuK>Bs|Wg$G2)w)`;0*+?)Q*xPVt79L!sw&WkuB-a+=H$%=zs1!s~zx zujY|fryQ&jorw@>4HQeDa&3ONTy`nLN(oI}18&M`frH#MR+RiZ~i z&SAec!0L#n%~7dM%g7`vQ%+QANXEB(etBfmI_8(2h|_BN<(?%n(2;`57YjL?m)t86Hc<!pLwtHpSLD_#&AJ2Gb>VG0z&C{&}I2&?KDl;Q|B6}v} zobsG}S~|HS*(8WD_5R|I5r_-0p&$yPnGB~=5?PPNl zw!`KLeohL0exx<+O%%L^kF{1g))39Zzu>0wOM|1adm^j$aS87$4^TA;VRaUAE{-&x z$aamC5Bm%ud&o^r@If+ymecJEo}OeXb5al0C$bx%m~McKxya3-brHIp-C3+XkzL8> zmYxp!6WK@V6WN+EUsR;KXXKrG4CqkT_5Q?i4_}ZK9NNZH(V#_g7=WyoXr#UiL7pgKA(?n zCb0si^i+EyyCFiyF^^QZK3X54UF+e_68(v6ZG<+g2lrf#IJflFRx5^`bK9s_wKxpp zob5B!PPKepBt6~}a^n6J4~*`3PP;3e)<4oZC!MB!M70)|K()985^SIQAE(wtXgSm5 zO2oNmY9c=*+!K-nUib;Di_nL)>}wY$w%ky>5|P*g`Z=tN@*GwJ50tGDdb*DNw$vBL z4_yx)92~8=MFa+PJn~HPSeoQX@;DY)F7{J5jt>lu#&3!^zRM-e4=U%28pgb*i1$p5 zV{s1axi5~9!wWZ#b-{Z`KW8&Gs64UNtuWw=rjpLmW zx`f@S(&M-xLSJkI?_Z5LV_(z!w-e)d+-rIq@5DI1$Jvfo?X;7}u~49&JP0}CU-QK= zFq-h1>$HN`&}kE2vnEE-X>HtT$E4GCVkGaxNEVDI1bxS-c0}k|rpvX6Gs)DY4P)^^ zND?UU6WAW1TQ`E~3r*|}#J(1h*b{?^s(#o1*V~(bS8-i=;#JbSPc|4!l|79FuOP7< zh0Vqwr0FD`7$@U@$Jv~8&vZ|ZM+Vte3=%DgB(8M#urEUFyVw_recyKwo5ZdKu?PWr zfFwYyk45bNyVpH+>p9Lh)5FL2J-w=Xe&^h?{O(d!ufV8ZMo0a<38;J{wrT{@M*T86 z^oj-}ku$QjHtLT+PQL4}QNmvZt)qqGuAbHoG^TRYh#TFbOjA`r3f?^bLA(r7WKIjkNOR)J|9pE zN5;B?G_WvYjzZ4F*4|NnQfpC&9wWo%LkgH54bX5VxAs=zlxSV1P@`hi`>zvF*%n-P z3*Gy#6VM`ZqzH`qhv}&A_5qIi1+mJgU*6*_#k#3lK&DCSmg4cQ-eeMFbIpxMp@_$f z)=}A#NlEFMG8&8Vs9(>b(M-)79jlCH1wU;fqhB-1w(D1PNh^iSA ztBm^43v;y?&5Pm%iZnJB+<%>b29t;syZ2uwpt{ZY$Rf}E*9mCnW*nYt3C?`T5fz** z7kJpRf|ucAs&<^}rwYoJBI4tavruPCtfa_Q>{LVBVvTh;-#tfg#O zfd`MR#ya)Un`=qWi4mRT9qv)X>93L4cT(C!j>0E z??qF?S*aE0Dw&q!U$X1*fWbuYnbof0YlPuzTN}mgxZ%|_(5FP8xtJ@zPS)qxm+az; ztUjMo3#TaL1}u!2MaWsNvE>F?h#n)u<}(U7H5#DdY}6`oQ?xEqsA(!&)+V6iJ8<1C zmX&xe0j(fMmH@WAK-tpm17yqTDqCLZ(NVE(vlfso(z;PE*^BU$luD4B+1z++6Y<#I z+PK=z|C$q%lF~b5G)BH;H=bwFcuvhLR9WCkk4}ntJ5{!1YouKoTXGG%WssoZVerBg-ILo=HIaw&U>JNO1N-j;QBs zxzEFv^}GxR&^nx@`l+6>rHJ@ae>p5F8 z#j|y?JB_E$q%SuUoHB1;j&iT=_VqI+lOT7VxlTDIoN_#RCNn81eL`k(B+g!bhGp^~YUw<6 z_8+0kaA97#n#pXHRH0=u*H9@l85$lo2U9ik)m0MoLY0=uC!=_QX7U0s5H;et*>0S- z%iVkA@!X6YSphS-J^>BcjiY}%!KsGvyT>#6lqZw#@k|~tGcodhAh$ambo1jhXrblh*kg}sMdZ_~&97j*Cy4a$*oULW^QAm@VX zuZzN8bG*5D9X(og0r^A|AJ+vn7*~(syJus^aX%au$sd)Ojn_@oaeN zn~HgN^;J?tV@s~#o(vK+JZz4nYF4S^KJ>zUEk+Nbc!BzJH5m8r<8hxvWVMXZJv{F3 z#Yfgawv6C$e=iPCB*A$IIbuXAW6Nd_Te9O}GoN-~jq0ZnskRdF)5v+Gvn5va*bUkf z5wxeRjS=7R-%}!}?x#?^Rv)(S;&Gq!V%(odQ-!go;k?i?c|f9w;ch(Q9Wj{%J~1#+I%QBIcgo;IW1VnHcjA*2 z?h+;=Wrrk+Jl=^%{Ua=o3#gqN)Zuty>RXC&L%GItB#-|WwQg9VNLOfG*c?sKHbOMD ztHTq$={h1xS82L#g8sWA{5L(7+%ok954iiuoob0*|K&^2>j8VgzcT@HBbw{J0^z>V ziN?|I_!9w>lG0RT!8mH(c6Ck&&6~k> zx<9TtQ<}F9k1A!Zd9$D&DE@egzXNu^y@EfR<6j_EnobqWN%W33T)|vfz8=l<KF$?B9H?t`|hIEoFj zQ29ZeoevY7;zW4!0w2W|C3@~i;YBi$_J6k;-+6Qt6A6DCIg1muQ4A|u;wIZtk!;Hn zjj%|zi!|BlM6%7}qu4w?iZR7|^eOv53#}x5X-;sKd;22Bq1#9Rl;{8hEHvsMcKr&k z^hGY+oFJt4s&Ow)ZKVWmr53nV-ZCZvJZ}3So!6U&e&_#K3r#zWJN7uiS zhRw+|b_X6zPO;Dsa%2mC9wL5qYLa69E{)K4OY^72*+qLzCP8k;gZ-i=Or<6q65biY zA7xT?G?|5Q_T{~%Q^Hk+3AcYlb?uc*4RwX-rJg$TumE-k-pLlKJ3@YZP8)dlOZ#Xg zNV^ZnW*r@Jm&S~IzEXR8WeeVj8&x1E5R07sQyGC`8Z{!OJ;2H z3HsM%{8u^s>xzl#>Qca-{O6nIHyK@hi+y~XzXa?O9Y~^MS4iwiiCy&a;uVxN@Q z)e`&EU%+ndi|sz^Q*5EVCvYrYBqW~}%zfsInA_OzKF_i_^)T7am~Nq4N6F>-pmUZ7 ztQQX0-!Ynfk-*m!n^TXttqrG!H?1dC*NX=CoHnDP8t66spi@iFHW2QhU8UtRgNFRL z96-f0i(6B>N?ka8Fd8|&`vB!tFzgT;uDOOW>uGmqQRoVF2BY@WaIR~V(c}e^2K&k1(ByA=JtXCQ zejsydF!`3Oo7=K(?tGbgrzBPxYnZFrsZX8lO8pxp>t_bL+)X4;oqflQn5ADg4e$;v z*mhQsv{#?_RnKE)jI$TxJdN-!Un5!3oA&vhRvJW-bZ}Nsd7sX-+ivx7u6k8?HdBr3EdHD37?5j@5GY#halGGZFGiMfh=IT`Ez_U&oha8i4}7i3HeCJ#yy zo*JAaJT)Zguk_Rox@{~xH7!U2L@YjvKO@+@Q?Vu~E?oHW+f(VQCeG+m!!U(-&AL=psinm>+b;Bxwt*c|m7vl6yOwsEYAPQ5IMy_yX$$UtrCpX>eX!V0m@J z1=a;^fpx$_BTkc-JHRX~=UF(>lZE9x3z_K1FhT;la5fuyhT42ry~hf6GXIdRBBlh0ti6RhN=f~S^!5l^YhiJDaU zI?;m`T5%d#n++Y!)n-e1)c3&$L}%D zJ52MAAPK0DZ-Vk5?0bUF4&8E$y3@6Mm#}`IAU^%t<=ZWK#{8+i55 zWL8*cQ4M(k0r%$}LgSy%Y^~O4{6^}3Atz3`Q+}$AQut!(^?Pcf-J)0Wgoe}JEOX9) zlqHL~vu@7Sh@3l@WULlB=lS7;TdaKer?BC^caW58v{S+4TIs#>(t8)aOw?(SKG60g zB6LyC`WP|K1-o2K5_=L=-aQG}wl+xGt9ugad0Z$#`|=vosY}xKB*I!?B79GxHYl9% zP~DS=(7A~S#3k>*;#}4OaYZr}GlPbB2}N#J_as!44X0jXyao@BFx6*IqRK)|#4j@} z;<_)`lQ;(!NjkBt$sQ2Z?GP=SS+E!~?n~A^Lb-OXDWZdpF!P zzA4i9R`flI2YgTB0pF8g5qvE7Br4*FX^-4Ji5XV2vM2E*>Yl{uVDfG0sXNkBcmG;X z-JyFD!c(V%BtXRCqxds|&3jDtBu)i!;le3 z&SU=$XycINjlCM*v4C+gW5o^5)piOa2x5G zA#KEKMcWt+ulYan$E3t3pJfcuyLR0|qr&9n1h8vU(!?{ygW|aGP$@i=uf(RMwUV7N zoZ%cHLXt0&?Y6Zc$#;)Fn-{Pb{eg+N@91EJ}M?B9W&EjQ80$aIis~`jq%t;MDXFUZnVaU zXpL`Uta_bC>j90{LlG?|B|gLED%z{zY6W>ZG(66k&_-LO42>gQ74jqWa9_31e&Xec z(91Jr9SoP!BQ>ASPfJlO7#ZhGQeFBP+uYJzN~EMm=L3)C$2n6pk52V?bUyRwG}oik zg+~k97zc$%o2f@136IX_9-YrUx|;SWU-c;LPC=YALw9I?9OiVpA8mzLD-}S z`g3ubcysu8DLqzm=(4ncLP*6N;wkZFU$#f4d6S6np>~`vbze6Ph4R)=%4@RFDngoz zb;?`fYB&_IFZO35fbxPy{JOLR1!id*?-ud0Hew=rFklz6ayMuzM9@~YG48zX zw}rrDr0l9TVuN@@(7rc^O_JA9PmTvYe`KM%R|2=m56AN(%@#UAj_d-v|LfDpZ5od) zG^L)bkmI!7|Mh9HN`t9!&gwSW?*EiHXN}vbwW3q&+CLL0>^djpS$4VBT$DY42?C6wwA=22A~=fV=y@F^%k3Jhf0&J$YtR3+*Nu z+C2e#Odb;;H*mRL*dn~JwT*G_b-$?(laaF9WM~Hm?HjXMXqjn~1Iph2z^|ZzjW~|G zWn>3@1zl*sNA`%l|4nJF74x^Z@$UWakmkQY_N`ealOVTv!G2K_Hc}I&1U!5Hst#;a z&|W#)bau7T_WpOb5qtkoSD3sS3jJ=jjd$s|-vcA?4L|V%n)tyeZk6JRig>9eUgk|IBEWNfdcd>yzcuaaN@+~j z>Q?yjiG|h>b%!)x9`^c@K$2>n9w+jyP#qa|&|+kChu4E~&JiyWI7cBQS(hGjE8@7Q zh!fGsZbw?Y@+qvCq49#(6!^oWGpVoY%vt)t^w2^pu8_wsAwlfs^V13sLG0%9Q*6gk z^JV_iq}ZJJ?btxB6l;s$Nyxd*oUM&zC2YPYES(+aRO%DhDs8kW0Tb8~Iz12=bK;zn z+Vr5>V|WRh9-MNWe_A;IO!NtC37;O6a9-R(-9JZ70#AqL#W`p7`N5nx(p4cpR}aGj z3+0nA)W9&5$O-H`DLqe@zK_?mm$CFYD1DFzvDV{@gKiKp-uwXAsry$WzKpJFMUNI> z+h0~E3uS5Tlu`aX2Y*JwmqmSlK?`3QUCRg ziEslHKF)KZ(c`}3ASa5ox-Exkz9i1Ms@Lr`E%4=_Zp%Sfm&Q5QwXimM>?&trz2S!S zrU>h;=yhAp!&=V6x{dZ~ky^K&4lR#!ZtHcsG>&vt$S>Bte9J;b#LIV}m&;|{E|=0v z6zTXXI;9sibXObsBHp2>Doy;@u80VPxTmiQ?rYJga#saQ@n1W?Ca-i=h*w;lOKX8q z7qmi0j>a0!1CH7SgZ87K58HS*-iQSLcYw{jcE+Ra6R|&EB^#5k^5wxeJUd#H@)hik zR(E1d{*##4AMvNLEN}Bwg7mWZ_A2<+6a-%f1;E#5vEb`E__Y{*odds4fM18gug_z^ z*Ddhta`?3feoY78eh$8+fo~nax3REu4Y2Dq@as)zZw>sq7k=FczZOBL=(gMNYYF_i70Ryl1O%R)2fxmSji+emw-g z9)Vx~48G-nZ@&lMJ_g_ZJNWiH@U0wXMNjbUN8sB&*z`^4KzQ;y;9C;-_D$uRX~eK% z#mupcaEK(1Wbv++x2KX{&E4J#&8@`5(X27rBgtq@uh?tu#BdS(?=Za?CN_-c>KJ}G zfd3vPs}=6CCUbWyw4f^XHhJ9`KeDS88c2@pjp0}^;&q|`s{=Q6P`7)AV(Mef)F;x^ zx>xLLH)FVnG!;{NfIc`6;J;5zU9FnBvlXhX#D?vYrtWBkwvi+Ig{k5y`x=1NnVXv5 ztwJ^Rsb=akX=?c^_O$CUTtu4sO4y8}PpSj>PX6%EHTV}2{v?KP(%@T$$&A0wTnFI0 z5ct7-m>S)!Emm>36)HM~RSam$RJkLP|^50E+Kz6&LA!{kO<|nS;5cL>&Z~yJuIVME*;yg z%ur7Mee&S8#(-wTldYuF+>_0L!A<1u&%xbE@m8Ug{~8sEtWI9Etv3(?Z&R1 zjc5y}Z|r!OyvU}`+(cu=re9;b*@_Xrc1E_s?8{z5?A zPp)+{&_d( zyiDhHqjzE*YlX(0#Twe{FE$JiV0RAn1_z4>PL$l+%5arwSIB=CZ(N{w&~; z&BEe7EZ}LC-DSFDfh>L&vVcdRU)MsH1+uX*fCWASEKrSyi?g`dHp`g-%b=LEz)TMd z6mu46MISd;>am!zfG{H0nWdK_)-u~=fjNQ&=C(Bs2^JU@>qH}b6h z&R0?7E(YJOf$xyu+gsYJFq2UU3I4sX`Azy9DFFY0colB9mJ0Yz4Sbgb-;3FNboLU^KaP6xlYCH6WvNS*)iM55>5)DYLlAtZ($ns2OqViAmE?Ux^gN_Wk4Q~S*F!E< zo{b?k0jjL_{C@eXX!--(a+l>ChDA2}nz4+IsJqI2(nQoElHhs0oy!F1o%2 z@DVc{sgnS0XqmzTkQwy5Un%c@A z^BCOHzC8cS{c04@Q|xLV_PRIQmV1{!?G{ zhZ=gbyCa9}tp#569$_;?A7=#M?{e_Hl;&z)Mf)FP4tS)2KbGJdk^P*26A1~P5;oh? z#~A_muQ>RL?j11r(O1!shZy{c2L4onUua>^Toc12BzP6}ODFo!B0&EoEwa1n0CxOU zRQ3=LSBK;PcI;KOh#WaAHYq9%ZfXR8{hF8>Ys6P~Z=tM4o@s?0HW&YI26PJl-G)9{ z2Y`BV^6E~lyARI2s#1=sDS|aP&;5z2yAe&wa9;Qj)eE?=ecB2=y@VC)v77-RFjYC- zoju<(Fa&37?0DGhLZ7QsrcI~2e_gS7P>eGuq|KVJn!zDCRT&ZzPj7^b-D0XTjPA@0 z7dvwV)&1mZA8PZhC#}$#OSsF!yq&1z^Q}QKT(()rYT+Cn(!)tZ_y~mQ9p=CX-z*A} zqIld2Z6KOQaOt^3`qwmZM}|n^&NI#A{1BPi|3@qyN0EJgoO#n^vu6gv2ZYCJuHJ8j zwuNzK9ub+@jjwH<0Av1^*U;JS0i`FSLf#rG2+5m6kiB5M$s}YAeU~qjp91jTaqtM8 zC>6$|XCukmxis)G5`1q9yJ~3+laSySu^->24}$^p-*WVObdDm>$7<-~B>G%rpBP~> z35k9IqrXL;4+H4`%+aT$kY9UVACIn#!|3BR^a&DuehYiZf*2+t(Hk*(8htDbp#KvM z*Z`yiY-2o{KR$5VJSxd$Lp&NljvNyqY`|ct^vNuwf~AX#Dk(R~z{75bF`S8-t&>7> zU@L5451SXmWu&#Yv4Y*yv_U|_|MJ%`S<^7Z)iAAvePFJp;TG2LBl>g~Q1GF@f~lH< zX|94PxC^?1n^?gQ=@VK&!Tmm$FG~5U0z69to-H$R46>IFHJOA&e=g961N8sli#|s~ zpDWSFBm1_7eqE&I2!Q_IIr`ERGPziTC-S6<=4t5jCHf>}ZyaVa35i~h(RnE9Jd!Bd&)@vaeKTv42+0JV~1kWKQ2iBk{F*R0Bb(r zxxY3gpmb%Omiy~v?iVAwcBIK9WbU8C=x@^JcmVoue9<>(=o=;a5EaTDhN#ysKHTcaE{_)H9j_EO6MB zfd7~to37frKOSu(mQ}bvEEbQZlOvVF*3lU42$d`ZXqoCZ!rm0J^Kv{M6;8tzZ`0D8 zV~rR6o&lgf<+Md!sDV$;q$dyaLtJ7Okg!x%Qk6%{rdVgYKbH~ssA4x_ogF@W))cGm zltYo5u|!PWDc_%R)KD7Sj!oVf;ydNLLUO14W~~2Cxkvg=EJ5(uDfhIy8{1`fNbHo~ ziRI@F&{vO0B)03GklZQ18%t~gJLNYajhDxxi$w0A<&;4F+n>UA%J+I`oE;CFM`=W7 zD>S}8#a1kN5bNyIX&md>@6z}ILE{HQ#@b}RN9zct`zf@}0a}3rnq!?(T`jp75Q!Dy zbG0$xL_FF-^1ICI1M!B?W+^;R2>VyaA-zKA(<&gz`Hd;@$5P0yLq$9qI-UG1kwync zBpsZ8*)Ew7!z5(Ukqf2ADEtBd|9g6Dp-Kl;@u*}vF8(S>2bJ+?E;({i(7_~(c7jS4 z0kpm<9hB3~o{dM7XON%zjz$O5L~$1bs6LzyCNer$q|m`cA+Z=pd_~Q5Re8i55O9w9 z)4@bY2T*Kaz&Y+i2Ll2s9YB#mR7|CV%9LY<(qKp+`GlZ@a+eMU1^ns2BR!NN_|So; z-LOEH3P}e;1N=Os1CPk?K-Wr_4u;Xb06G{H0CaFJ9@P-JGRvugrBKP~;G~BRDmfjL z(}*rn3bT^Zfv_Y$;8g2%iS?Xv>EN`WgEJwcQqVy@oz;yJv${%72$h@=nBJv8FK|IY zz&Wcc&Zo{1;>$EbsEJ3LNru;Wy&(2-3Z(FIFCoAhIpg*OA2Q3X}75-7-`$5yG7P#2E|&%y*yEh*t*JgS?CkDL;e zP$-IWH30ipZf!WFlVa=z&De|5*j;!wg9Aw=q^)x?dKI;64S?@QkF8a0y@2_dSaw?4 zdOjY_AVZ(mwf1}5YQJCnMuV|`f5lyVJHn|2a+!f`nuxM z*UTvN<&kCxKJ?{jH#g9wUeXtKKRXZU%Of%`(6zy(uer1@fWBrz`nn#E!bI+{lXH$ujJL0<)wzD5iBYT)$M z!0C(W-3;^s7ZeAao4VqK)Hy@LANsxq{Xjxbd)eMPP=Q{Kq0dt2odEg|^w=(y#U8|?rumq& z&Po=$ACC@^BQ=7>mSMD7D!Ch=eeQ4QL(R};Y3NLBsOp2I82Su_-UFcf(_eJXpojSQz?9GxV{tNs28czeMqv69Ut)9&5Nj zHS7Z#{_L;eiKgMHt6{>+_LCQ;SHn8lhy6gqfAC$qr*w-)D0t?x#Z$_6?KWYgI*N1v zAUS-*Sj zdCFBzQ7ZyMxJ=o0gB>1b>oH+*I0RfhKs+Zrg}&*yFaeb=BR`U6dvj)lEq99o_P~KA zlaLv+9mn}H#Xk)2|FEz|pZuduN3JPpd{tsTV z*E}-a^52WG8z}ZsfIWz%<}tPY@8IdyJY4PPW&PjA(=Br3f~fxz40n}E9tUtkqL?~b zGj)tK^)WW}v0~~Tj9pK$PXO$J%+zw#)LZfB;aqIkMQQ5Icyy8+sS~E|#&FlDWCeg5 zX7W0p*+b2#u|7GqiPw3l3{WM28fx-F-^EO<0%yOjR;;QlV(tw%<80qT-vtXD+Bn|U z3w^IB^w~YsLf;o~CTN8|(NpL|gk0Qn3w^RE^eMJ+M-=)PI++pVmn5JQtH=dBO~Fj5;L1z( z()%VCkqVAr1x>UEXMl#`tXpT*3RsbVDp%ut56cQzo`BYnBbP)492WN00JMBz@2Vc1 z6?124=FXPpUU-=v0}1NbAEwY93X%M#FNV%ueD?a~BveHA`(MOb?R z!`-Hm=K)-SsV?Q#_8`;L4GE}eExFjJ6|J~4M|AxHz#1hA_BgZgqOz7dE=1~p$T!q- zRJBLU`hYXnzlx8;Du!YW0cW01A=iVo929A!V(MCMeGmG3`J%zKK=OQ>ujLllaxK>w zWi98CzD^N*)^eV9O@S^8ZLyZS9^mH;aZ-%INuF?Kv`-k}iml3I+B`*Cf74)~vHV$^+^yiS6 z{+W{>!E`@`)=NMuaKPPwvs_nuo4Q7bU)H#DV*(nxj=UjUvt_PbK}igzUkOJt>9 zBJ}1}kmO?oCG6DPcrB(E2gu)(E-r%@=uBmIIR_)vnU-2l{Oqojlv0e&7*f=6T^>bl9LgaL@y1SsJt zq=b?Lw0t9$E4Q4@upCM_C2a9fLJ6mY`!u3Al;SL*lprh_f}E{-ZDKv!TuRt3C}D?f z)OYZE1g?ZrLJ6k?ru8P!3LG#DIXiW=LlAL|5Wl5S!kz>)awAUgU0xrE8y1F1;oDwH zfF-iqpAznXB%dHC;c$-&^iq2QDktjqXq-?YIbk)P)ij!1L>At8TtyG4hPyz+cvf%` zaIHN7Rc*o)(CA)k#{&X6a#fH*ttiTS0Bw@6x4g$&in)6=bN5Mem*QDXy~!k`wU;n_ zGd1i!z~>jQ9)PRu31|$l?V5YF9kcF6eB`>Y7B6Pa$5iqmfSUp+tcu3xcmley1>3wo z8im!1t~Ud$$%4Y_n2nDV3ab+$kAcXy)cRDlN6bmcIp9xWb&$fK*kt4!^r5gxNTo0+ zG6fMamBOlf(2F>t!8DXyDk!YXrLZZ;pTa!S(-A@Np)gOoLe%Auq_F9TpNACY5t)Iy z9(F0L5D}XIg-t>5dOJ?ytyr$oa*n|At>zSV)I(v_oWh>ah(1xsq?%Hguw*uJj_F*2 z^&EF8?1Z4Oa@!cz(f$zp4breCpA{6maH)TCAi(&-RE0Yffon5W%( z)aAS+v2}=_ha~0^*?_uUa7k=EA~pdMTMbFjNy{>pO zBF+)wqlCEoQkDcXc_;a?Qm+@p&nj(|!UaOuzepPWNo+Jo^VxzFB0b23_qqgBOSE6r zNa30!h5K>#b@HQtL_!uG`C0El)T%K6e-{zlDsReQuN zK~9rDDMTPCK(W2Zx#2?!C4dy5$Ua2GR8nZ}L4U8lKtgA(uS8UJ$>sbW93Q^^yWClE?m}Fb$;nd_f8WQ)}r37d%xU z>Yr$=@KmzGxj4JN(&Qqt^q$~48bkXU{yiBB^o?S15OYcvuYEPlyz4!|lBB=(%yI9DOD z=fYd_fJke#LRIY%^Bi&pwDTpg=a9spSS@k}w$n-M93U|$avl*emBb2C={|;Na1kXB zYR5@za63t2=cACAN4gFX1RoOfv-0 zW1PhMvD_KU8P*PzZ$T;}vEl6?iLv8hazOzHZ@xk%1@r~e!jgLAjA*BE3Dz^Rog}gR zcAUgUwKFbt^xI)7V6UL&pF-;bpcOcv5jh3A+ImD>Bg7YK6!r+uYxa|iwq75I9i~Pp zT;!!NSR!NE`BGRhNb<#k5+5+bf2!anqdfGikT?!>dK0^FFq)3m*6V!EvOOcNeu?bM* z14xni7HTANHI_3I(nAra$XOnWEaDV7i3V?tLRLkTB84T-kuzK8Dy(OYOObO0Mb2wy z4DQ4!avYuKjTiI0B2JP;oFtjvwLmX$!GNGMUswDb5$6c;bs9;Iw9tN%Z#?KbgXB0q`3I{MOX27=F5iZXG2TWi|Mf?cBQ> zA zkwIsp|2Q)Tjx$g!Kj>`o8D~ZY)o})jj0zGlb(|?pJ#HusMhBBOi*aU)JI;&>`j0an z=`lfq;4{v6+Kml%*(%4GF+qMFjx!#Salx+J+;L`Xkk|yqnNdM7&TO_&aTQswSk89H zu%&#Q+2I*yO8Gc5hX!wt!uO?goDr5x3_3e?y2pBUx#P@kG0yC1XKWVZ%>N`Y{g96` zrF@hr<)aMKS^~5J2TTq+CA!*)LE;)AzE>M%Hd$zJ6}f!r^+6RMWhP7Eecn+97Rf&U zQD#3#@>QaY%jhUG%0ijJbvH$fG6w+qc7a|=1G3vfo2oJT zK@GiBqTdhN^;=CQA>mhJ_yrXIAi&?|k6)(YACmZypuI@LUxo4KQ~XkZztzQWr{Evf z@Q+CRa{;^bb0#3+S7P|N6uu0=?*tTgfkyAJg|?g_k6K2fxD68Q5CGdDC~iHYxWfv? zt(P)KfJ_^;epUSuym)es`BU6_NO4eXNzgg&Lvf1%#X*s!K_aG7TpcSU(O`Kn`Glaj za+l(kMxi*5^ok%s@S!+QyOqH%6_Vocl82p#6z36H73^B+QryZQu?bMzQb=(}E%cno zU9g-gSl)G<;!b)fu8vb&F%8~Pg>33*#tTc<2Ayi1Yp|YEF2$V|6nCbbQR7Q-b)4er zIK?ro$ADJgfb~J=tgd!#khn&OAJ-`Eh=poMir093ASiCV6h7glI9Md-{3)&+B>5Im z#9>NtTP$>#5Nxeh#OGxZpAXoh93~*^ZkeFC3V^;xUZbJ&tO^S)sv!?YYUmdw`iY=@ zd5y^=B>YwkznJ1z0{qq0Sba5hl4~+rJ$#&^kpNW!O>uHy`Z25mx2yQp&*a+u^>V4p&(DYmCYv$|-0m4c=*m44zU7 z5|&g3ohF?Nu$~((1>F=BbgP~5Tu@LUy_7qHS1(0%KZV{iKre8?$)IyvS6mq+&Jp5g zH4-{yp_3%V?|8j%nv>8;DO}?vAy_1L{YmH?Nb`N5%7&*AfQuH&zd#;rj8%{$fPh}jTy?)#VK zE?AmStTE_3@F~p(P?}KWYLJM5A2Cm(V~}WYJ(&DZlxDMAnpdNgrboIdND%yf#2mJ} z5$y6vmL_@6BRvmG(<5>-*!8hnnm2;PCQzDJVQF5m(B_Ne8iwUOfk`5#k z8|xYGMtg#Y_Qdwa=nMog|AvdxJd|W1IQFD(0tIi0YZIH3>y2{pm7tNZKpIaB=;VLwa+Rm^av`6R;RI6efzrqg|Tu#$G+7BI3@bm1WD!fkN2y=u!s(1l5H zPN9Dn4#F-h1a{5v>B1z@1=w_E)GpisMwW>#l(8<{1!upb+OiaMVPc#!%fAa{unS9p zU9)|cwU_USJ{qtW{eg+d$1?|Q9Y+%q{Ioo6s621z|3+E_>~xcBgKCJ@Q=9oi3)zPhQCPS?+Msr@|b{xuZR)vOn(UAkBc-q&C;kDoc*pE zpnWvR;zi`E=Nn{Xd}Ta;78mE~Itu?Bz#jr!0d=g? zxnjM`74V(%{Bdi+6)%92H+UD|%jGw4c=zS<8{7N8Ts~~h>^RI^J_Q`t@`DC z=fn3u?A1RfCnGDbRo`B@>Am}AW_9Y-ub=Tz=l;1lo%>|>O7GM8lU}_#zTK%?r?)%z z$^3|X>-?u4-9PO9cE|o%pJiqLF{@*r%&h)@>i9`k|IVygr%vww%&cC0`uEQ0-0S<_ z=V!BX^KvrM`x>zyewdZ@pQq-d%)H#rxp{p)%*@NkNzcp9>GY}bpRMkr^xVu|AL9OH zW_^Oyy_EN9W^Si9-|p7u|3NqZkkN~EGT1LCyKld|z{h>kKZ(uF$P4uTD5tNPk$^w4 zv-94`&iXj>lb>hi<^}roeXr+B?C5(v16k>PGXi-Tefz!CuUB^8zUf)Lzn1%XE@C1!-(zGw|6kJ-;aCu&S}v%yLbOS83cm=nfH0WjF#-rce49u z<(Zjre@xHG!hZP%Lv@?=qG&JmOV7>yV|GsO_{^++{qx?Zr+9Lj#qCU2*Sxn< z+&{Y|r~$wSy0+wz!GF8bZ@JQMx)!|Y0=?-P^Jce~-(i{hUeA})b3Whow@Ge? zvOf-e(7#{5?3}z1&*ogret}RZWc*_?{uj#4%kGB@rB_C7Zs@1!nSC;PhtfjtXXfVO z6b+?^ax(t4e`XFo_^b3BoP?M{I)vWM!XKeuaUl#DVp$p@d7o><^E2;fXJz6_G=2!b zhca`qDOq_r*?owzk3J8*o{3MqPJw!*XN9t|^FkkGFvBu>yKw1Q>7Qie82#aQ0+;t` zM(90a)W_Jfp^vc+as-z_ZZ@`x;O2gs-M>%oPtt z@1*zXhwZ{W?e!T(4rONH%Iec6Jufpm%ZT~h_^01~N=>I;q~6+fIqp4|7$L72YbfhLErwK_U*IGK7IOS_I5ks}-uz-Lwc})x??fU1CRHLGbb)==yvI9p-3witF*Zh|}Rv%$HVuOoo zh;TD0uJk|Pqv;A%IVn4*Z$|G9p?-Zb(sQxP(=+orb?Rh%kF-~ta=!C63>j_w$$<+S-;*@{fj8!# zX7u_Dr|Ku6kMWUQBm4is>j zNxAGSl9=Cl_fMJBGBuz0P%efq<9(%Evhbwk|E#9}IV#$hp*`lij)cEiiGV`v?jdwu zJ|U_ndgUZW2^0}CUi(Yl{sjRy{w_+1lPSL#O}?;vQO}?J=6&P4{-s9F3AVs>*jDCSZ2KNt&Sa7N8#YZbCI$oM}e?XQ2}vj8$$y{Ar)-tcP^ z;%jQ6HX|>TmyN;V@EosKMjzt`AK)XL|GBv#W-o4*&E(TUZ+zY%s{@nxUg)3MAOC`f z!maxlaC=deoux;!Zjz}m=4f=)Pk{^Y0q zvwD%1n8V#(8$Tmig?q_t5!08S_DTOFw^Qg%3_%!z#V@`0=N&>_@S$F~qH{uGjH4%v zZ+?=I$Ao{~KO^V!-;jgEfUn5o^3XTrp%2(r2<{<19MeU(_f5K36pFjhZ&au8&0K#i ziP0C$AtUJvmT4iQ?H4YkLPqPT6FGcNIV|%0V|u!Sk@^MmY5oV!GwBMRWk3Gadqzss z$-o!Og`}lqAoJ;p?K&b#i}tEBqO|$PcYpJnU;ZYI)E%DK^d+WH0{3O_k8`s7`cyT{ zT{;mqe&@l>{UTgnuJA)`Bb_4H(3L?a8Q2Lx2LkD>f3}h_*GxM$!nqs^XwNR=>(%R`FV(PPd{eLLejrx(S5PKmy9D%;-4IKF*s_XU;6=j1xlC97Bhf1RZnUITI8#ijENl z0XGm8P(Tz#M1ioy$S(UL2r;sR7Ft4BRo<s?;#u%{X zzpGT4Ih?UYoZ9;{;8j~0o9O1?sDcCCRl&vkGFItEB_VeUDN0FEJgpX3MRs)UX2vQ8 zM{6-gi7{G?Rbs3%jZ>y^JYE%KWjyb&t1GFdel&tKJMauqnV=LBcn=|UR8mLirV5=D zT%wW^dFO?k0J_$15?q~m(!n@^_ue`oCh=s8ESYz)q%I04MOCHnRI9D4BAesx#yd&i z>{P)rI8_B_j=MW|E!-mN)9M9J8l)@hbO2FcJwWy(1A40Zo*;31fsCmeJfgb7?cu%W zh)89gk&)`ndx_>g$|h3{fcC48lG2pa7qV0#3;K!bevmCL*)-(;;*JZWqGMv?;yWaC z?3CC!DY;8Z*KVoZ)6#on^z7yK^v>+lH>+PZ{Hq>d_MEF%oz;{I&Q?kV#ys1YGrOXq zs&WmluArZrnwuzN&d^_&?%K#8wF!XT%;>^d4E5Bry)_GH#Ul92c0N_4JK9aU^FJn~ zuI^H-yW7pW=ZCQFRjm6Y#?){Or!Cg~tyx?P>jA}ju-$$A?1%LAkYYXD?!JEhL;89| zu^yEev%)c4lGS%p6pKVSYgS38PTKq7D2+6d{Ds1+7kE_>c-RJ>26VpEc=gQldKAgW z6yEXw6z_z_JI*}k1>Q-8*U(bTRDa==E2nvoPqk*iTQ;y`>{py$wFD8>2IuM446cFm zjN%Nm6u0O$;>NZ8*E((i=2;v|@>zw~*v`25;S}>+h}NLz6i8D$1L23$GyuAX&UpoL z;Xm!!McuOt%u^Xp@+F0Lxh1D!_!Y+f5A>{`4EtbE^I`g?MN2=0lqe+bw)Fun2}VVNpi zZUyYJ9D7*7Op-8FVK8xicnJ9V1c_0@I<|^2Sz$b)Tp3>(f{5pj0y`h_WIc;hC@~7f zI*U1#3gt0@Qe72e1*ijm9N4!Zly$7TLa7D?lWM_CQ7}(5he_a10(+VVVb-!F1yd2N zV8&Z8|5h+hHHYcQtAM@4VPb__1Fd1P+8?ffvMr#e70^^@A%{9C`v6O9md?if8D;)# zOXi8n{1{sZt=dmh_S2R9#cEy^vhS?y>rFTll{vS}pHt>DTB1)<=5>tDT&>a1RQ9u4 zvQIYlqgyq9UYWn3%mdXtEVo_+_DX0t>sU&wx%HC5dATJwTxODVZq<$1%6yJWhRQHE zx+wF{*{D|8Us2|BgXR`{N`!d}?5`^G*V;&deXK{T=C3RBdD47VL=2VrR+>SrIX_>S zFK8oyHnW7*5{R)!sooEdfaimb+!P!tOaf0+f{O|h!Lv94sW1;bdsAYmumC*MyT+SB zf+=*O!fW7}k&;A(m%(!|IhhLknCBetLWRT3bHvq+3bVkoD=C!WeM2hZ-#SyXryJkvV&H;#FYs{^Po6+C+q|3HPybYzXc z-K@rcq(UPt?y-L|yUw4f(7-%3(SI>J>|f0h8ex-Vt?7&ttRImf}}AUj3l5TI0c9RqYlF+2uQbXcSF z&@qU0m@E1u#5pYX47kM5o`eM2h@}w28pJ6w0N5Y~E&x#tgzW?%xzEkF&AKnC9m4=IKc*MoF7$w=>3RU@GG2qN}lXieh?6yUK zkEi?LEx?88L5;T+>psJ}5b#`@AC>^tDkXeJX`Bf2OQQ*drK&w(+TQ_uqDL6QyGo;K zS6I*9Q?<35WGyaJ;(RT>Z+A2rm)l~D^!x+6Z_5Fn&ItC~56b`>dr!eJ-0a4!ily>n?TXaHZ94Aj6!&%= zA1!`rb9crawwNSc*=f7718`Dr%a!eb$2?TO6Y#m-vSu6LUJt`vie|Z{*{#GGTHIsP zB;#IN>>^qB*{pj3FWaoU0YB?4wgA8O@ zS>8vi|Fkp*>%&s6POlo_aZY_Mt4@sut0kgR^2^%P)Tmc@D!aJ|@>{eVqb zvgQQfdsz&>(vwcpoYvW;#WOZd2JK;%*i*88ZL`uIxUZkZdKz#=KdS#4@Kirp^A+t^ z{TQCr>9ktWG}^em@SH8WB~6n}bB+R*ZPAEXg|AW}U>bdVt0H5XV=<;cha=odaaeM2^o4VEBllnW1SOwQ>7lr7dPln#XLK zN{;geS~QPvd~6`qKgMxIus&>@A6I-w!pC`v?(Ch?i6?B<{`jOVdZiQpww-vA)>O6duXFAl;gRXJPnJRL$|IMrqufX~?CKuP+nP5KPSIXS_e<1__) z@eb8GmE+VLI%RWw*Cs4BJ1)j_^#oSF>!jLHN8a=19+9uzU49d6*mO)r-1U-Bs%>jwf>I{(|GvHNVL5^}+bEO+VY_%f&giI9O7=V$;vzcz$q8X(Ke}>ao*oGdUj2)uf{NRnMaE0e6QB`ztfzqhfhom=j-?aFq9j76<&=#+gPA;;;wvgkZ>#bS% z26gLtaX&zd!1c0b0mq8#87|h7UDLd!hj)V#m)JDdSct)4Z$1eOi3arWuCIY;m|`ecxtX#&PB_i}hWOR|M<(6x(64 zW+_MiP=?F(lA>uouyIG=3R@g0X+E@RR#3o(TQtjQY==?(hqP)2>mz^ok>(6LANye| z;2MuqSgD6SLZJ?DfjoiWDxIJa3g_wWM{ZrXTJI7O3NlGWFRFEPP5Ww&AB^zB>l~lI zPC2891kmnb$URB0_Z0PMo)%vy-qBHu#T`*kT>X=v0JyS zCs5JCu|`h;)3Sl%#gX{2Jx-%Sk*?LVJxp6Ne4<*Gn3h_a1j5k4jXLmxHSHTYo*QMa4!Bu|t~G=$IxwbvGfjmX!VtD9jjBB=bn@wo0iyOO+@`~@M?-9- zj@^LU?M3xdJ0=jGfje{`!_4WHj^lh8J>01~8IHfphP)vJw_A5O0&W*AFr%fy9^K<` zxV^T!`)q6;?(Tk_4tvA#_fl4jwiS;Eq-ns83V>38{rS-pJ|X(IvjQYrTehZy(Loj zc2YNwp$&t)OS(GQDGgZxtCw0JrtE;0&) zO~gmVrcOOw10WKmn&bWv0Z3q4meV>wclCz58-q{Tda+ck;y7c3_lRUlbG%1oA>HxT z$wCju`-LoIINo|$=o#|HQEs@@1=S@=U82Q>dYop5Fp~94!+OlH9yhEf4C~4Eu*O^q zYlC4uWmx@&^((`Ax;?D1ZL_YVqrh8M$IwZ(eQur?Xi^M>_;VZGQM)=t;LddaX}Hmp|+>od882WZwIo`YId(p!UBzm+#r(JV)82T<-Il;U5d(p!UBsw$bv^$>fB!Z9P zooq@-uT%M3I{d>Z{6CiAU!rS<(}}8+(x=+Db?peqdB=f4O)%1xvD9I7fBHhj40jXA z_r&@fs%^|w4^NzN!o}X^OI_V*9BVjE9mUGu)z~+Z4>t)P$T4jcFO76J>4w;MNOn`+ zA~XU|ZIW;NbT?_k+UC+ZCf;0|Q+oM(nqV{$+$=k}Oy*J&`7jqe`@1N8s((M!&E=+> zA2^IwJJrn}iEjQ_cT?E}ZC6Oln+S6bcxH70(Q_1jC4~8PL&&cWHQUYP*H5HhA4TTA z#$GAwe*${8l5Y7bS#?Wf7wW`ZJt~eSiqjPli`AO*r^I=S8=>_M<;O0Tk7o)dD4<%zAg+@P$P5-V+mqs>K zZopO^)G##92OGiL2#!942_Tx8JYM|MP5hGydX-9HzT<2F;quPnfe;08f|2?J7Li&kQywuTO& z-F{9azs(8I@}&0aD{_eR6S6P0!?%&cKbH<43qJ!ZeYHD98XtE;kJo-7jZZ`#F0^rt z@IF)yZ$XrJ;h&?vSPkBgoYMaNj{N&2$mQ^Ug%PXoN!+$4F>JGJbV-jq zc9V;3(8-z@#?c4^%Ke(VEzbAuVt3`J}aE{VsXk@MszRL5_ zW)Bmu$o1CI#6Au^jW0jl>=b{--n_(dF%a5EzBc>FS%)>c^gi+j;rZ=)A8DdfcIaA1 zH$TKKmOH0~KsPoIvfDP%ays6m?K5u65h3}ie#E=za z&|lRBXmeCK;nax-)knqu&YGqO?WL_s8`5%=p5(-!|xhCbkGFf zeZJxce1nP#eG~pU=pNsMT&0$i6Z%u=%P*QRwjeiuzyRGkrm(Cux3sM2uKNq}%Zf{K z?qvz%@=No^jw|%#utXkwX71{ZucG1MfdND%iOmYO840Mk#D#$A>a6gb&SeBEM!$#)bOKrJh?=37U%Keq^?m}PT zt+(8DTV6?F-mSOf7W{L3aY>wy8!K2JAS4AZ zq`Qkt+-fM?WyNk9j*>F=|L*kUV0fIhT?c#=H`bSCR&LbLO9&nk+7fE$vC}T~(l5#7 zI!C}EB$R}bvdLXcH{JB!dxroagl2m0y<-CgjDZDXdif;1ryb4i&IY)A{O+=n=Dq(b zdQT&1G-FB#p(OO*)fhq!&mrVz55GQ^5^AJwBcwyTK}{%_#u(0*67PYk$6!zxC0m&R zzfsT_h1F=NMjJ6Yaf}hGS7VVl4jSW(Jo?os0^)e1%nQL6~G zipCeBRtajAXk{o=MjkIzy+#%3!)nrpRg5;`+S73DX`?C>T8YN0v>Mc^0a10RRX19T zS`DbxfNM3OR@3-O)M`PkmhlV}z7&nmz_r@YRNJTn1=&~!tREL&*LYGIUP*ePMm?jx z?xgxg1KDqXmi^WM4QmJ_4UM*<_AJz%g<1mC5}=j{wM64ND9Fa==<`r}-e@oCFF-Ag z80|#$MX0VM^d%^*BE}!a*5_Kh=NF;1n$VZw!Wu$ffznz+Uxm^-V)z8gYfxQJjPFGC zb*OG2^bII&B*q{8tA*k3j*a7}n~3q|o?@c9v>vZ+CdPjS-&;Vv1*>mEbt_iif$BD5 zybC4Sx}DIEpt^$??@Q2+B`|ZL;Wx@{vj3nmsISCy8KVLe3Tgff)X?z zBeW6Jj}xP-Z2C9UPY|PvtT%>wI-#FHDT5e2SNW4Yp_t0{i&>uw0 z9YX&DEO#-GFevX4DiQ80vB{J|4|kxnBL$+4ly;JBoha>00jD#?4#fWMLMe1pS4z7f zUpGoqWLpZQ-I1?5#a{SC`I-VwPl_7!qUhe?3&XK_ zI5qmnh7s5>g3^ I2EWMd@f+7)>ce75^_KKN_ZoMMcNN#^uSIFMol8j}Y$jXCR*NNxNp6wb zna4^;9vhu$7vB5bcyD*7J$Qfi;yu`h_gO0MrT)AV2hu@wFdagN(qVKs9l_l*io0VB zr9YmcbnLkM_stasA?7wd{UOBKPRy~%sl!uN8fnS=Up&8@%UyPf|DWzoh$1C&DJ3t6 zAA|7e6S)EttJ&1tApx@Kc48Igcsl`a*Q4QafZd34j(Kmzs;0yGX1@?VOI7C1nwh5%cK!ZK#lgTxqNT;jxG*|dM= zVbI{nBb#&-O*%rXt|qS^1Hj{vHFGg2n;s(8G6SJc095+#0F?nyCm-3&Q)uQ%VqM@< zb@Ma;X8sPkodKw`kF47{)a@*>x<~PP766|A9dyeEs0)v*+eOsv0zV+(0)RQcgRxfuDpx|KI-xvLw{CQ>XA=p{!)tCVh8v5XgV#asjfa$Z8Tom=I{@~0Xa{D~Ys6X`i?BTbrq?6D+~nyRhcLYX zrq3h5+#%M&JP6YlU{W8tce3eyV$I5nF#Q0g|08JAky?}TA&19|DgaLV-;A3MC^P;y<7NWNtVcF(HX1jJT6;?H`Wyh9`@b1C z4^V#k-;A3NC<`9hxP@rk0&2}G#p^!<;37~fd8IMd28@+}S7|ya0cynqqDN%cFK!$j z7Y;qU7K7AZVQ303^#n0PFs@KUGMAtozf$W)X%)a>UH}|pJR3UbZg69W3eTV$u@Pi$3TFha3q~8^jEF*j&1l3XYW0cd z^(_FnH5?!sv5bWSj7Gq12)LD6#|7Ya0NnAv4Fx*^W!L{U6zm3+J&!yT>_y}DP-|&9 zu`vOF`@;b~&`!w#1l&)p-cR!SK>$4TuwzR${e@Z!N+arFKsoa0W5rR_>jHCOvZcMgUtyt$SqccQ&)_DV35@FWKw^;)qm{`y0CQEqq@~7aDESTUwR1Mg+{9vlk{kmt$yCF+ z1~}J4aS9kWD7j_hOij$=s?AM6xdkZ6)N!l2O-Ua!0F#;+OI+?Z<{f~!8%~*flnk^{ zMnzEOKA`f@(uFph(nPh|+ zjEfqR4RXl_I-FS2)x}c)XKFZ{Vv4<#EBiEHpB|3A_-{*}0qiru87XOo7H%bi*uzBG zEMT7m46=a{}hpbr91z8;9n4qzw`s}F9iOd!|^}< z0Q`%9|Cez5WgdWkG4TKTsQgQSe`$o^iFC7G2JFipk$nZQr$y+!eTj8l*;fMlDq#0J zLbsr?nokHkb|xp9t}(m@aMnh!Vz;^#hEZc3u&6?Ik za|9o5Nvz?@z6IE~hWFt%gY>k0xH*Ckw*$_O2tM2x!G}A6eOCk@u8-iu-N3#lf)Ce6 z@Znxy-xtA$X^DH?vuHo?ABf1m&7J=s@E?lEU(c2OFt8s9--kyHGT83J6^YE%i^l-x zcmy?mP2A^h#tGn0kI28>oj(KkPe$ag@5+7(*iVOdLnfcv+HP2!80G4QGk|jzaBid- zsW#3Nz`jU%u^_M;8v8k5&x()<3nEO<&jWjQgiQEJ<#QP2F97?+2$}FxgyG;4u=|a$ zdvllhjNJC&>_m_2lH{1FC}d%%A`oc#qJfIr!k{2fep`D4_oF5D6m*gKhF z#Fqv3(TPvEvUdjdF5#rdt7US8-s=kd-NK1S>xU;k?#iA5?A^n$Tfjav!lb4Lu=g~> z4nw_6vdT`OAu5H!#BguG>0`R*z+k0D81}xvo*K@Hn1KT#3`6~Zy?=y0=$ClHy$=Qe z|G)@+5Rrcn@DDcK2jQNH8;R>EJOucMM$o@|VuJg!7ubh~V=o8n9V5(4M*#cCaO_cP zSHyH>9|i2ABc$KG1osFW1MFiXq~G0yr(D^`0sHs}U3V+NJ$okr`$W@qtC;2{)N{Ra zOak`F5!n3+)m+)90Q=Mk?B^5WUD>Ar`}FY1JHsT~?c_a|;65Fm2{^MNB=6~jVy^77 zfqhPd=s%V4xNGpw1@?In;^#<0gxk+gz&}3%|KWtK?)(dYe_;gvLkV72_Md@$Q3Upb z2~}O$e*yNz5!uVSu@iFBq$HbmHLPw`J-o2kw8sBAiWe4{*2$0JcwwPwP5dZ7FU&Ws zQy&)Og?YT?!$Q0;$Fxp=P*^;?GOSBAitxg8(>nI2qP#HGw8s3YxHth|S|{Ew$qN%r zYux*#d0{lic{iRHMw-^7cP(B>rB=#g<#=HrwFVa|F91y|^PLLfP%X8tSyfca)4cE# zwa%BU#tTDDYsx#-)ukG|FoRlsO4JeuQcUa2+s`P)YAc#LLJexoD^`ye`g5AM>hnTR zuGpIm6iq{+7_}xANf4)HxD(z;-1}{@xpDxn)KQm;zSZ}dG$?R$T6(Rue>ErCK}eUm*3`vEW;Z2hj+xmOvB1} z>0MqpZCJx!dS5)LF|5Nce!vUqhBe~Fk9grYZ+YQk@ubSI2E6cB@sPu?_B{W0UN~S_ z1E2pVFYMzj&o$zO9fma|@!#U%q+xAO_=FcW8&+yUQ(jnWSi2i0i6=~k)w5wUUPv>n zEe*a953mfYcY_wZu+*@&)o;lQm#HU^s_<`c1DSp8~$FJi;6c0Kb0FHAD59?vW>cqyA&cPlP6)B~1f zhI$ON+)z)L(hT+RYON?8qSmn|*NIX(wU(9NAWFx1uspTVP*3u980uN$Zc*Ant+{;B ztR86YHPnOPeWJ9UTEolkH`KG-1BQCmeOQzhQLAI=BchZ>tyN`?iPAD^ZF>B;q0Sg& zh|*kYO)7cPQ0FHyMQIwhsQ4K}9T+($O5=GD7tJ!%37LzcG>lra3tuwSk)Rw=>QAlh zkL8L|A8M^EcukagQR`NL>!Q?yTJsCs5G8p6>$WI$pw^YVcSY$ou{!3tCrUSn)g$h{ zDCP1=PHeJC@VH(_QOY6K`j}3lB#+B>7NvB4NAz?NC3%*)t0-j>YdPyCO7aYGiYT4u z>-ebdq9o7m_7bJz#M;m2a|Dlj_Z6iB#OiFMiqc+js=c2miSzOUL_r?JKTYWlLNfU% zCEk9^qy{xfg-mK1D+w{qP>&f+&QtSOIoh>fV$!S0d@L(YeM?PxQxu=1H)sr1?@#(^ zEHMRKv?q?ROd1nSNEENeMOTlB&ZK$b2p(){@dkp~AeY2mmM z`SNDcB83Ub$E(E(lOp-~Z;8SsixtSEB}))~ClYjJ;z;4g_;1;`3T29(q48xc0)Tl) z5gxYj0|r?Bhh|ZD2q?@V*Ipl7L6uxep)1p#*jRIS~QFILq0z(mc<>M z-_NJwS={2nep(`n8&t$kOJ;G6i}`7(EI!#P;isjuXhBlaPan_X;AQ-@OcpJ~7wGhf zELxb9^V70fvtAOCFE5T|YxZz5$1_)Ae+z8eJ!BAI%bwDuHm0&&E z>>ywpQ1x}Pm2E^KtZvdh63aI0)i~++Ep`*X_nB(?NCj_>JD9Y9=21j=9Q}K(pA}Mvf0fwRkoWfwYeA& zO}4VRY}sbA4$TSMjgf<5_Mo4!x>pyIkL}Z|`K8qTy3~CpoA|jVb&tuqelBj1CR_Bm zY}swH>s;yq5R-~x4q|+)g6bh%OaXRSuNIV2kLXeln{4SVrG?TvS}@4ONPnLwIJ*a+Kyt* zVz*=UoGzv)%hIdGq}21e)GU+rYNbg%YqE=C8h74gV_M0UGbTIUlCW$LGZ)2N!05v2 zMO{pBc1f?6kW&4+)Jr^r%19aBWyJAFNDoLGDf^srk2UN#6=&wfZqfoWz#TU+tYCx;#k*ZpY7AP-ykH5;O< zr)|;@HdHrim`+xa4cDucq~arVqlSCf*l%p3Mxs$A;p#9C>-SAI9l`tf8*zCQTuvzk zmq&Wo_HWo|UHlkbUS&2`uX?43ak}`i9yaFNa8V;D$79!_w4ol>`5P1}E>D2VQ}Ob6 z4?FU0HXY?*7d3+>0?`I^r3{p8I>Ezke;c5ggx#S6w7Z8*;6xL-YrX>yPsR>$gfL(E zc~~#mt85AoByVsM4EC_SUjxKcph&|x(loRUtJ8HqRbeyq>eEumnY!C%@c8#>NjS~J zeh~}#nI3k|CtId^*fbwuvoP0D%xvu5wNRa-i>b=y>eXse>O5WQTt1?FuSuQlVY9`q z!8{K;{=ICO#k=!+!hS+`p_utlJ%H5(x|r&0p5?RJgnz`#0~<_>p*+(Kehx% z@SyqgR+F8VQ(CqZZ4V+yH`#7E`(ev)&sYJt-Gp8u#w9=@7%3#(xGH*2(I8 z05q&o{HL#B9jeAhXu}%Ff4UpiwyFw|Bb8>WF(Q?$Ra}c7F}Z~~YcQ+T_0=9WFPZ8o z%hqB?yFskOoLAS^df3$FWA=4_nm139%8q8U$f4oi?G{2ayM$4Pw*eUXn)Y905;Cs2-a@J|^h zJme5QL8?uz(mt$E==(tF;W+ui&0{R;MlaDiE_~YPn4!-MPU<$)kpu84)xHzWOeFTAyFh`#eYQjQX`+|66DwUoxL{|Z|8A}o9MMzfV#oe=*<_AIuvslNZDI?*Fil7r?^HZH^)CEX( z1Y_6(X;+{)5lnG}+uap1ts9W|og^$pH@v%Uxal;!2k@ud3KF3ub59@{8cd>T(F;hX z29pHb(HjVUQ3SmhTh-s`jy`B?Fh&YvyZeEdzCdy#g0iV-&uw>%-xCC0rXbwq+1sP3t&O5@#gP z6~q^91@Q>RIt=DG&&pLaTrYu(XvPK(rfjs1^K8(NGX^;7kZ>_Oa=QH(7ZOf|Bx zK=v2hHjtJoa=G+|>;J~JH)Fkr@atn3%d}zmvKu2sxqcvH2Luk#%au1!B;P@b@jO5T z(m2Lu4M8L}5r|UnxJT0@%#J%SG~J@sMQ?yo>M|LVLxD_UY}rr;h`^bGBg!59mMO=! zsW_CVD^nQjGE8iRF?OggC@~G=6_vP7t*PDsB`1hx(}CiE0-44WaG0K2&5V=*(aYTaU%)Dpx7LqNfzWV#W@Sa!Of(NpRnR!Iq-% z)38;s4DG?{a(yUBU@P=$qD+f4yD6KlVC>{*eZstqv9+VcbRvzhYvM}YY`T=OpGQ-+ z5>-Bp`T!|gg{IB}1y-Z`u)0Q9;5oKduRbsJS*Po>ma&{Mx<0EJ+dD?+vyQQ@V`0j( zim`RPjjhKU3X0l*eUH_Rx~Lb}CcXNil)PD&yos?3V|B?J7~4KpNZ!m?@;H#Zp0PCE z#DQdeeY8xLE$LXTBF!t*>A!<8g=j|)%AKQTgK#=EmqN@*q z7Q4`XtnSvec$w|dtFK6<_UcOQ;r5T$mDJ%k7^4_V48O^ES2*6A?x2M|T{A z>H%HUtL&g&eN9R}q)R@?*qI5seV-- zsAIaQqm1pEsEazxZ-WzssAG(so*3%+(B*o?_eJx*i(y6cgN{pha88SMBoZhD->AXEfr`22f{ zQ;&1#(_jo+k1X_9Fom`yejZ1`!w?7A*bP{{pvS=<*+sqjrVNWqdRSa!?A%m6EV3Ef zJXM6nB|ZV13K4jov8BAo{HQ*Px{SGrsc=OX^%l#~t8YumS9QrbeEglJOTNraohFxk zeEgjTlKp)ADceE>w5KFDe8tU>N;cFrt6||8Jjy@h`Pa8`t*?4mu|j^ zes$i1vgu03=D;}3ZeeEylk8w@8Vo4xHV#z5B#y z#pcg(&TD$0e}ggX*;7w+ojXM@^oy$=z0u+hNYE>aEtyN5Pw&VHVR|oF8dUZ(h* zQb)0O)eb&B!o%Fd*8Z47ml(c2QS@eVOfIcJZ_sB18>j6gXkQAVU1|t=xw}sFP$DMeh@GQJl~dKeB5DIG3C*_7b?Z zD=8J7w8FzW{^+N*3D)H^96zlSkX@W~qdUnOIlJ?)mH+kjm$ITw?*Lh-WO@h6LS@rC zNEW=Ncd#r}vGp-Q5fA(@_=$p_Xz^1b7rvk5Dt3qxJ5-4sro;|cVn;lT*q8?rJ5q@q zrNoX_V#g@4V;@Fr>~Dx&%5Qc5^^TK}Pn+KHvQX9ZPLPFargx$&R5!hoWTA#FHV!1@ zfuFqalMjCKqu8e-ik+;)PElf~DzVd)*y#@=w!j04ouS0eRAOf-v9p!fIS(VY;BSas z;$ipy}nBMuaP}}q_kcB$7*vCLZA^0f_KSkiDD2lBaQS3q` z_Gcw_krMlh61(_e#1?xXvA-&@OO)89O6)QvcKO4IE&dx~*PHA_Gw%usS=aQY$wEET zyHXbFo8DEj(7^PrmW774*b*S2B>a?upVIL2IEt+sQS2HecC8Y-PKjNw#BO*Pv1J}e z>_#PalM=gGiQS^aZhaWBPv~OTQZc58FT1F_s&585j4%9{HUr>B-rl^g!1JM#W+WQi1r$l>>s#D35UTP%sPil0+bD0$8 z6zfd3qFD}IX83j?&hs4SPvT`Gd4k@z8=GI?x52uqIYZn&)5Wt6P>hKSg_KS?)Z^QO zY%g-O4}?}y#$IeKO{?vTqE&P0OP(_OqsVGTMqw{8=t9+KNCgHD&t=l#=n8aA4cO3>&E8`)qkbQhI9STI`x+?3`zs? zBWr$5|0BBo1%2m2^v`nYe+2YDZ|k3}^uG{A`28F7|D(|VP1OGg>VHJnzd)$|D@>Nn zM}vz_{pAajQvZU;T2Qg_xy^}$DuMlP-zDUHi*tS?wf6^)N+)C-_%6%#wTp(hE5z_SNxG zu6o*;L)RMK>vA+NZ+dUY!h5ForYyW~axE^>vM`Lt!;eL%cK2wfzVet&?|Rt1J{)kJ zAwUDmgO5WgHW-3RIw?LP)J8)P2Poo$l=t3Jir-d>-}w#21*Wzpxk~#ofp^}+=5oBd zlKUysdr#rrcgHJ-x3#B88QX};@J=swaSkoyO^y}_PuRE0Cxaa5WGKve2!x|}w>S_h z9ikx+{={SD&oWjzMvJhEr+AbM=y`jm=s?JHj>eGb5>4)?koiC;{UL@7@C10fO3aTq z<}A~iEMgL)sIb1^%JQ(@J*c17S1T?!s^O;%v{?nsOejJEM>OOyH!ioJbLv6QBs^vl z$wP38i2I;3-rvPL+5ra@@pVH3|IA(Sv2;aBbkH6CT!J{uPnILbGr<^22$8GFB804? zrY2ClTpl1U>g$dIKjs4eA_evc7AQDufoZbEqha8PfCBmSqaTG4p};7Q=)$uewz)ec zzMd%RFI?1LrKn!P-F$(&jJNl;ySb0*=DyM7zUt<`if;ZJb~Es(-wZKRNf$3!)X}F= z;*I=(#>IW9DB$m0mA^?<`UP7pICy)1+5QiT-K^SmZ}@d@6nA=~I3X1s&N$;?(}Xhy zgg9ehurscJGX~kt7_6KzB${xA!5RM)&iEHP;|e^FZqQMUC|lh>jnXZOZtYQ zfJR)Eze`ny1v^7<@b=-s&cOB&fp!_@s$F+duI{9gPA8QlB*x*S(;jv^g*$0vh?7PI zJLx(&X|(O6G0I6}qscVoq<;%1HAW|0M<-p^om5J@lZmfK1V*QE2>l6H;vZ6p@c|{q zn^wkqK+oGJIF+LT?9vYGvNrZa#BRc|{|WQh!oEoorfD#IhL{kiiuCl}M zEsl0fHpSOnWVn__ZYz}gpojGlp8GYJ^>JX`VIXfg$xF7yL<|0-Ap`%hpy20XFor8QW7zJtzKl)d-F94c+X>Ze=?~Iv zWgOks)6s3!UAnD?H$!#XN!4wqRJWa0-In=#bXyT z&$!uE)$*RfWp9nMf$lm3-BmGo{Tsyl3}@Guhrf9Ssg*GXM_B@o^4e<-$j)U zmsC3V1OCkln+^^L;=3F&@eDMrDQ_c(a8|txu{WD8dJJzZ(c)^lj+cXYEjV6d ziFY+RXqyc2e7S)+yHk+wn!M1G;vrUXKe`@REy)g-^TRlyOQnD=o)Ft^giH}{y4WV~ zn3V%iQScQ;d(gNQvfFYyfF#f60|RfrW8XOMsvGA$x7`-t3Gm(z?6&kVt#fbEz`fK9 zn&IwBZ^lmcr+(T{ZMVP~c0YYqyJ5+%P})gUA04M}fdo-F_dvKstI7v<0}S{&rk!@( z`Qqr0zT_A%wiS2FC(J^0UCfmPMic9c(0=%jM_c$#izLc2Y;OXuJ3Ft3ys_C;W z@f}hds7Fk2hV=|+*^Mt${s;_WYsaa*?Skq~^fDTH@0gI)@H4(XF)Fhh0y4zzd^)Y6 zr;JnAz9B}ZhSxRBRHg@GcluFpzZkqH_K(4P;((Y3TMuia_bBmsdpkB8xQyNny#r%# z^d1z0qxaw#9KDCc;OIRx=64vqyD_%3A6MlfAC?=qkKT&x5+`dYsP)lXe&5!%D#14l zo$DPQgQNF|7&Urdg3-H@bM$sV5Z}m<*cuh+FL+r9IE1qjFqmovx?k-Gh|l(FcU04w z_=azEOz@V#m|$eV7P=)+K**@21uQ0QSH_0*<0_90N!oGYfqmm+)Oud3B-5dwKz~LL zU|o6Qn-CJf6P+ju9sN0mFIns!N%T#M37#EJj&W=YjFD>`-;`jT$KcvWnqON}P_68{ zFm_#NI5ozxvKL=mmfe$xymfTr#wMDYannMKn;xu&U?A$Lx|4fG2=~n3(Gs~;SU(RR zv{mn$<?<|$KvsK>CQF%L8a~Kdp-MB zDAjdCP?ivXRM#>i`k&=6a#~R0lllLKhxX zi=5FsE>Z44_@= z{MOlEMcm0046cWR=Q1{T1oiHY!JXYbF|f0XZx#lh2JU3aIDK9kh>N2+jP)MD7e|R| zwFK|+`MDclr8ga>RLTW=V}h4@`=kq6bJpwJ1+O9pzp&r#$OEb)55|ydsw3Npj>HdD zDJGlyP>fpb!MSLF1jkWl{x)jv|XHM(+#QR3HJxu#ONBQZg%YXyJQskK-{9}D!Q z^q!PhSV(+Pi-;h191n?z6CuFT=`ZO{pT*cl;p69()8Pe7KetU=qRy5JP!B@AgRaV5TSE;+e;{Nq4LzRTHHu};=G2`{U;1yxpd#*K3I^90>=MP+&!*lC6@w=+ z2EC_Z)RQ;)R^>&pfe?B^y$i(T%Ti(VM&~FtVK(>1OUga)7K5Lg6=G7yD0XZX*RreW zJN=s`DdKLXU~o05Llj#wi+VGaNoSNvXM;`hhBK)fnDmNnQgRdlldjhjkl=&ga<`Q^X(sXaq0o!ARrLXq#o4|>TV_OjRHnlDoiZ>9t0)_1Js z3h2I-1M)69D1JqVjRj8hv|Q@R*?8o~XP{#hw+2p5DcRQ2Q!eDk!#~%rxK4J=>;dB) z)C0X7J#8ktkn>*J7+=Po*Q0;^Y`I#1Ua?;);00V1rk)cHH&mUjsJWg~vJX}u6O^9^ z4xGcqxbTe?<;paY=U)R37T)2xWM0VZSRY*z3p!*RXN^l z2Dxt`J=T9wh-WPySQM#LRaCHpfx8yyw2@V;&#dI*@)aWfIitI}A2d~7?tlMMGIAuo zbs?Wcy@*C`7kp;5yR z0DO5(-CA^+K|#9Naah%fd`U`5upMIf-A|T!FLU5rO8%TM(b#K^g39=M8ycR}?g`me zjkb`3Pc|_8lHy^gUY7wNIGgXijtv9W>9-BBY|#ctl(`oMndO0&N_3}HffZeFr35tT z{xY9t3Lb#{U%D}GnK*?!i1nGbVgFy7UnN)HecpLc1YG0c*LyqFPN%g??~nov$4 zNJAJ5TzSXEhg!VCKo|dfxA}e)3^BJcBbbRv93P036Y#)K99MAA4EVs=)b|kx0h{wS zCxV99>g>M?38}>NbwwoGQR>6qo3Z46t}7Mila1+n#|VL#)A#8EgG}6k$@j@GvL(gY z5b%i-0X@C$)we}Wr9w^Z1XseTvp+AyU+0tB0;ZyPtepd!8?<{^Le$k3Sk7Ry5&9Nyb< zY5H0{9+Ky=pBE>wU<4$fW47LvANHa9vwahqQiZa3B+)qyZZiTqasxX6PS;-JGcSeu zK6vJHTPyTxf#tzOGBg)vN&&!sxu5}XHzT?z*)DEx6xK2RC4wKziJDkoE@Dv9Bru!P zGc*_rwcT5n4X+RJbk7+WzFlQ5o_MWe5o#7ve#T?p#jV}(7N{M1H3YXAg>3~*o&{!J zu8e3N%C1^h&3L=K*aByJ)P7v=pD>4^u})jLbXSpAw7 zUyAhtGyj?d0EApONj}`OlJBMpCL#z5`RsFm!C>r1pOLg5sDzb%YkD!=?CSvJ5)PUl zARNO$rZmDi5|s$dwxq};P9Texx2NdG7%39fM-C<>^U=%*ea|gX)^1?$5)1pyJz~ZM zGqS^jl6O8TCY9a>-x*Bg76bd;3QTl75T>Vp;{?>f3GMZ}MjOgiTJSvI*a|3@aC*08 zW*{oz*PRjnX;tc52`3*rU>mYkp0|7FJa!H;!q<`*FrM?|4Ty<&@gy2I7??vjx?_NH zVo7hLR6;;buAzeFg|jK~>L!DB1FBLF*Y+F<5%34sqYgaQ);galk!&}X^AXN}hv2>9 zJp!8MKuPgx8Z~@^|z+0aD*7E&>1hUIZ@cZ46YBkG;_o7qvv_7=Oprr`+g7QrPz?`@VD19YzG?C@HYDSQ$+45<&%|2 zlxu;vlJ3qpj8R94OYNRZT-2=w^#3sq{QgSYY=hiCM?*YXx6-ewbM@Td^+Fs%%tkRb z;wjT8m=7gjuS*I14U*l~UlgGaYsG@KTy4LAI_XNam=_yp6B)<1$B1W?_k>gX{Iy`! zuki88(M=Fti?t-H@9P8b-NC%8g+adB!}IE1fh){H-Q8GpZR)KhQy3|%Bmq;g)~^p= zo9S5A)4{l}rJ->VIDn9_m(mdE2yrYFgukbTB*OH(U7XET!hh+s&4S%s&2&Z^!9Qk! z)OB?6%k@sf>^jYt-B;vxNBd}||LXhR&i4^3eZujZIo6^<&dr~!dZILR?Q8jN%5=F* zvp-J4T(5fmX9TmbTN~wv>L3R>tm%K)eu!bNs)KTQ$D!@6dfDR}gd0kjT{UH(-A)=e zdBXk2BOTRnK;7JC+6<8H3H3X$!u^=T9o4u%ya>mQJ@`8ze*?eqKzgaBOjUt*W?xpr z_z`Y?@*PF)jzrks-n`k z3I`#Mu2#^o2!W}VSPBayKu0fgUu@pR@&<9ds1bN zhRdGD0?+7EwTI^gA9nNm{ETy?c8r*Jo@P+g_g3Ghk*1-(RMcxbvppV?P-k?F)2oSB z&Ng)q4q_5c7Q)?c#-EMe-4Po;~D0eA2)#nTcd4&z%-nvp2nHogI_179M2l>i#zvosS-S z_0gN;0m=rQHssdvAb;1eXh$#M5l&zxB|<=_L<8TSm-I(@w(x;8)6WNeIc;gH){mX_ zsK#OFl68f`SaHs!qGiOR_)h%Ujh_NtG>Cixp~Jo>516 z;aZRO=gYP#ZLW(?HN6&#Z&_-p+N}1AU+a~VS}k=5CX1D;-_~1|Qc+K`NtGNGO5k)ldCt(R**cUP~Ola+3oPp+#~X?Dp)eVcdKuD4h`xF{vL)~q{J=Cj!@)}rNdwm#(P+EA-ot=w#@lvS6s z);$|(++uM{+!oxnG*yLmkfH^Aw&tQ)BwnM<`g!m@y3 zj^HzDwU^5M3wvAFYPngdyQm&aDK^6eWTg6nyw9Wb^lP^5_PR|TMMrAG(w0n9scJZ{ zS<*_{NOdOh&L0r3f2siv`U8X4!QG*3~!!6s7+{5GmzFW#%F1f_6WniEKL^jp()sP{A6XYH4UYrjxFu=tGk>tf9Tx<{~t^ z8*t}nBSaa$xHX*Ol08E0`ehC^Msu+7e!8gulpR_3i_ zCFcb-7nBIYP27iI>+DPqo2k=O_s04wzo~Tah4A;q z*Uk1OoK@Bv@LZ|G0{ZF9`s58}#TMnltkh(`TNnwdBp595K=1?xq4B$05Hdn@(?AM_sSx>jn%cKc{lURo+@>zQqP6g$Mf*4ZYKwb=SA3sMQ zh5vCH^l7qe_VwQpDo!_+dP0fXDe*(GqO)bRDX_J$mjVPy2nc;5pNicWRn@qGgCmA` zo_5GJE~)_x!&Wn%x2Ap^>;CGmn+X^ZO`(92`8Sh=J9*Mk`I2^a>d{4Oi~k7PZ;+*# zV^)+;K^u)$NAnnOw~r89PH@!(1_>hn4q$sD&zM6pavQGpdm%b!QYVw5k^aLBKt(#G z=&(?ZlGai&NND(g-OXu#5PDEHU>V83C!-dgwv=0%?=E=lrjfM-`P1B5f$8Hn$qs7V zzglfca|NH&Z1K{&q!m>1$`oKTq(1`}byr3=RPgKNE=B&ZU7(M=#Z zIUcE>ET;#E&zO<8M`n7-O~sY=r^?0>gZW#=(87i*sSR{)b0%+OkQLxuXvh63_WYJ= zV;NiCZQOVD4~iqzUaUi*0$GJJCUl-*?Yo;Wvgnvl3}ne%x0cMh&H}eD+uY^4|SMrZR5DEO`1!kAlo04oX0`0^qeY0n9K#}uQt<`Mlp5NC^EeOc}=Gs&E z8X6J`5DLodUx6o*d?yu}lok$qZEyF2qWThwmY&s*x!2BopYdy?*-51q`8G^XXD-)B z;-}yQ0s|KvsvK%h?b(H%InhVsT_*OC_1BG@-;MBi@|G{;y6wa_|7H+lvyb*ea_|1x zv4$EUXQZDWkkXMstyWnuB?shfgXg8_l?)<9QqB&bArLvHF;^H8VO+*8Ga;PNELCij zNfP`=bLFo&07t%V@MKPH7x=o8?+$jvgG2v`c4Lc&tI&pat}_HXi+RHkK3`ZwzbJt& zFQh+Pn{YS{BrtsWLrwkkx6&%jrRIo38Pc$VsbhqgHHwlx zAEoqqIng(}%_RofFH>?bbNTi-Lkbs-(QT*k(RjS}Jgx=p8<1X&eP3JjZ*&AQsiI#J zYD`j7cx$iSXJ_g!o!yqJg6yzXgiheQaa{l2wX?x!ah^f6wX~C@{REu&|5N(O3)KNd zt{L3yej(z{z!u7m#U5{FX)ikzBtav^N%mLyqKGLF#1^35?m z@e^|1Rux^V!74yO0sg!Er2lS#iw1aRA193rH>kmvNLOqfg&`MS_8ZW)@ z=B{)?;HgFw0)!3tKB>nnz*;$!7a#~sV#Z;Vz#*ic3}V>sfJZ&Q!i-UKXR*|><)4IT z-lh6*$9lMcb&D;*hXjwD*(P{c^iwOMOBwsr)!wwaw;x~(c@<_|W0*7hKMFx+(K97k5_Az|L71vP;&2m7I`*Zttn+klv7?XA~o8#g&cq%agO6cF(jAq zKUXd)J-$O@`qr(&JU&aI@!)>|Y2e$d|AZL1hMy3FmfdE~DnO(GKES+T_XlG9BUCl~ zJOPj1D}E#K+zA%2u%T(eJ1{aZ#K7h8_2~-m*D%b`{oafanCN4K>Cd3^78nt5 zwH&x2zCMgrFRE>;Dmw2Cn7KSsmywTGAIe}NQ7+eE)Aqz5$HPgn2@hD5Ag1YkQ9oqE zckwo;)#Zhdo7k*a*Y)k(NtFQT0IAzN=H+b1!CxTNs3Hn!7dC`OOXjwJlji@5J#7|5 z&lwYsnUyFy?&J2n z{AnNpAd%jPM`<9AjH3l}1X+@?withYZ3!s{q6U`kIyFByEa& z9D1j~Fs10^JS|g0JHSjiF+UMn5-2Lt_L2 z+L~qy{okk34HC{Lh-U^NP5}`r4o)F1UVrCFG5kgu9Sw`|^*!B9NHv)69UEY&I2c@t zARbmHNPZoV?g*cR5(H4sM}R~c0`w2upjT_Z@+NATrE7`6wM-be0hwwtFfz8XvN|vd z%Kp!Z>B3EnU@l0fImLJI&`p&`oIqk`HX%G{j`@V$oaz7FjuM=_+j z?7LO``x{V7XPpN8AhGsck9Q^ynvmIuG6sA6I};G z|4xxv@rsIJA$IvxwT?sK3>Ep9OiO%mCn{3YM44+9U;fPK!kJa;tXdljl=C|Wvm7g9 zrLR7K)qbr}31pBR&T&TLtras{FTV_?Q>;Gtkj(mjVbOnK(f<=zl#@6ukNQ8dnbi=d zr@aPQdFi!V1?XE6VjW)h8-|tSl2+Wb&C<=75=@M}0NB!7yTC6{&&T3m3nL>zuw)P# z)epy&aOl+_O7Hp8P~rJ_#?{G*sdwLP^QRsmAi)!SOHWL$epu{fAWdU*1NyP}DsYKp z*t;p_*e1wu8Tr__R~d+Ybt!~+Ezn*xusDp=)hd7S#J|V|2&Y3S!1(kM;fxfN5E1F) zFJ6awec@R(|8o}ANz#ILsw`Qmix6KJ;@n7!$Q1&qDZF$Kw z2|*3sl-E(f{?K6;47UR37W{SYO8i%nAakB=55)wKmFz3|MB*S?%nv566*-F)zsD)2 z2R@PQhZKqja&hn}dslYFecVi{L2?uHo7jiR?_I{X4*ZJ$vc!BimTqJ~9o=d(DX<(+ zM>;l5Fjuh@*#P~-7Z6tahT{}59jVd>suL~0x7G(13kG#x_}UaGx6@yj*k}9KwUh#O z_U`{3C>k83qDaw_jQNJ_(SwfKHw3sg4|gZH%}*PBM`?MBOMhXZ_~I5ZIY#z-MltQv zzN;MtVNfQyXx?KO+8zbupk2x?V%k(yP!|;*$YBCh#u{xM$2+XKmH_RJJo*iHsQZNq zv|Z@(8nKq|%HW3DNp`+#bZJfGGu?@*E+P6gQ0r{>tyGz26lp!VlTsNUC@r(d#$;)? zIbN||+hZ%K`^(H?Bbd^ulexT119${iqLjbtXex7U(`%I+Z58?KQH79v?4Q|NU%;tjeg~kvB0!_g`jcq+0;su&vN>}?uI0dR82*O9!T=Z~ z??iy8VN`;VQ21%^BqfSPBXtx)H0wwwMl94>IPABwR=GfkzFMrE`d|(4`9Ukqwfpx& zjdnmUgIdJ%ALcof+-4uF>(k&)?+RCyxfw6;JMJNmL2n!) z|9tx4HT(e(x6O7}ob+Jy1({9%zVlxNe_vW+Qbgrz;*f)n?XybbJD{I1&y1T7QJ%)` z)JSD_<~dz{=w&UtP_j=1egS8*?1a1za({sSuskP);4O6OMpaxR%4`4JywT2j;3+_M z_{i5>HrtLE6PRTP~JWq1k!RTbNRHf9u_)diZ=d71W(l;?XjvHB~j5_9I4{bR?y=*@;j7 z=MSng^{=RMswU3U1F_YbMCR@&Exc{1E-^0DkyRtbFOc?*vi+aGFuqUzuOQk;-}Tw8 zu>+aod@-qI7tt*IcOpckk?}l5bIge_8$z`7UhNlZtQ$3WdRg zQ(D^d*75t+p$rg|pZt%#gM}!wq97dSrhzE*meIl+S!Zv?WU|+6z#4d0OrcyB4O0Lg ztYjhT?Oj^4oOOdFEm8n+n1-C8)pgntIH%s6&374clwQfn9vw3EpLUTDf%?Q5>_R4& zf?8%|F9kQCEyx@RMTAqDTV;Mp>B}d{ghi&uf$MNYOd>yR403{KODKLVS9)3gVpRo# zaL&8!Q5YwnFHuepNFT9|bTtd%-+z@0EAk0T)L&`$l52D2WqyM+mUh^4eDt#j_Zf2L zs=7pXnp%?kC^KNk>Lz8(ZqQ^MCSr7k)w&&6#a@QW)?9@SahzSq^-XXr5GfVI z=~w;$`%RBu2_bm#*r=PK#>5a;+YU9uY}cip+?Oy)tnhdoj7G>1$Vn-Vl}83#e^y5{ zbgw05N+9(Ce^a6ao%olgLW#U1TXby;GMpblP&LnCU<4NF6b%q`kMxQ!!pjMou!wau zKppN4C79N3ovRLJ1@63>3)A6tBE6d$mlp8US&AkZ1e|(`?TqFPZGl>M4Kw40M{Xgx z8wSr0<-Ar>1umX%-AXd&;&lc_!eIlt9Pp$#&@W3q(}jxe4R68n>JED1l?Y)+{SiE1 z50XRNX^Y!#Oxx+aoU26SG|ldSY2jCH(60_6;bsxQBd9IRzXke6Om_PYbIs9?=*%uU z*cyPW%_Pd@g@YhUuma&E2>BNr6fs3`7%Cdb7XJMOsGNiDRx!j4_k(z*gORTh{=jyK z#M4GT3N(STHDE*#l9G2d1opJzsyzW0;ta}KH9}w>p5;Y(3s{Ul7KE=6<55QpKC}E? zut;aoT+ntXbp;mvDC24i;$N_H4EdMR^6(CW|63GW7C@hx*ZL++kZU*(6u;3_uc{sx z)fM)H_|zgI&aw@{Z*r31_7+{CRn##)Oi0phkKabD3YK<;#!HH5qqNcU_YzETPD%6J zl$NP^O7CXeV&qpsEkbw*)8s+?j zgxiX6_Ku9Zl-xAkr$uho<6*ikADvX6IZA*;HN_hL1VT3zZbO*vrRdN{iBiO~{zVi{-E=*84 zzo=N56IZDH$+qXrZ)C%KsyxTh#tV4VJv(@e$z0k7+b0E zOf%fJUGai@&wXy>0e|A>56;io1~xR?3VyKV@@~Mq%}`H1uFFEsrU}xBR%f{)tKrue z&I#5SYJ3Ij3ER{(BPyeGa-7eR`wV>pfn44OjVe2i*^3xf z{C)W+haX=DxC($CpK>aEX7UZ$@{RJOU;7aj#H;>zj)fUg)Fjy_JIPdgJWxB;K+K1j z8;I8?JRS5a$Jmh%QSKWr>5C?+S_Wl9WgQHZ?aG9CX=4FPh8=KBX&kk8o4IyUHoK<5 z+#on*^y`n=@?>p|rJPTyl}2i%6ot~{FSaP9NhWlR7>qBJ3in12LmxVR<4|!-vN_p? zQs>62`#1N_0;W!^$oVK#+1WVr#VN@|2$y-+3j7G98 zR=?duQ5qcmPBf+O98Vt^?$kj>gd1)wz-+M zb`+VMEA#!t{rBa)I1pgWMekYyM1wgLY|`a-yjm|+`%8+Bm$x@vo@Jc3EqL0NU~S2% z)p^H?q#DSzW++v8GwldYN<-iio{_kRN<2w8Uoa}6!JV6@62mp$%h)>vmE1_L> zZ!W15?ci=O+vS_vwy061Rk}BZnX&m)N|*4Nt;<$@-^q@MmA^bU3%Toimxh(g9Il0X z(6FBie9fgT0*yb$#!D-HmVGt(ZSeHZP%b7mFRN=KAs zvxHs`WyG1^B7Rr1VIs{~#rhc|v-q4B7@BD2mGjGgVqWX7bo-bTBR-0IcO+U2xbKbw z^HrYgJWT~)%%cxE>{TmMoTwwN0WDsR)G+(Snwe3keeoW8->~~c(st8t1268&JgDqv zzCFmQ*HaKNYk?eyBf%+)XAkzh)BP(y>1yJ%9GVc)a9^EQmIEaPLE3~EG0UVO`PRV| zuKQ}gq`_a4rHd(1UM3_&FIHaQH?Us+K;qj%hq;}`9qwLFw>9d>dBqLvUK*V@;8lxwyVAp# zK?0;lwl-z3eh~^L_wR?=v5In@AnpDxm+n8AdSCGD7r3pf*^>$e1VUsT*srLoz64J9 z@yf7ugTBnlNak`p)GU`ZcDs2dn)96LFV4?0b0tvFPH*hHIE zeMx3*Lm@`@LbB+luzU9G>d(w+=CGa^@elTM$?l2K;ADv#G2ZIM2N8VH_lhPT^gs>( ztLH=$t?{9^_!4UF-n1!%+}b&T-mC5H=++DO6+xQ5xZAQHzT!c!=rde}OcI2YeNo&= z(x^Lq_D|hMKdG$cS?PU##Ce&_3phz=I*n2bm*-;qJMMGBsZkL#EXOrfrq*#PnjwrB zgJYRfe5XwZzs=j6Yz0=0L?d+FcFG`QyB@}oFLBTmF;Uw|m)^+mlu}g2@9&h- z{7RK*JyLaTY*QOF#?-|AZF-x17!cCeGQaVFgPtf6@I)M#qH!K{W=%MT+quibC@!9W z$cB2GI>(>cD(Jls-L3b*mCt@+`~^BM0~CuQ1OXUtlyinPf*A*E=+4?ocJ^zZ9&q1h zb0W_@o3~POEpt4q-Cec^y?Q0om>i>I*=nbx2IdX|EVc!1xgUwk^uXqJR z2ZtRvI~!l`LWK>(58a*2^7-k6B;-3vJ?(}T1X;<3Ddg_OX#OHv+frA(8AZ+J6X8X3 zTW-T;qWOt7%KYzxyxt?w_-Qs02FNFcHoj;tWKa4JUV=3__$Q@Qofgl0dbmFK=0xs$ zc5kKl+?YC8`Bsh#q7}723|r=ZG3@9}D}3=g9r1r;XCot-tp#e=g& zj*W@>ThFM)QN3aA)0Zda{`aaoTP~J0vjJ11qNbPWfk4?463yKZ2IdFgxNwWDU2j z_0wak-1UQSrW|ynkOaVdH{R<1xpgS_T6cQL$@I@ilPyGLz0&FzdHfYDvFnWIDQLe4U?aD=CxC@qcmV8y z0d}^W_D+%(C@xCOJT8Jac9|LgM<4JFoJ1THwX>e$?z>m8!2F`F!6sHZ;MN(M`)8*s zriE1#XxrZCUbSDl^)e(ojWf+!&cfsZ5_J}?79=n2)zgr8n+k(i9T#+ zr;+4be%a*|nPK$FnNDufv?AzVYl{^Ch&?ls5{uAEZ9XQk<<3cqKAgC)w|h?eTe=QF?ORMXb5_{BWWy*iNmJs<=650z(Ip`%NvjfqMiiQoXJZ?j7g=*6ev?rmef3l#itX@vqPtp z@(0Ht@%J_mCUru3aDx>~tDyS9A13Y|QA8M=czfyWFC4rdc_aM{z~(%jGQQ?2 zwIeiXV!~qL7Z^S^ahC<=eb*!T{LuhXKgL>)r+LAPH8rEU^SDo}LPXNjwIl9H$ z?Yp9ZtU;d|7cE$`r6if;YyGbTmoj*3gN=nqd8E!K6pc;73Sk%t?*OM(^Eux3kP8nk zKoIVRAM4+s^U+?%`0eF*e4LnV4Pr|})%RWC@AU4@|Rmr<*G$@&vq&AQfAjA3f2&toz1X4xuQ{kBL*uP!q?W^9+E@2*{)8nVJKa0 z_ZMJ`=yy%m6LzPjJ7QaXZrfVS+ZbZ=2rrv-NHnj4Rp3ulZtdhkcqN=I^0T>tg!?y?xYm}#l7rTkJQT^u8e=FcEOMAi@VZP5miG(5G9VGCJsAKgnZ{cw5jFtviz zOZphRFZ>5Z&QVN|GAGCm37!gX@lIyLmpMN=aZb2j{AI?N!g>A29tRo_91=x3gaa%h zYT3Xeh7xSu|3=CvMHPdoH<8jFL7YV#7mK-4cvQWx)F*c-Z?B&gx9oKBQFJCMDKS4m4cbO68)CHWoLsJVuL#;wdT7UKd)aq&hw%nM=c znSOwNbL@0>!Gb>=5%dos!a6_WKGVmY9LfNGdCxn87ya@5|J2Cp(7Bs zR6?yrcYc_&-SOQ04h6LP@F!uL2c;d8flLy}Eet#%Q64sPi`0sbn>U%kU7}Y#@B_t! z7LJfzKO&7-V6c1B*eFlmlZF-NtYHA_g*4u{EKkamT7Zhbkoq{>pT+VQT~-$)#iN$0RBkbnxx2tU1q z^o)l-r*N)}mLoAZD+oor8KObR{3yx-{jICd_iZV^8Ri$Qc=K=ZRmI@bZOjT(^&h`x-+^ysyIc1Qx|UyfI&&ais_JvcXkwwSsTvnsJ#l z22npg(|WIT2K4Iamp;`QrID};3Ty}bG+cM*>2J01ST4mH44GlJA`@;`a=nb0bJ8Wr z3as|Fjj?sR*@n%0#cT&qmIUnK+iBM-IYvE}st{qnHlz34)7Mz^_Ezh6*VTqHtNmfw z?51j5*UkH;)Wc*x0dvjAOia!%!p~d;%paRcjZ-(3A(ZP*H|`(PaVd~svOz52Pzmwa zQ7^(=iLLh={#StmgB{CQrZ>qzyk5>xBc$N^NHAiX#xWWiD4If$Kq3P{j8#nHj#VgR z5URS)F3(cRCNeI9V>0tMIn_^J)y2idO-wA~{=WisJAP{P#@A4W%%D*X)E=p(%kSxa z8XH@9M}BLqI`rNs=#PD}`nY$L&1+30l;(9x>LLqYzM^(fYPBA3OntSWNBWF-l~ z2liU6Q6oc?WE2Bg%fM%9{Ju7RA>L0+Qs-X@t1iCZA7^znKE59Z1?`~3+BbxyLL??G zM1xqN`WPbONBjhnKqR?+LOWCowyLkkF36Hpd>b+qF}tZc}O+1>2rLhN=D-1O{a^y3&wB*(;i z;B3=xILaRE$v}w)MomA}>NXNXz=%-~{$wF#HGE_XlTyMAjh$ISq^Np^h}hidhWY+& zhZHdThz0EB1Wa5Zd8Uxg&lurqL#r6jB*YNMITjFnJ2vXsZpHu)N)&U6Xin0fHn~3P zDX#@wVImatW20q53^`AMOfhdX*rXQa2L2Pa^Fe{ZH_3*tE$bzLFSv8#p|h})OA6-m zWD5*FLmybObCna@>iI&=hhUdZqnz1ujqNX%1~uBH45WfxvZ1vUIuLhAmB9??t3k^b zUK!x2*aMZuNBa783@|ma=*XjNK8f9lnBXE@_2~VGG6;v|x(t23p})2QLz$4(e3Baw z9fs?^F!vLP4UPr`8d+~G2C$Jv{rye;zX7|2aVTPVW*2IHY<; z*E~59J=3$ZIt_wZP*&}jkv^n2M0tM=G7WX zcPIqAT~~tRfdTj+!LVgY|9;OlK% zm9O+2w10EumZ1b_?%9mwtLE;$82MZJ`hh6lk8HCL4poEdqkN17Jo|57*UV1o8-ZU>O}o0~Eo?a8Ekq^9;Edh0^e!ILoePMCmw1-zz{Nu_2Xcms8_ke>9z zh$$#TN_WG#i-dxX2TV@^{`{&_zT^I-5A5wjp>N4u|Ig(2QPt!KnpESkvjN);WQGvr z5=|gEZMXsY&G2u?B_KZznNb0iyGN~FjF(Wl-YI8;p0SlMdq%>%crsjBNOmB-Y^Wtrw?@1bDDNpC;%~_@?G|s;zwkR*vXHIm(G}iRujv$0tr-Y5;9nL%Q7^!~ zy0fb1?#sY^$zs*Qy+IVe$J;=+`DOy*{0Rw=L|-*5FXyxfLB0tTU4aC6W{B3M4$BtR zK>E_9xG?VIsW^Um_KuB_3ZP%hRC2Yxpl?8_zOi16la5$QT4ga6@oz*jihmt+jcWh; z**gO30rCOcc*Tq_b|p?!%?JV<=7w<@PrZrmb&Z{MpX;FAd|7^mT0WLqkFa@hbr$@r zx5p=FZ>^Xw(F4FGKGLV{YHRQxoHRZm9ym4zKC&9LQZ*PaA#jmmbgiGPZCYP!H)34L z^oHN?HR!*#<5-eKPEqdcEgP&}Ir`-byfJSkSCdDsEx23?;t^oOL0MI`zVM&wbReIA z?GeO{ZiA9FHq%l;1k!~NpwmU9uk>Z_f;5IY4&vkej5xCG!6U11e}&!bnR&GZ+?COP?Zm$zcNvLx2c&}D(4hqtk-p4zxm7Zv~f zWrS=XUn9w=4Te|hOkiC~$^d=Bzw(gAy8>B`5lOfNXmb1PPbz64C;f^$+8a0`{&@we zWdkK35TGBnwlSZvo>BBkg#PjpB`i>d$uC?q&1}S87aon)4JBE9>3qPwU|G}rP4f5|Nn z=jbUtcyIooxw#h+={j|(bW<5H#@`|b<^2^;%xI@z#Ww81D~5KHWrpI*Ry38Iuvw^D zSK}*Y4*Oy|Updgcw|m)|Kp`Ts0l=Z@55i{;4fIbGSx;5#46wyX!EroAEP~3iSVoW{ zu`m6smXfuKI@PQ?)x@x8A%v7%<2fpBHRNG{d)t&tniKV|X;;SNc8}S4)Pj|1$9^$# zoUwu2(!xS%2R%k+)c2zCywG)O4IwH40jH(nvAAEn>uMKr#~0nhRKa+$PY$MslI{P@ z+}wLE$8&kj8zfcaFM!T`UodU{AjlOB*V;$>0# zose<;Lhs_J`S>FjD74ZJ-%H-9OzdT1yTw4aHgNcfpO18{-};Qm<^K1HKQ&0@-Len7 z7eR8cIcm_GWmNre66kC^5kVB>aElrvpw|@nL?ueFYzVAHMDSZ;S+~1;r{T{2GCpQ! zwuB2SE?y3Oj!CzqV~&?H|3+9ngm+;KrR}{rA2LNZWuqK3-i&zz1Odj9vbJ`2>y-Nf zoBN{8Wo421q8H26yIIG~rTjE9lwY~1uV~iX@?n)}_A)oWuWI(#;-Lelhk~MWTvUBT zxbGV~RDI6e{~y78>LPH!_y@Wpc=hvYako907g4L$LT}v2t^bqpTd@`GPni-|-iZC| zdqPJmPd3+Fs7#;$^lev<2dSC6bu5WrTmHH4MAz2eBz#W_b3P`&w$^F-;1%qh>@NaJ zy@iR2IOb>BjOg7k6Z^4-L&sr7P2f_STfo%4aL%z9_jFWOU4rWc!Oyva$Po+7*{6Q!P z;yhb2#=@%`W{&WIge;4d$dzslpLP+Sb`{@y{rjW;4Y8sKiNd>Gn8`JFOpl(i{mcq( zSA>?Km}NKhmMqRIX-u~!sr{+gKAX_Hdz;maEsk>+#O7?&FA~J`XJgBi?b0kTy9-g2 z!WNc%@;ZFr8ngz5{S`o0HPpNZ#>?;Qk;1XO8Scq`m&{*S&^Z%K`|eN162y6($t9Vn z^qRHe?G}#b)zG@l!`U7Ji`Xx}%?;9~`mb{70!Um1$)LIl+zTkT)hYWG-|6HySI9;Ch%oV9TP_cP4M?>%-inffu6M~!~)P6{tR6lXO z^C-y;>bXTkIO7czSrTM@fSdB7vhZuT46|CMp@okGTnE&RS`R%6PTw^~Lh^pnF|^fi z<~`8aSJq&iAfGaig2Iiy8kzQ1Mnd;CE=v!mzUt9XV>4BrtQIQvHqK!VCE3pjh-1bP zuoYH*q}(lUQ4uPtY3Z?90%Q(V`AgJP&^~B?F;G|GaBQhFdvi+Z)74bpsH&u*%j4-Q zy{-iprfGUR-ulTRSbA8Ro~|^`jqQ&RyXiPOuC7G>3*Os<-lwhnM>GD- zO*kxH`H&LlSLAM!;jdmmsn)BbrO4{^V>#ae7^SDrT{vD$jBMD~`}K=~#^clF$?wO! zW$K5g}^WslIuqi8n0zmNQ9HX66>Lv+bZo`)a!!xGfqj5dU~IIw>Qt!dY1dK zKry~Dg1_Y+O)o%T3SdF?dcqnMJF9Y@Ib_E1rhxLrb@ z>46re`uw&vr?LM${ccf$n?FItpHA-Rhrl)90J>Z1wiv zAeuu{Oxc*{iLVl39|9Spasvfz;Vp26L79WLIpCS{Lk{oKDiQosMnWHYUIK|L#3|*Pv#0&Dp$1>ujy6XPw-4J)i4) zMHn0T=8$APl=qd_fB^ai;|uS2f8KcxW7VpJF%$$M#4&Z{a1=8>Fu%z}uv0S*-N`Sb zzmuBGMF?Z@5sX54%76dcW@OJ+L*@`wHFe{RG)9n~;*cwdRFVWarX8!1*o6r4bsaPC zM7ax+N2s$o+bIC*S+)oSkyiV~2xonw=WSePhu-NN0QQY>3Goop?$RX7j+sM@`HpCP z9m{Q{c_(VLYcvaG&O@^$dJQEy`YCmQN!j!)sv+>m=P(`nd}lgy8N32Yx1)t z`S-iIiL=n~Lp-#J5|NH#p_@2QkIj1jDEFL0JOrkn3Z|RTGqT(RI;EZz{5~C5U%xyk ztTsmx2(D5D(5_S`c;JY~3*?#HY2=|63M{5s9h+VI-%haW$&++)UtkSY@SOE~4j@4L zNnQzyej%6x38c=(?6LjM#aj$tjm%6;cn@Zrl{zW5M2A+QwO!Q8a&;q(p^tJ+n@b_o zY`ojRwfn07)2%jD3HlfxvPxm&ZNDUd$kJusnGP%A^A9p@W;ZlDL|s`bVjY1 zGq1Pp=B4NHCE9oS*I7Egag;P|E&a#{K8lou6k+mEPQz%6>% zv4k@PIF2W9MOpEJAP@m{paEC zAlYFa_R&yu^f;f)J$v{#Z$~-sQ(6kYhf_pry(0$j6k}`#Ub>Hm4H(8}KF>L`A1K|n z?oddp_WY<0EePh>139CfW&LuOT*?WC42Z#tAydRF>>M*;8nxEK*dRTfKG<$0ECDUB z6QRhMz}zhxW!Yo0wu}&~1?!%VSnO2O5PR@7R)kfiapvbAzr__gyR5@!((ToHGf{Ljb(Ewn?ryEJs&ru#HP<5S3$wvg&;F@#-z z9C&Dw9Bd)GAZD`A9Jh7k6!iew9p9xSS^^(XV;^>PDW9@~Ch~ASNP-G5`77Qt>YMfgs$Q` zW`|_7QHZrbFT@KjU`TfBpfH6-LATBmu%dR&CTMR|u zph|!Cq(_=Y+?3z2n%D^A%vIt_eJ~D&M%;tST~V@9u6{nU-s-jBD|LYm*kzj|RLjhX zZW%2$Na>9E6FJ2CAfR_QBe(@yI@-Y2r=y!Y5?nS^)@{jqR}k|TRNG^HJqEX|>fkn3 z!>_1s^q)CpoEk+u6{;Ms0V8hmcF!VJH!e|L48j!58jY*ug}SEH9VV|*H;xx+?i=%n zH?iFobNaq2wv~K1Y14@N!G_BaNT;Xd7YthO4>L7Ueu0;nJB;l~Y0DF#ju}BaMM<0O zQwYuT9tM*T(t{K4?6Q(Aj+fRt#+oIHARor0d1EBJv%1}w>?fpfD3Zs#!@9waDQr_- zisa>$n$kl3RD_p`a87|G5r}TscOu9EsXt{3;#BA@fRXu#6hK(_1vc(XmGaou!Fn1T z0lKHArtWb{Yu3oG9Y=I1iK_u{KH10~dGRi{$}r_d!yr1!znj;_{(W4PRH5?;)gHfH z#h5#5g!J}h`?;h9e4e5YQQuYT!xv7^uCyTMpbuQ%U26$HK&*Y zR)93HP5~PR)-6u65kLdZtGAQ4dsBON#yTZylLzTUpmT>EWC=4PJ<-W%Y2ZN8ZZ6Tf zV!yN-cHx}UVzu>?W>M!6-x;NBP$h8GIU8Ljxpa~W*KNeWKzHjU*GxEFYYFkIfW=1_% zqu8DkYP;DZgYUuwvb)B~Gky4ZJ%cU6FY7&nnSBL4H=6OFZ&Z7~aL-jnR?LG`VNk0| za=!0QF+MODm9KAxxESp&=mV_M!ccu4^jU!SH;E?oEVI{cw1M+7D7jhLrCV*1+C$^V zIsS~X!OzdEpW-&Oa6%bFVmMag1?OP3^$6$p{+35P{EbYeL1{ZHbaR-0QC?(Y+w71E zsliusO-%``Ui3-wM+XCe8-d40%$0DkULstSRh^tfXU)jvL_0$ zLln#56oq|c(HL*JbaBNaoC)QzBU-f&7K?f?ze0ww_oNW;_wvOd3YhTGdhqvBWZ4+Z zNbfA|vWM$imm#K}x49#-StV_n#20qAf0WxN9AqfStc}>Ta&knxN-@tXkzl|0(2FBH z_PWq7@>gS_E7F7!&O15UG;z0jVj{z^?MJF~DSq8AVezh@XgbQ;y(0TMb4@8U7$MD`LG#&XX`3q88zUl& z*x(6H%LEpY&wX!oeC+GKUW@*j-z!_COVIbsg=iiJ)bLk-M3_C)osZYxf64DG;livI z@;v_ZiC+LaEwhEjLK{?ji4{J9$#X!HMku@H2~7&4lm{C8Vh{eH-D(2sts7&*wf9C@ zCBj4C(o)7roDman*izKr(W*SgcY^6gaKaAaorL>y|6VZe#T|Mk+@Wd?h0C}2JVu~a zrPp(pEbKW?rArXh7iA zQkzG%eE0aR7bM|^DJBqWFXIB=+JcV40~bx|5}cc4dzV1=Fv1?yDx|?~!mZ6#nSzE1 zng64^BQ0mSe@JT#eV8_-E*~5epxOPDJ1P+MtX&} zd8xzDEf^q2$DYaZ%T5s4Su_KWGwLs-0bU;H*~Sw~x?aWwqZeF8r;fApJ1M{VtyIEU z@GgI=kJO>JeD0)WXcNuN8IDY1|8@>L?;vWQHexm(Hf8dp$IcQLxvMN}HMR6RbEGNW z6JlywWis=m$N5bYHf}LegZ=wwcvNH-SqRlyquCF^lR?E&+u>_42ziG7KgaYV9?x4mxR^zesr#u_cjM( zQpm%~YnuFvy8!wjW1agN+@oWmr0C!hjB*OFQ29g68t3CJ`;h{vF{^-G!pLHo95U#g zhJlJ!iw+T~%xy*G3Rz`xZq@6j+_>8IP1|VMT&~UXt%7^fwBq%Z0O5kH5rWS1SoKfT z3x`2oUX;OdbAl<-y=T)O9ga~ySWq^`0kvtJe`O(C+vZ>J6UX^WI%SjeKV`>8ISZ#4 zQ)zj_1^!Z(DNC(uCh796y-_yEt2@fHwlJ4~d!Fd?MK>A-9qaS8HyV1l)Z&Y3*D3NG z2qg-;%%sh%AdG8IPnAQCl#E%yQ>}2})>{yb<-IgJhm{@HpJi?FS^RMk8f9WWiFgS@%kKOpW6-i2JY<*^9 zQ!TNVugSl(>;@UA8Q z87TeFK1loG}``oSH%iCxJ!h=qraP6mUb zePzY-?!#|$vO^0DC?xm-tldF5;Eh)vxb&B2K(xIS@f@EaZhG{DAsFVK01M!e7$e>6oMdyj#dTU;(|tR)y;yFTYBAB{0|aQ@@xKk0 z6g{g!o#e@6fx0yZg78B84Jhvjqx^TRhBZ(C6Zx!Pnj`2xbu>qEUi#z%n!p#v(}P;6 zY5k_8RnP#|M(hAUB#XfcblsnVtQT#@C2P9Wep5GwAe4)=v3B@bJNf~Ab^|X^M~r$^ z$PI;^azR5`;<8a|q47O#k1{i?+ZKpCIpM!}kN~>?ccmH& z62P{VmEn}xwQjHYq89KJJbV2lwa1_3qgmK(vwlY*=rIJbMcl0McQPN=c&q}M6nk~@ zS@#9vlGam=(R&XAtT7Y#V^;~!TurZRL3fX?tH8|_oN(CTyScOj{3;QABK=)&N3_A& zbY-dnUBk*-Ag(?}dF|lp!_}xXGd1`*zDM;Goz!BJBI(-<@GO(W*BgWYlXJ(SD-uH; zBt6n+XhkYxJoM>a#_%Duk)bGr6Mn{d4ZBLG$uO4a$Pg$rp``OyojGk(#)ly z^BH-vWV6;$HVFX{Ygro{GAr&8U9#81iWv z!Du*sk)*EDU+@+}A}5H|1nGBDx=`VQ(gCa4gn3p78e!FnvFu#A4kD)En%(pB@u$1Z zYz`41sJDFLFa6(v?jDI@g2v`ZoY_bvmKDhfFZ^~gyBk7q?cdZ5-3bHPWL{TId@yIj6|u@Qx^^k(Q? z>TnU|2@5rg`Fk?h!uw2I(z&gQxX5`AfD zU~Zs=!_yLSF@m@oW7a9s8d#DKd*Mu{Mv?G!k3Nf;@O4EV5BlG`g3d=g-iNTI0B5TR z?k@%!1c^LtZlvrjYJ`6zkxALHg!PK#^ilM_wIpyS-hXLHdkK~5QUqH23r_4m+JUR8 zUIz0Oz%Ku2Nu1L_WgA~ISBigWNw#k-`T1DxT8!-1B609U+Tf2=4i}ua61^!~BxZb< z&XyYQqcf$S^ds(AZi5dc1Rsyz3xl=ygOFu~7X2KNjx;^jk}g|Dz=Vt#9rB){^J`v_s!ova8@R){?>w|L0or%IR3CtrhLRX-Oj3l7f|3=y;}HCY?<2 z#)GSv!4yQry+{`Ge)@E7qU|TgP6cR3^&}wyxFaP%VNEyV@Lh6(g$> z2r-sc7$8{3D)-F11D1X85dPn5$-q*7knehPAb6y(jEsPlGIyX7nKZ=DA0N2d=_O6Z zS`1h3lbuH!5L%b_#t)d2WM|_c4ep`mc@d znmo{MSw`0I$RA%yErg2$;c;RD1VFglUQ<=mZi{zGv_(HbY6ZyLWX9}&N>Oo8r3D5| z{#XzY;ZDn9fH{OH{=}Lkapr%lOp)_wH=vV8aJPr&ZTnw<{F7n$} zMo8t?Yt18FKTc;XQj2iqW-}0_ncn)ko8x#ZRkJKKI8xr?hAxSw+fJ!lJE=pe7Fx%M z@}!4&rC8`58W~R!WY>mf8X%`(bBqu;&6`Xdn9@|F=c5r*J$s}-cc zE=*LlPpbl8=^G>rO4x05G(COi+!71%>j%0>g^@@L>dnvfX|m z&B6dX5Q|e(hQ$uB(j_J(Aib;mfOr7?p^9jN)r=GHimppMBwQ}OQzxA?Ba4Fu#e|#g z3fO}oN+qOhnQ0D;NjRcz&g!kU9byx$;#+Nq?YeBnpZZRg5Qz-3Be!hVR|U0BfQZ(aj_E3q+k7LKp?Y z-4j}aS=bRqL?GtW24OV@HOM=5!6O}23g$cz?ZTQCICmlCIG8zH2S%XgINO#*2%NMV zqVN3kix9o5&ns0|-62g}$XBzHU`}-K2}gz1+YctU2Y1?MXzymKZC#51F-!m zAcO$JWhsT`(H+2U2L?sJ=Y{>xe?V2cwR3^}lAXoBb->03ny51HJnzsime zc@)v<%j_2q@s`U@#rYhd$4QO`89T6vnj03}teG_9#@4&xcn#Zp#|R0JkMbt7s%OW3 zVm%ECSsUpqt{R4YKOjU`&k#30AcR(58#{8FV}c)Sltkh46?9}fcEgJXJz!|T1H$$W zD{%xA>)0IgVu*kg9`FIARGV$s*`KhVIJ>`@-EFX z6ESGqk_rArIZ@sSG~+g5)vFO0a!f*N`zDm^ z*{MEc(`-^MO_zeLlbA9~$MJTYquLvRY=T=9o_LxRP_DNV9ND$37&oq)>| z+g`7NGHy?$KhV`8(l%(*$q~QNjvpqmSKPGxr0uAtc_NvIWxGTU#Yda>d|VPOWxG_; z%95^tykHO30{mvJ+@PB_Dk8=L@+4DMWxI5|D)-wRZ^@P4bg6XvymL~V3=dk4mM?U83yeEERpKU1si7+66PzlZ z6&hF3fIF)j&?Z@s4&0PasIMDz6P>J1B7orL5&Idv@H2aP zIH3^aP9lI^^%TChin>Sg=tf8B)S%tQ5u=xc|M`g4)#=A4{3YedCcUEq`-Zqmgo6o& z$J@7p9iSLSP>O21QEdFl}mN&@Rh9_k|g5xfHZ4O_`rMx5oAg_jS2M%A-bb^ZQ zdibj({5)$(L(F(HdDI~iUNO^Y3NPfmQzeSqkv!;1l(D;nSm-*$r(sG%$#lV8;CU<;fvZRFq1S`5p)zWC&G;Uh zT>eN2{{Y9LEv`zh)*Ut2gV<2V5@Rok^J_2bcdqlw>!SdDu=eQuk`!g5suri>Vx)ub{0K%OR zkHiHD;V%us(xai)u)vlTUm!VTqn zS*tMiDQW$hZ^u$_-=VbI{GB8Uv_0@}W+SkM2E&mi+9N00qX(KB6GA&(7#==ty3~Vl zTTr2b;xP)^D`_Y{7irrH_B|DhZ-sFF&uJOqqBR#6Ct8>GZekCz4;a%GlhvftUgym2 zshR*ZdKGGdQyJ_P_2|{BYtGA=Pf`J=F_xszn1IXFv4iFpy8bsL^w zFkxbCTx9@pu9E)An8mE}9M$Dp+O$isSwb6T}> z0NN>WXj{ucn@G1y{FzHUOO6bxTV|hrMO}K+qzPARR}Y^W+@QDX=YlK+%8Qapymm5A zI?a?i<&--0lzLMKKH?^Ybp+T-*BRkztF}=(%{d#4w;ezUP(>KaG1MwgRI4$9gL*qO zW!b@PS>>DzvQZ`2OgUYhUoTby>}05GZ;E58RFX}EIwpvI5QvKrnGhDDD7|=}&P4zLvOP#t`zqCO{i&u7InI$g%PR^1S zfptaAZNl3eeLG;%D^(yfYwgH4V&SJX2%6`0n7)Rcqwq5BP{D?IY<0i`|S1qSBscR1W66)rRD866*ye)Q|7%H%j zZu)Ss)}0?4JAQt?Q!j9U3X6NMV(+IuIVF(%1)Ah%|6M}uMwXHMrELGKX~#O))FMig}f7K1J? zFBs_}F+$ss1|d2hsl2S|YQ946yXkO`&-nDKJiYr>QB!ky^#l-xLcHm=y1&{NB$`Y_ z^nyx&YY)ZLpe=1S%YgbMe-Mm=O7osQDhA}p|2AwzXagu2#4ryYpH`wuvT6Kco`9WQ zxL^fxC7U%HN*94HT3c!jNdVr6k>>zi$klxdzxT;V%1X$fkM{l%JH^vktDa>MZ*$sXksw*?IZ3mn zDjoLhKos*=mMhc3diQWcSdx|@G9dkdqTh=QNnG2as(O^Rt#8#_vzEL9wLPacLNv9n zbXRXrx|RCfj`U^~Zuk43Bif#DduEpjQ3({R8~1Tv!w$8)&UVe(_NQ2nf@jYa)M`P z#*^ZccvC9Oo!Mp97x_+J%6yh=)2pB7VP?yq}0B;I~T@)>{K3xWovK3bA-N(C3a9Np@MmnvbUV=QP_jR z-av<_PCAC>h~n7{yyca}g`UP)dsE z=qzP1A}w$$OIhk;peZ_tbXt8Z_nBGb{+QM(1Em&zasGHNE%m-xNuG?l2#|0ct~C6< zbXz;-``!=UwmB#=f}`i-$?WZ|MM$e_h{)HHSwrBBlUyUQOx6t8&l5iH8AI;pD>Lf* zU)%W^nR3C<+x{2zo2*bl{z~!utSt=hf7_3iOH*WmX&SprA4_}9PRoA9ujTSj!QWar zN<1&Q($obDW3Qur%3+DIw$Q(?&ArVS;y=5aVa#n8T~Ep0%x!mEPYr)QCTIx8%XWh z71s|FS3%^Y#@mc<)Gi*kx3KR9^^h+Ovg#h`yUpo$?s;{`5D3PGy;(vz<4zf zgPwpXFlK3Y!o|DB#sq+LwIi~1A=%qw_^wHwZkgn6>(6>50+s+I@U~1~u{4>6EZZ-A zh(55KrIMopOt%l}UEq#dNPef>bqi+akrS6@Kgm}Pxu;>5l~A1w+lg9Qf}sC^=u^V< zviH3DNq=T0ZvDQ!2>AQ9b5sLr&=S+>819`}D%ItJw+!r2oGB_{}Ec#4%%7gHt`t8-S4$YQa@|FPD7RaAxIEc%g zP%OQ0?+vZxqn~^_C|4ZnLN-kZ*JYm`Jx$!l+7EI0@glqg=*A3OVqF)IuxTNw@HnL; z>Q)F7KvZ}|ys4a;5|}n@m3D-GLE^;d{uJ{ztNVqtO##WL{}vds861mOcE;*CQNG>l z(5!yPEKS?rQd&Bn^5pIPOBE)}Q$;9$tE%+^-NU62vdy?XC`pRkeKb&W*mX}|T@T_W z*_*?B>qYaGSMdz(_C3mGORnh`MIE+3{0j}iP(fkMR8++>9CZLI8#XQfr~YjvVh-5) zHJC_FQ?Fw8)Tinve#sZE%cDB^MWKV)`wA+8L1B;Th%ZEdygvYdtFq{{o8G{5tfPiQ}6DHJWwf0#oU7G2WsK*pRk6eR2 zKXaKo+HFwkiApeI%DUX>w~KP$5ANCu?>x7L{@iGsnkg!exz6#0s^)dRLvq*XGUD7L zc8*t`Jfy9H%`a6bdnEx6t-xls#e&O&c!8!1L@k{NgTcxqq ziY}1dQ!;s~^T7oPNJZ+$m4beUC7KCu0dq1pf!U!2E`5Hw;q3BR{h6+Oluiy*ap`dj zU`u1Z8h=+ZEeYc^BOn_y)4~jM2AoTcN~Oeq&3HYrY;!ATQ97Ang>$Zy+qRvVBb8;e zSHf~Hw&%&Y^8M}C*!b%s$0Ntx@LDnOaDdcZhO=Mr;9W65c0iOte#25J#>OkQTk_*! zo$yB0Q+3;=sx0gyHw*Gjap2VwQ?So$|0$H?E+;kz0R>bJ#HjnjA$;^F^TOQEAD)c?L8s) zC9vUBHiRA~J&n!XexPIGN}O+@_*7-2THVv09ChwmLq?NN;q=AQ0bDV1h~pWZ+D%{o zfwc*g>Jyk~(0KcTd;||I1d#F@H2X7M-Z-du45uj6VYJ^|bahuUMemm|Buphg-UoBi%XIsqzDapAu2@4cSeF8r8B3SM6`%!cAo~tCGt%xU#|UMR+;G~^9x2D%7}X5C zDL9k8T+`J6D(~6(vJdapsU$QU^+NLX$mDS*4+`_WTj{HOLI>FTTY2vr7%)OpYg1aH z_W`8#xP8f8S!cvy!s+3D&j&@8zY)5TEk4=793(r8h!(FySVPakq*b1;JYAAdKbOo% z8Tr&;Tbo%1hTNYeDigFqVQ$4d#KZg>9XOG7$yEDZj9ErB zwzq5fw`X{@s#c?mY)HmVyl2!zuKG=Mcoh^R-#TTu^R}9al9_uk;w!x4=LPBB6Wc`s zmgOR59>(%dNKbvkcKm(sz^VI!9-1#+a&|a>aNfINi%&z=*}I=B}o>HlCSA@^Np2hrabuDclYBH2e6{ zHJg)1t+o%nLYWif4PY7f=~=wrF5z?=i8a%uZ7zpq>Wt5@Gjib;0X&$cZ4TjnXTSW* zQg73Y@NGB{(4!BCxW&S^@vN1NE+F5}tg7cN{Nq=HBwoWqr%t2Wir3L$e$k;;jPVp( z-!*a*I^Z9!Fux#tzT*BIWs?=FkcL{spt;gYSqIJC6Ny}U%5|}m~mDl;rl6GE2 z#t4qry z8~TTqg+zL4m>Mlnq69k?OM+X&vTMAtdx@%oqImHcAiGW8*oqPgRT0X?i|&n|8qK4ESw`RlZi z`E>5-nQ+#wCwF{AE50KhnS~wiL8&aiMDmfjwOru8s>`!SRd&m$sMtGw1K7_F!J4Ia z4|ePZ{w}?0mBbl~5IACq`_Y}px%X$TjmuDZ`7`689 z_21fF8HJk}oEv$k&K%P~T~N zW(^8|fDG{zaB8AcK=4FVpS%O8cX5^hz%8VZx}UlzBVi6W^p}Srgwy@_RQ`DsNY9WI z9AXX-yY*UGoW9zSE%rppB#LJuy^nH#Ayquo+Mrw@kS91rCzz&I9W!Tk(#TpWt|r<( z9z$<_!ac{8^kJtox;5INFGH^ZBZ1^$zrPv(E5f14XiggXUz0J((V+GWo6=C?426#G zZ%~}{q0XG5PQ7r>&`aKysQs;z7yLsV%8931Lmx<2koI1GiB9th8AhQetqL(#GSR>j z+Ob}@(I|D~s&0|w@S3YJXPQ9+)twCBqf1v5MJ9gV9M#i$Q&nOi75gVG1luQQ3D9rPVn`VVW8*^(D_@< zV436MAdKmkp~%@z+0!uRIOzUq?_pE8Xj)G4CeuC{a%G74sw=@9gT3cjAo{jgD;3A4 zzZ7_y0-rbisvUY5(r&PF`A*n9*>dN5aGrP-UmzOv07#|}T9Mv8g> z?P`;!&X2d?vovkAZ7$+(V%uZT3?#EJuOMAmI{el2u6p*XoM5dQH(ax)DIPW3aXisr zUDDA3tmu>E&MI56R18>SMZ>YNgh!a$Q6!G^~a-mreXFu_<4U2q93+UlM)}y0sUj zfdfs&1NKV<5KIF=;;Ro5dtQ7q1t}q9ejuNx8t2I3kW!=hvE#9w!b)NMkT!;-FWHC$ zqBEK7cq^nj?;yO--MPlFgtyIZ34RA*C{(kskH+;&!m`?EACec-F!63~ga{u!(&q+8Q9=8pEedL#>*B1F+)ghsiE+2j-=3_FVwTq9l15BoG z=_>RkdP&aJC@k++!7)Xe|r|*R<$Sc_vcAfkkTNJ%KL~Pqzo?{ zJaRb~K1O*ajo1CVeP|hTM&e<&=<=9L7Pf3hbA7$&z}>R!70x8+Bsw95!7wF^lSJ%0S7 z_a@Ev@&f*Y&g0bV2QM-xoI&$q{i?;WQtKO!R$eYOj~Yg`s#l2zjhlhH@Xmgf3UwK#47v;txhEMPV;R@zvJ`@zses~*VI80 z+b7|vUQ|^JEApP)S`?!jj~&*(klOMzYFV=u>K>tjsFs4nH67AK;tmZ&WAH5g7a%3x z_YJkUyeCMsu(ULvl`6NV9GMJMrPU9C2X z`~8HU6`J<(QtN!PJjjVLfRpUpjoVh#2JtD>SU)20Q|h6XiJ7G|0k&k7i1y|}z8QE*o_fevltb>4 zn;n3%v)nqWSI^jkn+8@0{O9N3@mtcOb)G00lF6h5rds>If+biWS%)S!rmS%>R#&^7sD;DR0mn z@EmTs@M^KHZie2v5b|(|Ve+zFT{Y$)F^60PT{Le;PIHfadyyZ70VnLecQ`&-cYRGDQ%Ukka8|iiRL* zeX?0guniRcAQgp(gm=`Of)5==veFkf<-iiX0JB%4Jp-xPdn7r zN}}^q z6O=vB1xLc-0O;WfM3w~KW^d^BAG(5IVFblFo^w)g+(hX0oX6dsdLhgRq^k>@d{K1d zhXF$x;@awCyG8Jy9qy&ILl^HLy_>Jo;CcV7Jcb8D?!jAbq5zn6%)&;8%z^b zk=~jdef)@kDn%MYy^NnFlu*VAY3l;2+NgRRsLm4}0l#e#lk! zP@DE34RNsMGuVqtJz5g|M?>7?|ES7gm_?_2yt8M9$R^P``2Zj|3hMb9Q^|lxLhMPf zy8M{_BPkHaAB1H^u~dS2Sle2O(+nBThpK@rbck`*xgx@;G0#?)3;{64f;~(kS#|wlI40x?;-h`BNgpw*j#oWQGR+N! zvv>Cv0GdGs64nP3&Kof@!IDgmR4=bFgU?;=c7&r+fDo*sq_#uOzfgeKc zn7Hc{kK{PPEh6V8cJ-VYu#dNHPMn-F=QpFzeAwsBYd^QQLEUyTRB=1V9-n5cI6Z>N zuBRX@i{%j&drpttfx^RT?e`-nNc7Y2D;dZ|2oHc zf`v)p-+ch`>QnYSsgWakC*8oTU$EjPAu#vcBoGq?xF!5ewII2d-jczc1K8bEQ-NIY z(^Gk?>!5FJ3#PcW88MDaz=UmGx)M03Uw8{Dku6&>5~snrNv1K+rk}#o&S4dw{PN2UeL~?Q-^;%DzBeXEqvB8s||e*R%8q8Rox)|M=mX2SqJ9cttiKYe2f0*8&Vqa zw@I>+ZxQ`f8EppTi@L2A6gXk!30)OZ6O{?TSNI1~%6vmg9;TO3^mCxsmgt^>_Rul4 zE$;PV3!_^8iwn*hej~M_sz;D&g?}LBn``Cc=L;v{T_NFP!FL6QzhJM;D+L~=v|ZYY zW7@gg1?cEkWtgj^v0a+=fuIA~h~}~}53O_Met5v7bmH9LxqrHi*eHTYnDV|0(+k0m zdg_-eL5A>W+K| zL^1yjDa)zTZ}V({IktFeYau#>?g%A3S0hh1~MJKact&5dmn|5 z!PB}Uw8Ly~vXM)hHJ!Xw*Q1HT;W!((`{H~QZhC10y(>O1}P z?Y|i1+bj!NH>8ULLUlGj;;pmvx2TN8@7lO8tonCnl8=`yp@$KF^p_eY!VPMo5W!jU zwP-wdqQs+WjhER2Snfo@luPAN8`^_Ivl=rN%r4WSA_V?<9h0d?3T>+$RjI`CPo-Zl z>3#}WJAhW3^yBYk?gxJC@}y1TPgUwqw2_Pd8+-TEWLvbg3p#Dvwr$(CbER$Dwr$(C zwGu0B+jds&{hg>d7bhy}2b`NRFXq*ZKBA8{+j#oh&f;=7uB3S@Tvq=w_xP?%6-Os| zx3nvpX}QPbr%3%KO=6u|yUtaEYh|4ww}Y}HFz9+rdR|hWRYL_(j~if`1Z{e!e4^SS z$U!HZ(lSCnwqyrG_CnD6ccOL)?uk9QHKqF*KEfXFUK5 zkZt$LoQU(8TXFH<30AL-+4xrh?%S`g8TMkmR^3|y+?m*e0|h9ZNc<{FCX!S0-w#Mg z%Xj~8c|Etg`@pfuz9nI%K=8Cu10ET!Oi6IIv{J_hl(<2^OzPqSIi#+wG7nw~%UWY` z-Z++oT{Qb>$t-)9C&yS-!#HKbICaCc+xiW|)xCjZrV7DgYK(V~5I)5Md8N}N;livM z!Mwt`GO9-ls2&!QPFZpEF`>2(>Ol2{I)PMPIc+6ice;m{Rn+uYa=(z(WIjyBEq^jM5#Z*ro>pcG7waT+ol>b6{-Z7}cuDpF zk_JFP%EC>^+_8`ZS8m5-2at3!c=8C(!E(ONyDQ zhdNWPjPbZk&&ABm4jqqHA&=*(dux-a3&1^}!cd9$t1i64oGO%O%a9&1!#W#6%K+5k zyHSo6%EKopk07Di*XYrzpjHQ4mHaG}Q&Z5+Bj(m{7J|PuoApJMc1Z0F(n$C5d)lqkHB zcXDB?xqktw+Z|sy%W6E9rhH|zvHt7-)e6h9X(&B z&hwULQ}SMDy&PeGKKw5MzdX^=KNT1bPXf2!JU~Z=y!_M^E|DxXHMje^1G7K(2RdrA z^?HgQH@XXj)D0DVpX)cX3kijrddc_J)_!KNwZi#-o{C36JwQD~J%a8Z#17%auIn!^ zKLtZX5!cp)ouH#0qM*LH@Eya@JD?o>{^BLi{s&Tu?wp{S{%?@d#&?<$hvjvwJFq%C z&zI;29C*bF@xPGLNmUf>`rk_q%_YLJ^&z5}7=9v%ph0y7)>x)~spYYqgyAqFDE$L}dP@7Xrdy5{S@h8t0Y|SKW>jh1GFNdhbp4gOAyT z)5kXWub*tlgM6gFq5O}ZT!)Hh^$NkrATMci$cNy|@XW7*K=b&opOk1cNPu65P|OMY z-~A-b!qSQbz`0cMlo~fUg2;tkC!!Fwxs9_Hb~)SOx?l0hQ1W8)qgu^Izu#ZLY5m*V zf;LU4y(`kT;9EcX?ze&6=JSM{R*>QA+2;{G!c7c*t9pSZqS> zlM$E)e*vXh^nU;)n_zAPx-oszqlMm;IxJ!ylz z#%0XqsXGQG)(f8V4*ucBP$W$QpkF_U{_7|4#I%@}-$l@94Q&{z)el@ExBjY&bj$6j z-PJmj>7agtCA!Ce-FY?w&Qlm$lA6C-Cdhqpno+?0=< z;C@xP@33?m5llQr%yP3ONJhC=!QQlw#kqafMY;v<<-ES$$-S%I$+2}S6a0m-%z3mW z#Vi1uhRFo_zQ8^6tQ5>fo2_BHr$tEO_0r3~0{b!|&cs_`0kI3uWpM$ zX5J@cg&%Y$FUg3YS@``8zn!RyOLq(#){EbSNL^xeA32^6SK4~NmDSl8vz_nx zXQCh8d}0+@)h7u_vvN2`yzsA?5w61!s15Oq#KiGDd_$B#4}vkbnljGZaUp?kpjJh* zmRO<&NAWB4L;C0i`9nEz%VE%XzglWdUSNd4ka+%{tYW*9KtC(=xLyzV`y1E0dG;HB zKjSnMt!XmF6Xy?EZmnp*pW){#3r57x7cS@g5surq>-;(K06)(zxn_vKpRHER=3gio zweH-?oexc0J7+`LLQPBe4@2h4)NXF;st}y^8saB%Im0zUG%9PbuUD1rSK<7$KH_Li z1N`Jh>uBkqd{0pFS~%#vni=NuV!vB3!hUjdJr#}!?&$;U^UTd30FjQA<#zm!lvEVo z5dd~~Nha41;$t}Y04NF?U@<(8irSoVPI37p_*8{J1Khqeqx6O{O9Q0)3+2^4NT9DX;4KY!VjN+v94$x3iF6_Me3A9;C?JV(xZv60QQYQ;JXYG5kWwZ_eEYoXu0N+mfkOJob(> zT$Tybl>k})DaWDz*h*OH^j+!xjt;_A8MO|n-lg%NAc&;V*?Q%udZzTVexQx+bbOIlAe!%V=ar4RE@NH!&H>F<^zizThC)3VDf1T_d2sGAaW5av ziWNw}&15~0?z>{oDlxjy_Vef5-&SBpuFP5O*Xu2m$KVxjHxZOKf0ggK*8nX6%$B-3e?c=?}5R!HqrstwMI zk!oC-BJQy4uthVf;vRUiEkDs9S8Ywv$a2eZsn(>vIvK9s+<|$lU>svp-$@YiqDyoe zwUjgOB)2!j7ax%RrHDMgv0|zB(w1K`$m{>Rj?fGQUPVEU^+rpbM{uWv$QvMmV?yD8 zL~f`k29uu`Y@b$Ru?p zv6MNv6TGZ5v%cFlz01Vde~ILue(;QCjhyi^>_y@#OjYXJElJVm)`Yx<`!l4mmjmql zNNcdRgp@v72TA^3K&m$xI{%c}`1Y*BGK%gU`>dILED^<1?EJv=8Ps}s#wHTEbNoPN zf4i?#!efk-bJjh^?^qeOQEgt&=ss+G|1ozV0Jmr-rl)R|glSgW`;GF~GV zG)HQ&HwM-HPP6tT?^nK;5Y_keTv_H0*U5R&P4t=BTBJ7E!{@o#o=tSMUWxs+fK9yj zwY03kN&a{ZRtgYi(&eXvLcd|32DU_@w*MH(()#;25?k`{HKeo`v+xm}_?8(TVIR`Z z7apz+$R8O@IGHr50=hjY&BYO-YRG&h{PJ~EwF$>=;!qzG`T11Azdu7PBAPd>K6gh%5sjT>kk>PI2lst>= zRs@YYk1h{U>_T_K#Fan1q;MWnZ3)pkIV?h5{U=yM4?y~-qHgr{iu9iD0rXEq|ESkd zQgC4XLb4bAeibBoLaj#SbHGfhWmL(!WksuIWu2B#2%^eQb6t(aoOHEMEg~0!Hj;yQ zq;`Zj<=q40z8qG*QPZft5et(7$hTWO3 zIizl+w3!|rXwX-(>#gU^3mN{PMP^`e$5b}cGyrWoVYb^ zY-{@z)|nzf_rQ!@-t-~_FVGmxnuE0KU}8?QahaA3*=9OUX}^WE)9AvYR%TP`aT!`0 z6DJ;`auK$&>25YDx7`GtMq?iB+Q?XBL>6fzdIqKhc<&3Fklb!0X;qssZ0cntY1eY&G=uxXhPZA1Jd$2pux#pW zXphgP_veN{Ey-J&MWlnWZpXI$qKNh%Nj1p>)E(wW5O zRn7fH9)w2@N@89)sgyBE%p->ZaWC2(H;?}%Aa{bMNz{rqH>8AiGt2SwH?eEpS=%~L zznsaWlxFk-*lP}qR__WM)@SezOZi*1u60eR%C|~p*Mp63gh!{;Ca12dHv`BXEeeuI z?>-3>HLo%fABz(YGuF1HvszpOKNR){1t0rKUbXnqSrje=q6xcoU9w1YXWA+&M${ilQ4!L_ASNnS*d@V9(KM&NL9gqyWuf+!QB&8)e zSF{@q9UV4L_kP5FA8J}O2Aj2n$H?s<;!qfBDl9Fgj@s)>Vj|yf@0a#eUqkJ^u#?K$ zXwH8h@arR*;z#^#Ze{8tIVCmDy=Zo4N*o2NB{1;TujGi-gjf$tNn@dlU0R=p^l=Z> zWQ2H9dPK5G zu)6Tm?_~J5XACtJ)~(0WE;E45zCf)$ZTL1J=&IIcj(Hlst2wL@m_t*IQHxfs&f~L@#Akh#z zE#W~?qZGQ`%~Q_(b`_}$_X}#4m$j_;3-y8n!$|YXIP7+gix^Sq`5Gs>-)3%J$e5ep ze+T@|xK?AIKVnW&2+e|+~joS5q*~d-ZF|?177TzZvV;l(Wud)xH zWmu;08v%F+1Oxnu>MzrEa|Alk(dr3SLs-@RLx}qlgvUv}u&P{eMKA{+BtgsgcgG^3 zMBtFqN@*|iO9IDsmh9V0R^L|Ij2d9X6Ui^>E#E|KW6HZ2Yp?HAz#DcIc%_FsAP5!Z z61o2h?5==gQK%RL08M{K^c{v_Nrr1VRz%$9@{bMBrkyElv)O=PFs@G6E0mG3wZJFY zi7}0kbzeU~!l6dUDp}}w6WE;v8rdw<@U>xZG--Iw6$D2PM!1Moqb}>(H9_#g8W4`# z76i!Iy!p7z4(r}FA`7|TE}U(EH<5RD^_^r0FyRKl4#ZoDX1T{g+ft}$YxO$^-Z4Ew zT@{+%!WYylo>bg?jfXLwE0w(Z)=-6t%u1}> zfmR$`qVJC0JPi9{#*U^+c&EM0zt)&UWrpem>rp1hHEW_Ao&*_eHD8IV==r2CQ$H@n zM*4N)w5#BhHtC{>Y+WX24W_l%!>ejlE_Q386IOl$s+yIrv8@vzc-Y@oi4YJ9gWEX`KIezxzMz zcQMJbGRT4`V>?+nHdATI5-{Y0TJU7Wx&j1v^G)+rZL$^NF;)@H*b(T-a%jUvuPN;$KI9aTXbJqkAolYhw9EmKHCSl9*X+4F8zkdbR+_kE>`gY z+rE_MTX?@JmqQyE!}-eSE!_pPX%Dvv@)qNV99&4dUoYaQzn12GRo*{A*gi0i4sZgv zUuZ*gj^1C9een!*UWJ=Z%CHYmud70mBal)q>M7h}GjuL|k{|{`%$!uhn_##WNzuhXZ;n3Yl&_H`JZS=OyYO_mbvEDz_=GObXk7Q= z&)OI^bWQ2ug#v?md>_L`2vS4hBiJ3=g7up}HEAwYBPtMGYB(!qH5s%FAs>=wy+l}- zML)kQL6q;N8yq}GI1!QPMYnr~^8HP9yl-Lg3sFO=bKG_mk6>em7d_HN_I411Y)*$* zPLRKxkuy}g!&+y`T#a#`?ej=s={9y$$ObWPg6meaTNJs^u6Nn|8eS_BJF<@(k|A?$ zJ=kCmq;y)V#NjQn{IJZ0Rvey{?ca*6I~67QQW;{)=Vur3B;EvU1;XR#=2qusRqW9x zcRwalJgq92q3FrZkvwE?M;Zf+FJ8$hnJ>^auHi}d?3~muJ7tsKvGpBpW>?FpJ^7HC z80wSoN{y(AjHwvN`+50(0>H`z4wR5rM0e<&==t4oca3+wcVxeb-mg!udU4A}u=o|yq= zRKW@{?8lXW)1HZ4U!tSa^)UgCFF>T*~ZOPf(7<-KOOMDk74H@*kj_2XLJc z337mOnM{w4KC3y>NXo2e#-{sncaOXQH533c9wH|_mRej>obvWC!`jX8As#Y8G~7`G z!DVvw)%&qQ(e_FOZ_~U1#RTV#Vf!kxzmVqlIw4lF`;MT~1^(`+{>=gn=GIVX*Vby! zLg*Ib`4I-R>jI2|0%V= zmzG6j{SKp0`seI*q&=0>p>V8K(2W<0V$Qi>1}Jp_R4O$$se>{{MP3-L#$EQ=>||r* z*hZrh)9jttGa_M?)2b=~4}?}LxNg~1-)m7kB~;!bkryYX)eciZ-p?6XqKv&T3NXiI z_PpN^M^mF7#c^F(NLXp1j@Q!~dBG`;X=5)m^3PN$%#o*Dblu;%VY*hOc)k2mT&R;U zjte$YII>yNE-iLvoG9g=sTp2evRTx9)t~9K$L`0iXy-zmW(qbpst4)FM$j`IP8Uwf z(qd~>+oMi+s2#duR8%RR_0nl&6cg&5@_Kt*C2dXHyjJQw&!c}4$&_vO*bC^W@lNXn zNB^qUgPq%TxS=29Os@YO<4Vw`pxKId{t-4$bL`kH%%X8=Yt&x}*Oky$=Tof`+*+U5 z9&s&BGU>ztJX3tuZtcOgI5O6atG`ivCfwK#at^=Z=4@12=}_mFDjO?ZjajVI-R*Se z8vYr=-k-kh=ZRP)(%N;VIAhV<74AZx$jlbBbI0Fz_O(gh`*KwH^OwgTW8x2`sWCQ| zz}uL!|5zXwTr>C?OOVvy&02mC+v%K$fTRnZp1i)B7sj$8HVc*FeI2 zLKBddywmFqerq*Rp`Un zMU%Bbxvmz7!Wgx zhy42);sNGXo<8@B=3`+{I3Wrtb_aAV%a6g7C{+o?aR4}hs1M!M#MyW)i0;WS*YjFQ zmOKRJ1Ybjaz;J-Lh~@AA?fb)R7<%x??u|8%mmPxmVb6AFzJ9N!(I-PSqoR1x*j!>c zP*6q1TBoPJ;k)$E<6T>?ZtXteE!Qz-I2WFLl6FxOStTVn7p;PV)9zcaem|9f{yNj5 zg%LoF{7z5u1^Ulc@z`-s zikC9hql$8HXM}%c5ReEI2&VR*ri32Czf&35eA1ro4o?=Fc1FT>% zkg~sE!7Cy8f0?c*SIRX4=cKQT{$L4-Q=fK7h^MG3H2@Tt{T@2?;PTOsJ*S0`w_sh& z2%2-^NhDu6o*3Zih>gUA&;^}q1;k%>1#rwbirJoMQ<#xDw3*9&UD~geNbR1la%?K! zJqUj}65CSiN*u+V6Z^z8#(Y0I5=baWA-D|y;g%AZL5u?OtpIsJED_9=k-9}Q(c0hx z?u8d>=YS(*S37EqV?!$}U38&{rw-RozY>DfkaQ2~j$zT>-j#wZi!=ufiXt_T1*?hx zLJp53!J`@6v&FiN!yPZgcgq<9jt!QU#?(cjcar+bLEVf?Hl_!%f_xd*8-_%h$?1Wp zc4`DSOib+P{3|Fxj=>3i(C9*4pgp0tbr~Tl+ry1!Wf7Gf(|l&yt=xO&bFv=u+=@o+ zz&!6nKL2MFSxsNsZEyjV7HREg7@6^3=W@wdW|ot=8BfY$66L?}%q`xWd1LiMFqLsm z;xcoU|CCmCOr-k%Ev>j*E{i43R=M;=L#pjkU8P?soEmqt?7Gcu)uQWeD76e##g*N8v|k(N&H z<>F$kD?Cle`<~pqIGsFX03d*^)LUl-tdJ=XaI%SKP_(e8W2K2)wb-iLL>2OtgpTDE ztUGisy!UfAR4XQMgM1T36WST`caAD!ok?&2cQD?&p-NtvXg=dl7QRx~zy8oPRs-L9 ze!6xn9cI8Cy&{BvJk=Teh(>}hxACV3!wq0N6Sw*S5L{4*s%en~9~6-1?P!Ctqj^{exWmN$*SZ9>Ww;095KD2cQUOC@Xpe4B*_iHerh6jNdHqFsR+akNvZF|SP#G# zlYaKb=*XCHcu&Lk6l8fBd>S3~Jg?TT>nQ0ztW`(6jS1W~@Xr{TmQNPyH8966x^Hftit8|D$begLXqtHaURy(YG8N!V!IK|??pzX1)* zjBG%W4&uZVPyhwHg(ss>PEbdIcDCs@kvOFFU74GhcV2qfce+Udf}0#-cF2(sx+QH0 z82g~6AE6fpBVfp*zB1$Ewt>DyRi*m-io*k4mb1~6lv#WPn(N)2Nzyf;eo8jQ6t|Ql{ey5REMWWTGvZIcH7*- z@IF8BB!R<|TcHHD7w`OVf=j8b(_KfnvW*)Humzav&6k^qlTGZ3E%jKh+I+w= z#WjDq_#F+LOn{ z_9_T$%~P{Pwm5A>p6mJxDhi>k!CUrH)Dau9QVG*iawrHtf5+D=2L(3~t>0=97R?s} zVkf+|Udl`1K`VyKz0J@{zkJH%;m2Mn9FJ8i#kJtsB!(*tPGI&EdNWLCnQfs@Zc?jo zH@?>obHc|QB`1ec5D@34A`6~0JZZ8VMy?zS+z)xv?H*u19jz0Y#Uilgj4_(qqwEw8 zgB|vtQ#RxV?Wx}Ud`%#y=~+@~#)L_ou~TOXK78+EMHTU=1l_^f%jKXCx6zS}9Tl^M zmnX!OX_ovp8|}?=uq_W0D(^w%9h>fd&Z(yaWVz<+POE-yBcZR4wncpG}^dF&raV9oa0RKwu5t5YoLsu}XE>O+f;}nchfFnG zS9FHg#6`&E%xho1y(h4rbEd+!2s0LWH|M=B^U=?SGf+B^D240w%OGqKD3yMS$4N%z zt;7H9^7$=Fgh^dx<2&Mb(g^pHd`*@_d)o?&bi(fND7vnR`%p(@$s@Gn<{rg>%myFM zVLy7e?1B7LZn7)Dg|8Kga)aZBj+5%~UJaR4^B|DP!`7aUPQvu!qhq+YcMTA6pAN<& z_WPeQ4N=;V=v&F>PdW!AP=0_9MdyY7Q~%8Vr+J*~abwe1V?p0@NRS>MrI9F0phhor zd-+pO!Z^CyI6yYAU!r|g5GjN>5+zin@&g?c4ke`Rw`f_@BKx#kpg<^ci*j#}TCc{>ZV#pS zD(0MNpR<4G-XHwaG?B*y&?_Vau&25U9m~ugrW&ReJ_iQmB}`MS^?bIRDuNUQ>nQ{H z#W<%O0{N{L(d{H^`&Hf85eudM`*(_>wRTmP`|t+UXQpZo^MXpK`BWT?octYJR3Bf$ z3?FdviuY6cI4N-rgXSSaEBdDhI6>9`z8uym-7zps-(l{=r zsCYZs3Dd>NEMnbwf{x19&XDe0t%XambiZJJpWF>pfI4aVIj~FGrQLzq`z;|9xjI^Vr}DB>W=cmfDZGCv=t#G~Az<#RS}G&j6NYTOgfpu-A=w?9(A1 zxAk315KlKsE=aM9ams)f)rxu7L+}88!8Px)%u{If21{Dv-)ONfkoL+yn3}j@C1%A} zdyAB%THNC+^uOU#^O00L81}kvvC&dt%{VgSZa(}th_PN>L+PJYArPW!a%)0JICMB}Z042Z%jBHpy_cQu8-*uF zs8~~6SG!5wUhwc9pG!!n>Lm;2G>hHA zTIhMyth>0tk6%T&#crrGDFR2J_pFa_YUlzELCtPq#m$oV;%U1i9R>xX$}mnHHae!3 z=@qPju2I`IeB)oDkX? zm*w2Ol;|Y93wvauyU^$d{m2rQ3~@)A8Q17$6ercWkpRr@@ij4_Pb*jz9FsqJ@K=T; zCGaDMmNc^Or+k%jk@|fvteP`u(UIQ0w6|iU6*7i3bAZ{+5(U>{4Xp7sq`cafxj$>znS*0 z2AYu^_dyYIS;9yMmB|ve!$7l?JW)%PjV*`@)Fp&7QgaHoXGMU6xVi5e31SYudnLSc*1UtYcb0JlmI8O%`1lhscf~!Rofcs&K)@L_EN=3xbMKm_JfpydH7Uri z=3^S$K3s#z7B=WDfXxs-WTB8ECZRWtM<@0~$&#*e`N|jF0rkeS+{#|;f%CUIxAmPD z5#Qy&L;X=kCvNyFzfPoelD@hCQ0_4o!_b_7GKJHEVDnVB#ojL4fI>YZ%$uy}%@`X7 z4>Pl#4_a=fM5~Hi@zNsM0#l|L_)csU=A=1w=TB=jT%Sy>Lv^<~p-2Q8g`RvU_6B@v zW^R`xm{lBxiHd|;sCwlQ5}nR2v{(jy$Wwj7QwiB2#768Ec0eH$iL3^09s)hbOpl+y zh7?)`-(MkA3Kn~jg7jG*gTYh_og_5-1i39ox{XB|D6HxegPot{7gZP{{_8!{g{|ohKA>J~wL8Ahq6s%x$Wc?|@v=|xg@qX_}JetWo%joq6#RBn=$Gtl# zPB}gb6eq!k_=nC18@*cUJUiQo+=-BhSCBTs5>a0e)*Yz5DE5wfK)LZf}Bg zp(agBc^4-=`9;iWc9v3wSGE=D)Tun=x4JvD9X7ez*O%jZfkzzZTS5)ST(K)^G;6WS zr!-)C6(9VIi8s$tB|`D^4!C}RYw6Y>znfFS{~AH&7CIoygM=I#&&#&;q!7;jCM?5d zQo-TSNV2shAOTb5csdg7t|Z^T(?6fb=-5nD_&Fy6IYuU1&g(wN{!c3E)R>&vZs+8~ zhxtK3B!B7vOI{y=w=sa^_W3&)0H>Fz-VvzUE<0yJJv-qBmtl>hLl0#Z%Wn80a15lZ ztJ?fw*r|YF+aw5cUo?J9uB>M=9zVM`giJPeZIGLUEo$EZn7JAqKf)2lTgvZk6^Z0) z3p!I?z{irgb&UO^(q^zvp^uX6e5+Y7*Cn7lhJ6RH(wGn~ zZ1&=cq54WUTC4{N;YRe7-3>^g-`CnK(``lN>=yQYTBq!{^| zk_X?!5FQ#xkUV+A#EGS$4%Jgr6PNT53$tSGsfbyp<)fnwUAwS);c07a*_t^@hGnLQ zqDoy!$AmBNCR$D0?@}htSS<=*jOMwSmVxm^&KXI^PLZXxxHtKQBeZU`fC)oofk+Et z6^!GdL=uF%mw!Q{@VGBXwYWDvOSkE}wk;ocO+gdwLhnm$056&uO9`}4}bm=>%hK}mVuA4Fr4Q&c=khty(@d+aiBBbyFQ;!zLl zloH)ERE0a|je~u9!_tY)m;B$Bp zHX|-S_ZZBNLk&J(Z~Pxj&809csTA_L-sp}5zp%2MQZG3c&{yC{Ki;Cx8lllM#v?ad zXL1pnTdPYr7YSE)km|SEVi$kw?|6^_!vI`R)r~B=G#;-?9Xga6YPI?2%?M-DSsh%b z(a4bTz9adaXXxAuapn+8{zm02lPCNYdarro5xSFyo+U_jm`j4k>~S|Ac4z5aZtaX_ z+x@_UP5UZAjzbPTN(k7o3bnv-Xia*L?iBv5=gr~Y2c7ntmx}0et#TW+MPpJh$z=x^ z>P8p{;yznZ{=^6cPx@C7_~!2pS-8V6Z4eIRq6!IZYr! z{8lK4kj7@ZvbNikBeqa3BLrvLdG<^9$zsQe+Lmnq0uaf)83ddyzKDc8`rj840V_9T zCaN^0izuP}3+y)Ltk-w#MbfY)h>8gpMN=KdQ=+l001+2zpm4-CFG^d{-`#f9!g9=Y@-ja<3&67=AqV6+rq$hh}_tn9ywdGa0_3*yqq z)bUHyg>76tNr-oUQ}p23w5=H7-mR1L;Gtu<6ks?sqM<9J0Xk^9!CeFc+zvVXp*MB^ zN&?}*v{{RQI-q_QF~%s%rlA3cW{&>1aDjPp$U2`_zC~OYbs%$MmeN=`vnR2xp6><3x<0A8K8NV_3RVLF=fXbZ#)%Sq zp82Nq7x01`sHp+-y|A4-Ce6-mXrIAF#UXni<<4h8FX&Ntvxpu7y@6;TK<0Ni17EUd z>l6g5=wM7Qa0c`UUQtlf9x_9{KHzleVZ6M2gHg$JtoDOKJov_PtA4%o&=ot0VMyHR zXAwx|il8-L0~%lugc&I*ORr}+D2a3OG-?4USXoYmj16TLx4c46VeZO%H{}wuX>EW)c6|L;t2JXU~ zMO*$ra&TbLvJG*c`BE?@kj|#r$Dx_#NR_Ia;t)GnJarIxdJp)|66@0S)P|4pE+-T)zc}dKsZS@f0&8#{R*x|C@NhX1;0~n{>6V^ZxRU^p^UXbp= zQkf^&6Kz2l+r{6OHCHKLE|Wn%NUEgI2*iRJw$59Nr_&;pA`-Q+Njg)3!UOFix?%$RzCUK6({EPAuG=q1nesASneCw{goe%r=q@WUMP&SUvu6T57f z?n^q}86)T;6FYyFegJke_f^Qmk2KW7ANmBh@a4$#$Yjw+9Qq7r`C$xwfiFMc9O9yy ziQCHHoUj7&7{(B7pmr%83s_`0aM3UnQ9hS}nBgYW(yTEzIeR20NRlbKbu%v~_Rb03 zbs!7M1yVB8;>9pbA*8S!5#+Z9_)w6C@-+|aE_u=5aD=%`?b4EidnY0MD>`j8fx-n(ZO8zH zH|R5chp@sbO$OFYRa2H<{ObDle{v=MQ5bo*}QxC;7$VXYU zV^0%i>>yRWx|<(h2&zHdsanJ!N`0S9osc2Zs?mbJh#}Hy7FS>JAV~ejg4nsu%M?X7 z+;hUBx&j9DbM&HL5d+rc7UhrN0QhrzvieiR_!#;nRl^B+?EV7mW)*qN@q*oOZaPn> zbkx9hCUdHEUSLn-3kO{bf|p+z7M(7^v*L?8T@Ly4*(-aybLcAi0hzyV3In47cZM{0 z#207IV9C(%c6b*nbmN)Mdv4n}rp~(fnxLni>aXj;CI^<_GI;}>-Ba5wOgh|ej53>WSFb@JcXI$kR(6Wb0y;i>q zo~#b7P7p&d=EXxtL?#;oDmU(0IQmZJ{$zMn&Uf5|Tsn>Cm;l{%{nlauAzulIv$ z$Vi*X==gQOTLy!FV?Ki=a8kXIKDKkxIct3DFnNIXo| zv4vkMP;sdWWTP6J@l`H)YN!m+5771T|EiU8XvrV?hPWrVES01ZRjG}WTB#}r>43aE z1z?K=Ls>Jo#3-4R5L0Bk9*D=VzjZU%0J|*}S}OqzSRIuBmlo2DEdi@pk%6};sPNFu zWDiZZ($_J}h9W@e6N}Z;C!VtFRvMIU48O|f^uC2n8UjfYHcQBim~62K{z_@Y2F`j* zLR=-OaIlZL=S^sg2wKf@Y!-aWrJ=tdoi=?3!LMfZk!SQVgV<3nQH-$&w#jR36`YBm zU@eu5;kxpoGGPs|?rgAUmRXhQ5c@}IMFUgAhm#|-))vGPis6yeIQu%zGMS1RY7tj< z*)M=wgHcgn4UV57vNkCgP?A*vq>tX|tdv1Lod_jM2vz-8X2zO1l#YnisaW+2Otqnj zvdSmD$3$y}wZ=dA3&2ZTXnF;~B{{|eBX1;`)|(^$F;<1EYHgct;N7psB}PuW23LJC1p{mwDYZi)LLd=fja zMt@b7S8UH{!;;D7()R2|4?jcv%<6Q(3cX4{WTXWAR7KY(#)5h&)sCV;%cbmWltr7i z_{O!kbBo-mxZiLktKREUQ*IPBuN{?VF9 zVwHk`#tS9GC@J0aLC|WRz-oK(U9XE_ey*#h|i;K_8nr&^Bjs zf}2%dbU|Nr(tI-bB+G|6s8q8m28kA)jo^3_4?a|()}g#^q<1} zG*sl(qc_P0Gx# zO3bfP%&+gyLfAtAc`(4S!qyJ_I(-$syQTs}a?bm_T`W0UnSb$QPqMV<5;VroocdFZ zfRfI8P;6f}ZRSuj39~Np=}9b*D%c}P+@CFob}Wf@ey?rx^o0Ep;WZz@uDRHS2Wxe_ z_;b1Nma}2DSD3oxAl0Rq10bLINOQ2r{cfhk?+hV+d$I@|CXhb1dB&zDF_L_1P9jbp zicZ{>9k^EdYC`_X2p_GLq{CE8|BBCWR-EO`x%gfD<*@!hbJ5P98n_E&o3=u zE34x5cT(%Tf%br_#q>4!f#6V8pdROqj&oTQ+SsNo6E3Bx6g-X!oe@GEHDXEnf2u)! ztrM&)JwTB%9~jow(Y3)^_qKIN^XZM4Zobaw8h&yIju;zzGMjiYfTqAf7nD}vpb5$L zQ2XaC_vt(njY-ERpE6ubs5Zt86Vap(wj)zlR69(6L?Os+rMEdP)i?&ojN?D7BG}W z;o(5QV3EJcSV7VjKrO1CUeXrGZYz%Kru`#)){iVK>8gLVvNmEn6J5L+CO0ouXBqGm zWN8Hm%Au`EkX)G^g3_;5r9iy%`IWzDq;5NZnJPSP0%nDZ!>DW0ChMTBrsEEFE82H% z>vhGY=@or3mH&%AwgEM^so!WO;)QqZ>cw{LhMn$QW#Ya~A+_RS2lM-5&+~NrD zq~E6rwPTeugp7*;b(kHgChRBp)^zhC zNd{BAqO|PaP2WF9eCRK&Uap%-l+mby_W7q9O=?3`!a z6bM@XI76a;qbmmE`?0ih7Mu^YLg6=(5Aa|M_Ltu<+n600CP`dqu>(yAH`TXBPaosH zdXKpyU&M>vn*vVAie2iMZnJr@)a&HHnT3EPzvVu?j5Lop=Yy&!0}k2hylbVoToOV~ z-^AwoB%kr-1YLHHkOpt~gmcn8si60MYgeKkVbn{I9zZQ#KV`b;OAs908Xb7!;AFdb zF9Vv$PD@jN&2^=ceemJ=ZJN~O{S9V>;xO12DTTS)`-u7Rc?a9vf*-0sHCPMQ`4MJ;XBCus?RyRVnZwNfc6DkxoQ${K3?cs&hm>CPW6HBw?K=uT2PR9KpW z+s!@4A1PO&hKTWog8A_T#BrUq++A7Hhna9|v$e(}IrwS{0asOpxrOTjBHM3ZcQD!NA68k|j4P3?#2e1xfK1M>!xlVOTCjih?pkrXk5550Rnp;;H6- zFR+xQ^h&85|(HFreFK#Xlk6fgx0ZqMH%ciR=keLqm$~jitqB zyRZ-Xqi@Qfk-hdm1XPp}A`~O{p=Yw&fI-&{wAsxaXRtKFs_U$Cm|LE2g+_pmT zzT4VCbOXDr^SX5QWGlGDt^Na%;BW#Bz}H4W8l4#iD0vX*GbZRk(F$ev zzae;4qEG8pfY3(H3SdJxMGnciQ=A5e$a#8wjLHo_NBB23L4gs{OHdwW-^;u4>|ZHa zGAPEe#OJVW_W?@bi!;b^gTm6oB$_3Ca$lNVpwL@O_{>nkd53} zet0ShM)fX(lAkKHl7WgXTj0%oT%H8&_X0{wNxR4ax4i2Mm)YbYhl=c4M#$xjV;YL&NlH6wNOtaHKA?8hr>SuY}QFCn=HMy}N zf8o(Oz{*`W-}H7;rCHa+rLb}~utt!s9m<=EiuzTQK31II7SapM-zSGqhjc$HKJGjw4@PZ_$U*t^`LWx$qIv#oKOI)=pyEeH zmAFcBM>|`Fw0gKvRem95f|WIVv)P>8CtsLoqRdsaIf7a2I+<$f7b=YbNGM6~qiU)%G&ypfWhleu^4!YgK-!_$7`bSTsShXT{ z{v!Z~BSHEBoXZTqD+&+4qZ*El^n0zQK#7|{WtM@*gPDG|-XJZ;^EPj^J^Au^$V_MB z`dv*+7bIU??7a${gAfGRnE)78Mx#Tbf*Mvv`fb~z>CEpyy*zm^V!hUC2;N*AJ%c3a zRBq;o_Mh*|DUV@*;>d?c1iX;*|1NZKF{5}~%vt8`0sUnV;U(M?zhNEg@Lzr%mf2?m z1)5L_NxINm8T9kPvnc=%h7}?`XFjcW_oS@U9Upm(Gi&H0oc_0Zo=rFo@bb}{OY(i zAroV+gbSAB!SQ^8UYS(oGF=yO|3$JcAn-M2<|HEQU_<8sd}8m`U5FCiN}=vIiY$z- zIPyu!W)O`i1kO4dGP@yFVV&4kWX1?VE2dTz``_P^glKU9Burcr-v-Ru$Fvf;cc zzKZWp?5Xj2A5x(vhEDW~B`2`oFWs&o-STY?pzf|DF&fASGm;WP8u4g@`t$&4qUVhi zlc4$W5zJ!U)&iPM(;;~Ga`3(Eg*~F!kKSaM6q&4T?E|tZO-SPTgp_p5gQb*+#k517 zeb6C;1svbo;l9d~#5$w<0>H_i=ue2wMG`gJ0#$%U{lzmpGzqjBc_9mH${|Fx&&2-s zihSFOP4gFpO#$(=y`Y==F?V*im!L7%N%l_r`QQwOmjT|fxAvBMInk^h5L@IE=hI&$ zMh_OuKeTc2j{}}-^CwW}*>ygLz}XD{f+ojT=xOSbGrZsc_b3K4xPo}U>o=64GPkJt z@`L~eNf`?C=O(@rY-Fz_vpw`TLijA|AanIZ9n-YWRa1$nHJ34mIZI}}3R5+?OtaR? z1}9P|5^jZg*3-`7H*sk50Is#hMQ3vN-{$m?SE>y5GUoP((P_Dqo%u8IY1B=a_#tRNp|+MT64+B|nqe{Ez%B>fkyja#m~WSlK9X zLUld!M`HH1FrN@Q6U3SlqZs_oNa||Mf}fAnY9F}(kyKP%Du)t@!xogo+eLXp)RvWf3I0F~JYQ|F!ZW4epD-#OOF!e~m& z_Bm$8xfCDkrZxy~iR6!imf^#U2e1viM70p)rZE-YLd9Bpt%-ZruSvpicU5$I?Q&cX zPy!EUw9jqW$}z9_Cl|T|nbt#|O2mz?oRzH8bX1@#ofBs@F7T$7yGy7iu_7jMz2v-I zd*|~!0i6LnGE0n6d>lv4XK|*kY#-@AfRn|Inj+6l$IXzJz^e`c&I=c>8Qv+xav3w6 zMndJO6mj)RReCt3(mqB{G0vr3x^wy5fqk3T;`G8znrC92ciPQFJ?l(BY(StCXw)r% zcEV8pq*C0CAu3DlKiSTTXxb>jcaV*4iseio)aUDI7{}jKpHi&ocY;gSa9y(%{@Wu_ zSb)UZw%e6<)2+7QYrc@(jXlj~da|0uty)RAHC|1FvGm6$Q)&*Uw|7Xh*7Nl_1syw0 zJAj2jnM34@$)bSMu0<5JXSy@^0QJye!-(1cQK_HH{8gW+XxS>Opy*oOG#=02lZDH8 znKQ}3n2&_6pJKnme}ckBfnbp@1hoi0`k#ql(*323*d;CJHHWeAVo?YakPf3kj}*y! zgtLavrW}|}k-Av-%-veEE)7hSJ-K|SzG=Am4W5~Nkl(uDK%IqHg#3WB8dO2xan;G^ z8U+RJ;$6TM5>*cB;<2~4BnCe#m6i8w$D@EU)z~0wxnqyUGvSSx-;0deMm{k;>Hz*M zA}Jf7pTq^2ckyZfb&Adc+QU|5#); zAMtbGc0}eMabE?I!TcnTlmp6!oO6;uJdL@aIIG!sY#NKg-ld(jC`0+XjA0a;?|%bu zA5SBArlTl@7y@DeTP*np2E1c70qU2Ieixrj`5o%a{FE*gQ{*`g|Ma4g( zA0OLmbwAdRma!XTQR!%vo59%hiYNoeC!yU|-JdzS7$Zh8cZyR+1k2Vr9>w zj(t*VJdcSo`*cz;seRKVIc6z(y2yzzds8)Hv#{REhvD`@n6qJO#HQ%R3iakxMOJ;v z41WHNg|WA+ZGLz$1@w)}AeGZ27kv8_9mN{dtc>%Ub{~#+%=nY%3n7ILPe2-lAplgF z%N6fwi#^uE&N4#OiK@9u#dD{^TV7Y@6Tcb0dRGvhqm+ zl*SH;L-0w?VVCdii8Ve6c!6cZ&dJ?^n9-noP0O*^*B- z?xTJ7Jl=Ppw@RY7PNJuhW}Xtrx9G_`*pH!&Zc<%YsGB1MnvrQPy>;71g`W%brJZd` zZ+5|xb5akr{w_V*I3coSy0{_!by8D|gli3sRK9$8t!$vjsIjwpt0-hhwA3Khj1;PC zV_{=abtB%BZo`vSBiCHS1-En~_|M6*1j90k-)3T(gcM`Osn1JH+eO zA5}64fV3Hcv1B30E9`XI*9`9)V{ePW=i8lh+T>r>zyad-$5J_7IN8k80U^wta8u0L zqHED{9X%1cAD~B4`$;UY)97YOl{I53%rb4d^YhSqkW%qJvw7)Cr0N&Cp0i2!DE6-U z32Z?U@FV3iiry}4d+>GM;=Z;59xrk?DtU}PM0RQ#!L@V2RWL_KpRfVaSIkwK%5XY; zOuzqfRY9w*R)&P-;LsFK^s%&?)$kkD{SLp~}J_xJ+ekQ?>WnpY?#D7MJ2)7b*0O z{kE6sOSp;spsDSylb4U|5uOvc-`H-Mdvf~Ffd5x5#x_(L zS}1mXnZ;)~&w6GBe*RZB!V_j70QYPmeS){?iD|zdn2h?I4b~fzNX>r=QWvglLG3JD zSgTwSKgj`g2Ig&t=?emJjF7M3WuBL)eR}8tqaCW?R&urbmBzapEQ9eUjYIy>XBS4<&&>+*}=fXeh1v0bCF?%du zQXeEkx|{Wpw(5TL6d+0LEu2aHel)*RQ@9zaXb_rkJH~8<`dpbk49W>$kI_TfSMCsi zNBWwhDl6Xz>e~uhO2FKA`hqWcTY$2u$J+nWOuhmULR&31JC3}mlCH{YI!?Mr!x5|^ zL9ewd#}$qVF{OA=Hz8@KI@Hvz9_s!S_GV`$bAwL`7P`t z1?Xw+6m#bhK846iU=lbfHNIJ@Y!kl#&~v3aS0t(1XK@LLvbvE(TOQW*+Q0~&EQ$9j z4*IiF-Eb~Q+K($Do^L=6mD7mfDpIqtJvzXO_6JGzUz zTZ)@5RbaLs%t*tS56TtsPww#%ZIz{lW!8KX_*>Q(jV(kCpmla=sGkxgQW6bM^pip* zap2E#1N@y*ebq4a6Lv4ocs zKGM;wnREvt!bdL(0G^E@FEI4}FuaHAicCiSd1Lt0tamxPZ&tGM=oa(PsY-!@>7p$< z75ta0Yonbfk^8As2k%$WL~Y^<886F7fb5Vge=I_iwsXzt?GA}E>N^G{tgv zKMz$y20k>UTSfq$<~^z-!0-%e*W3{xQPdRBbasyObR!Oi?mvUn9RpAx=uw{Ub4t@8 zj9n&-r&7R)=`Ys&4(}9g(8mDiBRF1`P@WJEq*f2=c;7$(uXn~`U?P8S{x^r!(xNxdEeuSu6bn+6VC#r9xwb|Cv8n5nI{SLkQIL#au zhV?}qI3z%XXozn_!|6hGW8It#S=3alKdOa1;j3f``3#h2&64c4{0G3GeFp3QWSAN6 z|0~0k{J&{mi@sS&KEeOGe70@J{ky3d`JEC@yWCM;vE+RhGJQflmVnRCvMx(hPuc*@tA2Ymf z#O*dn&ub^ziK8~{?j6L>*SRu&!I0yZn|O#D7^^w!Q=lTWI!3(IAkBw3&+Q1Iv;MVY z4Q?70*b3ex*oOh|Y`UVo^v2oKuhnRzEhm%SA$FbbjXz0Q4r}WUkueuW z^K04KLu1DCDc+}^$-NGnUTvy%)jTtmV5+-U8#XQKjt~9^ZA(uHH-Yzj0OTpT|4A_a zb7nYMj#SBmk)h9K#=@M>Au}*E5El;=W%v#$!SzU|&oSp@Lc9PjZ8~>zHw%*}gpcUN zh&zpB=yRh4^j4I&iBQcK2Q{L$4)uova=z-CN$1Fx z??eJgOLE~Oz~%#_pP$6YH3RryDEx1@o!vgP;i=z=ZAier*;I+mwzBgQ%FrrfwVL$dMJoE7X^MjbWkMtLCh{snm z-2D?ZuQcO3FDpkG{&GyF(L&wVybv1|rwU;Ps*wxYD*oAoG`dF_W@Mh2I~QQ;Ed7g7 z3d{y}L)+4>7;E{2x%4Xng~%Cj>@`s+)^ALKvg`Ad{zSie>Xaq+Op;0Yf;zGtVb~KR zt(TDkQO1ga`dN}V;Kudij@oJ3Rb~;$Mf1v4K{krny@}aH5q@@j{|ZIx%maB*iM|DX zUWDo!9a@5@;_TB(HotmMY$o|cEv=)5yoUHZBe91hVp?SXY(UGJW1zW7@k9GuEz_~D zvf=hMe^0icXGL90x(xdejEa=;o^E)RF($1Z;$u(eQj zi7uPKCeVrOFgx#~w=tsg!GkcAfwK*2znI#_Xbsfjw5^@o}E;u&Zben&Wl^$f+`V@P1kbwJ=j?XmJN%>x()^{TDcR zwJcztlT`(eL)lRA)Sjnbb|y|AiDtv3z&{mPVMPQIXB2svrCVDc2CgSWJxK-1 z;PJ`fs$t2pbnVeA^08f=78T1!NOCUtmY{1hNH~%At@JNGkdC>^WH%I1wvjmLA!Yt} zq-Nc}CCB%3B-*+20$a{IFt-mas(sXCRBc(fiOeo#0YLhPu+{*FOQ~HCThIk@^I-FZ z1&;TfcpO^4G{R3XpiwBy7|2^-MbT#M)F_mo z7#eN)R8aTVL9;lfzz8|uhbWFXulkiu4g@)p$&;$?f2cd#YfpkN@|~WZrE49Y^c+d7 z2ddQZYipLzB#Grs>9W`7&F$}us?@l0n&mD20`1xcDd`fh>AyG0T>8%=2Gv^YIc6IM zWcxh#scj!)F*PwX)tHv4$zEd?GK1BV*ULUsh8F5tzlAJkw2jWS`scv~%EnSI)L7@@ zc_I7C9&3Q8M}F>LxgT(@+DRa{tYS@bJJcbxYbHl>Xbo|30!ToIOnz~)1Wy6b^7~}& z36FDlsjvK`8~9)hQe$0%;9I<8KCm@fPd`6GD@d+@u)N&>h=|J$YJGA95E5#nf~tF2 z*O|@qHdhlM!eYDj6R#bO_spCeNPY-Fr0)e4qC*o}!mc|aZV~>9RjE;kS`v349&vXU zl#hiQe{ELShS!eeOe)Ha_uZpWTuL{Mc%n8(5Z4$#@oOB)G2~XnVTM0QrG-Ui*NZV+ zB2pZ!NOp@R(|mS|q7i#5`>)OH@*Dy%Mv+DaL&DW+$@}iB!g#E@7M^9m*w&|!g)NFi zC*r#}ka43NNX6>$!mM%y*-3+WYgd@jd=iq!ARJi)m=41Ko)y8TlZMkd#VNg##>FT- zWXs#*$(#>Kve_lX%8_4WPqxoy!%gQT&L?Y3T=jFlr#YJ5hk;G*{I-gyr{}UAokFSMrV`31I>6~VLh%^1Y8k-&Fe$=gNn^7r zg@r{$TEip5RSq`DNLr*MZFUGrS*i^^N~d)gJDV&`TCX*D8XR{I!2B}SL*b9`6LhV_;forVT9LX5B&<-V}8gN$7bReO>mw~eI-aFQ+HH}@DZ57 zF=a%Y|27&G#5=oX(!a{+Ox@RJ}a(GFav_ znG|K0FpI8=&q5|S!OuK|$xp_ME)s~-Hfy%>Suk=0oKUdyQb5qPVA(T{zD3HnB(nSL zAn3do?y^83QOhk;TLBq+QcZOcqPpVDPrQxz3?=A1bBLs=>ln(&0%+jrrS8%qGI6Yo zd{v?Cjd$0foVh2*kU9OuVZAWW&imkqhPa>m=aSsBG9vEVQc&_>#8U z2-2z9TRm5(8N;j9d(y=C)&|5|n>;pyew(36rbo34ZIzgc2DD~fm4`h;)YrIL93h$d zCk5hFG4;ACBwe`0Bngp<-$eV86NZfiI$_&fMSL#EYfO@%iR$-ew*|ab_Z{| zw^nu<yhbg zZDoAJ1?pbV1?ceGWCPh9Zq&NHv@hQexuibm0_vVAjv&}1d-nn4`>Qu3KmbUo9*jLx z8*qYfQr@C7F4~q&{8{IRZ?7O2DD_wfqChCL0N8C~DKtFbJP)Ls%7g;;@MAvOA-LvMgsI3r%ts{`!?+ zoN>nunJBl?%frAg_sU;VEal?n(*nFrMnQcU1@huNWm2kEIU$bzVX}~N3#spH(qRuT z70fd&4;m)SgT-XT;_}BkyA&{louw>?!h-g*k%;jVWrt3G(ji`BKsarvQDAq3W2|H} zv_EE_)x-)F#hrEBc4LkK&^eWv&sLgU1%FgdRc3w$$X+3ZjRxjFF*3@l$2~30?lQ9i z)m#ZLs0Tf*lHHnng*?4`q-JIX%+B5hj*jM+b9v0K2Rz-3>7tL`A#hY~HMKY4nN2tM zo_)nSom=cS^MZb~)8yNFbKi0Uj9%h@DSZ?(M4c_C{1G-Joejj*6*Z)s)w$9WFl3kw zztR&ic+@VBvjVZ~D6A8E$+8;^-pLon6@jp2ej$0M0^l2hQ+*_^Ub7TE)D#!wpcH3No<|Hq;g zDPRXUSqh+Ve4;RnOhJ&pZL$=|9~TekU&exejI{fwhc6 zZ3ZSx*XntS&Qy)gdQo}2L%Yz*{yl7}Ef%Ki`cR6M;1`$57ud#DBex&IPTSC5waK_n zGS}u}#MW7oPNHg6;Q&o_ceX5HMzBye@j!0>Uc!*T+k|$4Rg#ky)mZ#>jOsisd1!~G z1R>lC{~8TrcWH9dM0wGNrbG-Jd=rif*U@cjicr{qUf!j91Q++BgPjpYYLJx+mkNU* zyVcHB90{RmdJWKBQH}%|!i=nCZXLKHTpXF3*q3ksju&t$c0M5Ei-|7qom4?ys++p` zpbSEJ%%Pvz8lNPP9@C%zvM>Qq@uWYtyTnnZM<|fe+Jf9ix#`PvnfTun>A(A|21TUZ zz`N7Ll!@Ll|4_>dn^C?D-Go7jMeoA;l*JeiBMC8*YTFQgGb1kFgj!%0FqZ@$u2cOBunsO}5tU-d3E#g^&2t($yuQo$WP^d-K z1uCFLf2_LZ!5p;gZgl!aEQhyf-b@?OE3KRM-g#HSI1)qsS#N+W(z zJUQEZxN@vQ;iv$4c7fbkxDIGQA)W$g9!8M1mh!~%WMiFh2%(*D1FGBzow$diFr=46 zErX7tfYwSVCY22Fjh9GK$!}0 zwx&HjQ&PLfrVxDg#cQ~d$|tPiuVhYuTru7l2Zj-#REJsal{ zz@gNtrZEGerQi}k{HlL0o`VC_x7>;}ozIEW%CUgyh)Y@fA0Ez{q#+bt{U5!bf%UjEY)l~7A_=*KtJgg z$T*>uC`}n3X2N$Hse~3#*Y1u%f|GSw5l#2k?_X*%{?0Y-S>;uI&m^@LQGeNT61=zD zxEl043%XNp(TOc-i0RvDt+PB!QOLm1|KUV-7%n(24|!awen+yll$g@FOx+`+u(ZcS z^K0Ky55c9O5h{MW_FU^(Xo7(jOzqqMfNHm#_?zzAY?XS&*lC~(M%7=@0HYmp>-hvP zU!v~}EwEL+Bj<^CrMnat>6edtqjFt*z0~%ywo@6|yV-#`+*QGc@EqEGQWw$b)t4r6 zcZh_ki}PGAU>!i3hc}DN{%SU4K3d#68#822_oSBn5$A0$HH6qq<$pYSOMI>(zpP(m zoQKDH=v-7xd@ddP6xJ?%BSF@^w$aJK62J&tSOxG@hFDxfil|l4dCg~nbQd9ysO7c8 z?{7GDcyWpGoc4DL+uqb_({C+v=tZ7&%aqJc!7?9()F<4wG5Pm0_%D#p!0nd8zL?44k+jg9@w6E>C)2X zZdz2+{M7fE>wO7Dg{7sTpvB5yJ1mS9kGEZ&Mbgv1+Z71zh6jVcev{sAbf0;Jg5EYJ z-nl(_hq-)^p3xVuYOUUvh<(41EttL4%{F zn4-f}*3?d53!)H`0#8mFPC88ec9qxHt=;zVoxNVF%^kb8Z1_mKER}Jw9q_5iEp-y_ zlb2KYzE#A;CN-@70gwLR!Ti0;Op^LlHvJcZwIr#(9|Tz)lg!2lqKkz{-#m;q>W(Q+ z5lWh3p(I=M@4?@wv-wxZ#een(^JWGp_~e)gu_P;uEl5cKn-X(#KnbuYIPfG&PaM>g0zDTudNjG;wWQXLiXO5mf_5uRtZ*!KumOCD_h*t0 zM>qE;ioC=}RE5+kNtKtNy~cx^%aJ&>he^y}zLXq|$@913Z>#w8Zlp)GR3(H*t}U*i zTaLZc8>KTvqO1PYs`c)EnM0knLf+{N)%HeD5SUqj*3k@;yEvEK1$G_}SWU3HGJPm! zJ+oqc%w}pDu%L~3(f8|}6)^!~c}rJCA0TF>qtY_KIZf7dhm+-oi)`1Gi~HU~?wNhe zWv$9j)@S_*Q+1&tcbK3&2Q%~?U`YiC&DVRk6*xoc+ zgsv9(&=hj-%VvxzbR+((^}C&+ork4J=>h)BL!HO}qovN11&C8n81#<5GB*M&WgK(u zN-5KcvyZLoLI`zE_14s*TG5+Jz%sC-9R~iSg046KyfZ;iA!X;xJRJA##8l+M4*k!@ zvr#>Aq6Q*N8uOg*KKyG_afUmtVoz0i>+#o2LF3f&El0CH&j;2Pq=khN39>z6ct`-^95z&Q)BDSZmdN0#L(bq|Pc2g|OR4!w zw!)FglrViVa4nCiqPU6A@BJBip?D)#^`KvjUZYM(G6E#kyt(?G+ib+}m$#kxqX>9^ zLB~v(@SuL<2z_)QZnjvUJ+WJzP!PD`+&>k5XOTikDfPMUI*tCYpPVk3{+WI+2}L-ZVuclfQUUtQC=P-=o=7pyqG44pVIf2SiF5qCKD>n z#Bp-z^Wp93aK{B=6oH?j;q@RXcb?6=9kka5lhZRY{$P%IauG#Gf?>pwKYDJF1qD0{jNM@5d2aQ5EgduSK9q6Z%&_C%ER<<$6eY6*4G3JMNjF_UTv2TB zzEuOxUIQX)9KTs$$j&%;9I%5tXzGfEVM2&6qlR^I1Z(aoPzI3PoPhDJkTG&%gmx22 zbMpNAP9O>;P`Vf);{l-7FFK+XlcWJ`zd|$mVz2(c($7~U`xs1Ei48q|v_LlE#Xxyl zfudbnXMRqUu0{tGv#dQEM&hZ-G}-5D&2L2VY^ENNr`XR(P9htw?aveZ-ac3hr5~!} zLha|pC`O*GB?fKBDu02m($1Xp4=`q}`Jyl4gs7SqRPu5FWKIWoGE5oKK~LLLgHJCRyDrbyeGY|nd@Y%MOF^UnODG4r-+kkKuH%;XMdbC#cp=!0!}g zt8xC|yr;CtafTcDGm<)OP|a}t5&$w6aceVkOS(4vkbG7$7nx`I=~EYZ$jeKcp5SKd z^P*kfY69lH^fDLZEFXCCs*4|crG927)C4IXtpXzqcsx#(#7`t6J9U#x(a+~Otd#h{ zfAvbtu9gokF>TQ1YU$B0{yx-GL#uh&K8`htED_OL;(V!7uaE59Hi5c;SSF>g;=t?S ztend3G*$=fvo{s6=7}z=YP)vOW*v?lLiZkrQg-URik%2O1TJIl+xeycfXDMrrHNf` zgGMT*!e&ev2rRZmni|vtFj-E96?&3TWB5Xk3a?>-vTq2tB|sZ61|g}FyK&eCViTm^ zt#W*q&_oW=S+t=78e{30M*6)#fz#) zqh&AOX=Ak!5Ncw6!{n&J7S>KOsB<)8Fj%-5t0W}u@wV*nt{=j&muX=GXUUNII*D7JCR+|1ghk9 zX4+7pX0o+R2d#ceFLdCoq+a>seH(g?VkkU}p}OEG3O7wTveUM4^*FO7`?If*txItt zB_<0xkzRWAipx=!!=e%}T2;tftEs+*W(_NvEjW`f z&MKxQSg%ayK4U4%jmx0gB4*fN`QmPA&dq7)zMbt{tMG{`MJv9UCVcr&dNM?~fX18@ z*^=n4-HdTwGgrDP)Imk zc(5DV1FKYX>&J}q*2Ox14!CG+cP}QowO{3fIhN13(;i7 z`Zw-nxLG<5W9Xj}8taRyyTO0JMvV7yegJsqZ{xCGA$XVVf;xy$U#D(y%@)uXp?5|C z&dHC&UD6I&g@Bi4cCA7S4IDtvCKNabzEF6P0)5Z=;i0uNC2%YCghGfJLhfvJqQ$NT zUjU=Kq!QardTLnYO}|&HDN0Bi`Vk{o$xEyYE3eYb8uOd+g{t?8*-g<~km2%4jqYdB zSOB}m2p=W;C9ZV64cpx@sK+;BO87YSG_qEINDX(_%_sGoU( z;Y+Hyp)K%E;zIETe-!78`I!{eGq6R@+S?%zC!DHRSgyBaBV{dakeleb*ncMOmWeIS z&GK=WL;n=vSYPnO*2mYEW|f6}(4@&5yvr&5e(DQ}88d`I*6qTA*P6Hk#{5hx z^Pch5z0CLC!fYE}Wfxp96>h$9Zox&kZe@1$A#dqMIlUHq6)a^2naYjMJXS3yfCrHbqg~UdWVni z3Qa6=KIseCVsp;~Sj3s~@cY3-*Hu_D?$TXAwDqlfzeT>RN%~oYbUS2XM@hmxuuap3 ziJ%L+6H>c=mVYZ&=4yL6ah|I{C;O{?w$+pyB`j+7hW%1vd}KH2y9*kdL0WY^<=z$3 zmUfyhf;X^kWX2L|+W|h3p&!f=JxrcJqObU&*PRnMXk9Pq2mflkDA?J1^__W5;ACvM z9AVDJW&7g!AOj`b1ykUtE~m+FO)raZj&(!$JCSBSHl>=i=+ARx;r8Vk?sqhAq=p66 zy3y1pisDu77C(1`72(Hba@Xo7Mnrn>wrk!JpYrBz>DX++rv7?a?OQbCDvykOu5YQX z#(d_v7uuUP9P7akl#j;tYc(GWBP^{iQCQ_xw`$fEc+fvVcPg$n{PqLH^+^u!BZT~{ zVVprj;BiB=L6B+$HMw01xzVwNuwt;rnV8$k3fCL6?bFtv#H5IE z{G(Bd*U}rVJaOi)wS!?PM&$hk|MGlMj+ue9uqiEq;Tc6wKq-QPNk0FLX1NC(_4p1o zM9!JRP|cEi7Wnfa(StqK#Q~^OWDYvSf9%9E$;G6XQXW-8-=n7buGzWs2&K<0Kj#w7 zn9=)L05m6irX@js3Psz&08dn|%i;=;aSDJV?H)B|(s0H;eI<)xr+EzihI;z5T#5&GGUdOs4nK z{gx?UM&Kft;z^1Bg1ZQrj@c2=fIHP!!~E4;r-H{jEy7L12=o3HYy9PazZ8eY&>Iei zAW4?uI%CVh@#!L0LHwLv&!h8D$buD^6Sp5;_yP2Q6Y(+C%p6OA$LJbDX;XhIQ#kHo z_i*kGj9Z6QtdK>;*d~+ud@Je+7Mq z{{sp}0opu!i$VR;CfGXDu2rH7^p#d)U3Q%`6Ghg^ma&Il%vDB;Ib1Nl5k=%`XPSt9 zz^1bm?Lf=j2LmVEK94yx{t&$0Tm7HXF9A)lb0#(@3z3Am*M2!o()WIb=05;w?z8Fa zF7c!jI1k)wSlwPr`-YO$tLAve5wiPq^RKYsfy6WVHkJM5U74t{wrSy?da>>t#J)-jQ1@4Q9bcX>$Zi1eysM=wp)Z2f{*(1mL@y zdkRydunw5%%-y)J=wu@S7Z~x(ap@~7;!xoSJej+T1X{n&K#URiHOYb{Bn;I?HLmwA zv>PT8T;&c4u?6LYNKD^!0y{|nhsytavSpuh-*=3juxoY_-cwHxc{pT>plm9E_I!{E zNRljJ1qKr%TCDBNC1U&9`zgR%X+LS7iFMT82^w=9VFj%Iw+T?6j&6az@&Hv&hxizF6nG)UDASn z6Tbby-B~$!a&i^fo3p!BUqyY@cj~kxh?1nNQn&j4tiuuZ{wj7bHAUk&T&XCwpt&uW zh5yRf!G3-E?%qda&v9L?Rkmz70qt7KxNuMYwm?|~`w^l&>Z{YN6h6W_xx+U6vZnqG zP4U0n>Hqkext1uQ{|Bu&fhXj`Gq^wXP1v7cV~C5>61O#^7+13{L@Rh#Qo7tzXc4K- z%~JiPzy7Dp4F)8N!>z)WtX`rTj%%{hJNM>gY7!XHpEmY_+gspq5iFs1Lo5-eEhuG!V$)M()WEmsrdT`Iy1O1yx4z3GM(H6oQ0bL9M`BA?(mny zDmA??mG9xb4v?sEy;02!V}GF+E8h2Ngzk>w->jVvT$O10#T49FD5hf0mp&}pwo&$v znwufs1!(0Zr>jhY*^mBcz_hN?=b7@QLgY{8i%TrE(MpOl|BJnQ{*g84`$avTS!3JA z8r!yQ&l=mdZQHhO+qP|E&-1*=-e;fx;3OyMAG+>4>2$i%)m`srygO)5%`ssfSjO zX2u-YleA(e2^5%EA=7N9M;B8aakb_Ao1pTGWRm_*PfA7;bflN!4J{N2$i3v^Y}ioeysB^VKSX8+h_7w4_Hj3f zuc$jAKUXIwVW`1JW^S8d{*Vb7**!|l=u4fxBaA(Lc(&3`=n6s$g3dL=+_B7rz?^Lg z@Nge3U_gR5agw-q=o@O4{v#sPnp0>Ixw~4C-SH3@yaF%Ti)=IvVA>Y8Ub8PJg)zoY zKW{~DQ5Mdpu$0}aaCN!=AVrR}B{^@Y!f1BNVv79Dasf$Or1x=m`z;A4*-(j}e9 zD~-=>y3prz+UkQzSbrMQ4Ky4fng}-DR*?3CC92V1qxldnpDsUC(_5s^fnIT7?k@wmx+w-t0V0Z zD3g0d9a9pPg-hOORr`UldgbvW_X;GLT}|)Z^}G{TnO$UUlV&cn?Lp9u?meYXz0u~a zd_44KZHkXPtXdsMH!2^1+2bwe-_y|=Z$3)G%{9MFrjhI@EZ7*yB$j0`vG4A^XE+D% z^at>^>>J;tDU&05JUNodu(9;2pd1T|e>ncH;o>`v$mhHU3S%Y2gMQ@SKb_>E$>wuRGSDNT zd+1ImRMiFqGL%De$k&8AIztN}6rp_}>84sF<}ccSt$guf4B~!DG#w2JX6s|~0dF!vOSN5px|_lf4Xy?t z5Dad}RH`<#6`488rlWk+*|uNJ!pkH5x>{U6umQwb|!#~ zvS}d{y=#P>|0tA{%T-a8%g`E*+YOt?g;w>I(+J?R%of0hn(D&*+xvab)d%U1>&yBz zE1U;S+U{RThDs|+et>g9+xSK`MHzOtg%<&{8?rde&?_y4 z7aKSgF3i*de;)E9x(t8*{czY{goex!!S4@Z9IkH^xkR$n=f*M^9WzVR<gZfN`$p^9GWI<^T3*=D${(j`q zF-0q~Y$Dpyw@x5W?c|9=1Fm06?%LRq>;;m(*i6}SD@10wA2a^xECYzSPZ;q+besu; z3gQOpa)q|tym0^S=yXyfYp9f7drgk0{4#GVxlTp6JWzHE+GKdr?YgM^aL;MDbt62v zcIP6w!Rvpfq&Me@QYL zOuWQXa3S=%D8v5|FNss#{F!udhd)c1cu|Kx7%=a1^_L_c4q}XD>ScYo3?qwIlM&Bi z_>SFeQb-(a`BWu{1C4W#yDBvv>#Kjs%Li$qA2i8d@{-y2g)2eG2kbu0jG3;NQd~|e zB4DZ(^Kv3a-ZU5~wyUlsh-jn_cW1+|pT4%mgpnK3uOFe7s-fdF&XjsE*B1RUtIGhP z1h78kn?Oc(sK6HfGOP>nQH&7sqi@@)B$p2A@+Lu1-WBh1tPF#k3Em^TfD`g}m5_`P zDX2-WX8JO$UuUtdL2flbMcqs87qwih>~=?CUmwD!hF<2FvCxNr-002Teh@}(_V?Po zOOaazeD2PswLtS(rqL1Ar&--8>h$aHfJoJf6o6U9N(e5HgL#gsrs*1?;Md0xsoa1- zMh)mwCSaivkln7d|`onu?2^JfkXBl zIPkjUm2Zv8=w0E88lO^J6}c>$D`fv=V{BW7>%mY3 z_*HM2T#|n5R!E|?E_-QY532@ZhTI{DFWtMtq1zv!QYp3`Dr#e(j`n)6IR}KmhkZy` zEr_VWZ;e`%1qd zS;U`T2L-z`G68A6mY}wM>75jfXU3orfvk>h@DtJI`vcZhy7TZ2&ly(EmM=1V^yY>crtDU zw3Nr~I8ruhkuG3si`VRZK6$ADl|sFLm490lAY%PGbBRW)a=M2YnXXON+QP#g?dYAE`jd@r(2aR>tyB;ubtLUJx ztN+kdYy3AbO@69jvT=q5ZCq&mq|~3oB<%YKw`t~1yU%jG+cP|)wym6|6-ajzd%T%< z=s2zRCZjgF<_E6u4UkFI2CVm+ZZyC1CQUumh0HbMpqXBzmlE@{h^bn?JG`;@74TmU z&lGBEB{o=*Mw$1viSX2~71tsACn)IL8M5p)PN~!!IxlzJne<;%z!Ou<(MUN@Q^Gql^M=HecRs<$f^1e&PU&_sj|HUkiadI$oK-7657`NzBs9l6 zSwg*htLIS-%AHG=Uw+kM^bD82>?s;Jq6GH-MpazKXIh0!0^|)MN!&_-q*6ZpMCKV- z;yx*>Q~d1S)h)_7E+PJ1G5|1i{murM2b1h=3-3p|iuKpbPl)yEdO?Zp5xgxOJ4kSU zZT36*Y@rKn$<&1)ShDw~2xOwNVGi1K78}VHLO6ij!Mul~_ey#SQSBysI!g3otw@Fe-goi=vKtY2N@v z@ta%mrgv0*Yx#`2*N+n;UTx-wSuP26F9Ct7#J@m=ehEw@B|ketu*WwSvlFNZBvKsUiYvS+0sH22pF_(a`v3= zzjx^n0xu<4*ZUQkJtO|+AfMRbEFp1}^PZPxLt`l)uUvKJmQCj{nFfG;sRv}A^Fc|U zlsMPHO`4{BKThsEx`}qh6&=Kpks{wTG&Am$c4%;e?@BW6V zyx6PzCPSfkZQj;UEEZJ2NWkZUtGf$*BSq!eyVbhCQN_$^>Mgxo+ym{(iT^`~`@+9C zq-+%BXoM|etAaeT`>fu9`d)lsqSb&`En>q z_8Rhqi?eIUNXQ-ZpC~;@5dmUe@q_@efOHC!Z@pfa9HvdaLaGpXRf`-wdc;wpSI`0q zfmr!ji(stM!Vf%v4LDI5(|4GJz8GbdPhS3=UTg==jWN_E_gU%T+^90IxLNQFMMl{3 z4SCTlrZq$*p$~j@(X)blU}jXE%mW&^NVJ1jT2mkTD5t1?5oa9^;jIWRjIobbpYE?f z=@{v!2dFEt)_k(A2NWn4nqCtKk0Jk{j89KVpr(*GFSHx3KcD|d3b^vrc4IBlz1xv1 zPH5y|cZCv_|L}Y-q(PIjyO-;S8$e!adQU!TX%M#xyW;oNC$^{ahi*he1ev4^nMT2Fv?`qd%ieBV&)_A9iZvYFdnAO(zhL@Ycv)z5R$V6=RM>tr`r)3 zymDU40An9j#(O_tkf-m_hL(+Y6RKJ(@lV1rCw{c(7a+Z>SBXr0d!@iLL zC61e!yE*B?en;NTy)~33ru_3}5pIkdvAc#XMz}d!`~D-~w8xy~@pJ~X;@7mNa17!M zD3lU5At#~+W-=wZw%Lot^6PPDma)!=RZuUO-+BEBWf)vePtW1aFKjHWEFE0p{PB5! z8W)ZJ>zLG)t*OJo(9&9{XKHs{0Sfw+J&BR{U}SAKN9Ucyd4AUS7LaqPdhI@-e4kvQ zYZq7HsnnyYeblBvO*Zmj6IYSj`kBEG?ObXl8UKflQe1vM@qa-4{Q48P*Ds%)li z=Pj?kH=4J(XHod-Vq2o}vVK$FoHtaH42`9s5qe$u`KcfG_Ew$w{q+F09|ZM76*V-| z-*W$>aY#w&MJ=L}m<)rXj+&FBtER=)$>gK9rz+=8BAIXOY zgZ`SOqjv@BK*MQ^5r2bx0fIoq4QoJKCAG#*2oA*8GLVv)Oi#X~I!tSU00b@>qJ6P?077dB!Qo%v0i9BsMCO!%dsM`& zK{%s`<`u)>KnRiHkIM|h_+=S}2AH6szM_EjhJ=FS+oHYZTIF1K3|Fr+jhnGY^j;%C zi(99Ee^cn|sVD1T`Qk!*uBYbgsQ!h!Z{Px9s~@!wQ#~>vV2nYYsx8D&lNliSe8s8r zK;gP=g$H;5wg>acXUdTXSDc`T>`w-sfdo{WW0aUWk$4bBnDQSZeU${o8*?$w+ePYE zg#VW4(>)3BK>jpDc*O#hJqqwx3GPw8og+Nnfl`6zDc(K!0SnpX)H}KS_Uooujupo9 zfTL?#+&eIsfF!=kqk{k3&5z~ten!wEMMKsCy_c+$4o!H4^?&g1BaRl_4c#jRpTqzWEKhy!)%z3dw)LkgL{tHpd880|ppBBb_FuaoTml^+$c(tbLy zU)TmcRNz0tG@EtS6mZ5PHkMj+cjwEJ7$$n zMO5>^wS%^sP?9}~Qpt$nUx~YY`S4^DsuAtVcjddf)q)aA%WM70@s&_!K{UZ24IGmT6 zmzR`C4Z#hqL=BVX#Qv_yyWuA{E;h@Vo}q;W6^tFDQfbNWRbR&t@2hYjSaHoG$}~2G zXf&BRUH#=U5@WUO(I#O=8cErR*Gv?p-kj!ex#@C>Y}h0XH%vztvAZ21O#;e{14O$~MH(Cjl2_N#* zWnQH*!CB*bsKDOua=hTdJnUlD*Wm2GpcsLR9(Q{uffXLk`F zLC2g?AquoUjn1p#)hJqt|b#?=EEpp zZj+qPpT@&BOsR`-vAC;Zbz$cuz*g}~7qv5u&YFIR`r?|NVs(cZgwU{8wnojRL%#oN z`rYt3udr1D)EnBEJfCQ%1-AgY5SioDhu1fS_v~lmfqM}#YS0eo8lEyEG=V&RGxwu) z(ALo+Z9M)aU{!3u(F4)uu4yr{vZ479itPk6=b)#-`{m*elrH7YwAJYY$_>nBVcXv_ ztb{^^yTm9EJED>zTv=NFs4)s0wG(-gXU8I!amF!;$My)|vnl?^#!{}~f1=mMnewTB z_%=nu{U+p2teAeH{bU*Gtb7GdtP#7`EB>bc5F_Hyg+XqG7DkK|1XO>tt5$%|wAHj0 ziBzdP2e{|S*Pu`?Dby*jsZ&Zz9mgD!L808Vep6<;pOtzz+UM`}oT={IlTl{xurb@s z+aN>#&AIt<^Ddiblcz}>9ywS#z^zyb2;aEn-ht{g7_vx~J>2pA0paS()uIAh!rY)x zCCdnRXwhy_s05F`SRQ{8At~kY)00r{!Ck~G@-2A7Bdx(%`*lX*yKENZkcVcxXkp{f z5fn(0!Qi0fEraFintsBP3iH&|s*yJc%LC2JVb%Fih!p*L@)2_=Yw?+9=jUb9fAhwb zgvNT6s&fP{=8>tApYEq`Ha)hze(PHAZKF3he>Nk~5Q%*|2K>dwN3^tZ3+>t<-VQ7~biR`sAi5k~74W(w;QZ&2{$q28c6zhhUa zsXE$7i#7|@0D<0fD!vi+>-LA$@a7c+YXCW3zX_g&+d$~FRz z%Ut<+hqU3EdA|BDY9X-(;o7p=ya~wjA|RC~sEt~=8t*Pio78JKPllN{sWDVzkSx?u z-Hlsn;nj&q4E1&$$!t4EL|=hL?FV9|hE38%`!s7h`QN3hQzO53plrNI&A3$dHfe9P zOhj`lW3gKAXa3u&y~xgK`df1O#y(NL(%F0W1JD)#8~fjymjjA2YWIn=3@WNRA$*cw zBW>6{p}McHigZ#W@60E|1Go_#LwY(oPW+_Wr-3iIyuT0#h!HrbIuT+1UwvKXK(7!G zh`?DRxCq}#?VS$VGjH+WayQ}o>nn%p7q64eq7P>P0f^Y>9LMK{SiaGnHu`t~5+en! zA{8@G8zFcFY#YE9VSsUqQCpru6_Ear6~N@bUiX8PCh{sl5X~`&7UKGQll$UdE~xdg zzh`p*^O7R75149mR;`c;s-v7n5TAv`8&wWkqQw&ruF1(D($+!Ii;oKj*^j~x_(<}+ zqv`R|@yC%48$s9)0PX!}UpT?psraY=#J&x6n2L#FyU$74@23jf=2mw&1>>d>k^%|f8 z;v$TUaZ;>bhK!sypu;CTr4~?`uT`8<6+LA@U`qyNvyGUATJ4Rjb2=Kku*- zkqe212^RqAx<(yzy$&r+BZM^LCddeoZyAHa$)A;~=OqHZ1*mkKz_1ooRtkWz|>rp0bZnIE)dh~zVa-!}TQWSTtC_L&w!_13E zL+}U{y}QX6a>>n}Rl#V;8g5hFe(?=SltCqk6JjrMvW;d6Ib&5156OZ~@SwnM74^h2 zKwc#J^R#MZCKR-Wd%4p^NZ4;f?*9~KL=6&6&x%aMfqg+-^P46w1J=g@+JAW7e77pB zgMjW`fmn$rz8o`fbUx0pM3qlfITZhd#Ck*@{>1QRD7q~B`$F7=Qp;xXO@W4q&6-c# z{nhSGmsMx@s$PFqoxIe37{k~Gq?5KUH6gB2Maxu$5=8^kMo!|Lim^myY%6tLg&l*O zl8v%(XjY6_m)ZC1og(PedlD-h2I^Sa>ZYMa&QbO2r&B6*{Wkjr=-erm*%3lEY#RR> z`KgLEs)mkr$lcSN^W5y0>}wOcr8wuftSR2nq;yjCU%6d(>Usn@hP_~ob<}^nRlApa z_9S&ybmZKmmyEkq9cqKq%y4!MTze`JRH}0BaMafDj=WD4anjr5h*Kd#{+;j>U zbP7yLu}Ey+Y(3xd=rh(K_md`#z3A2W_&xc=hGuLTJr(f+QLtuzX6PrLB>bTMc~orG zEZaaB{8kr2t`DsPJi*c9FS+JhBW!+mx}JC1Eq9KNxqc0!}<)EvIC zi?~^F}I z!|;qBA0=E=1m+qZg$l&~CKluLH?kY;poyb}930lShA?}m8*sOm;8wbcXmtrij~6qv zvJTUdj3zwo*}ulvRMxo&`;uAEy>1w}Hp1h@IBMjwd#M4=!V;{*)>e19l;C+Tw6C%b z@p748P|c8HRTwy=eweUU5^S(xSXFPveR@FF4WATa9YegPEBY(iG6I8Mj!V0Y*r0vHYnRSunpw+oa5+yii}r!%KUaHZM!rP}+z!-XkCtY*dlgv;2` z1u|x**h}Br^oJjijF?~fH+z(1w;u#N8aSEE_CwsvX7L%x7Y*??kz%)TY!z!Jb;|@~ zOkJ@Tqt_{nAMk{j|B6Z27SmQfAJ_!Yh1CAT&8(;9>I8t6bRSf)S2&>#PKTkx3v}$C zVlPSWlQ=)1DlvZ=X)8o4+nC>kZ%2G8#~F=118(BBH=rq*{mD{NNj-rfdU{+-VuR zRDM>nB?IW4U1~mg)uLq8*p(c$G65O2ak2Qg_^jy*m-B>`0Yay(t64BPF-J zc}?E5?wtYiO$UAsa00_<;UGFT=Pe2-iL{t``0P$1x^V-5`hkMe!djZQ`0U=R>@7TU z6*ccIx3T7Thu^?yi5Pfls=(&1tOD?TtmwG8U1{6c6?P`2^81wVDrtQiS}nQqw6#ll z3ed_1u+r#RghkK03TR_dNKfW`Sp>&b?9z}M+mz_}+q6rY=@th2wpwFslh+yCE31RG z{-leXrE+k4JnO42;OHSVhrH86K&41j8(9s$gue?n;- znos9Hhnm>^qDAM9K;V~EOCMoF+uJe1M%OSfG+0Zz!I^NkM%Q}U7lm6wEb`< z=Bn^QN&SC%8gaWq?#Th3#N6RjC}If0WH7wN!>>}z525gjLk#DZO(X@y3ZFDMym6{0 z;}x%Ee;B4fFnmdjU2=OfaXSzB{tU&4fUKOF6kA~qb)3OUm9V)8)duItapg=`=E!d{ z5vpmUatV%?FB$L}gBsioA-@!Zf7L3Lxl}FT!#=iQqG(qr6zdUBGcA1fPeOry{l!o& zKI_p_)GJ)BV4hBv;cQxv3Qw9eLme893m#^NoKQ9-27gy@x17T~k=tZ}JV~#QbSY(% zZC6zZ=8B(8QLShWuXs&L+XF(PghWfCb#z5sx zJpvpE)rM#I1Y@HDY@3F%S%yC{EbQMBHFV!WX7i}?yev^W4hIcsyP1l5M2jW5iM7EQ z#$ii$Kf_8z_32)Xsk=P{{&JHiAp|?J=`skcw8sF0Sca=v!{7hhKW*HQP&3$~$j<4dm zxPy4E7l4OoC=_je`9GpC?ZN@yh5SCSQ076t-;zDT`Xw0Q7P=OGebC&IZV(fp86~z4 ztFXs;Kzd@m2QxTa`)P{UK2FGJN^v`V6UNbi5BSDB!mzdvnBh$|?=9ztEoX-<7l$sP zhv0RG1)Y?bE2KMNuKg(%uUVMhDZx89sN3g=pSUnRsslF*w;u!jqN%qZe4kE1J#)$t zWuQ8luD<;N{iiIUhH#z%Z+s03V2Ohv?;mjH1R;&F0~(`o(-Whok!=(^rr?RMpFO6x zy3DRYV7%+>uA#=jYr19nF=nd=n9o8dh68~?rq=Y#WUsR3w~CmbjbOYB%u@#QKV{tZ zgjhjr-)JGNxeHiVS@Eer$C&YLd%L_9Ls<*^(-wAU962n|yi5+x4Jw+tP>+wgi@PaI zum51YixMV*UA$Ma%2RqI1XV3gD=^SU@0PF6WSflZW7DKnEkDOFXc zR_x7$Z>JIPIGDaSIAldn+(b{*caqMsrJe&`V~}5bd!UeNd=FtFc-b{Od^NF-l5tnV z-=gU0Sl{V9SNKmaY-aZ{lUf@|^UMGi7E280mZFu3=aEKK80yrQ&fHW=2<&^#sSfq| zvVp5EA2TOmONE|>;+o==wV#F%TH?l(yzGpuja+_+1OP%mn0}^6EqW#=Gws~o{-pVg zO;V=P>3dpx>zMOz2QFs5)DIsOc4s9qdn!qYjF&EEUb4E;J_V?XnndF=cjCX~wB3A> zxwy(WTlawv>`YUOC0SEY^!co{sk4LHM9EG`$fzu{Hek5xc*_{`TRU4jdq1~kUWOg) zNVtVO&P;xaKL3_y*nhw=esFV=ezrk|@t#_GiVI^f67sr5%WmS%J%keH(I_fVveMY~ zJ$3kHyrsT5*W4)1h~^mxT_?sTKXYF?)ZGrY-B~$VNiM!##(V&2dX~%oJ9BVRR!-*m z*lbBip_5Qj2;{?!;m6J52Wf2Ih__#&?NV9Ui4_(upFBsm6l<^gQ~)Ft8un$7)rSWJ zObd4tK>#HP1e+cjAEbkp4chrZ*@GtAc`bdOZx@b zSrQN;0Sd7tc>F!wbt@gkT2}lz;I|!2uKQVo$u!S&szas{-7$M#=K1}7T9RSM6>Uk* zUxpUI1Li^`F-yj;oaPLo!j`!sTag|%hm1ystOUp+7LIX>VNy~6L30_ZOh(KTfEHV9 z3?4j6d=kQK2No5O!O&Xo%o~&o_Aq(nKd6BbIb?TS)vh<7!zp9Ed&s*X50NzoQ$|u2 zM!@}@V}A74U8bV9l9AFY$PA}dru>5r>LOE#@}o6$ES%_05&wjQ^0E%$D90-1;vWY{ zhAT2tG2ZtGAEF(Y6tV=$Q^XzwC8OQrulejj#jFQ!~8L$dVaDtU*(ZHGc@)v-`6s$3;IlkUV+d@3O#5%e3j zRVtEw!=~`woEHs4vsLX`;D!XD_{11uMMxG#xQFHPQ5o6bk)45 zLIi6zOgno`5Srl)LW+l@7(DPOb;e}pyrk?5eyH8?xOs1v^n|^n?Nf)ab+B;Utf~?G zxr+uKf)PB5Vko)L~{zeMOY1{`SyGi@ZyS5FLT# zLTc#Ujwup0-ietveAM7cIH&YgeQuwV6rNXeXeJDGhr;i*jnaF&<|wCTAMI1)JBZSI zuI5O$azEu$!uz-i%)G07SULJ=(ZlIj(r*bI^#Z25@Ryh-XQ#iZkHzQx3+jD)WW4@f zM~Lp4a)CZ~;G|!d)gh+6tBr7sCn)8yjm$VZF^JI2bE~Zw|C>;qr z%uW4l)RqTzE z#g{fsqn4-~Af?2Vjx-I-*7EE|!&nwJx>@rOCh zzSO=E3;{sRl>QZpd}*w}G82yjyy6 zYaaE*Chd*K>j}sv1%#bZwo+J|vuGdL1$L{CCrx(Q`a^H(9+2;aXAhdy5fsWK}j{x;tHFb>`e*e02tZ=BnZ>@XMnM zEb{Abm0o=g5Z4Ven z>mKAmi1H|IHtv^T_)Gj#>D73ngHE8s3SS;~Nhrrk3PpjNMRC6YaHzmK{By|Nd>emmJF~nIUUiiuGwcE?jvxhN@G`v+@tJ zs*@BzM*?;pUX>nABVc7G2uM>vi>bml$)#fnE~M==UjRX` z4b`nVFb&S#W_v$8b0p^KJA{@$Nj&sw_b0|ZE&p|BrZ+7 z_2!&2`K*HwaL4Z>5DV8B+%R?{FR_^JOg$%x*Enm^$W>0ITuWYMU>g(guUoV#9`mYp zsN4~E6{#w30?@YCL79iLtQ5(4-h~-5!JourzU(;*reuewTRIt8@)Ipyu7VK3>>|5L z`we(y!*&4760T;fC_{FgnSr~__#|sU74nz#^jMX9L8q5t~psDX_7?LYQFKq*s2Y6D1WLtVwj0^@`d0C#%3F>nRuvRWVnICia$| z)T#Gm?&i|tjBGldQ95^QJoGw^o+S>OFPQ4Qdu%pht9Q2qBZf7YML_n+)$`Uc6gZ!B zQ3vM$#M3G=CzFdRwwn?%4Q%fyfYWmel`09ZqlQ(**+7QX)!}`q19lH`nI>o^-P%!w zvjs3{r)SaQ_#HJt;|G5FYQ1*LbXrCM#=-sy{5;^D3HrW+SaSy4B~6&Z9H*#KwSVV2 z`d85u??TQ{rB*ARurWRmqa$=ys8efcm7j@*b*AiQF4{qnp8vUHVSFe=r;L4b>uK-s z(I;R0DQj|XK;ha}q$UwzEYL*qJAY&1@b|795@`k6J_l4#%hjqkgg>iXgeqWpef_G$ z$-Cn5R&6R^^c%UckDl0`one1Fu2wB6dzV-T>v<7G+SPsl&?-RFvl{g)dq|q$0DNrI z2?R5R8Cm-|4ncKaP?m+zs&LsXGiAGH$G2UksF8Tc)1w}t3VcAn9nlJE(8wm) z=7l{~oZPJ}iTb(mMjx@u=a94uxG&{FY2Q7y_Yp-?U7 zYYaLT0JO%ZTa-PVr)~_-RoFeB0ozsm-P$wrW>!1Hck6hM)+o<7?%t7JoFm~a|7m2o zJ4bqfkDwUoihS09H{a1{zc2Vr?S)iKKBVfPPt(s}<1SLK6ntjpnGEb+@4q7LRUfau z*FZYPY}=IxGNvq$!atuESzmgvUE|1rV~?2GPzHLnv*<%)uxEQMnD$W0Sl+3^IOXFN z`8h!7Wv<5ftmJe*hSaF+{`+A6?1JI=%@GRmv%2+9aETSP#&Rt9N7X&g;`iwR4Tym> zr0gt~?+CJ!f=Dto_92nqDMl^>PjY({)?n-Y2KctmG6XM-n3U)$+zF$a{I9_C2Cf>7lU@Zhj6Teh|jot zmxF-YHAbQRDQM;{CoCSQipmZ)xi#h)>_t84apuOdscI8`S3oh$tQdJ=tbvs;ZL!#1 z(lX{UzUs&dy(KO9l8|S?Mm^JfOotS-6d-7wa7lBfG4 z_|lKS!*moEqh1%0)bO_~l5kU(=VoA&sr*lF@X`#YhW?f87ukNyMzgFi+46RY~G5Wxn*Z|S(87=Jnt=AN4I zcYR{djjC|cG5#zf6W(i5Wpwf1%gi{>67!`v^JA%?b8O;ybK!L%Ygmg0gs|?!bWc$I z+{(RlUXZ|JljnnJ-Wn$*2Osrn)y#Dw0G$N^H~mMR%s(oetwgWm(_+h{1s%m>NSkq$ z3lK(%J|4RdeQ8c1htkCc$0dMcQP9H zqvQmn&zjoS+|tLaxHixLFtZC?$Uk0E;_}{RcKUYu;(MX_{q=D-hn*AcM<+i`wvM5Z z`Tv=mGuG!CEt>AjE`N%bV_tuL&Jm3yq9zq4c51Sbo-Fmb3GR$~xh#4RIqbN#)RvOJ z@P_|Ly#G8pf9Hrs(qP|}v^a=*-+q_QkpNOEu$vEhfZp`T&e8zRopt%s6K%WI)Ut(G z*Z%;o(n|hr196Ihc32;_NB{!oo&!G;fi&tz z{a&5AaudNW3r7YFtDt9TTRxN`3zm5uun1iWoy_t8qJKa2~ys*M@vvKep+*GZ|pLGO84XVv?5dQ z7FqFe3~;09vMU@fDWC8QWPDWxXBQ!iHs6Lr+Z_Y*|HaYZ80_br&9K8_7rgq}@>^~e zF@{wSLbsFZP<-ykd2{|uQJgk4xjjlsa9&K|@aOU(T7^19W$S8l1i95%k9O!MSs|{k zm%IcVtnEHH4`%*AVIZuNb+6v?EO!TduX>8G^E4wer=))npq;bbJo;^hl#OwYCm}^V z;)=^zzlq0h-Z&rs{z?*ysU`=s;wta!@q|nK`$^M<-CxhF^gn(`vn|$=NEj;YPEXv| zh-Z;}5XXF+_w>14j3<}TRSGb5Z^x@*!QxlYhM}q(Wj&wx2I?FZuo4d0i~lo_lJrWu zs!>+`+n);3HVb_4UN$SJd%=T6o0xC&<>68IN?MdpIcjBL>ktP@B*pTy+VJ2qrTgiU zdm(%X`6J$QaINxXA%yAzKyLsk3>IX><_mMx&dxiXtOpoK0Cr2)W8V3`%n=>A>#Km- zvXn(04s?n#-cZNY#fm(fg-$|d+GZgaCWUSuc6q#^{@VyFa$7;$Ovh6dG3FDY(vX>w z$2s+Hz^v?X38^92kSKHI*V>}HuKl5IA96Q;Qy$oxH~^B_N1dWMQ%VtmZYIcy4geP| zP|Jo#0=D!1Stde@;sD~nj&qJYqC_hyiQKp*Cf`AvqkRNL5&h!|bTJln447<%n}JBS zLtENt_u&A-9=H(C*h0E3qE9j?yQWWoERkdOQxxY?=>`0gDj}nqo?EGfaE=@0= z{Pu0z^xKzs%mJpx#W5@$S@>qv!BMN@F6&g^h>qwq9r~}82tU9!Qj;RT{rLY282=v; zFzgH&j95qmF_7X~nZ6-iV4zE*q{WSk|BryN__M15y7&r&AOzwG&>aU7{|71xVa6uBv*yw;GW3RI7z8@K7ZWRfMON*-kmtse9nDRmTX$RCC_#99b^xg;wW3I zAOlOpL*wPDnL!X_Dc75Z^7yTuf+h!y;fS=ZLjrIpN@5>xEyT&tV z8vFXWy@R9RR*B7);}ZIlj$^@%@c-psh>D_KJy|R%G@-i6pN4o(-Te7<_tCv0#-8E4 zRxM}Vc<|3QpL*()@L`5D2mT>Qx#v@>QqH%JdU%DY1-IJ%9hm;NfAJqRK_YJ?nLGH> zJ+z4RBLqUSJ<7>$RlpfdlApsIt_@-+BU|GK)`#$_u5NkpTTbo{Jrv#H*OQYnNYKD> zPIdd}&bi4*11AL1#!mPTe=++X{=#Dc$o8JuugRwOc=@c%a}1;H_g@}$e8w=BSvP78 zbc~tIOWNuEAY&fgl1YHuzHsb_3@=y`!45}v0P2)hUC_%fA9gH{^e`FWA_OYJbJXK$ z`6vGSoBf!3Zj1gH<_l_H;>uwWaE@cT_Qc?vcM)9DYSSh0lc?LB|8Lei!)zb!8!Jf7 z$Ds}1eX;a6Y-a;!gJuXZ{Lji|$;%LvTfV8ZQFL8;wjsdG0tx2*9 zj{9$0Pt{{A8~mOaP_ZqViuH))%oi?mURwwyT9$zw*E|ASVlR*J zkUY2Yt>}T^dq7-znA(LOJqKK(c26-(@-7ptX358Ue8WC7|C1p*@ggFer(cJ;8t6f> zVKR*u=tHg+%CxjU)54~hDU#`0H?R}Y@iMBGSc;2-#$~Tz|9Pe~?^+^N?A706hK{q7 zImc{%{GP_GHa6OyZSZaz_tH&}GcFHWpSW(_`Qj!x9!owcN11w2Blmlw2gTov_@leU zt3P(H-4}Udr|P_ z4%aQu-`B7|83|sTaF*3HtS0rOrIIewruc=!MdI5En*M{sv;5hLkoYB~^ZDnLe*0ZB zmTZ93RGO7kw=Zq?VZ%Kysb*$oy!dar-I+oB>OLs%Zgi1fqtGoNNXSn7l{E#aup|tD zuc{EeG3OuGs(#^cass!(E&@axmheX&n$@I*LV`>pX=F(9V3s6{HA=2_5f<;~HRiW$ zfJ2^4z;@}lML~vTzT|JdUGmAvOc49@LBbe|Y~OUusQGW%Zyq2Y$W`rm?E4joBdIC} zJrWg@G22D;<5N11>sCP+tUd{z`~Wc>0Ub?#pDQ8ltj2e{WDe#g8Q|*e zKNN$3)MMT3Q#aCM-AqWm^)d^65zm9(->vzvW4gNBNR^vZ2p1%fNLDcUum!Ao$k4n!p%2%E%Ft%45SS?yXTFM^!OG+RRHP{*din$f!leMm?%R41iv#Bp= zguRWQTg9tIs1mtVuSwItA_c0&PS3JWn@O}t*n9<*-^N@YFF`5I!}#X6n59nVZ~Z^= z6tB(KinYgPCqkQ?&z#!yhS)>0NU!T*;3=MkDxp1aRx?fJxhP?85TE{-D2A@>(Fo&V zdsjqn$IMEms^ynd;T2Z@<`qaPse6r+}rf|ZTKLJn~1vgys*QI9&>zBEMqA$`B7s&qJ(;-^#3qG4FCr z)rFwHy*>t0M9nS0+UwB^u%oEUij_KaTEZVxtm&{SC!(DlIKG_e^CNXyg}RyQHozMbqt(tyzkdK(rz$-{W1 z`8ojQkhZ1x`MSy&JxJU3}YZ`6+{ZB-V4<2!tBt-M2=)hAmb# z;;6pf?Wt_?9JcqIg?Gi#yH&+mJJ~oGezzMyex-Iv+NXNPWnz9@%l^9LKt&pM$0f_7 zc)ser8682U{h0OBqw&&_mNd)r(dy z_!H*dB{baI=PZ5hPu?IH@oua@Otueca`9);YZzKwZ{Nji_*OwfriIdkYy>GmUZc(v zJwhxh`@nlx3IWy!P5w>WeQw$dU_N~*VEw>&B2Wb8^{8F4Dk!f4!VngNtoRbV&UyYq zDfLQX5cU_6SQAjaTG`wQ+<`0Gj7e7X~xTz^(H#ZQYFUf`^jrqR-G+>Q*k{D*eo}PI43&{S9tlYH09PF98*+l z-Te=KK)3nfemBl<9+E4nC|Zs7m+k+D4UYriFrSIHKORljH~aR35fgJH6AL9_#`9qm z2nsC-g20F)rI0d-E(?pe#FE^@!4_x zOS`oU2tg>&;k&RZFU&*edolt6loW?)pM*7>+_gtIgl`Ve>JBi>YQk}&Fc^3{AcLdnW^ z&?dmS7v+!;$Jy;?XekGowHU*Jrh<5WfFYfaN~9||0}| zDew^uqn>vGR3?YU1u_8$tiU^eITM&&({!f?(G9&I~R{;cp?HAgvIaBoy~4X(_>o<3dwmES%N@pb8xZLAurVdkqi z2%>D|PEPUD!N*F9;V-<9@pcrnO~P&2d8BiHKabNU7NS9G_~XB}h&i{|5!3Gyb!b4N z6tKf#P@`Ofv<2){%>8EBpoR|4>uys-tq?H1s%up@Q2*9`!EKZ51GIT;wO)hliy|Ja z20fzQo0<0i@fz2E8CBXsJVp0!(nOKe1bhP6?)QgbsIro_9}$-bVF4(S6hCG7WH5-ErslrrDka zxjDD<%wfJcu_f%@{}Q^bIrHo}icP*r4RE#DdC+~)c&kD0!tUF1H#b<#j+F|Eb~xDp zIDRVC@J$q`vP*ah66un1;WoKX)|P0}4$B!g>;Gt8#N(r|CJPaH6*IeMO~cML{Q3*J zk4CN;c;+hL@<;yLhGF|@+_w_ooo};x=?uc?+d%vm5FZCT@%aVB+4f=s?6h+sec$mR zTcHPV4gb0t!fA4ge$tI9y%Y>|ihkmiz7q0|BH!rk#x`EQO0PX!Ds;e)5!%>k8#=X; zZ{!bk@{^1OcnffgMFwz+Bi!P}F@CmlhTwrHQM!vPjoB(Pwg}wfEdbMUKs1rbl{-c> z>;kw^A81@o0-)gl-QX+^*3^JK^xK(4Hydcx$4@n(cR3e+G*WZ->9AV@SWN*f^4k$u z@tC|+e+Oz9L#G83gExxdGRC@#HH=^}aEnD5MXMU1!QxM2QTJuB)5Ngy0Xps_maHS^ zm_{oxs1Lbm8Y8A12_L8u`?E^*ZSs)BvmOVw+t?}n0^;CH1nigKG-W4+(9?6dzkoP! zCm8MXua6xV1r<#Ukx|J_hOQBCvP~jNdum(s6?{7b3AMV|z zkJKu4(ih2Yup3V`G)Eyb+)$&(3uNYD7Tqq*Zb(p`pQWGzpEyz$piaC&KWASy6{_9*P<+2pzQZ@P|V({tyJB>-q4S4EC{@t!02IPE6q7^gJEFbm6f=; zO>#u>VI$BhzhLj#h%?c?unnSdo%kR7ed%Lr4n7h%Wm_+aP*AA)UaqPM`C6&|yDqa1 zo!XOnF`eYBty?#yzM&ORjYN{m_9o7_>hj7@b!vM6Y^qenpj3xrN^*O>4D==3y(?eZvr5GI$e@jPp=KRczkMZ`vwLb-z4IHUeu= zQuYmYcrTLD_Vr7AfEu|GA*?Y_a|K%ZZ@0-~J;LEgN?jL7=r3`ya`mS+ixsJ)a2A#Q<9knl4LRXx4xO znmFMCC{-Ez`ACfd^SAgMwDn79Q+LyRz5=&z(PA}99g_B9dC1|yDRaW%4SGu`^vMKn zs;FHKeCXH#%W^x$;hPcTayltb?+EE2PYdU<#W5w#8jnG|Vfn|;lrx3+Hl3T1_42AY zaZAo&;j?~!4azrL%z>_`efYCW%2*@VhXM_<%cF^&g#9ficl3k1%EL#cXQqf^%ysV* z<#wDTZ`9#xOu`r3PnotX=={Frearf`h};WG-~5wTl$!ZY`3;NY3(DI3HX9*^Bl@GP zcFMP&yf(uC&?A&sN_sX|b!DC3BFNsNRSbxfmSPn3BI;rshw3V&?w}@In%AiPuPA^U zu055K5En>Men%~7`wtPt@F%2_^}-mYb!(3hV`~IFR48NKVOR1!v2KpcM@uKp0mEP% zI`NP{Gq=e&48sb7cgG}~Re@p`an1Wjr>LIvtj_>bhuCiz4!?ae(_0(;2Ok*&7%n0# zUOTJNd!Nryp|uwyJqM)N}X)0a%22 zKT7lptAZi>8Io5F3HhOnu|}Bo4>Yzpo6|h&U>K;kua4}o9LFe=J6OeFs)w!*OzFmb zJOSzQiNKp(G5gKoJ@~5k8!Gqw<%g{s9`8}PhVAiu~fHGpgvXRw+Pd}?q#WdJoP$ql*{p)(GW=J z`OO-un3rs&-BQ$7Oi-T|*NiL4pU|2yNNW_MH+*cRKskC>XDJh?G%JbYjKG^LB=zc{ zZ1sJ*M;;ptpFhW!X0)w6E~ht@io58jucV+p?VhvG_6TtX5^2=$%-=|3cpZ?XD*>l?$*2*#^&8dncQ zExAc#|HfV1QntYPj$)E_z?hTvPAu#0S+%z@xt)YT<6`L-PAn?9Z>zbpJ(+co$A208 z;74%x=?AX;^&R@9#96R^DRJ$g|CbU6WAqvo#JIFl+t(^;TT;_rWGJyvcqy2~tsIk^ z<*QFPvuTi%Z{&(b`dBv5#sfRloa=|1k-W5)GTGs)ZmFx7?D6ifF=R5`;iGM>>-<5~ z23UQu_|BC5N0^?@seFHb!2FYtuF7DuzO?z-l@!orLCN{oOm^L!E;i|%NTj)diMdpEntE(JcE*>No1W8VvrQ6jn~8~e2k%u(Z97SQXKY4x z#^ZwaUf)u5Dcdcp`FDm;`EQ1xXNTqnBn*gYs-DUBC!ruvjGLZkKAHL~@D+gje54 z2tiB-U`+4zFuXY$$q3gZKFAFYv66w?Q|jAAD{1=24K(T=(R(b}BJPcx76Pyv2^T!Sv-~=G?A?T2Y zlE4g1*Z^Wi2{CRO=>5an!mUF&q2^NaY~qK#V=>`6>L72fF{ns*3{qte9T}>HFMVPr3N@p(>U}d(*uteV(;s@?R-4+p%4$%}#jpRQp ze?^3-c@mTh=hm>1x_?stuxGO_rccJ3_!n&a#{^djPH?9YBEK|Yaa1#p66;B*wQi*X3}Q<2evY+j=c zzy+R`RY+>C7si9jIT|#^jAPz&hyxAR-Jw}VCXU+25hrU)<96L@^m0JD3qmeCO}dM@ zP-=*z-w7)6`&CJqq^!g~@6avdC(AL-T{MIv90Lcrlq}^elhL5v&k@=@#4KgflO_ar z+a?dT!>nsGgsa~bGjUnW!iQ&LoRj}8Xe2$siHnAU2|{zCi!=O2j#}J&oB{5T7<7s_R*8 zR<80u%aLWT6{7W>0`w|J`}4Qokv?XNKGAP7d*J~dbkDNh(3Tnpyap1}KKapc0=A2K z+P={caPIS&s361136CZFjf&E#xlut?jXmEA2V4;1tMLG&(Gb+Fk$bfcsq2FK53E&j zh%+IUPt9Ut|BEf4Y&P&z*NXHEtQ_%nhAl{f^cV76z5mxPhQ***9w&X|NuZt0r8wmt zxjAH}pA3YAofp&ln&<#oUg6JDnRuUmQILK%sWliAD?xvKw~c*#UHWvNdQgy^tZijd z-L$3~y)p*mhYkq}aQ3HVA<1Pb5?s*Ca51Wz541YaC`00p>$oq26Orv_=)e(v zOs*Szq)n8d!oL}#Gem-qse;~xyux9moB2Ep>==M)PhBs*J)Ay|Cq~qPOfzf`oH4;+ zq5wThge9@E!fmAGgI33imPdF3@#ZctMjKHf@&IBvAWC>#K|SExl#F+44!9*B-Q+&W zEZEUL&tvD3INfc6oI*yl&N8wbX+^}#f)KZf!g$?HqMUuQ_{)8`JL_M|9^Eza?1XR)|+ z)@eXFur^wak?FhX4?~cQI#NFi#xXsk;uEWK7l$Q6VLb3 z`#iJX?Gp<{&DP9>Ao75RX6E9N@Vxajc7tZ9DVeQAX!79O4f!~BrslkZ0J9L&pddPNAi-}0 z(@ZC$^xjn=X8L8>ZJV*j1jv` zyPtGyI)F6i16RunJ(3%>4Op&%8z^?uCf4Ds$2Qc04qGU{qfLpGfIu}?0FS60tev1b z_Nwy!bIqoYFswhC!lYOe^)?IWQhHSNU5Yz4wZyqBU@O3i3vrCEUn}XBjI24Z+*yT2 z`&SGWgH12&A6H{&*xUH{CEYXCs_qIv{Dz8cz$}Enaa)PDs_R!syN7fYBbz?@%VHZh zfGH!?EVjM`SFX)pe1RsNi`8buA@&Ku%R9v?Blvi)-IkNR>Yxsa_AZKHW zJ|3z$rpf2Oj#uxbCiFj^aKi!D5iuK%#oi??u?1~4odpNa^9y=qSM4b9%pVdFs^MCo z$C9O{Q<6D<%FJP4pPcp@jw(+GV$Q~0!4yv1)cr_zb&<$b%Hf=||0?+z7Z1tm?1xo1 z;U{v?MTv~+YVwjogdYq_I00$^Zy(_%5Aj4SZVy2!=?sVawbcqoSRw0e4#n;300QmX zA+f$o0kUFAMx}Wqs!GBxD+^V`K-Ruz##QJ7P9>lzbZsQ^pD~6j7Y`YAm&%rK^q|W@ z9|kN=cV*mmS*MBFuWZP(3S*Ng(46Hna=gMo>J|3~2f`{-*38fQF&8Vx>+u^?+Imce zV8Rr&YVkHEN&K8M9@}ciFluw*{KIIZz`KZcoZ3sbDnX=8I~gzQ3^bY3iC|8!>%n5a zBco#=gpv(Ix660mkRzaj>M|V^icn7g^8QnAL0#lVH69|0f=>nt#gV(;LSm*XV}Hyo zh&_$8JhYv<=SUG_y!Sv+BLUU6r_?N!b-t7{=v4_OvSL9w41TlgYL+lLRaF4;=Af#p zT52kD)Tvd4)+VG#oqI!3W6n28iRZn7(59riDQQ3ws#%=jQ;yV@u)oRIw!Va7v0JU! z-Oh44)U1Yj5kWd)mz}=-LWZ*M@xUf$($J4n`h=qX0t+)JHmq(c`S5~r^3rSwJWO;f zdI!FI-0V#}eBWbPdVI%UF|{-kf*E-|)Bty{>Ja=){RB;?G|xE7KF% zn@0I#dHhOb%l4N$tf?i9vhiDSl|JrXjn$Nnx<{W|i*cOa_c=*MH#$uM9a{sOkE4YvR_211)m zTUVw!M%gWzflA>Qxm1=G*@&d1!zh!ZinQ~RDhLB|KS+)Kyo8%Hl~H;S-t}9 z7=E6%hcBO}dbkO$;`KBCiDat+lh*}DbBNmy7PJK3B@A7DwV({u2=vM2#cxn~oUs#u zRZL$~KxtkD;h0fmmBBiJ7`B2jXB*Z=0*@_+9f1^klz?;8X%>WajM^XRtt(Y&5i^Y) zL~3TsHV`2{VDK%ID>szF;0x3gwU@?+bQGd(Z`h?IPy-O>C@+a?$<1p!0LG4>xK@=e zRFN%Uay+KOsE6X1qGU~+K$W2!-h{VV?SD=IL@JS)E_MLNU|ivpY0pr=Dv8<$1Zxa6 zdIDh8r+U>o;76_4-OAL}IC(u_>s^J68-!=d9w+Va02eO<&Tz{R65W$-o=9_gZHR6JJKogu|a;M1WBOrTHU z8(x`eGYR|ECDxlaPjC4sO*mgYlBfUgR2AzhLaY}HiFZI`2lg|^*T3f20ha|+Pj*kw z#ff*QKJ+8?^|gWN-PsAs;bl#0gq5~XY_binCn#z<&2V4Zxi_YyM=RP}*m!4Y)p@U8 zb{MSgCPl1zrL2|pJo|QVz$rcA*Mc|g<;wcZ8||%c%>O6Lh;bR52Xr$FRsiP*Q^2Ut zd{>!|7K8tRrIGEjCsb>VxcahQ?V04$$?#TC6ZmIN(W#K@&)H-P%Cm&D;fV&6XA&xx z)mA0$hfL*=&Sd>;np`!qxONO~B{G73&fNUE61Fbvk7ytS)IHY03sPsnP9>^7UcAW= zEz&H%v8nFM7grc=&foE)J0fj7dPlL~ngLBws<+VLlUKl@%f{>gs1xkUN;Wxlo35Jm zpg2|K2Zof(J^iNv+%O>Lls)SAEREHFF1upif>rZaZ+!dst!yw`^#wNG`c@Xm$xTC& zLWY43z6rEN)d-TGk1%}FI%Utjxt%g-n+G;`r3CC(N^HTfl{rzFP4 zWTd}e;*zH5Lq~k&jF|Z4r^9Z(k259X$Hy%KnbW?0W^Ag4E=KWT4eTZVzSVlL{1A~E-IXulqLA=QU?cU8dyJ1Gi#EneC80e+?eV-B!ZYS}3O=g8nR1^jWP1H(}kU$4B_g0??+NZe?Ydun&$kgb&6lL=Z|1=%1}a1 z3n~%_v}uS!a@iD{qAI|cc3xqz5{3_G8gc4lVZ5uEb(vk0ql+{2eOn=*DKN({Ku+?a z5qvn5uIMA|j04ns;?ODSSS)V)rL^o){QN}9qWRa$qo}V%_3lei_W)_z;;~a=>xG4I z4TzP&1xh8^?YSGlEw?t9Ex*8SuPvsVXRyaEs+PYOeZe!gc)Mi*jlH|%T18y0$e|W5 zZabcgtfZar3PCCt)~u^f2Tc31wI#(}r4 zbbqHORqlD8g5L4*{l!vV_zx(i3c+WdY>{k!9;DP~*~H^K7!3WDJj&NHB+MeD0I6u4{s8N%qTnw(id>Oxe@T4lVxs4B)*4jYpZ8oZ=5?R^P^S? zfA$0l+!Ov7%03uc_cUjs(8?J5dyyT*qFdg4eSzgl=^s29u694qscDXIdVE$en0D@+W%}5f#M7 zC*#TSW~{9zjSK{;SH{UPnbjp11Ig7m=g!L({mCW>Ai&Z(C0<66lE&m2B5F-ytatkhv7{r#zW;Iy-f+t@#p4TZ}w*Nrp22Y@D=D+?)+u;P#_w3TB6h#-Jhmyrp6Gxt z5VuvrntEnkkpY0Z$7B8?T0e3{r4ID)l=YZ8BWv(o%_LJi<6*DRKnU7R0ybk5YvFg| z6BHU@ONBu+TcLMG^dybYB}cSDfJ$Yv$04+n%TXgUDV>v!qdgUo&@Iu z!d$EzWsu>_Ls?1>BViO(Dh*rPjy(W2HBRL-hKQv z^J2L0pW}X^Q-uU7Js?JvfiDblqP|*1IQ`b*jF1bbBZte_ELamZw^2`u9kpAfg| z6xCjU2iZC{1exHydhFN~xAF$KK-Sl~YX7 zRk9WXg=CIkCNrp1EnS}I6IgV`e~&>m>A%S8zZ+O@XB7-dVM#QOC~4jgA>0U^mB8f| zyn~Y8;IPfs()pZ#Ut|c39E5=up4};)2n|q;2B8YdCYVA9l!RovR*8TIm{vJ~tOx|E z$ozO_mE8nqkq*QCko!O4qQ~(%9UKT?;L(^b8$SpTZJx+MK#d1_ZfgkP3Q+MMv(68I zy}|4u3I7Pdt0oZOpA$d$!-r0&(Y0B3u8cqKIR4q>a0&kyviI=cjI1$ACshS}VTAOS z+&=?U+D~g8AoD6apwioEOlvrpyo0YjL_-=Y0p1!iZ`#Ys9A(dSUY6@`spicNh;5H59DhDdj1<=Cy1Fre5`6Q|Ioga zoR22O3d2)jQLt8^zuEv5{p&t4080_ktVgP7t+L{w;IyK(8flaZE(rZV5pq0tE`~BH zB~vfS#U;ddWScw%S6G+KF5PEAA1_NmW+~bq8M=;Ebaiv1txWOPC(JvzZlk)+@76_+ zo*E|sm9DpBc*QbDh>JFlL!*=>VwH+Fi$0xXPI%4-!L)V?&^ECT5%m?MY2}w?X_Yp( zYXQOmyizHHIh4EPZc+ab-m94|0_68!H7@M{F@(9ua3!G2&y3c~uNA=0`a(HUA45?w zcAOWq7wQJ_=Fhj|s>pxKM6v{WG;ictqLxbNslzd@%C2>@MgchFUJFc=h z<(&~WqOG;L{A|L8JZ&ONZ06$BGRhP_cA~c$dyFN<)H(OM8g{a9CPMYWXHC)=?nJYZ zPKFK0?KQ{1Ctbq4hBe4woNhhFun;aY(*&M=m})gO)C-wa9OIUit-2%szvC(;CK^G) zYvB}FRu(3%I*wo$`^S&|9h}8jPRClRp(XxRh>+(p{#C>)gY5mdc4$b%cnRSN_71$P z3?j@=0~`n$0rjuv#i_rlJSzaG+wBi0p-uJw{E$v^SwE@_0TPj{-{5UW0M;Qp{eFIf?e= z`V08(x)*UC#hC5-&2<9^W~bi6$B=EWua6c3)E>y4@jfO(h7<4qY0|dO36VGqp}}N9 zevA_NW-&Tcn>a8Oe73;ySn7V@Yj$UjlmCt4;WRNuBhcZ*ALb}P$34U*RcD7bro0X7 z^#?lxh{wOTuJ7ST(;AvwaLle|Or6Z=s@wxjE|B5mc*xsW3A0z|&P282-j8}4uI!#$nW*MC{vSY%yCnD*wxG^S zo!dR~ZcD0jk>4Ir#w{hh7k$)p#s!UBq zMNT6H5le`X!I?zj#Igwqe_C&fYW|tEw^Le|nJ>>cT53p^iK({gYZrD|6r69i>zO~^nCycjMbk1sTwzp4h)2ALS zh8LB9n`nkxdMKnM+D|Jy_Ld<7iu|Y5{@1GN^Vf`g?Ozc%^n$Svosi@|iRx~M{>God zgdvT?sHlObwuK-P#^Obi$apOf4ebbk=5#SR)Nww+)UY$&%8!DE%d{a@KsSzQ#r8gbwC?^7toCa zo6S|p<%&+)e?m>$S^4Qdq4t|z_4u2d%y7AYS+L8CIrRwg1jp%x(z}3+PcRm?nMur) zOLk>ng#4@2P&KR>x5NjoewA9x_6P!=6BjTYQ!0%98&lX7-S#j9DEAi85kLvzkcea< zdZHrvB?R*!5qXqrA`7LeJLIoY`-RerJ%5#&7;e1f;3@fls*7{_L*AoE`$Ta}Rz;tR z<{!42$3H~#7UP~;G#YJ(rQ=O&r7u27N}R}P7Vt-SWqca&bbBItrhCfVm?kwk;f6q4T?1yX8$s>CQK)T zmz=}Wj+>3jbtH>tOUdQZOOjQehwIQGD06KyiiO%ORlk8ECUvF$qhl?cR8(7j^Ut`- zNf2NVNXFb?p>*&;Oc0XMa&Nk?`M-P~8#>kLJ9QC>V`F}c90kv+p4Oof6;1G9;@xw| z1;OG8B?RK#Ll{T`WI)474AHjvl$X25tEH$kZP4PpFD`F37CAq%JfR4J0Ls6aA%C9T z{o@=W4x%CE?mi&LEyT;?^(De;jW=!R@0?l7PEHeFQ5ugxz3vsrn!ADyTa4!v_(T!u zMI7f>=&%Z26=0&Lul(x3K6h&Bwd(!Ru!OQu_5s@b@O(sI;Un+GMu*t`V1VQ6f~4`D z+!-5VcbH#_zd$g;BN(^LvNN)mj=SK0Hx2Gd5j+wM01DF#_d+iE3mTE~^+?^Klg@K( z;|_6WkT2gJ$16ZU_}6`5h!-y#BWm;N;a8FuEhqlIQ^l_= zEna4>P=JGz=cp9TM`*71P}AZ?x34<6K)wLAXy(}0kUmGgh+Q}r?f>=68|0_<(QW}n zNeA@7qla@MuT8f`Dr_>4Oc zFATiqho!N@4m&6}B#B*5y3@pp*C$D)aPF(0bLa9DF7|BHppGZl% zX@i2Z^-y?(TAhbz0V3<9C0-+OsT1gn2H{^Lc<{HNfK%_XS!j!PC)_~BInBc5zd*K2 z6eEUv%)_E)y}%cZ!f)~XIyZ!7*&(iK@UP>Ggke#Z=@ZTs(=w`T>ZAZ z@qcqg5Z2A|=PNs=4f6r;em^_5vv3soleu!H_ph~MK0Y6T24uk2IjQO0zDVth0ci?6 z8b!LsMKb=w z=te4$bP}b^N<9Orfm#;OQBv9KTL%){~JjqR_Mv9NVxep zfLtRZ=_aU*j)+jzyv#2zogT!jpbvoycg!c&+8Dy4il4vk*TI+3^sED3g8yO;{cJ zyCFtep;Mp+g(O3DbcKa2(1VVZ*S8ju zZTXJeTeQiVR&TaLrpcP#?@Oo&W!a8gyK;k<_U~1y31!vqm3G6WBF%FRzHl$F!vJzy zZyNkv{&DPGchTCU#R#{B(HXqJ44B2SfRIFncY;~3whSzZ7qCcZ5PsZkpsk%6^JiQT zK3w*E-7PVa4@=a;#b95o0T))&n)C$ioMFgzF7%3Mch4e z($6exo*J`PcgWt|mb?PX5Oirb$+Q7lc;Fw!0s4-9>}8lj1)KoW{Vo1-2hYj$FK@% z;Kz^0cN98+jt-?G6rUi+^)a+fb4t+FugOSh%G@o--SAV$xa)ZgaKR%sifJInv9jxh zw~T2UIc{LVhz33@r9cawh$nMQoD_!Oy(237nzfcpRlwep+C^+5=w9^SsqjS@ULL=*iU+Vk;7 z4s{aN{_g-d2Yqwx4_s=@T?k*4bZGe7h#iCuf*#PIFkR&0sPktjOevNb1Um3sWm_zg z78IiZj03D{9!!)KhuEawP3|RFA4D#FMj2-$hKsUSlD5mtAph_H&_+6qnAFjjF0TXf zsy(L?nYh=9J%~zx`xM6jD#eE;RTO`1o@pQ7)r2i*HL{wm>+qX1L}lD94>%5Zfo3tz zTA4VNpYFwkEwy}WnEVb7n1s-nVy z{}M;L=voi_r4IWugT$~;{o?&3t;~$DfpV^E&?tX5u(c%nG$CI*EKRQOJwO_L-Ygzv zEzaHh9$Fo)Zt#FHY6mkR9~EDAw=x-tIN$L;ar+*p4a*)rTp^n|_I*wSb#BA-)|y>; z&sI&$jYkshsUFmRc6@Xk6}fOFfdw&QT5N;q79=($A~tl9bm8H_K9FGD+G!vE=jt_* zZ|&o&A&TjTN1e`5f-bH$x+y8Il)IJKE%`(-168h6a>E?eA9g)A-h_r~UI^@JUZ4l& z2yNNzA;I?k=n_U;VM)Y9Z2=yom|>AHUIMLaz<&4Xk#*z9)J6jqQ&e8bW_&ie_jFf6 zmE}?C;N>y_Dg!1rK=#7Wp{#WTa-{3=djE6=K}A#$*6DDT&19Q{j9Tky$!nPN5OS75 z-2@h8z4wOkr53!>)x<@Ss?qWaHE!z|U%Y>JWX*Ow^i>D>m;o`yv89(XH%jyNYb>W5#X$gG<0GyCm> zIhk;q5G!18vK~+hpH{&d&No}6DX$yN?=#zgW*Nl`et^xGPQDEsc3?-qE;U2!?B^-B z6MdL1rm6ic@i0IiVlsrjJVsleW<|B9Q^FOf`1oztT=}RQZjqs{4@5GNLpQGRQD&Wg zsF%G{9wM5+dx8wAS4nOFA=eoI`h(@vjFMpwpCTE2M@kh{oRs|ot6dX7y+5BxT{a0# zss?;IV3u`UxV0TZr!H)$sOOqg4ODsAu5BY9sD5Z0Z3!gWAVgj6{*LxyK>7lYs+#=OUs&YWWwYhYE#o6#p=lF(#!tJjKIXd>bf$C(4hQY!fO`MBXUI^ zD)CBMk-RPRIp>rcx4ACQM@h2YqVmviGzyR{vzyt5$eUGYkl$?90m96y$TT{t@pkgA zlJYm_2+$On_xe7of|`m1A_l>hC8;0>cY`us&6dZZJPbGNqK8ZqUbPfJF>BRKRoKde zrl~#`p}I*nAJv6C=&vkCKb@s%HzE`m+QWDACl_)^W_xIrGq-MR^x*Dq>QnlZ_t3*v zTMRX8;W|dtP;L1R3{|`+Tzk;1hTh~sWFb%82pL$qFG>o_niZ16z4zJJ-p*UW^h4m-%jIZi|K7%=8qpv#(!=#aL+3bqZW#OIO z*pg|`cnYJi@q6scL&K;|O#RN=BUdYeZn)|Mzm!u_ zz-kTKWM6qL!H&GOtt8nG-0^QkOj(gaS^+0!!J4^Kbx8O^49zS`G*{d6B^9{4f1=s( z(p<#+XHhzE+&?hRz9(bNiQVpdG*uO*=`LY@yxo{LmGmDCE!BY|_=aE3@e%#X&DPbH+!Bq9woB?lVv z8l0s&6>4RBm3|d)i{o8b9dC{Hru65~_qxXCgl&16HKr8j|(G7WGIDEOW_4uaF^j{uwj@|8sH{}9Rk<9!gPS~x%lOh*vkh+1b_AQ! zvBC@D4l?hmE^5$yg!V(5iA9dg(D3WpHa_dYd$g7IfzA-b&==D%%cfe}0Te*wBc zMZfVtjlL`3X)ebDrSKl=ggzc9rF7KOJDU%8wv`a$*xAz6&K66^?L^m1y=>$zWv5s|o)|#YACu`CvnslmBw>`Ln^|>a^)1=chX?|Ez zr>A_+{KC+C=4mj`JQLV6J2jb%?a*0MIxEN(TFlx8Rc5XDVm2_nJ6iK}>E`RwEzqS~Si>Zf zT+YLSgT0fr$bcoj_)72?)?y`^hP6bAPa9pA8nB9sk-xE6)-vt-a_#yG?fS|(u8-%e zRho3QCS9XR*Vd`ejic;ZuX4yj^3bCnU_35;PK|yj;2*g3Ii)ZZbwc+!rSuQfv!4na zrRt31iTt~N=c&M<(*-Mvnjy=bY<(Fl_qt%Y*9Xh}RgL8iOe(QNZ+Ipfg*=AGz@~I3 z*&Ec1Pr@1hwA?n6g<~D1JKhuWKl&&a2E-dw|FK{=FO z#LA+o^KB3@Bf637A8a!{NzQas?~e0XwDpEn?}rk$h!=A4rENL9WbM=G->=huK&Ss; z?P{vyauC1l{`TO|!54^^P}BbQU>mm%Y0nO8&yHx%j@CRekX|GpPF|%I%A>samR#PR zUEs4Hhfr>klJY-kgEO<*r~G$H>X5;M`)6dmn>-|QaB}*<)PCv715#5v_vq5IOONFA zw72vjz_Cl9ifD(*MP#GPBZCl)1kXuL^bGuV6HFU`A%v;3275Xg4Y)CB0u} zR>rSjHZ80F;C?dN%wNIWkc_m9w5+s#>1o;h-$9$vDJg^dXAVivVks$E?+?Pjho<+> z@MQfxEz>~x*T_J>^Z^6k?w8qLdXt&<{-E^!aqp*Q_Iv03w2UsPg9efR2fyFBU3i?e zlgm#NQ543{xp!_`>N9bpuBcrJX@><8;zmN)xNzZLK*~_dXql2e6lTMKELa#rOx&w+ z<;Jb9d_^}z5D^g(i|Fk8CFw#pTZ(`DlshFC6(;iRmvL z`FM%xuN?VAY3UH01a{5n>+bDhbtZb)Yk;GeJMd$-n1q{!)Ix^AshkK&<1O6lwIdE9 zW^oFFwadkn(|IbzxmF=J2lPR&TxY!;_M+!tbYW8?ab5pz!W@}}-A&VpDF zcEh~WV9XY1fGNw(x>eKGK~TXTAa+}a(BW)-PP2kce*@S-$AT4a0S}w#<5lkfZyI|| zEW;JFxE9gA(3WQ*8%cj}+eldP!M5@9ss%vV#2sY9*G(K9Jr9vyg&TNTIz;B4`_gJ;Fyefl>S{<{mmx&@vUhMxg3B0&F<5AP$yf~jTtPdk-k#VOQJO@H@B$qxO`kYrD|$JedCEpQjIj!%hC3>L^3U_ni9`6N9DNMl!&w{ZEfKe zkkTz`>a?6mCFOWRiNxiYqJ*l$N5a)soApa>udQjUsSahdGg{)D7K*D{ractXGP2Va z4zGXQ1f{Yvx7wtpQ}WrUl1?PUX+;6;KSwo1QmWFJN+(q zLVu{WT5D}nJq9X-2%h4+eY^Q(Dn53T+4<)CX5P%(MF2qfd!45HrT|!!cnFZqtpHq& zG8D?-%2=0-tx?xmjFt zX+;UGBd|4MA=R=^x3(zKI9#X44A36~Jt$1@cS_{FCvxZK5}R$QaK(NigktN8-L^yi zLDAR!8eXurB1Awx(mOfPKPvi0PdfVqP;TzwUoxMS%w}(yFVtfEA03Eq0eeJkn8i#T zHTD(Yc8mB}9PT1g3;>I7caXjT+-oNt>qVkeI~}ZDfCufYlf79mgiyt8h~MRmj2(!- z<(!OFhz$w!5se(15PQf%>u}be56cEFOfP0qv;>wZbDcM6cCr4S!*yX~99P zff}-dS+9_W)=q#c-vNKSdL2W!?@b##jY#J%MJvHz4LK$7zbX~lj{G3-XDFNRE~UD{ zRjgXeh}2w0KM}5~SVmUEe(4!#dN_58sn$_8uJkC8=8f$&71>f}-e6H8^7CVwwrx12 zNyD1RXDy?U&nME!6Unq;6?5{*m^w9Pj-?ZhebJt{Y$vRu?Mx*KwqvNUWU_S??Y!lj z8#nSJBR-ldmP%t z$148;u4{H?c$~dj`F~VJwy#sSD`Zc|4hG02%o}WmB!b}be2O|h&ie!2Px(O1Xf$*f z(orVPjLn*`hoBHpF{nrcSw<0Xg8;J2E)WnS34yRQBoHE-z&mxTs=IoHB%d)ZeQwn` z-}9|=&ONv4b^{>ZH<)^Ln993!t{t*cmw z6H0M3g}aCsSMfAK2-aW%P1LRumHXZRTp&p#nWR7}mt9$@H0@Lj!l$p>%1Na`hEPsd zLIxyr6d-R=!^R?dMMg!(#Ky%ZB=$~9PDxEm&w#gD0BV=szi(`&gc$oVLWGzHh*9fu zRaZ_-s(0aE7EX5pp$9RBfB|j8|I+JdCS-Kt&@?LoqDt zNpK@#aDcgaB$Ne&u+aXDABESWUG{pcCti;WuMJ)HdZH&@PYSO;Sr|3G7&eig<&*_L zTvNA*amoU4!%xKg25$}HX93tK6Ym2^~_j^Y8ZRxt-vpw>APWWx@y5I9X@_Rw}z1VfXmwM#aE&N`#KoPpZcdeIw%>@!p|4j#qqn}mL7S&l*rH{2j}eT;B@2nPA7qlV`CmT-N$%LU_x zW@3KHB+MNF^IJDy&JuG~goL>(VD5DT<~%W%$%PsB1&j;24s(f^@5}TU6TyO+1l=y` z$sme)5||s}@p_6toZ1aydbFnrn2K(|=+UkeFw?sMqepv&fSK9DXwMQbv%4SdIWpR_ z!CclGujdNHsvbsro`9+DVYKH9n74Zv?RNys0tos14%OiohBA4m4qqeuF6v>H7Ymqo zyH5YT9?^ea_+8Td>iR%d*Ag%%r{Q(2KwKJ(R)j>n5&1;mLOu*-!9rN*>-b1`{g`9a zR|j85P_N5ESv-u_PlVUy!I(2z2jr0Ugt{I{1Kocb)YJ`iKpQdyiC}g*i4}sx%AiQ$ ze18_o;$gh55?)u!@PW_D*8n-`S$WWnc=lSrM{~V+G~;^L06pASc)k|dKj6`fJqNP? z%}rdwB$9p(q*3}1R=ELII%nexL3o{9v`#pRehH-6OL!aY6Kd_odI7T`D9lD6ZC;qI zG(9BDR|4j12;AC4({F&>@xpAODIsCL6)@igh1mpThRp-BISkBZ0aI@!vnoqJ;ewY75EYdttskn0f4j&36d%ox#lGgn1*432DAd znC}i|9xu!ftHlQ~-y_WThFSZbFy=o9^L=5~9?pEfFh3B6{JJoqJ1EQ#b<_N?Fh3H; zd~F!>ABFkRVCD(Jd{r3pW5WD+81E}-$b*K_Ak0s6&zxkR1aZcgNU<#?(w~4V^4>0W zbYwtRN+g74pR#&cmDS67)1QGX(T)6HETN9&s}a2CnI!rPkWY21;Q>}j7R3!X=!SJ* zUVemv8%{#@ra=adoB(s`AR7wD!Q7F})JOyhN5QPf?xjYel@No%5ioZRj76MA$X@Y> zI5icI!XYrH4@^)ai6|TZbB~#V!U8aVNKQrJT`*^+W}whW%vrX+D0~g(oy<%WHh{S< za{vnaP{+(dVJ})`4Mt%%n6tBns8!@B7bBD~Qt3Ragi$DL2XpR#=TX=O=E43ips*9n z{R3W9F8-`syo$miFuzZE4TZN6Fu53oYA`n?jYXjf%p1KOYL8Qb!b*%-pK&NG2XjkC zDGD>eY)o{bFdfW=iDf8MpwoocQJ9KhNq9qTz{^o^f!QASCJOg(2N3rU6n?|wee6F` zxQ&~@*ng?B(OW3A<3lUT#Z%Zp%oWiSx%4YBYhxyHX(^aT(nO1{(S+>Aa zO^ZEJ9hVLeGnt$P7D3KgyF(zYz~4Gw!i#pSNO}&B-o!92@W;8W4I+Tp$VF6zb}%lY zg3%7Pi)dnN=Ng2a2AJYyO>7wKjIP}0@$tO0D@&^Cy+C|#D6!l+!4aSpA5eq$`wn9i!9gtaL~Slhgp)>MzH z^mfu@dKJhj*{x#u3m99HXjhS#w}9=>^H~E9;tqFu9zxs%w$U@m?npkqEPvB!-PJwB`-bM8EbVi;x$?yo?#tNu zC@>ebMo%9T$Z`(yP_~0a}ahOas4hdFhrU;`t-N+4-DXSmW#vg#drV5Sv zW778&%8m?U)5K`4^j#q?YXrQjC%anaPyp2B*fz1>e zF6Da$We0|{SzahMTZc^&IhsXT#pAx!hocpgEgr5gtdVJy&Ez99DZ4t{PkSO|ONOb{ zS|cvX=JJuLlywgCq;8H}gJ0@|GFO-@1J&x2x+iRr3Np z?F;pVGAr#hg5}y~!|MO}- zz9Kg)rtIz$mcmk@P!&?)Ls>?l6lB@Xr>u6Qn&z?mNZ8#}c9sI}p(tw=z#mI$En2je zg^gD7Lq$tEvI4^+_KEOQ*&>O2Oxcf5<3^3L8Bd8IEtfH9@ugZz*;keZtCLN}Phlx# zCxybNGDv<3A5wPbDU}MgLbgeD>r^8HRQd?Z?`cb8r7S;w56XzheVkX@V$YZLnJhMi zwvw`Q&$!_eY-0Z{9Ile3;^%KUWsQ~wTP;)Mr%*@PeW9>Mrs%w{!l$^pXFN4_n%@`v ztMn#*Ng6!*qu7LO*f=5jppX9^00}T7WErWQ& z{<$Tj8ul+NARDBz7@fvo_LP1e)U zB(aa$zfugoRt&yT48DE1rA_9*FZcmRAhvZs9K0|8 z;J!y9q3HCof2ZhdQgk*eI`t2rBe0OucECQS1C#PC6mGd9J0SyiWhq<-eIZGm$XcC9 zw0)~0vP}{BUJ=>ewYc~I#~`+P38kE8`RLepD9<~U=UvM4?gx8D7cu~!(`0V|_Q(MA z!2qOkg5`TD{2gxs&$+|W=k~FBRMzR_Yurl1>pW%(-{@^eXgzQe& z+QJI9YO5%p6#EGk)srf!KdGpm3L91C*X_KZsrH{0XrluCMS-5~LJLjjr*>-}n9(Wx zshPj2?~dHChO!&~(*dud-!Rj!;aWW$kvEWWid#naW=i))|U74CU-yYxHzS|(UC<0GWczUK<>#!< zJJ1tpv3!DugGPEBqM*Fhqad=S6rxa}0pbB~su(Nq%Hv~!9{oCp%vUTS*BIt2&L>}b zFV3)^SH1Xx>ctmTFTT`;2LCttqenN)rEJ}Z4wwV{*%f-e3gnk3&Grj(v7vEWV^amhT2LC!M z&u6#bqmzZOs3~_{+7v0j9JuX7?bv3F=RS1nm%(V6W53}TIm~k&D`l*Yc)tW&U-fxN z4YprVNp4d~ZdXaZ`hX-0EU}Z0AnR?{Ne&{E|Ff zxq?Lh@U~i;ElF;K{iY&!OOd;+$lZA$xmK|e3xz(?{+mL-tI+Q$^!pD?UaNKtI>2rd z-r4T~Yj}*5y9}}JLAdTrv2N@oBXlMgbSBT*CmNE;BttTpY)B?kj0Z8f;9+9(0Vd^B zC6PZMk$!^6v-*L^?Nzo#6wdM&#l{xklkK>yAm@r|!~a|{-w1xL*lW=M3pZKEWgOQKzh&@Lz}ph{zYv$7 zZ}5Qgra-V+2q`*(jr?Fu8T;9W6Qx1!vy^@1eP$9V_5 zQ2vf||3`E`fV)Si!5lxh2`OJ74IV{KhE93G~zwI&_6+_Zh1}TUVXa2bzmL1l$yXUfaoG|8PW*L zphbU_EegD0Gi6%O>UxW{w3;HV2H%%}RfgDFQ}gr3m6R4ai%J}W^8Yu#pltm3LWlF! z+_KW~xy2;~qlC3ra`7G`7f*Q!s8ENfR-C`f04$B1dWAcxV3T zvI(T*cOX_!;wW{FFDr2VXA@jF!I{f*HM*F?i+cKh<&z)@c$~ddOHWfl6h3F>P9OLP zi3?rQG%<1wy%-*0A<_5~^al_q1RHB1v_;}VE{LW}!pfMKpnEsQtxuvZOz{1FA|el= zD77fQ@Z6a@P@pZwg_Ab-+?n|vbIzHI0D!P|?56)#FMvUd=mBK?!vH;HjPWz|VDB(8 zrC?Wb6l&Vgfk1QuqU>he5ZL`5aq#ToBEP}__%QJR1nvMIwC&TWYwW5`ql}ib2<$Gw zkmP3R@1GF{Zp+f^UZ4j9pEl;__Y}+h{45UuI+s{3@yh%xWagowc_e8DR?=_@KXzN} zSpyF|E(E~*fSkdfD9xvm;?znCqp;<`vqAt?^o&yTxzc=5M6+PB3I0;SU*$WsQ1B_? zDF}b9;BWH5JqkWq1pZdRNAkhF>%-qE_-GOH&n5xpazVj0Aiosbf;f#IAox=-n8q;(3<*xbC{sI&(!B0&FR0TjfVL} zJIHDW^V-4Jb&jUENaY4nd*u?t(QkkYwl9mDa2B2918HUG3gj4>$~EFM7qpS@+Q<)W zndktLyyq62{NTQiJr&v*VTH7 z*@Lb^FS-iH(N*YMUt!rdf_Xv$fluQL2&8zLbd`ux1&`|Wr7E06RfWw|1)-{dF3>54 zV_T@+zv;;P)AGhCu)HEDSEZ)p^Rx;jUMccxSQL8l^uBZ;xgsQD*q{(@+ zy6S2hYO5=fu|u)8Be9BTB$n)|XpJQ;wJj7{{zYQpXtKG*3h&(Mt~NyyaVwsPHgvXx z6Kx%#gIcsE_8&weiI$E=C2J%OM&i7op=;COaJ;eka3mHAx3|L|ex4d@c$|%qO=}ZD z7{~wrnH{b4EPAXgf?Bd0Ay$w55WRg+s zAU4=d>|apEHr#d7uhV44O}JC|Lhb%)n^-hm?SS{wbOc3_YIo4Iy;ghur;NK$ZPDu% z)xPz$e*AI@_YTx^k#P^|TcJ8AM*GQ32l5%YZ02&VJB5t{lYwsZo^@>$f7t?oxYxF%!hUFYWaFO z@{{_4AJu~C$e#;>QpLOGRs1NNF_z!FF;ShUl#=*XT)PvOqA*UHrMWoq3z_Hjzc3D> zAOjud1PX7jBt-(ZioQ+dWOcOyA{@%=PTPTSp z8pB0GQx7JjT~Hu+G3eQN_O>Y%v2iVtwvl*Y0izr|5HAuE6V!uO&m8=T(IX%tiXeXi zdLZFYd+;K@*=b8#TH|Cl`)0nM_vXzG0U#V6XZT$+fENlkL1KIc7;Y9qPB+0lZ7f=F zTO}EK*&tE@I}HhG(9jmq)RX;v`APtChSfl57IMm+7$2k8E{|qLa|AKRBH{w}`1QH+ zI5p;Y+712)1PayonjR2>*za6+-3!BD`59`VLH$irT7)IMr5(N{VgZd8z9BA(iwhJVLZf zn+Q)D0=u+|&@(A{WgX#dY4FN2LMy`LUQJ)$}mZ6Q2o z)EA&&0czl29-%9MxdXcEx&h?tQupRZVTrUglXqbLGIayj6-(Wl4Rs(K$hSlz>M(BU z&hOF>nD>2I5?S6}EzrpFb{QO1V0Q&*dSau9U#h?rrBVHTeAi!+s@8SS!Z*yf_<-XP z@?%5wcDkupYFhvDMY5my#cUTUzyRZo>c(-lcSQFT=V%!RcYcC?yMY|}Y0o=jWT}pK z$YL+MQQoPvzW2op^%d#Mz#!v=^aakv3QmKUE{OM>ykyloF7k5oSsC`_%*~{gNex&| ze>~<`eermtJ=zg%x12H+mg)DrdBAy;RRn)Ibz|Z>GaG@nSS493gw~Kz8c^h&TB|Oqyj`v9T6H zw~>$-suHsol@LwT6MEurFsK+K@nA$ml%KNvP(T-UVckR%6MQo*Y!UG2q)q$YeBbxJ znKvy00K&m>iteliAmk(mWB}Ld7@~srGVEPJ9DKC1!=KX(f2#oXW55S}|6%S08}Vt> z(R76vMY?gA39PML1pCc6u*FDP=AsV@o`{}eSaW_EyQQ<0X(egH2kGg zQ5NG9`#2u}u0}X7;V=?an%u|w2+)Unw5P202-YXb>c6g7d>4G?0GKQEF~kCnL;O6W z=LE$2k<-g0#79xzTeFw~?DKsc!s4VTrd2ApwoQG&XY3rxEt&!`#){G-ikSeAD{G+U zra>$*F&kv_+bS#Og7CFc`2k6pn-6j$A>?zkwrX(!=RpiB|MWfwVn{BNsc06&0}f&# z&=?9e@QBS)i2%aYv(&t7rj)uaWD}&sLzd97>rnj+RHOW#9F|9}+2J>5DILUm)x^(r+)fY{h|g!P;9 zW4u4mnX7(^8Y=?)4i9*YByZD3s6(pU$3CRBI=S=Ml2&MQ)frXAchB>ph{LENYgbux680Q z(ka_$Pp1=&$);qZVOy;-GP=(;o6U_0&$;AuTyYY%<#^qRcE>XUSTb3?EGKPyZ5boo z&=AhHT3Od{v$p9umSbhDlx_87+L9L`W||kQE;n0ans&;~>ZaM1aXmZh{0A>7yS<|| zehx>W`XnbpZ$S*C)4dsNWWE>!NMT8* z<}aP1vKSiwgYypHT7WYQ2a&ka#2>8p0A098dm$@MT6#bHoK`SfAQ@pl`RO%+=9*x`H;n6ZP_mF%mUD$3HtjB&?A$lOcl)o-8X@j z`~~_NUv=1{%1lGO%zX>$np*2CP%m*vDp~@%K|ssCpAD_G;!AS~cX7%%A(N{?F_OD3 zhb!DfqMX0rAUubwKn2QUnOp;X*O2YQAuL+1EG+|#vZXc6m|WME@_rZBmB3Tuj7+Wv zEioI+9Oi*G%4oy46olt+9jLoJkCw8u>09~-q~P~-<4_3Ktx&Glfac49wssw1by402 zeZ6g&(rsXhAAH7yJ}nh2d7B%dj*F#_OX)JApTV_N=>KjDsLwj!z6uOR%>X?yc6X!7 zOal$b%p5y6OW3R~H>b9{@e;9HT0PFb?ieGI_X+5xQ9!F>8}L`!Dk5PXk4RPlv4En$ zn{|W_Kl%rt>e+^9LtSmkz2vrD zacdphORaZ?cu3x`WT+l@P^=0qf3Q{&Gz*-0wOu=D#~iyO(Hy=A<XPg`eQKKOs2?{x94xO+?*09JX zAR?Oxiim>1Kv)GdY%2RID2okAXhJ|mzFS*&_3|1*&e%uHeO15vyT7`(s$RX<4TKON zp`UvESJ<79o)-4EAwX;P5K@^%skM3wA?{95$K#1R-=ePBJNPBL9*vhSU=qe4LmE*u z+J)UQ;Lr)N_Y!Nq+dZYaGOgB)pDgTd0z&s83t;-{@n5^8^a03h!pq(S|4IoV3q^wdP zN3@9A2+dKQLZhB?@~|8{%&4bj)H5xP`dw?Ho|RG0wK(ect%>@BjCx*h%nam+k?U>= zWg!$-^`2&35Ck4LPwc7Dczsb4UJ6%sqK5G$>lHeTADuj04j$$(JTmHK=j5HH(_Ons zXxJ-GF3icrj9V|`Hnco$W2@p`m2tf-k9)0Eahqh^>n)Gl+^V=YWZavAWOg7)tcrUz zCOXVKRTI_vNzK!n#9o(x*FQ_fU&770IKfzF9fVLu`<9bOl!J#kj$dWe+bxdjhE_za z1QE50bJR?!27@A=jsUX3rEjv~vzR>+=mO!{8$CQQ0_enK8G1iF90W&%5qgviJsMg% zVLWh!*b`zE%@|2jeGfE^#2yu=Xx@}GWAB0H8dhG@jFU9u?}4V7*i9-w)&xm25$<_X zPXalqCxSgG4X{}Ul z{kCMB)5>hml{E8OneBHZ&HPqo`&~)1Al!aKBJS|-Il0``4!=;wUDV1dFP1b*S}uQS ztK`2g<1V}R+4X^%UCY2eb{}3Zmy9c%Hh#|79P@bSKt6Qxh<5NW$MKPjx{`C$P6428tBRgq=;~Srijm^h&5rEBE??o z$kzke2@Id{mI)(?{lhywL{W;5te2rkduCzEwr5@%`Qo^JIpaFiGB&>lAmTX&2Xgo zO48JYrP%}Irk`e01e(2)W}m7P7-dSP`+?l{)2yN~PA@vF1Cr+JaD_^g?pLVGQN=gX z{o8QvDR*{1DBTZ*b5E7-2ekMw?uVuOkqF{3$}H`^pIJ-%0ng;oQ@t`-%we=cN1h5u$%U9iLjPAEf*Fdvhn*7t{kwCB;21 zon8b|&5Rd`Jwmp)bV6wMC9yHqh>bCW{s?4(=@k6-5iuf`$9OnuLoWlFX?k@H@oFO^ zeh2^_xB%H_J5m1n1ngy<0Uk z-2shbV6XgL78*yuZhW{C8i&AM_3&e8Yy*3LR<365sk?fk@h#Zi>^^+Y2YYq)-_Y0s z_PDHPwefc}YQf&#;W;!GfjuYlc{JvOeWL9@(3l7I^tS&*V-DDR+q|GpMgKx$4cPM@ zEI{KEuxCBc4~-dMf0j{*##=b9^!{i}1$$|F5gL=hK9lyMKC&01F&^xlsjr|h7VOH@ zSJ9{jdtFKi8lzEj@&NrbRf@(h_>7l05RKdT@SHRVjViEjB)x{l3b0qSAB;vF*o!+3 zLE}2!&Ej82!;80oxHr&fAohXSp=ewt_R*MO`sG7~_WCy(C-LOu8qQ0JhgRkWw9XNG zZd4`ccWPDKI!5gE)(CDLCiZqZl3QPZJ<}fLvqp34TVn5pF+QuBTL*~!+<4ISs_|L# zxwV(rIQ7{TfRS!@3{mqIPYJAEG*vfvUAz?^S%6K=!yd{SWX}!W18T}408h$`C7@9P zmR?h?4Zv#i*j3qDJ6E(auL9vEsk270G~Rg4)WKJ@h4}4v=AIY$tD=jzBCZ<><$QZRu?w zbJP};z+ch0(&Qc#BljTx*HO$(jj{1l9tOFE#rgvY`LIeVa}`+BDnA2ZBTTxWZ@t(^ z>3^F0yVMF$`;3~wYF-*sDTZ@v?QPiakLIlr$S@FWxxOj6KPW zoh)M4DE(IrCl5@btiF3ao-7bCSt6=+>>A3ddax;KpjTz=sY;-vxkhq%<22b=t1xew z(NkoJr%`sY2a)zv%69d@u2gX~g|c-$2%E0Ps5oZG%NiNyIO)zCXPU&Rl57TLA3u(l zY2s=+WeXlBY?cz#D9L6k?nW`+k6L2gzipDG$#p-QvR@x(bJUPcxCh>*Z0Zww-OrVf z8_p0UO&5}8VTw`GJT;daq@;IL9vcL~I_nYMINy|%F4z4#ludq;y{jadaJ+d@w)jcC zs23iI(G{Uu+I6Ll$l! zWow@bUG(M$Q4=Vu>#irGXc7 z3|QhC%mGVPrmhD9swn%as{p*O)?fgDEi)J42j-yLh()+uO@a+ndVN6IwWrw%)9XXi zi-u%`eWcd0rdUSV`KLXwoU$>0^nq5Y39r??k9k4RN0jZBAoj6DtPRw^$_#G#>-UM$ zjcC%YmOjDn!Rx@D_K^0hhqgTKY9&syenQ!%p6pY#v2e+FaH3%zGCi;d=!TA*hQGQ= z3w`6UCZb!kgPUf_)XonYgm~+Tpl`LqL4F1gsj-gg%dcBgk zk+Kne*k)5zlp$%0gwI@Wj>rQWC_CC)0Jf@mr2mK z0r0?j%C<@39ZK2;BU@iY%vRgG%9aWw62mjLQ>|kyWCz|({)7(-xT^ZdB<)f;2$H&m zvgywVz;1O{4+3nZY>fnbsge`~*hbmmXLKppR}$2qm(FTbfS~O-{r)5nb!z(YHK;P8 z9uE9yp`H(GkD6@Fimi^at$*>rPReHeSq9vzrb=^Qyj_&77YMdbl_&_Xo3i5)uwRuZ z2=FD2?$5qCcABpX{@a{0d^1CXzd)SG%wJcuZ2UZmGg}-+F3c@3M13XKS&|33GT!5J3kBJ69y4~sQhC^B(`!6Y2w40 z_=qMx8j)BefNT_JWVgF(uwt*;O3(1WtG5^_kS{dU!PX0|oMT$TaV_D5mT>a!#x{Zz zKNCcZPd+ZOAbz>6K5*M-5hpoOIj6Lo(^}3ME$6#C$dOz|zRT6?RS#5B_E}di{0$=* zNek}H2Uyk|}o0y!7I`SnQ`9~eubLYqy!bn=XRW#in zJR$!wg^%1RGHdZcD`&N-Gco6imQk-|G-w%(ElWTEaT0Rh)wB)pO3t~e<#@H6Yg$fI zE99ggw~%uqoSf|-ew}axAALR02<%KAsklzzraPty+T&i(j#Kj;PY@-U6TjMs1;je2{UqT=;7Yf!~IDQ_veViWkDOFpR`TRFPik0CjC{D z-fqDz+m65S5l6*L{#6k8dtTGuae81sW#9bO3(sNP2;I-)SbeqW9n$>|LGZi}@xLL6 zeS~e#Jqg>V8!ayb?~NLX;pVf=GoLfIwp@%Y&KkEVL5r_wGlKvCGPz zPT_+KWetDvLa72dBL;>}qF@dLsl!$*u0Up;;V%u13g-pt^1^HRBQ3eP$Kfg-WNv!B zg0X`|C0+}c>aQqUfboYoR6=#X?obKU{e~cTJzOOeVkm+lR6?PKAuwQ}-H7QGFp6P3 zMRhQ!Vw45Lnjp*f3@Zmr@M)pWIs~y$G1>=^wb6iB1RRDWz$Fwf60O5^2?-apO{ntV zUfxWxJc$A2F*n}KoH3T#c&jb7@xE!Pjd!ed_q+LP>X*14_?WWEDCyt)j^f-s9Ag_* z3hH%(AQ)~`DF{&s92HuocAIhEQEv&n(4GU0L*HpS9=d{hLE(i8kv93MQ&;{Z#;Gg^ zHOH%F%zA<{u|P>d1*(FBgm1hnDXagZH-ua5jQlZ?Z^9Ph4-uEflZtU_%e8S6z7I4! zg^pCd&(>kgr3SGx}1>R$@U$V|P}VL%OfqIHlJiS!R=XFPo?e%k`!x z8x^M!@>6V>L%d=eBZ7sV;#GGw6o1$R<>pM&;@{HZr)%*uB8unFYKI-gkD_dOH!svc#mrFgTzM`k zG-X{Bhgl`7XU;4wYqpm4ww5*Ljyb(3A0frkF^NgVTqPzO#XKOz^fZsu9zQr|o|f>A zmM~vSc=ygbs;-S@zHBfr(9G{?=7pMh(H(Lwm}~r1?<0Se;>%obW9u+xMgXRdT)(|d zc?KY7v6i<)%Ui1Dy&qAYOUmmbR!s&WllF*TECFfPKpFVIn8jNfh+axan}UKt1Ivob ziwBlIT=0Jdg+m4pE-Ed5C2vUC;JlK7g?&r%UMei?+%30zZnwOW;(q)pZ|D;}3VL+w zJf!s1(t&T3b}lI{9Wu1@OQl2dBrG@A|6g%wVabsGMR|pfJ*Im56_=Ogy5s^3uS5 zeanh4oK;ZJFQ%ZNG`CBB_ilJmivP+I@GqwP#p2T9vX|rKMOk^@!R1K>1w|!A1Ih~e z6}>oca1kpgC@CsM_n`%a0|yOrmA_nE7U!RfNHr8Y%ZdjKDk&=a4aPO36cv{j_bn-| zDC&=cOB_&G*0=wF;?ms0L4!zJnd7IP!X;8%T2?f;yrA!pq2&JowS@30c$~de-H#Jh z6hG(Qxt(?q-Q{T?chba2$#x2^gg1$Qfyw_FMkf;JrSu2@KT&vr_RbpaoeUx3xzHdXzL(i0vk~Vq;;5aOGIou zd=;_!&dLh^m;vx}Bmv-j3B2lgrz*4Tj7Qf9rCSK>D*_@pS)zYzQCK+KqQ{*;HwIDT zc?17ivwYK=fs6m3HGfnT zZ>^=U!Yw;Lg#lRK9+l?LTJwUUnDJ&=wM`+E<|58ROmmEA4oiw&3`6h`L{Rk?t$L}~ zU_qy9u+?9~5Ih7CRK2WKYkkHybYT(vHx0ki%R)rM7epi!epSQgdckcCpYH?zUBj>S zf=AbfU)S*YKIX3p77Aa`@EiXQ4)Hp$cfFaDm1(xKg)z1WaFMOsW{Qb(=vQZ-Dc@%_*1%XE|b-H#XHYApUkVYTm>sxB|`x zVt|74;8bytf=l2$;#QECuU*2IWraLMYjQd$;GZHMkyEi*Pk_(ZM3!g)Zl=lMiQ6jJ zz!P^=@CZ-+3Fx+PBR18E+CX*wHz-y&rhJ4E^Tb_4e9sX7Wr*+hCFY9wG|K)w@5xTb zO~2ckywfKp*qdD1tCd#bfwAz=SXeO@JnY|_<_a`e@=uOB-lRz-`ax0%xa`ahx7r`e znw-|tvu&$gWJ8k7WZll}rqr~u`zYD9gQiB-R;G@qvd5@wh{_14#6{OQEd<9YnmCI7 zI2}WOoQ|VEPA{!9PQII?lK7bpV##gJ^|s?+P2z-6t{CN)jq)q&D>vo-rv@VcRT1cK zj=lGZ&JQGBH43j8h1ZS38~>~~?HeKSrUC-5V-1{JRs$_x1U^IZptiE#7`!-xc-M=z za1fVJNT#MdZxoOwQQ5Zj-aISiV+~=ig4GsAm8F$vKlf~M>yEK)dAD4gbn_FL@w~ey zlNlXLK9wAE^SNE}$(`DMoGHvrtq*?63VlD|*eP!PwzcP~#$#f;RE)*Hw+R4MJqe-Z^# zfraHrBo^6lDk`N@E5=Tgtz$3vaCJuQvCUSqt0U;%JDuB_v-(K z{TC@7SOV@gi$h&&W-%VopH-*)iZe3&=GC+t zRc73v?3Ds{((~+s^V%u6fj@2{xAu0lI9jlya5^l{hIZhGQO%wVBR8`-PVe$VFNh}I zx!%xFR~`4O6}J?a+|}}oGlhJySTaRNa;ChJ=oX8ts+D-0osvCI+&~b9XLjv7iwY4% zqCvu<;?UVCE-2;w02+P)3JwAb%co#Fp~DagiU^%3seq0ublp>sEzue+=(26wwq3hy zYnN@?wr$(CZQHhuU3Kf68yDRj{g5lxLq29k&dmA!WAqXbg^_3vxI*lIQZI+2oLMk+ zdWQBZaGa~Qn5^9L_?W5%0{GqCdPv?Pf&3bQN!WWvmnZcFLaDd8oy--(p# z8TL5x1|NLOdj74n|0&b)qxj}Obc%nVDU8zr=TAF)+@3C>T2(L;1K?HF`cJ`9%3qnN z3~dMsPiPf=CNJPq&&Mz;ftSHFU38pI21rHK4tt8pgkl|}kzdLlcZwWr7?@#q(e8ZI zZ_(aLU|O+C33Ya;-LIBVHXPZx(oy*i<7svSwqXl$&tXe4b;z-_nPt$?w3%fxHyhXo zq1>OHV#X=jVWE~X)qlLb7Q0Ip)9%6Vr`@tWa_AqEeXrz}FT34oY{%sh;gG8kP03Ky zm2B_gr=mxSPpNeTc$O5ydxpz*#4fI;6q7;(iNWZ^jX z{PMFG-c~yt7rY+32qSNykAz+<+{0Pwp?tDjT* zNS!Wo55@EVte(6VBpl_YOE#0d#R4+}#*I-+?cJ|Zgso2{t<nVKN!=5c1~M>BkCp)&vRUO*{oO;@)p=eT~!!QVUKXC31l8Ul|8q8)-% zBdE#kO4yB_HG~a=EzZQ;R%SR*3}4V2k^W#_Q|lHAipW35<4)N%QM|Hv60VW?hkbGi z0bt-`UBRUaq#PJ{$ZwyIc;X(gu%CPWdD=jKixPB&c+J|w*@x38n$tfTrFcEP;o1{t z;pT5JEXAn2zmOj9Kgw}4kQR2OB``dr=t(F=P%z0Cy=c}4z%h^SP($RLc?{JoxfemI zPl;aa@or8)?ILr~VSy7T)+ugg-IVgE5{6zi)ep_C-6tr09{G8fXr_$5uL7WX*>f!k z@-ry9PDXg*TGWS@)Abr9$G>=B(qizzKlBjYwN(_Z|y)0wzH0vtRu z51keO^r$z$;q~TvWf~Bi%OI~!^?Loh#N%_5VDV6E=JMi!VC>;!xi`0yt3Yv!RbWEQ zafvr?YZTq~?kvn1#921h`wj$w?OBaal z1sxfdZ$-zCIbRCxTXPTk<||3QD-XfHbP4o-(xuuBllewW>ehQyO}mPcugnyBmE=fc zy}F{rX6qiy%;XEU%0A%_eEgtQf}C;}d9@hndblY3|3jA)$UXq2QzA4gf9aCRFI}SD z6DhwK_+NAh8$u4_mo5d&IsVcm*nQexx`ZS&`HPl_gye$8`(ge|m-hZcmmVQ_OMdAR z5s&5nqDyf3m43F^PP5LyW2?nC)3X1iORf8#$BVFkm1vx8SC;+l2zC)+D+k-ExqGF! z?|2y+NgBGkHS^++ubDUs`f8x&PQ#;#eAB z;k~$46YquzXSfY(BiM}V8m@J`^n*#mtt`_4NkY26xGj^Rxh9Lp9Z7;cxnuQcL~GO0 z{LLRO}=Q;Z{GP_$w~>axt8p-n9YCgeM^>rn>V)- z##v9gHIn}yxKzTpPq7{d-k=39&^3;4us|~z5#20x#)gC>tODmL2ssbJn@=8#7u~PR zhy*Vx@aLV9A9Ze^;F2tW?2SulO{A|dk?q>^(R=qd*P!V)+T(N7zM~P#4}zSN0JzN| zfKbwnd~k+z=(}@s^NVu&jvYy!8Ki6X_4X*Y(UdP5nMIpO)ZYe252#X#WDep)Wrc;Rso^kVwBq(9Ir_{6~<>@0uz}5t8wu3!r z45-3^BUB)yrS)@@Nl8IHTrO#7Lb^UEL2(x4;UMNO)lz`}W&heo2a= zF2GBIf*3g#@%yxW2${zuFH?p=Bss;(*)&;OcbZ_+{7q5UZs5}}T~k%Uz`QQSo(ky* zI{jQI%H+)y1O?fAem zB>kARd~#ADy(rtxxy`c4RAYLY^|ME6+-j7mXcJ;3uf5u_W?}jb(Dh+W^B=S%C5Ix2 zP;-$UAb2QZc!1ad4j;4)jbQsAEX_9Aa4=*~FlEC+7Q%?s2+kU0CKLt!bRl9p5*V8| zln4>_pqN?;R7p)&$s^s=;i(4>8Y^qUq_n*Iy1dG|9sRqmdv#9BwE*HE0EZO-w5!)7 zpmHnio8cVl+3fYfjCCJ!D+gc=)O&jWp1xALA3Ckf2$hxPn&GDlM5Fpq zLS1+-dH=`(!5YeehzVpr`udw2Hsr+!6W9NHVdHa=8Z$CA1U_Qz356}fcmArSGq@FO zKf0|FUSzQsz3${Hn_snr(YMS%{eeCy-}Eoc9VcK6vi}w_%&D*+zYqaaz|!-91#a#5 z6Ai?pN*tLg`TEn`;VD3STqhbhIy`_TlBFCF9wTpr%r6C0=G>}wW`P^mg*sX6plzy~ z9v%1tp@v5JIO`(vQm^?&ckEg(w=75sbRJirK!Pcr&FfQ@C8Jl9^W}jTkqGPX4>Ac5z7u)K)9PulX z2GVAXFw52j{`*>ugoI|7`=8r`BBDzc+-=ve4n490pVL{iAq#!d4VST$Hr>vkdfZ6c zyNOT}-|@->b9e^VGKzg=)p%>sW>ceerha>>y+f59d9lu{$!pVQVZ5oxV0>dkuW4P@ zlac;76?No_&UP&G^Hn)kp%SnXihNPVMFZxs!@WOO5ua>R1*7*#ZTps1{cZOjO5`$=T~`H@@}H zf(pe#V{-+0*L?ytS~cW07MuIR5Xk}O8sDw0K%V>dm%prld($ZwxBkZ;R=?*m@YQ*&K6Eudy|X50daWc9KZguN>?HahNN-P5sija|sHG3i#nxXLz4qO^MKkT*K_$7z>I<|epc!hb!di#5Z2bR7sP#KvO zGRd%J>`&pa?ojo|?Hfwe;%keox5S|7Xn`{wBY-Ih-ft;&p-uqFA<40**VJ< zzVQa#hOL@>6&*Awx7Yw^5}}S!DOV?gm)QRjq%U>;@iOqFm+7Usn}=A7uoieOcfbE2 zq_`+ea*hfw&a^NOSesyH=qQi1@jx!OG=*O`5ZlCYF~9QXpNJ^$%0XFg3)zJ|=5x?q z*~>9RqN6>dF(At7^FgyL6cBtC!HYr2u~NdFQ=L9}1vY=3kN-Bu;gLS4TiP}UbzzR9 z?2bLxU~?o$2=DFDfrA6%p-!AV{qN3YvFh;iSX-(V-m7Hg!OCQt+V4NjUx}1zj}0~#V z^K4^Tu#>28>ljl(iK-|6XAV55%Jm#v?v93xpTsHu?kW}!&&_Wb1JeVa=M?UMSdzmxRg+G|1!*(m7IMi9iRvkr}NFGMZ4*k-VNmX>RiClNw24;;k@diHi3!!atUc0!p;tLlG z>o^*0)X4NMiVnyzKHGG1O@g~LRGC)b_Os%3 zX>N{%t2mZj(BgH-qnK0^C5Vh$(rLQ&^8FEt;W>Oi7IzKRdArii-e>%AMQp3Af}&5< z3kQ^Xt&UsB6TDBe*X{*xU4~bV^B&zu_=6tZjvox6uNs6Keu-CL!l6)y|FR^6Uamj8 zmqnlZ35jOX8$VQ0GXqf(L1e>-yBm|PRQkdC~I zlMc{UQ*wY5`=eYfy@6cXT7u?|77cW(kUkB#J;2657RP^raSZ-cHSTp|H}r{PLA?x~YIlU>-$Sou=D;tqB5s8JIfPidIW3Gk zr6I}nBE+(E@z=H(HIt^n3hm$d`kPe~E_R5pR+w|?H-b~Q>T(q}0#s+~Ecxe4qFvoy@fX(PUAfP8)kOE^)x%v4%Juq>@YJcfcpyh>=;>bGsj*b_>ul`XnoR+G zDu1>>3x;<6IqQgXc41UTI%9%%y?2Xms|QNdtI#Z(6a81a4#ewD5JD z<}rd@724nCE5N-xwY|<`fWF+U{bkwGi;c!DuvKw4+ah`SD)VBw*)!+&pul9GfPyXICr}uYJUl^D>a!>?O=0F{(_B~H=5tDo-tj`J2V10Is=^4 zxxN2KMw$n-4!WS?;LRJoc9{b|T*6ZwtVxalND@*SSZE8e3Yz8|~P!|79OpQ6siw0_12ta0^4X zPENRbVFC(}gOboi79j?^WLXc`l|Gh!YZFnO?IUiT$HW}e?f0tx4j_}*HKW28YE)(R zmeIg5+2OyMftw8PNFt&!TAV5vq`ScziEM6f@aLXX|2lB8?A=rB7x|Cd<8M0F#%0lh z7DQJ1=<*@;M685RstaK~^iF2>WX?p##N>$s9hw9YD{`5m+x0ZwCA&pO727R_Ni>PVFY6XNSpYU-)A!>P4;q8BmAAKt-n z;6n=TZF7P6gE(%!H4qeu=rm;puCK}F?h z21&}aye>QO2__XhJBT2cRp@TVG)jux?Kh^1Y#*d-S`tkAZ}J6JD^eZ`vkD190^j8c z9;=7}_M6bl%N%ds5Sf*z`-$;jHJ)By0RJchxtBGOX-7r)cdyhvIqe)NwO$>$JkR;l_s^2lh&Iv{ zRPCd-sITZ$H@zh*RpMZ_8`9T6ltXeX4a?Ev9hPpPsN0U!&mxWv)0$rrTQJ>^l`UFH3-+%qmo^xl2uQ#e@n9V&TDt~0De{y zWIy=8KsdVf2Xm5-a~ptEC-nE?=;5oDOIwChQ))emz0fP6GLuxRHWtlX#e=KLv)#u6 z-8E;B#`xJTA@@V(oje;%^mwSSKmM&z@N9lT2H{6BBwlcchC2U;YuWu*@ z3Lm`_!xYLOyX^JwP&1ne0R&IYlPmv{j7 z64o&0=S6w@llWPw!R{Y7QwIDqTwBoP455N;lEJml&-b2wAbJWt(~La zw|2*%NMPq}xxWtZFJ-glfDNsFY)akh{fFvE_|K786uCpHIs$y=5ZD7Vanqo@sT(k@vg|lb0PQ*pw>n=;CB>aRMC4Y8Jmae9P$>=Tg9&v;yPWZKL4)v z9p@nUbwV+E7LpGlCO9Z{7(v}J3{EKZ8hvH|aYFG9;-%%XrRR0Bi?g)YtoR4wM=Q4Q z-4Qa<6NtF)WieloFsC%$hSAw5NZmkA{eUp%8ys*0rBf-3nKfni%|FAQyt< zq^wfAQQRGfaCvxKPS)Lf5QQqv0?Td%COQ_m{&j*73e71&ox?`;)1Q+r4 zvQAG4*VV#KPfjD(^xcp%((5z_k;E0th02U4O=y>OknfQ{IH<_)rAT)zFpIkYymiS9 z5kKaB>c$P`So{$#t^ zNMR|^lDE2OZ=V6uBIs z9Ri9_F+YT0PJQA*Z^a8u6Y3?S6v61K;Xy8vM_zcn^enejU?%LVPvU6SpTK!7q7QYf z3i*r4D$1^-wgwC%#a_w!X1^^WG$T`o-`C0?BV4~1@bFoWr`VC876&cZWBO=Vig{RQh>%l;gkeTx80Vtg22wD1Bb62 zBmL(4+X|;9fLkbCMr{5K@KQ}-3B@Mpg=QP?l)ow%-k&mq{=t?n`c$S2|Jt~K^NATskp>`Ok8c&rK((xD&uBEL_da|_`A!% zNSR(XM3SFYT9npv0=aMqS}MJORM8YPt~rn-CXS#~5-H)ePLNX(UTS`Dp5Zn^+&~*f z-T!x1ZEEP*7U6Qzm-kZ-EbMt}SJ||w)T?S)#nPF%xkH0+xxJ_Z&>(*ZnaRBMEfA3a zQjHS$R*h$?SFovIBqlvw_z~JM!r|dDXY#9es_Gyh;HsS5`;W=6>($ zsR~_JxjN7x0&0W9TJ(O^)Rf?Udb+#$cBkuYcreeG8b)+4V`C_a3EYGacP~MvvB`TUHK8Y{nr~XkBN?4W@y7iX2dqESxd>>mkBA&F1&ij5b;s8+t zgMi#OP$E#(wc<@}%3%?{7027`&TMOLZNq{@Hb;}0ckirE*5B{r+pEw|z6hWcib#ci zRwp=pPY{M)=gTOsRvVB?y7td+-$s>6i(>^THuJtYhg?T)qzo3L- zldatvJ-}ZhJ z2?I!fCB4MC;f7bc}p z<#j`4wm-%o$_E9OSto&qC^9&rziKCsU$*x55L?A0-<{T%__6}8KVm!e*tD-Bv!9|+ zi+ZROeQ$nF&UE-u3Pkj)fOuk`-1$*H1xKpI4rY%U$Q0eL_Fc(*iH>vA0`y<42b;03 z6jUk^*>fa;x1j!v?w4W?bL}>R2De8HHnNy_6a_R#O19Rzoo-a*TS0iCQn%Ju*1+QW zd_PT)v)Rp<=sZ3s%FG>$I^Et*pE^@_uymN3K6RNOceVIzd1|Sjci0~u81f%5<5Q!M zi@u>t($-FqZt-mwBGcVTc4pRUd0WqJSDdF!c{u;KE^ThW)IN%i>)CO~A9f(YTjaI&)sfW>W$Ac(yAgnW)7ddk&QneEQuUV|g*{ROIKPrsTfnwTXuw<_F} zg0S*qfMb%{?Nf_7Tp`W40sGL;t2Lon@kyddU8V^H0LSwWS^6Szuc2_a!U0*K;3y$X z9eisifLf-QovWF+T79^K0jM0y{pTULL~MkgupSC3CwHQCvOoWz#opTi)`T6)dg9#e5(5J#a}=P;FoTw1JVgPcUppw zr%i=${H~J61uAKH2#{M-XtH;XlXT*I&8~42R3VOS3z+$ITs=3!$WZ(Fm&#F5qqa}A zqR8@ONi>Lk(|t_o+S<06Ee4poAN0hsMMb-U^ICvw0cfBf)`yThEs_aOxapoP4LVrBhq`n-z!5QEENU0pg=&_M@s=Xn1OWr6dC_c! zI+|>Z;fPTa#!!%UuJa2O2t7Gc3__U>kLeXIP4~?@3*2#l-tm$2TrJdc7k`H?9C&Ml zbdQ&m;K$To?sBil-o&vl)OpX9bksr9foAgDY{R@Cc1@7BO|1@8sFA;Q;Bx}aY%Ug9 z^M(wS)-BJhi zkI>P?)ju`~KsSDcOuICZqC|<(p#wj($)SNOIJhch0i}{MnyS_t#YfXq_SzY`qAMj1 z9ol`nBBiaLH+ZO3!MJ5AwX?Tq-JIpKWo<3sB$>8m-TI7iQ$b`Saje$n1iUD_`<#_~ zeypsiArOKbvjfKc2ycVpm7u}Dfd)7I-y5c5!BC{E)P$H7sFl<7hVrJYW4#a*Gn$S`dau&I=QmMPO1c$ zB3|l>P=t1-v;HIEQ7-t|d9wu})+jFPc6M~SGowfq_CB&}^7)^2*=}?Xr*hMODp|gJ z)**E8adb!8a)SPhRFES>;f2{^(%j>%#58*)P#!9qvbKp$>}35sIxL|N%f7-%y$6HM zWt0rPx{)1zYbSqrWh-LM(Q#QD`{>W0%Wgj*?sXJ(2MnePb|Fiw{xl0XYZtXLIOV=W z7ep!C!w`8Jr=V7cv-4Ya8w4ZE$T-)ZxKSY5LWy7xu+GbSbNp4o-9oH_6CrM%p=o+8 z&R&_hsQ7agtv;w#U-6rpw5FwkFBN2@&d~N9J~S{tl+z*K*09j6g-!V4=C~v|L{u;C zSVV@kuGUKa#+9VCVi{io%M`IKC8C&Tqaovb|EG!bg@3Fve1&~!W$02oeYSx}_QCCF zdc^S@g_%BW&!HCof41qMVTVG6|8*okjAg3NnZ$y2xK{LDY0hGB_zA$i0M ziHZDxTVV>qb8Yk#_L24yEH}_MX@5kb!Ct)wRptK-J6Cj6>`>=*^t;X29k^?2|EHY( zw)(jn;5Q-uu-D~kmw$)o2;#O0LSE?MfYQ(M8#8#84iIJ5_ho8h#G?wh#@{9dy&2H_I?c8t!nZPb!Dwx0M@;dB$GIB-nmMeLRPQ9ArjH!-*+7N3?iS{>y7@i zgEjOgVz1X?qVSlv>!!@zK-&=zr%m$edTe7ARIeCXT^#^R2c%nY%;19C1{f|M`tK;p z$zC6r(@dJCWM52X1j1Q z`p3~6X41jI*5?BrVcc68O?y&>gVqI4aY#AD9K!~{8ox<YP?i>Uf1M!AV101^`3yR@S(RJXa_p%5$$UlbMM~67a$z>A*XWonV zXrA`FtPj2>LKlzn9MK?W#tBj?JrJrvPM5-RvFNI%3?ov-ib6wYKAQEiKennCb%LBb z^s?`_s+e_yoKy6&t*I1?@Go)bV^8X4P^%tuxK|F)!<~EdwC}d+Q@X^fb|F@R^*A<$ z-e?_^foKvUw}k3UTTQQrf$YL1lq~_>{I3{->X#;oCkBP#54HL`rkYfHuh2tC0ecel zX@EZsa4hN3{iypq6PdHSu9Ito=^Vu&*F`^b7PLQpKW%=V7Ju%)&R3&3S$???<$4as z4tQ6O|3hu>6HX}oow5YG{+q#^P*tUKZ4=ygBVd%hTePGAAPkXA{;_F+Jge z=<}~eXj|b7=+1_H8BvSpr2+7qw^XRI1O|C=wiw^30_-d^q<*;z(?-%7steV0v52|p z!#nZsuFw{HVF13;w&t!6E!V>jyPm=$3)G%Jfn`il+qEXLjXjq=w13cKnE0{!yTtR3=p<%O7JoJ_-3K> zA>@|Vi=I9X(u~uGZJ{ip@hXH;Z)ig0 z-+?V4)2QGuLgS__3!cj@t}NCS!8Vp04o%#d_mzI719wAQ5M9eyt}K56eOK@qAw5%9 zjZkQh1FdkQT%fIgZ2Nj$&PaCGn;`TP#cE`q31&KzhU0XF z)#>k=m6@FDYSH6pblv|Fyr%OWb7$P|=aDD@RWdwK!>L3b<<`YwodMd1CL4&bxMgI6(G2kkXM(N<*j zsjMDY>FoMIHvltd!LG*@3Fu7VohxefW%-1muTh*{!Re_i@q<`>sNHRpv-{rd8fOuB zUvwgHTY-H?J7fu5f{Hn%#*{`2q9vRwGLP1M_uUYD%9J3Vh-%E;W`6|Lrz)Qq^!QNg0)v(ChM^@mB)huU#&CTK zox>QphAKH!ZCe}>M}u`a8Bz{1j^x|a^IoI#+ZfVu^C)j*;K+?ohVRF#TKx`&jd<1G z+U1*dB&UnrSjPRmBAO-inQ`c=BxT$^q6fVQVJ4JwMwGS|!O71AWtR#Y{ys1Zsa13_8n^y!YS-FH!m` z;MaPzFFDgK{xFsQyM=Fh4rFo}WzQjI>tZKyashNAUv-I(#vq4)A`LXpn`vO|3x1-Q z#o+gf9{GJ<;fps+3T)Ryr{_QO#+7n59YZ(H-r}}8+Wka-=>aU_s8@qNb1?dH1$YJyH7D97R;lHuuU2cK!iQ_ARRCv`PG*^ zv}R(IDdKY1Sr2j88+edn@>nRZDuObFG3k~C8KH<@z zxk~7teVgd-&=H#NQe=Z_?ErS0tgVZ^arJ6sLyWu_M8a95_0`{>v^fBFHJNmIOm zLd4jR38(%@-q(q^mi+#9AQ*L~K? zRXnKh=D8f}Z?D%L(3_ulduRc#ub#E=7wx zVBpuA>#>9V?m{)wu1sGguS!3v0OzJW@~hTQW9H z#Q^@wI$s6-TQz-ryTKSkeKGfArWjw!3Xxree|bXmYGq-OH4&K}NfQ7#+`E%Sku{iiP{7cdqOb!U0h^Nn!Sm}Dt1$ungM z4Hrd=J}q^`#k}s42KcJ$W+|>3WehJPSoiiggFSTeb>z#?GwGlgi>YhoQ8)XgpgtQ0 zdJ5`l+2rcEmv$`ywvtf^Vt!^M2ibgW^pN$wrW9i}FX45RCTggSlO@-qOG2RoYtdP` zd&ZM%z%;>dgT0mXcNN!EWd2mg1dKSBtJG-{?y8QtqBu-DR!MQ0N#E4~RjcH^qMZFR zsmimOh&s;u;^G+I7&JYi>-(fZ?w7+KOMm3bf#{K?2jVRksGo4Se`%BqSF#~fS? zF(L6uOIcy2B;+KdWF-FQy(9Tmq?^0MC&BB;^pni_)tk=Cyuj?pcmA$#B3r;9B@XeE znvVLnUccmWi%j0!p8cXdro|LFZS=BEoArSvrIy+ zZ$j?v*zAtR54bmH`g!{K`nfRk0zd8xU?L`|v1o*qNNGt7PD*lOJZ}6y1&@^Ej1P&E zAHk)$DEQD`eiloNMdbL5j2RW9VqYF2L-naqa}8nsHx6EALhB)j2mYGzSeF01yS%F@ z|L5H$wh{vsR2ji=M0Rv)O*CVOG+lye{OBl^)AYo4k04>q6amLSJ?jgJ4KW%^Xe%}B zAV8{s(Z)Vf;SjB`?e;T9P5?oqk)u^d#Toss1ALTu|15u}bMke&`r_Hrj}ffuTF&-E z_k+kVkaL_Ctm_KE5cD61pL*Q57!F?tlsx0l{qG>EVgpnnZ z)iwKeZ30Z)`07XjE(rbtE>}5!{9f+ReJl-x_-_qqTo);JXfR#D6JTRS%+R%4>-(TP z1*#wWXHF#_r~$2Q*c#mcdcufqt4@bbuWB2FotjRkjE^%hh#tRP5cAq*^WxkS%-ZG( zvplfb24)I_Jf!p6X7+*Z6I?E(!zw4~%Y>?~VmP#PjI#z&rNizg8o0~C^d1WbFppNv z9`gqzk5`9~O>Sd6)SV;?2N<|rbD3zN>85UqcjJJOfDw<6h3V34F|735VJLbMXDP6T zfaoI^4S+F@M#an{`6%eXveC`?Aa>qWajBB-pyS5i5XJU>Vg{FHY~uP|%Id|qNkD8P z2O!3(2V29j!Y~-JESN;HO!S4giit7Y%6{)S0zHSb^UL za=5DeZ4@-vyufxo+^|dhT=n6xOZ;D@;Uxw`{4(V+!9_vyg`_ zj$M9uFvwR5YqX+3J-7@Dj;q?_D|cIMLo1-JY^bPiQ951HueQW3lGyBLyr`oyz#UNh zd#ec^j*eUcXW7?z&WXJe(E7ru5(;Z_&^cyQ3s!YI8N_V=jJj9c1JkQOo-X+!>h9j? zm!NH&-Eu&&o=HTerRaEGHeE9wL-_2h>icSBYcJEn;?Akq&?+kJq8_o^L8f)kjLVdM zHN98;uvQlghaW5X!p6LQU{zFTLA=-Q^OnsO4i$I~GV8L6>v@@nUG6)c>s&bbblwJAx21sU)SFt=l3wJ}PA)GPWN0)fd&l?C;l~g!I&ZQIfOj@( z*Xlt)6=&Td7VXv}tWPY1w7q3n5?`f}1nUXl`ZDTmp+*T&5qKIJ7G(^p?a;Q%8oDjf z{m^@4N55D8Eu?aEC+4i476tbu7iF~uzf(=$;g6FJl8Jd-C?#xU@TTvvrL2u6Mn|r6jmtNmAZJ!|7p4)#(eAIj$oUSAb|2bw0&sIv zET?ihW7P+HFoV>0EkPJo$kbJ_C){w4gHAtlZb&u$!FfZmw*%<5o+v~B8Iw3;V+&jCu^5=h-qdGO_!k#8CU#LhI0q7dO8l3aP~%VW?|79 zSXP3SFzp`K!hw42hy3KZ@btb>mnD)J1EQy4p?ms~-xf0@%R*rT|DQaG>zG8r2<)@R z+T9S(r}tI*qu1revK01tF21u67Fz>s3_xCE`hcS{n1Um)Eus%79()1#L48YRj zwYxAdc9Ah(RnVn}T!7e;J$f>KU74Ytx3w;>8Nl&VF#l1%NL{$bP(8p@*t~tbxk1ke zA=C#U%GuR-iaobuV{D%i8f-ySiE659XZ*VO2F87>jW%14blOf!BD%nNjH`izZdzlcmJ^L+)|#Vc`yZDkiv9r+;Ys zCX19u>?h^Z!yU>MxKyt=U>SzC?0E);O%?N{J1I`pd07_(w&h$vZ`5FL4X;w*~eJ#pE$At zZA|}-QTj0(WbDfTT$tuz1+lToQj%#amj^E2o;q|(+4@@`ERrM1p&MP4iG6y7XoFT} zzF>3WSoM_%%MQ?sN3yLf8J(#q>~6O)@4lITB0NcL4m37cibG$?r(ML>fYcbBgk4G+ zoH<;v{X97-!eUaZB*ICDMYc_&aLqR}9KGl^Ad_t2er*CdD(b+TZ8%=p0Z#k3!XmGE zWKly*=OpgI5^jY_q&+zRInz(0W-W#4ohb%=C$E$@23aT7N{xc3n3k93#O=&k=BNNe z@V@$m^qxfs+7etK-)s%=0k+nocN1dk6*Lr3W^P>aJt43cvO_`ScTa+L%yzz6zZWf} zCpkvN^><-!h$^M3Iu`NOfN)SyM&H6bcN>kJ-*`(s$~Ey&?Sf{Xa%*XdX#2jx5s9Zd zv7zde^{-czPjoe+mUg(d3=L;f$oal{QT~#32@Li*I%H!FkHQM@S?)PI5tf=`#G0R(Jx&4y5W=KdbL zM}`YF(;2JfjK#_sjkh|BK{XUw$JRk#X6Z-%Rt9wHlwb z8aQL6-=#EbE}GBvTb5vqdPl9g9?raK5bH8*glofwhM5R>%vHJ&XO)7SWkMp_p<>&Z zbjRdRw8X0p0 zLFVqVbe#ohddm{Ejcp&0RU&Gqt_t2BL?kaY))m%hXKlmnId%5UR8(&#u{B;~?^YI_ z=#kFqd#i5G9ruUrMp|WC-Rh8vMfqo}i<%G%v!8TeoYkeM z^zW`L#_y@CrzYv2&-3%Z5E6J9yn|U77<9F7cpdB%E~~M;t}0(6;~#EIc@qNa+d#ov z)8qGIO$UcFT>@%eX4^j@{N8&4q_}uv)Ay%GCMDn0#JudD(huS<8NNm@WiUTs@%~fN zKe~-O&_=7vD#w>^imZ+cEIX32XWbKRNhZ!Oi>fKm}BGLuw^BtrpHGy z<5IJvb8zM5>E@gyZ$E=4#tKvpz~<@x@XVqJPEHmVX;E2SQ(H0R<+q?CM@J_Az(^LD zc4zT&QW6OtvNN#8NRc@G6$+V|J7OefC9oN(;*zD8^?m@w23-$+C&CqYrAP!3ylXv0 z+1vI6K!lAE;fzdU98r<=9es!L91m#Orz$!NiN;zC^oYXB!#}u>_~MumztHG-`tAA! z$lAm^O;puTBF!sGb-LA_&437YM$kRsXzGaCpew48^_q1lyP4r0$0hg&yjGkZ8iXf? z{|5ktKzhF_HI;VQyd`({9v<{h1?UsY1_n-{ca7QJ_^o~!8~qke?SMObc!qBFr6ek_ zNukhLq<99kFFaOkyE+Hv_(VHK?<<-pg2fBrY~>uSE`j6)XYdV2XOljVExSo^!a<9t z80c}^xy#lsP;3J36}WCp0c|yjf0D)hjo7poeMqi}#ZBhUTD*e$m-lq;?c5&}31fy| zgMDe|A#P-+o$>djT#@=id72k>EMJ5FO(CVjJBnvytzDU7%Q6#m}K z&Uzg!C;)+^sT#%4B z18qpfU(!-26k1B0CJjkVLuow?O#vVL077x%cakpA0W=5X5B;hd8En{*BCFg7$Cl z=V9Cs6z|L zeQr6MGie@NNA|QF=D}6&KN{u16=dJo$L~wX4v)oeER(dbqWy4(|8?~dxvgtQVwGD3 zVx1&GVvQlxC0gS((bWK`MbHOf=pYW3IqFt4)%v!jxV7VG*lH1KP3e76O9rr@0pOKe zP>+;a?klO=NmZRI>nuZkVfVL3tr(T=c9p-A%>G57Rt-8lwGF+NM2p1cFK8+s`L>?D zAmt3vd%AnZ2|e0(;0|b<`&oAA26D6VE^S^qZLSybjUi`=du)UU6nmlB0X+zv4NB2E zDGl!t^=NEShuP*VBOV*QuZ>=f&q;??p{7$k8fIv;{TZMS8u^ZIqS&EF4l8bAv?k}u zm(*79h4{pGXa#D??$PLhe?Xsxd-y`&RBj^oa4VHBNmnKeUw*=3l*7>Cb2@e*^a*^P zM~-E1b2P^F5j-<&#TjrMc2vWQe0=&s6h)ZQ4RKyCKsOXuO`21=Rkgcu)f}#xtx1dY z?hm>VAtD7QsX+KKS~BA4jGI%E4_# z@|fQ!7+5~v|MUD(rE#=eC{0Ynt4BOmuLl*k;d{Opc*Tm>EFaCk1^+2{dO^8X45~G@ zQ?5=n73XfdZlzcc9M`Rt>y1iKeG0*ps(wAFHA(?T^B*%B9QJseeUi;<6Hye!&wVd1 z23(3zaML&o7a=n)VsY30Cqt6PIyg)rlfh7s#?nPxD8*HARdwUPQ1Fwg8^LO8Yd>vL zyV8+@H49hu&YRdyP3n+gczNe{?mh250zl|}&hvXq0(YZ@1PS2wpdixnNkNl)L~{=h z59JHqk?*x2y9hbgXgp}X5-%J44Dxn|iG6iaCAZ@Bc2nD+r;tRw-k%E{vbni=lL zaFx#*y00OKHDH>KsPDMYLnTjFuEz;C`Xvl$6=I!E%@@)NjCX(ijLm*&HJaryBpCt-u8^#ZrKDq{K2Q=Mi zWY8Tp8>p84t2ui|@#?u4CK1vGvak8Gglvh~9jM(@Gz3<+WAzhOQ*>@Es7^}l9^0y~ z$rAcvd1E5R|*La-0RZDLhRTw?row*)6 zDX(Uc2sW_>i8gKQO(=*>yJE)=U^PnJ&{|lIQVA{MYfV#fxR zR!~5I(ljM~5K5bn=HZyeB}q$ph40=ww#V2GU153bJM*1$zURF|00_;Wr}%m{3~W~?gxv#JO0B$18E8%6{!y7`;ZE8X zFXrHmN}CIRorlwk@L~qhx9o0SoJX{)hyN!LeI7T-vaz7|-!lJH_@a4LS`tfo+Ez#q zER+~R6`~T`L`4B07ePmh#W4H|Fh?%wN23$3NT_hMb9S`|dEC)}k^w9-fM?~j*iE8L z*ARV`vz$Wo6ft@U@PKy^ylDv%#VKml}l)US0`8KCwiyRppq=i^ZL+xODR zUL56RmJWTZ_B4c6kU<5)ciKeS6bhQ4#E+^>A8zolN|C~b?_&%52rDj+;R9$(L4n_~ zn(!bKBBpl{m@ZE^;W}=_$34Wj4uiA(BrgPUN2s1;r%6(%AyP|TJmPt&!EEkv?>R4# z&t!(uxl}x#&BRl~iNRESezcZa5P=fUTbQLNe3f-|-)1|A#p8 z>0~;YOAe-zg`s^MPRLXv?0K1?Y(ABMDwjQaWNl+nR+R|0j}WV}sHmc3 z%HZuq>=Vz-9YAO`qvtqH>?d{$MTqNQ-SLEdQ4+1y_^qQ7<(NClaYCl|0EVeKA#qN+ z;y6%EsGnmjgcgYM1UV%^PJ4hHC-j}}LC#2!vjSvc$qpKl(K(h8)fp{>Hi+>AIxm50 z+<`6-GRpw^*2?e%x+sAzxdYV_@<|UBU6w#s+<~qVveW?DYh`)@U6Vj{s?Z@omWnTS z5n^BWiU5xY<73^BtTzQlc?lR05%d-zD`?oM=Bp?4GZ8qR1vqev(DT^DjIs6P*-qZf zfe`9zFe9i#$a+N~f?jb8Vm!A+RE3B_+DOQzU{nKnx=R$ANjAwOo86Lhz#(*Nq-TZ> zG!Wm0NQKlQky_nG8;SQqXx00U)g}-eXeD-g6zjK3#140Ds-9l3zF%F-Z}C);-70DM z?u16DSwQjAFe=Uhc{|(<>s_t7UI}2y)ezfn7g<^*@q`v)oka&AyG$u6dMuMMQZ-n0d^WtQBq;eZ#SS z>=n@y);W@OZn#`q-B{;^%hfHyWc@_4&JV}h;>Nll9IIP|$+}RoehP963&H58Sm#9? z?7Y#kkVRf0(Ow}Y?_$Zjr1!i_AB(qA@-FK=?`Mz2`?=&@9&XQb=l#Mfq({78O5PQ{ z&v)fx<@=T7UDf-1S3g$1Yb5VlaCzS8A9m-X3Sphv`PPDc?Mc>OFA+Dm$@+sryh3)m zWb(CFNQ_sAnaM`U`;FTkJ|Ju+mO}VeW%3Q!>z-!)?&~u(rdz>|3|{Dl5ktt+g+GL)^-`c!?n~s zsPIl1zsoItQ1|h~w;TB5EIa;E_B=b7?g4VZ7~B>Z+2zT0F!AjT336Z$(DsqCVD1qF zeEU=ke{PPY`+-y`9vL;fOH`~72)+Ympac7X*2HUdZcz^G17B44VuNt1rGug7ZpVlIZ}AY z?DpZ2_)GAT1BU=t`}CLt9u~He%`;J&4+1XoIq(bMR^}CrRnop++YbYt^Wl*oBEf2t z5%8$l?I%c%nF5Xiu1N?AI4%jc&je|%23(xrz%jsW3EX}{+N-twINb056!` zfr8|sDc}O&x}>0hOOl{m6Vw1MO>*EO;Ep72ua)*nZNCI~Aqg*=0xF0V|ReE4N=)1E%eD?6~}_1GRt;jihc!ubbNI9N+_1)$4#| z&lzMlrCW&}-IIW`6IG45{g$eYw%=sq^_)WE_IhcbukE)0?=kxgz>OwNgLJFaZYKcm zCn#@jca&OfZ(xHz%7J>o1*6Q`+*Wc*mERG-@&q*}xxG=z(e~SbC4NQ6?M-SZwY?E= zrC-r;d$Y8!)OL1Y+|TR|n*<>`TJ)k&tFj94H=m;8_Et4#wY`PuOjdN<-lprJ?5%(s zk`*1dx9fT+dmCUivp2H=^J^8@A)T6;le)E02ksO5XdeeUh`l#jZx>B`0|)$7`WKZl z|Jbec74F{5p7)~Iuo8O@-;X;0=RS{j^b89)+IJz``;yphUu)U-+yT_fBu{{P;`?2` zX2aji1$Wc*_f4pULuZZG>)K0sE19#YLe_ms7@TpYoqY7L&IPeH?pN zoT2oHi#XGSC^aF5V42w+DiA*mUUHy};V8u|XHAoZ{RUvBJ#qV>2xj z>~myPrDFe>;<*>KTCH%dLRLN%6c00>ITUZdXegW~y|%k5jN~|G#m$)^_Z|FPRVai4 zm&>cwCuGWBm??j0=J+J8FuPBQv{sraub{YPY%t}ol;jhN?@Nkn$2zc*;t}n|=I(Ne zv&S;)R}>op!OFIf;*t!lltZpkRXU|0g@Xg1Q@o!U;9V`9Zt9_3K(T~5t)jSfoUFte z>Cr4_6F>EHCjFl}BPX&^h~s~3hz~lw+Sw_IDPXQ4nHvuNGg{nPE$*BacfR{+!|+2hXE$rL z^|e7?e~kvepusO{@Jrof9=P+n?o|E!wHo@ehQ6Yqul8c6GC}+MuW8Ua4SHRJ-sr`i z8V|&OQv?!Aol@8tN|A(k-3oY#BTc}oA76-(B(|NTuzF5oj~8iekUY6wt-~kTI{YJN zROl+4mHY}7GpXg7`lacYwbJ6K{Xy4U0cC zTRVVTo8^`s*oyg$F)%jmICss1KRn_S! zR;LkizZxjyVL+Y(?d;&3%+97n^~GtmnN?l&#p$-0$y9xDT5e`{|3g9mi2F4E%_i%h ztgPG#`2`7Cf62-&oHS`-UO|3pVg97l+_$qQhyqS}qlAbm$BZ9ZAtgLtYzm=Uo;q|w2@=~(jd58QLCLqhB zc$~dcOHb5L6#mY=y={k;2{B<~GGsO;gc%c&xFr4xcMS}PjZH~rrjd*>)Zl`+Fh2eO z_#fP=fDm6i1QB_tfNvy$WJ03Gi08J284$KM)AshB?>pc5&OJi_2>)K~e0Lgv281Wg5sC1WNu>8-!KRd6h3OPonn>sq(om*l zr>O5E(csX|j(jLsaFWG<#wp0bFuXHBk3zoE9Ni{}X|9I2q)oo9aU7?HZT@TnzXa^v z;z_=YlguPZhDA*l8M7x~9M0w|GYfGqQg73$uYfCis-tK+z}wah6q&hwoYz1<)sRMU z7>lLm_tD+}H>$M9XgHjOdcp?HB6FK}H)slt^^!Jd9+}^yD2bT7m_ufa>|Jas!PfD6 z294+OiKKxqS`Xj(v87M@vu+)UZ`>$|Ov;cKqM)9RM{zJ#XkwvH{QY}{#skgOBwG5|OhWaCGhjT^C@qn#p#E6uu zTq^P0$uS}Yix-sSM)@7+XJ~JeL7Sw985I&0qBZS#m5i7-O4P3hK-x$co<0Dl3Yi)>p;t=q!!}~bgf2`9J=Z6AJC$s6N;7gf z&PP$rBO)>WFF_9L0Q9M_e;H5qp8xlWf5rX{?SGA~KG&y-ID=iAf$$;*+(lsZI*cb9&_V&D?gR|c*nz!U?m7#Mkv zjZRk^i}HsWqjqdm=usivJYFfs$p?jEE+`gqUQfQ=%XR1T%`Mq8*_NE=cIdBM@7Y$T zwWT@mFZn%}{btYggWl$DKgh+fY_|Gy{k#`+cIEO-O-Z!FEfsUclIH}z>$@el-E+%b zo!N`99Or^tD3(me@!E?e+i?nA#lS1|{D)fdJ$|uN2=XPa<1gJGZBlrgb&=0&6G0Tm z-*?8T3m!%2v1N}TyB=ckX8#ajNw={M4qM3XVkt;R?I9O2c+*qs-{DWh9*wnD`$Iv+ zV<2G6!Bc%RiA`#C*kR`F`+UD|W*&$Lbb4Ii8499%E|3J?-kuSF$JYebz5^SZM@RBG zXXG0X%yvj_So^5;QoOJ{W;i`yMUN+*2!-hZ8_W|gf&zB>F{}*v*6X|I(Cm3vc$>sy zYag^Q&wBBWsKnT(@|TY*K{DJqp?ObqYeMsi{w3l{yC+m1h}Ll|dn%^?qx$Gn?K@s2 z|G*bd!P3*`fG)NvyefFzp|B0fn_UXG5FFoG?Ge_k4QN!H9o4@7)w1^$N6*9+xF^~p z)e${+MyP`!&}P8r_DOvc>Tv9&K25s%=5=vM>Y<$M^_StTzPcWed<{$yep1Bf0jayP zk6`sP;g<~tID;O9!}~xVqR&^{;s?X%T#R}@N3dBQmw7Wb%W2)jOKDoIMVF#lZ1jSQ z;+4yD$y}{kW;e3sn_1Q9tX!!sWo10XqG1>i*)6Kk?N)l7giy%pwjl49)Z*lmoH+Y=ASKo6JRTMtwZf=v(B9I`%s1IaT zN1?VEXA0x^0{?)2fKNMZh$Ul8nI=(&7m~I@rBY%+S_K`j!wfGf4-7hvgUlfG4N4UX z{Q>1yfpj5}Qf#4$=kDD$8*>vKAJ}Pg}UHxUmWdiqrRnXYJOEr9lUO5{Ah2%OXn9QV?gu0Ee8aUn>gY7T1UsmA0ZP*r+hxLG?mW zRD~5aRuFXs;2URDy*dh3AeuM?`gPRky5A7HTfI zZ54i!zH;=z3E?lYyQopwvVu~B41Hq`F+fv8V7D(p7#BCzjKhD^eXMIr8mhVtK5OB@9@%F0N* zQz+4fONpMEhwrnlC7uk4yj zXSf4;Mz*U-%j75AV#TELzTF>fc7IF)Kkw#QIeXOZkDMI#%B4JnI$Fx_WtSq|RG9xj z*&m$X!*B}J4Kk%{5D_y1E6X*=!?I?T)Htnd5UH`IM1wp4{dT2^Q=so(WH-no=~~)0 z@egN3gJYtjuzN-@WjD4fF${e$DINoX%VieX=As&}4gj8Mp zaMzzG3sC__*nn1i*I9L#Q`SL-6yG?GI{aC-4kac2rL2SGd#*$so`9aKHgOL0zQuMO zo;r=^((GB_hpQoLt;@t2;QOk9)B8}ko3zbN$>E(8#T;S7nwQLO#d2m#X^M_&LzUTX zf*;pjQJdY4DzjzC8|BRYNG-9zJ%z;Ws4`pf72jmi>^9WLmYCR%dU~mC_6~HIEgm?U zi7DjWOL&L0^I+?Oo#_8qrIqbO=+V&5P(p5Jq1>IwI=xx+5d2&AQi&I}eERJ`-oH#h zh1^f1sFO}nyVM5S6r~iI*opdgUIhsV8%3KXk+&@Y-X%FZQnJl<%i&DYlJFzlNi>;u z+9-8&I@~-6qDm>gP6&-ad`s{xx zGI0+*?U$=a_DPa~l*6S3$RgY3D$C|Bi~kJOXj#q%$m#i)`GkRIgcS3uc=P&a_jx#r)h*35O__r%P7dLcM=$K#Ujnzhl> zP9wd^X*2yg+8eehbZy;_IGglLVb=F0`t80hWVJc?Mi3)E6_W3P5bsJ#Y!$OT)!vZ)sl^*izdRO#~#Yt}g!>sRv3SJzAQX%@ zx72L{uVK6!ZYkjR7)DDdmWae%@lD~FW*AYo4XTh@W6wZfA{vf{5M)D z&W1=+b7Mm+M07602n!=(;rBO3LVp7&`_^fAoV`}xZxmG&KIh)v?k=(jynsQIPDWxV z*5 zlqw^wEtP^mJ$LTR?k%0|f)7r1viHaLedjyp-a9i000@h(C*&OiSWlD40a^7JKwld} zlntV6XSn?e;_!#_^ZYOa;Kv9AU>pZN>^KK2->@SNU2QZyi@<&&4wBX+-LWtEGq`q^ zx?6z$7(|1pEBOhfaxz@yXMo=3DrDvtC3DJ?8LITH)?_$44dB$>e8xpXoij>jBvi-6 z)4)E*rXpvR$hj~PcvzA1O5|5xWIuxO~&W zmf~ZcfQzGGOmOO7Qi8vQ)k5gCIK&pq8kd)*v2dE6&=nQ`swY&fpr+Hx#sTJ+-WTRI zU>|wJEktl}9N2N;2Y&JaGy$~06DsiU|0!`7FM~1F;!FLZq^^hMP_xt^0T-`YTQ_w#+$Fkq>4Wkl1ZdlCgxw-Qq<8rd?_MY)M*uUChTB5#Ixn5qR;xK z7tkZk>3=KwEsuWSQR!gL={u0!1{h%4mR%dR37L6k0qGxr-8yM~_|7%&>J?`90QTvu zjs``3Do(rX92lRlRl&huLyc2l4C6X#jL--vi2Hy8juQo6kw(P4H&i)N6>`+Y`yjqv zF6db;M<)_;Q1oGq2BIG|4HP@{t~@R%2I@mD?m$tE2bDyzQ=jWc(HD1d0L7sIf-X8J z#+TFVP85f0Ofje&{Xjm|YSqk6qL9kF6ksGsWDvz%TvUR1XuO5A{0D}%RqBf$Wp5*V z;8$2cY!6?pDjZc6uD_^P{ptyHLEpVg^^e zIfQuIiOyn-o>Hw6OEMIXjMcQ;5Zd?EOx^r$*tvYUH_@Fh zrxYxitp9TPj9q>?o62n5=+AcLO2t&MWLs&wyQeE%%qCwA!ftxpvT~)Ttrx9KxlqXF zOaF(BTq#>fmwF0hqeX^~Sk^1KLb23pS$4Wuidt47TP)kMQOv!*&CdP{^)IGEwpWpu0?$jzF2+xvarIp4Xb9RdJC;n+{F2_L{C zYo7xoJp%xpwFJ>xP)Y~Ej!DGywT%t#F#+HPC0x}8NJgOr0b z&^)~YBU}yc%hKCspc4WAX4ER~B~y9jt@0Y6J*RSqG-PZF(+8eFFPiFn-nH4OqQmhH_aXYD~ms63-zSXrBgj<7dv4a@0v0Q9b%54;2!u3N(#0qUtJE*Q4%lrNesK6SDgL+p zDAjkFcRZtsQy|>sDQzA2#R{uW>EQn`;Fuej0pUUUHXw{yll7e+w`xomTt8x$Ro^;< zC9JIf3s^@xk27%v#Dzcx*`G)rDp0?XLuEmHSb(ZUsHdM{2eJS{x8H$KavrKPhgt-o ze+yL!PZ530i(|pWWe~aom%0$w41X4V^t~Wx_pTkmkuY%$#G4iHjGn|cs_h?b+thsd znbV=8Cyz9#lCC8rr7ap!q}FIO7!Dl|g(W54V%z?kGo;)OT6u6)MY`{=&+Xg<1j3>Q z0j1}b0tb_TEDx7*dA_On=T%KPGd1OmRg=PinD^oZN#e7Za<~bI5fEZnL>3|JYe04Z z5l{ky4zkO>$r8dP0YZ?S_x0)S+;el!IpHQXrdYmn`ul$0{&n}g0YV6n*q?#;_i_(H z@+hu1AwY|E5|ZDMQe$!%A)(Gm*Zm~a&7i)0kKhyA@E`c(gG9;2XhLBpeC-$ic1zH& z{hCOGBuOLz2m&n_N(~=N@Fyn0&@%utO77n`zCqQ-PE<_@|B)CoLZPC<&2&=;e>&oF z4Vqnre_^6;2Z59t0P-@y|0qdBM83;S0$e0&f1WdTOQn0_R=T&rO3~GQQtSS>wH|1U z)}N%-gBC_{G=|}&^^lvygJ?Z0wH}Gv*Q1T`^_bLpJZ@i4G{)DHQtK%TV{$Zx&(a#4 z3M>ZVs%}f;v;`1`QD ze4TqlJ;m2c@eLlvuksN8T8eMN8%QHh<`7|e{d3STEF9w7T8y*dq2>qsIG4wk@PB?TzdjP3(+*e+zo2sN{mO$PuR z%P1b8NbH8dw19yFX(904ZGA|T0zdXx0uqye?``8p;tSyGA8CTbC%~7tY>LDv;Fpry zBC!+roZqz5M0+HD0Dg{lKw<~*dHiuC3V`ou{sa;ufFEe_Boa3XANJ5wNLV8AYye)_Azd>+BlaxdXMWQI ziFLUBb?B*=dLeNTFK)Cq62}QY>Fa~UTHu%4Ka0d_;9s_XPHTT&d+~zy;`c}_2L9P& zuOTrX_^7sjKw>WNtto#*Vm9zl%Ab%}0lcE!pOKgXeA~mXBQXK^iPnEXq8RwaR)0le zEbw1izM(hhzag;<_^fvQkQffUsKr}Ign$okJ^+b(IE$LSjl>-lAY3zXYsxX8*7KqJjKd^C6sCv=es3Zc6kgs_du~pC2WT3x0M?u58yUM}h6`!j8+glkWJ$ zTXsU3hmYhq-AG>&FHhQ)pRy}YuzWf#g$~}f31Q%XEjO#M(UIe4$#LVhPwGAmY^%x6 z$hW)XTXt4Hu9Yy?NSb(gPQF~Gc+T6k`-OH)FtC!YMAB!0jqZv|iPqB@V0TTz%9W1_ zd5-%(4z=;y<0AU+fT*iU$=&_J`*529V7@Ik}r5}Z3BzGv^Sf9Kw^hTBi)N4s5)5}#UygG_xT~@@ z-i_g&%5oF~yKnE!5VZw@MGuC2D$_h(4jyZ|Y80!B3nW9~1cjeZSw(j?Ouh{j2{AsL zI-SKoq-2N6RC5B`{13(6{YE$mhT%g>w?0z^Eu5un)_+88ZWh|zY+)Jyu{3k-Sn1se z%FD&RS4i2a9u~t$$#8J2^6q2Gw)bG836&=|yX7tD7)tgk zmy?lo1C70V2F6l6hzLnMh_nd97)santb&%vUP0=9Mpz^KfIyKYBF`?#wc!yW7fHJq zk>uL=@J}7BET-geeO8W(wz8Pg{~G_c}XRUjoYYDFrDGwmhPQcmL%oH);^$vlO!m3@fN zBc3KxHm46^vsAklNQ~L?@niwh8#(23JQE?UPKtGMu45wF;J&lVh;2M85Az)JAVp#u z$Ciiro_TOJae-qVq`u}Zd6-KBg)f9*9u2I2LFHkgJ@Bn%uxC^D_47o4iKkhVl|E0{ zA~pF{uouh6@_eR`C6q7m47N1Qp`uD1gZ(hFuQr}^4)#*VU`vtiUcp}G8EjV*zjO?? z)EC=iGT5awQ1fCKmeRodmsGHq+k=hK6$in^lr4Obt&riIQBWIB;42-6_$o?Ht0C@c z?&@fBS5Z3al`41y*-L4ACv(+L7?x9Z;$^`q%v~dm+GICst#bgC3O9@J@<;>QUU5)D zL>NVxEuw77i-dipjve{3%+{$E4>8-}b-g`|C@l`J>nQv5RklG*mHb+E;9q-MEOY1( z!;OwHd=%Md)f2<@l+Arru!MVlIA5#H!&VAOv(DcP(JbNS4E+Ey(3w4Gvw z`76o_UL|ac4k7SwY3yk`3^#yINf$z%NA2(InMje-V+(GQza^eO$Tga>F+KH`YP}gn z*?sYu#OIWa?Nf()7-c2T=wq7LnYXGkDN;ML#Sn&(h}J`ku`*Q+`UqP<*(hY%O4)+n z+3-&ahr}-fof4luiL{IwfxOgEiZR1$CP0XKkU=HfQ9MXX~97l=SL7SRKH0V(cdQ5{Je}HD#3L@;={7-{w z;A;5WkP{Sch7xPwVW@((f(u;~oFjz#WSm*!jWSVSWt8pw9T{>`u|I>aYGf?k%>v*Uqfa*cUZ+SYuy$u+Fkd^_4on?J*N6;@boo;rY)xJRML! za@xJNt(%qFvMO!aWo_A&`r8xXtvbi8Fx=g-&L20gY7Ny|!!@m;rh!xC3G=!J{Y8V` z(4aRxLEYx_U0@?ITKy2*ef2H$$6-FJ)d80HTMqMCF}#gD?(8&rH~Xg zTC&t=Ng(8Uiet#1G;itX+}6>#qoZ@Tfgyj&yr)6$YtWFPK=X};&8tpkfuTT$847f` z2K~?zG}_XRK+F-AU<#h{w*X)CL?tk#B#P^!TCVSaS46m;isCA?xRQ~p4ETbMl^AUq zS}|l229E1&50WHGYvXPgMRJ_>elRcfL-WT4euhj`)UsQp(VYm3S%{@VTi zHn8p8$dE6LnEgK8GOV-Rsx@}2o-wEEl+Ms8Ezv2RSx-tOR&uL2JB)NGGs+;kt2T(EM;q=C)T~71~*tY0_z*#YIx3EsUyEiM}D=A{F(<#r*eTm)G}`qVRDE z>Fo5poWbeY12g+(rw_=?OzoN0E3IdGcGjEXDgFIEy)%0EOw9}aZ*buM1yi%Lf_d+! z4hZI@OSZJM$e*lWW_Dh`{^^-ryQzk(5Y!K`3bZdTvytRemTp(VeD z<9)LS41BY1PJdLFn30i__0FK|{zwe&pOcrJi$Tclo0IF$$apJja89l-1LM@}oy?rR z{oct6rezKqME)O^p_Qa~oQ+k@ZyQAve{aU)-K0)Hq(SB8l`k|^ysi{VKq88wUXVcI zKUg`gn^c}6@^L`(1ci%iC03bZRUZM9J8o-9k#{t>m3c%Y*hA|az6B`IB}BKGNxyF$Q` zIwCwRzZei6jH}%U*qP8=8vkBdUQ-GSU$Ui^0*_dZD+OIz{?Ltpoe81Ee^j2Uog`xa z1jp;B zvp)d7X%W}hvk@X;09fi~8|hDgl`tvQi9}YnLaZKk8(=leG9P30_!T~fP{SQaeJ&UU zw;=U#oKvs{#vVPU8s3D|J!+g9-T>oaERF$Kqn%AKK8@)Vtb^h4o(8KI1D!-exv!zz z-@pt|a0QHk!}NU(jCXO6f>m;$V#OW6dDqn;D4u#E>8sk_7q^Np?w#`WnJuti)f#3TkK+P@j$XH<=FxGW`EwtY@313epH| z7IIV__8RVi*d+MC&;j64ns+>N574Y*FM57&?4g?74Pvs5IP{m#I>a-c&q@%BwOFLv zB%X^n9-jLf@Enah9IE>weLV9|#2O*u9u*m!`_~tV;n00wq@QOVL@Mz`6pz-|h@wpd z<{kn*aP>Mqh5J5*${wWpnzwcW#x|%anzuGV<@rY>31Q4;7}H1YQOvlSYfVhQhnz4% zO}B081o^kdFQaTLcjXwmt*eiGXxT<9tIkf>(eL-$q>5-A} zds2=W432>(`;@vCWro60bGmpYZ=RYi*tYqqbGqOZPEJ^_XG?|b$q6$*J5wxG%z~4% ztEcj&U6?Fp&*Wxi($l~#%W=$Vxn$bKT-G+Ha=GD=^b6?`iITs}+0hf$iIL%|^QKdL z%Ne!{PIY#8%Bh+PmQJ@`4TIdVV?lPZP$`?`ifv`>sp4d|oF~hKWt}dR%9Zr-%!@A_ zvMf8R;!!O~#MPc|S*3irYFGXPrR_Ojc$~dfOK%fb6h7zP+}Nfhpom3~B9zg95TUU} z6;N5hA7BGNVC1-NuoxWVhZ?bA5(2oChY1e_#3Gax3)Ed-2tic=3nb_RXi8}V1;T4e zLPAP-hBI@=_6-@wz=DxSzH{&Qedjypo_QbuAWS{x(m5vtuz(hk1G4-DfX+sS=nROm ziQ%SOh%H29{wc2meP#9q`?b^5q*Tv=qPY z3fMRR+Fef9H>BXdezg#4EsnCOvf9n*Y0RIdCUi^2zwHX;bExQ4vq6A~>H9*z1MF*; zxRMAq4g$LO!P;}R+P}(e=7n?)DanV)bGZ4i)YJYNgwk}Pof7Z z)Bl(BCoaABUFo2Ys~yOm0(3K_W$XQ#km=7Rk)8wWP)Q5?J6C_9R+zm6*sHRZlqvGO zTI#Z^pdDv*g&V(~2A4tW!v-4k(+nwySAgA?6$DR_X2gU$l^fqLoLL)RfjBu+(6ic^ zJ^isWDLS!81JQ+w28zwQiouz* zx&_6lB2#RYj;sU1+pVJ6Ary}CHVMcd@DkaIV!TG=3h_|;5^4K;dp6`sn;&G`5e|D5 z77*IS>tuz4vcjd;wD?NRQ%I*d6yMY;jUskP54}Z`1iB5{52ECixxk$g_`M2z0NTsy zH-Wn(uwMlZgLW=h0&+L@b;qmop>V@t(t!Vr*yW_U2w@a!n|32EqMMCgp)Wum_~;?Z zuaHTohNirW;)Hqz`Y}S`R8)P_o+4@-^v5#_s53}i9NNdvI>p(B;$ZD4)@|%Td};;9 zFhmciY6nIN6pB0*Wg8Ki_7?p;0qw*L&mRfES$aXBm#(+!CX8;Llx<+m>hO}~pDayA zvguUBY>!3FNLwt{+!9_IZi$$QR_7|x@#!*SSxa*^xh~oMMY7pUB(ojOZOLpz!ouOw zFOiIy+0WvU*y6?BYHK2sj-)fD5jES|TchcCcx@qU%Phl4Wab;Ij9506iYGH4!bTz! zPen8BDY8-Jgbx_T=ZRE0Q*9V#G@S_=Mk=1pn$94dSiixHzXl>obiGwnTwN0_+Jd_V zcXtTx?(Qyu5Zv7xC%6R&1b3I<5NHAf3GPlOxCM8+eE+%UzTMG#^j@PMSJ$pRSIw$9 zi%0%{S*aqVyIlO;zbiER_jLb2;mZa?ljp-z2< zgwWW---cCoU+MY5Po?N~$Yyuz+P<&s8mO?%3{vhP?W7ZFG zstf!-TB`eY;T|v*EqrmE@_%V5)3t>;hX2u0JM{hd6K}MX47BL~&{C7D^ucM{4D2fJ z%Kt}8q5hASqMt6+mMQ~k4gQaonx}8o_#Z8Gt_FKH{vR#%<^Q9lvfpSaE^H6||4U2# z6HZeKz^6W{mcUo}26W5tN#D(y3B2A6Q7IT?;^89^ zx%d^wO)$C{Nh%^cvfRuk^Wss|ed)ZSttF|n4%X=3SBmL3g}`c>FR7(EbqQ(jVD-H{>D z?G*o{+TRD>LGwT*=V5=z@e`T^ZkLAHPM{;a;)%!naIdQYlY^6tbLqJ7h}$Pj6c8a0lS)Gp%S+fg)-hMUXpHch3>UtbC?7^Wrd6Y?og0{ zgqfk{uIslHb4#hpEQ$vR_>J-|YuF$Reyl%4_k)l#3zGv`=)Z{FnLEtUiz+RHr`UNT z6cJ0oLOf5qdn*o*H$yYqOWK9W2|e~B#bkZ}cHYlRf}M_CWmY!JoG^=CP-{16SJwqGiAPgXozt^H($oB1Gs|8O^@bB> z|074HT#|LKw=U9ob^kbTP3D=@fp+{WU>N~dtQ35I)1W2i~ck&C!z>cA`GiCTt z5AnzaGVh(SoC`lmGv`L4WsW4*$EFZOx`$U2+NhjVnaEG&l}TKl$Pe|!i?aeO*xKO6 zt6K@dA6fWzb9}tEDo8{6f+)2UPW34{?6(CPdC_ULMR%MuUQH?(pT!x>-d=|xc|Lb! zIkai?bPT5QIr1eL=-IV7WY$h2LYqTw0RQd&2mZ$hy@i9EdzC#t3B_P~`7t9kR0H&- zPJ}7h4=n3{#7x|Ko4%A7w$KH9l-x3>>7iNOVw*<|?Tr3eT)fCq>E}tx=x0XHK&>dd zkbS>MeJ>V9nt@2obhKPl8O9@(6G^HW{Ufo9k`Gx-pc~USVwY@k4W5T&DLQYHq^shS zkAjLfR`lz+;j_pVuVKv~^*a5zoPvudn$!sI zu}{LEAZx{0$h?c$S>fdFKaqIXTPtw4H;H>Anrhcp8j(ys%p1vdb_*0I!RgPl(Ofo| z|3h=t{r%qE9$fYiw$?sFL-Xghgp`|*6s&&3F8 zbEX)FF666+)lltLF^%q?YPs((qQ*Bg>-=%$|3$NflK=LnDTQ?_(#PEgTbph?-I$Fh z(yV_rso^W_C_NZ_a=e0AFB{_bR=|I5UzugAPUp}+8O6;83u6AqJO6*q-_AG)U^w7c zcQh1I3b>D0U*6@P{`e>U9DLQ(rO(l2icOQ0_zOxSc~En`LP8H7Mx&D1^~-}JlA)(7 z7#5ifr<{$XRLqKObLhPNw*4(KOZ-spx;b@8#9v=i zkmne=lzSQ@FG?H|a&x7}kUEGA?NIoNM{Lk35IH|EU6DyY2;~>cQ6&ta^M0yF$LX6e%(QdqH%*M*ooI)0@M0i~VA#Iy-1A>wf!lBhfnd zO+i3JR={U28Z5%hOydw`KuD@hkQ`|>$xXpXl(c1@hPTmQ$4K;D%ly{cO3FyI5@iQ= zCfnpcimHiUU0yoRtvTf1O5d25rZ*{1b`+UC@KD_Bujz^>B$#!J(_U)~aZ|*C`$NrD z{>O+nI5i@(Sk(**1Lw^q+QB4+RlnFqP--kxr_m&hb@6SjHWrXg$7tv*W1L0#je1vA zx^XR?b#VI8{oU^^ZPqs0-;;0a&@6^5%MLa}r7F`aE!`^|%fzIiz4wZ~^6-d!J%s+5 z4u?@jC|0IfX{Xpi%9Q5vGFbm`9w>VV5taX7*cqz*h(AS64&1~j#6;>)D8>Hlzl@Hb zcZ*p%l(Z&-@e?dHxp3jlk94be@nRHvNT7HvAf>8DV#-{%%3ucQC$sPo2mJiR?z_tR zzEiJRa0(UXfw<&^k;;b{u-dKW(@2h=fN?Ixi5anes9|?KYg>!(0Vxafh&e-KS~LH7$W;-X&|EiVat5cIhMJ2t zFH2kUgocmBbJ+on$0d|12P|);ImP$arIq1ZB+hf`MhT3I4rq{gU~(ZvCI@n9YN}@H zaIeJ@vc$CyomRJZ+V}&X{sFokzn6?JW78)ZGoby%wM?uoR@hZY?a;jWNr?vMQQ?er zNjvg{g!q5QS-J^&S9a(8=l`);*h|1 ztV`wVjp3V^=Z*15Xuh{@cB`wE{B~3_eyz!``lH-QL)Akx%O-p4Qa{zzYTSFYp6+*9 z_DOmU-S3RIn=#$**0kD^m#9UZO^Pv^tApn#~C~UYnD}Xe;lY5aC`KB-gfjE?wmd21Ve?3vHu{_ zJ!!!0Ey_SBGR|nQza_zmGyfT)7N9^5HuX8coM29lqCrad2#pK-?Rd?xgz ze^TjAunitxTkxqn!aPQ!oemo&u5>5M@4G(wCzJN69BE-s7Gj=p#xftCwq5-+6{F0T z`M2_%$sc`q@XRO|<%F4(IRCH9*dl%`1uw2G*08Sda1}ra>sQ9#t^lk$=?luZB3JxW zpElkGDkm^E|46hHb{5SzA)X#Yu%VJ7lB2JCffXb2$ABYNQtw`vUymjm-luTEQcVzw zKJ?pED>;gIs9(D(E*sCh6nAhb+^682-R|2^zh*B~Jh@_xdODP?zNf}u7CbR{k4x>z zLQcZ5(?hW&DfXX7&2oRZxF#2!i;-80T+wR9Z30OA_2b!$k#!p0%rWWtS9trSz0GDdBZ5jqB zyA?Jsu|KIv?JxN8cEbhh&sY6%Ll7f#Ey#IhHL`%aVdVkEobSdeuV*z0k$0E;Pm4K0 zW2VRy1)OMORLDdRgG?lmmVti~ACV%D1_JkA2_vfqOtvT>Kdmj_4LwP3K0o0`au1m7 zpaLdQ|2gtxDo6WCQw*1a2Lc_iBG{2QLjTZY4jya?y?CIO6MsS?08dr7C*c^Oxk;e8 zqwB)n5iYvMZ-9D2nn(cQ;8262T~^B_)pN~__>uUK*hu&r)mTEN3>ws{VO0zH?O`^- zrm!T45@!;Td^^ZmTse}B*dKN24CB~)N$3NexBfTt=mst1%>&4m1S?A#jsBGaQ-cH9 z64}nA?Kx9dHR+Iipv$UEz!~Q0a>8aCNfH5g~n)D=~~1v-DTi^ym%P z!bYe`{sZ$(TyBQB^9Ofw;O~%WZ1UGD_J&9@-srn+j0UNf5owFiWU&BNrwxw*l89Ak zt2Y*kx=u}GVgy{pou_%Iib7qW$y=*H)MDQ9e)0@RA3%E}@)mJ5@ zpzLXcrvHRH13Swl#e6jE1pJZ<#b7Z~FW}*R`9nXln!Q!%*Xpws(_p<9@qiQ}+CR zX@!oMHGfy*Pgj9sj{sYpg&)aHvh_Oq$X0JY)v3F%ZSA@Ejl$tbDXcfLS+Y1(RhN9f z<9$>Ub_EZ7PJ@o+Z2GS~v+s7DI_-NJ7Tm}1*>*`k?-9m7RWk9({zI_bnq#%(&tk(z zDPw#wOvm@M@t7+wA9(-4<79Vtd7Kx^Z9;z}`A{-Te);;JV<_7!>Pdmj*ID?i>dkcZ zD^f@8Cp@nFrlED|53H#OdIg!ZZtOfrT}Ei=9f)zIKi`r4q8^=iiDJ_fwH8R)Fi|o! zV{9ar*yG*i$v-|@^zI;zjk)M5cEmSuo?J%>Abz6uVVU>lRME2~;#KedrJnQV5=(`r zSIP9AwfSE25;e0Frw995KbXe8&f7*KZanA1d)j&xoj51De+r^Y#9#coLd@l^P7j#x z+W3k>-uCi!Nhn}hfz~@bd)s@cH+J8*m|38Q>%XnO8K^6F+$9E~ z`8HLr(fWYiI?~$8w<;Z%^4k{Iy6vS{iojTUxqp!tkzuolk6V=;FYJuhnt_K{IAvwC zWrq2npD)n}BPMdr&)D-=>U;YdLA)zv+ zNx2vOr}rq|>w;#UM_~5F>$*qYsSG1w&cHbr*1il*`PRGYi8Eh54xrz?PhPJU-n-AM zU7;r5**XR?oVTKspbg$yws9P5QP;Uxha?McLMIlUOR`j@XgDdK^WT(9@6^@#@0F2X z=_cizOT>;4RXdH-{!Nzz(4-P$%)ILIhu$T|j(15TKLJO6$Zrn#-tAM0J^0^Gi=*7- zP(^NL>fhlW^6V0PRs4Y2^qb|G=-MPavGL}h;P$8hbH4yHwt(a!Tjq;mua`m^`9g_2 z&%ty|NzcXC?Y4c%EVboxePtNO@QL8vJ2|V#Vym-y&{KwJLgIOEVXX2yG9i~@Voh8h zW%*PA)WCv766$`J>d$eAL)M?`F8MZu%5XhQ7CV(91W|6mjn-#8bz{FwP^Hnns)HnpwFJvQgpZh3B>tFGxAmtKF6x^aK|op5jM zre&~~;4U;iEoQ$`+?rsF*=&Q^Vw2Qt)2p)qOE&XF2`>0!?tb3iC@_C{^u8vVsy9Uc zcgnVi-nDJ)we2sOF2HMB95*u|zT-=*Bf@=O8G;mBYZ38|++grGSc3`3PEbAloh%suVAI4meeXM5rql&n<|pk6g_U61F#r4+xWf zpGze4aKH}Ohrp$0z(ZdO%ycb;!-HHli16zB7>{E|B72)ShHW*g#q_o&x&7n7vhUnl zHa0qV%Z+JbHVF$QRy+p=szPs` zR@+=|)!Md<_KnnSde$e6C_HTebcmrD^9TPIN}I7DA~YwNW~c%SFhFJn~z16`H(oYvagexc6M}nUNV3EnEKn# zz_p>RWtXIZGg$*ctly|WX13uS^SNPhKQ%bRgX@9+-EX5BQ}ZHI^D0wwz47bwuojcF zx~UQt-h(Rp>yGJk(<39$vcf;n2kc*4GkbIUL!g%w<$P@vu*Oi=BvWZfLEf_tj8RvZ z)Mc#q(I*duROqC!sN%rzAKp=%YlnXH?;rFg|2SCKeBP{d>HPco`xyUni2(T;aYqcR zKLx&@xU<=5{Yp*hV0CL>yIxID>(yCuO(I5vsv1|ss$;3 zw3@3yoI8fpfFy+E=D6QVTKyfANFdl7@h~a@v)`yztV9RZ*_*2;#(HfLv!jj{UcJ|Q zr<>~%9z(R2vi)R{b1>pwR_xF4ZL+9#kv&8_y z?9mNr=b^IlHEn}~rAzlPq`d6nL9GG2-E0(eH1>g)_8nEk(+(^_{sYAC_f{?+e%BD+y9fb z%?rw>+3x|@M@+@z5BOu(lPYf?wbQRDd9z2N%|tobEA{$%uknr<+1bw@%+UfRu;{fI}OUpTNbNzF~4|q`clvB`z=yi zRpo7fJJ{uuew9w2?{wOne`855d9p8UL>!`3H=&EFG4p!6bB=fQ6sl~(A6O`sVs};n z!JCR#oJG7pSQ1+%82{BlQxW$%%*DG+!;U4*`Q{|&HfZy4R}~w8#k>ggXJ-UVZi^v) z1X}@uRM9jM;0~;py21nk9fER`I00gEvVc4{SbxWw#VZY8cJaK-sw|E{DPsM3e?xB! zlGDW?R8}Q#uLWR0*3c-B-$2Ju&2{#w&{F}wq?RgUzLKpy&xmL2kzU!tc*jB_W{O_t zjEZ=Q*09*1pf^Bv%nM~=B|AlOSOJybj0V_{Vd0b|{s0P?MhO~(R(>xb#<~6D&>i||oHF~Fz!rDfhd;OpofZ->p59l(|)!{~l64N9s&U-&Pj0aAq69AS>b~MlZCL zT^G0Y%W!;3XhoXgCllM+G`r>ch|DNnHugMsE*G{U?MxXbw_+|97kACUjXWccn!~h& z$XB?*cn7;NLh3X%WKnGNqaqgK>o&MV1fz&L+3n1Iu?1p#r*oTl54pcZe-?RZW=~Gv zzyHaO3da{hcVO%B{X5C@SaSoMv>kUTk!h&F6TEn!Ro+_-Ut3w_O-uI2?GK__6#N!c z)8!R>>6HV}XJx6ScFtc3Zi~&OGt+J>SGa{Fv0PDfRBqNPQv)&tziNd!<=#}Q7{i9; z2h8E|t6>PIfh%fu)jea|>wX@SHWS^^0EmVt#&nPxoNrO@9>mcVtzdH;>pF}w2<}cJ?==4CU=~OaJWJ06|iH7=S$VT{e>g9KcG_ zut}8>eTOQ6nPU8u$U_ zPFelBgxXV)Swn(nX1IjgZU`big5_Tf&+1%5^~(Cbj}li9B2I?NWivoM;B$3ULihOH z;w~YX9)gGlMgSEP&I|-+bAs!6k%@2t+Ss_8Ul+(&nPdMRzpT5QthbuB7tmbeHdfSY z^-)lp&1{|UO1B^_q*!MH`8`ze1eHz!r~5nXWL^~2wxkNVZRB5)gD{tr zd&x^NA>;6C{a^~<4u}s6nIkPrfH*1nX5?%2PizzqWPLBxB3pj2R^si{%+%UDQ~gu-_ZJ1G3bQU;g=8X zqdmmmH)~7;l{VSTAKRPFTJMVUWX-tkNIJNUIaA+hJlGMgPnMd?4w1BwU0Pn$X=-;r>HLdjs$!;CoM6tLS;iK@R$?xk zzz|$Xi(!~;Dw3U3(bvHk+Nx~+HbJW+B{NGU%S#dVM?>lJoz-VJq=T%~pYilIT8f4V z@={f6WS{Shp5>owo2nwN89Me1j2mj_Gp8pU&f~Jxb(>X^>WzO7f6Cc3?}?pB$#{3< zWT067QJOPLi2=WMl_FeRMy{yF_uI!GJ`(Bc8N0vD@Cs2-7^@hM^S+YzeC1xh@wEJV zFv7pb!@u|Ka*cGaX!~1n2{p@GpD?{n5r|ny2TKyU$U-7)wEOs))y-p)V$bx{MbzPh zv`Rv3XK%0k>E-p6g-ADecDDD=;{7dK$VUA$-cJ1EeQq4p&SaE0-Sf&M2i>n<^?WE6 zG@7%3zc!Tp5-1PLBqc?6yoB$CdsjyKe(jl)X(OI;CUX$_m~DeLk3gJxe+p)LD9 z+Tt;P`$=ylMMsE~c;~(5O?gLv<(1V}3d7!gd0ug&d$%--;wJ;xkZ|z!6Ol8Uxc|Ld zK84HOc^BcH_+~;?XG5H}Wf6PmIufE@M^gU)0y;whNy_g$&T-K}j)mGl?!=9>-pQ^8p(l;Bwg#|bKfe7t#%Qnao=@_Bgyg(TOxA}W z{tb!w<0Rhw+W!&{EQiU2Bi6$Y1&Bl{=fP#E0q7;8&abps}PE!PXnzU|9K!UvS92e2D(-O>aR! zfCL)n05I4#If}HD{12B_BC~L@oB%;^61;Iqu}(4gxBnYCXYmySD)cJjrf(pVs zVki2?<`OSsQ@`{`4zTn{4JfOCB9K8iKpcEJqDvMf_^5l$37py@8zW|zJt_t_l6h6dj)WkHY zujtd@VYJ^S4~QXm(3$(FkWD)x+XrG-++?)plgh?7<%3$w;;*!W0%bKj5cGj{%$)_2 zs1k7y2f!kpY4k|qkx~n&S?S9PUVujfE+ z(^FXmGeQ*P5A?^sCSp5HQ+lv`sQoj2jDW|FH*fEX3o9!!e&4?0ri@L}7V3i94tABF zhG4%hm@|cRX>|nvZfmA@!KARBBFQZD6)r|9X{dB;)CWGhp@t&2e_yb#Mq>uzr39EQ z&@5D@!NvOI3UonSnD`i6=40(zY00Vv#r3{^suvg8I#&wg!dL!B?ExnLXuiHCVP6?Q zaUl$`W%1X-rTdk@JZ8Fl^gO0)zQ9?A9wOP=>~SeB2UR)rUBGU7cC=u$DU}nNvqzXN6Q|5H&&~fQ~!%U`eloji$#y7J^F68 z))D98mla4y;T-*#YU#$$z-n6=epgfr<>|y3#8crx#8$=)>2tH`)*1Pm#J}9em1I4- z$BYlqx||YI3cTw>SdzOh>K)vf;F$_waQaCaxNZ%MK zktshjE+Z+vlSOfjh3G(Zig;*fRq+m>2cY+W_c8Ail2tT60&TFZNn#y~NWt3*3hb`z znt6r8G^6|yVwLU?&}ViyM%u$&ZnA=yinvL4h-Hx)x)MMsM(9okk&(`Ru>h?gejlXb zZIVp<7QLTQ6kLLBSoVE6;%k$Ibg9d^1KoK{C8iMNt(CfEFArL=$-( z7skWS#As8LR0+@o8P%ww&-+C{cBNrDn6k`xRMFS{CLp`=Fg}dsO>otO&YnxkNX8BQ zj(FNj+AX(Y9#D%jgRu4qJ-g7hEovS>hBJe_##De>@H<;XPN9v_9}>W7!RY__0d0zb z>KXbh!;dzIUL*-#qa}vXkl($VcFH<#XNwhv`oN*Zs6pT25%dqZM$_p+`y)gP6CwO+ zE186vRJ&gT4L1QASTINWF2 z#3~lan;hd2JjU!dY93o5`+=UeJ!hDT6vfU9eU+}_(c031lw zQV}9ia1+Dl_+ZpEDI9PtHr;m~{kQ#lG~R93I|0gTkhrQqdQlJcx_%Kspfcc&9`?4Q zKzV??jGMwxqCkj{4aDOGNf0y8OhQDWTbz!N3b{xDP7N;^E_qvhL{6cJQ469CR{|<| z(9XtA-Bmw$K@J%|%vO4hXRLOZdDex;Bf`l=PClq-hmKv8!}nkVK0eNhY$5^N-^S`( z5C9!7Jiqxt5Rs7VKO{hj9&uF%4S)t^0an5P5-h|LVhN-J(1DbIO3#&O^unVhhCNxR zFX=mzi=plzL1c`XFK2@~ciITwz8u$F>5nVu?x@fE`{(}{{@!imKZzJQnQtH8Q;#jn z=33ipA7;3xejU}mkx%>-{ZjR%cRGZ2WptBrI$?@e>54=3MQ5+~{cbsn$5+;K*^thU zC0(?OrGuTsE0n;@}{F*q{EaZ?|B0u5^eET?yF74Kz?@SCU zi&z8o?5MY)4?2Z(T0w+y-UCEn>OSa$rXig+kN_Nain|_hbmCaa5aRdHnzsCOBScnD8u1T$B?J^XZ@vNUk(2aMmuaN*IeAlFb7xi4Xw=Z>uMv4_bxzTS6FK z?8z;Zit<4s*X4V}B4A&73!{Zj2oZz`_#NE<||?Y_1pYUXSRWjr6yxaUzFo#9UEW| zGM`mJ76J9o2MO30zw#H*8tAExphqvw#eE3SD2OUVHN+n^jm$;15x$!aMg|oQ@pp;n zCK%*9YlVAKz@zSntWjNgO49)I}s28hsz+vP52J{ z1{Sa>zT{kX+lcyfZ~51$Ic_8i>cQL>^%hLDEBmv#G8Bv5CB{WYkwrN_ zzM#3C)ho?R2KZg+OpfVZyd}n=U-G7fsuW(4e9Z4>@D;~{xCZ%@+T1qNT{qJe4z&i- zS1QJkIKEHAgWvq5++pr-wj;49B)Y@}T2fVzYDXO>#ww?6Ziu>+J;cFL$AQt_Nyi2v zgj|VO*QOa>XxpG!3?!y2L2e(BBS0UNB{6*ur9-wuaBiKpmUdf~(?@fam8t`ow`j%{ z+BQz}f=$wrkD!ZAbM}lzPII3ie8_f)&TX2}h5HSfCqF6DKYmx$UDQCcD!?dcj+pJt0n(ObfD1fu_6&XaBZ)G z7&M3k{pZJ_0=)e=qNZsl*3=JXwEcXUDlPg?wo6KZ#BBE|B$R~i3%4F{+LpAkRaQ7eTxztgv@9KP#!O>KNF@E*U*Hu?f> zv`;_uv}yiOYhlx#&OYSyXt5fSqqzFAe@xIr6x1*+zr5D`w|M)Gb`c272a2ICeNhf= zNkMq}wiU;CQ?T@XT8!ZFOWb-JeTU|8Xap&UB2Vo>7jN@po}ou_S{~|@Vz2S{IR$@O zDz{-g0$1jP4#4Q_FF)8NunP1k5I_gFKd46zjboz%+~e%<(}FA1!f7ET040p6I5rju zj@FNwB@!t(5`)BVnH)ibcnox+fGaEH>JPxTO9m!mOMK--ZK2_oum*lq3|$5+19hq- zF(lLgJ3m>c6W0J$Q*z|4W&qPEN(xGG$S4nEayEhnl?n!1I;kvF78DDNg-=)b^IsCL z)rv2%))Pf@rIOGErT><=w`2w}=E?6nmXbFtjRLArrg}*YaSK8Oo0uV038D2Fg;&5w zHT8sS2!%t#%|H#R#x*r+fn=>Cz!s@M8Tg?5;}_t$)U22>yTBHuAkM!o@5g}ljU}YB zBxoT#d%5Lj-6xhDjGlPdZ=feUy>MO3U*@xUfISx;8_;tcun3xCVL$DJYm=HHmT-z{ zRmD4jo&e`QFbc^`{~s{I0_jXhcGkQC+#>D6@1qxp(Uhp;y`d41Ghhv=AV+R^9Kbs~ z-iK$#2~QRVApj8I*5KP&VC2vrfKC@YUvreJK{SM^T1ZvO*0KOz zgVlE>($upL189g-G1y`_62%CFUy`|CjR1cOMsm0*X|M>IhR53OIUswFPrYCqH`N)3 zDh)&q6u~(ogf&7K0O}yyQASrKJoV6g6kmih6)4Y}WCjuBDfsKn*J5kVbq8t?rX0+MkGhl15vNG*4DRKm79fkDeS6qste2*vL?gCD&bMZI4Tg2J z0`FR1)WKDN{SE~ez|l~5{w=q60sJ{wzJ||xdWZiL2lxcMKzDXr>Ft|0i*(Hnr#g{^Uz+DJA^Yf$bXm_tdsiB%j;wA zia*cfFZheF&!{q2g7LovfqTG-|DZELG9VdC;d7`sK^9>QD2Pij)H6brT2R9UX9OoN zEGu0?iT9^Am}wkfhm(r&ja-2!ikc?*J$f=x#c2DuVW?;5>bC?w8|6;Yh;5`{_+k8H z#AJs5qB?3iF6J>gAbmAn_+XB11%!VpraoG4ndXX;r@^ZiNh^a zI03Z2|0Uf ze%uLiiCOWI8S(-6pKxxocryJx3UDw%qH{#?)O99DPyFZ5s4 z$}>TL4CxBJO6I@;+=32(=9GYch%;FT;qH`hGs&7sR7}={z6MYvXbeP?h#hDJu+nRk zn?WpJz2MYHkme$n|2-h6Dv$&{ZhDao0_KxGdP<}SeJCkHy3X9jRF|&QCjMDPxSQddG ze2$K-m3(fjuKL&>qv*FBK8NxH3shfC|GbLPsK6Gv$P2v=Xo6aFBsX(}GlR0mT!3Dn zDj_V<1;KzMQXcZ8dgs*{WWqO3qnr9*T|=MB$V4RvUn5))A_%+$ zTuL?r(#TL#w*=2FDIZ4L@F4`CcffbGwFLCS8DaaSK(kSut3g)8=>*Cb=Pljjx3Bqw z6T2NA19YwWlvA%{fAFO$R_#+_PsnhOW9_Fb`9KO}EfN5Uq`me+ffwFkdmF$deE%DQ zF~C^zkZjCH@=ED(1Kf>SbVB*O{-~Dx@-Ij@#v5j}qlOj42}K+^$G)?|3VM&1AGZG; zD5gBjepUzJ0GQXz+e93Hwlv@U!fWn3^z=)3HdH_D~%XAaMrow|N-ezbo;&e)( z07_9iEML-uGnX6MVIhQxMNv~v-p723sDaFh8-{;`8-7sAmkLuv5qlAx+sc8HaOb3R zNCqY2s3`sqa#TBJ+4ZGkq|KHozo5b5Ek@B6dfSunYeL+pwDAlzJ}P#aH-$5?8N7~1 zei!T;3JIm+W5{w(cpJQvM)+0OE1fz@hgrL_JqtgZW1-cR>62_c6c5ih&_5yH$v;>1h zIfNa;4qOMUgZu&hVU=%D<6p`U$Q9K0W~sb1$=xV!unu{MieFNN62rBOH+q|u^k0S1JE9gG~#uwaEPi9By5ls3Jv|3Lb}&lw9G z3oR%OL>@#A7QrY(L4SJ^kjvcB%K&9?BJjSP%!eE9EZ>FOVO`pM-ka2F5K0c>$m;aWwuV?cwA!61sfAe_&RM`) z&}9kn7{D8#m;EO0M(`z5IU()_`r@iM1#WdA8^g;hpldOkIl3J7~$ zhGMu*)J^n@xReK<#39DCY3Cy#1CYJHAaPHtwcSAw6`E#M#bChH6K42NvAKDd(-_J2 z5uA8S*!W!9j#F6jF}ozjPlm4lu{4lv{Qw+2n0d)u~ZcZj>NE_Ay9 zMR@#N6T`%=octe@`Rx)G{Yyg@Yu|MUIlwhXmq^Hs;;DeIz}G<3U??CjFmvYt@GR-l zjL8Wn*qY-?q~%842O_rH>StP*HO-dX@Pc_(?ZPH~Aiur+hogC+ybkowMik2W$5#+_ z|Mof*TcB+tu0s&lvBEts-eO_9b2*E*nP#o`k0PU!IRplRwNLsdfRmYoo-7REd#t6A z&|L4suteeV-*uh9&XX$4Pf4cNKaX2p@4Txf>mDQ@Ps+tu*BiEu@^duSnr8z{f3iW0 zz5R!x1))w|o#4yF+=~hF$2S;$?73K{ekm!Ozw6z}z-`8IsyH0<)yMn6nGvCus85jG zHId388GW!}n-EBj&56SKU$y$!lL_&=VoF=MnW)JH>v zDJv43kN&vo|<+iMzMI)K;TrPJSy%x!A1#Ez8}{;@sSI}jH# zQfFqLe_deh{ljLl39eV_j77M%!SV|}%fehLx;Bgc$<+#=zE<m_fn&CHCn2h*~VDqegu}^QFBl704QbzwRu0L&#B7MpQB&_#@u{*Z{E+OyM~g%7 z&PVI0HmYyAWF8&EvKYHvQzC62&LrJlaK9;KD>Z#T&dytdjKJ%riCyrfX>NhQV^FdM zLrkPz=<1K(yyRkwS8F6$Bb(L=FP_`@A@hL8W1X;$a9}Nl@;}IO4V3;`lvt*d?lzOF3~H!4)NN#d0Bv0tjKntCEf)aKZZpZqi);3Wh|;ao?^Xi4YH- z%G=l_MMP0ccvLG2!8t24k|eUL2vhB2|GygA3gXuD8T>iA8;*HOrg@U*W0KE-!C)2C zEMS(~R84qqe~!og>Di~+(D_tBg1oB>9flwwkeeGVKu0r=v&=|9)8~cTJZX z_#){Atft)p65<+gjqqEIJ%QqYPjJ1gzxA|zPwa&a9PD_xl_s(BJ}N|+`3~bQH++L6 z_7B=8GGI;caZNCQ;oyeu z0RWSLQb7yDdoGUSQK!FOR)_Zx-S;XE`@l{ygx=%HW5io zHF4}1*694Y2VYzO(-Gl5I;F6T3t*Wly&vV>uic0WliYrP4f3vwDVzcOIO5t+zH5kiO`YOCo8hIcu*T7wv%9!sBP}RC}5As@Eu%; z-p4nlkU}?^qhqh4iuiPo07?FZ^;X;mNNC4&B3=GX^2`)iFU2zUi7`7Gf3p1}pCi%f zi1un-340@os66L2Owcvg0c=#B<7cL6`){>L>56%c<~*6UNR6&P4w?HHutcmw9=zOz z_`QjP-H8Js#YMJhQNaH=OzDawn?2RM+#sqsm+jNcWD+R9)P7=NJCW2|fl^t@8N4Y* z=00R}ia?m0+y(WK-p?y+XNY}--b&9=j`d*~!AL+*4W#i)bfATROahb?xlpx-1`r=L zMR?oCdfS)9NG@?s8DVxo280#zmftx8ILW0Ph*bb85mOH6^gw#)ef*F)L|;6q-^3ya zzNAHY&_JA`G7GiHDeby-w8ejwEfcUU>U_oJS?KJ7JtrPF)uAA?rr8O@f<0p4-W$M4 zAw}{Zf%HvA98;6Sq9-}m8{6XiW4@UXmw6OS8}|O=Z#{9>05gvOv&bowz&oPuh#F9R z)VGJcgBHdOiF5jhPA}_)l69&p-Ec3+HP-(_)LB49^@iPk0*7X#1WDWP$$A!rLGSop6X~pv}psNnMxLgdS zTsFZ0$Fl$!h9=L`VlS+Om#_VOiDarDgB|@^;0H0J&;2|i3%amj$IqwbNyK?E825_@ za&L1lmM72d-!z<>__w9z-@o{E@;J(JS#HzVX6bO@=A0xw@alBDQFCUvbZEKV%S9?_ zN#5g(c|*~`pPdCz9Nv#T;@4e;GKZEKr}pM1L5>OOcXN||r|F2gZNcMyJ>u3aWMY;~ zdLnmPl}cLX)%8(xNgz%0HC_*-ha`?Lj#foffzY+Uvn_R2Q-x?%!_g=ALdPhp?gvF8 zy^6BSgD+nnCE-QuhHAecc8Le9r6o;ZgT$N^_N^MIev`rk*rDwBdKBiSIE7O)21J^4 zD#^3t3S|jp)Yv5_a~|XfC9z^8uuJd@ z-x6+tx8(Jp17VtXML<%zw+QdCi%{q&0@KhFrTq_ZM{~y=*wf`Fcu=dFr?_j$ninPA zi#vLBpQg)m$A4IvEZ4r2n;;sWlA913*v=itOS~)FIj^}Da;__W!CXM!Af4po5-i+^qRw^i z2MNnhaDQ+P9d)egcr=CfWS`@w@>4v5gW&H+P2}GSC+$5%XT6`rZlhNb53@WdfQQLV zJQ%QupaxUo79t20zzXu4p)f$)$vrU+!3M$QY-K~jL2!9n(~!5wL(TLtbBH-((i_24 ztW<)+hlGG$S^GwKz;@UBv0wn?>SubAMB@Yg#-e9Ox?%lPDygb7hmVt{Q$Nk>H-=gM zDoY!2{+i%U@uAAU7;tI3wvdvfzirg^dyavYUeFuObIWllGx4{0kW|}{c)T>7 z$h=>-?@!6r4@p~%d8u;mXgUuG9nqlU7#)qzyM_G_ElD+ zCsV{q38eHtDfiq%ucxlTv+|cE9mbQm)#HD-5jcgY1r0#5xAcS4&6MYE~v5CHf!`r$6paAs=_}7I} zCsfO#uCT?tdzlfRv*?6lYW?Req5*Mrl@UX15G-@6O=!Y|jZo|qJKRtG2JNB&OjVca zP5pOM74~O=m6dj)Ns6LdvFW(PFrQZs7o)AFm6=APn}&&t(?5L|ozO{rrSAI(T3`jw z6zIr5ic?%&g!BD2pDks*|75X1na3ki^|L!ku@6=k6F3%3hwlwJ_^GU;Kv;A)F%_#* zxg8lE43rMNvmV7W8>kb^bou?o?U(Xbg)&192O@8Elmx0phZ|-5MTl+JkLX}l`43eK z$a_&YijU&6yWZs|(5KA00h7ao=A}X%kI>BylLxz8HfExwnjz#!a{DLtU+})zISStu z!;ZU}cg65>fhFN2Xfji`phFDRq~qB0W?L6P3_hQH3U|v0Kdwyt4y;M_1v_4-{mhej z%@(h+c|M2N>Jw16ZsoZv`lU-$C&^{UOi)9GhVi6g@z(o`L>)oY)lPxQA71wx6SiHq zS&Ep;Bj^tQv|Cxg`yKI3WI*_ixJ#MuYpFVQ_`iTx3sa;E!o_8w=O(ZX9MRZ{O1%&f z_N5DmZ0`hog$XKV2y>WLGE5nyY@u5!`$Wc-vJh1< z9FxR1EMB_qK`q!h5nA_*$rT2v07c)Zlkhmf6Qf>V#Y#Z>n?i?L zVWGxjViVRq8LGu3+)Afb4ex{;b_u*6vF`%B4cUx|Cf%CVPMC-|}IK$&Nvwv6ET zN%jVbtKk=Nl3%w^G^8!7-)lvItHMejd@%a4L1mCjs@L#90XS5xnde>|q&`e5Bi9B$ z-xFG=s)X&*{Z=(d-#yI2?6k{0bcE<4)Q{=A_($KyACkt4S$u-;4(9nzvEG=o(i38m2)d&Ui|HkCHH-ziJL^%IWb(x}Glwy}S(YVEV9;hFnT`em5)? zCtn%*TqOojM%BY5h;+^|ykDhob?)&M|F8+OKTEPdJE7e8yY#e;TM9qlR{sm1r`Yqs zgL5%bg|9p5ucjPQ)8%vBEClF(N$*Z>TCR6)gjMxG$nY)3ySkhg0~Qd&euYO*xHRgL?;Cdta@pM% zz4dH2Asg)R-0KmA?1O6>an?QZ@ioOT`wg$cuev5f#>|*&KY>aY<6q)Bj zwQdhyitOBEFvA9^sOPD69_H2)wAH$BuKx*Q$P6;2ud=JtNDkKtbr-rN^~bHksv?lS z);K_D5hA{U=#d(umzH)vN;zBBZw~dfsikNgl1;d_=!5t*Wh8%Wca{d1`^A_4y{{gv zz(RcoBW${}@P>^Qx?DS(@P=;(ZTl+Ar4x_(i>C5(H0ytHO1-G%kd)PAV76qMO^eGiMspXlDohxl9CqiE-Il`Qk*howVg8JL1uF zF}EmC9JLpm$Cmj<;LfZqRwKLsUHq_3bG`?rPo05C*@>@0XcTc04(633f8GmNmyMI@Ti{F$6Wuwv(C z^4<0aLI;xgGD-2=QzD6G8MV9^{B`ld>{8=knOHjOV3|X@2=Q)1`I$!8ScO)%VxBj_ z6{c<}g1u;k=#;P^-2U>5t zv(ZSi;sBq@G+m{CZ0-MIAYmH+^rOu$VV&NmXR`p}B_Kzu>b@TUFsr z5E{MGAWC*kLd>5D)w+%D7giz=sZElD6- zaAv0NtlM}01lU3BA98r9$RK12!&NW@2tiy%`Q|NFGV1ELa3qdpK3RjV%tIMNELuAk zF!~)5&_{7gK_wq@s;P7#x_Bj!l7u)ro)!jjoCNveC2KDGgK9OeMI%nMKM+CRlBhvV&nu2?JyOs6hxI`Nv@Rzb!9{ z+^bSB7p!|!!1Au@ZP!eL2LYq=Ox0gB9KTWHg3f`2vKI#gY^tgKL!iHkXi7li?@MWwlU$8FGAiu?9L|e^>VH zh99+zVj?4guLyVmqx2JE3=L z-r0T~m$R8R>$#s}bErOBfz27-Whv6!M)7k!yM@+HuM^i{v30k_UA3il;iN~~P>nCB zKC8G#d+RIv-WT_@ALko^o2XptyK~NWTka8n**lq)+rf#ldk;{)9$2jrA~&0(f1+`& zJBy};iR)O6+NuWA1sA^oelMLYb(kfSoFl~HCG|(1ZEn=ab@Ccn3<>I=7P<|AU||#5 zp}y$pjT1<*@S1Azv!;8~hFJIK-BDZ1X5%uWH|g%RyhYuG7X`9BWe6qu@Dszau=OSG ztf*_ACa@rUknmxC21?lEWL9&Qq{|Wgm&XHpjg}(XW&wmkMuiDB;JZu}?sc@R=Up17 z@mCE5l>04GkI9DcSiZvXRzmTiz95N_#1zp~q6#Kz6zbe^r$7MQMSgM)q! z6l=nn-0e1t(3t_2v-eS~J`(g65^N@Rc)t~SRJy!fb+@XCZ?GcSc&NJ3&kxbh4MW|6 z23&(AJVu_DH0lo(_ySUqeiT91N7cc8o5pdP0nwC~??r<~Y4Lejm@a1vO;P@f+O=OF zH`zoOT;f&#W1(oB>}q+BDU8w=d;xpmS!%#%M(eEAB+50LNuKgD)On)Nw9|h#&*SqF zA&Q!!()J7N%i0|QZ*ro4DFhNSt}DHB$y5OVc@h!fdo}}^b{!GlL!TMvd-2Q&q5M*2 z!o2??#CQI_T8N2~LUr3pE8WDR=qufuo@9fh8aMJ`cfNtB!1TRoj}eMg@tMP}!hfKD z%(qggwkVxBGFrvU1^CFFl0Wj3!lbqR)m`aguWN%|2xE$}R__WD8AB*uv72eUvqifp8QKhYA zIxgUfsuM(P(c77z70IRT?rAsjOROf;KpGemI0+F}1$K~<$O5}g1MU$ib2H`%%E^+Bq}j}Lqv>-aqOm?0&% zfkxTj#YkTyS6%~N*MyQCf7v)=q&;eiakDA6flj#y z4M1y3zCAjdV2wiTc)Q^G&*6Er;hqu+tgkKXy5HB?;d(zw$WlDwpzkfdVp2Y$Oz4IH zmT-+H$(<$4$YB&x4ANklc$zxI>`P@nGoyE%Tekek4!ElO}SBi_DB^le#*T$rOL#*`bNh$1%|uMvmW=^1mBBlrpIq)^o(y zi;gQkSaQm=&=l_2ZGVICI-6e5PB&}dMQR{ z*e$-Ys(e2Vo@y-Z&>U~pW0DCmI`x}&NP-DY~^L}D4%{iN_Z~-6>e4@ zty!*RuabG&rM60Ce6L}v2%oABRM$}YJOoHI&FYqQcp$f(n#!q1@rJjGz=S}qX?A>X z(#-r{(>eZtXT&D5;D4!z&BwwXov#)Di;v8Xub&%^*n`gwV<&#kyKZOKcKuU+E^T>n zZx+PmOk@BIkG!71F(ZQ(B~G|@c>i5QR`$;({@p@KR0qaD`WEHow(n^ zAlp_zJ=J@+VKsSwCJ?3T*rNq3P}rOu*4l@RA`B6TZ>xwui@#jr)vsrVph#?|)B9`k z!jkBI5UPQEFa?Cftxtb1x>>|FbB2SC&!9Wz2BB**SkFIVdvED)UQKk63ad4rrflmt z-M9wyscm9>&EI)dn2}Ns-M=2-jO(%%74n=>dphgfzfu2Ccu?gUWBJGf7#w%x1g|;R zTo&bqTzB%dU=Co2M4%DE+z%sJgj)qrs`W3yFFebEWuS3_bAY`5Wk};z(bRN;Pgct( z++$dz@FdpigY4A^(&n`y4=L*J7>5^LV_^=JzI0AK?`N^*-N%gN4=2?mv$8uT`G^0a z#phuQ$}wj+{`*Ca^*4VF=;tn+%^aI;yOo-l7yzRzlV>%bU8+~FLoM5Qz6UOc4>fI&% zB$E11hn6qaRg~z+d=mCj{NYx)H}{NhA#ifJU$UWeoRFR=CfyYVp~&DUNnJ~J6$xEC zq&7TYNfqLf7A|$b0u&A5o|puX=3cHNA?FJ7>98;%Cz$h|E?C!RLng!yX$Rju{su;^ zYenz0@@O;A_C%BLq9)?9rdOT<_ywZqRF<~^ zDi%Bl8l+QM+lHX5;4FvV!01TDZyhb1Bfut!PGu1viV}pItY6f-URSFsagkL5zkv|k z1abYh@n)B9D-O3jL`q-AYc6MwjzzVxJKxvhpD$3m24vCKSKK5L2uqCT z;WywesKMtFfB+x2)-0@TH&;AtDJC2y;k*2BJa!rkp9{@1<=T50QX1`tI+Ji;(40LR z4gO`~f z(?|IyJb+#BLq5@XkCex2R6h2#q|GW5t`EW0w7dpE7b#rrZH#s1D;2pcxwG;7A}e`G z{^CL~a4zQPnj!MfGSB!etH(?&dlPUZ&us}wAVzDUUW^ru%%Icu`^+fyERgcn^k`n ztNt8niqoHK`X6Xg)1QLqE9JTH!dt^HzU@Et&z7v~PZmY@?L;o&lbK13cUeoIvckm# zr?IEcN}#FOBmp=s8@bh)(mav3w0Z1py>y$obc8^1O~~T^qm?QqiV}smf?e;efL9Qo zFU+%fBO&Z~c_ndC+>4g@`6WH<-<9Nmv7o`mO^o0mE7UsCuCFG@c^vskpaJB<5ZRZ1 zGWU&BWx=FBzXT$sudk%U;$lVSK^ZZHtE9sYx2)tXV{YB-;20M>5Ir z9Kb}5+_I1Y&gEpc%m+6xL{bqVUL_?&3L-}G-cW#f6h`o+cECJ{5eRU~s6n1CEQrTG zCQs3Sr_ub7W!@^8r_%eBU7y1G47lccJQ@;0b4jemb*PhYCWM^-D2ypp;G zzsxToWaawHTtM3(87W49P$cu9%6Y2d0e1g9u(?P2wfp58i6N&$iS2I>^7w}?UOzbP zCn0u$qQj6GAYqN6pGJ8Ngk8JrFV`}_sL$+uSDml;Kz#QR&X_kK7vV^KfSz;VjWj(R z1fc_ysNRcG7KWJ<0Vi|TyL>bfp+PVmyp3nl{>Oe`L$>M@r2jEuDR_X-KG1bkS^Z)- zy+dL2Ep8epOXRb=Hd$1y79c!z9FvvjmhbcOgU{W%!`DG8xf zb!Oe=PUd(Z2#!o+f4OcCK{=2OA~vfFKjmTUOGP8n!e5)B-aWSi4}r6cxPTy?=?6<< z@56#OJ1=U#v&}!y_c8M3VCcs&d~kq=PDYX=lgE?|D(B4VF9pe}^V#)6gh9@E?1mwP zrOruxD~0V35JqDCV#eE(sTP}GnU1G49pq{rBJ5vWIQwk2e@j61t~wyJGJ(S-+N1Kk z{1ZXm^oYN%pX^q@zuy7vKO4c8KkRtv2E$MmO7#Z(Q0YFyMGk45WVJs9O-E~+nFmJX zRRiBN9hDc5wf)faW>SU>Ta)J52*Uy!h^Vsfp#C1nta9rJ(7TM1E{Kl($aas^AZYeT zDf|23@gI-N-1vrkHf1hMwqHtnu%Q|Fq;4yD~L8o z`!2lb%R$I0KH8Gxgmka&gY_JgJvTftO}_WE|MJ!C;J-4OVVdfM(u{4rT7#9(Hpi{S zHyozHDYYjrDCCSc3XKUPL6I#<`LaMLz#tj*SoCw%czGY1>$nV`kJnpIbilQ`3~9Ki zm(0i2T88%~*+8$e;vXmd^K63&RK?-wmnsbaph%%=z1Xf31CA%FR3|&t9QP{??yiXM zuIMPI`ZnaNN!n~$Q{JmOA%&xG}PiQ8)A#J%Yye7dhQ#w0b zhAUi})!w$r2CfQqroH8pDr1pTnl1lEsZ)2nnIZ+zg5Yh?w&@I?oKQ=hEm95F2meYR z1z>e4^A8#JpB>U+T9J-ON8VjZ260mltOMDf^k6C9%{&-T8XNkh|5qA|7r>f9&5$;b z|KTXzbI%=R4j>^u$y(eIOrvXRH;KNF9-d(r#Nho;a?$hx(1I5Vfz&G#ZvYCX`w*ua zk&m~Y_tr&m?0jQ>Vbl%%=TMk&9YG97_}8g~rafwVhWu&MlqX9fqbVGbM;E=f$vUzf@$D-{==h!t$tTe{I-W|0e6$%DevTfn>3i23Q(@zw3Qgvo zp}}#@vsDT)M$X#wMXi}peVi2j+hXHE+ID5b`C;vrukzE+2hYj_F?ji<9|F2|xFYof z4#{OTJ)57nKCmVRfVjY#t}ooVPZ zUBWc{*7&5U0>NXQ^1TODK%gy zjJRJ83`OER{iEV6jyK8QjBL*c2e<@=S-x&FUjeyljR zEk||7kB0+Y zKsqd2i=2<^cZo`Bvb8SxK-tqWsyC+(eaoZHz?k2fgwH+4GqnKF!g?d*jR(lX+Q#TE zAoldcGz5kWdzw_rHH9fFBQjS8;FD$!v4k~Dg z(piGxOjI)#P_r{@a=o_q-&d_5%;669!neV;(a0g{A=*9$DtKIfsJ5b4XV@Ry*))_e zZA=F4>?+6vHz@E^w#?iI54J0*d0&zqp5S@u`8KS}pcCS44Ya(r3&{LYaQ{7EVPPG< zzoH3&v-P}v%6j`VjMN*e##Wh1*_=Edm5*zjh;i;t75%kHse%6c@}%lP>t~b~4PyUA zAJ)Oo1;l>(E0UOAtgPB@wd&Ibd84#3{UTEDUn6}VCsOZa2?9b_R`4b0>~^m^Q|{t2k!)9)~EJ0R%r6{A)8)I&t;cA*v1_$Y?LbDH(Qu=N{Qf0>IF&4TL3 zq!qJGR6P?dHDwv*{b`zUPKe6DYGXGiH0KU{@`r&jxc<}8@4Y>&w#VkQ=8}OI)1{2T zXSn`|pV(+P43KLpHh>@{t}!o=Rw%~0ap?YtC1un{f#$`XePm8*{xtB{pGKzOYTQ}Q zCF+BEEGH5mdgcca#+!yr*Csh4cd?v^51?p8h%i0|_uy%;=OZtNqGdA_+rc)LKRCMt z_{b9EGyUBsVwT~~NsITA|E_9YU$_IFPwWxKA_I{zyE3eJ;F7T(m3(ML`H?mnp`?%j z5&k-;K;(7AEC(8d3Vz1zIYV|RZ<@%ODm97gamsI zO^!r7kt|)U6g^BN^Fw&ej30A6r%WvC5o1xETyY&^d~B~9i9}^=f6X%~qI#*$Zqh?O zU{SR|GozHD#UOPS*TQ@SD@FrR89l~7BW_~xLn4;e6|;uuuMx((F1l<-qSzuSn9InL zbEYA-ql)+T7FB9155W{59_CR*PgH~iZw)YhNJ>p&zxE%Rd}43M3SiL+!o7%0tN!6H z7*D^^MWmV1a~k1yIvMT?$jIL4gO*LVf!3-4)09^b6;TFbaF;dqF4?G?Qnr;k%KtfQQa$ zA74MasS*}P8T)6mZmHhKGd?1Dj~!9h9ojD$-@ds@bmq?(G*LYPen8@*)2@&G;`vIq z?-=wk%MnHECioK}fN3*pOHuj1uIc_DslGCFCju+4X!tHbCDc}8@7`2b)-SMHQ31{| z6fP}%cO(-qMpU7Ipv!XfUqcDf^N9HikTc178t?}6tsZEwxX`%2 zEmfUte0~#=+*I;Bd;SSUiv3192=n3~5-& z>yJxWE`Lkx~@&q{Hyx{UuW0LnuK5roj{g3gMx8N8@_Ef#3z3Hes5+7=Wsc zXBp6fD0_<5VE^SMLE0Tf+MV>M1;+1>m7SOKDGq_;LR2#rka1{kP(%S+uR}*xG!%tR z;Vd(sfC`I}nn|`kl?MB}9$N2?QtXaeQv|(r-;9dFMmRv6n;JAw2FPljJ@NxWbVgL0 ze4y9JgBATN0+PQ%sP9pVSXUqnaZoze6&7YQkG6-F;<{E<^2YyzBZbg3kMIy~546Ya z*aUnII(M2UEd4$AsTSKiHUpm~1|m!$CX<`-53=KNoMgHOx}23LO%X>03ezGb&})7q zToCprKoDVPjYNqsso^{aO5?7>AyayJ7NWOy6Tp+ye14xjaAJNie6BWX8+gH+cMWzH z#h2FBeG{QH9>=7uBVf+is~67h$X8BcL_V`>Y>zY=&I^qG4Rh4rjL_PbL1T1afEYV> zrNC(b)@?j5oZkQy&$W~Zi=iG0e-4${F0$*f6V4v9nB3qSx}Nil&iE~#<)y>@x-w&7 zYmm^T<1UB~1A_Rj$5u*&#zNgdP~pF)-R(0|;cvCcYF}ZKke0O~SPx9NeJq1IXG8|r zm<0pHh;Y4(T}~HGC8`p3XIaedDcRnRRTG^p1eGqlIf2m#&(4;*1*)#Mj13CYX6zRg z0->I3lao&w*ss5OH}BG4ay2P!zIChi^E$|`?wMnGczYE$Hy9A3fAP4GzTtLXA2z^` z)18ySyLtl!0-Lh}1fn}d#685q?I}JF?@@XjH_cCjUO7>P(|8>#M$Ew)cGn17>%n^s zwh-4JgJvh&?#O1Rn~Hi7R6$13qvF{swe~02sh-CMtzF3$Dif_ z9B@v+nk_wpPDaXQOui@FDZO6&uNts1a(emR*nNy-B_ZPzL&{toq;aW8F)nuYgz~5+ zBTGi=?Xgb%73|jF?xrK0oj~pb>;8(VDJbs6msHCF4ynTSUM$i}HCXNr`!#Q~QU4d#bA6b-2xxc!MvS6=mx#k zLem%x7Mg8Qz3VJ-IER0(x^E+F$dz3=OM&Ednjhz(eLi~2^ji%((S<(aoO)nk_R3_? zXy$hRuyqM!Dj9>{_olPLD=5w`yAKg^hTrY9aYQ)E8umOw^Fa$ z2ISgAJ)!&ROOj9O%!6ZGG)O2!BOfro&4rS^j0W~Vi48Jk`_O3$UQTmq)D5$gIiU(# zhQyEyp(r1=S#0g-Xm$y6QflWq$UBDTYL zW>MQ%mQDJ;r`=j2F|3FDj^E`nDwXnHkwo2gcC&E3U=pxafl25uW+&GHjYPu2hYjcZn>PH4 zTr`!+vqfVgg<~V1e(uKP?S2{s&&L0pqK(;Bb|*!LrHO;Zxb=5i(|!skoHUQ=C?Cyj zRx!5~GNq3adq-3!2LN^IyJ(T^1z#-F`ByMH+_0#^(of!mDmbBo12%l|<5D;8$> znE{!LdBtr`X)Y3>@JR7-^^AD>&k*Gy=j|6;BBt(-BUl%y>*?;u*99`|6C%`S;C#`$ z#6rZr+$SY;6|hZHXFc>z2oyKxRBof?Oa4i|l&?$_LHZ8vAxVzy1o$Owe}+Xm1Km5YBkL{*z=*FH;`(dk0U#ms zyyr*%zkS!B8{#1S*V>!bB)gzJ<`Lc=Gv!%MJuizbFBUh`+8dSkSET)_YyLmS)3OJe zC*CU2HYaMmg8Ta=G%Cn|Wn`aF$YmwUypTt)slXyh z1JD>{Q3oJ_B9$PB~IySRSZfF6;iRb?hj>hnMfRwh^^alo2^R|Q>Bs0%gdw$?G&&a9dgbsI-%k!G9j z+E)HM@qaS0WjFClan-mI|5Lz7y4o7oUGo-|wSM1rsBw(=^DXOluiLgj2DcUZCQqis z*K%(54Vyj<5E2cWo7iDFJzo<8tAW&dX9;}tAcMWLj9-cAQ!;b7_46lGx-S`kP8i%- zj5)M9lJjsdEr_<)pY|vntBTDn{{xV6OK3Ej%F~(38>10kY_QG2&*4gQ-du9uUYb=Y zax%%>d%ZUzd$RS&H=&fmwzYS*7=J1@bo=sY_jT`U9kIB9keFVY=W7hul(lIOVRY)h z`1N*am088h6%)_deh=~6iU@uBc+Y%H1UGb*E@+J}lNC zVFR-!`lu*Ml`~~O=@y_F>y;=U6UrYGN__rR%<*flzlJ=U4zoLN+CGz7)NH*SK)m)| zp%%T(V}PC-i9Yj-slwer+UE(c7){jL3y7)8npOC#KQvq@uHLJjMeo-!-Kf~a^N7yF zpEN+fBi7@m;mc{FcOzmA7!mkxKn(7eLI0w6+5l~>vMIP-Wz7>@4K`&PqwW#zHC`Ms zdq4HfP<5@oiIEy_p7mH<@!D%L!~=c$dT)FP1lmtL54#KgCv0-9gjoe)VNwUOcY+fO zGS@9+;-P0UcIFy*kq}>Pi;mg{VS~ z+2U+`P@i^#qBI34so13&DGv&-@c(w^f|pXTVd&0`_?^eZ;XgjIq-B2xB!yz%qxo8@ zya>KVf?Om*HDvy6V~3K7;kt~%{P57acm^{Kr$!KtiaflAK9ntTjKf`hef>Eea6-j3 zv6y`hRnAPy#Jn4aKP#f0vs^j8y3cMPfNt-Y!`ObCH5gb$Ky7h9@-K2hXiL1cqX2zx)O{u!5F5$9#fr>63cEoc2%lT89xxj_XpL8qZ1DvYO>Y7dluRIki>!U_y zC%;t;(7}kzl#CC`_bLW3t}%8ZcC%5js2YR)zc&EGp}L4o)Ez?Ri*vviYNnj#gFGh- z`{6l)9SRS=*VPby`TWBO z5(v6dTFmzSxVp{%?`f#lKt(oD#V=m88O(Dr|AGg;?sM}wVLcZLI;Wf8{jmG*ksthk z4o)FLbB~Vad))dpJ#;sCDyTSE_4TZd1IP7-_Fqh{e^#8tF*_$ zhc_3wAWo3klLKy(Qy$=gdoX!&N$K-Cxx&v%D$N`v>GnM8=IkBMz-Kgh`EchcV;C}ALZTw^Nm1gHoke2Bz7K-pc4jBHbHHD!Tk@#;4Xflu_nTkb>q4$h zewY}cr=^3lhX?QT({NP*2jpxY__{#UbW(Wnx7m-MGXA-IO?`t-<#+q$HQA{{*UGTx zvl7;@o*RBJcXp7u`>3_Qaum9ql~&#gm-JuAr_WfIJgV`Tmv0{Fy+@5=B%zRODd4)0 zGjQ+i?2qB+HR{7VhzzF}rHLIlq{P&O8=b29BiRlEs?D~b5~l}lj{nkxE(hd!@B7_Y zx3?Y~l;xM|*>3?)KPG0}o*J#^&xVh=chE1tda>L(MHdL2X89ycr(XkWd4uLg8Nu5_ z9L9LhBxiHY_Mp{9eLyiycatOkcQ`lT;6O28L--_j;b2%XRr*&fb*%qWhq3$xg3Fb~ zp&0eR?=XOLiZDx<4-yv|JS2~)rn@OJ!Bm-G))u*Ue|P~G+_9sDyj|fNzWBzE@8Llr zO$VJ+7~HGleV!ff1{!I0Jr9bx;czD|D61=NSsr%Qh@?L(+8cA2Z zXi3xa#16j}-G~>#6y;_(nj5RFrq@m40%H zhP}p+jfRHbt=PqH@AJnf$7{xgeomkgY1PH|`E3cfd@#VI7k2wrKiR+D;#**H&=>F7 zF-x)7wy~-j^NTla`N@G5Z|qjeDafG3eLVF9j-D14&GJgB;>pT1Th3o>VmhlfS z@>9|uWweYF{Mjjd(DQ)zn;hVF6V?u@?#At!ZXtILMm>7AO-(1GXwhLQbWsKBywW3% z0i=H~ic*^0>t{#jMpp|Jdz!66n|3YFj`EOn$SjQ8@&vuSQv8c*(F^oOl(bzF!-a?Z ziJz^E_|y9fYcnTtLXsPWxz#%PHsv`SQQN875tGNqdO^lMqQ zC|8`S>AJX3-1OzU%!5(LiV3fV@2VTB#XuVS`Aa{YFVB5^UPk@48?kj8K=CiH`X~_& zq%YGQNb)Y6ZJ7-Qp_ALwgBBjUeHpkmSqT=UgGgWf<#%2#`N!jZ&XYBa2#}+21XgAi zUX4c$6&HQnlAQy8%0^>IEALk&@?M>$80~A8Kd$_^4eR0b%Nt1srdSlz7=26SUs?Tyx7x)1N4D z)A`9*Sx|dROCiORHERRTRoS&dZK>CRocr;S&0x=B*DRzY$WPlR1t41A>2kh*{JgL= z&QGUN)8P{Iuka}FPG2oP0wAc%7BE_UC-~$jyExGwP@JS(W;h z_es~(>hjdjZ)F$MC&{D2wQp~9PS!*q-SN6oWe5$Mk^EBQ__FGGwd7Xg_`YtMN}8`! z-NCW9bA1uIViD85-l7jzIFLG}{z@_|GKHdmp{;%X1vv&P*4ZRjNs~Tyn{3jGe&NBH zoyddDTd)P6*J)G;ca;s-PV8H!l^1muvCvCu&7lDSBMPIq z>4d&YF=ARV;>yz5wGGRR!a8XEtt2sRsXJ}WcIhk!Z8O+~$y6O^C1%aJAixovQ98>5 z(0^RXPO|eCW5;{Cdv8z5yDuj2XEXW&h!o8@&%|YdI2YoJU`T9jTis%BzT|Mw#FM1H ze8#Zga2;DL*Po+ht@))AAO6sd{h_-YTYtN~6l>zR1pgwmu(x zvt4hIUIvEu>8S%CxkwP{94Mp>lj zJ*NTMmnUp?p1vC@A=eyV3X|ID6w9Rf-Uj;r-z|ExWyS&O6ue25Dz+c%U7y;p*=dg$ z6)NaHh(1-U2>B5-iX}e3>^iWBv)x9_u@-& za#)h(HH7 zQuRhwSpU@B38FiZOR`mJ*DN;a{i*17DV}5}ZMy&R!;0JNFPHN#a{=jJ+~}%bsXqlx zmk!DH`n%NAHRXSqd30wBG+j1y8^1A4ztf~QawTtj8TX`QNDC>vb8I_2?wk~Q%5ave z&d1qdexPeSqqCq3vIDh$fj6ggtSel;QtwH-kWcz#|DX0k-HQg=YPez&1%L>osVj1Y zmwH7K{Yd1Bob?#NdO@`7!Am+|13E4-le*6cKk8+`s{UN$8}HW zY(WZu8;2T$EtZPCd%cnH2)RFJ@@FxjzT~^HDak5`0|Saj(J9Hwh`kHjiv@-EVIPm8 zQaVcJwg{*Dz^rb1*H#vC4(imVH9ZY`dclvxf1>&+Fy?F~u+56ZKa=WzUCh=v(X-5v z?4wZWg=Iq`FRuQ$QYdUKSmHOt$YN&%X?%1$6DM+Z9RJy? zo5KuOb=ufJSH3r-8VX+j5ls8s4a`Qu76Ld19;M=xK8ib_J16C=wZD6W6i(i%$LNJ` z{#`H>Yv>wUTbLpRK!T7-5Bdo5iO^B1LCkNU|M~3rxjgIj#+{x?*6_;uzqU`#N*(<> zhZYywNIgK4yIzG@53C3BX#Bc%L61fxNtJmQ_h*=0A1O-!aR!vgicZr#`IE6CT&w8ByoJ|7}0qF#*|aj2#Z4{w&QLbeyiRJIsXa zPkFc^pD25D-^(=q4?KRj6AA*};KZY1tWDOQO&I^r8JgqO1-R@Av3B7hV+S_88&7_Y zwIX|S1=2vgTRb`8JABk`2TUaG=5xme{L%5jRp8$GRUcvtM=U1{{FoPtY8V`#B?aE` z2YU(~=URi2VHfEIXXmZRPE^h2QC&O$+XG~H~PNV>S-Gwkyudc9`9|L^wePTUwF+T6v8khg-BPj^)i4@?_BP^nIb_=k$&|j zz2{fGOfHeLllaa0isq5Z_0xB^kwEZtt}o9)z_!&D8zW1BICm*(+{H4pI)X z%$O%$({V~YOj*-ZtD*Ug5g0;Oq<)6!C zVZ_smJ0#MxWy-zEip%#Q&o|uM6_;0kjgx#1yL^+`_@f+8x2Ak|e%XNF*midD-hn3I z`vAmC-(_|d07KZ5{|iIxtSdj$pnoSD_PSb8aCvzk=zwhUVDILihZnbIof(Y?Mq&AW zQl&q{$mAB58867~WxF_zNH$MS+Ka!0uJ>?k=i-qo;zDcU^4oi=#L<&M!zJAE!upb@ z;PJ@^GQrcpuOj$%+mpqSUxpzvbLI>^wRn^FBvr>JX`gp`IRFP47WNiTNs^zn@b*G# zYM_c-jx1nl`4?$EncTf?(%ER73HE1zKq_0nYS~?^nOEJz+^Q$8(pDjBku;VjXyRQFNt7Z)1mj z`56peJy^V@?@_6`>T6EK@M!38=$2iBF{&rO8S#SkjI2h*GOYSu=hb_?ZY*OGU#?Te z4>MWyWvd)n^|ct!_LUKsf1l>cusr-$9jz;q$Lyt$=W0+eX3adjS`?e0E}Y%yZqxMQ zfti}MZkY`1*{ZQfkwRW&T;r<;wA^gNZw=57W&G5QWbRVCJSbzTpK<6M^L0(Px03mo z@K~>m4hCQKwILq(uHEqB$@_x#E%h;LJ{Ldvv44DHT$&eGR>xMl8DJXM@3; zWRrT!(i-2aPq%y)m1X2_9E#>GseLaSiHME%wY*W2_254Dt6>*4Vr|?@-yp$x0~tog z-lp7sy^qU!^~-vKyLa;Nh3qLemn~!}0_e^s3Dj8T)z&pl3*EANSJ4rftNYsH6}~}2 z^UvgN&Fjj1h%>)m*1$boI`TZ$f3;rNK|XIfA>e5tJxX$ZglE3^*@clz_>gkwm~!Z+ z-b~+VG`*sBzmrS_Acpmm03@qc&!^IMF9r%e4ZB!5w6y-W`d)WZeM3X$Vz^E+&kw!9 za>A%c+ub4%xr_eei2ai@p4UmiDh~KXU^3nAo$aD|!egg|0auJuxBmJUOt7}jq}3`$ z<`>~1;-dG|Sd9gXq$0J^8IJ~)VGxOOW3&tSWud+W_)|b2_^0-^J{aCV_**Ks^V{y# z{b$Ip1rJG+o%Ew)ukrMVue8Q4u==VHsd)G#Rx)CZSdDp$hE+^hL)4d->-z^>5^}%J z)~!5zgRNtIUj#%B1c2$3)p|kmZQQ-Ye0;;)Pp3f&7_;~aU~H_uR4$qBlETh|)#O!= zJoEgv-vL8yO}r7|l1VY@T>Y=3mj>Y2edJlp^F}Ok?Mi?`mvvO|y>z6dTD|%G53G}w zp^rxt>Mcs-BW3lg)s!^A6^(QuQv_NpJL}}C=IZ%KOb+WP?|XqrkGRH{%JSUJAHL?( zY>xEryE+F64QF;64t%l&HuT3T^{zE|R&vJMf9uG&ePCYZk^s`b5IK`}+0^oFjIT#@4Ik{UiO8 z@Fbr9))e|@%O>U-p6tY_RfB#?bVt{&;w4^JUyG)_PRs zJ@qm1<2=8m55Q2HcHEZX??}r%pfUYdevboS9Pxn9X|+4fU5ZYFdTsLJD-y{y1FYw~ zpS!%nA65V3_oumB^9=c6FSN%IdG7SABWGN^=E;0a9GKCcTRyOc--}{*GOfs5hRKXpOU9AkH+@LO0gCgJzg-zRzwLECw(KiU4CuQ1y&~XR|nf4FXhHqLFW5_ zDDCzhr3B~hha9UYN!mRD<_9%l@?-9$LUlqnNkt=h$X9|Rwhz=kui11R$tx4`b8U>G zTo)aRwM1J}>yv%?4V^_{W>UvkI4N{Nu1rJjEBDtt6ka=1?=1& zKxG8^&!RrE6V9wdw*;YdY`VkfI!EvqisM>(Ow<#217G&mn0B zQ;E+>@6cR%Vwrs@=8#l__1Gbjq&ODp!N%Afk}36xza)CAliYtFU{T~c#dcmGT%TF$~oB~#pfR*&^k zuc_V0xA$*#j*%%);mXv$=^6D0GPqta#)B!2Oe)6}>Lix1bcOCd{n!+D3 zE@KBMn!e1HQ`H{+aLuJR6yo@(+{{@+t=t@IU`yj2LwD`+zH+nRtas{bHES`iyS)d^ ziO+z+^p<}2?j3J6!bi@E$0Q!2{{p=~C=G3+)aId>CC-nWW7kVesT#m0D0ipT-HSkfagr?;dj2y zl!gmy(%(Gh)C}Zm5{S4X@<>6Gy4S9H)*B5DPI-nMLCpb!wZK$c%3xTD39LdnC~mfov+erfH|%$f4dI&d}?Jw>9x%Sp&+`FjMxf-^dbOP!4d^U!0)~J3^W>25Z5o zpQ4^nxL6VWQo}fpdBS9_ow@M(y|?O!sK5WES^y2_-c@Opy=f(<2+SGo7S;FD@+%Yh zQ0AyVF(_WHlR_=!*pKd99MN216-Ok5X=umD8Hv4J?2)RgeTOt136jz)?X$s+c?ZZX zIs+=DxPw_vLMJry`JcD4tS`zc?+_hh-`0IM{D$jO4e6bedX)T`5Tn{!c?2P(K|7c| zZ_GZ972v$9k4b(==uruooRdP#GthZ*qkod{sfK(TdSf*9MtfG9%!I^*OX07k^pj)> zg0o7<*qjvmyep)fZU}I)Tw@njWcm#A^rQfSK%e&a_XJdOhXPB@)z0z)Is2(ku_j@u zk-X;(bX~H8##5STx4#K$yzVg7Z3fWmnKuN%m26@UI?EyD^gCv42_%)#<)B(FbW&;( zm&fq*N0+VFDwBy>lE2-bG>|kzHU6A?Ogr?DL-7fhtHyhIv_JuzD>veo?j)r_nVeo8 zS94rc4%gcCF~%Y*Zh&2vy>k=W>G!XBp)C)RDx65&xs{DH~3LK9U)1mT=JEOf43VrJ9?2QHJ|PsBY>EryA!Nr)^IJhLJl3^Nr#P%U-Mf*RnzZgQD}s`P^#2_w>TX1> zWHyFHKQ=3E_H#6}EuB=!&Jf{NO!wnyluiE<{r77LDU2f9IM%+9;>gLcE;ckfgwv>F zzIU`rO3<4#Jt6gznUVpj0?@IM1axd(e1*VoLnK@d!--}b*~X~%g6ZEd`~xMbU38Aa zb2_1tbk4hXF)5;a8se+v*y8Mxw0IpE)Vw(guJLvu+gD{gPDkeU{3BGJ%C<4ezDP)}TXaS`BFH zffB&aJ~HIn$YW~F*0SMl7I)Dhe$d$*`Y`mts`x){`RvJrkRPi*9x(!~nP8wbQzDR% zCT^dsJlm<$e%qeX{#JU7#G(P)j|>f$aSk5O#7DcgO2Fz1!Rz5&O>TRl`7Sd*2TEke zANh;_4l7ofV#xM2oAj4(xz5Wc;i5fmjMC-tI^7~>>*T-Gx;EW6%BZow^WivJ<`~5t_HXj+lE#$n*tnn@Lc;QG1*r)$Rb0~lVuS49$Y)sL?jA_x)1=lJ#Atb0stvZ$0O<{2= zF)4V#TB&xewh`)b^1>*qoBxn>>tBN1j%mxkWMkm;qAr2V!uaO=$v-|kUUK>Px`eQV;6tzN>=Pc3t;Ks z<+h7v!VmZ7j`ru)_r4XZL@zG9Fv{-c2gr44a=}u0-Oe1hoiBZt+?hN`bD5?s4s=FIdgt}$DUhr79Ug(-gK+q_3c^>W_j!0`pIp+ElmmD1Ozg$TKa6p66z`J{>xYIdD?_|wVWNk z%3&6d%(C{nELY0@{E4o78W?dGtmfswYHkM)&@Ux24&01UM;ykzh@?$N0xCHCF&Q zDC6-voD8;E^p~vR+UM}gU%>$DXQ?`sNR;`#pT^X^E7)#<>2=!}wOPX0Q^6i{4r`A5nl>Mw2B+~qqLZsaNOeJb|j{r9rp z`2jWPuE}-J{pS{EPIph=pIuA^bo>}Td`RkVR#Yf9;IV^(js~#~y2K0LE}{z<;=YfuRj=54QODuL z2mm%FX z0^v*d%3JxRpLV@>pbhvz05n>_fFO}XHC;7g=_t8q>+>jXGmLWNdHxCJv>YGPwQoV> zTOVB(4ei_wquN7hhh86X$};)qXqTSS^)!gOvAXRBXMMU^%UFu%{-k?ejS7E$lG#6) z3=Flf=s>eiOs9qSR3s~U$@(Qy=~JKD-y?XC1(O^;^1&59RzBQf<^NvVHoQCSF2m`7 zkGuH2GKzB-?tit({X8qt72HA;w zvd(%-+If{&e=WV26o zU~>OjYD)FV$%sAT$!{PlmbqdW%YY$4z~x}>bFuLd~-Cqr|su#gs(=p zHU2`|Ngl1=OkPpE_$`O6M|@@Nbz+PpM1p~Ci`u~PH1XVvGY9zBB?Dp*ujK0={9mv= zwSkj!ECZM8R#FXhtCi@@M}Wyu@%YyTYUA^?Lj6#6t2OA-+STDJ96L|WtEeB3M&x02 z>YI*xxl1#@&d->#`<5UpWACw$-|y$SwpGahvAEx@vzivYrE1u2_vYkHLB|pC6>rH8 zu|B*xh`4}97vZ_OdT6R^uOzI^X$L(RmXdd-z6Mp z=;C4Lxwc-{XSBvlf6c6XQ?aXsXXzD#LKpub$(9(P^bMU;(a^?3X%Ed$ zQ~p(Tw~IQw&v3@$t3E@2-F;9OH8`{8UD^T?LcGCF)WrkY0_2eQ_ao&r=Ce?J-io<6lc`y6$01~rWBvg3wz;vg?3liSyV zxJY?7w()vl1$U)-`2%!b^qQ`9oyT2tqn7MsIozXO(|X*;qf&h>QX;bTX_|0rQWQ&k8TvYU_3nopZLQGG>*v^H5usS&|2nOpN=QA; zH&yg7L2PrGUDvK}&&jI{P{^eWQo}^J>#rTXYf6|4W953XU=n4!KIbkU$WV9}<~H`V z0T#sf$0lmbz)QZ1_xgL~?jzVKXDL1G^p*op*q7MFhfxY#e~qFP9~Max_och||CP^e zmwv8s5qehqrpoll>iiDFj=YN1{8ap)r|YIed%c@6NW?O-HPwT(EU(5an&(p`yn4Y+?s{>^2>~S&%ieE+skI? zOMz#d+zAG@Dt}{M)ZK7o>?8Dn0lki*^WL=GTkVODPrWiEqvhj<-^G?01eLPOYY(Iy zPDY3n?HdqXGwjq3mO@xx=Ip(RwpBZcj{Vge27lxKcrz(`tY}|3Wj+A9w=4W@z3bDQ zZOU*kXzRxXmo|Iz`iH@uTcOu?ZfoP!LXwA>VRr8BIR>Zv^KKdKtIF(ewt@!LffUIr z-EF^&@U_va!M9hKG`zudXX>Z@n%LTSI|5La6MuW0aiMj*!)Vu`{#W#8DfN~&o0}|u zaV~m^*PR+#8s1t@f-Rl#=`_Z*=r@z6|Hr$ zAQ?>~-@OszXV7OV_P+V5XC<{-RZJ$4_*qPW`#oKphC|8Ah<^aFk97JABKQjmdUMSYvL0K%(Oty?u~`M12Q6^K1 zrXy1RSr<z8NNJ5AD|qO~ngs@%$&A@^ByBo6aJyb~(Z#&u}QH zKA0#K#PH)XWOjO`H{u+UQxUWXcWO>5f=+apw_HR{?*v@l26=5YdF;*<4t_VHHbmGM( zI#o7_$S0u>>74e=68%=sRD5pf&CtJAEhD~o>flfJcc>v^NgvlvF{%9Z0a zE1+Jvq@Ncn!*hVDT-1+@ea_(u8_N2uE4`cJ^yA+zUFp%p9m$-x-Mdyk0RE73&@LY% zv%mOD+7}-9YhkaVYUo?x11dkZCYPcun~n!+ENbHaHLzkU)kfMX%`+U8?)a%?hovoEuW@(D*m?x_|)(G z?_8mvBV)SNil#Cj&6yDSbk)-b8y3`4eO#fR4=y-{{lf+p2g!84M{*1^M=AoJc03ND zTkRtPimwUMB~M@5ir40TPI(m9Dj@BhRcZdmfKE|;l{d7{hpr+3&@>_#Vaue?zo+dA zE+5_Z$1g*t*W4X`68kv1{>$+>PV!s&2n@C9Kih2l9T~YFIZSt$jz8f1Nw&NLrqXKj z_s*UXw|po?Jo~vqxAxTO!iP&0T}O~YySHN$i~Av=2Eb{KNzc0pKusZC__LCbABDQX zdOmca%!gB7KD|^8koBRv7;O-@T5+cPJ1hG8>zrNriR#Sf+|T@ei}MTa!pn=7|D|On zFr%)*sC|UT{QQMi|4TUfV+iuT=KWS*Z^C-mAHMbDO=#1^X}fi+`0we5t%{lPAN_<) zR;XEYZ!CLjRh|bdrd}Go=z|RPf%Zz-OwQPyoDsRNkkJm03bqLXoc)D#Mjubp>D}+1l_9he z?)hnxGgS*5KX^lx|72100AT8(Z1Y>^eY|Xw9L_d5?jd)k$s|R)8z7Y{o>|6m+o(zI zFUd$#hh33udS6{^(t6)DpZ{U`O(8RLjd;M)M30V66?)&qoK|*OzrMP98`QTr_OaYe z;zf3LHY@MRo$$;tjMM-BS=wJ6S9rQOU|XCow!Cjy%Wd+;)w!{bDvxklWqvgMg#7^_ zPrPZBoNlV>8eijrZwG(wrdjl_-(C?d`FfM*6fF-1g%0Hc2B;6^?PsVE=PuHoq`}kr zDtw-Q=y-iedphRFsdCTb8TdTc!c3%a5_(tJ{(Z~9K|KQI$c5#X-Y_(tI+{J0o$%?g zmX)uGo-X;!&NrJZ)cTCnW4WKIQ5CY4M~HMDjbsQocT9OO`&DA?>#Ek-9vG@13%VEJ zMVddT1bm($WY2Qz0Rg^sG)Jz`rsvMLy%_dK7No~gz;L`1@-5}as8u<<9Xi{8uop=Z z-n-`+gC+4lMv^xgk&tn5_C5qFV`T?LSV&bkk4B-r5(gcrioJE6qLhi)u#Q#Fm7^TG zBN-T!g(|Qj9C-*`VKP8)EK&?1ptLx#a7zbH0y_;0bzr4G$Db3r1ugHQmDH$U2H!4t^nw)kHa|u4{DWq+QiJB+>>Ux!Bdjmw_v4WlAY6915^CR$!;XpE zDY*5f|05)MvsyA_S;>AAA8$?h{fumvbFeLVYcOOhjhd5?7i&fdI_N0s6^Q4mCWaFE zj|@q1Z}MxRI~d;pSLcYZUZPk;=+ogC!!7wat9R+kqp&gqrSCYaCl(l+j7~WRgY0U)7eN=m zC6OWINN|zi{9rE66?&EkrK8O@)fg^&qLJ8q8?+cIx`cTMou%7kkHP-56Psg9he|Cf z97hCaM-W`}{yTo!eTTfcI}tJv(D@$nU1fF>|4N!N_lj)kYAV6Gf*RVmvV#h1Q={}v z;H9^XAS@~}_CXtWA@7w6f{&&PE1=a&Z_W4e!{MZpox$w3HB_MG4u?L0Ph6fop&L9$ zwPd)KeC3=D#ung0gAuLE6laKPdK@I&l8$qGn_epFlKNOSg77e{QG3EjRFsBE2QBYirl5#lX!4;rw}8hm2qMUC_D zTJH3>_1pp-L65h~7D1%QE35`(h%<=MKP7Vns4_RF^c(S!!YSz1#0 zo^6`Y7;K8&HVA~zAJ*Gi?YIo}Z(7*lob7pd8IUbPgKml3ZtX&X$!2Hn! zFj(qzwAJ4PEsC1&l)WJZ3tVBfk2?qr{4DPe1JpWf?*iA61o=g<|BH{eWO;u^wr2mo zMxPs`$3@zxyB#V6Y>RcunonXmh-)4rj{?ew4-Gbj`!*9ZXzUm5Rr+0P&cA(8(cnZwTnY?%Wgctx4T zbGe(gQ)%hx#AvlyB4M`ttbSzE@dmg@?n1Rg{vmKP77%iq6buMaP-J?zB?{xYMxPaN zm7tUJypuKM-bV5p;AUhU%v!MIo*9WjBKN`x=N*ci9e{D!U_t(0rnqTJu4L}p*3d)> zY^FbH%4B4*KG3l`|7#Jg++e;pdsoE#2>Xm>@_3{c6qyrFK%LvkO)}AV1h>Aid&&-; za_EWlxA#2K>lUWjyZ{AXDZs;kJKcP>b#Avz0v-;_Q>~JU=zMteRd}jTj3z&z6n=h~ zO8~4rX!|X5ZXkh`CjZJsI;Jy0ahCK_~L^RX|iH-_civ$vy@eh2YYut3$cZ|FiW3=GGvB08RUa zOJHQ@k>V`;Qsi)p46Gm2|P957ujLIeWurakLL0mq$s*F-R55|LfW`Te*q=H z0X1Mo5G70OdA{Ie8#%WScWC=?+tHBPM}$4L%Sy{eDmwjW1ApPw^(u_R+* zh=G|rvly%gY_&6ulI5U``x>bD3j3ItKDGj9izL}x={6^i-OKpGg_X?|Lx3i~CQ(tQ zu81+f2=Mi+KW)&jvC9H_%2;DP6aM+8ff49{p05n)qk!);#66Ziv|LKFAi1Xoy%P^% zq^fr(-kSWokKN4mqZcvQlYHgh9gHWGD@+s!>sg9ugnlemE!;95T767^OZ~F%w}3Li zFeP(u{UvvSRYssEE9tANx3@G1@rnhcpnor!4`>p9YX?SBx$}6}s&Zw5<V?1SpY_N?y9Spb4dl1ym;@M%An!D>>VPs$UUUkD;~B50vAF zWks~0|E{opGa4g+j9k5Ht|-La4q&e;`wya74K8QB-;{~kUsa?c*a z2b_ezRayJ-x5;z;@a{uxIy|$9&J)C^-88^n?;!(0ow<5u)09lIN&HS*HI60-9et&n>|-MJ z2rm855@`h+6!Mb`=%MzLw`T?&UDj`K&0Zp_ueL_M)Mb*9%k2lSZ!*&XXHSD5xn_6p z@ej%6PRJfW^|s6WS8kIw8p#bnXD5wg09h3^L_XOrDRm9cocop|h4?^YH4OzMmsvOO@* zpZt8ACdiAg4!Ff3LEB}_A%O&D(y%L+lglH_`j2O-BzFF{a;dj{0;k1=2YAM3C>m97 zlUZYBA!3695x`$=@o|dA&pfKFrsdS0%ZkqfwE*cE4Jq{itr9bI6N!H_raqI{h#j|s zt&>jTUV8}>;2&AHNGG{+sf0NP-~~&JTEe2g4}y_S&6$swv*xAsB4nk0P&BK(gOmj+ zzlM}F5%v{@R)s|u=zBdu)1yN=%vp;&*QbVDga?Ic<)!|kSUP{(>xF9ySE{7`XFGQW zf*1GNiU<^qM)cG+N@-Lv1)x#LGAnNQ=s3_5-EGQatoxsg+TXf3rV}?b#XaVK*v13x-&Sd55S@()%@=5jQ7~k8>6P;^Ar3-sbgnlfYG;{m5uG2zb9oV4q zXUeAbO|YQPKZuZ~&+@_Tgl-Zu zvVj7)ze*NxGF5to{Rkd))7IHBG7p>CDg3LJtKZ+-024}(59ltY4)Ip}Fg?|mP95S0 z#JV#yz)iQ6JMN~om7o1d@$W5thSv-6#~~40bHC0!aUMIXop|Bxb-nIP>is2r(@w*Y z+qoC0{i-p0OA#wuGq8muKVWBVoA7o6U`+0g_yvi1@fDgli@XB~DJO&TL8{oz8UU(|J7XCKg1<#7Nz)Rx;@f3J9JTKl6 z&xkj{-^D+})8cjULii_mINk;?j}OI@;Z^ZG_=k7~yb)dk?}Mkt-^UB!-SF&qE4(Z| z7!Sc~;Q8>*cxJpA{vO^RPmkBbi{PK)kw`lN{WgRYtHeo330A@CbJ9>kxUrg?*J8mA zSaVLgSjcrOnv+TsY=|}Hq}7CoV|6&Gd%@mVYfk!J$Th4=0p%^QHrB9!<`#q>t6gxd z9PEmE(^khRkNou2b*F|>}ky*l2~1P>T$3i*2bQG972axou!llKfoHz(nvvs zvG-@MHG(~`Rji#4024S*Sd>-=B0bhGfKE zLsJw+7;u&A8?*3pFyi9TYK27xV&&$>9Q=rvSZy?K;R}P?<;KQr{P35!Z)nHDS_A2F zYhwgI(ge$oW-N?1;4L>aW_`zDf_sNHDST&ex7^Yg{todI>x#Zx_}W0I+|-!;9sDP5 z4gIXJ*+9PB))@H?c^AuurY(GKz*BB8%Hqm#7xx;iTUcr!QEoBH;fnYO)ZYpfzA_Lf zHyLGfg@43Npq~_eGLS8|8AZ4vpJ8Rt@WNyRzH*~c)-{f2xMs9XVWq*na;s7J8sY#b zx|J`?HxMZ|8)aXEAK*^Wp@r=Rinr|QkrPNbmJSUmj2z-x(f4JM;eg|k(He!tLt-oD zz8o@$JnREBUt#*t?GW( zSz*P{-4#n;cr#)O>w&&km@_1_V(QD@44=YnqWue7hU8aleUZ&bc`O1=Ul=pQvtqE% z62u{o%SY=KmJLa)SnP8IA=eYPNY8*Uo?w6I}FcEx5N5rhoIDxi^t zDMNfKM*FO%9HF>&v|VA<(7hF_efTNj0vm=_EW{6qteEYypTaM2m+0`qjv>Xzc8SO@ zNCqqwksK2t#+9Y7!-C>qz{L^Km?AN;EOQ+W6e1m~MZAf5A$B{FKEl+B zNoQH>AW%pn>}}!=OuQIxmZ1)7DTfj6EzubBPV8=$r4GClF@kj=-od;U6Us8xVK0S` z;8uygm}W8gEL$C9DN+KR?L6B(f~Nb2uUDuogr?%qua0 zER*kSPVhS1Z=yTqlbCFl&3A+o(g!O|^u7sd=Ga*48gREDYDqTM~)%cv9v@mCbEWWT;H8Vl7k(WL{!HV*NBaq zyK_h)a=U9SCZ|Sd+|-@@6Z}8iU!otTrAB_-)*bl?DT{>@=`b-hJmUr% zEPfoaxIE$mOj(V@xWxvCAEE_oLlnkj)(DK7Y_R#kTX0iE4@^Ui?6}Pa!VejYl_w%F zDK&iKMjNb$9KpCYqAjMX=H9r~2K*3lh7BbuVDL2}<7OM|hwwAp1u+cMQKM*Xmy7I2 zGGnQU6mtWOQ_M*n!OVK z3%5>uHrMPW-)L)%tVG_!vJ+|No_p~$8cecyaNNV?5OwEDy(AhfCOJG14OlCp(A+C8 zfku-_HV=3M?myy_xldlQjW&}A52QaJ-VUF^Z4v$FT6W}*Z9|alNJT7?NIw^|!*gtK z&JxC#BYSLfjtE1BV-<YUkdu)j9kUafJ;hD$e0|M2^kQ*)QQ&xGQ4#T*r=LfL#Q# z6Ax9Qyh#p=pyG5K9xbjk!dv891 z)lx}ES*swp@cK%(Zr*^!Q}IR_s<0O3>MNJu9KHUI@@EvA3Lpy=6{JE|m^O%hjH-uP zQay?CQ-Ktw52~%8_Mt&kp;2L7B$!lDGz%&bs!sJV%BzbU^FmZD3-ul9MCB6|*hPv- zt45on-a}2P+@hX!fidaTYU8L4s2^2uRA?7yF4Yq)h029KpmL7#>7tl>;i=Y$nuK~# z`9}qJki`x@&r0fH zqPGJ@%?oq2_oy+bTii2ZkONsw+Bn)B^$BVf_k`%@0I5kISKB}xLWAQ%iDC03Ua3-O z4pcH!Bkm#5Yo6Teg_K$@svqhc=R*vfC-q8eL|daOp=NPz#Aowhuk=Q>Nz^9PKQ5RU zIuF`O4M5AG@}YWh&P1Piik%k$YOSbg=+iiVV(>iKPTDa#1l10;i+f7+pNH(EAFG|C zE}@}XVK>7KNp7d!Kwm>er>baSN<0n8Z@;*q7LV#qbgR1iei)M)RXyrfO?BmUtUdynSJ;_73$k)m7_RNsuAg+q6-% zE9zsarPh-YKSRjd^ij1n)In+xKsXULOyZJy2hD~`N>$f-SmHHI?(*V}+H2I0R3|N; zlE7h7m$Z7cCF(<}sg_&Gvth7HdcE2N>Tjx_R&Yt^FlaT^7cGOzOMRf_T;elKvHHSS ztr<0y>Y?Rd@_$TycU01C;IG>()Jk!$G&OUCxc9`7Gq;j^0Pbz>%GYx5#F?*^D59x| z0}*B9N;AVz?p{;N)XI^inO=VP+;i{!i}9Sp;e2_X&*b|&$u#Dz;zQFU8Df!_WyFgF z8v9o1A>>5nZ&AuvT0nXzxcwCfXsxMPlWH$y| zkJ)EEE=hq5$gCDcj3ulm?=v44pPHu03>JBhMXV?6vmck9Le6B)i&Ev%c++n)NEcl- zGxu~*xx0$4iOH3_MFYF!U5M{Bq*`!NLAY-U?`)Iku zvXtA5^xxf74pnAB-Gew|q_8xL!W%0M!8%k-A zE!3fXl3Z$8+G~cuBCx3-D$m|b&c7_`HA`R#7*dIvun&@pDNB6K6j+Qkbw{<>yU2x< z#l2<=EX6|RQ9JhWa>-?>uNmnR%v1|iV{a=5D~ox}x=|7h!K0S!!{rjnl3z1#6z`iR zqWbN<H>gef73 zeF!>kCMlS?tC%hXQQh`Xbl6OMFnd?&0%R9;WS@*qok{!35LZOkg{T61bF}|V)K`|c z5^YE=YSJEtj+sgP$`n^jmx-vC_O9rVnYgcPaix8bWz;wO1a$ID>Q_ekqA=A%J+-$( z!)9W>vi>Ydf)G(F_7UiWndGm`Ka1%i5;b7&jgFW}_{#pX^aS!3b!MN6NK;MsU{EaL zGrfe$oH9oE;vzj*6ifIZxu~HjKSUJno(Gd+ak;4#s$t3jfxyLjuql?7L&i}XQ_+Y- zT#5%HeSMkAqn=FNMg-!bJy=^yTp$?K>{Ku!4wvM?+*&+m8iMMY@<4>);yu_~OXncl zsGn0wh*VtK0z+7lx~VWKpZ+Hee_Yf8OIV3Iq#E^RDhLsSOI%m5iH9jkjC4#ey@f(fS#1R#MklcnOS~X$sP|JL zTXBa;NzBAzy6{EyOhLE84&#&9iKQ!$@2Fo>$y=$1X(tS+MRXmEDx5Ok@;{6^VM#5~ zht#3oPQkWf4iit9Qj6)b7}YlAx)pL5cfyuhIsjQkeVlV!fOInksiG^d zE(HApG8XjBi!@`AD!DS074!<^Cm5A?&x}c`xcHSt&c(9R(hUQ(h1h z&9gP*e_s8L`X%sC`9zR8&xlTY70MKWz&zz)L7qIzVP5~I%5N%sC%~HmzUK-cK0&Lz zz~PJjPdbL(V4)y&L1enA|aW$wcY zFc*+~rSn8^5NBt(`$!8+9VA?7GZ7SYsq@MFa40Muq*LiR5gx?diJTwVfpLM@D@`VR zH!sALX$_0OY(cV>juVJYKuo#TNDWL0#9wJO5x99V<_UiIE-W0RQ3;(0+vJKt;zyQX zVj%8H^9lb=j)StqVO^LP=vJlcM93!RL3!dxKTIDaUTHT0+q`t}= z_!FTx=0lJ0j};4T39a^Oe~OuGH5yJbs&%SHJoPlj*9 z0^7mv?k%A%T=K{#Bd=k=_KWV27C#pbOquiWO_+20O?T&(U>8nIx${UfOs!qW-KHhT z~JtFu3g*RvnAYx8-tu3`3mD~XLC1c@twO6Ql>U61hZ+Ead&J%%mG5m)kdmd ziXD7zxh+}gVTZ;C4+Mxi7%8 zW_KuACYjnsL z(5Vq67X+AhJfBzIaihDJr?n*80NIYxdAS{@cp;tITJmH7tfO;YYv*pfm`gI3lxE=}r zsr^en3rO!6oHq#dE)XB7;~{aZvqU}Ax<=%k}F~ zC0cSdPPRg_wWZ{-^?)d>mR8MOTQS)>N0Qt+Z&Z$!bd7_pU}KHr5c;E2wB$K@lTL41 zaWzS{%#Fp@+c=5(i)UOi z48N>VAxz=icoap&Us&9HvHlB0IES#sOa*-0Y(H*sj7hSRq z=kKXrr0#AUMg74uFB#F5afJ>=bfX|@1kbZ%`HeTBN{3pzF&Xt4e~GTjt|n9xD4rWH zqu%3%mu$ZAB~%lr%NyUKe&N}dOuk+DRgp~5+jtuF7SF$A^$qx|Dw#^$Sc&?M=Uy`Z z#`CN44<&VDAZisazGU}}|5x=N>d%eiz0*X-enYRzw<`E4mo_r@D2Z44ExdSdRq<1E zH-`4s5;^Ds@9M2eB*ki@VULz5*l+E{cdHsn9pBj4+fQWeH}<;HR^dvK-*~e3IuY1^ z+Y8uMxS!-QM`Qcaq55Z$#Jn6&e)b zjr_ggM4o=j72b#{4Qlnqo4w7%OLQf9HKMYI0^Mlcn@be#w^`wfsP3UIZtU(IC9?OM ztX%nCkwDSesNI`PIJIzNWbe~42VIn2HK?qk*ljfKO&<%M zTBq?DRM%18ZhYQ5IA%RHPP;N#;Z3=ic3|6jE zA~t&V7LP?wZPWM%t5>PtH-7E?Ic7dJI=h@+VL%bzDBK%4<~g-I<4vzJpw?}?-TQoe ziLQRHrdJM9yf@nR-X9B}+MMyFR}WHGH@@%vI%YpLIlFRRkxnt#sM~vc%ztWi20X7y zrw(qc?tMSzJ~cn%Ij=mYq;CxFtsaY?+MV&ASD#aV0qHw{vNAq2G%AvCyDWJD_zwq# z^~ysFqcRDP%TiguR~&1s91l&6N+jHiBrSk1IB2Yb53P;LC7?x8qri2JeOA_o#zw{e zy4g$K0G4sQW(7XHZS>?{4|}O5;0(uCR?dfJMy3C{Pf5aoIF1EY(TBE1$bX?zQeS|F z94D;I4~@u0K5igM0bm}-Fe}ePOLCcy2S};{IKi>Wdg&pAT;k*2F6jnr;h19;erQ83 z_kp%ceE{xo9I>)LG$9v%bc>YK1lDj&vhqK)B0u@)5h>LRT;lk~%KgxsT>8=dhvYqA zKgSBI_(MA~@+0(z)DPeZ$KOmwiXq*Ey9r1FfR8w+nO7(lzGWZ}0jWG7oz*irD5i8z z?p`5j4McHFX9`lReak`63aJSoodYvjDaLe*?&c<`04(Pi&jeC#`#x#+aFc2Q&T(vK za#GCbj@|u(WGJwkV=+^dV(W`+hklUS0UmMu$z-M&(G9$trlbh4fMX<+hhq6(S)_-i zR1I*F<8$UE3WVnc@_?|ByeRzoia=$JwV4#%G3iif*{^ zN?rtJW>X+no>|-}yWznrl>;2gUW0HvGrd!C!@W%MHn1U^1`&K_eW&~ev`p$Xa3gyk z!urhkPH~f)ljKd{lkC?J;IrFzp3swMsb=78_E!k!GqXFTP3|+2!N9KU1&HV~+dIf6 z=#11?;Lq$62=gC*ZS?oh5YrcC~_ndTP z#Q5#9WQQEr5PNy|Ty$lh^54qhAF^5t+{?M=+%MzBACaXo1YHZ;E4b&{FT27op2a<6 zzUIG|O;6cm^!dHBZVkDvh3w_igEQFyeuFIWA-gr$UM@WglS$)G&oUVDUW?c({NTDK zyN6`4V3IZ}@v+Rh?sQd#18Hg@DSf8|Zkc!8<*IBp^18)UY0HuT%be@ZB{G)C01L3R zdr7Ee!FAUX*)b%q#YJgIiJxWm3nvE|Ii!=tO=;(nV9Wd$E)KG2q^gCGv`tBnW$p`S znhXLNYoRUeSrTqp_`;PYyM+W;ut}Sg_>N@-IDusZk=7P6(vBsFvAh5muxuq#!GcfP zsw8kMC%_pi^{ebpB%1|ugAvUKk)`S+B*Td`vyf`I zLxUsoR9%E*^N}(ZJPnq#07QR3^|7i>^Thlq=92>p!2p<8&mYQ(8N&6oACa&v)&Z z#mf^)m&e5d3hC3Ja|d#CGr5#Ft{+f`y*1yX@J-wsU$^8fCc$0CK9;d@ZU6lIyyWq? z)H?l!jYOQTnV5WG>BuyP)PjyvcA;if@p-T19_Wsf`QG=4L^ba32Y zy>9>3anGswH_Q*m-||en4{{{v4$1UN^99F$~P}&2UGYyf$xbjuNDYj-VKN^Ci#5n~`&EsNK(0xmmz5PhN(%G)Ha-=Vzvj zq4z}ce7w0i(nDB3NJq1qV~e~xZ*`91P`96X2Zr9N$aC>N&XF4GpaW{Nrelq~5-&1G zeyD5BEDA&KAmqh(3v*DZR9YeQl^1@~LuVn%|>A_obsAIRhPFd}1rNADn`8QMEZ2P3@uj>*S@mnh zjqYf3JZ8!9n>=^fofA)DoAyS|#mVfq}GF=9@I&9bwdUm-u6lN^Z{eW$vc-anCFp+BGJ9FN%TwsG0B zH)qU{zg~`O(zX_TNly@)pU=GeDiGJAZ7bSlYcJbeIy3f_m;Tu{wJ+&`Vsq!rJiT{* zscl!=rex3GoI5l0^=cft&)V}PJzs3b%*=ijifiq&^=u2b*J!SudGnQz{zYt-U((~o zX2Q(!SFyOZKD*^MF?;Uj$1~KgQ9rYiob*ryXE0+u^iu~r3~Z+JtJcr{BqL&zm%}ZL z>kQ_r+Rwfu6C!%WAp(;yL-?xqbKt}cMtiJ0m6s`Hb0 zV)VBu&A|ZUJ=6A8<0s+7D3fXQ7A-a;NtIZoZ!;KVsL~`z1B95V zKCe=K(;H;0g07@lhXkp1R%yNI4>Ia(a;GVTxTs>P)ZX+3nRKG(X`vzUs)Q=NHv^l7 zF-=-Dkq}$e#wwLJ_)X&&G@f=hBwV$pO6Lu6)99cnk)|8srP@}d@rJNza)3UjrG%uZ z4tN-}4yqdpH*wO~LQHV=3!t!Gbz@<4KFut|AJ?&<8P>0ERNZ7llL>Lep%+xc`qWLT z(Qjx$Au%}of^OJAw;{Aik;WHdg=<&1If#O;h z)WZnfCX47@T6{<{j<}#7HW+WH(aJ(^gE9j{T-6N9WQY z+kUYfeVU&AN=C>gE1LASLoB*a)w55@1c@G}1#U;j;`?+x2VNSwHp$a~+qYvI`oNy} zm&UGW49$5vIJT=#+mrax=zUWNO>NsFwzW^)lkn2yJ$joKx1AJA?9=xg3^&wh5~gu( zo5eowQ(o>3H`YK`(`>ebVmte^mixnvdYYg##ch{ZOrP3vU${vRdXW~k9Un{R(_0?+ zW|+{VLlfP$jcx2xS;l`ePCyfAp4;KEJ$*XM#BWBwnv!XH+g`D4eHzPzZzjLce`u-O zX|V%I2E;*qL-8hV8vC}%Vf_gxwO8L*99>8=-}XQ3IMGb)*EgzbvZKjvJ07A>R8#x( zP3q8ZX|U~>L;Q(u>cD`ZchfBz|F+d(!wEPQKVa;QZlk$wha7gDXr~efj8>Z>Xd2tl z!`2h^RKkGCD*8JuVLSPdc%q*=m}Y3uBu?YrHa~oRqWrfv&Da24N3+|89d@2*{q0XP z8f@~W-P(3N#GI)8?MpKmM6c2!wi6BsCwhMe&J5F=3~1upc8858Du3~3#_8xmn)i0Z zVb6)qU*eh3c~d&gVB7n!?L^}*;mqV5P2Z_@JNbE7*PKRWYT+$ zav6~YHWl^*bUe~D>AyxUf?I&E3p)VNk5oDHXaN3^uE{_>$sT?K%qx5w z(C`Rsg0H98BbvZY!oh&9N7^RDdh!$;4ptTR0JJ_*HzCwhrx0JjvBF6J;v;>NL0=LG zE&v7yn*p9bQl|F$Qb33bu(fayp!1OywcnTA4tE192)h6^> zk2>%lDH5&;77?}uG(J+H;{T&WB6`7hg~I_ok94TS|Hwb!_rSWsUVyeo8dSo6)E|i7 z;1uCBz<`;-^Fd{j02}~j6E?}K9|rmN(i3q+9@tFSKd)n0)4yMtTmiQR%LqH>p@&ud z`;@5_hzW3za7-S4Sl54`gX9KR0P_i3f6>0 zD6k_QO>sgrgPp5`t-Da#jzlzh1|AGntM;&NMX5Uy(9{{kS8!Z)k~I;f?>LAcsltW8 zoYiL5&r!ucxwVmZ+c*h z6bsh|i_#C>X+)_^bwbQEL#B zU|4m`1b$ODW&lsR3s(a3S6fXqY=UF(c*yK2}(=cd*{eq zbd+ma^-GiKmKb{->Y#uwSGDSsrqZ1%HUJu}fG^jz8fYLnz~!*K(Ax?P z#yUZR6}rl`t%wa|y1m4zLOm2(%hjz24OF`8!^T3B6o}>eR)c{gFkBD|fSM^hFIOJ# z4Wxh(l~`+NkV0p<)_8v)nQqmv3Q!jXOu5>4Um%t4ps=CPcm+ba-uS=#}@RQYDk|NwF>bD8w8DM!O!W2 z40Mq^;EGs2s8vhD95@8uMe#tiVqKsiEnRckAw+s50uRHgL!m9LbLt_4F6she7aI>v zZXwR;hYZpi61XUq3u@l-d`@}0H;$r>sKwesVJ)3=THF2f!UXP#Rf4*hqK_gmv=5)4+^g0Eeiq(gDx3tY^ zY!iM`PY{2xY0&hR0d<4wK}8ZD{1TRR(Kxie8wBlDr0^kfv5-Z-(2j0RXul%49Bze` zUUUdWcdJ7C6shHiactmXbSS=C7dp^Na)HZZfs4088@jolK-xK=25x#v*j5^+-LLK%}l9zGD*>lXr+m`pJXz zMhGsBkF@^u(+eWFH}=+|>kj5f?N47SbpWx7jaW?B zAsp%b8KCz?a09IPqTNp8k;)(ZUrHKc5bM1dvD0&;^M^>UkKpN8gGKM1wj+%{gum1? z#5p#7F@0x%%i!^#6zR&B3(+h(#v=6vAoE@+%9X9GXj2_Ok&XgQ^L{CE@fVBe>pBi1 z=mJ&qJ}GMP)@XEqPP7QVK-YZWIqA-q8_~Qvw?!K07>9pOxwF+2?W7Yd(p8{sPJB*& z_XQrUs^cNjTA*%Dcusw{^(8u1CrN}@pl?3tPg4FO5Dm~V6M0^sJksk=QQoSEw$=#} z=`7G1>Gvmhd~u6b&~XvL6sV2#`BOW#K17G=#ETFL^hO3gk)pn6MvLg!iZm9ejNm^} zqPBXY@9Kn$^c3if5I>RkzTAt})$tN(E6^Are4_4c{fCb z)YMOcV7)37!7X~7t>a(QF{ugbS0Pt^v5uC}ajZd4s>1qIsFhn2(Lp*fHTX$g*gz-A z{fk00pN>^c10A*TofP-2mS`89keaSZZ5XkWJpUy$T3rWP(>kdRBXm;dw|1iAb&_j{ zllrj17?Rc(k!UU*^P1v-3+ zO=^5598iz9PNUOw(rX5a#Mil54IkKF<^^OL*4qp4azPA>?Rj}QhYUOHMR>WT4YTd9 zmH`?J(e^@RT!Ds__IzcW8-{p$u`+I;VW#~RC%_ZK275s#E@#6h_CP1jS;H=SQ73LS z!+d+5894 zBC6bqhPhK$ae!7s%#;w0E6lKZiVw%RYe<+9!*PomKAyS~3#c`0oDz)X@-#$F0b@Cr z4SS|UW4ZMV3#WJv0Yt;LDd9t|RKvO{{zJ~ch6C;5JKXG~2a%UW0FO!akpd!I=A`0C zUJ=d_Qb(kS2)8ULJMwA`ppk@*6sqBZkt!qkYB)cW@R4FQ-29}>$SZdNNK!+j;9V|P z(vwKwUC#HUu1L|l+#00(NS-A?52-a$c!?{4R2#{^#QBRvj1*tu<|bwQxU35(Bt8Ej zpvz@PD*eH$%lVen`9nmP`xYtp$JKs78wvA6sGlo>RQ-dmpYuD3@I$PhTb%Ux$CVU7 z9jWn$U<#Kv3Hbw|E?}Y@~La3x5K%&xuuOxq60&gK! zQphWjX>r9NuS}xBLeQbWN#cnG&>??DqRT?mp-@#K--3shhm&Zv5T+HxO4M5L)AA1` zh!*0sLV!fZ=w)zTp2YJ}0dRq}MCm9mIDbN-b5sOes34I$dKH`3B7qqd!WM)|RFCpu z^LHc&qhi=X5sAm6SEBQ3BpOErqYLgzAV-1G`AZT#qoUD;x)Oz>Jo|b55^bZx`voZy zb))?I`KJ;CN(RV5c@pr;#b{Q7@!k5DAlF`b3UDhY8ba{9+woGGSlK zW!6{`t18)~+})6%M{fsI^z^2wIgBIBTL@IW>@wt}_!Ic-WL-eN^ zfn$E|ZY2sqTh8m}(_#1s7d#l7GFhX)g+I?0v6l&WLWT0dzY0SBoHRRP{S;-e;;VCvsYg?|CX3iSb&ABmZ? z)xZ5go{IPl7XSf-^aURQsE@8tn|vog;T0fjA$?&KVEU0DwZ(T56afVWD;iqvl3k@k=eDm%hlfX9zU3=;n07vCCfl*^I+Pf z(zU%GQ}wUUUU59`=7~q0*B|k4aTJQ18$=PE{(d<8{9x;x7@j~G`1FcHM~A>8TW)=x zuyXM0dtGlw_`<2mp23lc1{^kS7IR3Hu3iN1J06T| zs^p;~*bp7}t(hzDeE%@dBYU?0xFG+0OR951q$2TW=g7UaR|bC`WOtGj?z^9E&imJg zAbnDf%R7FCY$gW^4(Is&lM<%6*!EO&?``@G*uLy)b>JMS1*0M?YkQh2UQt|EQR!$s zAyc6^d;IbDgYfe)z0OhfqS}Z!t8u%Dx=aG-Xh87Q@6pq}dG_cZZ|cuSPc^mv+57Mf zYD7_FiRyB^tf97kujuk6qb1*aDJm8e=7TKR%WV;?*(pA0O^MWd&w?ssm_Kp+5rnb2 z4@T%`abI4Ia8XHKJ(bvFUORtt{mrlRA%&|9*X=o@lo#GSZMS1_fYsMXNRU?*8utf| z@9gthjP`KZc4SJ_gD4ZRW87vm(SuS$&AhA#!8E=+7)Ww3aAHY4!jznKR{qYHe2+`Y z?2TsP#0SFhVo<)DK-B7M<>cklj{L{PB(wa#%Ad+opDlB=iHDys?XJwP;#AnB8E?B> zig~R+^zGHzt#4w~mzCm2=t$ZObHifokM16&sY`}}%@6Y8<>HT~T_dOCW>4GSu$27V zJ@|}0wnC^E)kM@9up=jg@t}SBrMmY{w}kt}N2t+NMS)CE&IF*(o5j)qmNo-qmQz;g z`Fr{LM$NJ1k#wHxs?gtB*qge{29Q_!xPXEGfXNE!#-E_a0Z)}zuWcCK8~|P?85i9a za9#y~;}=qjf+f^eO+6GOA|CYrnfotHGwkfg9Hq&zj{WPdEsMJrw<<&M>89?-t`sP84?AN_f(r zD)3HoJ|D4eJ6qG=BF(4t95HSE3F@)cuD07}v^ekSi~BI2Qke3O@{c#+yB+rdOvi_< z;k)hj6PNS;i{PB|ZLF(Gw`TBn5+D!8o}@m;{N`tG6yF{2OJK>9yZFabEmt}_31|tKu)Lprc8a9h(49qXchHT6`2)Fx23>gjNMgZHQ z<4Qzjw+X|e+Zn!qM+?)RR{1dg_pi`Cs<27zSf0M@Gr3N>fdEyJZzNwenA`aw;*+N; zFz%D5*Lo4e<%l2lDvtX&X&MBi(5n%VwvEn8tO1UDK-p0~IXp93z zY$^gNzIJVC-Yt=gL6#ZwfS~#5(m}t4NyZ9!&Q0Zt5Ib?!3hs78A%%c;(o^s`3Fpbu z?k1$*+y3EcJnQePALSA4Wn|Z*>jNRP|EZBQXg-1&5j%26pZ!uf+Kq);0@^80`B>dp z+dYI@eA^eEHlNwI2r>?ovV{ny!0gEBvp7%ob}yk&pZ1lf!z>>zv|9>=2DOhpy?9>b zc9|*V7H2p3_sY|y^HJO~Tf3*wj!*mY(Th^bs7JNEsPMO0YCeY+P%;%s%AQ|ycE5h>+tk@Ww#WAekq%jV9KVU8KW6vUO8KxiomWR zFntv#$_#Q5%JT=!JzzS2fY1^1d8k@3>hq8}{{o1^2di2^@xd~0oSRI?-z2FbK(%C5 z_UOOns9k;rl^0}dHWiU3tNZQ@oeg9WwocI-$Kuu9F^rp*8OMN4t*I)8OALIsGavvy zZTn>d{uu-ls9mGc?g--|wI)!$WQ2lgtykHYr@X+ByRfm}`}Z><-B4Dt=+ zn{4u;qo2K1!d#hKirH4dZlCD4^rx`5y9l-Tx6eJmp2bba>yg+H?Zsp^_5~gv9#RmZ zJ(C>79{g9sdht7B_w9@@K)1I2(ja0Xoc+T!&Uo;L{|v2|c9=dWavp&`>>AFVmm>)L zK6R?UACUFglTIS4yZ-!fwx@KVcuJ{`WW!q6+n8Lr&B zWq5X8j7S##SfJWF{;`0WlOvM*UgUR zF+iV=!-#=KSTfUL2^&%HF#5%-^H;dPEdLg&ei{F_P^$I96!*V_ssf~c2c?LA>}(bv zFl4+S`>`3#?hxu?nz(?h57kfR>8A&OW1dVGL3Y@81^st3Vh6*{(AmxfJi%U!sY!y zzdfj3M4DyUFmKn1E7cGa^=RONB8GpM7rHp)pntSm3D3Y`h?N7%;qXGc5tp5*2Z`j$)+K2H{pdoBmFS*61E<}rRW!j z=i@jcbEK=#l7Hm;;%=5+?jMFix&c2(#Z_k!(?|ZYtg&$=tjjeFecE>p&;1wT{||%x zXZrs!SoZ64@9A!CLvO@Xp^>-j#oy=F|ChpQ;Qx=pbndJSg2Ns&0G_Z>1psl+Mhb1x zw=Z)k8)prk-cq-PUagG1H|+NhPn?|J^;b94_VOh4JM9u8kKY;mb-O~43s5b+V_UX% zbM&)>KQDM4Y4OLck;jWml6xnOuzFf-6V*%*+V!j5VP4*$3+=9xf{`=LS5lCNv7cq5 zJvnS~-(|kuepsQPh-$CcG2Q)UY@JylqloIP*fh-+GfrVtHu0DUP^Ms2HjJY;vksIOO5+#}7eQhAa zOSCbhgV)%skAkAzCSfhGWJ=2FB{y>WmZUweKsX=jm!A- zx*}J{@3Cxs`8Ck1D~PDFp)0aUK!sPzS)XWYEV-X-*AJYsN-rB&)#XmEG)I8FZ zQk=wUelpd%W?Yk@c}r2qy(ZzA3FPkm-W!Ta9lc*nYwL|qnWEf1?)pZ}XO~d_>Ae_b z<8c=j^(K1`7{$DX!u1ZVp?K8(xfCV5R)FgrUn}5&KrTdauMObtk=6zff1hVPzAUa| zm7cT-*y~Vn*5!Ftz0bd{q?pwH<(supvGL(QU!)b2I=^gK`{(>-c~*$~GXAVk1qk7I z$Ng*&CqQ~OsFG-QN%^v0QRhyr6DZec^3do?oiU(zQsA{;mP(*5zn{RXNQCmkp-9+* z^DEe8sfM8&d{VV&HM6XDm+P!@l@;_8P`}--4IAghboZyI^n6oU7}B~^zxd8K=W+SJ z@inc`Dw${!3#>WEu{=_uG>iwt>d~A+Qst`nYW;jq(nougzni0iQPEM~hmUn_32ot+@H?;aG}F;x2eYYmBeGe#|FRmc-n(vl0Q_>fBGQ)m=AZd;(+#DAvm0yT_ss0qKmV&8zXpcp$FDCcHT-K@D1lS|K9^Vt?`!Po#FaHo|CGTas}?( zue`dPJ}ZcJ>c=E&x<^gu|2vyz)!Ho9S-5!=*}Yc5`R}aJ78Gr_l$?Ru(l9?@_i{f0(XJU5F;DGxFCfjp| z??~R{I`hzdJMI0C|3S9+Tj7_R@mh#*sH~{c4jSPWu8~$#n%6GaifxH z^mA}+LK%4FtT1h9S$XqFGcc&|6HzqR<o7Rxs^gYq54S%{d% zLBUOpPRq@s-;)z!Bij~c7`fnKpj9iXYLQyyGCdXCm-{+2ZPwvC9`xg3@~!1eT8QcQ zK*Ncdg=90rb$*W~?Y_vs2V-*!qGkjq{;DQ@zi86>?f1x$pBsHezjW?+>%U?;j_D{G zW8yz)DuPJlZoD13DwFGZgWyth%V>a>q(q0@yEnS_oBrG;_m}JAS0dZrD>-?~K73-N zfc!piQD)rp2G*Duo*BwCudte`Xsu4L4=R;d%?O>HPYv@~Xdtv@WONbi!#Xd_adeD3w3dH=PpI69 zuFvAzC}te>>hkDXZTn^P=iiv49rlAepLetvg6xxyPG1q#z8J@~zLsLjqFy-a9oGMk ze@zWilOUoK#Y`5v&ntyAo7jz7pkKhY=;!b_z++G1>^mMV1F*}^@1!lzWM&@T-jHx3 zfNA~uH~T@EHkIQ&Q);%j>;C+b5^Q2Oy1z^gr_-AA;caitml*6P^YBfkiRN!1xaz15 z@2~Bh;1QANiEWW4Gteb%_OFr^(pwKsG7G<#TvCjedwWshWmEQ?p1e=gP-ZjX35@mf zd$n5`dGRlmR8RMt<~TL0uNFMM^pmI^-Tg7tN^?bN#wBTehcrLiKLK7iuKIS-OI#~C z@<@80rPqF=TIw^yWWDKAAO0lw_;p=HmU#^COAn7S1Q@?v)_Vc5Bpt{g(ExX6rxh6UbY>@|D{jyYPRGlIpgaHLmWO)jHt~2#76!){voU-L*TiTN~|~CQnWB?&LQ7 zH~qj36cs#SV}&`m7n5Am=@<9(z6;N69+a=nwBmmzY3aM*oCVdmMVis?f(K6e7vyBo zq1Gb*sAg>iqZLwh;kfNc)ISr?Gk!2xvsJVP|M}<*O5hFpFm}KzOJFct>TyKj^(N^^ zcP}BJes-tyrpCVs_}Q;gpMIyh6yWugD(E8^JY3B#26LR`p=gN7tb!`irh}C|6gy(? zVrC1rtzwezf;va`T)gXN9o}>e%sFlg<2+FK*=W61mw#t(ztOwf(D)ehE;xSy(Uyuh zcKn155P5!%&v_faD)TrGTEW;BOD+LWEnn7ub)Z|KOLnWzlx0zqrJWxW4oo z39=kmZgb|mQ#!kjFA!5U@p;s>5>-+DQxg-ybg1}BAYuB8rM4U2vMN`UF)X#z zM}NB|;^G7@HdW>B>Y=5O7x3pB;~Ga{cVuD!Lz_MJxb8)ktaU?3BaOVYpJg^oeMT_`(xOwJc$xa@ zo;8bJnc{hY3}Z?%NtP6!dd#e^1$j=8{P&i{pd+^M@u~Zv4g`{H47e|FLy@gR;9idI zuS@~J-j-ax73jI=rsaN>=2zlnP<^B73ajvLv@LCg+ghL^a@YFI(xXz>Pm-iNJ;_`9 zqVlb|_4SGyR;kb9$3t<+h`x)~qRQ`lo`%>RoLv8DEv~HWPL9dXZ!G9_|D9b=SnR~O;8>WL+{ddkLA<8p@k zA^0|0XJZy_}|eiaeXX=ynp zOhbY+jt(ouxm2sd4}>?nQDZsgJ9_Xg*Ejck(6e+Ncbopoj$3F`A1rEE(V>#ezY)(I zd5@e9R~TLyZ3%AkzrNCA9jCT22fw4&E8=L`Gm~q-d-THl=#wG(N zmQz6V?Y?ycU!(0Emx{|UiOJwPzD+tH&R0#xi0uk>^$`BWEJJXF7sTaTeG8su1o>c- z?fRj3*EhR<&V&$nf@d;OxbN$-DFM2$y*%gqooiv)S!YYkUE5?5+&%&u{U#Tj&j%aT zf5qJ8wtBvg-Mn}0@#ayl51kj|bkA%Nvp;oG$GtQ_-xey{%86n=x?L*XipfOMz4XS2 z`9Caqg-5FN*Qw;+2-twf(Mbl!l-G>w_=+LOXcY~pGB1C5K&F43-%#9{oCoI}m9!xT zO#S9jJ8Bk$6FRGX9k}DFSo`9$K-OxgRF1BNa-9?&mpMC`P0U?dlWk;UnC3t{-1vvwi_r0e4eZWj~W_7j|*-qcnA22`zZSv@|Wn2DA%DmjKtc>Egrc^AH!P*$#V@y(+O zDaB1}#ery;oS)dMlv@6LCQzpKEg^_cPMnwOZBqYC;=6mSD5uYmPihq!^npO1*Yts# zB&V;sxfqhuc-@eiE-z+Ksz*ebclBXP<1dAmnU1jMoxNgrGbXu0Sf;P9`o3B6wOPG$ z=joSrzM}8{i>kK{i{cIUhoz-K1ZfsgKv=q4S{g)&l~|Vs0cq(HSVBU&r5gm6Zlz=C zF6k0*>E<22=bYblz5mRNGa|e0y?1=#c}`vR*wX}QT=c~1iFTBVWAXPdB4PM)S%xG{ zd0q4rO>H?Z<^KlFoTs12Tw}y~FKek~fv%-}-Zc%3-o1c6n)~70mnppb$Bo}8SNz&f z_$GbRY!TjISPrRfrj~CqnVYAZo;<*uOP^ReurScz^h0?l#*Mzyb64*2OUfyn?+hBgL2Ce5P2d#gJ0tYDASjUtNy? zyN=+VrHky)MNyuP(9r%zwUQ5(E+1@tE?rbw-2DCN4qEmPw{07?TMXfzwaNEqS#-S` zBO$c^+WFCR;C@jW?74eZv#%!i`Q@g^-@Sb$=LV-A%Vr6uFX(Ghh8vNzs7 z!nQF+&k@RskW+b8AMjO1eyKI%l`Mg|3Z6F!AXO81ndRx%iW=T?Eh@IB9_YlGd8IBmG=8c>QW zN)|B@sf8_zFAVpYa~7Z0tlZO3%&Q61g}>j=&suceKW!a(Z;w4UG+|_)Q0`GZY8N>t za?Yn>(JPPbcuCMFq86*RO3)XWR6((~UD;ePXL5-S6k{Qv>WSiwT8~=c@42!YS+iqn zXH#rgB-oJ|rOdAdlh@%^j93??pi&bc-nMqcHW2SXoq-AFp5-d%Z7v>7WJv2@{%?pd zS!1-yw;qjUu*xHTz!+Ca4f}?;Na#u#Uti+vbR)5GA&L{_K0SIifvv9Nn*tM+t5S$o zt8G{nlC_CBXgE)+*x-Nf9OhL8i*|_loR&o+!~L_Y zMPloz>p}#|kUu8%Yc4m=!KX{)*qim| z<{H|6{kB`&;R^GEzW5^)8!X!|iRvv=9^uHhbAb}`3MR-Y5;e5{u`rg)7{pRc>l=uv zt%cR2IcP%`U=GLpIP7kdrEliPm6il zfF;a|dKc*H$}X<1VF*aJxv<`24KAQ)^@L>_eF@T0$*WMRxCF&zWW``PkSx6h$5IUF zgT-XA!evVR^omZuQ0|8zHH%S}3FYY8Wyddy(T;Vtlun3L%aE~!M5-+(N)zoZhQ7h8 ziSqVBGM~oujro!&(ob7(#@P&wX{M(=f{AqHy!T1OoTsJ%64t_d5$ch@(I}ah~j+YroOP29}fOfsHA1W4}PoNk-MWB zOSBo}EM)dss6|+XNisW?m(hHul#50+lGD5{62h6<{&?ydVPbdvFI_Z61k>}zL}@KNuKm}=i|SWJ$8X~U$pF2A(DaI zE&!fW-7@|`@_+bT#>-_8qmFE;)}FZHK{FOhJWWF#&>q;EN16E2E@e$ZYDDkC@qJLrM)yRNCyJ=8qhzf3EUac zf5(!19K=1vAU=TgO~b z!E5yrLRmr$1M~L5;+NICA#R((Gk^7q;ZHg?8L2l8Zz+=aQ>GY30}L=5OjA?GxkeIf zbIM+Si05+qHee_~*uIs$;1W$!i(8Ltt0MVF5NAPD1y%X{4^gk-Jmx}REf>Q-Ka7LS zyj@|^eS$qio_gJFiR zY_W>U!-qi%%HdjIg$$;g=L)i3oE+UhFK%ex=i~8Ez|s(u!>|PrJasY{dZ(NfPiR-C z6Ms3pk3>7S>m7wQQp=%{WE_+~K#Y2(nxDy3@ho8QQL; zb+?F$N{!Iw*%!;Mw`Bxn347uR;wTLSE%qpsqC7GvNLE4)WGrJ%SP0N`%=UCZI^RH{? z%_;W$rd~%U;-gd3;0sNmM)j zVgnd%o3ys^Vg6z`4n`J$e;q4*5%Jhu$s&adnvmCI71U&PN!yheY6l6bXXYrcu6K=0 z_z&@&L)c83RB})V4UaZCGTO;5#2^9K7b${QL9$BU>3ym48!h&F%M!v!EG;Q%pK5mH zF7Kp0PLN>K_*tl~=Uk`RdBtBxf}^JRYAh(RLBgjiERnN$beBxv_v~0rN6!L%n{`)B z$Fs7lbfN2?|2}Xee2 zklJd|~F5CIOAgV9;8S2wKFy}y+FfoibgN$Dy)Mijt@8N2m%l?Dpj!LdAB zMP=%jKj=)GZPkx4EklpcVuhir?vP^L3~WEuN;N<~Z*^p$B#NUdrqS{3`5*jfD$(KZ zs@(d(O+l6cUcz?f7%+}$`HlYf9@7K&Io)2bXe{e4>v|V3rgpAN82{X5S^*-3DW6g` z^n~i{`yRW9#&3@7R$UU6jh-GGW|d*>JI{?A=V&w09z~HPyi1f;UmqJ%+o|M@4ptS! z$7_OH-#Y^~k9kS4E|$KQL!p|ko=>kDcyeL6enpKO2V6rHxUlLcs^d~W?Re@2G)gZ+ zkcXpoC1t;nnFo&Z zq!`>)sz?n@s?Isszyt~(j@HA8b%A#9}?smzNn(#9#)q_(+?-i`roMN-s8!~ z|GuudNV{TwF>ZhSukp352@F%*f7?m=jHoYBJ`+EVn^R5-e)q)tY%&SYkBoK2OCUes z52lK+@wcLa&oU>GMVi7NJ$l{=r#)^l*`-Q*)6&C^r;b=!JEc{RSXv_o+NeWRSV-)T z^Di%dDUEqHe_zRcGmKW`)tztfqg;Pu|1o@L%&8rpVw_8}Kkdj7vs2ZIC%kJAACU#0 zC2=~595WDh_fWKwOha$UL6E4&ENMXq3gix1y>YkVfor_2niE#<-%Ni_vF3m^4}K89 z8cvdmp_Mo20$jM2Phj!id3f*lQTE68zm1*L^l>E>EZn*K99(PgLrMNq&>kYq3H_$sj@;tlr(caavTywo6fTB#aUSQqj_d&rGdGC-e8*wY-ZzXo3k%HpU8FY zH?Y|D`ZrF$4GxIG7%^mn^Nf6GKim2BdHCaP*BDjL4IFXpL9qpFu?YGp&l#h9P1-Vc;Ti2Y}95NCr&kF3aqlI{Xk^`SP>W@eCdaxk;aQ3nBxUCS1so z{A^R*Q)Hr7%=1jRR}sm0ZkIE~IOkZ}^H#s4kEvmNS!R6<-#-y0xx{#R%eT`;HvnW5 z4u`QM6b)yv?Tx zAoPU5(rEh0c(9H^?(SO|Yt?sU3Z(jB3Ri9mbg=kQ3;nqIrkGee0H zMwfoxv_H?E%Lj$}F}yyTXa1vTiD5lwyusp7Y>X>qX%}T&y~@5Kl{LvIuvVdO?J~1K zKZOtt&{3RJkCv)(4p@LfBci&t<&`~|BfEqKp9}u9t;BbBUZqza*Oc^V!(3W#QYg_XN!BL5TYaJ9 zpjQo`&RI$IBdLR6|@bD^+Fq4Ru4p*(}^X)ZaTJZaU3f$UrNGbrx_CE+27 zc|hM=6aMDWBtm9ITYh~vn)HF&IHynrK6$AP|3O`q{9D1sN02P9_UA-;UqTJ4<=bJ= zFKclxp3JeQ_f$U}+*7$KzqfCXGyL9qm+0gcZBF3+Ujoc&z!6O~=cIJ9Q?UZ|goB(_gBn!3U3w^yq?3MH<8PH%UJNP~%6!qtc`#W3|%1qw5 zrPOI?2fN4c*QNE)4qA`)e`lngymKqf5t#Jv^bboC1r3ly)EaR&8vvsnR)KV}hr zego^L>Jfe*c!zZ#|3Zrd7Fl+;Wzwxo$5-H^HgEgPO`2$C(PpurMwb*h%hWj#BF^3}2FCkl)_WwUld_*i^o^O4nA1-M0BwDL1`}vEFu3D#$BwP7 z@l6X^QQzNYx4wdpCj=CEhbLR5e+k|_i!7%Ani~!tYhx92#Jsqy*|p+>V!Gz46cS3+ z(CR*Z!9a4#@!BAcB2mwPpU_wS|6~)FyyQf94&6J=>kz!Ak+XG-1E=8KHgD-QC2T$ z%rISc2x7Z0yN5hQTaF99G`31c(Ndv#S$JeEDQ9do8YREX{#2M*&KHh01_Ono=~})c z4Fq8ukGlC@KUIZOGof-kMt+sQiQ4*H&i5BjKo!`I^0j2OTKgMIts}G?5$FVYO7gp< zUK}cuRKLoR)pd++r}ldGb-ujj7-HU0LA2N(F9&c`SN!^PS)Cy6FBwczPWobyusQNM z-Ogtue7Rk!6ny2H*AXPuAaj*)5wN*&R;NDWrp#b0#j*ZilT1mN-lIy*tvF50{29Tu zJj^+jOVm-=o|k(N_NIJ#9>^Fd8Z?$>KIHg;DF1m#_m-!N*8 zvI5LVf6|$T*rL12?0wHLY7{Y^Cf|iANka0vfFZp?^Q4hPkulP6^s;D1I1Lxb)-Ig%CnhQ!!b?aTpV(0f zbk_9!r2+atr!5|*k5irHnyq&VkmF5OYj`d5ot+(Y0Z0Lv3+{fXiR5nlh&t+=k4aK!YdPJP zl$)*48=wsQUSLpde?R+?{tJ1JiWpiD&pc>S~CCx+}eiCgqI`8CAceLY?AZhHPc@ z*wR=fwAkWq%L|t>e(oL7@#aUdSx$ESn6Y_I`GeT8IecoIN#Z+lW&z~*Zfw9$Yh!{P4QbV-D8(?u=c$uIIE=D6g?Gbyb57W18 zM%6AmgVZrkMzeC$a3@bjfNCh<~A24Uy#Ko~T_5t!MVy7N*H^P(I*K8A)P$bUsNWXB(b56<`9H0Yc`1uus!Z;@wO#1I- zuWl`_9^QUUUI(npGXrQ=^kJo6hO22+gKVu!zUsVOzMNdRd_P?%sO#)Q*jop5H$;#! zuXa%)JAUCI2WA&G>#Z50`I8iw*>S2ku<7SNlgI zVdrmN#$kR;AjLc`ITLWCQ4XU#ZHO=*Xl_1XMq1zAIH62%8D&C9hE zi+Y6sxCX*sC2Ze#@5|AN1rN7Qx10=&dP(uDVl?HskAFQl-65!J!{*(+0=$G|I=9P( zV!B+*G?_#QWTzbd0c>ZKBO<>LT+g%^)dW5;$T@N}iy?F{7F|ONzn*6ODWh*H>*ZzW z5#vp_y0*t({9nX0A+|fRuU*(mpJubjRqR#WZVzQoyBrlhStWx@j!}8*pERg@hi&7G z8bb)6qxYgMg%mJQC&-E?sq4ocA_uO)82lzY3mj}va4sN25J<_%q41N^Cw+AZ4@K44 zy9bdf&1Q9Kx(OC&GoktBnrUM%q@deWX(^=c*@SAGQ+wSMI{m)f+IJDwq_pW;S-fb9 zNX>3pdS`h0|6|48r8eDlj!`+r`hz89c`LMCa)f287&i;MuE_AC$XTZs=%uPxX%db{ ztXor11ql!i?gvtcB75>VKne{5q!0&oSi^Z(`M7lTcFPkuSIt?*DCfE8q#&I{um?c7 z+PG2f10(k{s#J~>{4K_P_E0o(WIp3YK+jzpm$K3v^ zfH{o{BBT1}=vS){^}kk+T$HIbr_TN_ZpKrd+r3_RCr0aw49S^UA@=b)uQIcXTITG@yDVWSOjm-j(lb3U@$>U>D|`EWmVYFW0Q4;>z5|3-?b9u0*eJfhUeAZ7KH zJ{Zf!2|o}j)F72$^jI7@M@9)Hv4~PJaJK@j>a*mV_KQ7LvPaDSg8v@Jf)4iEY2Jx3 zdx%l4YS%!0KdzWC*aKpqi(Vr6l8>TIOth+B)ikcPHHZb~3}cw&dd!m=MvAfd(fZ>#6wOg*Sd#2kK;lPmWR9=#>hl`-aPS;iJ+K zdIPIXG$;C`d!Q+ma6<6Z@(*1VnNMG5UT_Fj&o~EqwX$Zm%X)Ef)K*>GVH2{!XgXc3 zDg(RDXyU3%!PAVcO5uxO*To;Q@_+qjN(AZ4ZWhIvJ?%BO!a!1fe|5#qU-$?S&-r<^ zOA`ry4%E?+Z`S~Yd?NcyIR`)Cq1y0b%0IR@T&D>X=HyWSDQqWt|J32hs>S>}aV%TN zUG(7R_8pq_hF9pwfV9{QiY@)LCh6NS%dhpI#n5mt=faOcjtz+~aN`M46c>kqw&g5P z0ZqE35c<+3CDz?a_|N1Z08M`gK@n?BjqYL->{QGyV^#??~>LuVh$C3!6s?xaD=ud0$otUJAR5r_L_N)8TtgV zo|+=Ht^vTYhaZkVda})_jW5|Xmb)7NSR~lrH{Z1u!rwP9p{r@Ls$8V~PjJUMH#BZ! z-&*d0KVp}4<`M2Z`60qpWkS8a&CDvYVW?e2a#`8#dqJDBl6mz?%IB>zaiJAO+&D!#-)g-DXmBe!#8S)uQVjyMz_CR1&P0Q*$2ST4DcP zqkXi^(F1=oed>UFE`B-pH$xJH+hy!@(#hLJ=#_}x#Pp*|EemfoXbO;=&^KG0y~_-i zuT$6QpYPfP&iH6Ax7gq$sb6|dbE;3d$HHXftL&mBJPr*#S59WPmrgP2eQI!f8+}L5 zW7zlGl#Eug$AG$L9Vq*|ZTlM2ymzbxzTrD6G}sqx_g3cX8$oo(ci#{P#wXu+M64U{ z-}X90lZk2+DsgAJWN2zb^Yb(csmkrIm`~-xuFM&cR;?hK{kL{w5z|^#?!pSVEQ^Sn zV@XGfKVW6yWTB$_zL;vvt?*6!)=|zaW|s?Ek%7-TFOJria}}1EEXa{5av9mF@Alo+ zOMlNs8zDX&J)Wso^5%hIev)3O9U{CTLKt3>chlo6v?$R4beLo>#?E(QeerrFH3u0l zFBMWl`@S%{I#AsU5Jcx&CZ zRW`{jBleqce=zn!Hm*ED04111(v0VVBL2mzVM0)_a`;DZ@Y3@`(~SnS{|&ghZGirg ziD=A2y=2N+oN}3?7H_0i2z0j#)$+vYbuKq7=+aPBB}mfSxmvAno%wJg`hMaWG0#fE zNp5tn=`W5W6*AK&y{3Rrb{O(%B4aSlaFIGzNm;l%$?=9*C7^NpfGGV><2D}JHKLrW;?sAjY^U`mp^7p@uQ)+t zz~UUb^gsl>V8zhpG&IJV*7XV3sgn1OCn;Gcwi1YaUsouo7%c!=p4*IW4b&+)el+1< zq+2pxJbXf3Kj<;OlgZNmkm|g_Df*up0ZY^jI;sUR)4zKCVIrmioX=RR5>5xMUCz!$ zXLObM`<Za@{Q|e$nySw5aLeVmD>$<=<%>*H>*)i+A~dE}At#tZDoQ8x11qH|)%o zTDQ{x?tVmd+6#b(V=ir`mFt3ptgGzsys=dq3Ke^8 z*I1I}*I;e2ihIs}SI(MiRNa_XLxaR!JCMrngx>+eT!FPihZ1?$w)-`mlEM9t|7mz1 zWV%y2Y9*`laZ^XXL;9ghA9FvwpU1fmXvpEVbxEevZ&1NdDBniYXtzNJ!fSy8FnKP&XIpvpauujNzMs#MESC7TD)_UDa^^| zipnf;oarAQ20&AwAKNjN^xK*4^TOo&Q4xZZc8bTU#e0x7bh)+eC8!9dffXCh==}ux#`T53mZ;ov=~C^`Yc?; z0dKlESt7Dd^qY>wL`0i?(WL%=8cteBdSXU;gcre{nm69wvvv}~Qy~>Q3Qb4zam!xL%C`Qq2}HHOJ8JEH1Q(^0z$OE$YP?F(;^FO=ITS$ZG9&}?YX;08lkH-Vo=ZdQfCFe6&JyFa77sFz zQBuCx*Zpt(jqG)_7|VBcdP89!GzKxrD4D|fz>eg{M*Ri6;4 z0*jL;bUb~~xBSExIg;udXqk>7I+EdNnbm1tXzmaMH1%>dI(0fn-K&aTdWQn+kpWbut*G5%( zjv*f8DDuv?H4!?C$}Q%VCq#L}ucGKd2}%}Vi^{)5w(KyhPGzggu&#cw3Eqn45TZ&2 zh}QsYh%QV34@K7rv8s&hniE6h!cR$Pa=R2LXbv=o0!UIpf-2!0V8P|A5qZYekQp|P z+R7P^5J~p`Gmu4!omeZu|4+(!7(M)q@l57#EQQq18MhE@@=5?nw{r07igIJM(1!<- z02J^?>Ln{0biPlam8=?=LB7SHB{J`&K*YsI@wWNeXhi08#LP zW=G0{C|Eh%35-nHymw(l%JM6RQUnbPCINEj_2`v->s0_Hkx6t^X3*xQUwwQXrUkVXNCpysV zjy&=?Hv|B6b}{9}0~zNQm8P(5qET7MiRtJXXUzfIp_}YUE4$c1=Fe^K#MSe-^Crft zrS~HA)IK>#;)pitoDHFccFbZPh|h0A)t``_59c&?3u+y1MR%{=8EIjKke@lrRdh~o zFHPA7ffj4=zfANsXY#Rt>~DK%Ner?g0L(J$XXPFp3p^A#w>~ipb8z9gl_%)b+aY@q z*)`Jy@UAElvfM5?3bKQ@HK`=AAZ8Wa^k1+eLp+CPFt$$qoroQ9{$iez{Qnse*Em~F zNMID5pLU9!^afj1H2%ktxTW`?Q*ml#1H=Tt5fE-VwR!-s`ia;3{+8QaPTMcxOFo3C zZ^*0u_Bde1L|4so_I__*ykWR|OnUkr5INCgPPIf`C-kK>o&3^`K72h@4A=osN_0sc z5BiB2t3RfvZaZa}Z>AnsDFIy=N}DfM&F$5KaWn^L8IZJ=0s%3 z*|W9aAA~AytB<#6T2;_Ax&30FUG zB4$G!$%z0b!Zz^OLfRG%sp*HTlm7gi81Sp>vEBnNcIrtr7>2yGAsVdJv{G`TUv0;jVZ=c5i^MeIq;F1a>^ zEV;HQz8cN0TV(WDh|LIS4i4WN|U0b5jic|?h?Vp8Gp{>?z{sRL>PAnNy! ze8MqLkh;_9tiq$#I9dZPTOw(c08VV^23zTTfG``$h*_j zpXwF8^`Aq@dd=rCKlz^-NkZ9iynLes0p3tBdLKZ?(8>S<|P1W&m`MfTG;1U4!=XKYGITa6eg42yhQ`uF$KUhe+5X$`xO( z9T*U-#|vE;>Z*kuqUP{|E~r-HAa6=C(ABDiU80_ZeHF%V&=Fmu4X-}8lqcO{q|WQY zqWE@RSgQvQCrQlh;sSFn=D?pYa>^RSQ0VF#G$`_g)nhvtLKdJ7xAZOUuR7J>AI4S% z!#|w&-p7-;few_zJ;4V{IUnU0{ts!7I#LO`xM+RexRiKDc_S$|eZ77L(KnPmsps-U zegQ^;Opk|=;M_ZXpn>JH*Ne1@1gF-|H~*dQKBFJ(86dHK;eH1q+mREXf`N~pV@u}G z*Wz!FN)nttilfUMY8wYpqOFiHJy5(qPYG0W0gAU=3V=5r&i5iolr`GJ#Z7m52l+|Y z2;-NHuZUpH0P`0`O4k0On1@=jNe#f>yDh&EGh(S0pLl)mUX1g|e7h88ryO!2MDMp3DQcHfnU7_Oq;!EN{~e07is7m9jt3jq_JI(wHS*^xsESa5&@CPMYgp2mf}OD@_MKaGlzLc%#vD*pLc27>87E=j*_2MfYrQ z#c$Oz zl@C%^(JT zXfsRpvGn@>OPzyQHG)~n3a~%#PS~)T64`cl>*^@6n4zKocyH&o8a{Iamx<3%SZC>pclF{jHH}$Dr z44NpvZDxSXv+m#rr=oXY?)=?{a%;Gpxjs(POmCsXW;ST7W2&$F&7e6Jy}ke7T?uY* z;d6Kz8$)cV#+V~5sax{?T9p=q5vuC#*o(%SQorE}fI`3$YaNJ~-?$Ld|GLfJKKy8If(k@0&; z#gO`3im^uDTIA{&2DMJ78Jrzx&h-u4Utikv%c8^g#;An!418bP?e%YMlhoz%*;UsA zTa-U_z*#MK?v|i%W6+!nJ`xe_#JF5>>Rs=^n0wpXlN()b8jIS;9!fVA8x4#ePG_}N zSwH??)4V)?1zZDk^(MR(d`0s96FXOt>`5X8hTaJa-W=)wLGYk#9(gZ39ythLO!-=9 zsSE!|@;k5VF~#pt@$&wl8s2D zAk&Lr@o)ik%E6V!V7%c3T({- zLID6;ck(uqYoX6>#e>I>!N|ko<#sY;N`v*7I9kmrgDpRhE=!ljQ|#%LzO+U?fdTSt ztIC)z>})-IMnUOM2^1gnJ~0DpC7hFdP&%6`1lCl@PGOPx6f%<~`1pQiRr_yb$-8Hc z{Ex*toQrrkDU9!^>XnCoMtZ!f$*iZK{l}KSman$Ea+z%o`M(x7>K10{woV_jDY0DHt#Ts87 zs@?a6lAT4FM;@9;sQ`0R7Wv=P0mHn%X4cl~vmA1>LtQ=@>ZY{wws)QT4Evjo&2O35 z3^hw85VbF_4}QdM?(xqJjpQ_f4kSb5p(@saqd~+|Rq1oZ+w}OxU-&smu_VcJ9H`dA zE^m@fE@@127&>PXOA-!_Mf5A7c%0+#%x@@I3WQ%eVAhWl4P42}2quXe1b8TPRY=}M$(XY77F z7$Sup?_=9koEMdQ$d1?*o_YLso}`I%Wuh-uJ-#1Y<@e1DvLNOeQWVcUr36j^5mnBx z@?yiyoS}V`(8H<((OZ@R3PU4zy&M#fG)SG^xhi)?)5`MZf5^*_HS~03cpi{ESZ{B8T`VGc&ibQoS zgdmFHmn8VPT{0B-^luHTj=rM9Dgn1ceFzuY@mrQ-Jk=tAbw{0057MMt0ZqEfxhvMW z>!mE4GFgiuZl$tM^m{)2(`fN=EPaflGFxPT+lcifI;7@J>6%v!@vHryBTEcepfihL z)y%)>+NYI(*w>4tmV5RlI)yLJf(G=#c0AN}WG+wT;E&fnv6ZCu`rg->mmIFuGpEsP zRbL~kV55m2_<-nkK{ia$3g6TYheC8Q9WAJl|MTBP)eQYTk* zG*@;Oww?VOO%AS(O5)|-0N#rRn7#eoLpN9dpYQ3%q@R09tUFG=&Q^mKU@O>a7=4sK zioK;kR%o7nI}Tv=$jWiNd^O;eS=Ei&1+el*XWEM)0(ZXTUS%DOhKz1XO{C{5YWQAg z){*HYisqxpR_&k?*3U@yBpDAjlybL7H|oNaa*5Y*jt%YYp6Cml>i23@`EWCE@a)F+ zV#jD~lkz<>9~mQkcl~JsQO+oO<9~^1{s#DcS*2DyvIu(DPJ%$H$~c96KJ9VzU`xpx zI29J3d8pPk$%N(BS#&@+OWSWw2=F2n|;v%M_-sAv2j+G0E z-0ngq3v6U*UY5zhvaV$A?lzMJ5wck>qky>Rt8H;V@%Y$TJ#=%29;kt3e`W45?isHvCaajz4YlA7jBxAL(51XanIPj`7d(u-r21j z@Oi;{-hIEh_}0a_wa-mamj41D*ZrSzk96Y%AB8#(+rDZ!Non8rj4odu&yr~br1wkA z;S?H{Mzy2OSrRc^(;)-iM-m)Fa7St8=fpQyukThZOpJ$P_5~sePS(p#rfD zXv{=8);Y?ORV23^yWI@;E!0Gkupn5zHyB42h;*y1ib6PGP~w_fV_s_X#Yta;;K$z|4h((IoG=uy44 z?-c9?U!-kI&2pB40Y&uEm~~MC2O^0;XDf;qLOLZ`7_-tv5hclR%ZqO=vm`$=W+iM1 zkrE}|tUWj_O!^iuzZF+y5v-+&j*7Iaj0<%`zPcMGgi&=iHFh~NFG&MuygG#o6UNEXU+F`Azkca6zsb zO(!#asL{!*y>rv4zfsHUaizRlWSQzGkpli<%1%M}eq$FAb8V(J%z_Zc(#g396C!Iu zzH(Bi#93wHOFRKYs*Q;!J_&luB3%|s(KC-aJNWd*LS7T@+0~FHEc_FBY1R?Fz}nf< zsJKkVEGbz~O5Fu4&18P|8#Ae(@%rQUmuDwwPY|YW{!(>rS&R^C|1jD<2(e072zOFG zt72>boP>>CBFxAPZP$oZ@lLGU0)Kf0&NS^gV`_~BP~z|=|Gy`5VRx9i`T^`)ab4uH z0XCrNVdf4(%hbl}b@BoG*IOBs6iD9YX_hNi zd0@n!7?x|Jk~azpX}SltG`+0Rqs=f42f9!+GSA&eiTcO|XlPf4u7?{zXqR+^l>ME{ z3$%CH$pXy&N>hd=cqKfS&5mxvnkHtL_e!FD_!k4DlF-o@MsoZXUvSUVKFAJXHNZ_vg z;(JBYB}Ss+5^kmnmZ*sHr0HxT85qtyy9{#FczR@?xqkeH{Guto;J)d6=&I@cMbjj3 zDPVrP2)S7lU3zyF)z|ic3r}Qp*|vSzR@}Qq&3tk`qV4+6$*ClN$r8oQqR!H3W69U^pl`|rtgFkUaLE^4Qwxn&D%BlW{GZo~E4 z(fA0=<=nh;N?T)&`*otTT6;(`lk}GaiEeStByqB?TI!C8;B;U5D9qT6wCoU$wD zP1&B(zx-AS&cpv6&>8Vv|D#TVE_ze`dV*j3PT7PoG)RU(EKrgF$7OL)GU5@Ll{tfg zf9TX=2v2EIHb;D@u&j2MO!G%`Z$OkbRLX^>ntgEfUC%o-LD@DSs}+!gBs5mY7DcF5 zzAI;;?&Xgba<9o)6^$ce4osZwE0;|MR}-kblsI&rekdAMU9ZNgEskN!Jwdxj?XL5Wn3ug@xoj zNwg(t0=e!{cqYx*7J(_d6iGab$o1FUwy9=qir#HeM(u!bzNBXXH?jzKINg&rgiMPf zwy2M2{DrOE=jQb)ZpDX9gf*Ondweo12$1zeTQkGQs_pLmHs|9v;=?b}EJTk)&W^>0 zS5$X;AD%V)@eR>rvs}4nPzj>vbHo<}1(R~)J0KTGxrr@07D#_Sw&(+n1Y3CxOi(Oj zF>nOzU%(LqnSVg~FYKG2n#zWL<;MqpeyXMTFSmo|{mpwAi5ug=4uwQ1=s=%M_mHwv zrTbn}yiB;vEsO#82z_nHL>o!D`q=ddd_8ii^2@$^#f)p%a;l^5d`sx#L6R*LMl zG|tludz1m@XU7vAil(DHVi-t?iAu5KNeZ1Vjbl;Z0n{Mz2l#fBOtNKh*^U@gL`R|( zAsW6N-~1@t1tCunmbV+-KOJ+*;&SoUP;~3xs+G8jAkBA}WO@N89c8sV#tyk?C5u=n zFXHJfZhjS}c4=Jbb@#Y>RFLqk%n5~e-_4KhAY{3ZH2pRsBJSnkzvqO!9i%QH|SDRGd1NzyYHleAmp!7$P3T|x(w3E!W1^sYi2-0hHRkG z0#>!zWodoN!jfl|xsufU66uGeyk)!!zH8Rl>dTysjG;0G(A=cUh9hiCL1@FW`61ig z8diR!WE%rWatv6BDYpkxXLVY0gOYiai>pIVbqxX9BrSHOj}rFZo>^eoay1jm7gL{&!^ROm?<%)tV;5Y+m}IRu zk$HQ8^hh*x!ET52sY_#rshC%-IGHnsVLl%u@NJ4Qdw}b(Sv+AO|3y>0viN*Hk@zu* z7o1RFeTq?X!1Y(Nc*;V)XVVK9gV$7IejvW|e(Z!~+eo+=UXQnstMtQXf*Xgx?kG8%e!j{7peVTTs7#!@QmnSEW9tVIQ zN1AmP1p6^nlj|#|XO3O1qN=mV8Fs~Ay2^BJSj@V+jgZ7J?2Gq<+xSB*p(P5A zngg)Hf@v2qqp252aj~76zPCCg`Hm6FFPmJ27_RU55jyKgNghLM!4?=Y5Mma#7*i4a zpTj`GVjCIrr?|&B9#4}3kH{{Vi$m?{O83bwu#2CtTru~?eZuvy(oz~daqN$8`)p%m z_=@07ZfZ2Gx7(WqG3-Tf^KS`-;oAvPu_DEN8rcGem=&aWP1iV_)ICYo#PC&iXrA<3 zT1Qr^6NVW_gPiI237JEyxI`(ibJH>2NYQBV`wr1K)V6rd^J78BaGyUPKbDbNe_zrh zT#;zMuz=hF-gh7Yjy_oQL-zWhBNT6y&+7Y#0zE~X&zCJSd_ahGmQ1v-kk>7yYMv4Wl(u@vsNo)t8q3{;c+7&*|JW_)oCg%?Y5znyq(@vCx+@R|pOcujQpt-8>H~10H$bOXq+pwx< zr(sItk#g#l+$ z!ku$=XZslIIk%p4+*r5zB4-?=ZWg3+1l&XKz^lWPA=bCgI#XMjo@*abA~qy{3@I7k zx?gOA@>L~o{D5MM6D4LR1L+qPuJ}xaUNlG-!2A>Di?2t>eW7A%Gx1U*ff}fUhv7%a z5&kMDh(I$>EFm27AQc(({)2ug?VNqwJk| ze+_}&=Jz*Iy&B4R21b+vcj{dp3oI5uf98JS1hAg1M}(9}TXZ#U}H*2AC&#vo$a4@yq?70SeNCKTf(JoR;8v7+=p+h z&eD1kgV2XpHryP;8P9kSjlk(%7|R2H3AA4TlEtPU1FW>GfrVp(c@0Bh{R5;h@L*-~ zo!29teWnupXo2s`NY#t;;Sb66e4s z%tRH^d~3;~I-uvTV0s=PKM0nT{^0J_ZV}K*Iz3N*p27mmULZ29jCcRmJJoA+6 z>fkFtMZq7>5mrx5xs@~N&oJn(YL$lpDoRQ0*8QOjK=gQdErZb9DQ^ns91vqnVoxhp zHA{^Rd+}yfYkGp(WUN0p%NN5uw8^4;yICT3c&aqKS)zEm8R5RT8Ijhnz|ETVzW+vz zCg6R)LTbN4;B}bCbbT;cRPf!Ozase-ryO@DSp`dNZepU-@Y1GeE9u{1AMxGoF8{uW zYXTpBoOoU5gtropP6igyUS<`$&BtBxIC@38t>9uHWcjC0wchLJJmd=8Rcl}MO977r zek2DiK}JaXisgk)@o!N4#tKXTRC9#1gIJ`ydmt@L8Mt{0A`mrTCB@@o2W)r5Yv|Pm z9o1fuzcZGJS3An_xFl8QBXRC3_-jW%4LGbo70jz8y6Imjt!9k%q<@E1VA5@UOpeH@ zMp2*%^yHe#DuVF!#I&_~gbqb^C=$96sqf_6TGHx7W5!-xu;MH`SXs2<%-|>y)cNdT zgXo;$&lcG}ZY=T9scRrzTwvt@fLQB)X)Dy_Ft}Tdt&c>; zFjy}H@P_r2Pow$w++Mee-U_)CrRFUGV%y8)Zv%)h1@4AnbRQ0aXWdzny67m!rveQ^0;#*N z4ncFD$C6&_+BC$xz*`wPOrMLQGg4?LyCr9yMjSArWY z(k<|Yd0#fy72@i2=ZQ_^t^Un*ukO_stT}S`truQQ@iLYDs3fZ$@)iEJlEe`TyV-dd384~!e2@%bU$jh<@*u<8 zt@e`HyD@Y!&RBPwjvwo4>>VzhRV?xA3Fj7+1wqCnaJ=4g!E0(;H^Sy+e)ii$+$ELf zGJ{yAuQGpm(aGFho;5V2^i)8vdee90jz<^ zW=`%hxsE4AE2|cc^+BDlNxhG~-f%~(eq9Ba4yN=Q0d9;F1f!KR>4okBjQztu zKu0u#Jb(E`OZ*o`L=uI~s}umy`CwVfI1B(f7d@BJEU*`ymb&{SuDoL+_EE)=*{h^Y z2QS*SzJ~qH`#w5x++jKUkYw*7j#;h2&gcyw$!CHXujeaftVdMwn zMkDM)`&<>R;);Pi%hZbI%eExnZdHCl-pq!y;{PAv`E!TmI{fd)U>U+M>Na1?wm9_s z2JJ)t^8yaHRVu=DP_y|~wk4qFH*8;EC0W|2`hR7o1@{F#aQ05%>@3fFuc_Bu2v1f8 zyNeQWA2Y*txsxPyzET(F#hu`OV#z4ai<`Ze$k=krPy&RK_Ickm^&c0)>qmUVHY1#m zwC{na1!P@*ha2}SHik_1ERB888yv^-=cTe*KK)U-KK-yU#0k!2bWtl*oascSi)uzS zl1aoaCD(+Q1JaW0rF3m#B{eBDq3XFQ$-1aIaz2**SfF=s>=^;~%1+7cJp_lLrB{n8 zpZ>HQ0K9+<;`JM@f=nGU-5qY60&IzeDOMevK(nay%C@POkN8|l6Q?9p+<%>B3Te7O z;_LiG;wm%7y#6?A62VNcm)xm31<>2s2st|U#Ys5Q5VJot5nj2&U&!jDx7satb&$#E zRDF2Jt4D8jRDQ%bt^n5in~spseEW#6L<#>~WGp~Z3;9@#_FBuCd$RGfYC*U2*pbqh zz%A#8!b}S?-Kv(DMl7p_H*53a9~M;!QIh}4?fzV9b8<3Wh=Md*30>O?9-o7z)Ndcp z0)WSl@*`Vm*F~aMgQ)a&$<}GrpJ%ceEMSG8OKm!81(uu~P~0-<2d$`dMQ7KUJG=qy zi`XN{Hm&PHk{_p;s&7}K;{t@oGFB+YoNgaWd>(Tma9h((iw$q=)hZQ3q3$kr3RRio z;)^m!Ez**!Z)| z{ZOb)n!rtXE#qG={O#NkEvGC?&i)~O0P*g}0-TowQ_Xi+oud-p*Zc1@=p}ypNoD0R zPc!?K`oX)t{3Ixr?V3yjda20s1=D(%rj{s4Uk{rQrprj>vyC>k2Mg3Ysh>Bk;qWL}T+X=*+a zXwZ~kbR~H*dkNsf3_G<_!wh3g;2q|f-4RX2cHCP+o>p9H=3F{dB5t+{51^TWO8LLM z`6E>NLFUaoj8t$!iQ5-cQ_*khlm~_0I#yR?mAEQi#7@Z<;Re3j`&s(tN~m8^tBQLi z!vPDSc1v9a$xKMo4Ns1Nt}_Ldjhd?zYXw$B4AtR<$<>tb$~QY8b6k{n7E)*35%WM%|2JDkKI&q##p=z$a&dNhv5i~s6Yd(oqN?GwM82@8+OWAza@-o68y z6VO&)AaS3tcFZSTHufsv(xp!pCXAU zPI5Wjb%D06kwpDmynLf{u{g&>{epX4*4H^a7VaCzX8tBXJ8Wph{)dY8Itl8Rrw@7$?0+a=W^Dibq4|%C zH|!Fmu8DaQjTJfN)l~X4QUq=r=2teMgC-Nkx!&_3R=915g6y`3O=;&P`ZVo3)_PN8 zZhWF2!tcBtEUre+lPk=td3FvjWb!-TJ!3X``mWKRXSeZ5XT@4Zg6&7UD5~_eATU$$ zPdV>zhkOL?I4c3SPZb$tW8g^r5vvp|t?nfDqUL@&+2e;9K3~j>JLq5MxCBPO=!)bJ z@gNuzX>q$`uF~yrE9*|SSsWU#wGEJ9321w0#Io0ITX~MKP`r5T6yl#cnszQH=m8Of zJK4UTEmXd=>wn0hq|)q1l^Ib|8P=ggWYG_l*=I(eA6 zvxx;X#%1K`XJpS;33N9{QSbzk>WUc=`e(5==+eB4S0miv-!`0$uh*cM2;!quh+1$L8#}*S+j?zUoDHl6y9V!YoX(a6)G+H(;a8TPn2uvsw|;W= zD+9M?N_~NRDUrZAon+GjaI6kNcFaR1nY=q_@lP)9dYJMzgq34!w|-i7PQ64aZZ-rz3G zQ@Go6?70^cm=cU*6w0E&D=&TdnG@_UN5{a0~a z{^vK(-^M2&vWsn@8yByxG~}uXqDcy?&qep%-3I9zxP8A8ToikuzUTi+OPa(3F@I%w zUYq^OA?RcA3^Xrs)Uot=+Ln$7iqMl}tczz>4@|96>cx?YD?zwhz+aaZ*~v!F63+mtKeYj$1U~SY(+$d zwTCmlFvx0m>cA=`?e?7m!S2W3H^>z@u4{p0(dCS#;W=?)rF;~}mtF1*+UX5KjxZ0} zvBG`xi=c-_d%$Z^y@v@tug;!tFjQ@cGu$^Av~>I^MI82%OXNAzSlXgrQ4mMscae<8 z)B4vCeZ^w``M^c5RYP9?xiD;0fDHdZf8M8(D)A0an_?vz*<&{`r7zZaPbl#0u#nz` zlPDdzJ#Bq8Ww52RbM9!PR7l{QZsmSF>?2V7(A#XFO#ZJZyNZE>hxBxA?}AZ=1D z7e?7TvdB9^JnH=^1!%m2p5>;(s|l9Phi_j2*ophjK2<6cA(w80-AmJBDpIaQ%dd@3 zy4u#(aJb*{@je_Qoel_x1R$dk-f6Vt&W&6k9VwseC}CcCy=||{7xHk?lYLh){zANI zIS8>XUY0v>je=jz2#`dtsI`0Cd5$%B7*v4S=^s~A*V?UAS`8-UBZV7-!OaQsDgg$W z_aH^WGYsvs=rIgk&3jwND7}vCNrM*C7ZUZ~Orokes?kPXM>3b_fE|V`T z;HuT^uiFYv@@^_8g>QdbcCT6WR9wu!KcV?Y9`n&ER?S+~o9FVz2e9eV8r8ji%V@q= z@Cl9YMVez>YI-0y314#gM8|VEU9w>2orBa_6%&ECwx}mg8`q z;wsk;yTs#2;iI25jy$PT-bNm!@_JVF60W1ykl(NN<#YHAjb^N;9!=z4@%@M?3EAq4 z7WeVO95)WfRvg(4G(%sPL5g1Ej|l}U%N+=O?V(7hA# zw*ekyDO&=Se*1(3EU$V5#hWbtI?5I5$2!;qvXXw1rfdTHsKBfAy$Q?ez=0-RNXY&* z+XJT8IAhgMv)jKX7wyu*gw1xMGCMC@)V=6@mm|4Y1r!`#U;UkupTsd6+eU zxo{L!GZOR>ffMQgj;tO7zI1#<95PwPpo=(0^9~tpyt>JvseZigm>pS3wp;~+m%1XD zk2q56B98pODi&LewEoj|AsVoKoQH?k8O*|>I2n>Ds zo5|_PH%DiE!D}1&#V6KgxjIEg!#jKU`EvF{h+geHB{^3fNTN=3R_%&d1VOi71{Zj| zaO^R*4p!Dg1Ml<`BICnx`RBH20o1yWjK=*k)hxJ+j3wT=76^=ry8e_gKqLq;>88~M zU^rgQ?TaEAN{G2;XyhX)b=y8rImDmG(D-S+e3wE~BcoS8-TOJy26z8qi@$HLwr72o zGiPMgfAqS9!3$}@nK)0Et+K^V2Ke^eO!qnV>I>$-Lqws$?{a?Uyb&=isK;G_IE>Xt zn~pafd`y9N#)Q3Y8lF2-f(bO6oCtaRM~oqJG9Rk_CIN>$tV=K%l|JbnJ8oINFnC*UT@Ig5jM8&E@+pV6m}Uyq>HUOwg=WY zB&GZ@HW(hYh7%v*&J7FJet+U+k;^TJ68jl*4#}JPK>BkT>$6T3oi1y zU!3ef%}hp_UVlpX-`QSGu1uB0XcBJ@)u(JknUvrPYr(s>+(EBGN%o+N$@ddka<5@n z3`^E1Sz)NlC~iiLHTCmlQ^gm&PKt99UJrKUVf-8U5!)Q8^*e|eO}I{3qQsDy`=zXX z{j8ht)BWZ&zn+W>z9ID84;raAvQ+laRMk_sgRHdwWT%Asu8SE%NEO>Q6N7pWg?92xr{%>M2 zDzS2P%-@HqD517-lvC1a#T#aXoVc2`b*QKbr)JZ#RjzUK$;7zsmlK#&=52x02K_AV z4-y)&P^8%C2@aR3wp0ea*)BRF8dndgq#~5T1iVc*Ak^FW2!MGP1;@(U68L0V#9jQO zLW567k$c60=<3XvkTZvduTGJB+CtYN*I2Eakb6Bh_(pcfV#2h5!Wr!mJC5YeJ{HKW z*A>guC(E%l+q=*DZCizJVfAR{qcYs10nqhwQ;knb8`d5s9?$&#&6bj>27c09c&bxO zr~JAXZ&xN*lkKW~aOgKulRweqvvk^vN68O%$Y7?zoKUd|$F)61t(V=Jl$!FeH?|e4 zR(-ehnv0<*&R!z=T-%-c2KZt6Mk+7tMy$R|v!o4^yho`tJ1+F1ay>NMU)(_~hK%L~aR?*3~IK(t6R(7VEh!jMvmW zn>8_C#%TyKUJcbvYS=}6SFbuMMjL7X&5xzC#{za{xu$A>h-g#<6_&N5;V^wG2fh`+lU3A z%ATkdBuI>!?b}s_T3CT|@c2>`-Nr4fEplr%p}xW*>Y?LyLg~Ozv-vkCQ>;g;n@{;clk;|}Mw--Jhp^rBXShAc`AoGyzYecdEO zN#4vqi&WnGHV>Tbb&h5B5rVHr$j2;XoBB}f*CTA&pw2=m%TPgF;jCaoxD!!4C89yI zZ=WZjF79qN7r#w{pI-8-Y@&Hv zV1(~x84Q~`RpgP(^LsY=5d#5}f>z&Q*(jI6wJmq*10IXIsS@8|93EDE?9P@OyS+xa zKS8UVNFPlO7+16Su7IcnXRcV5Q>9<3iDfqzt0s|CV`!7ev1Op#TJs)zgy|BZ26z!~M^FM2OJV`#kD878!xD{;qI z?2B@Gbj-YpD*2Irdq^hinhK~ZAX+wndZx}hJVZgSecpFa5PB!ll_+h*~YjB49l5^J}PXZF4WP45#lfi~#KZorunmB_hw+4iD*@%p7I*?nDsz2?YYjRF66AfrEce zXeC92{}x1bDftO`h8L{VnsTtilfoHw2q8Tdm#Ozy zbGS}~urp20^J#VkR2ACpnjZYYTKzR<(t$YXh?L&nTK!@#53wXLf}``5v31gc%Ar30 z0hf;Vm`J1!+%}tpD?xVIbiL|9(0`=i{2S+0s@>x(FW67cs|cQfZwNVAG!yq7doQcd zZ{2t@go2w6Ll^Uqz2Pe=0s0MBQG2$*{M%!=nDZ?rayf^=0s@}RoU8j?>|lNiH`9KM z{+fD%W3tqDZpiaI8c78YvN5~Luw*HdDiCDJLGf-?%cud z$zsluSL13T!Fku_HMit%{qDr`gVV);%zb|Kjwicij~=za+y#M_b7ugXF|CJPM#FlQ z+kz*zbq&6*u*dS0^={8(X-PhA@ZDKo$k%zSx}~GzVr2-B=*H5n;0Y*EDU6o#=9qMV zWD=;bdU3?z&SF>Q2I6IYU#s%zc*D_OzG3T=G&g8h_1ShePwzB){Fv8I(XtjNme}5W zW>aQXH0#92xoU}?87`VN0jEp1oRy`>Rv9_MJkwSZXP}}NcoI&lJonER-w&B=xcHc& zfe7`>?kQ{cg@6r<&nEQkGp|=EIvO@ZgLxkarMUR*% zPtx1z8R+!2Vg}xqg`?%$oYc6?&p-E`(Cfhkk*&SvwK5Zr-ofKrKNrO}oR}um!y-jC zJX%z(4)~c)OiSuv6cao-mTPs)yCQkA6&8sPT!=?LE^5Ba5PR)-6p(5j9NI@Z0&+SU zJnJg=598;A>CwRw5Ad2oi|@M8e~@^H8|+gjphq#HYdT}HKq`<>*X1bm6VWsp!N2rj&vK|GuI zYbxTkJ-j*oGvVA(4Qd8)=p&bL2(N~Afv+OM^C!gB7KDg!tzV_2-xai27-m`ikh&m!W>Ei`CFL($Z;|3D(?@z1=-fO@C-e8$nstllz=6+EvI&(tHC zc~kEs+?jtvZxP3H>*?HqhzH4grvoL*U_VY6Pm`Ca(rtEEp*xtoy%obpA&w-KxAy$j-5(jYRU2#&jrGBUoBHT^V2?qZBau?`*VrP+?}UMaC@YvK4Z zFXHNeGT;8LRyjbG>_!74;Lny3`SP)r(t+`1U5M5rkV}R)^A$`@*okD2e!uBIPP$5} z4g&!tO3{l7W7a@P`GBJtUKp>~NY_Yd(V8VWXPnrGlRj`aWimXGY7vQt{5d)s?w*Sr zC$ZsfjCJtq{AIq!ap$()7428zA503d&tqjnt3|cR=TBD9&%%kF@h5~jJtIWN(s@i~ zu168PF-}vzC9Jx@q_qW&lm$X+Rua>@XoKm6bZAlGq>8=QOJR5Aho`KT(T!dlk8xY^ zUG1p(c{51CMb$n?7xw-h@MDW2ncJPXn%!cY`G>_m)2`US{#~!5j{;;Dv>cqS(JoHB zr-Nr`d+$3m3yfw1)BWd@2};VM`PrELre2^|8#*%lY%M;J{ZC@x%DjB!#U}a_+TsBl zy=C8$*J|r#%FPNLWb+cX>XySh_s7Yq^AJqfVilxD{V!uq3HOi7JnKz z>KnmllQ%4y@t)!>EO;);t+c*m9PczDT7qa`S3iiiO~e?rVV(lOwhHA(A?1_3X~VJI zs81s%V#&{Q<>*msszqm?+H1&G2h$O<;#7lN{tC~xW7pbK%$p;*BF#%lIEULU(i{{p zN*tx{tFd+FtVv~}cv)LzohqYRg0y)41|w}k09>hq3VK_DF3-T@w2`Dt--Ig97vON^ z6^&&^Skiyv0A3;abwRptQM~W~Iqlde-i;kPHGZUfz^-uLr_E%^ZoHk3`vI+IHmCqo zl1hy>yRzG-Yt6yYIRPGqE0?DEt9&l~wEeCDbo$+%70gk@rzl@&=hZ1zo!FDK(-f_! z8}SdN=4#!(^}sgY-OeZq(F_Zf`i_x^1K;5{-x%pTtd~jxoXh72YnPb$st_tb3Zhot zm{FOg1=m2Ou*16YTpgu*1{zVH)-Y9~Nnd^lZn73s9Zy2kv^up1(p|@%?u~xNoT&cH&JUzyn9o_WIjS%f8(##Ht@Sjv;y8 zgw4uE)i40gU~jT;Je8dn5F>HZ@TOh9CH+7I!wzkf-d~DRUlWTKuXZE3*TkH8F^|N* z{iaWEoztV(EVHeDKWhiLGO$|N! zDsfKeLOGJPShqD!a7w)N-i=;V+6XUQ`9DhXOIp5$!kXA`# z2N<5%VTd=R(EyMAP$g|U2YvUE)J5x1`zs~}9RanYe`Bo`TTQ+}%|@sw!kDQ?C%tbl zPJn#3PdIe=et)i+93lGv9%I{AD{k+xL3arwhY3~>!)5GiHhD)HL}~g{tattn-yl(8 zw2*#43R9QrfUa#ufGF?%NJxZXyDkOHd+qIGiN)0oy3HPvL`rAtFQ^ZT*Gm3}5;WTR z`*L*=4j60~z?M`OpsmL!>8gr;jdNT@{OVoW(kOT|>d>C@rYtO1iBT8kuCt+`^Ush} z2VgRnQZJ!PTRYJR0D)o)9qu!NJ5_MX}8$9RMPjaZ;;z>$tzVF-dJyN_S8^lQ+5_|`s&Po;_Z967VBT+GB!+C zCD0LkLgizMy+G<<;)vrizx9aY#um%;&xQ@Mh*o7nJTxun%c;9Creyb; z>LQK#oBU<8`I)=p-jg~VpX|y@giYLyaebFhz;0X^RHNu0T*TO-8gD{eVHgMx>*L*E z0MZFxH9l_A-dn41X7DuaMgCmpaqjj_JpbqN*e`{kn$b2jte>BMvp%NV2M=gK8eSQ)=e5uGf z_(NK{*?KI34xp>qfA#6+Ls!bpHp$t;s=*Y~ya}35df~RL6JkaT-FybMy6o>@YN1m; zc_ei5p{Wt=Ibx*)^gC`6ktWt=lHXX){Y zmg{>r6VxHX#Bf~Ses7PX+p`Jwclh;4{NliIDlj!O<(xsNt7d0Ft=v$ zNRx}6Bt;;-#0{fu77sOf>8|;}sqyo(9Y!;{J#SjESV9+;k;KI?0gZhB8vsDd5h1>aoeak&5CA?4zN`|3z9#KN|J-($8@_-plz7HXDqS(Au}ROq;jrDp9oUY?Um}2yy*P>}6D>hwuJQX<}@?DWBfX`2oC_7}raTD4dw#@`%l(Hee{;V05bmvjxX=gwVag(JtmWKU+e!q(BL>%Atr`Ys|1TR3$54vzd9#wvgH5q+4T86MPYp1k|m%K3N(k(c(zB}iW z@P_BVJOey32X0Wj5F>>$^}JJMG&AFmvMq};tQQ&0%8m)t??-vWR)lV7{t9Tt&h7jx)m-9@Jt&r{o#J}<|k zbiFHs`uSNsZNxrGYpre+Axl>P*hyN0ag*!IjhJHOJR^s+21j0`6i2DDSCiM}2F+$=?9P2|zoa$lVzH;y5Db9xw;M z_Ag=CT@MJb39n7O?|44(E1dxev_`0Hm>K**Jcw{X<7p(n=I7}6z@BG)cNMR$+J+W_ zFnLHPHZ1Ne<)iee{?UG#{^x9XT-M(03%90=rdCR?_Th6C_@LLtR}D{|@|&KrrXI0i@s*0B>!;AM?^f5)&@ z6?qACZcvc-VDlv?R{hZW`L>>hYC@Q=GgKFqZrWW>L!nEUqfo8;UxMv*#VZH5^Gyoh zFOvgnd)#Js74ww>p&AmG<>qHO6Kqw67USGG|Fk~0#XaBOdVMkzQ=nk=q^se^B&;rZq%9vEM}$12I8J z#Qb%|A6uWbbq9=YxNhR?7vY1k(?uT&O#+x<1!{GY+D=(F#f#^#-|^Jn&%X3W;w;YI zvx@j5!WRCkb<-{%XRzcei@u2T5Oki6V-+vE<^Id8gD^uT6+7OL83` zY+EEl4B|f9OG*Vj7-D309S|M3c>lB!X7m3nobjaN=0C2ZN?y>&^DVeoBr}TIJpA2F zj$BL)h$nO)2!FRX#lb5y5q)5eEq~&J#H|Lw%VXTd#Yi0!3E+XTXe-1F3dw1hHJ})c z$4U`O{`-2vC-PMs7GZ z(&?hUCZSH~;!&2Ar}x?ZI+sn47}=(fE^BrPC@cv1?(jY74dZg0-${ix!lB|k-7lE( z?$!~J1dgoGC40J4@hm+5rU>GZZoJEhdIuq|xQoo_ElUuK@dGVk2|XPjy&$1f*3tRZ zAw6)L_xZ6pFjfTs$1WeCv|;!Z>Nru9BcmL5_@Z|#$7gc!qrX3M8lD|cQYX~S2 zqQ=8^%qYrq4K&z-QG&#tkp4PZB^DHe`DJKtFY%5fW!V#b4bfn4l*W{1IN9IJ$Ll2t zQOb0vP&oQIvHU$Rzh%h-(RGMu6OQ>hiw~&QOFkoXn4kkH9Z|i7G1Map_zZ zEu>{v7I9lv>D9qr4N0txH8UV>8hz=6l>UgXBCMR*Q&#y@I@781G9EfVI`>s_Nn`Z^CEj|rCWy#;BF_H;prP_ zEy!tAPs>7+`r3U2=-P8j%LxNQ5_ID*Yzx0!{ESkFKXbZMq`%T(G(H$qmqppT(0p;J zXDM2Tq^EI4!mJAz$qy)bWBftX^UZCUg%BeweNz^b9iBdGC3Q?7(#z^t(^j~K;y(8J z#^NPX7F8VRBt;n3^f+%J`(Yv1`UGLYS}3aZPnB$*)G~b0-3`?u(n>L z4N*pw2!NNHENxYAqsPj+mu73rs&xKZ|2n-O-nLCnq#n|9yup9(kCUqS zhifY+v7!j!I+VY|6i?T(AAq5o9OKG*MPBR*&B%v3G1cQG`NfY8ch<d1+(ap>!4TaGPkbPQ zCC8A1)1@Wc716wbq`87j z<#B&nVp)}bN7_?MlnI>DkUCfU(_v4SRw0&R`G|Q_0~&g#j_5QdH1AcS)4^T`g@vf>>O^aS!h&!BNvt!3p9(}K`G8PyVLM3_%KCq| zg)LER#I67+JVz8MMdCkUoN7#`vUbR>y4%$%!r(vx$BLmNHk!9y^v(a%SjSXm% zYc6D&393#56NoVShC;?|5hIMuP&$asGF6Nai>T7*40~j0vJv?14jW1LGsOQ^58_b0 zGn{^J&k>oB+`lbwH#R7MT&hLWzrPDY_aub;DYUQ*F|*d(icgHbdN6pD7koeOFd ztP{ld87$kj2sW1o>LGHXn5}@1$5iYa>vjYbs#rE6GsEi?gy3ZCMY}?Tic~Z`QGOu% z3CSpSmnv2p4Fv(X6r0D66&iyJf=a0ygFdg0fT?$0nDP3 z_!6j6dPpv}ybM%m$-Z8J%zR@iOF_ex1Df^jV;_HbRp5U0+dg25z<2=X?&=V9`sr2; z^h9y%)F^9E7}Oa$uvvo3hj08D=dM79u-G@L2d6xz@PWDr4${OJe@kQ`1xEx)e)g90 zjx|?BwBw;UsJ0RdwXmy%Y=9K#Cs=aA6AQ=8!-bKDwVv9;OPqbGzTuq6qT0Jdf6D%~ zMHreOY=@1bFF`hTWjafQ4z=G!yX|9s+Svu8;0*_{nBS2@P~V|w5rG&@I%N0?X?YTU zJ(OB0+TIzIjf#Mr)@X_ml7Q$d6TyTeSoDjeFc5v!qYtI@@#&QJ8on5MhJy*1c`Q07@9GQmZ7l<*XLz>JHgXW}E;0KC0j&JD^t{7(IL7l2T zHZka7owzo(9_Vcljwn{6amh0^lFt^1mY=B(S{QtBh;Q$!Vfo~ zYJNQ0^%II8V#JN_A3v#%>;oZv@1QqlqPIq-4Pn{Bh$onwqpa#SNywK*@lj2kU?}Frk<*V^M0T=l1nLDd(93n`gKcrpo%*C ziFF23r$W_A2H_%|fIlFGjp^qMfkbh%hOGf{voI>CSZA0(e zY(MBX{2PhYL7WDn(Ag`~f^G64w9E)y6{ypHID-(g(P)MRQp70bP99OZRtUCqWF1-q z!E3UUo@}HUp1grJN7R_y=IOxtiy%fzOl2`>eP>Ly0yQ~7D@B<>P*iMSIXX9w8PpxM zzcDv<(>C9-G1s*%6!}h`%@8YBTP}#7AJ>Z_H*RzZOh7Ic@LDq2lsg8a?MTdgVO{QIpwC>uE5b7UWX_a$J$ScW2v_Dc;?oO^Wa}y?c(4p#y1oP}rCnZ< zD_tD%^+~d%pW*(RQ4WF&^kwm2YhM#z>K0>^BWB7to|M;ammC-RP_Vag%uIwMUIym}Lb-|mNAzn*l<#G64 z5SK^MBF+XJJH3>f>cYBQXAb~VTA!i979F`h0E$+vrw)V$xjjG)h3#ljC{Nf}E+1-H zrHLRd_Qa886io3XUUp3C7&+<0tXc~v>;W@p3vDj<-&~)|P?iY?QJHEBEBf+ge)eaU z2|xR_q4m^SjYN`u?sXTCS8$#U@oB951K!p%I({1iu3~Lh$}d#8+R-izT`q62;FX&D z7S5s8su+RX=oXh;xfp5Cp%i%I<|Q~X`&mitndO7c_YZjmBAHMM^RsF|5lW%i8;@M;g z-aKGMeEBJWgXtdFCJiD$)f`~wQ)mM#e_@UpA}YBaB(=gRS<-x5N9^f!E|S%!n4-N(pc(vyl;VGek5`mLc;CWJxri;by2?clamn$qdF0LXWnW2|CqY!xTfAWI(qbl(Yetn4bs~fqq{-r?hZvH1`GtHyFn$T zMM}bngh~h~EeMJrH5Eief8+bt@4uJb`+@E9>^bK-=e+lhVfx*Joz-86b7L*m?+96jc=@EiB$`F7-mdpV(<)JW0dMHG{JbSe_QqxGKAB2BsjXn36)@YB z782rMpT&U>eLhtr{mPqp9ZwMpkFyojTiEl}GLy{kWtO-RaADc6pU*&TqgtynUNG^P z<%uymJex$J(Dqqh@r;&GwvptG2W+!V2&|VsFXVSa@;zd5Hfh~!H}a%$7?;qcY7B!= z#vTig+$QBxX)&%tZVVH$HcASq2rcA3U1~0+i`>%o%AuUDKhSO@IYF<62^nUSh~2lB zb(D53v6l@5zQ?8zbtVeB1>UWoZ~R_X^O?OHYAeff)*zanE>w^qh?dNignR~|>oJ4w zxO8ag!ll1s;}R)ksaeLi{PkF&{jefidjkUCZNB>wE9rXzO%4$HmeoX|_f6LILD?UH zO|v(2e;4{FP0-OHX)khzl76K&4;Ba8^?ZDR5x=o{996}Ief95o#xZ~HhfdbJYj`W6 zUpBl?5M@#~)}Qt;-ah~dky=BVKEQ@m&*eUr95N*q12sy?rsSCHgJ*~?x9gB6x!TQ3 z?{!DT_}Ccqtg5L7ay20}5!5n<*p|<&F-oUrt^Io?J^oUEPxr2)Us_B^e7HAsB%eT( zb}K=ETp%nVsg>&H;22Y$5&(l{Dvph=d`NsF#eOxm3fs}ne zPvd%0n$~_7?Jl~a^Rw1ekm38>LU}nmG)pVgVIpp$H#={IQyA1 z>gS>L!p9l)TZ~6#@On=qtqu0N9%FY#J%1FdfY~&b{1U~_Uo!5p;3B0_DKEE~5V#40 z*pKrBbVM;xwHSKyC#!5tuD-?4Jvlxkf;vj5u+L~eGIjZv|Lfy4hUZD}F}IM%=>~TC z(r}kqLg~)Mlu=^eY96-)OIgGEbUhLJWC(bO`x^i*JJMoz9|bhoLCU9ZN10OCr3o-! zS;yfq?1l(aTMD`_(M_<@H<--bGB_TGPVl7{I}clM0IYHo@m`6p6-TTV%`CavOmZ*l zS-0U+UBYyv?=p&DsXC47CwG)PGm1WWjs%ViE#Gr$tneBpW_8{uh6G7HFYFtS7Yv>J z{lQ}Tl>H><#-D+Mw8s~Qwt~6GU9F75?PJ&o+QjJ5X^hccqApP@Tbs5cy{JnmrRsKf z24iG#+hd30dKZen9F0oqScBsK>uD-s?~P;M&81S>_(u23pE^XUMt-v&zmQaQ68e>` z?7x&YWV9~^`J?CZ?$Dtc7{(BG5`8iS{&AQ9kSE!9WZZ=RE`4zp!em()E;C#-nG(Eh zV2d7>BDbls1mpoDm~oCnJ^lO3n#oq&%E=!FMb#{{<-{JPJj>uFF7q>yAPL+h+hPM+ zS#_P^HB|~Zrw+9{?k(A`>zU%Nh3;uAOjlpGdnmIfv^2#ZxwR3a>xCqbTK;FnIqnW; zQMT-_pRIU<<)THZS%(#8={zM7+?K13FFOs0JfccQ3NfANfa6*ElMWcXoL5~(13J8FR^9<)$K_$w@@-7V?OGxKn7U2S(@@d_(s*qLt@Z@(}sdZA8k37%|N zmGW|we2gg)J7c%fF0kR-KvLETSziOWve+=sKM zf)6jrc)uk_KMoPf$a?Xkq&zxGeG>C3k^D}_Miql^5;+5{%2<6!=$*Ar=6|c-2~99( z^hwLF_GJM`1?6PSb0^~*`?pUdL!e&s)ExnZ{%Ms~<({|@HU$$; zIlq4Xx1I?M_Y~$25?G%akM@%o7}`EMd-L?&mVl$IYw`_dVgHw!B7>6{1=%!>71|KS z{frOwFvr`w-ONKxZ4>b}vGDcfqYtXSugvEaYa{DD>fc!p&>YA*Kd?`sBU&fwFW_$T zYw)OFBfJ_TJJM9Jm!s%#BD?(tGu8d4c*{auFVi>a>2i8uwRi?zFt^uhUoh_c#RCSL zUfdBhZzcWc{I?u5{`Kb5gU09#a#=pz8NTDf9a(+dbVn^WkG>*7nSGH5gFfc!OoT7Scu~xRibbjLB}2 z7o!qee!aK|F~q(Ha6`XxhB2ro$M+SpaPjWffRIEc^P;RtWWoy_K=Kv+2?ySo=* z2Sw14hb+vXC+iJ{%Nz^4=GSXD&Tq3RvXaC~9J68g3QO!;(L{ViILx;;Dk-!oq!V$y z+mcDH1|yIdaEZflqw{i5@scNzYLLSm?pq55zl>CbR{6u8xf;a&=}KhC7ufVLi0#l^0L z;~19E3BfdLbXT^xkY1Nujh5!@1om2JV)HWgZe3j|rFvhoj^VE0?eL|PU)NNHeptBO zo<;xZ|42f^w*4qL*uA`sK{KD-byV68howFF^uv%%Fqx=SEF?(769=J14kYoqjb2w! z5OGc%mKaf8ah)?=8%Y7{ms>QYX`X-Sz1dW#vKS(FI(2kYGociYZ6Ac_0fDE3LZ zYb66w?8qWO|Ffwte_XG02Ib}|*N1PDJq&mKMk2^jyJURqz)LbZN9pNyWvS=XBN(