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 /* ===================================================== DataLife Engine - by So..
Decoded Output download
?><?php
/*
=====================================================
DataLife Engine - by SoftNews Media Group
-----------------------------------------------------
http://dle-news.ru/
-----------------------------------------------------
Copyright (c) 2004-2018 SoftNews Media Group
=====================================================
This code is protected by copyright
=====================================================
File: functions.inc.php
=====================================================
*/
if( !defined( 'DATALIFEENGINE' ) ) {
header( "HTTP/1.1 403 Forbidden" );
header ( 'Location: ../../../' );
die( "Hacking attempt!" );
}
if ( $config['auth_domain'] ) {
$domain_cookie = explode (".", clean_url( $_SERVER['HTTP_HOST'] ));
$domain_cookie_count = count($domain_cookie);
$domain_allow_count = -2;
if ( $domain_cookie_count > 2 ) {
if ( in_array($domain_cookie[$domain_cookie_count-2], array('com', 'net', 'org') )) $domain_allow_count = -3;
if ( $domain_cookie[$domain_cookie_count-1] == 'ua' ) $domain_allow_count = -3;
$domain_cookie = array_slice($domain_cookie, $domain_allow_count);
}
$domain_cookie = "." . implode (".", $domain_cookie);
if( ip2long($_SERVER['HTTP_HOST']) == -1 OR ip2long($_SERVER['HTTP_HOST']) === false) define( 'DOMAIN', $domain_cookie );
else define( 'DOMAIN', null );
} else define( 'DOMAIN', null );
function dle_session( $sid = false ) {
global $config;
$params = session_get_cookie_params();
if ( DOMAIN ) $params['domain'] = DOMAIN;
if ($config['only_ssl']) $params['secure'] = true;
session_set_cookie_params($params['lifetime'], "/", $params['domain'], $params['secure'], true);
if ( $sid ) @session_id( $sid );
@session_start();
}
function set_cookie($name, $value, $expires) {
global $config;
if( $expires ) {
$expires = time() + ($expires * 86400);
} else {
$expires = FALSE;
}
if ($config['only_ssl']) setcookie( $name, $value, $expires, "/", DOMAIN, TRUE, TRUE );
else setcookie( $name, $value, $expires, "/", DOMAIN, NULL, TRUE );
}
function check_login($username, $md5_password, $post = true, $check_log = false) {
global $member_id, $db, $user_group, $lang, $_IP, $_TIME, $config;
if( $username == "" OR $md5_password == "" ) return false;
$result = false;
if( $post ) {
$username = $db->safesql( $username );
if( strlen($md5_password) > 72 ) $md5_password = substr($md5_password, 0, 72);
if ($config['auth_metod']) {
if ( preg_match( "/[\||\'|\<|\>|\"|\!|\?|\$|\/|\|\&\~\*\+]/", $username) ) return false;
$where_name = "email='{$username}'";
} else {
if ( preg_match( "/[\||\'|\<|\>|\"|\!|\?|\$|\@|\/|\|\&\~\*\+]/", $username) ) return false;
$where_name = "name='{$username}'";
}
$member_id = $db->super_query( "SELECT * FROM " . USERPREFIX . "_users WHERE {$where_name}" );
if( $member_id['user_id'] AND $member_id['password'] AND $member_id['banned'] != 'yes' AND $user_group[$member_id['user_group']]['allow_admin'] ) {
if( is_md5hash( $member_id['password'] ) ) {
if($member_id['password'] == md5( md5($md5_password) ) ) {
$result = true;
}
} else {
if(password_verify($md5_password, $member_id['password'] ) ) {
$result = true;
}
}
}
if( !$result ) {
$member_id = array ();
$username = $db->safesql(trim( htmlspecialchars( stripslashes($username), ENT_QUOTES, $config['charset'])));
if( version_compare($config['version_id'], "9.3", '>') ) $db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$username."', '{$_TIME}', '{$_IP}', '89', '')" );
}
} else {
$username = intval( $username );
$member_id = $db->super_query( "SELECT * FROM " . USERPREFIX . "_users WHERE user_id='{$username}'" );
if( $member_id['user_id'] AND $member_id['password'] AND md5($member_id['password']) == $md5_password AND $user_group[$member_id['user_group']]['allow_admin'] AND $member_id['banned'] != 'yes' ) {
$result = true;
} else {
$username = $db->safesql(trim( htmlspecialchars( stripslashes($member_id['name']), ENT_QUOTES, $config['charset'])));
$member_id = array ();
if( version_compare($config['version_id'], "9.3", '>') ) $db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$username."', '{$_TIME}', '{$_IP}', '90', '')" );
}
}
if( $result ) {
if( !allowed_ip( $member_id['allowed_ip'] ) OR !allowed_ip( $config['admin_allowed_ip'] ) ) {
$member_id = array ();
$result = false;
set_cookie( "dle_user_id", "", 0 );
set_cookie( "dle_name", "", 0 );
set_cookie( "dle_password", "", 0 );
set_cookie( "dle_hash", "", 0 );
@session_destroy();
@session_unset();
set_cookie( session_name(), "", 0 );
msg( "info", $lang['index_msge'], $lang['ip_block'] );
}
}
if ( !$result ) {
if ($config['login_log']) $db->query( "INSERT INTO " . PREFIX . "_login_log (ip, count, date) VALUES('{$_IP}', '1', '".time()."') ON DUPLICATE KEY UPDATE count=count+1, date='".time()."'" );
} else {
if ( $check_log AND !$_SESSION['check_log']) {
if( $post ) { $a_id = 82; $extr =""; } else { $a_id = 86; if ($_SERVER['HTTP_REFERER']) $extr = $db->safesql(htmlspecialchars($_SERVER['HTTP_REFERER'], ENT_QUOTES)); else $extr = "Direct DLE Adminpanel"; }
$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '{$a_id}', '{$extr}')" );
$_SESSION['check_log'] = 1;
}
}
return $result;
}
function deletenewsbyid( $id ) {
global $config, $db;
$id = intval($id);
$row = $db->super_query( "SELECT user_id FROM " . PREFIX . "_post_extras WHERE news_id = '{$id}'" );
$db->query( "UPDATE " . USERPREFIX . "_users SET news_num=news_num-1 WHERE user_id='{$row['user_id']}'" );
$db->query( "DELETE FROM " . PREFIX . "_post WHERE id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_post_extras WHERE news_id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_poll WHERE news_id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_poll_log WHERE news_id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_post_log WHERE news_id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_post_pass WHERE news_id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_tags WHERE news_id = '{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_xfsearch WHERE news_id = '{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_logs WHERE news_id = '{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_subscribe WHERE news_id='{$id}'");
deletecommentsbynewsid( $id );
$row = $db->super_query( "SELECT images FROM " . PREFIX . "_images WHERE news_id = '{$id}'" );
$listimages = explode( "|||", $row['images'] );
if( $row['images'] != "" ) foreach ( $listimages as $dataimages ) {
$url_image = explode( "/", $dataimages );
if( count( $url_image ) == 2 ) {
$folder_prefix = $url_image[0] . "/";
$dataimages = $url_image[1];
} else {
$folder_prefix = "";
$dataimages = $url_image[0];
}
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . $dataimages );
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . "thumbs/" . $dataimages );
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . "medium/" . $dataimages );
}
$db->query( "DELETE FROM " . PREFIX . "_images WHERE news_id = '{$id}'" );
$db->query( "SELECT id, onserver FROM " . PREFIX . "_files WHERE news_id = '{$id}'" );
while ( $row = $db->get_row() ) {
$url = explode( "/", $row['onserver'] );
if( count( $url ) == 2 ) {
$folder_prefix = $url[0] . "/";
$file = $url[1];
} else {
$folder_prefix = "";
$file = $url[0];
}
$file = totranslit( $file, false );
if( trim($file) == ".htaccess") continue;
@unlink( ROOT_DIR . "/uploads/files/" . $folder_prefix . $file );
}
$db->query( "DELETE FROM " . PREFIX . "_files WHERE news_id = '{$id}'" );
}
function deletecomments( $id ) {
global $config, $db;
$id = intval($id);
$row = $db->super_query( "SELECT id, post_id, user_id, is_register, approve FROM " . PREFIX . "_comments WHERE id = '{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_comments WHERE id = '{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_comment_rating_log WHERE c_id = '{$id}'" );
if( $row['is_register'] ) {
$db->query( "UPDATE " . USERPREFIX . "_users SET comm_num=comm_num-1 WHERE user_id ='{$row['user_id']}'" );
}
if($row['approve']) $db->query( "UPDATE " . PREFIX . "_post SET comm_num=comm_num-1 WHERE id='{$row['post_id']}'" );
$db->query( "SELECT id, name FROM " . PREFIX . "_comments_files WHERE c_id = '{$id}'" );
while ( $row = $db->get_row() ) {
$url_image = explode( "/", $row['name'] );
if( count( $url_image ) == 2 ) {
$folder_prefix = $url_image[0] . "/";
$image = $url_image[1];
} else {
$folder_prefix = "";
$image = $url_image[0];
}
$image = totranslit($image);
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . $image );
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . "thumbs/" . $image );
}
$db->query( "DELETE FROM " . PREFIX . "_comments_files WHERE c_id = '{$id}'" );
if ( $config['tree_comments'] ) {
$sql_result = $db->query( "SELECT id FROM " . PREFIX . "_comments WHERE parent = '{$id}'" );
while ( $row = $db->get_row( $sql_result ) ) {
deletecomments( $row['id'] );
}
}
}
function deletecommentsbynewsid( $id ) {
global $config, $db;
$id = intval($id);
$result = $db->query( "SELECT id FROM " . PREFIX . "_comments WHERE post_id='{$id}'" );
while ( $row = $db->get_array( $result ) ) {
$db->query( "DELETE FROM " . PREFIX . "_comment_rating_log WHERE c_id = '{$row['id']}'" );
$db->query( "SELECT id, name FROM " . PREFIX . "_comments_files WHERE c_id = '{$row['id']}'" );
while ( $file = $db->get_row() ) {
$url_image = explode( "/", $file['name'] );
if( count( $url_image ) == 2 ) {
$folder_prefix = $url_image[0] . "/";
$image = $url_image[1];
} else {
$folder_prefix = "";
$image = $url_image[0];
}
$image = totranslit($image);
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . $image );
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . "thumbs/" . $image );
}
$db->query( "DELETE FROM " . PREFIX . "_comments_files WHERE c_id = '{$row['id']}'" );
}
$result = $db->query( "SELECT COUNT(*) as count, user_id FROM " . PREFIX . "_comments WHERE post_id='{$id}' AND is_register='1' GROUP BY user_id" );
while ( $row = $db->get_array( $result ) ) {
$db->query( "UPDATE " . USERPREFIX . "_users SET comm_num=comm_num-{$row['count']} WHERE user_id='{$row['user_id']}'" );
}
$db->query( "DELETE FROM " . PREFIX . "_comments WHERE post_id='{$id}'" );
}
function deletecommentsbyuserid( $id, $ip = false ) {
global $config, $db;
$id = intval($id);
if($ip) {
$ip = $db->safesql($ip);
$result = $db->query( "SELECT id, post_id, user_id, is_register, approve FROM " . PREFIX . "_comments WHERE ip='{$ip}' AND is_register='0'" );
} else {
$result = $db->query( "SELECT id, post_id, user_id, is_register, approve FROM " . PREFIX . "_comments WHERE user_id='{$id}' AND is_register='1'" );
}
while ( $row = $db->get_array( $result ) ) {
$db->query( "DELETE FROM " . PREFIX . "_comment_rating_log WHERE c_id = '{$row['id']}'" );
$db->query( "SELECT id, name FROM " . PREFIX . "_comments_files WHERE c_id = '{$row['id']}'" );
while ( $file = $db->get_row() ) {
$url_image = explode( "/", $file['name'] );
if( count( $url_image ) == 2 ) {
$folder_prefix = $url_image[0] . "/";
$image = $url_image[1];
} else {
$folder_prefix = "";
$image = $url_image[0];
}
$image = totranslit($image);
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . $image );
@unlink( ROOT_DIR . "/uploads/posts/" . $folder_prefix . "thumbs/" . $image );
}
$db->query( "DELETE FROM " . PREFIX . "_comments_files WHERE c_id = '{$row['id']}'" );
}
if($ip) {
$result = $db->query( "SELECT COUNT(*) as count, post_id FROM " . PREFIX . "_comments WHERE ip='{$ip}' AND is_register='0' AND approve='1' GROUP BY post_id" );
while ( $row = $db->get_array( $result ) ) {
$db->query( "UPDATE " . PREFIX . "_post SET comm_num=comm_num-{$row['count']} WHERE id='{$row['post_id']}'" );
}
$db->free( $result );
$db->query( "DELETE FROM " . PREFIX . "_comments WHERE ip='{$ip}' AND is_register='0'" );
} else {
$result = $db->query( "SELECT COUNT(*) as count, post_id FROM " . PREFIX . "_comments WHERE user_id='{$id}' AND is_register='1' AND approve='1' GROUP BY post_id" );
while ( $row = $db->get_array( $result ) ) {
$db->query( "UPDATE " . PREFIX . "_post SET comm_num=comm_num-{$row['count']} WHERE id='{$row['post_id']}'" );
}
$db->free( $result );
$db->query( "DELETE FROM " . PREFIX . "_comments WHERE user_id='{$id}' AND is_register='1'" );
}
}
function formatsize($file_size) {
if( !$file_size OR $file_size < 1) return '0 b';
$prefix = array("b", "Kb", "Mb", "Gb", "Tb");
$exp = floor(log($file_size, 1024)) | 0;
return round($file_size / (pow(1024, $exp)), 2).' '.$prefix[$exp];
}
function CheckCanGzip() {
if( headers_sent() || connection_aborted() || ! function_exists( 'ob_gzhandler' ) || ini_get( 'zlib.output_compression' ) ) return 0;
if( strpos( $_SERVER['HTTP_ACCEPT_ENCODING'], 'x-gzip' ) !== false ) return "x-gzip";
if( strpos( $_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip' ) !== false ) return "gzip";
return 0;
}
function GzipOut() {
$ENCODING = CheckCanGzip();
if( $ENCODING ) {
$Contents = ob_get_contents();
ob_end_clean();
header( "Content-Encoding: $ENCODING" );
$Contents = gzencode( $Contents, 1, FORCE_GZIP );
echo $Contents;
exit();
} else {
// ob_end_flush();
exit();
}
}
function allowed_ip($ip_array) {
$ip_array = trim( $ip_array );
$_IP = get_ip();
if( !$ip_array ) {
return true;
}
if( strpos($_IP, ":") === false ) {
$delimiter = ".";
} else $delimiter = ":";
$db_ip_split = explode( $delimiter, $_IP );
$ip_lenght = count($db_ip_split);
$ip_array = explode( "|", $ip_array );
foreach ( $ip_array as $ip ) {
$ip = trim( $ip );
if( $ip == $_IP ) {
return true;
} elseif( count(explode ('/', $ip)) == 2 ) {
if( maskmatch($_IP, $ip) ) return true;
} else {
$ip_check_matches = 0;
$this_ip_split = explode( $delimiter, $ip );
for($i_i = 0; $i_i < $ip_lenght; $i_i ++) {
if( $this_ip_split[$i_i] == $db_ip_split[$i_i] OR $this_ip_split[$i_i] == '*' ) {
$ip_check_matches += 1;
}
}
if( $ip_check_matches == $ip_lenght ) return true;
}
}
return false;
}
function maskmatch($IP, $CIDR) {
list ($address, $netmask) = explode('/', $CIDR, 2);
if( strpos($IP, ".") !== false AND strpos($CIDR, ".") !== false ) {
return ( ip2long($IP) & ~((1 << (32 - $netmask)) - 1) ) == ip2long ($address);
} elseif( strpos($IP, ":") !== false AND strpos($CIDR, ":") !== false ) {
if (!((extension_loaded('sockets') && defined('AF_INET6')) || @inet_pton('::1'))) {
return false;
}
$bytesAddr = unpack('n*', @inet_pton($address));
$bytesTest = unpack('n*', @inet_pton($IP));
if (!$bytesAddr || !$bytesTest) {
return false;
}
for ($i = 1, $ceil = ceil($netmask / 16); $i <= $ceil; ++$i) {
$left = $netmask - 16 * ($i - 1);
$left = ($left <= 16) ? $left : 16;
$mask = ~(0xffff >> $left) & 0xffff;
if (($bytesAddr[$i] & $mask) != ($bytesTest[$i] & $mask)) {
return false;
}
}
return true;
}
return false;
}
function msg($type, $title, $text, $back = false) {
global $lang;
$buttons = array();
if(is_array( $back )) {
$bc = 1;
foreach ($back as $key => $value) {
if($bc == 1) $color="teal";
elseif($bc == 2) $color="slate-600";
elseif($bc == 3) $color="brown-600";
else $color="primary-600";
if( $value == $lang['add_s_5'] ) $target = " target=\"_blank\"";
else $target="";
$buttons[] = "<a class=\"btn btn-sm bg-{$color} btn-raised position-left\" href=\"{$key}\"{$target}>{$value}</a>";
$bc++;
if($bc > 4) $bc = 1;
}
} elseif( $back ) {
$buttons[] = "<a class=\"btn btn-sm bg-teal btn-raised position-left\" href=\"{$back}\">{$lang['func_msg']}</a>";
}
if(count($buttons) ) {
$back = "<div class=\"panel-footer\"><div class=\"text-center\">".implode('', $buttons)."</div></div>";
} else $back ="";
if ($title == "error") $title = $lang['addnews_error'];
echoheader( "<i class=\"fa fa-comment-o position-left\"></i><span class=\"text-semibold\">{$lang['header_box_title']}</span>", $title );
if($type == "error") {
$type = "alert-danger";
} elseif ( $type == "warning" ) {
$type = "alert-warning";
} elseif ( $type == "success" ) {
$type = "alert-success";
} else $type = "alert-info";
if( is_array( $title ) ) {
$title = end($title);
}
echo <<<HTML
<div class="alert {$type} alert-styled-left alert-arrow-left alert-component message_box">
<h4>{$title}</h4>
<div class="panel-body">
<table width="100%">
<tr>
<td height="80" class="text-center">{$text}</td>
</tr>
</table>
</div>
{$back}
</div>
HTML;
echofooter();
die();
}
function echoheader($header_title, $header_subtitle) {
global $skin_header, $skin_footer, $skin_not_logged_header, $member_id, $user_group, $js_array, $css_array, $config, $lang, $is_loged_in, $mod, $action, $langdate, $db, $dle_login_hash;
if( !is_array( $header_subtitle )) $header_subtitle = array ( '' => $header_subtitle);
$breadcrumb = array( "<li><a href=\"?mod=main\"><i class=\"fa fa-home position-left\"></i>{$lang['skin_main']}</a></li>" );
foreach ($header_subtitle as $key => $value) {
if($key) {
$breadcrumb[] = "<li><a href=\"{$key}\">{$value}</a></li>";
} else {
$breadcrumb[] = "<li class=\"active\">{$value}</li>";
}
}
$breadcrumb = implode('', $breadcrumb);
include_once (DLEPlugins::Check(ENGINE_DIR . '/skins/default.skin.php'));
$js = build_js($js_array);
$css = build_css($css_array);
$skin_header = str_replace( "{js_files}", $js, $skin_header );
$skin_header = str_replace( "{css_files}", $css, $skin_header );
$skin_not_logged_header = str_replace( "{js_files}", $js, $skin_not_logged_header );
$skin_not_logged_header = str_replace( "{css_files}", $css, $skin_not_logged_header );
if( $is_loged_in ) echo $skin_header;
else echo $skin_not_logged_header;
}
function echofooter() {
global $is_loged_in, $skin_footer, $skin_not_logged_footer;
if( $is_loged_in ) echo $skin_footer;
else echo $skin_not_logged_footer;
}
function listdir($dir) {
$current_dir = @opendir( $dir );
if($current_dir !== false ) {
while ( $entryname = readdir( $current_dir ) ) {
if( is_dir( $dir."/".$entryname ) AND ($entryname != "." AND $entryname != "..") ) {
listdir( $dir."/".$entryname );
} elseif( $entryname != "." AND $entryname != ".." ) {
@unlink( $dir."/".$entryname );
}
}
@closedir( $current_dir );
@rmdir( $dir );
}
}
function totranslit($var, $lower = true, $punkt = true) {
global $langtranslit;
if ( is_array($var) ) return "";
$var = str_replace(chr(0), '', $var);
$var = trim( strip_tags( $var ) );
$var = preg_replace( "/\s+/u", "-", $var );
$var = str_replace( "/", "-", $var );
if (is_array($langtranslit) AND count($langtranslit) ) {
$var = strtr($var, $langtranslit);
}
if ( $punkt ) $var = preg_replace( "/[^a-z0-9\_\-.]+/mi", "", $var );
else $var = preg_replace( "/[^a-z0-9\_\-]+/mi", "", $var );
$var = preg_replace( '#[\-]+#i', '-', $var );
$var = preg_replace( '#[.]+#i', '.', $var );
if ( $lower ) $var = strtolower( $var );
$var = str_ireplace( ".php", "", $var );
$var = str_ireplace( ".php", ".ppp", $var );
if( strlen( $var ) > 200 ) {
$var = substr( $var, 0, 200 );
if( ($temp_max = strrpos( $var, '-' )) ) $var = substr( $var, 0, $temp_max );
}
return $var;
}
function langdate($format, $stamp, $servertime = false ) {
global $langdate, $member_id;
$timezones = array('Pacific/Midway','US/Samoa','US/Hawaii','US/Alaska','US/Pacific','America/Tijuana','US/Arizona','US/Mountain','America/Chihuahua','America/Mazatlan','America/Mexico_City','America/Monterrey','US/Central','US/Eastern','US/East-Indiana','America/Lima','America/Caracas','Canada/Atlantic','America/La_Paz','America/Santiago','Canada/Newfoundland','America/Buenos_Aires','America/Godthab','Atlantic/Stanley','Atlantic/Azores','Africa/Casablanca','Europe/Dublin','Europe/Lisbon','Europe/London','Europe/Amsterdam','Europe/Belgrade','Europe/Berlin','Europe/Bratislava','Europe/Brussels','Europe/Budapest','Europe/Copenhagen','Europe/Madrid','Europe/Paris','Europe/Prague','Europe/Rome','Europe/Sarajevo','Europe/Stockholm','Europe/Vienna','Europe/Warsaw','Europe/Zagreb','Europe/Athens','Europe/Bucharest','Europe/Helsinki','Europe/Istanbul','Asia/Jerusalem','Europe/Kiev','Europe/Minsk','Europe/Riga','Europe/Sofia','Europe/Tallinn','Europe/Vilnius','Asia/Baghdad','Asia/Kuwait','Africa/Nairobi','Asia/Tehran','Europe/Kaliningrad','Europe/Moscow','Europe/Volgograd','Europe/Samara','Asia/Baku','Asia/Muscat','Asia/Tbilisi','Asia/Yerevan','Asia/Kabul','Asia/Yekaterinburg','Asia/Tashkent','Asia/Kolkata','Asia/Kathmandu','Asia/Almaty','Asia/Novosibirsk','Asia/Jakarta','Asia/Krasnoyarsk','Asia/Hong_Kong','Asia/Kuala_Lumpur','Asia/Singapore','Asia/Taipei','Asia/Ulaanbaatar','Asia/Urumqi','Asia/Irkutsk','Asia/Seoul','Asia/Tokyo','Australia/Adelaide','Australia/Darwin','Asia/Yakutsk','Australia/Brisbane','Pacific/Port_Moresby','Australia/Sydney','Asia/Vladivostok','Asia/Sakhalin','Asia/Magadan','Pacific/Auckland','Pacific/Fiji');
if (!$stamp) { $stamp = time(); }
$local = new DateTime('@'.$stamp);
if ($member_id['timezone'] AND !$servertime) {
$localzone = $member_id['timezone'];
} else {
$localzone = date_default_timezone_get();
}
if (!in_array($localzone, $timezones)) $localzone = 'Europe/Moscow';
$local->setTimeZone(new DateTimeZone($localzone));
return strtr( $local->format($format), $langdate );
}
function CategoryNewsSelection($categoryid = 0, $parentid = 0, $nocat = TRUE, $sublevelmarker = '', $returnstring = '') {
global $cat, $cat_parentid, $member_id, $user_group, $mod;
if ($mod == "addnews" OR $mod == "editnews") {
if($member_id['cat_allow_addnews']) {
$allow_list = explode( ',', $member_id['cat_allow_addnews'] );
} else $allow_list = explode( ',', $user_group[$member_id['user_group']]['cat_allow_addnews'] );
} else {
$allow_list = explode( ',', $user_group[$member_id['user_group']]['allow_cats'] );
}
if( $mod != "usergroup" AND $mod != "editusers") {
$not_allow_list = explode( ',', $user_group[$member_id['user_group']]['not_allow_cats'] );
} else $not_allow_list = array();
if( $parentid == 0 ) {
if( $nocat ) $returnstring .= '<option value="0"></option>';
} else {
$sublevelmarker .= ' ';
}
if( isset( $cat_parentid ) ) {
$root_category = @array_keys( $cat_parentid, $parentid );
if( is_array( $root_category ) ) {
foreach ( $root_category as $id ) {
$category_name = $cat[$id];
if( ( $allow_list[0] == "all" OR in_array( $id, $allow_list ) ) OR $mod == "usergroup" OR $mod == "editusers" ) {
if( in_array( $id, $not_allow_list ) ) continue;
$returnstring .= "<option value=\"" . $id . '" ';
if( is_array( $categoryid ) ) {
foreach ( $categoryid as $element ) {
if( $element == $id ) $returnstring .= 'selected';
}
} elseif( $categoryid == $id ) $returnstring .= 'selected';
$returnstring .= '>' . $sublevelmarker . $category_name . '</option>';
}
$returnstring = CategoryNewsSelection( $categoryid, $id, $nocat, $sublevelmarker, $returnstring );
}
}
}
return $returnstring;
}
function array_selection($array_list, $selid = 0, $parentid = 0, $sublevelmarker = '', $returnstring = '') {
$root_category = array ();
if( $parentid == 0 ) {
$returnstring .= '<option value="0"></option>';
} else {
$sublevelmarker .= ' ';
}
if( count( $array_list ) ) {
foreach ( $array_list as $list ) {
if( $list['parentid'] == $parentid ) $root_category[] = $list['id'];
}
if( count( $root_category ) ) {
foreach ( $root_category as $id ) {
$returnstring .= "<option value=\"" . $id . '" ';
if( is_array( $selid ) ) {
foreach ( $selid as $element ) {
$element = intval($element);
if( $element == $id ) $returnstring .= 'selected';
}
} elseif( intval($selid) == $id ) $returnstring .= 'selected';
$returnstring .= '>' . $sublevelmarker . $array_list[$id]['title'] . '</option>';
$returnstring = array_selection($array_list, $selid, $id, $sublevelmarker, $returnstring );
}
}
}
return $returnstring;
}
$mcache = false;
if ( $config['cache_type'] ) {
include_once (DLEPlugins::Check(ENGINE_DIR . '/classes/memcache.class.php'));
$mcache = new dle_memcache($config);
}
function clear_cache($cache_areas = false) {
global $mcache, $config;
if( $config['cache_type'] ) {
if( $mcache->connection > 0 ) {
$mcache->clear( $cache_areas );
return true;
}
}
if ( $cache_areas ) {
if(!is_array($cache_areas)) {
$cache_areas = array($cache_areas);
}
}
$fdir = opendir( ENGINE_DIR . '/cache' );
while ( $file = readdir( $fdir ) ) {
if( $file != '.htaccess' AND !is_dir($file) ) {
if( $cache_areas ) {
foreach($cache_areas as $cache_area) if( stripos( $file, $cache_area ) === 0 ) @unlink( ENGINE_DIR . '/cache/' . $file );
} else {
@unlink( ENGINE_DIR . '/cache/' . $file );
}
}
}
}
function clear_all_caches() {
global $config;
listdir( ENGINE_DIR . '/cache/system/CSS' );
listdir( ENGINE_DIR . '/cache/system/HTML' );
listdir( ENGINE_DIR . '/cache/system/URI' );
listdir( ENGINE_DIR . '/cache/system/plugins' );
$fdir = opendir( ENGINE_DIR . '/cache/system/' );
while ( $file = readdir( $fdir ) ) {
if( $file != '.' AND $file != '..' AND $file != '.htaccess' AND $file != 'cron.php' ) {
@unlink( ENGINE_DIR . '/cache/system/' . $file );
}
}
if( $config['cache_type'] ) {
$fdir = opendir( ENGINE_DIR . '/cache' );
while ( $file = readdir( $fdir ) ) {
if( $file != '.htaccess' AND !is_dir($file) ) {
@unlink( ENGINE_DIR . '/cache/' . $file );
}
}
}
clear_cache();
if (function_exists('opcache_reset')) {
opcache_reset();
}
}
function xfieldsdataload($id) {
if( $id == "" ) return;
$xfieldsdata = explode( "||", $id );
foreach ( $xfieldsdata as $xfielddata ) {
list ( $xfielddataname, $xfielddatavalue ) = explode( "|", $xfielddata );
$xfielddataname = str_replace( "|", "|", $xfielddataname );
$xfielddataname = str_replace( "__NEWL__", "
", $xfielddataname );
$xfielddatavalue = str_replace( "|", "|", $xfielddatavalue );
$xfielddatavalue = str_replace( "__NEWL__", "
", $xfielddatavalue );
$data[$xfielddataname] = $xfielddatavalue;
}
return $data;
}
function xfieldsload() {
global $lang, $config;
$path = ENGINE_DIR . '/data/xfields.txt';
$filecontents = file( $path );
$fields = array();
$tmp_arr = array();
if( !is_array( $filecontents ) ) {
return array();
} elseif( count($filecontents) ) {
foreach ( $filecontents as $name => $value ) {
$value = trim($value);
if( $value ) {
$tmp_arr = explode( "|", $value );
foreach ( $tmp_arr as $name2 => $value2 ) {
$value2 = str_replace( "|", "|", $value2 );
$value2 = str_replace( "__NEWL__", "
", $value2 );
$value2 = html_entity_decode($value2, ENT_QUOTES, $config['charset']);
$fields[$name][$name2] = $value2;
}
}
}
return $fields;
}
return array();
}
function create_metatags($story, $ajax = false) {
global $config, $db;
$keyword_count = 20;
$newarr = array ();
$headers = array ();
$quotes = array (""", "`", " ", '
', '
', "
", "
", "\", ",", ".", "/", "#", ";", ":", "@", "~", "[", "]", "{", "}", "=", "-", "+", ")", "(", "*", "^", "%", "$", "<", ">", "?", "!", '"');
$fastquotes = array (""", "`", " ", "
", "
", '"', '
', '
', "$", "{", "}", "[", "]", "<", ">", "\");
$story = preg_replace( "#\[hide(.*?)\](.+?)\[/hide\]#is", "", $story );
$story = preg_replace( "'\[attachment=(.*?)\]'si", "", $story );
$story = preg_replace( "'\[page=(.*?)\](.*?)\[/page\]'si", "", $story );
$story = str_replace( "{PAGEBREAK}", "", $story );
$story = str_replace( " ", " ", $story );
$story = str_replace( '<br />', ' ', $story );
$story = str_replace( '<br>', ' ', $story );
$story = strip_tags( $story );
$story = preg_replace( "#&(.+?);#", "", $story );
$story = trim(str_replace( " ,", "", $story ));
if( trim( $_REQUEST['meta_title'] ) ) {
$headers['title'] = trim( htmlspecialchars( strip_tags( stripslashes($_REQUEST['meta_title'] ) ), ENT_COMPAT, $config['charset'] ) );
$headers['title'] = $db->safesql(str_replace( $fastquotes, '', $headers['title'] ));
} else $headers['title'] = "";
if( trim( $_REQUEST['descr'] ) ) {
$headers['description'] = trim(strip_tags( stripslashes( $_REQUEST['descr'] ) ) );
if( dle_strlen( $headers['description'], $config['charset'] ) > 300 ) {
$headers['description'] = dle_substr( $headers['description'], 0, 300, $config['charset'] );
if( ($temp_dmax = dle_strrpos( $headers['description'], ' ', $config['charset'] )) ) $headers['description'] = dle_substr( $headers['description'], 0, $temp_dmax, $config['charset'] );
}
$headers['description'] = $db->safesql( str_replace( $fastquotes, '', $headers['description'] ));
} elseif($config['create_metatags'] OR $ajax) {
$story = str_replace( $fastquotes, '', $story );
$headers['description'] = stripslashes($story);
if( dle_strlen( $headers['description'], $config['charset'] ) > 300 ) {
$headers['description'] = dle_substr( $headers['description'], 0, 300, $config['charset'] );
if( ($temp_dmax = dle_strrpos( $headers['description'], ' ', $config['charset'] )) ) $headers['description'] = dle_substr( $headers['description'], 0, $temp_dmax, $config['charset'] );
}
$headers['description'] = $db->safesql( $headers['description'] );
} else {
$headers['description'] = '';
}
if( trim( $_REQUEST['keywords'] ) ) {
$arr = explode( ",", $_REQUEST['keywords'] );
$newarr = array();
foreach ( $arr as $word ) {
$newarr[] = trim($word);
}
$_REQUEST['keywords'] = implode( ", ", $newarr );
$headers['keywords'] = $db->safesql( str_replace( $fastquotes, " ", strip_tags( stripslashes( $_REQUEST['keywords'] ) ) ) );
} elseif( $config['create_metatags'] OR $ajax) {
$story = str_replace( $quotes, ' ', $story );
$arr = explode( " ", $story );
foreach ( $arr as $word ) {
if( dle_strlen( $word, $config['charset'] ) > 4 ) $newarr[] = $word;
}
$arr = array_count_values( $newarr );
arsort( $arr );
$arr = array_keys( $arr );
$total = count( $arr );
$offset = 0;
$arr = array_slice( $arr, $offset, $keyword_count );
$headers['keywords'] = $db->safesql( implode( ", ", $arr ) );
} else {
$headers['keywords'] = '';
}
return $headers;
}
function set_vars($file, $data) {
$file = totranslit($file, true, false);
if ( is_array($data) OR is_int($data) ) {
file_put_contents (ENGINE_DIR . '/cache/system/' . $file . '.php', json_encode( $data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES ), LOCK_EX);
@chmod( ENGINE_DIR . '/cache/system/' . $file . '.php', 0666 );
}
}
function get_vars($file) {
$file = totranslit($file, true, false);
$data = @file_get_contents( ENGINE_DIR . '/cache/system/' . $file . '.php' );
if ( $data !== false ) {
$data = json_decode( $data, true );
if ( is_array($data) OR is_int($data) ) return $data;
}
return false;
}
function get_groups($id = false) {
global $user_group;
$returnstring = "";
foreach ( $user_group as $group ) {
$returnstring .= '<option value="' . $group['id'] . '" ';
if( is_array( $id ) ) {
foreach ( $id as $element ) {
if( $element == $group['id'] ) $returnstring .= 'SELECTED';
}
} elseif( $id and $id == $group['id'] ) $returnstring .= 'SELECTED';
$returnstring .= ">" . $group['group_name'] . "</option>
";
}
return $returnstring;
}
function permload($id) {
if( $id == "" ) return;
$data = array ();
$groups = explode( "|", $id );
foreach ( $groups as $group ) {
list ( $groupid, $groupvalue ) = explode( ":", $group );
$data[$groupid][1] = ($groupvalue == 1) ? "selected" : "";
$data[$groupid][2] = ($groupvalue == 2) ? "selected" : "";
$data[$groupid][3] = ($groupvalue == 3) ? "selected" : "";
}
return $data;
}
function check_xss() {
if ($_GET['mod'] == "editnews" AND $_GET['action'] == "list") return;
if ($_GET['mod'] == "tagscloud" OR $_GET['mod'] == "links" OR $_GET['mod'] == "redirects" OR $_GET['mod'] == "metatags") return;
$url = html_entity_decode( urldecode( $_SERVER['QUERY_STRING'] ), ENT_QUOTES, 'ISO-8859-1' );
$url = str_replace( "\", "/", $url );
if( $url ) {
if( (strpos( $url, '<' ) !== false) || (strpos( $url, '>' ) !== false) || (strpos( $url, '"' ) !== false) || (strpos( $url, './' ) !== false) || (strpos( $url, '../' ) !== false) || (strpos( $url, '\'' ) !== false) || (strpos( $url, '.php' ) !== false) ) {
if( $_GET['mod'] != "editnews" OR $_GET['action'] != "list" ) {
header( "HTTP/1.1 403 Forbidden" );
die( "Hacking attempt!" );
}
}
}
$url = html_entity_decode( urldecode( $_SERVER['REQUEST_URI'] ), ENT_QUOTES, 'ISO-8859-1' );
$url = str_replace( "\", "/", $url );
if( $url ) {
if( (strpos( $url, '<' ) !== false) || (strpos( $url, '>' ) !== false) || (strpos( $url, '"' ) !== false) || (strpos( $url, '\'' ) !== false) ) {
header( "HTTP/1.1 403 Forbidden" );
die( "Hacking attempt!" );
}
}
}
function clean_url($url) {
if( $url == '' ) return;
$url = str_replace( "http://", "", $url );
$url = str_replace( "https://", "", $url );
if( strtolower( substr( $url, 0, 4 ) ) == 'www.' ) $url = substr( $url, 4 );
$url = explode( '/', $url );
$url = reset( $url );
$url = explode( ':', $url );
$url = reset( $url );
return $url;
}
function get_url($id) {
global $cat_info;
if( ! $id ) return;
$parent_id = $cat_info[$id]['parentid'];
$url = $cat_info[$id]['alt_name'];
while ( $parent_id ) {
$url = $cat_info[$parent_id]['alt_name'] . "/" . $url;
$parent_id = $cat_info[$parent_id]['parentid'];
if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
}
return $url;
}
function convert_unicode($t, $to = '') {
// deprecated
return $t;
}
function check_netz($ip1, $ip2) {
if( strpos($ip1, ":") === false ) {
$delimiter = ".";
} else $delimiter = ":";
$ip1 = explode( $delimiter, $ip1 );
$ip2 = explode( $delimiter, $ip2 );
if( $ip1[0] != $ip2[0] ) return false;
if( $ip1[1] != $ip2[1] ) return false;
if($delimiter == ":") {
if( $ip1[2] != $ip2[2] ) return false;
if( $ip1[3] != $ip2[3] ) return false;
}
return true;
}
function compare_filter($a, $b) {
$a = explode( "|", $a );
$b = explode( "|", $b );
if( $a[1] == $b[1] ) return 0;
return strcasecmp( $a[1], $b[1] );
}
function auth() {
header( 'WWW-Authenticate: Basic realm="Admin Area"' );
header( 'HTTP/1.0 401 Unauthorized' );
echo "<H1>Access Denied</H1>";
exit();
}
function build_js($js) {
global $config;
$js_array = array();
$i=0;
$defer = "";
if ($config['js_min']) {
$js_array[] = "<script src=\"engine/classes/min/index.php?charset={$config['charset']}&g=admin&v=25\"></script>";
if ( count($js) ) $js_array[] = "<script src=\"engine/classes/min/index.php?charset={$config['charset']}&f=".implode(",", $js)."&v=25\" defer></script>";
return implode("
", $js_array);
} else {
$default_array = array (
'engine/skins/javascripts/application.js',
);
if ( count($js) ) $js = array_merge($default_array, $js); else $js = $default_array;
foreach ($js as $value) {
if($i > 0) $defer =" defer";
$js_array[] = "<script src=\"{$value}?v=25\"{$defer}></script>";
$i++;
}
return implode("
", $js_array);
}
}
function build_css($css) {
global $config;
$default_array = array (
'engine/skins/fonts/fontawesome/styles.min.css',
'engine/skins/stylesheets/application.css'
);
$css_array = array();
if ( count($css) ) $css = array_merge($default_array, $css); else $css = $default_array;
if ($config['js_min']) {
return "<link href=\"engine/classes/min/index.php?charset={$config['charset']}&f=".implode(",", $css)."&v=25\" rel=\"stylesheet\" type=\"text/css\">";
} else {
foreach ($css as $value) {
$css_array[] = "<link href=\"{$value}?v=25\" rel=\"stylesheet\" type=\"text/css\">";
}
return implode("
", $css_array);
}
}
function dle_strlen($value, $charset ) {
if( function_exists( 'mb_strlen' ) ) {
return mb_strlen( $value, $charset );
} elseif( function_exists( 'iconv_strlen' ) ) {
return iconv_strlen($value, $charset);
}
return strlen($value);
}
function dle_substr($str, $start, $length, $charset ) {
if( function_exists( 'mb_substr' ) ) {
return mb_substr( $str, $start, $length, $charset );
} elseif( function_exists( 'iconv_substr' ) ) {
return iconv_substr($str, $start, $length, $charset);
}
return substr($str, $start, $length);
}
function dle_strrpos($str, $needle, $charset ) {
if( function_exists( 'mb_strrpos' ) ) {
return mb_strrpos( $str, $needle, null, $charset );
} elseif( function_exists( 'iconv_strrpos' ) ) {
return iconv_strrpos($str, $needle, $charset);
}
return strrpos($str, $needle);
}
function dle_strpos($str, $needle, $charset ) {
if( function_exists( 'mb_strpos' ) ) {
return mb_strpos( $str, $needle, null, $charset );
} elseif( function_exists( 'iconv_strrpos' ) ) {
return iconv_strpos($str, $needle, null, $charset);
}
return strpos($str, $needle);
}
function check_allow_login($ip, $max ) {
global $db, $config;
$config['login_ban_timeout'] = intval($config['login_ban_timeout']);
$max = intval($max);
if( $max < 2 ) $max = 2;
$block_date = time()-($config['login_ban_timeout'] * 60);
$row = $db->super_query( "SELECT * FROM " . PREFIX . "_login_log WHERE ip='{$ip}'" );
if ( $row['count'] AND $row['date'] < $block_date ) {
$db->query( "DELETE FROM " . PREFIX . "_login_log WHERE ip = '{$ip}'" );
return true;
}
if ($row['count'] >= $max AND $row['date'] > $block_date ) return false;
else return true;
}
function detect_encoding($string) {
static $list = array('utf-8', 'windows-1251');
foreach ($list as $item) {
if( function_exists( 'mb_convert_encoding' ) ) {
$sample = mb_convert_encoding( $string, $item, $item );
} elseif( function_exists( 'iconv' ) ) {
$sample = iconv($item, $item, $string);
}
if (md5($sample) == md5($string)) return $item;
}
return null;
}
function get_ip() {
global $config;
if ($config['own_ip']) $ip = $_SERVER[$config['own_ip']]; else $ip = $_SERVER['REMOTE_ADDR'];
$temp_ip = explode(",", $ip);
if(count($temp_ip) > 1) $ip = trim($temp_ip[0]);
if ( filter_var( $ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) ) {
return filter_var( $ip , FILTER_VALIDATE_IP, FILTER_FLAG_IPV4);
}
if ( filter_var( $ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) ) {
return filter_var( $ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6);
}
return 'not detected';
}
function http_get_contents( $file ) {
$data = false;
if (stripos($file, "http://") !== 0 AND stripos($file, "https://") !== 0) {
return false;
}
if( function_exists( 'curl_init' ) ) {
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $file );
curl_setopt( $ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT'] );
@curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, 1 );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_TIMEOUT, 5 );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt( $ch, CURLOPT_HEADER, 0);
$data = curl_exec( $ch );
curl_close( $ch );
if( $data !== false ) return $data;
}
if( preg_match('/1|yes|on|true/i', ini_get('allow_url_fopen')) ) {
$data = @file_get_contents( $file );
if( $data !== false ) return $data;
}
return false;
}
function cleanpath($path) {
$path = trim(str_replace(chr(0), '', (string)$path));
$path = str_replace(array('/', '\'), '/', $path);
$parts = array_filter(explode('/', $path), 'strlen');
$absolutes = array();
foreach ($parts as $part) {
if ('.' == $part) continue;
if ('..' == $part) {
array_pop($absolutes);
} else {
$absolutes[] = totranslit($part, false, false);
}
}
return implode('/', $absolutes);
}
function is_md5hash( $md5 = '' ) {
return strlen($md5) == 32 && ctype_xdigit($md5);
}
function generate_pin(){
$pin = "";
for($i = 0; $i < 5; $i ++) {
$rand = "";
if(function_exists('openssl_random_pseudo_bytes')) {
do{
$rand = floor(10*(hexdec(bin2hex(openssl_random_pseudo_bytes(4)))/0xffffffff));
}while($rand == 10);
} else {
$rand = mt_rand( 0, 9 );
}
$pin .= $rand;
}
return $pin;
}
function send_activation( $query ) {
$data = http_get_contents("http://dle-news.ru/extras/activate2009.php?".$query);
if( $data !== false ) {
if( stripos( $data, "antw:activated" ) !== false ) return "1";
elseif( stripos( $data, "antw:denied;expires" ) !== false ) return "-4";
elseif( stripos( $data, "antw:denied" ) !== false ) return "0";
}
return "-1";
}
function get_domen_hash() {
$domen_md5 = explode( '.', $_SERVER['HTTP_HOST'] );
$count_key = count( $domen_md5 ) - 1;
unset( $domen_md5[$count_key] );
if( end( $domen_md5 ) == "com" OR end( $domen_md5 ) == "net" ) $count_key --;
$domen_md5 = $domen_md5[$count_key - 1];
$domen_md5 = md5( md5( $domen_md5 . "780918" ) );
return $domen_md5;
}
function dle_activation($key, $domen_md5, $config, $offline = false) {
global $lang;
$domain = urlencode( strip_tags( $_SERVER['HTTP_HOST'] ) );
$key = trim( strip_tags( $key ) );
@header( "Content-type: text/html; charset=utf-8" );
if ( $offline ) {
if( $key == md5( $domen_md5 . DINITVERSION ) ) {
$buffer = "1";
} else {
$buffer = "-2";
}
} else {
if( strlen( $key ) == 32 ) {
$buffer = "-3";
} else {
$buffer = send_activation( "domain={$domain}&key={$key}&site_key={$domen_md5}&c_id=" . VERSIONID );
}
}
switch ($buffer) {
case "-4" :
$buffer = $lang['trial_act7'];
break;
case "-3" :
$buffer = $lang['trial_act6']." ".$lang['key_format']." <b>XXXXX-XXXXX-XXXXX-XXXXX-XXXXX</b>";
break;
case "-2" :
$buffer = $lang['trial_act5'];
break;
case "-1" :
$buffer = $lang['trial_act1'] . $lang['get_offline_key'] . " <a href=\"https://dle-news.ru/index.php?do=offlinekey&domain={$domain}&key={$key}&site_key={$domen_md5}&c_id=" . VERSIONID . "\" class=\"status-error\" target=\"_blank\">" . $lang['get_key'] . "</a> " . $lang['key_activation'];
$buffer .= "<br /><br /><b>$lang[site_code]</b><span class=\"sitecodefield\"><input class=\"classic width-400 mr-10 ml-10\" type=\"text\" name=\"sitecode\" id=\"sitecode\"> <button onclick=\"dle_activation( 'code' ); return false;\" class=\"btn bg-teal btn-raised btn-sm\">{$lang['trial_act']}</button></span><div id=\"result_info\" style=\"color:red;\"></div>";
break;
case "0" :
$buffer = $lang['trial_act2'];
break;
case "1" :
$config['key'] = md5( $domen_md5 . DINITVERSION );
$handler = fopen( ENGINE_DIR . '/data/config.php', "w" );
fwrite( $handler, "<?php
//System Configurations
\$config = array (
" );
foreach ( $config as $name => $value ) {
fwrite( $handler, "'{$name}' => \"{$value}\",
" );
}
fwrite( $handler, ");
?>" );
fclose( $handler );
if (function_exists('opcache_reset')) {
opcache_reset();
}
$buffer = $lang['trial_act3'];
break;
default :
$buffer = $lang['trial_act4'] . $lang['get_offline_key'] . " <a href=\"https://dle-news.ru/index.php?do=offlinekey&domain={$domain}&key={$key}&site_key={$domen_md5}&c_id=" . VERSIONID . "\" >" . $lang['get_key'] . "</a> " . $lang['key_activation'];
}
echo $buffer;
die();
}
function normalize_name($var, $punkt = true) {
if ( !is_string($var) ) return;
$var = str_replace(chr(0), '', $var);
$var = trim( strip_tags( $var ) );
$var = preg_replace( "/\s+/u", "-", $var );
$var = str_replace( "/", "-", $var );
if ( $punkt ) $var = preg_replace( "/[^a-z0-9\_\-.]+/mi", "", $var );
else $var = preg_replace( "/[^a-z0-9\_\-]+/mi", "", $var );
$var = preg_replace( '#[\-]+#i', '-', $var );
$var = preg_replace( '#[.]+#i', '.', $var );
return $var;
}
function clearfilepath( $file, $ext=array() ) {
$file = trim(str_replace(chr(0), '', (string)$file));
$file = str_replace(array('/', '\'), '/', $file);
$path_parts = pathinfo( $file );
if( count($ext) ) {
if ( !in_array( $path_parts['extension'], $ext ) ) return '';
}
$filename = normalize_name($path_parts['basename'], true);
if( !$filename) return '';
$parts = array_filter(explode('/', $path_parts['dirname']), 'strlen');
$absolutes = array();
foreach ($parts as $part) {
if ('.' == $part) continue;
if ('..' == $part) {
array_pop($absolutes);
} else {
$absolutes[] = normalize_name($part, false);
}
}
$path = implode('/', $absolutes);
if ( $path ) return implode('/', $absolutes).'/'.$filename;
else return '';
}
function execute_query($id, $query) {
global $config, $db;
if(!$query) return;
$query = str_ireplace(array("{prefix}", "{userprefix}", "{charset}"), array(PREFIX, USERPREFIX, COLLATE), $query);
$db->query_errors_list = array();
$db->multi_query( trim($query), false );
$id = intval($id);
if( count($db->query_errors_list) ){
foreach($db->query_errors_list as $error) {
$db->query( "INSERT INTO " . PREFIX . "_plugins_logs (plugin_id, area, error, type) values ('{$id}', '".$db->safesql( htmlspecialchars( $error['query'], ENT_QUOTES, $config['charset'] ), false)."', '".$db->safesql( htmlspecialchars( $error['error'], ENT_QUOTES, $config['charset'] ) )."', 'mysql')" );
}
}
$db->query_errors_list = array();
}
function check_referer( $current_path ) {
if( !$_SERVER['HTTP_REFERER'] ) return false;
$ref = parse_url($_SERVER['HTTP_REFERER']);
$ref['host'] = clean_url($ref['host']);
$ref['path'] = basename($ref['path']);
$curr = parse_url($current_path);
$curr['host'] = clean_url($_SERVER['HTTP_HOST']);
$curr['path'] = basename($curr['path']);
if( $ref['path'] AND $curr['path'] AND $ref['host'] AND $curr['host'] AND $ref['path'] == $curr['path'] AND $ref['host'] == $curr['host'] ) {
if( strpos($ref['query'], $curr['query']) !== false) {
return true;
}
}
return false;
}
function isSSL() {
if( (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off')
|| (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
|| (!empty($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on')
|| (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443)
|| (isset($_SERVER['HTTP_X_FORWARDED_PORT']) && $_SERVER['HTTP_X_FORWARDED_PORT'] == 443)
|| (isset($_SERVER['REQUEST_SCHEME']) && $_SERVER['REQUEST_SCHEME'] == 'https')
|| (isset($_SERVER['CF_VISITOR']) && $_SERVER['CF_VISITOR'] == '{"scheme":"https"}')
|| (isset($_SERVER['HTTP_CF_VISITOR']) && $_SERVER['HTTP_CF_VISITOR'] == '{"scheme":"https"}')
) return true; else return false;
}
if (!defined('PASSWORD_BCRYPT')) {
define('PASSWORD_BCRYPT', 1);
define('PASSWORD_DEFAULT', PASSWORD_BCRYPT);
define('PASSWORD_BCRYPT_DEFAULT_COST', 10);
}
if (!function_exists('password_hash')) {
function password_hash($password, $algo, array $options = array()) {
if (!function_exists('crypt')) {
die("Crypt must be loaded for password_hash to function");
}
$password = (string) $password;
if (!is_int($algo)) {
trigger_error("password_hash() expects parameter 2 to be long, " . gettype($algo) . " given", E_USER_WARNING);
return null;
}
$resultLength = 0;
switch ($algo) {
case PASSWORD_BCRYPT:
$cost = PASSWORD_BCRYPT_DEFAULT_COST;
$raw_salt_len = 16;
$required_salt_len = 22;
$hash_format = sprintf("$2y$%02d$", $cost);
$resultLength = 60;
break;
default:
trigger_error(sprintf("password_hash(): Unknown password hashing algorithm: %s", $algo), E_USER_WARNING);
return null;
}
$salt_req_encoding = false;
$buffer = '';
$buffer_valid = false;
if (function_exists('mcrypt_create_iv')) {
$buffer = mcrypt_create_iv($raw_salt_len, MCRYPT_DEV_URANDOM);
if ($buffer) {
$buffer_valid = true;
}
}
if (!$buffer_valid && function_exists('openssl_random_pseudo_bytes')) {
$strong = false;
$buffer = openssl_random_pseudo_bytes($raw_salt_len, $strong);
if ($buffer && $strong) {
$buffer_valid = true;
}
}
if (!$buffer_valid && @is_readable('/dev/urandom')) {
$file = fopen('/dev/urandom', 'r');
$read = 0;
$local_buffer = '';
while ($read < $raw_salt_len) {
$local_buffer .= fread($file, $raw_salt_len - $read);
$read = strlen_8bit($local_buffer);
}
fclose($file);
if ($read >= $raw_salt_len) {
$buffer_valid = true;
}
$buffer = str_pad($buffer, $raw_salt_len, "") ^ str_pad($local_buffer, $raw_salt_len, "");
}
if (!$buffer_valid || strlen_8bit($buffer) < $raw_salt_len) {
$buffer_length = strlen_8bit($buffer);
for ($i = 0; $i < $raw_salt_len; $i++) {
if ($i < $buffer_length) {
$buffer[$i] = $buffer[$i] ^ chr(mt_rand(0, 255));
} else {
$buffer .= chr(mt_rand(0, 255));
}
}
}
$salt = $buffer;
$salt_req_encoding = true;
if ($salt_req_encoding) {
$base64_digits = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
$bcrypt64_digits = './ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
$base64_string = base64_encode($salt);
$salt = strtr(rtrim($base64_string, '='), $base64_digits, $bcrypt64_digits);
}
$salt = substr_8bit($salt, 0, $required_salt_len);
$hash = $hash_format . $salt;
$ret = crypt($password, $hash);
if (!is_string($ret) || strlen_8bit($ret) != $resultLength) {
return false;
}
return $ret;
}
function password_get_info($hash) {
$return = array(
'algo' => 0,
'algoName' => 'unknown',
'options' => array(),
);
if (substr_8bit($hash, 0, 4) == '$2y$' && strlen_8bit($hash) == 60) {
$return['algo'] = PASSWORD_BCRYPT;
$return['algoName'] = 'bcrypt';
list($cost) = sscanf($hash, "$2y$%d$");
$return['options']['cost'] = $cost;
}
return $return;
}
function password_needs_rehash($hash, $algo) {
$info = password_get_info($hash);
if ($info['algo'] !== (int) $algo) {
return true;
}
switch ($algo) {
case PASSWORD_BCRYPT:
$cost = PASSWORD_BCRYPT_DEFAULT_COST;
if ($cost !== $info['options']['cost']) {
return true;
}
break;
}
return false;
}
function password_verify($password, $hash) {
if (!function_exists('crypt')) {
die("Crypt must be loaded for password_hash to function");
}
$ret = crypt($password, $hash);
if (!is_string($ret) || strlen_8bit($ret) != strlen_8bit($hash) || strlen_8bit($ret) <= 13) {
return false;
}
$status = 0;
for ($i = 0; $i < strlen_8bit($ret); $i++) {
$status |= (ord($ret[$i]) ^ ord($hash[$i]));
}
return $status === 0;
}
function strlen_8bit($binary_string) {
if (function_exists('mb_strlen')) {
return mb_strlen($binary_string, '8bit');
}
return strlen($binary_string);
}
function substr_8bit($binary_string, $start, $length) {
if (function_exists('mb_substr')) {
return mb_substr($binary_string, $start, $length, '8bit');
}
return substr($binary_string, $start, $length);
}
}
?>
Did this file decode correctly?
Original Code
<?php
/*
=====================================================
DataLife Engine - by SoftNews Media Group
-----------------------------------------------------
http://dle-news.ru/
-----------------------------------------------------
Copyright (c) 2004,2018 SoftNews Media Group
=====================================================
*/
?><?php $_F=__FILE__;$_X='Py5kP1F2UQ1DSSoNQ3FxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxDUM8M11HXVd6dDg8OW9bem84PC08Mlk8Zmp0R1g4NWE8NDgwel08L0tqIG08DUMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ1DPHtHR206SUkwZTgtbzg1YVZLIEkNQy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDUM8T2ptWUt6W3tHPCg2KTx1TEw9LXVMc0g8Zmp0R1g4NWE8NDgwel08L0tqIG0NQ3FxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxDUM8fXt6YTw2ajA4PHphPG1Lakc4Nkc4MDwyWTw2am1ZS3pbe0cNQ3FxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxDUM8RnplODo8dCBvNkd6am9hVnpvNlZte20NQ3FxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxcXFxDUMqSQ1DDUN6dCg8ITA4dHpvODAoPCczU31TV2xGOTlYL2xYOSc8KTwpPEoNQwl7OF0wOEsoPCJ2fX1RSXNWczw9TEE8RmpLMnowMDhvIjwpOw1DCXs4XTA4SzwoPCdXajZdR3pqbzo8VlZJVlZJVlZJJzwpOw1DCTB6OCg8InZdNnB6b1s8XUdHODdtRyEiPCk7DUNEDUMNQ3p0PCg8JDZqb3R6WzEnXSBHe18wajddem8nRTwpPEoNQw1DCSQwajddem9fNmpqcHo4PHE8OG5tZWowODwoIlYiLDw2ZThdb18gS2UoPCRfZjl4Qjl4MSd2fX1RX3ZjZn0nRTwpKTsNQwkkMGo3XXpvXzZqanB6OF82aiBvRzxxPDZqIG9HKCQwajddem9fNmpqcHo4KTsNQwkkMGo3XXpvX11lZWo1XzZqIG9HPHE8LXU7DUMJDUMJenQ8KDwkMGo3XXpvXzZqanB6OF82aiBvRzwuPHU8KTxKDUMJDUMJCXp0PCg8em9fXUtLXVkoJDBqN116b182ampwejgxJDBqN116b182ampwejhfNmogb0ctdUUsPF1LS11ZKCc2ajcnLDwnbzhHJyw8J2pLWycpPCkpPCQwajddem9fXWVlajVfNmogb0c8cTwtQTsNQwkJenQ8KDwkMGo3XXpvXzZqanB6ODEkMGo3XXpvXzZqanB6OF82aiBvRy1zRTxxcTwnIF0nPCk8JDBqN116b19dZWVqNV82aiBvRzxxPC1BOw1DCQkkMGo3XXpvXzZqanB6ODxxPF1LS11ZX2FlejY4KCQwajddem9fNmpqcHo4LDwkMGo3XXpvX11lZWo1XzZqIG9HKTsNQwlEDUMJDUMJJDBqN116b182ampwejg8cTwiViI8Vjx6N21lajA4PCgiViIsPCQwajddem9fNmpqcHo4KTsNQwkNQwl6dCg8em11ZWpvWygkX2Y5eEI5eDEndn19UV92Y2Z9J0UpPHFxPC1zPGN4PHptdWVqb1soJF9mOXhCOXgxJ3Z9fVFfdmNmfSdFKTxxcXE8dF1lYTgpPDA4dHpvOCg8JzNjNFNsWCcsPCQwajddem9fNmpqcHo4PCk7DUMJOGVhODwwOHR6bzgoPCczYzRTbFgnLDxvIGVlPCk7DUMNQ0Q8OGVhODwwOHR6bzgoPCczYzRTbFgnLDxvIGVlPCk7DUMNQ3QgbzZHempvPDBlOF9hOGFhempvKDwkYXowPHE8dF1lYTg8KTxKDUMJW2VqMl1lPCQ2am90els7DUMJDUMJJG1dS103YTxxPGE4YWF6am9fWzhHXzZqanB6OF9tXUtdN2EoKTsNQw1DCXp0PCg8M2M0U2xYPCk8JG1dS103YTEnMGo3XXpvJ0U8cTwzYzRTbFg7DUMJDUMJenQ8KCQ2am90elsxJ2pvZVlfYWFlJ0UpPCRtXUtdN2ExJ2E4NiBLOCdFPHE8R0sgODsNQw1DCWE4YWF6am9fYThHXzZqanB6OF9tXUtdN2EoJG1dS103YTEnZXp0OEd6NzgnRSw8IkkiLDwkbV1LXTdhMScwajddem8nRSw8JG1dS103YTEnYTg2IEs4J0UsPEdLIDgpOw1DDUMJenQ8KDwkYXowPCk8QGE4YWF6am9fejAoPCRhejA8KTsNQw1DCUBhOGFhempvX2FHXUtHKCk7DUMNQ0QNQw1DdCBvNkd6am88YThHXzZqanB6OCgkb103OCw8JHldZSA4LDwkOG5teks4YSk8Sg1DCVtlajJdZTwkNmpvdHpbOw1DCQ1DCXp0KDwkOG5teks4YTwpPEoNQwkJDUMJCSQ4bm16SzhhPHE8R3o3OCgpPCs8KCQ4bm16SzhhPCo8SHI9TEwpOw1DCQ1DCUQ8OGVhODxKDUMJCQ1DCQkkOG5teks4YTxxPEZTV2Y5Ow1DCQ1DCUQNQwkNQwl6dDwoJDZqb3R6WzEnam9lWV9hYWUnRSk8YThHNmpqcHo4KDwkb103OCw8JHldZSA4LDwkOG5teks4YSw8IkkiLDwzYzRTbFgsPH14VDksPH14VDk8KTsNQwk4ZWE4PGE4RzZqanB6OCg8JG9dNzgsPCR5XWUgOCw8JDhubXpLOGEsPCJJIiw8M2M0U2xYLDxYVFdXLDx9eFQ5PCk7DUMNQ0QNQw1DdCBvNkd6am88Nns4NnBfZWpbem8oJCBhOEtvXTc4LDwkNzBiX21dYWE1akswLDwkbWphRzxxPEdLIDgsPCQ2ezg2cF9lals8cTx0XWVhOCk8Sg1DCVtlajJdZTwkNzg3MjhLX3owLDwkMDIsPCQgYThLX1tLaiBtLDwkZV1vWyw8JF9sUSw8JF99bDQ5LDwkNmpvdHpbOw1DDUMJenQoPCQgYThLb103ODxxcTwiIjxjeDwkNzBiX21dYWE1akswPHFxPCIiPCk8SzhHIEtvPHRdZWE4Ow1DCQ1DCSRLOGEgZUc8cTx0XWVhODsNQwkNQwl6dCg8JG1qYUc8KTxKDUMJCQ1DCQkkIGE4S29dNzg8cTwkMDItLmFddDhhTmUoPCQgYThLb103ODwpOw1DCQl6dCg8YUdLZThvKCQ3MGJfbV1hYTVqSzApPC48PnU8KTwkNzBiX21dYWE1akswPHE8YSAyYUdLKCQ3MGJfbV1hYTVqSzAsPEwsPD51KTsNQw1DCQl6dDwoJDZqb3R6WzEnXSBHe183OEdqMCdFKTxKDUMNQwkJCXp0PCg8bUs4W183XUc2eyg8IkkxXHx8XCd8XGR8XC58XCJ8XCF8XD98XCR8XEl8XFxcfFwmXH5cKlwrRUkiLDwkIGE4S29dNzgpPCk8SzhHIEtvPHRdZWE4OwkNQwkJCSQ1ezhLOF9vXTc4PHE8Ijg3XXplcSdKJCBhOEtvXTc4RCciOw1DCQ1DCQlEPDhlYTg8Sg1DDUMJCQl6dDwoPG1LOFtfN11HNnsoPCJJMVx8fFwnfFxkfFwufFwifFwhfFw/fFwkfFxAfFxJfFxcXHxcJlx+XCpcK0VJIiw8JCBhOEtvXTc4KTwpPEs4RyBLbzx0XWVhODsNQwkJCSQ1ezhLOF9vXTc4PHE8Im9dNzhxJ0okIGE4S29dNzhEJyI7DUMJDUMJCUQNQw1DCQkkNzg3MjhLX3owPHE8JDAyLS5hIG04S19OIDhLWSg8ImY5VzlPfTwqPEZ4YzQ8IjxWPFRmOXhReDlGbGc8VjwiXyBhOEthPFB2OXg5PEokNXs4Szhfb103OEQiPCk7DUMJCQ1DCQl6dCg8JDc4NzI4S196MDEnIGE4S196MCdFPFNYMzwkNzg3MjhLX3owMSdtXWFhNWpLMCdFPFNYMzwkNzg3MjhLX3owMScyXW9vODAnRTwhcTwnWThhJzxTWDM8JCBhOEtfW0tqIG0xJDc4NzI4S196MDEnIGE4S19bS2ogbSdFRTEnXWVlajVfXTA3em8nRTwpPEoNQwkJCQ1DCQkJenQoPHphXzcwYntdYXsoPCQ3ODcyOEtfejAxJ21dYWE1akswJ0U8KTwpPEoNQwkJCQkNQwkJCQl6dCgkNzg3MjhLX3owMSdtXWFhNWpLMCdFPHFxPDcwYig8NzBiKCQ3MGJfbV1hYTVqSzApPCk8KTxKDUMJCQkJCSRLOGEgZUc8cTxHSyA4Ow1DCQkJCUQNQwkJCQkNQwkJCUQ8OGVhODxKDUMJCQkJDUMJCQkJenQobV1hYTVqSzBfeThLenRZKCQ3MGJfbV1hYTVqSzAsPCQ3ODcyOEtfejAxJ21dYWE1akswJ0U8KTwpPEoNQwkJCQkJJEs4YSBlRzxxPEdLIDg7DUMJCQkJRA1DCQkJCQ1DCQkJRA1DCQkJDUMJCUQNQwkJDUMJCXp0KDwhJEs4YSBlRzwpPEoNQw1DCQkJJDc4NzI4S196MDxxPF1LS11ZPCgpOw1DCQ1DCQkJJCBhOEtvXTc4PHE8JDAyLS5hXXQ4YU5lKEdLejcoPHtHN2VhbTg2el1lNntdS2EoPGFHS3ptYWVdYXs4YSgkIGE4S29dNzgpLDw5WH1fUlRjfTlmLDwkNmpvdHpbMSc2e11LYThHJ0UpKSk7DUMJDUMJCQl6dCg8eThLYXpqb182ajdtXUs4KCQ2am90elsxJ3k4S2F6am9fejAnRSw8ImhWQSIsPCcuJyk8KTwkMDItLk4gOEtZKDwibFhmOXh9PGxYfWM8IjxWPFRmOXhReDlGbGc8VjwiX10wN3pvX2VqW2E8KG9dNzgsPDBdRzgsPHptLDxdNkd6am8sPDhuR0tdYSk8eV1lIDhhPCgnIlYkIGE4S29dNzhWIicsPCdKJF99bDQ5RCcsPCdKJF9sUUQnLDwnSGgnLDwnJykiPCk7DUMNQwkJRA1DDUMJRDw4ZWE4PEoNQwkJDUMJCSQgYThLb103ODxxPHpvR3ldZSg8JCBhOEtvXTc4PCk7DUMJCQ1DCQkkNzg3MjhLX3owPHE8JDAyLS5hIG04S19OIDhLWSg8ImY5VzlPfTwqPEZ4YzQ8IjxWPFRmOXhReDlGbGc8VjwiXyBhOEthPFB2OXg5PCBhOEtfejBxJ0okIGE4S29dNzhEJyI8KTsNQwkJDUMJCXp0KDwkNzg3MjhLX3owMScgYThLX3owJ0U8U1gzPCQ3ODcyOEtfejAxJ21dYWE1akswJ0U8U1gzPDcwYigkNzg3MjhLX3owMSdtXWFhNWpLMCdFKTxxcTwkNzBiX21dYWE1akswPFNYMzwkIGE4S19bS2ogbTEkNzg3MjhLX3owMScgYThLX1tLaiBtJ0VFMSddZWVqNV9dMDd6bydFPFNYMzwkNzg3MjhLX3owMScyXW9vODAnRTwhcTwnWThhJzwpPEoNQw1DCQkJJEs4YSBlRzxxPEdLIDg7DUMNQwkJRDw4ZWE4PEoNQw1DCQkJJCBhOEtvXTc4PHE8JDAyLS5hXXQ4YU5lKEdLejcoPHtHN2VhbTg2el1lNntdS2EoPGFHS3ptYWVdYXs4YSgkNzg3MjhLX3owMSdvXTc4J0UpLDw5WH1fUlRjfTlmLDwkNmpvdHpbMSc2e11LYThHJ0UpKSk7DUMNQwkJCSQ3ODcyOEtfejA8cTxdS0tdWTwoKTsNQwkNQwkJCXp0KDx5OEthempvXzZqN21dSzgoJDZqb3R6WzEneThLYXpqb196MCdFLDwiaFZBIiw8Jy4nKTwpPCQwMi0uTiA4S1koPCJsWGY5eH08bFh9YzwiPFY8VGY5eFF4OUZsZzxWPCJfXTA3em9fZWpbYTwob103OCw8MF1HOCw8em0sPF02R3pqbyw8OG5HS11hKTx5XWUgOGE8KCciViQgYThLb103OFYiJyw8J0okX31sNDlEJyw8J0okX2xRRCcsPCdoTCcsPCcnKSI8KTsNQw1DCQlEDUMJDUMJRA1DDUMJenQoPCRLOGEgZUc8KTxKDUMJCQ1DCQl6dCg8IV1lZWo1ODBfem0oPCQ3ODcyOEtfejAxJ11lZWo1ODBfem0nRTwpPGN4PCFdZWVqNTgwX3ptKDwkNmpvdHpbMSddMDd6b19dZWVqNTgwX3ptJ0U8KTwpPEoNQwkJCQ1DCQkJJDc4NzI4S196MDxxPF1LS11ZPCgpOw1DCQkJJEs4YSBlRzxxPHRdZWE4Ow1DCQkJYThHXzZqanB6OCg8IjBlOF8gYThLX3owIiw8IiIsPEw8KTsNQwkJCWE4R182ampwejgoPCIwZThfb103OCIsPCIiLDxMPCk7DUMJCQlhOEdfNmpqcHo4KDwiMGU4X21dYWE1akswIiw8IiIsPEw8KTsNQwkJCWE4R182ampwejgoPCIwZThfe11heyIsPCIiLDxMPCk7DUMJCQlAYThhYXpqb18wOGFHS2pZKCk7DUMJCQlAYThhYXpqb18gb2E4RygpOw1DCQkJYThHXzZqanB6OCg8YThhYXpqb19vXTc4KCksPCIiLDxMPCk7DUMJCQkNQwkJCTdhWyg8InpvdGoiLDwkZV1vWzEnem8wOG5fN2FbOCdFLDwkZV1vWzEnem1fMmVqNnAnRTwpOw1DCQkNQwkJRA1DCUQNQw1DCXp0PCg8ISRLOGEgZUc8KTxKPA1DDUMJCXp0PCgkNmpvdHpbMSdlalt6b19lalsnRSk8JDAyLS5OIDhLWSg8ImxYZjl4fTxsWH1jPCI8VjxReDlGbGc8VjwiX2VqW3pvX2VqWzwoem0sPDZqIG9HLDwwXUc4KTxCU1dUOWYoJ0okX2xRRCcsPCdzJyw8JyJWR3o3OCgpViInKTxjWDwzVFFXbE9TfTk8CjlVPFRRM1N9OTw2aiBvR3E2aiBvRytzLDwwXUc4cSciVkd6NzgoKVYiJyI8KTsNQw1DCUQ8OGVhODxKDUMNQwkJenQ8KDwkNns4NnBfZWpbPFNYMzwhJF9mOWZmbGNYMSc2ezg2cF9lalsnRSk8Sg1DDUMJCQl6dCg8JG1qYUc8KTxKPCRdX3owPHE8SHU7PCQ4bkdLPHEiIjs8RDw4ZWE4PEo8JF1fejA8cTxIcjs8enQ8KCRfZjl4Qjl4MSd2fX1RX3g5Rjl4OXgnRSk8JDhuR0s8cTwkMDItLmFddDhhTmUoe0c3ZWFtODZ6XWU2e11LYSgkX2Y5eEI5eDEndn19UV94OUY5eDl4J0UsPDlYfV9SVGN9OWYpKTs8OGVhODwkOG5HSzxxPCIzeks4Nkc8M1c5PFMwN3pvbV1vOGUiOzxEDUMNQwkJCSQwMi0uTiA4S1koPCJsWGY5eH08bFh9YzwiPFY8VGY5eFF4OUZsZzxWPCJfXTA3em9fZWpbYTwob103OCw8MF1HOCw8em0sPF02R3pqbyw8OG5HS11hKTx5XWUgOGE8KCciViQwMi0uYV10OGFOZSgkNzg3MjhLX3owMSdvXTc4J0UpViInLDwnSiRffWw0OUQnLDwnSiRfbFFEJyw8J0okXV96MEQnLDwnSiQ4bkdLRCcpIjwpOw1DCQkJJF9mOWZmbGNYMSc2ezg2cF9lalsnRTxxPHM7DUMJCUQNQw1DCUQNQw1DCUs4RyBLbzwkSzhhIGVHOw1DRA1DDUMNQ3QgbzZHempvPDA4ZThHOG84NWEyWXowKDwkejA8KTxKDUMJW2VqMl1lPCQ2am90elssPCQwMjsNQwkNQwkkejA8cTx6b0d5XWUoJHowKTsNQwkNQwkkS2o1PHE8JDAyLS5hIG04S19OIDhLWSg8ImY5VzlPfTwgYThLX3owPEZ4YzQ8IjxWPFF4OUZsZzxWPCJfbWphR184bkdLXWE8UHY5eDk8bzg1YV96MDxxPCdKJHowRCciPCk7DUMJDUMJJDAyLS5OIDhLWSg8IlRRM1N9OTwiPFY8VGY5eFF4OUZsZzxWPCJfIGE4S2E8Zjl9PG84NWFfbyA3cW84NWFfbyA3LXM8UHY5eDk8IGE4S196MHEnSiRLajUxJyBhOEtfejAnRUQnIjwpOw1DCQ1DCSQwMi0uTiA4S1koPCIzOVc5fTk8RnhjNDwiPFY8UXg5RmxnPFY8Il9tamFHPFB2OXg5PHowcSdKJHowRCciPCk7DUMJJDAyLS5OIDhLWSg8IjM5Vzl9OTxGeGM0PCI8VjxReDlGbGc8VjwiX21qYUdfOG5HS11hPFB2OXg5PG84NWFfejBxJ0okejBEJyI8KTsNQwkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfbWplZTxQdjl4OTxvODVhX3owcSdKJHowRCciPCk7DUMJJDAyLS5OIDhLWSg8IjM5Vzl9OTxGeGM0PCI8VjxReDlGbGc8VjwiX21qZWVfZWpbPFB2OXg5PG84NWFfejBxJ0okejBEJyI8KTsNQwkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfbWphR19lals8UHY5eDk8bzg1YV96MHEnSiR6MEQnIjwpOw1DCSQwMi0uTiA4S1koPCIzOVc5fTk8RnhjNDwiPFY8UXg5RmxnPFY8Il9tamFHX21dYWE8UHY5eDk8bzg1YV96MHEnSiR6MEQnIjwpOw1DCSQwMi0uTiA4S1koPCIzOVc5fTk8RnhjNDwiPFY8UXg5RmxnPFY8Il9HXVthPFB2OXg5PG84NWFfejA8cTwnSiR6MEQnIjwpOw1DCSQwMi0uTiA4S1koPCIzOVc5fTk8RnhjNDwiPFY8UXg5RmxnPFY8Il9udGE4XUs2ezxQdjl4OTxvODVhX3owPHE8J0okejBEJyI8KTsNQwkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfZWpbYTxQdjl4OTxvODVhX3owPHE8J0okejBEJyI8KTsNQwkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfYSAyYTZLejI4PFB2OXg5PG84NWFfejBxJ0okejBEJyIpOw1DDUMJMDhlOEc4Nmo3NzhvR2EyWW84NWF6MCg8JHowPCk7DUMNQwkkS2o1PHE8JDAyLS5hIG04S19OIDhLWSg8ImY5VzlPfTx6N11bOGE8PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfejddWzhhPFB2OXg5PG84NWFfejA8cTwnSiR6MEQnIjwpOw1DDUMJJGV6YUd6N11bOGE8cTw4bm1lajA4KDwifHx8Iiw8JEtqNTEnejddWzhhJ0U8KTsNQw1DCXp0KDwkS2o1MSd6N11bOGEnRTwhcTwiIjwpPHRqSzhdNns8KDwkZXphR3o3XVs4YTxdYTwkMF1HXXo3XVs4YTwpPEoNQwkJJCBLZV96N11bODxxPDhubWVqMDgoPCJJIiw8JDBdR116N11bOGE8KTsNQw1DCQl6dCg8Nmogb0coPCQgS2VfejddWzg8KTxxcTx1PCk8Sg1DDUMJCQkkdGplMDhLX21LOHR6bjxxPCQgS2VfejddWzgxTEU8VjwiSSI7DUMJCQkkMF1HXXo3XVs4YTxxPCQgS2VfejddWzgxc0U7DUMNQwkJRDw4ZWE4PEoNQw1DCQkJJHRqZTA4S19tSzh0em48cTwiIjsNQwkJCSQwXUddejddWzhhPHE8JCBLZV96N11bODFMRTsNQw1DCQlEDUMNQwkJQCBvZXpvcCg8eGNjfV8zbHg8VjwiSSBtZWpdMGFJbWphR2FJIjxWPCR0amUwOEtfbUs4dHpuPFY8JDBdR116N11bOGE8KTsNQwkJQCBvZXpvcCg8eGNjfV8zbHg8VjwiSSBtZWpdMGFJbWphR2FJIjxWPCR0amUwOEtfbUs4dHpuPFY8Ikd7IDcyYUkiPFY8JDBdR116N11bOGE8KTsNQwkJQCBvZXpvcCg8eGNjfV8zbHg8VjwiSSBtZWpdMGFJbWphR2FJIjxWPCR0amUwOEtfbUs4dHpuPFY8Ijc4MHogN0kiPFY8JDBdR116N11bOGE8KTsNQwlEDUMNQwkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfejddWzhhPFB2OXg5PG84NWFfejA8cTwnSiR6MEQnIjwpOw1DCQ1DCSQwMi0uTiA4S1koPCJmOVc5T308ejAsPGpvYThLeThLPEZ4YzQ8IjxWPFF4OUZsZzxWPCJfdHplOGE8UHY5eDk8bzg1YV96MDxxPCdKJHowRCciPCk7DUMNQwk1e3plODwoPCRLajU8cTwkMDItLls4R19LajUoKTwpPEoNQw1DCQkkIEtlPHE8OG5tZWowOCg8IkkiLDwkS2o1MSdqb2E4S3k4SydFPCk7DUMNQwkJenQoPDZqIG9HKDwkIEtlPCk8cXE8dTwpPEoNQw1DCQkJJHRqZTA4S19tSzh0em48cTwkIEtlMUxFPFY8IkkiOw1DCQkJJHR6ZTg8cTwkIEtlMXNFOw1DDUMJCUQ8OGVhODxKDUMNQwkJCSR0amUwOEtfbUs4dHpuPHE8IiI7DUMJCQkkdHplODxxPCQgS2UxTEU7DUMNQwkJRA1DCQkkdHplODxxPEdqR0tdb2FlekcoPCR0emU4LDx0XWVhODwpOw1DDUMJCXp0KDxHS3o3KCR0emU4KTxxcTwiVntHXTY2OGFhIik8NmpvR3pvIDg7DUMNQwkJQCBvZXpvcCg8eGNjfV8zbHg8VjwiSSBtZWpdMGFJdHplOGFJIjxWPCR0amUwOEtfbUs4dHpuPFY8JHR6ZTg8KTsNQw1DCUQNQw1DCSQwMi0uTiA4S1koPCIzOVc5fTk8RnhjNDwiPFY8UXg5RmxnPFY8Il90emU4YTxQdjl4OTxvODVhX3owPHE8J0okejBEJyI8KTsNQw1DRA1DDUN0IG82R3pqbzwwOGU4Rzg2ajc3OG9HYSg8JHowPCk8Sg1DCVtlajJdZTwkNmpvdHpbLDwkMDI7DUMJDUMJJHowPHE8em9HeV1lKCR6MCk7DUMNQwkkS2o1PHE8JDAyLS5hIG04S19OIDhLWSg8ImY5VzlPfTx6MCw8bWphR196MCw8IGE4S196MCw8emFfSzhbemFHOEssPF1tbUtqeTg8RnhjNDwiPFY8UXg5RmxnPFY8Il82ajc3OG9HYTxQdjl4OTx6MDxxPCdKJHowRCciPCk7DUMJDUMJJDAyLS5OIDhLWSg8IjM5Vzl9OTxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhPFB2OXg5PHowPHE8J0okejBEJyI8KTsNQwkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR19LXUd6b1tfZWpbPFB2OXg5PDZfejA8cTwnSiR6MEQnIjwpOwkNQw1DCXp0KDwkS2o1MSd6YV9LOFt6YUc4SydFPCk8Sg1DCQkkMDItLk4gOEtZKDwiVFEzU305PCI8VjxUZjl4UXg5RmxnPFY8Il8gYThLYTxmOX08Nmo3N19vIDdxNmo3N19vIDctczxQdjl4OTwgYThLX3owPHEnSiRLajUxJyBhOEtfejAnRUQnIjwpOw1DCUQNQwkNQwl6dCgkS2o1MSddbW1Lank4J0UpPCQwMi0uTiA4S1koPCJUUTNTfTk8IjxWPFF4OUZsZzxWPCJfbWphRzxmOX08Nmo3N19vIDdxNmo3N19vIDctczxQdjl4OTx6MHEnSiRLajUxJ21qYUdfejAnRUQnIjwpOw1DDUMJJDAyLS5OIDhLWSg8ImY5VzlPfTx6MCw8b103ODxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhX3R6ZThhPFB2OXg5PDZfejA8cTwnSiR6MEQnIjwpOw1DCQ1DCTV7emU4PCg8JEtqNTxxPCQwMi0uWzhHX0tqNSgpPCk8Sg1DCQkkIEtlX3o3XVs4PHE8OG5tZWowOCg8IkkiLDwkS2o1MSdvXTc4J0U8KTsNQwkJDUMJCXp0KDw2aiBvRyg8JCBLZV96N11bODwpPHFxPHU8KTxKDUMJCQkNQwkJCSR0amUwOEtfbUs4dHpuPHE8JCBLZV96N11bODFMRTxWPCJJIjsNQwkJCSR6N11bODxxPCQgS2VfejddWzgxc0U7DUMJCQkJCQ1DCQlEPDhlYTg8Sg1DCQkJDUMJCQkkdGplMDhLX21LOHR6bjxxPCIiOw1DCQkJJHo3XVs4PHE8JCBLZV96N11bODFMRTsNQwkJDUMJCUQNQw1DCQkkejddWzg8cTxHakdLXW9hZXpHKCR6N11bOCk7CQkJCQkNQw1DCQlAIG9lem9wKDx4Y2N9XzNseDxWPCJJIG1lal0wYUltamFHYUkiPFY8JHRqZTA4S19tSzh0em48VjwkejddWzg8KTsNQwkJQCBvZXpvcCg8eGNjfV8zbHg8VjwiSSBtZWpdMGFJbWphR2FJIjxWPCR0amUwOEtfbUs4dHpuPFY8Ikd7IDcyYUkiPFY8JHo3XVs4PCk7DUMJCQkNQwlEDUMJDUMJJDAyLS5OIDhLWSg8IjM5Vzl9OTxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhX3R6ZThhPFB2OXg5PDZfejA8cTwnSiR6MEQnIjwpOw1DCQ1DCXp0PCg8JDZqb3R6WzEnR0s4OF82ajc3OG9HYSdFPCk8Sg1DDUMJCSRhTmVfSzhhIGVHPHE8JDAyLS5OIDhLWSg8ImY5VzlPfTx6MDxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhPFB2OXg5PG1dSzhvRzxxPCdKJHowRCciPCk7DUMJDUMJCTV7emU4PCg8JEtqNTxxPCQwMi0uWzhHX0tqNSg8JGFOZV9LOGEgZUc8KTwpPEoNQwkJCTA4ZThHODZqNzc4b0dhKDwkS2o1MSd6MCdFPCk7DUMJCUQNQw1DCUQNQw1DRA1DDUN0IG82R3pqbzwwOGU4Rzg2ajc3OG9HYTJZbzg1YXowKDwkejA8KTxKDUMJW2VqMl1lPCQ2am90elssPCQwMjsNQwkNQwkkejA8cTx6b0d5XWUoJHowKTsNQw1DCSRLOGEgZUc8cTwkMDItLk4gOEtZKDwiZjlXOU99PHowPEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR2E8UHY5eDk8bWphR196MHEnSiR6MEQnIjwpOw1DCQ1DCTV7emU4PCg8JEtqNTxxPCQwMi0uWzhHX11LS11ZKDwkSzhhIGVHPCk8KTxKDUMJCQ1DCQkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR19LXUd6b1tfZWpbPFB2OXg5PDZfejA8cTwnSiRLajUxJ3owJ0VEJyI8KTsNQw1DCQkkMDItLk4gOEtZKDwiZjlXOU99PHowLDxvXTc4PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR2FfdHplOGE8UHY5eDk8Nl96MDxxPCdKJEtqNTEnejAnRUQnIjwpOw1DCQkNQwkJNXt6ZTg8KDwkdHplODxxPCQwMi0uWzhHX0tqNSgpPCk8Sg1DCQkJJCBLZV96N11bODxxPDhubWVqMDgoPCJJIiw8JHR6ZTgxJ29dNzgnRTwpOw1DCQkJDUMJCQl6dCg8Nmogb0coPCQgS2VfejddWzg8KTxxcTx1PCk8Sg1DCQkJCQ1DCQkJCSR0amUwOEtfbUs4dHpuPHE8JCBLZV96N11bODFMRTxWPCJJIjsNQwkJCQkkejddWzg8cTwkIEtlX3o3XVs4MXNFOw1DCQkJCQkJDUMJCQlEPDhlYTg8Sg1DCQkJCQ1DCQkJCSR0amUwOEtfbUs4dHpuPHE8IiI7DUMJCQkJJHo3XVs4PHE8JCBLZV96N11bODFMRTsNQwkJCQ1DCQkJRA1DCQ1DCQkJJHo3XVs4PHE8R2pHS11vYWV6RygkejddWzgpOwkJCQkJDUMJDUMJCQlAIG9lem9wKDx4Y2N9XzNseDxWPCJJIG1lal0wYUltamFHYUkiPFY8JHRqZTA4S19tSzh0em48VjwkejddWzg8KTsNQwkJCUAgb2V6b3AoPHhjY31fM2x4PFY8IkkgbWVqXTBhSW1qYUdhSSI8VjwkdGplMDhLX21LOHR6bjxWPCJHeyA3MmFJIjxWPCR6N11bODwpOw1DCQkJCQ1DCQlEDUMJCQ1DCQkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR2FfdHplOGE8UHY5eDk8Nl96MDxxPCdKJEtqNTEnejAnRUQnIjwpOw1DCQ1DCUQNQwkNQwkkSzhhIGVHPHE8JDAyLS5OIDhLWSg8ImY5VzlPfTxPY1RYfSgqKTxdYTw2aiBvRyw8IGE4S196MDxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhPFB2OXg5PG1qYUdfejBxJ0okejBEJzxTWDM8emFfSzhbemFHOEtxJ3MnPC94Y1RRPE1VPCBhOEtfejAiPCk7DUMJDUMJNXt6ZTg8KDwkS2o1PHE8JDAyLS5bOEdfXUtLXVkoPCRLOGEgZUc8KTwpPEoNQwkJDUMJCSQwMi0uTiA4S1koPCJUUTNTfTk8IjxWPFRmOXhReDlGbGc8VjwiXyBhOEthPGY5fTw2ajc3X28gN3E2ajc3X28gNy1KJEtqNTEnNmogb0cnRUQ8UHY5eDk8IGE4S196MHEnSiRLajUxJyBhOEtfejAnRUQnIjwpOw1DCQ1DCUQNQwkNQwkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR2E8UHY5eDk8bWphR196MHEnSiR6MEQnIjwpOw1DDUMNQ0QNQw1DdCBvNkd6am88MDhlOEc4Nmo3NzhvR2EyWSBhOEt6MCg8JHowLDwkem08cTx0XWVhODwpPEoNQwlbZWoyXWU8JDZqb3R6Wyw8JDAyOw1DCQ1DCSR6MDxxPHpvR3ldZSgkejApOw1DCQ1DCXp0KCR6bSk8Sg1DCQkkem08cTwkMDItLmFddDhhTmUoJHptKTsNQwkJJEs4YSBlRzxxPCQwMi0uTiA4S1koPCJmOVc5T308ejAsPG1qYUdfejAsPCBhOEtfejAsPHphX0s4W3phRzhLLDxdbW1Lank4PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR2E8UHY5eDk8em1xJ0okem1EJzxTWDM8emFfSzhbemFHOEtxJ0wnIjwpOw1DCUQ8OGVhODxKDUMJCSRLOGEgZUc8cTwkMDItLk4gOEtZKDwiZjlXOU99PHowLDxtamFHX3owLDwgYThLX3owLDx6YV9LOFt6YUc4Syw8XW1tS2p5ODxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhPFB2OXg5PCBhOEtfejBxJ0okejBEJzxTWDM8emFfSzhbemFHOEtxJ3MnIjwpOw1DCUQNQwkNQwk1e3plODwoPCRLajU8cTwkMDItLls4R19dS0tdWSg8JEs4YSBlRzwpPCk8Sg1DCQkNQwkJJDAyLS5OIDhLWSg8IjM5Vzl9OTxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dfS11Hem9bX2VqWzxQdjl4OTw2X3owPHE8J0okS2o1MSd6MCdFRCciPCk7DUMNQwkJJDAyLS5OIDhLWSg8ImY5VzlPfTx6MCw8b103ODxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhX3R6ZThhPFB2OXg5PDZfejA8cTwnSiRLajUxJ3owJ0VEJyI8KTsNQwkJDUMJCTV7emU4PCg8JHR6ZTg8cTwkMDItLls4R19LajUoKTwpPEoNQwkJCSQgS2VfejddWzg8cTw4bm1lajA4KDwiSSIsPCR0emU4MSdvXTc4J0U8KTsNQwkJCQ1DCQkJenQoPDZqIG9HKDwkIEtlX3o3XVs4PCk8cXE8dTwpPEoNQwkJCQkNQwkJCQkkdGplMDhLX21LOHR6bjxxPCQgS2VfejddWzgxTEU8VjwiSSI7DUMJCQkJJHo3XVs4PHE8JCBLZV96N11bODFzRTsNQwkJCQkJCQ1DCQkJRDw4ZWE4PEoNQwkJCQkNQwkJCQkkdGplMDhLX21LOHR6bjxxPCIiOw1DCQkJCSR6N11bODxxPCQgS2VfejddWzgxTEU7DUMJCQkNQwkJCUQNQwkNQwkJCSR6N11bODxxPEdqR0tdb2FlekcoJHo3XVs4KTsJCQkJCQ1DCQ1DCQkJQCBvZXpvcCg8eGNjfV8zbHg8VjwiSSBtZWpdMGFJbWphR2FJIjxWPCR0amUwOEtfbUs4dHpuPFY8JHo3XVs4PCk7DUMJCQlAIG9lem9wKDx4Y2N9XzNseDxWPCJJIG1lal0wYUltamFHYUkiPFY8JHRqZTA4S19tSzh0em48VjwiR3sgNzJhSSI8VjwkejddWzg8KTsNQwkJCQkNQwkJRA1DCQkNQwkJJDAyLS5OIDhLWSg8IjM5Vzl9OTxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhX3R6ZThhPFB2OXg5PDZfejA8cTwnSiRLajUxJ3owJ0VEJyI8KTsNQwkNQwlEDUMJDUMJenQoJHptKTxKDUMJCQ1DCQkkSzhhIGVHPHE8JDAyLS5OIDhLWSg8ImY5VzlPfTxPY1RYfSgqKTxdYTw2aiBvRyw8bWphR196MDxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhPFB2OXg5PHptcSdKJHptRCc8U1gzPHphX0s4W3phRzhLcSdMJzxTWDM8XW1tS2p5OHEncyc8L3hjVFE8TVU8bWphR196MCI8KTsNQwkJCQ1DCQk1e3plODwoPCRLajU8cTwkMDItLls4R19dS0tdWSg8JEs4YSBlRzwpPCk8Sg1DCQkJDUMJCQkkMDItLk4gOEtZKDwiVFEzU305PCI8VjxReDlGbGc8VjwiX21qYUc8Zjl9PDZqNzdfbyA3cTZqNzdfbyA3LUokS2o1MSc2aiBvRydFRDxQdjl4OTx6MHEnSiRLajUxJ21qYUdfejAnRUQnIjwpOw1DCQkNQwkJRA1DCQkkMDItLnRLODgoPCRLOGEgZUc8KTsNQwkJCQ1DCQkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfNmo3NzhvR2E8UHY5eDk8em1xJ0okem1EJzxTWDM8emFfSzhbemFHOEtxJ0wnIjwpOw1DCQkNQwlEPDhlYTg8Sg1DCQkNQwkJJEs4YSBlRzxxPCQwMi0uTiA4S1koPCJmOVc5T308T2NUWH0oKik8XWE8Nmogb0csPG1qYUdfejA8RnhjNDwiPFY8UXg5RmxnPFY8Il82ajc3OG9HYTxQdjl4OTwgYThLX3owcSdKJHowRCc8U1gzPHphX0s4W3phRzhLcSdzJzxTWDM8XW1tS2p5OHEncyc8L3hjVFE8TVU8bWphR196MCI8KTsNQwkJCQ1DCQk1e3plODwoPCRLajU8cTwkMDItLls4R19dS0tdWSg8JEs4YSBlRzwpPCk8Sg1DCQ1DCQkJJDAyLS5OIDhLWSg8IlRRM1N9OTwiPFY8UXg5RmxnPFY8Il9tamFHPGY5fTw2ajc3X28gN3E2ajc3X28gNy1KJEtqNTEnNmogb0cnRUQ8UHY5eDk8ejBxJ0okS2o1MSdtamFHX3owJ0VEJyI8KTsNQwkJCQ1DCQlEDUMNQwkJJDAyLS50Szg4KDwkSzhhIGVHPCk7DUMNQwkJJDAyLS5OIDhLWSg8IjM5Vzl9OTxGeGM0PCI8VjxReDlGbGc8VjwiXzZqNzc4b0dhPFB2OXg5PCBhOEtfejBxJ0okejBEJzxTWDM8emFfSzhbemFHOEtxJ3MnIjwpOw1DCUQNQw1DDUNEDUMNQ3QgbzZHempvPHRqSzddR2F6azgoJHR6ZThfYXprOCk8Sg1DCQ1DCXp0KDwhJHR6ZThfYXprODxjeDwkdHplOF9hems4PGQ8cyk8SzhHIEtvPCdMPDInOw1DCQ1DPDw8PCRtSzh0em48cTxdS0tdWSgiMiIsPCIKMiIsPCI0MiIsPCIvMiIsPCJ9MiIpOw1DPDw8PCQ4bm08cTx0ZWpqSyhlalsoJHR6ZThfYXprOCw8c0x1PSkpPHw8TDsNQwkNQzw8PDxLOEcgS288S2ogbzAoJHR6ZThfYXprODxJPChtajUoc0x1PSw8JDhubSkpLDx1KVYnPCdWJG1LOHR6bjEkOG5tRTsNQw1DRA1DDUN0IG82R3pqbzxPezg2cE9dby9rem0oKTxKDUMJDUMJenQoPHs4XTA4S2FfYThvRygpPHx8PDZqb284Nkd6am9fXTJqS0c4MCgpPHx8PCE8dCBvNkd6am9fOG56YUdhKDwnajJfW2t7XW8wZThLJzwpPHx8PHpvel9bOEcoPCdrZXoyVmogR20gR182ajdtSzhhYXpqbyc8KTwpPEs4RyBLbzxMOw1DCQ1DCXp0KDxhR0ttamEoPCRfZjl4Qjl4MSd2fX1RX1NPTzlRfV85WE9jM2xYLydFLDwnbi1ba3ptJzwpPCFxcTx0XWVhODwpPEs4RyBLbzwibi1ba3ptIjsNQwl6dCg8YUdLbWphKDwkX2Y5eEI5eDEndn19UV9TT085UX1fOVhPYzNsWC8nRSw8J1trem0nPCk8IXFxPHRdZWE4PCk8SzhHIEtvPCJba3ptIjsNQwkNQwlLOEcgS288TDsNQ0QNQw1DdCBvNkd6am88L2t6bWMgRygpPEoNQwkNQwkkOVhPYzNsWC88cTxPezg2cE9dby9rem0oKTsNQwkNQwl6dCg8JDlYT2MzbFgvPCk8Sg1DCQkkT2pvRzhvR2E8cTxqMl9bOEdfNmpvRzhvR2EoKTsNQwkJajJfOG8wXzZlOF1vKCk7DUMJCQ1DCQl7OF0wOEsoPCJPam9HOG9HLTlvNmowem9bOjwkOVhPYzNsWC8iPCk7DUMJCQ1DCQkkT2pvRzhvR2E8cTxbazhvNmowOCg8JE9qb0c4b0dhLDxzLDxGY3hPOV8vd2xRPCk7DUMJCTg2e2o8JE9qb0c4b0dhOw1DCQkNQwkJOG56RygpOw1DCUQ8OGVhODxKDUMJCUlJPDw8PDw8ajJfOG8wX3RlIGF7KCk7PA1DCQk4bnpHKCk7DUMJRA1DRA1DDUN0IG82R3pqbzxdZWVqNTgwX3ptKCR6bV9dS0tdWSk8Sg1DCQ1DCSR6bV9dS0tdWTxxPEdLejcoPCR6bV9dS0tdWTwpOw1DDUMJJF9sUTxxPFs4R196bSgpOw1DDUMJenQoPCEkem1fXUtLXVk8KTxKDUMJCUs4RyBLbzxHSyA4Ow1DCUQNQwkNQwl6dCg8YUdLbWphKCRfbFEsPCI6Iik8cXFxPHRdZWE4PCk8Sg1DCQkkMDhlejd6RzhLPHE8IlYiOw1DCUQ8OGVhODwkMDhlejd6RzhLPHE8IjoiOw1DCQ1DCSQwMl96bV9hbWV6RzxxPDhubWVqMDgoPCQwOGV6N3pHOEssPCRfbFE8KTsNQwkkem1fZThvW3tHPHE8Nmogb0coJDAyX3ptX2FtZXpHKTsNQwkNQwkkem1fXUtLXVk8cTw4bm1lajA4KDwifCIsPCR6bV9dS0tdWTwpOw1DCQ1DCXRqSzhdNns8KDwkem1fXUtLXVk8XWE8JHptPCk8Sg1DCQkNQwkJJHptPHE8R0t6Nyg8JHptPCk7DUMJCQ1DCQl6dCg8JHptPHFxPCRfbFE8KTxKDUMJCQkNQwkJCUs4RyBLbzxHSyA4Ow1DCQkNQwkJRDw4ZWE4enQoPDZqIG9HKDhubWVqMDg8KCdJJyw8JHptKSk8cXE8dTwpPEoNQwkJCQkNQwkJCXp0KDw3XWFwN11HNnsoJF9sUSw8JHptKTwpPEs4RyBLbzxHSyA4Ow1DCQkJCQ1DCQlEPDhlYTg8Sg1DCQkJDUMJCQkkem1fNns4NnBfN11HNns4YTxxPEw7DUMJCQkkR3t6YV96bV9hbWV6RzxxPDhubWVqMDgoPCQwOGV6N3pHOEssPCR6bTwpOw1DCQkJDUMJCQl0aksoJHpfejxxPEw7PCR6X3o8ZDwkem1fZThvW3tHOzwkel96PCsrKTxKDUMJCQkJenQoPCRHe3phX3ptX2FtZXpHMSR6X3pFPHFxPCQwMl96bV9hbWV6RzEkel96RTxjeDwkR3t6YV96bV9hbWV6RzEkel96RTxxcTwnKic8KTxKDUMJCQkJCSR6bV82ezg2cF83XUc2ezhhPCtxPHM7DUMJCQkJRA1DCQkJDUMJCQlEDUMJCQkNQwkJCXp0KDwkem1fNns4NnBfN11HNns4YTxxcTwkem1fZThvW3tHPCk8SzhHIEtvPEdLIDg7DUMJCUQNQwkNQwlEDUMJDUMJSzhHIEtvPHRdZWE4Ow1DRA1DDUMNQ3QgbzZHempvPDddYXA3XUc2eygkbFEsPCRPbDN4KTxKDUMJDUM8PDw8ZXphRzwoJF0wMEs4YWEsPCRvOEc3XWFwKTxxPDhubWVqMDgoJ0knLDwkT2wzeCw8dSk7DUMNQwl6dCg8YUdLbWphKCRsUSw8IlYiKTwhcXE8dF1lYTg8U1gzPGFHS21qYSgkT2wzeCw8IlYiKTwhcXE8dF1lYTg8KTxKDUMJCQ1DCQlLOEcgS288KDx6bXVlam9bKCRsUSk8Jjx+KChzPGRkPChBdTwtPCRvOEc3XWFwKSk8LTxzKTwpPHFxPHptdWVqb1s8KCRdMDBLOGFhKTsNQwkNQwlEPDhlYTh6dCg8YUdLbWphKCRsUSw8IjoiKTwhcXE8dF1lYTg8U1gzPGFHS21qYSgkT2wzeCw8IjoiKTwhcXE8dF1lYTg8KTxKDUMJCQ1DPDw8PDw8PDx6dDwoISgoOG5HOG9hempvX2VqXTA4MCgnYWo2cDhHYScpPCYmPDA4dHpvODAoJ1NGX2xYOX1yJykpPHx8PEB6bzhHX21Ham8oJzo6cycpKSk8Sg1DPDw8PDw8PDw8PEs4RyBLbzx0XWVhODsNQzw8PDw8PDw8RA1DCQkNQzw8PDw8PDw8JDJZRzhhUzAwSzxxPCBvbV02cCgnbyonLDxAem84R19tR2pvKCRdMDBLOGFhKSk7DUM8PDw8PDw8PCQyWUc4YX04YUc8cTwgb21dNnAoJ28qJyw8QHpvOEdfbUdqbygkbFEpKTsNQw1DPDw8PDw8PDx6dDwoISQyWUc4YVMwMEs8fHw8ISQyWUc4YX04YUcpPEoNQzw8PDw8PDw8PDw8PEs4RyBLbzx0XWVhODsNQzw8PDw8PDw8RA1DDUM8PDw8PDw8PHRqSzwoJHo8cTxzLDwkNjh6ZTxxPDY4emUoJG84RzddYXA8STxzcik7PCR6PGRxPCQ2OHplOzwrKyR6KTxKDUM8PDw8PDw8PDw8PDwkZTh0RzxxPCRvOEc3XWFwPC08c3I8KjwoJHo8LTxzKTsNQzw8PDw8PDw8PDw8PCRlOHRHPHE8KCRlOHRHPGRxPHNyKTw/PCRlOHRHPDo8c3I7DUM8PDw8PDw8PDw8PDwkN11hcDxxPH4oTG50dHR0PC4uPCRlOHRHKTwmPExudHR0dDsNQzw8PDw8PDw8PDw8PHp0PCgoJDJZRzhhUzAwSzEkekU8JjwkN11hcCk8IXE8KCQyWUc4YX04YUcxJHpFPCY8JDddYXApKTxKDUM8PDw8PDw8PDw8PDw8PDw8SzhHIEtvPHRdZWE4Ow1DPDw8PDw8PDw8PDw8RA1DPDw8PDw8PDxEDUMJCQ1DCQlLOEcgS288R0sgODsNQwkJDUMJRA1DCQ1DCUs4RyBLbzx0XWVhODsNQw1DRA1DDUN0IG82R3pqbzw3YVsoJEdZbTgsPCRHekdlOCw8JEc4bkcsPCQyXTZwPHE8dF1lYTgpPEoNQwlbZWoyXWU8JGVdb1s7DUMJDUMJJDIgR0dqb2E8cTxdS0tdWSgpOw1DCQ1DCXp0KHphX11LS11ZKDwkMl02cDwpKTxKDUMJCSQyNjxxPHM7DUMJCQ1DCQl0aks4XTZ7PCgkMl02cDxdYTwkcDhZPHEuPCR5XWUgOCk8Sg1DCQkJDUMJCQl6dCgkMjY8cXE8cyk8JDZqZWpLcSJHOF1lIjsNQwkJCThlYTh6dCgkMjY8cXE8dSk8JDZqZWpLcSJhZV1HOC1yTEwiOw1DCQkJOGVhOHp0KCQyNjxxcTxBKTwkNmplaktxIjJLajVvLXJMTCI7DUMJCQk4ZWE4PCQ2amVqS3EibUt6N11LWS1yTEwiOw1DCQkJDUMJCQl6dCg8JHldZSA4PHFxPCRlXW9bMSddMDBfYV9iJ0U8KTwkR11LWzhHPHE8IjxHXUtbOEdxXCJfMmVdb3BcIiI7DUMJCQk4ZWE4PCRHXUtbOEdxIiI7DUMJCQkNQwkJCSQyIEdHam9hMUU8cTwiZF08NmVdYWFxXCIyR288MkdvLWE3PDJbLUokNmplaktEPDJHby1LXXphODA8bWphekd6am8tZTh0R1wiPHtLOHRxXCJKJHA4WURcIkokR11LWzhHRC5KJHldZSA4RGRJXS4iOw1DCQkJDUMJCQkkMjYrKzsNQwkJCQ1DCQkJenQoJDI2PC48PSk8JDI2PHE8czsNQwkJRA1DCUQ8OGVhOHp0KDwkMl02cDwpPEoNQwkJJDIgR0dqb2ExRTxxPCJkXTw2ZV1hYXFcIjJHbzwyR28tYTc8MlstRzhdZTwyR28tS116YTgwPG1qYXpHempvLWU4dEdcIjx7Szh0cVwiSiQyXTZwRFwiLkokZV1vWzEndCBvNl83YVsnRURkSV0uIjsNQwlEDUMJDUMJenQoNmogb0coJDIgR0dqb2EpPCk8Sg1DCQkkMl02cDxxPCJkMHp5PDZlXWFhcVwibV1vOGUtdGpqRzhLXCIuZDB6eTw2ZV1hYXFcIkc4bkctNjhvRzhLXCIuIlZ6N21lajA4KCcnLDwkMiBHR2pvYSlWImRJMHp5LmRJMHp5LiI7DUMJRDw4ZWE4PCQyXTZwPHEiIjsNQwkNQwkNQwl6dDwoJEd6R2U4PHFxPCI4S0tqSyIpPCRHekdlODxxPCRlXW9bMSddMDBvODVhXzhLS2pLJ0U7DUMJDUMJODZ7ans4XTA4Syg8ImR6PDZlXWFhcVwidF08dF0tNmo3NzhvRy1qPG1qYXpHempvLWU4dEdcIi5kSXouZGFtXW88NmVdYWFxXCJHOG5HLWE4N3oyamUwXCIuSiRlXW9bMSd7OF0wOEtfMmpuX0d6R2U4J0VEZElhbV1vLiIsPCRHekdlODwpOw1DDUMJenQoJEdZbTg8cXE8IjhLS2pLIik8Sg1DCQkkR1ltODxxPCJdZThLRy0wXW9bOEsiOw1DCUQ8OGVhOHp0PCg8JEdZbTg8cXE8IjVdS296b1siPCk8Sg1DCQkkR1ltODxxPCJdZThLRy01XUtvem9bIjsNQwlEPDhlYTh6dDwoPCRHWW04PHFxPCJhIDY2OGFhIjwpPEoNQwkJJEdZbTg8cTwiXWU4S0ctYSA2NjhhYSI7DUMJRDw4ZWE4PCRHWW04PHE8Il1lOEtHLXpvdGoiOw1DCQ1DCXp0KDx6YV9dS0tdWSg8JEd6R2U4PCk8KTxKDUMJCSRHekdlODxxPDhvMCgkR3pHZTgpOw1DCUQNQw1DCTg2e2o8ZGRkdn00Vw1DZDB6eTw2ZV1hYXEiXWU4S0c8SiRHWW04RDxdZThLRy1hR1llODAtZTh0RzxdZThLRy1dS0tqNS1lOHRHPF1lOEtHLTZqN21qbzhvRzw3OGFhXVs4XzJqbiIuDUM8PGR7PS5KJEd6R2U4RGRJez0uDUM8PGQwenk8NmVdYWFxIm1dbzhlLTJqMFkiLg1DCQlkR10yZTg8NXowR3txInNMTCUiLg1DCQk8PDw8ZEdLLg1DCQk8PDw8PDw8PGRHMDx7OHpbe0dxIkhMIjw2ZV1hYXEiRzhuRy02OG9HOEsiLkokRzhuR0RkSUcwLg1DCQk8PDw8ZElHSy4NQwkJZElHXTJlOC4NQwlkSTB6eS4NQwlKJDJdNnBEDUNkSTB6eS4NQ3Z9NFc7DUMJDUMJODZ7anRqakc4SygpOw1DCTB6OCgpOw1DRA1DDUN0IG82R3pqbzw4NntqezhdMDhLKCR7OF0wOEtfR3pHZTgsPCR7OF0wOEtfYSAyR3pHZTgpPEoNQwlbZWoyXWU8JGFwem9fezhdMDhLLDwkYXB6b190ampHOEssPCRhcHpvX29qR19laltbODBfezhdMDhLLDwkNzg3MjhLX3owLDwkIGE4S19bS2ogbSw8JFphX11LS11ZLDwkNmFhX11LS11ZLDwkNmpvdHpbLDwkZV1vWyw8JHphX2VqWzgwX3pvLDwkN2owLDwkXTZHempvLDwkZV1vWzBdRzgsPCQwMiw8JDBlOF9lalt6b197XWF7Ow1DDUMJenQoPCF6YV9dS0tdWSg8JHs4XTA4S19hIDJHekdlODwpKTwkezhdMDhLX2EgMkd6R2U4PHE8XUtLXVk8KDwnJzxxLjwkezhdMDhLX2EgMkd6R2U4KTsNQwkNQwkkMks4XTA2SyA3MjxxPF1LS11ZKDwiZGV6LmRdPHtLOHRxXCI/N2owcTddem9cIi5kejw2ZV1hYXFcInRdPHRdLXtqNzg8bWphekd6am8tZTh0R1wiLmRJei5KJGVdb1sxJ2Fwem9fN116bydFRGRJXS5kSWV6LiI8KTsNQw1DCXRqSzhdNns8KCR7OF0wOEtfYSAyR3pHZTg8XWE8JHA4WTxxLjwkeV1lIDgpPEoNQwkJDUMJCXp0KCRwOFkpPEoNQwkJCSQySzhdMDZLIDcyMUU8cTwiZGV6LmRdPHtLOHRxXCJKJHA4WURcIi5KJHldZSA4RGRJXS5kSWV6LiI7DUMJCUQ8OGVhODxKDUMJCQkkMks4XTA2SyA3MjFFPHE8ImRlejw2ZV1hYXFcIl02R3p5OFwiLkokeV1lIDhEZEllei4iOw1DCQlEDUMJRA1DDUMJJDJLOF0wNksgNzI8cTx6N21lajA4KCcnLDwkMks4XTA2SyA3Mik7DUMNQwl6bzZlIDA4X2pvNjg8KDNXOVFlIFt6b2E6Ok97ODZwKDlYL2xYOV8zbHg8VjwnSWFwem9hSTA4dF0gZUdWYXB6b1Zte20nKSk7DUMJDUMJJFphPHE8MiB6ZTBfWmEoJFphX11LS11ZKTsNQwkkNmFhPHE8MiB6ZTBfNmFhKCQ2YWFfXUtLXVkpOw1DCQ1DCSRhcHpvX3s4XTA4SzxxPGFHS19LOG1lXTY4KDwiSlphX3R6ZThhRCIsPCRaYSw8JGFwem9fezhdMDhLPCk7DUMJJGFwem9fezhdMDhLPHE8YUdLX0s4bWVdNjgoPCJKNmFhX3R6ZThhRCIsPCQ2YWEsPCRhcHpvX3s4XTA4SzwpOw1DCSRhcHpvX29qR19laltbODBfezhdMDhLPHE8YUdLX0s4bWVdNjgoPCJKWmFfdHplOGFEIiw8JFphLDwkYXB6b19vakdfZWpbWzgwX3s4XTA4SzwpOw1DCSRhcHpvX29qR19laltbODBfezhdMDhLPHE8YUdLX0s4bWVdNjgoPCJKNmFhX3R6ZThhRCIsPCQ2YWEsPCRhcHpvX29qR19laltbODBfezhdMDhLPCk7DUMJDUMJenQoPCR6YV9lals4MF96bzwpPDg2e2o8JGFwem9fezhdMDhLOw1DCThlYTg8ODZ7ajwkYXB6b19vakdfZWpbWzgwX3s4XTA4SzsNQ0QNQw1DdCBvNkd6am88ODZ7anRqakc4SygpPEoNQwlbZWoyXWU8JHphX2VqWzgwX3pvLDwkYXB6b190ampHOEssPCRhcHpvX29qR19laltbODBfdGpqRzhLOw1DDUMJenQoPCR6YV9lals4MF96bzwpPDg2e2o8JGFwem9fdGpqRzhLOw1DCThlYTg8ODZ7ajwkYXB6b19vakdfZWpbWzgwX3Rqakc4SzsNQw1DRA1DDUN0IG82R3pqbzxlemFHMHpLKCQwekspPEoNQwkNQwkkNiBLSzhvR18weks8cTxAam04bzB6Syg8JDB6SzwpOw1DCQ1DCXp0KCQ2IEtLOG9HXzB6SzwhcXE8dF1lYTg8KTxKDUMJCTV7emU4PCg8JDhvR0tZb103ODxxPEs4XTAweksoPCQ2IEtLOG9HXzB6SzwpPCk8Sg1DCQkJenQoPHphXzB6Syg8JDB6S1YiSSJWJDhvR0tZb103ODwpPFNYMzwoJDhvR0tZb103ODwhcTwiViI8U1gzPCQ4b0dLWW9dNzg8IXE8IlZWIik8KTxKDUMJCQkJZXphRzB6Syg8JDB6S1YiSSJWJDhvR0tZb103ODwpOw1DCQkJRDw4ZWE4enQoPCQ4b0dLWW9dNzg8IXE8IlYiPFNYMzwkOG9HS1lvXTc4PCFxPCJWViI8KTxKDUMJCQkJQCBvZXpvcCg8JDB6S1YiSSJWJDhvR0tZb103ODwpOw1DCQkJRA1DCQlEDUMJCUA2ZWphODB6Syg8JDYgS0s4b0dfMHpLPCk7DUMJCUBLNzB6Syg8JDB6SzwpOw1DCUQNQw1DRA1DDUN0IG82R3pqbzxHakdLXW9hZXpHKCR5XUssPCRlajU4SzxxPEdLIDgsPCRtIG9wRzxxPEdLIDgpPEoNQwlbZWoyXWU8JGVdb1tHS11vYWV6RzsNQwkNQwl6dDwoPHphX11LS11ZKCR5XUspPCk8SzhHIEtvPCIiOw1DDUMJJHldSzxxPGFHS19LOG1lXTY4KDZ7SyhMKSw8JycsPCR5XUspOw1DCQ1DCSR5XUs8cTxHS3o3KDxhR0t6bV9HXVthKDwkeV1LPCk8KTsNQwkkeV1LPHE8bUs4W19LOG1lXTY4KDwiSVxhK0kgIiw8Ii0iLDwkeV1LPCk7DUMJJHldSzxxPGFHS19LOG1lXTY4KDwiSSIsPCItIiw8JHldSzwpOw1DDUMJenQ8KHphX11LS11ZKCRlXW9bR0tdb2FlekcpPFNYMzw2aiBvRygkZV1vW0dLXW9hZXpHKTwpPEoNQwkJJHldSzxxPGFHS0dLKCR5XUssPCRlXW9bR0tdb2FlekcpOw1DCUQNQwkNQwl6dDwoPCRtIG9wRzwpPCR5XUs8cTxtSzhbX0s4bWVdNjgoPCJJMV5dLWtMLWhcX1wtVkUrSTd6Iiw8IiIsPCR5XUs8KTsNQwk4ZWE4PCR5XUs8cTxtSzhbX0s4bWVdNjgoPCJJMV5dLWtMLWhcX1wtRStJN3oiLDwiIiw8JHldSzwpOw1DDUMJJHldSzxxPG1LOFtfSzhtZV02OCg8JyMxXC1FKyN6Jyw8Jy0nLDwkeV1LPCk7DUMJJHldSzxxPG1LOFtfSzhtZV02OCg8JyMxVkUrI3onLDwnVicsPCR5XUs8KTsNQw1DCXp0PCg8JGVqNThLPCk8JHldSzxxPGFHS0dqZWo1OEsoPCR5XUs8KTsNQw1DCSR5XUs8cTxhR0tfeks4bWVdNjgoPCJWbXttIiw8IiIsPCR5XUs8KTsNQwkkeV1LPHE8YUdLX3pLOG1lXTY4KDwiVm17bSIsPCJWbW1tIiw8JHldSzwpOw1DCQ1DCXp0KDxhR0tlOG8oPCR5XUs8KTwuPHVMTDwpPEoNQwkJDUMJCSR5XUs8cTxhIDJhR0soPCR5XUssPEwsPHVMTDwpOw1DCQkNQwkJenQoPCgkRzg3bV83XW48cTxhR0tLbWphKDwkeV1LLDwnLSc8KSk8KTwkeV1LPHE8YSAyYUdLKDwkeV1LLDxMLDwkRzg3bV83XW48KTsNQwkNQwlEDUMJDUMJSzhHIEtvPCR5XUs7DUNEDUMNQ3QgbzZHempvPGVdb1swXUc4KCR0aks3XUcsPCRhR103bSw8JGE4S3k4S0d6Nzg8cTx0XWVhODwpPEoNQwlbZWoyXWU8JGVdb1swXUc4LDwkNzg3MjhLX3owOw1DDUMJJEd6Nzhram84YTxxPF1LS11ZKCdRXTZ6dHo2STR6MDVdWScsJ1RmSWZdN2pdJywnVGZJdl01XXp6JywnVGZJU2VdYXBdJywnVGZJUV02enR6NicsJ1M3OEt6Nl1JfXpaIF1vXScsJ1RmSVNLemtqb10nLCdUZkk0aiBvR116bycsJ1M3OEt6Nl1JT3t6eyBdeyBdJywnUzc4S3o2XUk0XWtdR2VdbycsJ1M3OEt6Nl1JNDhuejZqX096R1knLCdTNzhLejZdSTRqb0c4S0s4WScsJ1RmSU84b0dLXWUnLCdUZkk5XWFHOEtvJywnVGZJOV1hRy1sbzB6XW9dJywnUzc4S3o2XUlXejddJywnUzc4S3o2XUlPXUtdNl1hJywnT11vXTBdSVNHZV1vR3o2JywnUzc4S3o2XUlXXV9RXWsnLCdTNzhLejZdSWZdb0d6XVtqJywnT11vXTBdSVg4NXRqIG8wZV1vMCcsJ1M3OEt6Nl1JTSA4b2phX1N6SzhhJywnUzc4S3o2XUkvajBHe10yJywnU0dlXW9HejZJZkddb2U4WScsJ1NHZV1vR3o2SVNraks4YScsJ1N0S3o2XUlPXWFdMmVdbzZdJywnOSBLam04STMgMmV6bycsJzkgS2ptOElXemEyam8nLCc5IEtqbThJV2pvMGpvJywnOSBLam04SVM3YUc4SzBdNycsJzkgS2ptOElNOGVbS10wOCcsJzkgS2ptOElNOEtlem8nLCc5IEtqbThJTUtdR3phZV15XScsJzkgS2ptOElNSyBhYThlYScsJzkgS2ptOElNIDBdbThhRycsJzkgS2ptOElPam04b3tdWzhvJywnOSBLam04STRdMEt6MCcsJzkgS2ptOElRXUt6YScsJzkgS2ptOElRS11bIDgnLCc5IEtqbThJeGo3OCcsJzkgS2ptOElmXUtdWjh5aicsJzkgS2ptOElmR2o2cHtqZTcnLCc5IEtqbThJQno4b29dJywnOSBLam04SVBdS2FdNScsJzkgS2ptOEl3XVtLODInLCc5IEtqbThJU0d7OG9hJywnOSBLam04SU0gNntdSzhhRycsJzkgS2ptOEl2OGVhem9weicsJzkgS2ptOElsYUddbzIgZScsJ1Nhel1JaThLIGFdZTg3JywnOSBLam04SQp6OHknLCc5IEtqbThJNHpvYXAnLCc5IEtqbThJeHpbXScsJzkgS2ptOElmanR6XScsJzkgS2ptOEl9XWVlem9vJywnOSBLam04SUJ6ZW96IGEnLCdTYXpdSU1dW3swXTAnLCdTYXpdSQogNV16RycsJ1N0S3o2XUlYXXpLajJ6JywnU2F6XUl9OHtLXW8nLCc5IEtqbThJCl1lem96b1tLXTAnLCc5IEtqbThJNGphNmo1JywnOSBLam04SUJqZVtqW0tdMCcsJzkgS2ptOElmXTddS10nLCdTYXpdSU1dcCAnLCdTYXpdSTQgYTZdRycsJ1Nhel1JfTJ6ZXpheicsJ1Nhel1JVThLOHldbycsJ1Nhel1JCl0yIGUnLCdTYXpdSVU4cF1HOEt6bzIgS1snLCdTYXpdSX1dYXtwOG9HJywnU2F6XUkKamVwXUddJywnU2F6XUkKXUd7N11vMCAnLCdTYXpdSVNlN11HWScsJ1Nhel1JWGp5amF6MnpLYXAnLCdTYXpdSWldcF1LR10nLCdTYXpdSQpLXWFvalldS2FwJywnU2F6XUl2am9bXwpqb1snLCdTYXpdSQogXWVdX1cgN20gSycsJ1Nhel1JZnpvW11taks4JywnU2F6XUl9XXptOHonLCdTYXpdSVRlXV1vMl1dR11LJywnU2F6XUlUSyA3TnonLCdTYXpdSWxLcCBHYXAnLCdTYXpdSWY4aiBlJywnU2F6XUl9anBZaicsJ1MgYUdLXWV6XUlTMDhlXXowOCcsJ1MgYUdLXWV6XUkzXUs1em8nLCdTYXpdSVVdcCBHYXAnLCdTIGFHS11lel1JTUt6YTJdbzgnLCdRXTZ6dHo2SVFqS0dfNGpLOGEyWScsJ1MgYUdLXWV6XUlmWTBvOFknLCdTYXpdSUJlXTB6eWphR2pwJywnU2F6XUlmXXB7XWV6bycsJ1Nhel1JNF1bXTBdbycsJ1FdNnp0ejZJUyA2cGVdbzAnLCdRXTZ6dHo2SUZ6WnonKTsNQw1DCXp0PCghJGFHXTdtKTxKPCRhR103bTxxPEd6NzgoKTs8RA1DCQ1DCSRlajZdZTxxPG84NTwzXUc4fXo3OCgnQCdWJGFHXTdtKTsNQw1DCXp0PCgkNzg3MjhLX3owMSdHejc4a2pvOCdFPFNYMzwhJGE4S3k4S0d6NzgpPEoNQwkJJGVqNl1la2pvODxxPCQ3ODcyOEtfejAxJ0d6Nzhram84J0U7DUMNQwlEPDhlYTg8Sg1DDUMJCSRlajZdZWtqbzg8cTwwXUc4XzA4dF0gZUdfR3o3OGtqbzhfWzhHKCk7DUMJRA1DDUMJenQ8KCF6b19dS0tdWSgkZWo2XWVram84LDwkR3o3OGtqbzhhKSk8JGVqNl1la2pvODxxPCc5IEtqbThJNGphNmo1JzsNQw1DCSRlajZdZS0uYThHfXo3OHdqbzgobzg1PDNdRzh9ejc4d2pvOCgkZWo2XWVram84KSk7DUMNQwlLOEcgS288YUdLR0soPCRlajZdZS0udGpLN11HKCR0aks3XUcpLDwkZV1vWzBdRzg8KTsNQw1DRA1DDUN0IG82R3pqbzxPXUc4W2pLWVg4NWFmOGU4Nkd6am8oJDZdRzhbaktZejA8cTxMLDwkbV1LOG9HejA8cTxMLDwkb2o2XUc8cTx9eFQ5LDwkYSAyZTh5OGU3XUtwOEs8cTwnJyw8JEs4RyBLb2FHS3pvWzxxPCcnKTxKDUMJW2VqMl1lPCQ2XUcsPCQ2XUdfbV1LOG9HejAsPCQ3ODcyOEtfejAsPCQgYThLX1tLaiBtLDwkN2owOw1DCQ1DCXp0PCgkN2owPHFxPCJdMDBvODVhIjxjeDwkN2owPHFxPCI4MHpHbzg1YSIpPEoNQwkJDUMJCXp0KCQ3ODcyOEtfejAxJzZdR19dZWVqNV9dMDBvODVhJ0UpPEoNQwkJCSRdZWVqNV9lemFHPHE8OG5tZWowOCg8JywnLDwkNzg3MjhLX3owMSc2XUdfXWVlajVfXTAwbzg1YSdFPCk7DUMJCUQ8OGVhODwkXWVlajVfZXphRzxxPDhubWVqMDgoPCcsJyw8JCBhOEtfW0tqIG0xJDc4NzI4S196MDEnIGE4S19bS2ogbSdFRTEnNl1HX11lZWo1X10wMG84NWEnRTwpOw1DCQkNQwlEPDhlYTg8Sg1DCQkNQwkJJF1lZWo1X2V6YUc8cTw4bm1lajA4KDwnLCcsPCQgYThLX1tLaiBtMSQ3ODcyOEtfejAxJyBhOEtfW0tqIG0nRUUxJ11lZWo1XzZdR2EnRTwpOw1DCQkNQwlEDUMJDUMJenQoPCQ3ajA8IXE8IiBhOEtbS2ogbSI8U1gzPCQ3ajA8IXE8IjgwekcgYThLYSIpPEoNQwkJDUMJCSRvakdfXWVlajVfZXphRzxxPDhubWVqMDgoPCcsJyw8JCBhOEtfW0tqIG0xJDc4NzI4S196MDEnIGE4S19bS2ogbSdFRTEnb2pHX11lZWo1XzZdR2EnRTwpOw1DCQkNQwlEPDhlYTg8JG9qR19dZWVqNV9lemFHPHE8XUtLXVkoKTsNQwkNQwl6dCg8JG1dSzhvR3owPHFxPEw8KTxKDUMJCXp0KDwkb2o2XUc8KTwkSzhHIEtvYUdLem9bPFZxPCdkam1HempvPHldZSA4cSJMIi5kSWptR3pqby4nOw1DCUQ8OGVhODxKDUMJCSRhIDJlOHk4ZTddS3A4SzxWcTwnJm8yYW07Jm8yYW07Jm8yYW07Jm8yYW07JzsNQwlEDUMJDUMJenQoPHphYThHKDwkNl1HX21dSzhvR3owPCk8KTxKDUMJCQ1DCQkkS2pqR182XUc4W2pLWTxxPEBdS0tdWV9wOFlhKDwkNl1HX21dSzhvR3owLDwkbV1LOG9HejA8KTsNQwkJDUMJCXp0KDx6YV9dS0tdWSg8JEtqakdfNl1HOFtqS1k8KTwpPEoNQwkJCQ1DCQkJdGpLOF02ezwoPCRLampHXzZdRzhbaktZPF1hPCR6MDwpPEoNQwkJCQkNQwkJCQkkNl1HOFtqS1lfb103ODxxPCQ2XUcxJHowRTsNQwkJCQkNQwkJCQl6dCg8KDwkXWVlajVfZXphRzFMRTxxcTwiXWVlIjxjeDx6b19dS0tdWSg8JHowLDwkXWVlajVfZXphRzwpPCk8Y3g8JDdqMDxxcTwiIGE4S1tLaiBtIjxjeDwkN2owPHFxPCI4MHpHIGE4S2EiPCk8Sg1DCQkJCQkNQwkJCQkJenQoPHpvX11LS11ZKDwkejAsPCRvakdfXWVlajVfZXphRzwpPCk8NmpvR3pvIDg7DUMJCQkJCQ1DCQkJCQkkSzhHIEtvYUdLem9bPFZxPCJkam1HempvPHldZSA4cVwiIjxWPCR6MDxWPCciPCc7DUMJCQkJCQ1DCQkJCQl6dCg8emFfXUtLXVkoPCQ2XUc4W2pLWXowPCk8KTxKDUMJCQkJCQl0aks4XTZ7PCg8JDZdRzhbaktZejA8XWE8JDhlODc4b0c8KTxKDUMJCQkJCQkJenQoPCQ4ZTg3OG9HPHFxPCR6MDwpPCRLOEcgS29hR0t6b1s8VnE8J2E4ZTg2RzgwJzsNQwkJCQkJCUQNQwkJCQkJRDw4ZWE4enQoPCQ2XUc4W2pLWXowPHFxPCR6MDwpPCRLOEcgS29hR0t6b1s8VnE8J2E4ZTg2RzgwJzsNQwkJCQkJDUMJCQkJCSRLOEcgS29hR0t6b1s8VnE8Jy4nPFY8JGEgMmU4eThlN11LcDhLPFY8JDZdRzhbaktZX29dNzg8VjwnZElqbUd6am8uJzsNQwkJCQlEDUMJCQkJDUMJCQkJJEs4RyBLb2FHS3pvWzxxPE9dRzhbaktZWDg1YWY4ZTg2R3pqbyg8JDZdRzhbaktZejAsPCR6MCw8JG9qNl1HLDwkYSAyZTh5OGU3XUtwOEssPCRLOEcgS29hR0t6b1s8KTsNQwkJCUQNQwkJRA1DCUQNQwkNQwlLOEcgS288JEs4RyBLb2FHS3pvWzsNQ0QNQw1DDUN0IG82R3pqbzxdS0tdWV9hOGU4Nkd6am8oJF1LS11ZX2V6YUcsPCRhOGV6MDxxPEwsPCRtXUs4b0d6MDxxPEwsPCRhIDJlOHk4ZTddS3A4SzxxPCcnLDwkSzhHIEtvYUdLem9bPHE8JycpPEoNQw1DCSRLampHXzZdRzhbaktZPHE8XUtLXVk8KCk7DUMJDUMJenQoPCRtXUs4b0d6MDxxcTxMPCk8Sg1DCQkkSzhHIEtvYUdLem9bPFZxPCdkam1HempvPHldZSA4cSJMIi5kSWptR3pqby4nOw1DCUQ8OGVhODxKDUMJCSRhIDJlOHk4ZTddS3A4SzxWcTwnJm8yYW07Jm8yYW07Jm8yYW07JzsNQwlEDUMJDUMJenQoPDZqIG9HKDwkXUtLXVlfZXphRzwpPCk8Sg1DCQkNQwkJdGpLOF02ezwoPCRdS0tdWV9lemFHPF1hPCRlemFHPCk8Sg1DCQkJenQoPCRlemFHMSdtXUs4b0d6MCdFPHFxPCRtXUs4b0d6MDwpPCRLampHXzZdRzhbaktZMUU8cTwkZXphRzEnejAnRTsNQwkJRA1DCQkNQwkJenQoPDZqIG9HKDwkS2pqR182XUc4W2pLWTwpPCk8Sg1DCQkJdGpLOF02ezwoPCRLampHXzZdRzhbaktZPF1hPCR6MDwpPEoNQwkJCQkJDUMJCQkJJEs4RyBLb2FHS3pvWzxWcTwiZGptR3pqbzx5XWUgOHFcIiI8VjwkejA8VjwnIjwnOw1DCQkJCQkNQwkJCQl6dCg8emFfXUtLXVkoPCRhOGV6MDwpPCk8Sg1DCQkJCQl0aks4XTZ7PCg8JGE4ZXowPF1hPCQ4ZTg3OG9HPCk8Sg1DCQkJCQkJDUMJCQkJCQkkOGU4NzhvRzxxPHpvR3ldZSgkOGU4NzhvRyk7DUMJCQkJCQkNQwkJCQkJCXp0KDwkOGU4NzhvRzxxcTwkejA8KTwkSzhHIEtvYUdLem9bPFZxPCdhOGU4Nkc4MCc7DUMJCQkJCQkNQwkJCQkJRA1DCQkJCUQ8OGVhOHp0KDx6b0d5XWUoJGE4ZXowKTxxcTwkejA8KTwkSzhHIEtvYUdLem9bPFZxPCdhOGU4Nkc4MCc7DUMJCQkJCQ1DCQkJCSRLOEcgS29hR0t6b1s8VnE8Jy4nPFY8JGEgMmU4eThlN11LcDhLPFY8JF1LS11ZX2V6YUcxJHowRTEnR3pHZTgnRTxWPCdkSWptR3pqby4nOw1DCQkJCQ1DCQkJCSRLOEcgS29hR0t6b1s8cTxdS0tdWV9hOGU4Nkd6am8oJF1LS11ZX2V6YUcsPCRhOGV6MCw8JHowLDwkYSAyZTh5OGU3XUtwOEssPCRLOEcgS29hR0t6b1s8KTsNQwkJCUQNQwkJRA1DCUQNQwkNQwlLOEcgS288JEs4RyBLb2FHS3pvWzsNQ0QNQw1DJDc2XTZ7ODxxPHRdZWE4Ow1DDUN6dDwoPCQ2am90elsxJzZdNns4X0dZbTgnRTwpPEoNQw1DCXpvNmUgMDhfam82ODwoM1c5UWUgW3pvYTo6T3s4NnAoOVgvbFg5XzNseDxWPCdJNmVdYWE4YUk3ODc2XTZ7OFY2ZV1hYVZte20nKSk7DUMJJDc2XTZ7ODxxPG84NTwwZThfNzg3Nl02ezgoJDZqb3R6Wyk7DUMNQ0QNQw1DdCBvNkd6am88NmU4XUtfNl02ezgoJDZdNns4X11LOF1hPHE8dF1lYTgpPEoNQwlbZWoyXWU8JDc2XTZ7OCw8JDZqb3R6WzsNQw1DCXp0KDwkNmpvdHpbMSc2XTZ7OF9HWW04J0U8KTxKDUMJCXp0KDwkNzZdNns4LS42am9vODZHempvPC48TDwpPEoNQwkJCSQ3Nl02ezgtLjZlOF1LKDwkNl02ezhfXUs4XWE8KTsNQwkJCUs4RyBLbzxHSyA4Ow1DCQlEDUMJRA1DDUMJenQ8KDwkNl02ezhfXUs4XWE8KTxKDUMJCXp0KCF6YV9dS0tdWSgkNl02ezhfXUs4XWEpKTxKDUMJCQkkNl02ezhfXUs4XWE8cTxdS0tdWSgkNl02ezhfXUs4XWEpOw1DCQlEDUMJRA1DCQkNQwkkdDB6SzxxPGptOG8weksoPDlYL2xYOV8zbHg8VjwnSTZdNns4JzwpOw1DCQkNQwk1e3plODwoPCR0emU4PHE8SzhdMDB6Syg8JHQweks8KTwpPEoNQwkJenQoPCR0emU4PCFxPCdWe0ddNjY4YWEnPFNYMzwhemFfMHpLKCR0emU4KTwpPEoNQwkJCQ1DCQkJenQoPCQ2XTZ7OF9dSzhdYTwpPEoNQwkJCQkNQwkJCQl0aks4XTZ7KCQ2XTZ7OF9dSzhdYTxdYTwkNl02ezhfXUs4XSk8enQoPGFHS3ptamEoPCR0emU4LDwkNl02ezhfXUs4XTwpPHFxcTxMPCk8QCBvZXpvcCg8OVgvbFg5XzNseDxWPCdJNl02ezhJJzxWPCR0emU4PCk7DUMJCQkNQwkJCUQ8OGVhODxKDUMJCQkJDUMJCQkJQCBvZXpvcCg8OVgvbFg5XzNseDxWPCdJNl02ezhJJzxWPCR0emU4PCk7DUMJCQkNQwkJCUQNQwkJRA1DCUQNQ0QNQw1DdCBvNkd6am88NmU4XUtfXWVlXzZdNns4YSgpPEoNQwlbZWoyXWU8JDZqb3R6WzsNQwkNQwllemFHMHpLKDw5WC9sWDlfM2x4PFY8J0k2XTZ7OElhWWFHODdJT2ZmJzwpOw1DCWV6YUcweksoPDlYL2xYOV8zbHg8VjwnSTZdNns4SWFZYUc4N0l2fTRXJzwpOw1DCWV6YUcweksoPDlYL2xYOV8zbHg8VjwnSTZdNns4SWFZYUc4N0lUeGwnPCk7DUMJZXphRzB6Syg8OVgvbFg5XzNseDxWPCdJNl02ezhJYVlhRzg3SW1lIFt6b2EnPCk7DUMJDUMJJHQweks8cTxqbThvMHpLKDw5WC9sWDlfM2x4PFY8J0k2XTZ7OElhWWFHODdJJzwpOw1DCTV7emU4PCg8JHR6ZTg8cTxLOF0wMHpLKDwkdDB6SzwpPCk8Sg1DCQl6dCg8JHR6ZTg8IXE8J1YnPFNYMzwkdHplODwhcTwnVlYnPFNYMzwkdHplODwhcTwnVntHXTY2OGFhJzxTWDM8JHR6ZTg8IXE8JzZLam9WbXttJzwpPEoNQwkJCUAgb2V6b3AoPDlYL2xYOV8zbHg8VjwnSTZdNns4SWFZYUc4N0knPFY8JHR6ZTg8KTsNQwkJDUMJCUQNQwlEDUMJDUMJenQoPCQ2am90elsxJzZdNns4X0dZbTgnRTwpPEoNQwkJJHQweks8cTxqbThvMHpLKDw5WC9sWDlfM2x4PFY8J0k2XTZ7OCc8KTsNQwkJNXt6ZTg8KDwkdHplODxxPEs4XTAweksoPCR0MHpLPCk8KTxKDUMJCQl6dCg8JHR6ZTg8IXE8J1Z7R102NjhhYSc8U1gzPCF6YV8weksoJHR6ZTgpPCk8Sg1DCQkJCQlAIG9lem9wKDw5WC9sWDlfM2x4PFY8J0k2XTZ7OEknPFY8JHR6ZTg8KTsNQwkJCUQNQwkJRA1DCUQNQwkNQwk2ZThdS182XTZ7OCgpOw1DCQ1DCXp0PCh0IG82R3pqb184bnphR2EoJ2ptNl02ezhfSzhhOEcnKSk8Sg1DCQlqbTZdNns4X0s4YThHKCk7DUMJRA1DCQ1DRA1DDUN0IG82R3pqbzxudHo4ZTBhMF1HXWVqXTAoJHowKTxKDUMJDUMJenQoPCR6MDxxcTwiIjwpPEs4RyBLbzsNQwkNQwkkbnR6OGUwYTBdR108cTw4bm1lajA4KDwifHwiLDwkejA8KTsNQwl0aks4XTZ7PCg8JG50ejhlMGEwXUddPF1hPCRudHo4ZTAwXUddPCk8Sg1DCQllemFHPCg8JG50ejhlMDBdR11vXTc4LDwkbnR6OGUwMF1HXXldZSA4PCk8cTw4bm1lajA4KDwifCIsPCRudHo4ZTAwXUddPCk7DUMJCSRudHo4ZTAwXUddb103ODxxPGFHS19LOG1lXTY4KDwiJiNzdT07Iiw8InwiLDwkbnR6OGUwMF1HXW9dNzg8KTsNQwkJJG50ejhlMDBdR11vXTc4PHE8YUdLX0s4bWVdNjgoPCJfX1g5UFdfXyIsPCJcS1xvIiw8JG50ejhlMDBdR11vXTc4PCk7DUMJCSRudHo4ZTAwXUddeV1lIDg8cTxhR0tfSzhtZV02OCg8IiYjc3U9OyIsPCJ8Iiw8JG50ejhlMDBdR115XWUgODwpOw1DCQkkbnR6OGUwMF1HXXldZSA4PHE8YUdLX0s4bWVdNjgoPCJfX1g5UFdfXyIsPCJcS1xvIiw8JG50ejhlMDBdR115XWUgODwpOw1DCQkkMF1HXTEkbnR6OGUwMF1HXW9dNzhFPHE8JG50ejhlMDBdR115XWUgODsNQwlEDUMJSzhHIEtvPCQwXUddOw1DRA1DDUN0IG82R3pqbzxudHo4ZTBhZWpdMCgpPEoNQwlbZWoyXWU8JGVdb1ssPCQ2am90els7DUMJDUMJJG1dR3s8cTw5WC9sWDlfM2x4PFY8J0kwXUddSW50ejhlMGFWR25HJzsNQwkkdHplODZqb0c4b0dhPHE8dHplOCg8JG1dR3s8KTsNQwkkdHo4ZTBhPHE8XUtLXVkoKTsNQwkkRzdtX11LSzxxPF1LS11ZKCk7DUMNQwl6dCg8IXphX11LS11ZKDwkdHplODZqb0c4b0dhPCk8KTxKDUMJCQ1DCQlLOEcgS288XUtLXVkoKTsNQwkNQwlEPDhlYTh6dCg8Nmogb0coJHR6ZTg2am9HOG9HYSk8KTxKDUMJCQ1DCQl0aks4XTZ7PCg8JHR6ZTg2am9HOG9HYTxdYTwkb103ODxxLjwkeV1lIDg8KTxKDUMJCQkNQwkJCSR5XWUgODxxPEdLejcoJHldZSA4KTsNQwkJCQ1DCQkJenQoPCR5XWUgODwpPEoNQwkJCQkNQwkJCQkkRzdtX11LSzxxPDhubWVqMDgoPCJ8Iiw8JHldZSA4PCk7DUMJCQkJDUMJCQkJdGpLOF02ezwoPCRHN21fXUtLPF1hPCRvXTc4dTxxLjwkeV1lIDh1PCk8Sg1DCQkJCQkkeV1lIDh1PHE8YUdLX0s4bWVdNjgoPCImI3N1PTsiLDwifCIsPCR5XWUgOHU8KTsNQwkJCQkJJHldZSA4dTxxPGFHS19LOG1lXTY4KDwiX19YOVBXX18iLDwiXEtcbyIsPCR5XWUgOHU8KTsNQwkJCQkJJHldZSA4dTxxPHtHN2VfOG9HekdZXzA4NmowOCgkeV1lIDh1LDw5WH1fUlRjfTlmLDwkNmpvdHpbMSc2e11LYThHJ0UpOw1DCQkJCQkkdHo4ZTBhMSRvXTc4RTEkb103OHVFPHE8JHldZSA4dTsNQwkJCQlEDUMJCQkJDUMJCQlEDUMJCUQNQw1DCQlLOEcgS288JHR6OGUwYTsNQw1DCUQNQwkNQwlLOEcgS288XUtLXVkoKTsNQ0QNQw1DdCBvNkd6am88Nks4XUc4Xzc4R11HXVthKCRhR2pLWSw8JF1aXW48cTx0XWVhOCk8Sg1DCVtlajJdZTwkNmpvdHpbLDwkMDI7DUMJDUMJJHA4WTVqSzBfNmogb0c8cTx1TDsNQwkkbzg1XUtLPHE8XUtLXVk8KCk7DUMJJHs4XTA4S2E8cTxdS0tdWTwoKTsNQwkkTiBqRzhhPHE8XUtLXVk8KCJcbnV1Iiw8IlxuckwiLDwiXEciLDwnXG8nLDwnXEsnLDwiXG8iLDwiXEsiLDwiXFwiLDwiLCIsPCJWIiw8IkkiLDwiIyIsPCI7Iiw8IjoiLDwiQCIsPCJ+Iiw8IjEiLDwiRSIsPCJKIiw8IkQiLDwicSIsPCItIiw8IisiLDwiKSIsPCIoIiw8IioiLDwiXiIsPCIlIiw8IiQiLDwiZCIsPCIuIiw8Ij8iLDwiISIsPCciJyk7DUMJJHRdYUdOIGpHOGE8cTxdS0tdWTwoIlxudXUiLDwiXG5yTCIsPCJcRyIsPCJcbyIsPCJcSyIsPCciJyw8J1xLJyw8J1xvJyw8IiQiLDwiSiIsPCJEIiw8IjEiLDwiRSIsPCJkIiw8Ii4iLDwiXFwiKTsNQw1DCSRhR2pLWTxxPG1LOFtfSzhtZV02OCg8IiNcMXt6MDgoVio/KVxFKFYrPylcMUl7ejA4XEUjemEiLDwiIiw8JGFHaktZPCk7DUMJJGFHaktZPHE8bUs4W19LOG1lXTY4KDwiJ1wxXUdHXTZ7NzhvR3EoVio/KVxFJ2F6Iiw8IiIsPCRhR2pLWTwpOw1DCSRhR2pLWTxxPG1LOFtfSzhtZV02OCg8IidcMW1dWzhxKFYqPylcRShWKj8pXDFJbV1bOFxFJ2F6Iiw8IiIsPCRhR2pLWTwpOw1DCSRhR2pLWTxxPGFHS19LOG1lXTY4KDwiSlFTLzlNeDlTCkQiLDwiIiw8JGFHaktZPCk7DUMJJGFHaktZPHE8YUdLX0s4bWVdNjgoPCImbzJhbTsiLDwiPCIsPCRhR2pLWTwpOw1DCQ1DCSRhR2pLWTxxPGFHS19LOG1lXTY4KDwnZDJLPEkuJyw8JzwnLDwkYUdqS1k8KTsNQwkkYUdqS1k8cTxhR0tfSzhtZV02OCg8J2QySy4nLDwnPCcsPCRhR2pLWTwpOw1DCSRhR2pLWTxxPGFHS3ptX0ddW2EoPCRhR2pLWTwpOw1DCSRhR2pLWTxxPG1LOFtfSzhtZV02OCg8IiMmKFYrPyk7IyIsPCIiLDwkYUdqS1k8KTsNQwkkYUdqS1k8cTxHS3o3KGFHS19LOG1lXTY4KDwiPCwiLDwiIiw8JGFHaktZPCkpOw1DPA1DCXp0KDxHS3o3KDwkX3g5UlQ5Zn0xJzc4R11fR3pHZTgnRTwpPCk8Sg1DDUMJCSR7OF0wOEthMSdHekdlOCdFPHE8R0t6Nyg8e0c3ZWFtODZ6XWU2e11LYSg8YUdLem1fR11bYSg8YUdLem1hZV1hezhhKCRfeDlSVDlmfTEnNzhHXV9HekdlOCdFPCk8KSw8OVh9X09jNFFTfSw8JDZqb3R6WzEnNntdS2E4RydFPCk8KTsNQwkJJHs4XTA4S2ExJ0d6R2U4J0U8cTwkMDItLmFddDhhTmUoYUdLX0s4bWVdNjgoPCR0XWFHTiBqRzhhLDwnJyw8JHs4XTA4S2ExJ0d6R2U4J0U8KSk7DUMNQwlEPDhlYTg8JHs4XTA4S2ExJ0d6R2U4J0U8cTwiIjsNQwkNQwl6dCg8R0t6Nyg8JF94OVJUOWZ9MScwOGE2SydFPCk8KTxKDUMNQwkJJHs4XTA4S2ExJzA4YTZLem1HempvJ0U8cTxHS3o3KGFHS3ptX0ddW2EoPGFHS3ptYWVdYXs4YSg8JF94OVJUOWZ9MScwOGE2SydFPCk8KTwpOw1DDUMJCXp0KDwwZThfYUdLZThvKDwkezhdMDhLYTEnMDhhNkt6bUd6am8nRSw8JDZqb3R6WzEnNntdS2E4RydFPCk8LjxBTEw8KTxKDUMJCQkNQwkJCSR7OF0wOEthMScwOGE2S3ptR3pqbydFPHE8MGU4X2EgMmFHSyg8JHs4XTA4S2ExJzA4YTZLem1HempvJ0UsPEwsPEFMTCw8JDZqb3R6WzEnNntdS2E4RydFPCk7DUMJCQkNQwkJCXp0KDwoJEc4N21fMDddbjxxPDBlOF9hR0tLbWphKDwkezhdMDhLYTEnMDhhNkt6bUd6am8nRSw8JzwnLDwkNmpvdHpbMSc2e11LYThHJ0U8KSk8KTwkezhdMDhLYTEnMDhhNkt6bUd6am8nRTxxPDBlOF9hIDJhR0soPCR7OF0wOEthMScwOGE2S3ptR3pqbydFLDxMLDwkRzg3bV8wN11uLDwkNmpvdHpbMSc2e11LYThHJ0U8KTsNQw1DCQlEDUMJCQ1DCQkkezhdMDhLYTEnMDhhNkt6bUd6am8nRTxxPCQwMi0uYV10OGFOZSg8YUdLX0s4bWVdNjgoPCR0XWFHTiBqRzhhLDwnJyw8JHs4XTA4S2ExJzA4YTZLem1HempvJ0U8KSk7DUMJDUMJRDw4ZWE4enQoJDZqb3R6WzEnNks4XUc4Xzc4R11HXVthJ0U8Y3g8JF1aXW4pPEoNQwkJDUMJCSRhR2pLWTxxPGFHS19LOG1lXTY4KDwkdF1hR04gakc4YSw8JycsPCRhR2pLWTwpOw1DDUMJCSR7OF0wOEthMScwOGE2S3ptR3pqbydFPHE8YUdLem1hZV1hezhhKCRhR2pLWSk7DUMJCQ1DCQl6dCg8MGU4X2FHS2U4byg8JHs4XTA4S2ExJzA4YTZLem1HempvJ0UsPCQ2am90elsxJzZ7XUthOEcnRTwpPC48QUxMPCk8Sg1DCQkJDUMJCQkkezhdMDhLYTEnMDhhNkt6bUd6am8nRTxxPDBlOF9hIDJhR0soPCR7OF0wOEthMScwOGE2S3ptR3pqbydFLDxMLDxBTEwsPCQ2am90elsxJzZ7XUthOEcnRTwpOw1DCQkJDUMJCQl6dCg8KCRHODdtXzA3XW48cTwwZThfYUdLS21qYSg8JHs4XTA4S2ExJzA4YTZLem1HempvJ0UsPCc8Jyw8JDZqb3R6WzEnNntdS2E4RydFPCkpPCk8JHs4XTA4S2ExJzA4YTZLem1HempvJ0U8cTwwZThfYSAyYUdLKDwkezhdMDhLYTEnMDhhNkt6bUd6am8nRSw8TCw8JEc4N21fMDddbiw8JDZqb3R6WzEnNntdS2E4RydFPCk7DUMNQwkJRA1DCQkNQwkJJHs4XTA4S2ExJzA4YTZLem1HempvJ0U8cTwkMDItLmFddDhhTmUoPCR7OF0wOEthMScwOGE2S3ptR3pqbydFPCk7DUMNQwlEPDhlYTg8Sg1DDUMJCSR7OF0wOEthMScwOGE2S3ptR3pqbydFPHE8Jyc7DUMNQwlEDUMJDUMJenQoPEdLejcoPCRfeDlSVDlmfTEncDhZNWpLMGEnRTwpPCk8Sg1DCQkNQwkJJF1LSzxxPDhubWVqMDgoPCIsIiw8JF94OVJUOWZ9MSdwOFk1akswYSdFPCk7DUMJCSRvODVdS0s8cTxdS0tdWSgpOw1DDUMJCXRqSzhdNns8KDwkXUtLPF1hPCQ1akswPCk8Sg1DCQkJJG84NV1LSzFFPHE8R0t6NygkNWpLMCk7DUMJCUQNQw1DCQkkX3g5UlQ5Zn0xJ3A4WTVqSzBhJ0U8cTx6N21lajA4KDwiLDwiLDwkbzg1XUtLPCk7DUMJCQ1DCQkkezhdMDhLYTEncDhZNWpLMGEnRTxxPCQwMi0uYV10OGFOZSg8YUdLX0s4bWVdNjgoPCR0XWFHTiBqRzhhLDwiPCIsPGFHS3ptX0ddW2EoPGFHS3ptYWVdYXs4YSg8JF94OVJUOWZ9MSdwOFk1akswYSdFPCk8KTwpPCk7DUMNQwlEPDhlYTh6dCg8JDZqb3R6WzEnNks4XUc4Xzc4R11HXVthJ0U8Y3g8JF1aXW4pPEoNQwkJDUMJCSRhR2pLWTxxPGFHS19LOG1lXTY4KDwkTiBqRzhhLDwnPCcsPCRhR2pLWTwpOw1DCQkNQwkJJF1LSzxxPDhubWVqMDgoPCI8Iiw8JGFHaktZPCk7DUMJCQ1DCQl0aks4XTZ7PCg8JF1LSzxdYTwkNWpLMDwpPEoNQwkJCXp0KDwwZThfYUdLZThvKDwkNWpLMCw8JDZqb3R6WzEnNntdS2E4RydFPCk8Ljw9PCk8JG84NV1LSzFFPHE8JDVqSzA7DUMJCUQNQwkJDUMJCSRdS0s8cTxdS0tdWV82aiBvR195XWUgOGEoPCRvODVdS0s8KTsNQwkJXUthaktHKDwkXUtLPCk7DUMJCQ1DCQkkXUtLPHE8XUtLXVlfcDhZYSg8JF1LSzwpOw1DCQkNQwkJJEdqR11lPHE8Nmogb0coPCRdS0s8KTsNQwkJDUMJCSRqdHRhOEc8cTxMOw1DCQkNQwkJJF1LSzxxPF1LS11ZX2FlejY4KDwkXUtLLDwkanR0YThHLDwkcDhZNWpLMF82aiBvRzwpOw1DCQkNQwkJJHs4XTA4S2ExJ3A4WTVqSzBhJ0U8cTwkMDItLmFddDhhTmUoPHo3bWVqMDgoPCIsPCIsPCRdS0s8KTwpOw1DCUQ8OGVhODxKDUMNQwkJJHs4XTA4S2ExJ3A4WTVqSzBhJ0U8cTwnJzsNQw1DCUQNQwkNQwlLOEcgS288JHs4XTA4S2E7DUNEDUMNQ3QgbzZHempvPGE4R195XUthKCR0emU4LDwkMF1HXSk8Sg1DDUMJJHR6ZTg8cTxHakdLXW9hZXpHKCR0emU4LDxHSyA4LDx0XWVhOCk7DUMNQwl6dDwoPHphX11LS11ZKCQwXUddKTxjeDx6YV96b0coJDBdR10pPCk8Sg1DCQkNQwkJdHplOF9tIEdfNmpvRzhvR2E8KDlYL2xYOV8zbHg8VjwnSTZdNns4SWFZYUc4N0knPFY8JHR6ZTg8VjwnVm17bScsPFpham9fOG82ajA4KDwkMF1HXSw8aWZjWF9UWDlmT1NROTNfVFhsT2MzOTx8PGlmY1hfVFg5Zk9TUTkzX2ZXU2Z2OWY8KSw8V2NPCl85Zyk7DUMJCUA2ezdqMCg8OVgvbFg5XzNseDxWPCdJNl02ezhJYVlhRzg3SSc8VjwkdHplODxWPCdWbXttJyw8THJycjwpOw1DDUMJRA1DDUNEDUMNQ3QgbzZHempvPFs4R195XUthKCR0emU4KTxKDUMJJHR6ZTg8cTxHakdLXW9hZXpHKCR0emU4LDxHSyA4LDx0XWVhOCk7DUMNQwkkMF1HXTxxPEB0emU4X1s4R182am9HOG9HYSg8OVgvbFg5XzNseDxWPCdJNl02ezhJYVlhRzg3SSc8VjwkdHplODxWPCdWbXttJzwpOw1DDUMJenQ8KDwkMF1HXTwhcXE8dF1lYTg8KTxKDUMNQwkJJDBdR108cTxaYWpvXzA4NmowOCg8JDBdR10sPEdLIDg8KTsNQwkJenQ8KDx6YV9dS0tdWSgkMF1HXSk8Y3g8emFfem9HKCQwXUddKTwpPEs4RyBLbzwkMF1HXTsNQw1DCUQ8DUMNQwlLOEcgS288dF1lYTg7DUMNQ0QNQ3QgbzZHempvPFs4R19bS2ogbWEoJHowPHE8dF1lYTgpPEoNQwlbZWoyXWU8JCBhOEtfW0tqIG07DUMJDUMJJEs4RyBLb2FHS3pvWzxxPCIiOw1DCQ1DCXRqSzhdNns8KDwkIGE4S19bS2ogbTxdYTwkW0tqIG08KTxKDUMJCSRLOEcgS29hR0t6b1s8VnE8J2RqbUd6am88eV1lIDhxIic8VjwkW0tqIG0xJ3owJ0U8VjwnIjwnOw1DCQkNQwkJenQoPHphX11LS11ZKDwkejA8KTwpPEoNQwkJCXRqSzhdNns8KDwkejA8XWE8JDhlODc4b0c8KTxKDUMJCQkJenQoPCQ4ZTg3OG9HPHFxPCRbS2ogbTEnejAnRTwpPCRLOEcgS29hR0t6b1s8VnE8J2Y5VzlPfTkzJzsNQwkJCUQNQwkJRDw4ZWE4enQoPCR6MDxdbzA8JHowPHFxPCRbS2ogbTEnejAnRTwpPCRLOEcgS29hR0t6b1s8VnE8J2Y5VzlPfTkzJzsNQwkJDUMJCSRLOEcgS29hR0t6b1s8VnE8Ii4iPFY8JFtLaiBtMSdbS2ogbV9vXTc4J0U8VjwiZElqbUd6am8uXG8iOw1DCUQNQwkNQwlLOEcgS288JEs4RyBLb2FHS3pvWzsNQw1DRA1DdCBvNkd6am88bThLN2VqXTAoJHowKTxKDUMJDUMJenQoPCR6MDxxcTwiIjwpPEs4RyBLbzsNQwkNQwkkMF1HXTxxPF1LS11ZPCgpOw1DCQ1DCSRbS2ogbWE8cTw4bm1lajA4KDwifCIsPCR6MDwpOw1DCXRqSzhdNns8KDwkW0tqIG1hPF1hPCRbS2ogbTwpPEoNQwkJZXphRzwoPCRbS2ogbXowLDwkW0tqIG15XWUgODwpPHE8OG5tZWowOCg8IjoiLDwkW0tqIG08KTsNQwkJJDBdR10xJFtLaiBtejBFMXNFPHE8KCRbS2ogbXldZSA4PHFxPHMpPD88ImE4ZTg2RzgwIjw6PCIiOw1DCQkkMF1HXTEkW0tqIG16MEUxdUU8cTwoJFtLaiBteV1lIDg8cXE8dSk8PzwiYThlODZHODAiPDo8IiI7DUMJCSQwXUddMSRbS2ogbXowRTFBRTxxPCgkW0tqIG15XWUgODxxcTxBKTw/PCJhOGU4Nkc4MCI8OjwiIjsNQwlEDUMJSzhHIEtvPCQwXUddOw1DRA1DDUN0IG82R3pqbzw2ezg2cF9uYWEoKTxKDUMNQwl6dDwoJF8vOX0xJzdqMCdFPHFxPCI4MHpHbzg1YSI8U1gzPCRfLzl9MSddNkd6am8nRTxxcTwiZXphRyIpPEs4RyBLbzsNQwl6dDwoJF8vOX0xJzdqMCdFPHFxPCJHXVthNmVqIDAiPGN4PCRfLzl9MSc3ajAnRTxxcTwiZXpvcGEiPGN4PCRfLzl9MSc3ajAnRTxxcTwiSzgweks4NkdhIjw8Y3g8JF8vOX0xJzdqMCdFPHFxPCI3OEddR11bYSIpPEs4RyBLbzsNQwkNQwkkIEtlPHE8e0c3ZV84b0d6R1lfMDg2ajA4KDwgS2UwODZqMDgoPCRfZjl4Qjl4MSdSVDl4VV9mfXhsWC8nRTwpLDw5WH1fUlRjfTlmLDwnbGZjLUhIYmgtcyc8KTsNQw1DCSQgS2U8cTxhR0tfSzhtZV02OCg8IlxcIiw8IkkiLDwkIEtlPCk7DUMNQwkNQwl6dCg8JCBLZTwpPEoNQwkJDUMJCXp0KDwoYUdLbWphKDwkIEtlLDwnZCc8KTwhcXE8dF1lYTgpPHx8PChhR0ttamEoPCQgS2UsPCcuJzwpPCFxcTx0XWVhOCk8fHw8KGFHS21qYSg8JCBLZSw8JyInPCk8IXFxPHRdZWE4KTx8fDwoYUdLbWphKDwkIEtlLDwnVkknPCk8IXFxPHRdZWE4KTx8fDwoYUdLbWphKDwkIEtlLDwnVlZJJzwpPCFxcTx0XWVhOCk8fHw8KGFHS21qYSg8JCBLZSw8J1wnJzwpPCFxcTx0XWVhOCk8fHw8KGFHS21qYSg8JCBLZSw8J1Zte20nPCk8IXFxPHRdZWE4KTwpPEoNQwkJCQ1DCQkJenQoPCRfLzl9MSc3ajAnRTwhcTwiODB6R284NWEiPGN4PCRfLzl9MSddNkd6am8nRTwhcTwiZXphRyI8KTxKDUMJCQkJezhdMDhLKDwidn19UUlzVnM8PUxBPEZqSzJ6MDA4byI8KTsNQwkJCQkwejgoPCJ2XTZwem9bPF1HRzg3bUchIjwpOw1DCQkJRA1DCQkNQwkJRA1DCQ1DCUQNQwkNQwkkIEtlPHE8e0c3ZV84b0d6R1lfMDg2ajA4KDwgS2UwODZqMDgoPCRfZjl4Qjl4MSd4OVJUOWZ9X1R4bCdFPCksPDlYfV9SVGN9OWYsPCdsZmMtSEhiaC1zJzwpOw1DCSQgS2U8cTxhR0tfSzhtZV02OCg8IlxcIiw8IkkiLDwkIEtlPCk7DUMJDUMJenQoPCQgS2U8KTxKDUMJCQ1DCQl6dCg8KGFHS21qYSg8JCBLZSw8J2QnPCk8IXFxPHRdZWE4KTx8fDwoYUdLbWphKDwkIEtlLDwnLic8KTwhcXE8dF1lYTgpPHx8PChhR0ttamEoPCQgS2UsPCciJzwpPCFxcTx0XWVhOCk8fHw8KGFHS21qYSg8JCBLZSw8J1wnJzwpPCFxcTx0XWVhOCk8KTxKDUMJCQl7OF0wOEsoPCJ2fX1RSXNWczw9TEE8RmpLMnowMDhvIjwpOw1DCQkJMHo4KDwidl02cHpvWzxdR0c4N21HISI8KTsNQwkJDUMJCUQNQwkNQwlEDUMNQ0QNQw1DdCBvNkd6am88NmU4XW9fIEtlKCQgS2UpPEoNQwkNQwl6dCg8JCBLZTxxcTwnJzwpPEs4RyBLbzsNQwkNQwkkIEtlPHE8YUdLX0s4bWVdNjgoPCJ7R0dtOklJIiw8IiIsPCQgS2U8KTsNQwkkIEtlPHE8YUdLX0s4bWVdNjgoPCJ7R0dtYTpJSSIsPCIiLDwkIEtlPCk7DUMJenQoPGFHS0dqZWo1OEsoPGEgMmFHSyg8JCBLZSw8TCw8PTwpPCk8cXE8JzU1NVYnPCk8JCBLZTxxPGEgMmFHSyg8JCBLZSw8PTwpOw1DCSQgS2U8cTw4bm1lajA4KDwnSScsPCQgS2U8KTsNQwkkIEtlPHE8SzhhOEcoPCQgS2U8KTsNQwkkIEtlPHE8OG5tZWowOCg8JzonLDwkIEtlPCk7DUMJJCBLZTxxPEs4YThHKDwkIEtlPCk7DUMJDUMJSzhHIEtvPCQgS2U7DUNEDUMNQ3QgbzZHempvPFs4R18gS2UoJHowKTxKDUMJDUMJW2VqMl1lPCQ2XUdfem90ajsNQwkNQwl6dCg8ITwkejA8KTxLOEcgS287DUMJDUMJJG1dSzhvR196MDxxPCQ2XUdfem90ajEkejBFMSdtXUs4b0d6MCdFOw1DCQ1DCSQgS2U8cTwkNl1HX3pvdGoxJHowRTEnXWVHX29dNzgnRTsNQwkNQwk1e3plODwoPCRtXUs4b0dfejA8KTxKDUMJCQ1DCQkkIEtlPHE8JDZdR196b3RqMSRtXUs4b0dfejBFMSddZUdfb103OCdFPFY8IkkiPFY8JCBLZTsNQwkJDUMJCSRtXUs4b0dfejA8cTwkNl1HX3pvdGoxJG1dSzhvR196MEUxJ21dSzhvR3owJ0U7DUMJCQ1DCQl6dCg8JDZdR196b3RqMSRtXUs4b0dfejBFMSdtXUs4b0d6MCdFPHFxPCQ2XUdfem90ajEkbV1LOG9HX3owRTEnejAnRTwpPDJLOF1wOw1DCQ1DCUQNQwkNQwlLOEcgS288JCBLZTsNQ0QNQw1DdCBvNkd6am88NmpveThLR18gb3o2ajA4KCRHLDwkR2o8cTwnJyk8Sg1DSUk8MDhtSzg2XUc4MA1DCUs4RyBLbzwkRzsNQ0QNQw1DdCBvNkd6am88Nns4NnBfbzhHaygkem1zLDwkem11KTxKDUMJDUMJenQoPGFHS21qYSgkem1zLDwiOiIpPHFxcTx0XWVhODwpPEoNQwkJJDA4ZXo3ekc4SzxxPCJWIjsNQwlEPDhlYTg8JDA4ZXo3ekc4SzxxPCI6IjsNQwkNQwkkem1zPHE8OG5tZWowOCg8JDA4ZXo3ekc4Syw8JHptczwpOw1DCSR6bXU8cTw4bm1lajA4KDwkMDhlejd6RzhLLDwkem11PCk7DUMJDUMJenQoPCR6bXMxTEU8IXE8JHptdTFMRTwpPEs4RyBLbzx0XWVhODsNQwl6dCg8JHptczFzRTwhcTwkem11MXNFPCk8SzhHIEtvPHRdZWE4Ow1DCQ1DCXp0KCQwOGV6N3pHOEs8cXE8IjoiKTxKDUMJCXp0KDwkem1zMXVFPCFxPCR6bXUxdUU8KTxLOEcgS288dF1lYTg7DUMJCXp0KDwkem1zMUFFPCFxPCR6bXUxQUU8KTxLOEcgS288dF1lYTg7DUMJRA1DCQ1DCUs4RyBLbzxHSyA4Ow1DDUNEDUMNQ3QgbzZHempvPDZqN21dSzhfdHplRzhLKCRdLDwkMik8Sg1DCQ1DCSRdPHE8OG5tZWowOCg8InwiLDwkXTwpOw1DCSQyPHE8OG5tZWowOCg8InwiLDwkMjwpOw1DCQ1DCXp0KDwkXTFzRTxxcTwkMjFzRTwpPEs4RyBLbzxMOw1DCQ1DCUs4RyBLbzxhR0s2XWE4NjdtKDwkXTFzRSw8JDIxc0U8KTsNQw1DRA1DDUN0IG82R3pqbzxdIEd7KCk8Sg1DCXs4XTA4Syg8J1BQUC1TIEd7OG9HejZdRzg6PE1dYXo2PEs4XWU3cSJTMDd6bzxTSzhdIic8KTsNQwl7OF0wOEsoPCd2fX1RSXNWTDw9THM8VG9dIEd7akt6azgwJzwpOw1DCTg2e2o8ImR2cy5TNjY4YWE8MzhvejgwZEl2cy4iOw1DCThuekcoKTsNQ0QNQw1DdCBvNkd6am88MiB6ZTBfWmEoJFphKTxKDUMJW2VqMl1lPCQ2am90els7DUMNQwkkWmFfXUtLXVk8cTxdS0tdWSgpOw1DCSR6cUw7DUMJJDA4dDhLPHE8IiI7DUMJDUMJenQ8KCQ2am90elsxJ1phXzd6bydFKTxKDUMNQwkJJFphX11LS11ZMUU8cTwiZGE2S3ptRzxhSzZxXCI4b1t6bzhJNmVdYWE4YUk3em9Jem8wOG5WbXttPzZ7XUthOEdxSiQ2am90elsxJzZ7XUthOEcnRUQmXTdtO1txXTA3em8mXTdtO3lxdWJcIi5kSWE2S3ptRy4iOw1DDUMJCXp0PCg8Nmogb0coJFphKTwpPCRaYV9dS0tdWTFFPHE8ImRhNkt6bUc8YUs2cVwiOG9bem84STZlXWFhOGFJN3pvSXpvMDhuVm17bT82e11LYThHcUokNmpvdHpbMSc2e11LYThHJ0VEJl03bTt0cSJWejdtZWowOCgiLCIsPCRaYSlWIiZdN207eXF1YlwiPDA4dDhLLmRJYTZLem1HLiI7DUMNQwkJSzhHIEtvPHo3bWVqMDgoIlxvIiw8JFphX11LS11ZKTsNQw1DCUQ8OGVhODxKDUMNQwkJJDA4dF0gZUdfXUtLXVk8cTxdS0tdWTwoDUMJCQknOG9bem84SWFwem9hSVpdeV1hNkt6bUdhSV1tbWV6Nl1HempvVlphJywNQwkJKTsNQw1DCQl6dDwoPDZqIG9HKCRaYSk8KTwkWmE8cTxdS0tdWV83OEtbOCgkMDh0XSBlR19dS0tdWSw8JFphKTs8OGVhODwkWmE8cTwkMDh0XSBlR19dS0tdWTsNQw1DCQl0aks4XTZ7PCgkWmE8XWE8JHldZSA4KTxKDUMJCQkNQwkJCXp0KCR6PC48TCk8JDA4dDhLPHEiPDA4dDhLIjsNQwkJCQ1DCQkJJFphX11LS11ZMUU8cTwiZGE2S3ptRzxhSzZxXCJKJHldZSA4RD95cXViXCJKJDA4dDhLRC5kSWE2S3ptRy4iOw1DCQkJDUMJCQkkeisrOw1DCQkNQwkJRA1DDUMJCUs4RyBLbzx6N21lajA4KCJcbyIsPCRaYV9dS0tdWSk7DUMJRA1DDUNEDUMNQw1DdCBvNkd6am88MiB6ZTBfNmFhKCQ2YWEpPEoNQwlbZWoyXWU8JDZqb3R6WzsNQw1DCSQwOHRdIGVHX11LS11ZPHE8XUtLXVk8KA1DCQknOG9bem84SWFwem9hSXRqb0dhSXRqb0ddNThhajc4SWFHWWU4YVY3em9WNmFhJywNQwkJJzhvW3pvOElhcHpvYUlhR1llOGF7ODhHYUldbW1lejZdR3pqb1Y2YWEnDUMJKTsNQwkNQwkkNmFhX11LS11ZPHE8XUtLXVkoKTsNQw1DCXp0PCg8Nmogb0coJDZhYSk8KTwkNmFhPHE8XUtLXVlfNzhLWzgoJDA4dF0gZUdfXUtLXVksPCQ2YWEpOzw4ZWE4PCQ2YWE8cTwkMDh0XSBlR19dS0tdWTsNQw1DCXp0PCgkNmpvdHpbMSdaYV83em8nRSk8Sg1DDUMJCUs4RyBLbzwiZGV6b3A8e0s4dHFcIjhvW3pvOEk2ZV1hYThhSTd6b0l6bzA4blZte20/NntdS2E4R3FKJDZqb3R6WzEnNntdS2E4RydFRCZdN207dHEiVno3bWVqMDgoIiwiLDwkNmFhKVYiJl03bTt5cXViXCI8SzhlcVwiYUdZZThhezg4R1wiPEdZbThxXCJHOG5HSTZhYVwiLiI7DUMNQwlEPDhlYTg8Sg1DDUMJCXRqSzhdNns8KCQ2YWE8XWE8JHldZSA4KTxKDUMJCQ1DCQkJJDZhYV9dS0tdWTFFPHE8ImRlem9wPHtLOHRxXCJKJHldZSA4RD95cXViXCI8SzhlcVwiYUdZZThhezg4R1wiPEdZbThxXCJHOG5HSTZhYVwiLiI7DUMJCQ1DCQlEDUMNQwkJSzhHIEtvPHo3bWVqMDgoIlxvIiw8JDZhYV9dS0tdWSk7DUMJRA1DDUNEDUMNQ3QgbzZHempvPDBlOF9hR0tlOG8oJHldZSA4LDwkNntdS2E4RzwpPEoNQw1DCXp0KDx0IG82R3pqb184bnphR2EoPCc3Ml9hR0tlOG8nPCk8KTxKDUMJCUs4RyBLbzw3Ml9hR0tlOG8oPCR5XWUgOCw8JDZ7XUthOEc8KTsNQwlEPDhlYTh6dCg8dCBvNkd6am9fOG56YUdhKDwnejZqb3lfYUdLZThvJzwpPCk8Sg1DCQlLOEcgS288ejZqb3lfYUdLZThvKCR5XWUgOCw8JDZ7XUthOEcpOw1DCUQNQw1DCUs4RyBLbzxhR0tlOG8oJHldZSA4KTsNQ0QNQw1DdCBvNkd6am88MGU4X2EgMmFHSygkYUdLLDwkYUddS0csPCRlOG9bR3ssPCQ2e11LYThHPCk8Sg1DDUMJenQoPHQgbzZHempvXzhuemFHYSg8JzcyX2EgMmFHSyc8KTwpPEoNQwkJSzhHIEtvPDcyX2EgMmFHSyg8JGFHSyw8JGFHXUtHLDwkZThvW0d7LDwkNntdS2E4RzwpOw1DCQ1DCUQ8OGVhOHp0KDx0IG82R3pqb184bnphR2EoPCd6NmpveV9hIDJhR0snPCk8KTxKDUMJCUs4RyBLbzx6NmpveV9hIDJhR0soJGFHSyw8JGFHXUtHLDwkZThvW0d7LDwkNntdS2E4Ryk7DUMJRA1DDUMJSzhHIEtvPGEgMmFHSygkYUdLLDwkYUddS0csPCRlOG9bR3spOw1DDUNEDUMNQ3QgbzZHempvPDBlOF9hR0tLbWphKCRhR0ssPCRvODgwZTgsPCQ2e11LYThHPCk8Sg1DDUMJenQoPHQgbzZHempvXzhuemFHYSg8JzcyX2FHS0ttamEnPCk8KTxKDUMJCUs4RyBLbzw3Ml9hR0tLbWphKDwkYUdLLDwkbzg4MGU4LDxvIGVlLDwkNntdS2E4RzwpOw1DCQ1DCUQ8OGVhOHp0KDx0IG82R3pqb184bnphR2EoPCd6NmpveV9hR0tLbWphJzwpPCk8Sg1DCQlLOEcgS288ejZqb3lfYUdLS21qYSgkYUdLLDwkbzg4MGU4LDwkNntdS2E4Ryk7DUMJRA1DDUMJSzhHIEtvPGFHS0ttamEoJGFHSyw8JG84ODBlOCk7DUMNQ0QNQw1DdCBvNkd6am88MGU4X2FHS21qYSgkYUdLLDwkbzg4MGU4LDwkNntdS2E4RzwpPEoNQw1DCXp0KDx0IG82R3pqb184bnphR2EoPCc3Ml9hR0ttamEnPCk8KTxKDUMJCUs4RyBLbzw3Ml9hR0ttamEoPCRhR0ssPCRvODgwZTgsPG8gZWUsPCQ2e11LYThHPCk7DUMJRDw4ZWE4enQoPHQgbzZHempvXzhuemFHYSg8J3o2am95X2FHS0ttamEnPCk8KTxKDUMJCUs4RyBLbzx6NmpveV9hR0ttamEoJGFHSyw8JG84ODBlOCw8byBlZSw8JDZ7XUthOEcpOw1DCUQNQw1DCUs4RyBLbzxhR0ttamEoJGFHSyw8JG84ODBlOCk7DUMNQ0QNQw1DdCBvNkd6am88Nns4NnBfXWVlajVfZWpbem8oJHptLDwkN11uPCk8Sg1DCVtlajJdZTwkMDIsPCQ2am90els7DUMNQwkkNmpvdHpbMSdlalt6b18yXW9fR3o3OGogRydFPHE8em9HeV1lKCQ2am90elsxJ2VqW3pvXzJdb19Hejc4aiBHJ0UpOw1DCQ1DCSQ3XW48cTx6b0d5XWUoJDddbik7DUMJDUMJenQoPCQ3XW48ZDx1PCk8JDddbjxxPHU7DUMJDUMJJDJlajZwXzBdRzg8cTxHejc4KCktKCQ2am90elsxJ2VqW3pvXzJdb19Hejc4aiBHJ0U8KjxyTCk7DUMNQwkkS2o1PHE8JDAyLS5hIG04S19OIDhLWSg8ImY5VzlPfTwqPEZ4YzQ8IjxWPFF4OUZsZzxWPCJfZWpbem9fZWpbPFB2OXg5PHptcSdKJHptRCciPCk7DUMNQwl6dDwoPCRLajUxJzZqIG9HJ0U8U1gzPCRLajUxJzBdRzgnRTxkPCQyZWo2cF8wXUc4PCk8Sg1DCQkkMDItLk4gOEtZKDwiMzlXOX05PEZ4YzQ8IjxWPFF4OUZsZzxWPCJfZWpbem9fZWpbPFB2OXg5PHptPHE8J0okem1EJyI8KTsNQwkJSzhHIEtvPEdLIDg7DUMJRA1DDUMJenQ8KCRLajUxJzZqIG9HJ0U8LnE8JDddbjxTWDM8JEtqNTEnMF1HOCdFPC48JDJlajZwXzBdRzg8KTxLOEcgS288dF1lYTg7DUMJOGVhODxLOEcgS288R0sgODsNQw1DRA1DDUN0IG82R3pqbzwwOEc4NkdfOG82ajB6b1soJGFHS3pvWyk8Sjw8DUM8PGFHXUd6NjwkZXphRzxxPF1LS11ZKCcgR3QtSCcsPCc1em8wajVhLXN1YnMnKTsNQzw8PA1DPDx0aks4XTZ7PCgkZXphRzxdYTwkekc4Nyk8Sg1DDUMJenQoPHQgbzZHempvXzhuemFHYSg8JzcyXzZqb3k4S0dfOG82ajB6b1snPCk8KTxKDUMNQwkJJGFdN21lODxxPDcyXzZqb3k4S0dfOG82ajB6b1soPCRhR0t6b1ssPCR6Rzg3LDwkekc4NzwpOw1DDUMJRDw4ZWE4enQoPHQgbzZHempvXzhuemFHYSg8J3o2am95JzwpPCk8Sg1DCQ1DCQkkYV03bWU4PHE8ejZqb3koJHpHODcsPCR6Rzg3LDwkYUdLem9bKTsNQwkNQwlEDUMNQwl6dDwoNzBiKCRhXTdtZTgpPHFxPDcwYigkYUdLem9bKSk8SzhHIEtvPCR6Rzg3Ow1DPDw8RA1DDUM8PDxLOEcgS288byBlZTsNQ0QNQw1DdCBvNkd6am88WzhHX3ptKCk8Sg1DCVtlajJdZTwkNmpvdHpbOw1DCQ1DCXp0PCgkNmpvdHpbMSdqNW9fem0nRSk8JHptPHE8JF9mOXhCOXgxJDZqb3R6WzEnajVvX3ptJ0VFOzw4ZWE4PCR6bTxxPCRfZjl4Qjl4MSd4OTRjfTlfUzMzeCdFOw1DDUMJJEc4N21fem08cTw4bm1lajA4KCIsIiw8JHptKTsNQw1DCXp0KDZqIG9HKCRHODdtX3ptKTwuPHMpPCR6bTxxPEdLejcoJEc4N21fem0xTEUpOw1DDUMJenQ8KDx0emVHOEtfeV1LKDwkem0sPEZsV305eF9CU1dsM1N9OV9sUSw8RmxXfTl4X0ZXUy9fbFFCPSk8KTxKDUMJCUs4RyBLbzx0emVHOEtfeV1LKDwkem08LDxGbFd9OXhfQlNXbDNTfTlfbFEsPEZsV305eF9GV1MvX2xRQj0pOw1DCUQNQw1DCXp0PCg8dHplRzhLX3ldSyg8JHptLDxGbFd9OXhfQlNXbDNTfTlfbFEsPEZsV305eF9GV1MvX2xRQnIpPCk8Sg1DCQlLOEcgS288dHplRzhLX3ldSyg8JHptLDxGbFd9OXhfQlNXbDNTfTlfbFEsPEZsV305eF9GV1MvX2xRQnIpOw1DCUQNQw1DCUs4RyBLbzwnb2pHPDA4Rzg2RzgwJzsNQ0QNQw1DdCBvNkd6am88e0dHbV9bOEdfNmpvRzhvR2EoPCR0emU4PCk8Sg1DCQkNQwkkMF1HXTxxPHRdZWE4Ow1DDUMJenQ8KGFHS3ptamEoJHR6ZTgsPCJ7R0dtOklJIik8IXFxPEw8U1gzPGFHS3ptamEoJHR6ZTgsPCJ7R0dtYTpJSSIpPCFxcTxMKTxKDUMJCUs4RyBLbzx0XWVhODsNQwlEDUMJCQ1DCXp0KDx0IG82R3pqb184bnphR2EoPCc2IEtlX3pvekcnPCk8KTxKDUMJCQkNQwkJJDZ7PHE8NiBLZV96b3pHKCk7DUMJCTYgS2VfYThHam1HKDwkNnssPE9UeFdjUX1fVHhXLDwkdHplODwpOw1DCQk2IEtlX2E4R2ptRyg8JDZ7LDxPVHhXY1F9X1RmOXhTLzlYfSw8JF9mOXhCOXgxJ3Z9fVFfVGY5eF9TLzlYfSdFPCk7DUMJCUA2IEtlX2E4R2ptRyg8JDZ7LDxPVHhXY1F9X0ZjV1djUFdjT1N9bGNYLDxzPCk7DUMJCTYgS2VfYThHam1HKDwkNnssPE9UeFdjUX1feDl9VHhYfXhTWGZGOXgsPHM8KTsNQwkJNiBLZV9hOEdqbUcoPCQ2eyw8T1R4V2NRfV99bDQ5Y1R9LDxiPCk7DUMJCTYgS2VfYThHam1HKDwkNnssPE9UeFdjUX1fZmZXX0I5eGxGVVE5OXgsPHRdZWE4KTsNQwkJNiBLZV9hOEdqbUcoPCQ2eyw8T1R4V2NRfV92OVMzOXgsPEwpOw1DCQkJDUMJCSQwXUddPHE8NiBLZV84bjg2KDwkNns8KTsNQwkJNiBLZV82ZWphOCg8JDZ7PCk7DUMNQwkJenQoPCQwXUddPCFxcTx0XWVhODwpPEs4RyBLbzwkMF1HXTsNQwkJDUMJRDwNQw1DCXp0KDxtSzhbXzddRzZ7KCdJc3xZOGF8am98R0sgOEl6Jyw8em96X1s4RygnXWVlajVfIEtlX3RqbThvJykpPCk8Sg1DDUMJCSQwXUddPHE8QHR6ZThfWzhHXzZqb0c4b0dhKDwkdHplODwpOw1DCQkJDUMJCXp0KDwkMF1HXTwhcXE8dF1lYTg8KTxLOEcgS288JDBdR107DUMNQwlEDUMNQwlLOEcgS288dF1lYTg7CQ1DRA1DDUN0IG82R3pqbzw2ZThdb21dR3soJG1dR3spPEoNQwkkbV1HezxxPEdLejcoYUdLX0s4bWVdNjgoNntLKEwpLDwnJyw8KGFHS3pvWykkbV1HeykpOw1DCSRtXUd7PHE8YUdLX0s4bWVdNjgoXUtLXVkoJ0knLDwnXFwnKSw8J0knLDwkbV1Heyk7DUMJJG1dS0dhPHE8XUtLXVlfdHplRzhLKDhubWVqMDgoJ0knLDwkbV1HeyksPCdhR0tlOG8nKTsNQwkkXTJhamUgRzhhPHE8XUtLXVkoKTsNQwl0aks4XTZ7PCgkbV1LR2E8XWE8JG1dS0cpPEoNQwkJenQ8KCdWJzxxcTwkbV1LRyk8NmpvR3pvIDg7DUMJCXp0PCgnVlYnPHFxPCRtXUtHKTxKDUMJCQldS0tdWV9tam0oJF0yYWplIEc4YSk7DUMJCUQ8OGVhODxKDUMJCQkkXTJhamUgRzhhMUU8cTxHakdLXW9hZXpHKCRtXUtHLDx0XWVhOCw8dF1lYTgpOw1DCQlEDUMJRA1DDUMJSzhHIEtvPHo3bWVqMDgoJ0knLDwkXTJhamUgRzhhKTsNQ0QNQw1DdCBvNkd6am88emFfNzBie11heyg8JDcwYjxxPCcnPCk8Sg1DPDxLOEcgS288YUdLZThvKCQ3MGIpPHFxPEF1PCYmPDZHWW04X24welt6RygkNzBiKTsNQ0QNQw1DdCBvNkd6am88WzhvOEtdRzhfbXpvKClKDUMJDUMJJG16bzxxPCIiOw1DCQ1DCXRqSygkejxxPEw7PCR6PGQ8Yjs8JHo8KyspPEoNQwkJJEtdbzA8cTwiIjsNQwkNQwkJenQodCBvNkd6am9fOG56YUdhKCdqbThvYWFlX0tdbzBqN19tYTggMGpfMllHOGEnKSk8Sg1DCQkJPDBqSg1DCQkJCTwkS11vMDxxPHRlampLKHNMKih7OG4wODYoMnpvdXs4bihqbThvYWFlX0tdbzBqN19tYTggMGpfMllHOGEoPSkpKUlMbnR0dHR0dHR0KSk7DUMJCQk8RDV7emU4KCRLXW8wPHFxPHNMKTsNQwkJRDw4ZWE4PEoNQwkNQwkJCSRLXW8wPHE8N0dfS11vMCg8TCw8aDwpOw1DCQlEDUMJCQ1DCQkkbXpvPFZxPCRLXW8wOw1DCUQNQwkNQzw8PDxLOEcgS288JG16bzsNQ0QNQw1DdCBvNkd6am88YThvMF9dNkd6eV1HempvKDwkTiA4S1k8KTxKDUMJDUMJJDBdR108cTx7R0dtX1s4R182am9HOG9HYSgie0dHbTpJSTBlOC1vODVhVksgSThuR0tdYUldNkd6eV1HOHVMTGhWbXttPyJWJE4gOEtZKTsNQw1DCXp0KDwkMF1HXTwhcXE8dF1lYTg8KTxKCQ1DCQl6dCg8YUdLem1qYSg8JDBdR10sPCJdb0c1Ol02R3p5XUc4MCI8KTwhcXE8dF1lYTg8KTxLOEcgS288InMiOw1DCQk4ZWE4enQoPGFHS3ptamEoPCQwXUddLDwiXW9HNTowOG96ODA7OG5teks4YSI8KTwhcXE8dF1lYTg8KTxLOEcgS288Ii09IjsNQwkJOGVhOHp0KDxhR0t6bWphKDwkMF1HXSw8Il1vRzU6MDhvejgwIjwpPCFxcTx0XWVhODwpPEs4RyBLbzwiTCI7DUMJRA1DDUMJSzhHIEtvPCItcyI7DUNEDUMNQ3QgbzZHempvPFs4R18wajc4b197XWF7KCk8Sg1DCSQwajc4b183MGI8cTw4bm1lajA4KDwnVicsPCRfZjl4Qjl4MSd2fX1RX3ZjZn0nRTwpOw1DCSQ2aiBvR19wOFk8cTw2aiBvRyg8JDBqNzhvXzcwYjwpPC08czsNQwkgb2E4Ryg8JDBqNzhvXzcwYjEkNmogb0dfcDhZRTwpOw1DCXp0KDw4bzAoPCQwajc4b183MGI8KTxxcTwiNmo3IjxjeDw4bzAoPCQwajc4b183MGI8KTxxcTwibzhHIjwpPCQ2aiBvR19wOFk8LS07DUMJJDBqNzhvXzcwYjxxPCQwajc4b183MGIxJDZqIG9HX3A4WTwtPHNFOw1DCSQwajc4b183MGI8cTw3MGIoPDcwYig8JDBqNzhvXzcwYjxWPCI+SExoc0giPCk8KTsNQwlLOEcgS288JDBqNzhvXzcwYjsNQ0QNQw1DdCBvNkd6am88MGU4X102R3p5XUd6am8oJHA4WSw8JDBqNzhvXzcwYiw8JDZqb3R6Wyw8JGp0dGV6bzg8cTx0XWVhOCk8SgkNQwlbZWoyXWU8JGVdb1s7DUMJDUMJJDBqN116bzxxPCBLZThvNmowOCg8YUdLem1fR11bYSg8JF9mOXhCOXgxJ3Z9fVFfdmNmfSdFPCk8KTsNQwkkcDhZPHE8R0t6Nyg8YUdLem1fR11bYSg8JHA4WTwpPCk7DUMJQHs4XTA4Syg8Ik9qb0c4b0ctR1ltODo8RzhuR0l7RzdlOzw2e11LYThHcSBHdC1IIjwpOw1DDUMJenQ8KDwkanR0ZXpvODwpPEoNQw1DCQl6dCg8JHA4WTxxcTw3MGIoPCQwajc4b183MGI8VjwzbFhsfUI5eGZsY1g8KTwpPEoNQwkJCQ1DCQkJJDIgdHQ4SzxxPCJzIjsNQwkJDUMJCUQ8OGVhODxKDUMJCQkNQwkJCSQyIHR0OEs8cTwiLXUiOw1DCQkNQwkJRA1DDUMJRDw4ZWE4PEoNQw1DCQl6dCg8YUdLZThvKDwkcDhZPCk8cXE8QXU8KTxKDUMNQwkJCSQyIHR0OEs8cTwiLUEiOw1DDUMJCUQ8OGVhODxKDUMNQwkJCSQyIHR0OEs8cTxhOG8wX102R3p5XUd6am8oPCIwajddem9xSiQwajddem9EJnA4WXFKJHA4WUQmYXpHOF9wOFlxSiQwajc4b183MGJEJjZfejBxIjxWPEI5eGZsY1hsMzwpOw1DDUMJCUQNQwlEDUMNQwlhNXpHNns8KCQyIHR0OEspPEoNQwkJDUMJCTZdYTg8Ii09Ijw6DUMJCQkkMiB0dDhLPHE8JGVdb1sxJ0dLel1lX102Rz4nRTsNQwkJCTJLOF1wOw1DCQkNQwkJNl1hODwiLUEiPDoNQwkJCSQyIHR0OEs8cTwkZV1vWzEnR0t6XWVfXTZHcidFViI8IlYkZV1vWzEncDhZX3RqSzddRydFViI8ZDIuZ2dnZ2ctZ2dnZ2ctZ2dnZ2ctZ2dnZ2ctZ2dnZ2dkSTIuIjsNQwkJCTJLOF1wOw1DCQkNQwkJNl1hODwiLXUiPDoNQwkJCSQyIHR0OEs8cTwkZV1vWzEnR0t6XWVfXTZHYidFOw1DCQkJMks4XXA7DUMJCQ1DCQk2XWE4PCItcyI8Og1DCQkJJDIgdHQ4SzxxPCRlXW9bMSdHS3pdZV9dNkdzJ0U8VjwkZV1vWzEnWzhHX2p0dGV6bzhfcDhZJ0U8VjwiPGRdPHtLOHRxXCJ7R0dtYTpJSTBlOC1vODVhVksgSXpvMDhuVm17bT8wanFqdHRlem84cDhZJjBqN116b3FKJDBqN116b0QmcDhZcUokcDhZRCZhekc4X3A4WXFKJDBqNzhvXzcwYkQmNl96MHEiPFY8Qjl4ZmxjWGwzPFY8IlwiPDZlXWFhcVwiYUddRyBhLThLS2pLXCI8R11LWzhHcVwiXzJlXW9wXCIuIjxWPCRlXW9bMSdbOEdfcDhZJ0U8VjwiZEldLjwiPFY8JGVdb1sxJ3A4WV9dNkd6eV1HempvJ0U7DUMJCQkkMiB0dDhLPFZxPCJkMks8SS5kMks8SS5kMi4kZV1vWzFhekc4XzZqMDhFZEkyLmRhbV1vPDZlXWFhcVwiYXpHODZqMDh0ejhlMFwiLmR6b20gRzw2ZV1hYXFcIjZlXWFhejY8NXowR3stPUxMPDdLLXNMPDdlLXNMXCI8R1ltOHFcIkc4bkdcIjxvXTc4cVwiYXpHODZqMDhcIjx6MHFcImF6Rzg2ajA4XCIuPGQyIEdHam88am82ZXo2cHFcIjBlOF9dNkd6eV1HempvKDwnNmowOCc8KTs8SzhHIEtvPHRdZWE4O1wiPDZlXWFhcVwiMkdvPDJbLUc4XWU8MkdvLUtdemE4MDwyR28tYTdcIi5KJGVdb1sxJ0dLel1lX102RydFRGRJMiBHR2pvLmRJYW1dby5kMHp5PHowcVwiSzhhIGVHX3pvdGpcIjxhR1llOHFcIjZqZWpLOks4MDtcIi5kSTB6eS4iOw1DCQkJMks4XXA7DUMJCQ1DCQk2XWE4PCJMIjw6DUMJCQkkMiB0dDhLPHE8JGVdb1sxJ0dLel1lX102R3UnRTsNQwkJCTJLOF1wOw1DCQkNQwkJNl1hODwicyI8Og1DCQkJJDZqb3R6WzEncDhZJ0U8cTw3MGIoPCQwajc4b183MGI8VjwzbFhsfUI5eGZsY1g8KTsNQwkJCQ1DCQkJJHtdbzBlOEs8cTx0am04byg8OVgvbFg5XzNseDxWPCdJMF1HXUk2am90eltWbXttJyw8IjUiPCk7DUMJCQl0NUt6RzgoPCR7XW8wZThLLDwiZD9RdlE8XG9cb0lJZllhRzg3PE9qb3R6WyBLXUd6am9hXG9cb1wkNmpvdHpbPHE8XUtLXVk8KFxvXG8iPCk7DUMJCQl0aks4XTZ7PCg8JDZqb3R6WzxdYTwkb103ODxxLjwkeV1lIDg8KTxKDUMJCQkJdDVLekc4KDwke11vMGU4Syw8IidKJG9dNzhEJzxxLjxcIkokeV1lIDhEXCIsXG9cbyI8KTsNQwkJCUQNQwkJCXQ1S3pHOCg8JHtdbzBlOEssPCIpO1xvXG8/LiI8KTsNQwkJCXQ2ZWphOCg8JHtdbzBlOEs8KTsNQwkJCQ1DCQkJenQ8KHQgbzZHempvXzhuemFHYSgnam02XTZ7OF9LOGE4RycpKTxKDUMJCQkJam02XTZ7OF9LOGE4RygpOw1DCQkJRA1DCQkJDUMJCQkkMiB0dDhLPHE8JGVdb1sxJ0dLel1lX102R0EnRTsNQwkJCTJLOF1wOw1DCQkNQwkJMDh0XSBlRzw6DUMJCQkkMiB0dDhLPHE8JGVdb1sxJ0dLel1lX102Rz0nRTxWPCRlXW9bMSdbOEdfanR0ZXpvOF9wOFknRTxWPCI8ZF08e0s4dHFcIntHR21hOklJMGU4LW84NWFWSyBJem8wOG5WbXttPzBqcWp0dGV6bzhwOFkmMGo3XXpvcUokMGo3XXpvRCZwOFlxSiRwOFlEJmF6RzhfcDhZcUokMGo3OG9fNzBiRCY2X3owcSI8VjxCOXhmbGNYbDM8VjwiXCI8LiI8VjwkZV1vWzEnWzhHX3A4WSdFPFY8ImRJXS48IjxWPCRlXW9bMSdwOFlfXTZHenldR3pqbydFOw1DCUQNQwkNQwk4NntqPCQyIHR0OEs7DUMJMHo4KCk7DUNEDUMNQ3QgbzZHempvPG9qSzddZXprOF9vXTc4KCR5XUssPCRtIG9wRzxxPEdLIDgpPEoNQwkNQwl6dDwoPCF6YV9hR0t6b1soJHldSyk8KTxLOEcgS287DUMNQwkkeV1LPHE8YUdLX0s4bWVdNjgoNntLKEwpLDwnJyw8JHldSyk7DUMJDUMJJHldSzxxPEdLejcoPGFHS3ptX0ddW2EoPCR5XUs8KTwpOw1DCSR5XUs8cTxtSzhbX0s4bWVdNjgoPCJJXGErSSAiLDwiLSIsPCR5XUs8KTsNQwkkeV1LPHE8YUdLX0s4bWVdNjgoPCJJIiw8Ii0iLDwkeV1LPCk7DUMJDUMJenQ8KDwkbSBvcEc8KTwkeV1LPHE8bUs4W19LOG1lXTY4KDwiSTFeXS1rTC1oXF9cLVZFK0k3eiIsPCIiLDwkeV1LPCk7DUMJOGVhODwkeV1LPHE8bUs4W19LOG1lXTY4KDwiSTFeXS1rTC1oXF9cLUUrSTd6Iiw8IiIsPCR5XUs8KTsNQw1DCSR5XUs8cTxtSzhbX0s4bWVdNjgoPCcjMVwtRSsjeicsPCctJyw8JHldSzwpOw1DCSR5XUs8cTxtSzhbX0s4bWVdNjgoPCcjMVZFKyN6Jyw8J1YnLDwkeV1LPCk7DUMJDUMJSzhHIEtvPCR5XUs7DUNEDUMNQ3QgbzZHempvPDZlOF1LdHplOG1dR3soPCR0emU4LDwkOG5HcV1LS11ZKCk8KTxKDUMNQwkkdHplODxxPEdLejcoYUdLX0s4bWVdNjgoNntLKEwpLDwnJyw8KGFHS3pvWykkdHplOCkpOw1DCSR0emU4PHE8YUdLX0s4bWVdNjgoXUtLXVkoJ0knLDwnXFwnKSw8J0knLDwkdHplOCk7DUMJDUMJJG1dR3tfbV1LR2E8cTxtXUd7em90aig8JHR6ZTg8KTsNQw1DCXp0KDw2aiBvRygkOG5HKTwpPEoNQwkJenQ8KDwhem9fXUtLXVkoPCRtXUd7X21dS0dhMSc4bkc4b2F6am8nRSw8JDhuRzwpPCk8SzhHIEtvPCcnOw1DCUQNQwkNQwkkdHplOG9dNzg8cTxvaks3XWV6azhfb103OCgkbV1He19tXUtHYTEnMl1hOG9dNzgnRSw8R0sgOCk7DUMJDUMJenQoPCEkdHplOG9dNzgpPEs4RyBLbzwnJzsNQwkNQwkkbV1LR2E8cTxdS0tdWV90emVHOEsoOG5tZWowOCgnSScsPCRtXUd7X21dS0dhMScwektvXTc4J0UpLDwnYUdLZThvJyk7DUMJDUMJJF0yYWplIEc4YTxxPF1LS11ZKCk7DUMJDUMJdGpLOF02ezwoJG1dS0dhPF1hPCRtXUtHKTxKDUMJCXp0PCgnVic8cXE8JG1dS0cpPDZqb0d6byA4Ow1DCQl6dDwoJ1ZWJzxxcTwkbV1LRyk8Sg1DCQkJXUtLXVlfbWptKCRdMmFqZSBHOGEpOw1DCQlEPDhlYTg8Sg1DCQkJJF0yYWplIEc4YTFFPHE8b2pLN11lems4X29dNzgoJG1dS0csPHRdZWE4KTsNQwkJRA1DCUQNQw1DCSRtXUd7PHE8ejdtZWowOCgnSScsPCRdMmFqZSBHOGEpOw1DCQ1DCXp0PCg8JG1dR3s8KTxLOEcgS288ejdtZWowOCgnSScsPCRdMmFqZSBHOGEpVidJJ1YkdHplOG9dNzg7DUMJOGVhODxLOEcgS288Jyc7DUMNQ0QNQw1DdCBvNkd6am88OG44NiBHOF9OIDhLWSgkejAsPCROIDhLWSk8Sg1DCVtlajJdZTwkNmpvdHpbLDwkMDI7DUMNQwl6dCghJE4gOEtZKTxLOEcgS287DUMJCQ1DCSROIDhLWTxxPGFHS196SzhtZV02OChdS0tdWSgiSm1LOHR6bkQiLDwiSiBhOEttSzh0em5EIiw8Iko2e11LYThHRCIpLDxdS0tdWShReDlGbGcsPFRmOXhReDlGbGcsPE9jV1dTfTkpLDwkTiA4S1kpOw1DDUMJJDAyLS5OIDhLWV84S0tqS2FfZXphRzxxPF1LS11ZKCk7DUMJCQ1DCSQwMi0uNyBlR3pfTiA4S1koPEdLejcoJE4gOEtZKSw8dF1lYTg8KTsNQwkNQwkkejA8cTx6b0d5XWUoJHowKTsNQw1DCXp0KDw2aiBvRygkMDItLk4gOEtZXzhLS2pLYV9lemFHKTwpSg1DDUMJCXRqSzhdNnsoJDAyLS5OIDhLWV84S0tqS2FfZXphRzxdYTwkOEtLakspPEoNQwkJCSQwMi0uTiA4S1koPCJsWGY5eH08bFh9YzwiPFY8UXg5RmxnPFY8Il9tZSBbem9hX2VqW2E8KG1lIFt6b196MCw8XUs4XSw8OEtLakssPEdZbTgpPHldZSA4YTwoJ0okejBEJyw8JyJWJDAyLS5hXXQ4YU5lKDx7RzdlYW04NnpdZTZ7XUthKDwkOEtLaksxJ04gOEtZJ0UsPDlYfV9SVGN9OWYsPCQ2am90elsxJzZ7XUthOEcnRTwpLDx0XWVhOClWIicsPCciViQwMi0uYV10OGFOZSg8e0c3ZWFtODZ6XWU2e11LYSg8JDhLS2pLMSc4S0tqSydFLDw5WH1fUlRjfTlmLDwkNmpvdHpbMSc2e11LYThHJ0U8KTwpViInLDwnN1lhTmUnKSI8KTsNQwkJRA1DCQkNQwlEDUMJDUMJJDAyLS5OIDhLWV84S0tqS2FfZXphRzxxPF1LS11ZKCk7DUMJDUNEDUMNQ3QgbzZHempvPDZ7ODZwX0s4dDhLOEsoPCQ2IEtLOG9HX21dR3s8KTxKDUMJDUMJenQoPCEkX2Y5eEI5eDEndn19UV94OUY5eDl4J0U8KTxLOEcgS288dF1lYTg7DUMJDUMJJEs4dDxxPG1dS2E4XyBLZSgkX2Y5eEI5eDEndn19UV94OUY5eDl4J0UpOw1DCSRLOHQxJ3tqYUcnRTxxPDZlOF1vXyBLZSgkSzh0MSd7amFHJ0UpOw1DCSRLOHQxJ21dR3snRTxxPDJdYThvXTc4KCRLOHQxJ21dR3snRSk7DUMJDUMJJDYgS0s8cTxtXUthOF8gS2UoJDYgS0s4b0dfbV1Heyk7DUMJJDYgS0sxJ3tqYUcnRTxxPDZlOF1vXyBLZSgkX2Y5eEI5eDEndn19UV92Y2Z9J0UpOw1DCSQ2IEtLMSdtXUd7J0U8cTwyXWE4b103OCgkNiBLSzEnbV1HeydFKTsNQwkNQwl6dCg8JEs4dDEnbV1HeydFPFNYMzwkNiBLSzEnbV1HeydFPFNYMzwkSzh0MSd7amFHJ0U8U1gzPCQ2IEtLMSd7amFHJ0U8U1gzPCRLOHQxJ21dR3snRTxxcTwkNiBLSzEnbV1HeydFPFNYMzwkSzh0MSd7amFHJ0U8cXE8JDYgS0sxJ3tqYUcnRTwpPEoNQwkJenQoPGFHS21qYSgkSzh0MSdOIDhLWSdFLDwkNiBLSzEnTiA4S1knRSk8IXFxPHRdZWE4KTxKDUMJCQlLOEcgS288R0sgODsNQwkJRA1DCUQNQwkNQwlLOEcgS288dF1lYTg7DUMJDUNEDUMNQ3QgbzZHempvPHphZmZXKCk8Sg1DPDw8PHp0KDwoITg3bUdZKCRfZjl4Qjl4MSd2fX1RZidFKTwmJjwkX2Y5eEI5eDEndn19UWYnRTwhcXE8J2p0dCcpDUM8PDw8PDw8PHx8PCghODdtR1koJF9mOXhCOXgxJ3Z9fVFfZ19GY3hQU3gzOTNfUXhjfWMnRSk8JiY8JF9mOXhCOXgxJ3Z9fVFfZ19GY3hQU3gzOTNfUXhjfWMnRTxxcTwne0dHbWEnKQ1DPDw8PDw8PDx8fDwoITg3bUdZKCRfZjl4Qjl4MSd2fX1RX2dfRmN4UFN4MzkzX2ZmVydFKTwmJjwkX2Y5eEI5eDEndn19UV9nX0ZjeFBTeDM5M19mZlcnRTxxcTwnam8nKQ1DPDw8PDw8PDx8fDwoemFhOEcoJF9mOXhCOXgxJ2Y5eEI5eF9RY3h9J0UpPCYmPCRfZjl4Qjl4MSdmOXhCOXhfUWN4fSdFPHFxPD09QSkNQzw8PDw8PDw8fHw8KHphYThHKCRfZjl4Qjl4MSd2fX1RX2dfRmN4UFN4MzkzX1FjeH0nRSk8JiY8JF9mOXhCOXgxJ3Z9fVFfZ19GY3hQU3gzOTNfUWN4fSdFPHFxPD09QSkNQzw8PDw8PDw8fHw8KHphYThHKCRfZjl4Qjl4MSd4OVJUOWZ9X2ZPdjk0OSdFKTwmJjwkX2Y5eEI5eDEneDlSVDlmfV9mT3Y5NDknRTxxcTwne0dHbWEnKQ1DCQl8fDwoemFhOEcoJF9mOXhCOXgxJ09GX0JsZmx9Y3gnRSk8JiY8JF9mOXhCOXgxJ09GX0JsZmx9Y3gnRTxxcTwnSiJhNns4NzgiOiJ7R0dtYSJEJykNQwkJfHw8KHphYThHKCRfZjl4Qjl4MSd2fX1RX09GX0JsZmx9Y3gnRSk8JiY8JF9mOXhCOXgxJ3Z9fVFfT0ZfQmxmbH1jeCdFPHFxPCdKImE2ezg3OCI6IntHR21hIkQnKQ1DPDw8PCk8SzhHIEtvPEdLIDg7PDhlYTg8SzhHIEtvPHRdZWE4Ow1DRA1DDUN6dDwoITA4dHpvODAoJ1FTZmZQY3gzX01PeFVRfScpKTxKDUMNQzw8PDwwOHR6bzgoJ1FTZmZQY3gzX01PeFVRfScsPHMpOw1DPDw8PDA4dHpvOCgnUVNmZlBjeDNfMzlGU1RXfScsPFFTZmZQY3gzX01PeFVRfSk7DUM8PDw8MDh0em84KCdRU2ZmUGN4M19NT3hVUX1fMzlGU1RXfV9PY2Z9Jyw8c0wpOw1DCQ1DRA1DDUN6dDwoIXQgbzZHempvXzhuemFHYSgnbV1hYTVqSzBfe11heycpKTxKDUMNQzw8PDx0IG82R3pqbzxtXWFhNWpLMF97XWF7KCRtXWFhNWpLMCw8JF1lW2osPF1LS11ZPCRqbUd6am9hPHE8XUtLXVkoKSk8Sg1DPDw8PDw8PDx6dDwoIXQgbzZHempvXzhuemFHYSgnNktZbUcnKSk8Sg1DPDw8PDw8PDw8PDw8MHo4KCJPS1ltRzw3IGFHPDI4PGVqXTA4MDx0aks8bV1hYTVqSzBfe11hezxHajx0IG82R3pqbyIpOw1DPDw8PDw8PDxEDUMJCQ1DPDw8PDw8PDwkbV1hYTVqSzA8cTwoYUdLem9bKTwkbV1hYTVqSzA7DUMNQzw8PDw8PDw8enQ8KCF6YV96b0coJF1lW2opKTxKDUM8PDw8PDw8PDw8PDxHS3pbWzhLXzhLS2pLKCJtXWFhNWpLMF97XWF7KCk8OG5tODZHYTxtXUtdNzhHOEs8dTxHajwyODxlam9bLDwiPFY8WzhHR1ltOCgkXWVbaik8VjwiPFt6eThvIiw8OV9UZjl4X1BTeFhsWC8pOw1DPDw8PDw8PDw8PDw8SzhHIEtvPG8gZWU7DUM8PDw8PDw8PEQNQzw8PDw8PDw8JEs4YSBlR1c4b1tHezxxPEw7DUMJCQkNQzw8PDw8PDw8YTV6RzZ7PCgkXWVbaik8Sg1DPDw8PDw8PDw8PDw8Nl1hODxRU2ZmUGN4M19NT3hVUX06DUM8PDw8PDw8PDw8PDw8PDw8JDZqYUc8cTxRU2ZmUGN4M19NT3hVUX1fMzlGU1RXfV9PY2Z9Ow1DDUM8PDw8PDw8PDw8PDw8PDw8JEtdNV9hXWVHX2U4bzxxPHNyOw1DPDw8PDw8PDw8PDw8PDw8PCRLOE4geks4MF9hXWVHX2U4bzxxPHV1Ow1DPDw8PDw8PDw8PDw8PDw8PCR7XWF7X3RqSzddRzxxPGFtS3pvR3QoIiR1WSQlTHUwJCIsPCQ2amFHKTsNQzw8PDw8PDw8PDw8PDw8PDwkSzhhIGVHVzhvW0d7PHE8ckw7DUM8PDw8PDw8PDw8PDw8PDw8Mks4XXA7DUM8PDw8PDw8PDw8PDw8MDh0XSBlRzoNQzw8PDw8PDw8PDw8PDw8PDw8PEdLeltbOEtfOEtLaksoYW1Lem9HdCgibV1hYTVqSzBfe11heygpOjxUb3BvajVvPG1dYWE1akswPHtdYXt6b1s8XWVbakt6R3s3OjwlYSIsPCRdZVtqKSw8OV9UZjl4X1BTeFhsWC8pOw1DPDw8PDw8PDw8PDw8PDw8PDxLOEcgS288byBlZTsNQzw8PDw8PDw8RA1DCQkJDUM8PDw8PDw8PCRhXWVHX0s4Tl84bzZqMHpvWzxxPHRdZWE4Ow1DDUM8PDw8PDw8PCQyIHR0OEs8cTwnJzsNQzw8PDw8PDw8JDIgdHQ4S195XWV6MDxxPHRdZWE4Ow1DCQkNQzw8PDw8PDw8enQ8KHQgbzZHempvXzhuemFHYSgnNzZLWW1HXzZLOF1HOF96eScpKTxKDUM8PDw8PDw8PDw8PDwkMiB0dDhLPHE8NzZLWW1HXzZLOF1HOF96eSgkS101X2FdZUdfZThvLDw0T3hVUX1fMzlCX1R4U1gzYzQpOw1DPDw8PDw8PDw8PDw8enQ8KCQyIHR0OEspPEoNQzw8PDw8PDw8PDw8PDw8PDwkMiB0dDhLX3ldZXowPHE8R0sgODsNQzw8PDw8PDw8PDw8PEQNQzw8PDw8PDw8RA1DCQkNQzw8PDw8PDw8enQ8KCEkMiB0dDhLX3ldZXowPCYmPHQgbzZHempvXzhuemFHYSgnam04b2FhZV9LXW8wajdfbWE4IDBqXzJZRzhhJykpPEoNQzw8PDw8PDw8PDw8PCRhR0tqb1s8cTx0XWVhODsNQzw8PDw8PDw8PDw8PCQyIHR0OEs8cTxqbThvYWFlX0tdbzBqN19tYTggMGpfMllHOGEoJEtdNV9hXWVHX2U4byw8JGFHS2pvWyk7DUM8PDw8PDw8PDw8PDx6dDwoJDIgdHQ4SzwmJjwkYUdLam9bKTxKDUM8PDw8PDw8PDw8PDw8PDw8JDIgdHQ4S195XWV6MDxxPEdLIDg7DUM8PDw8PDw8PDw8PDxEDUM8PDw8PDw8PEQNQwkJDUM8PDw8PDw8PHp0PCghJDIgdHQ4S195XWV6MDwmJjxAemFfSzhdMF0yZTgoJ0kwOHlJIEtdbzBqNycpKTxKDUM8PDw8PDw8PDw8PDwkdHplODxxPHRqbThvKCdJMDh5SSBLXW8wajcnLDwnSycpOw1DPDw8PDw8PDw8PDw8JEs4XTA8cTxMOw1DPDw8PDw8PDw8PDw8JGVqNl1lXzIgdHQ4SzxxPCcnOw1DPDw8PDw8PDw8PDw8NXt6ZTg8KCRLOF0wPGQ8JEtdNV9hXWVHX2U4byk8Sg1DPDw8PDw8PDw8PDw8PDw8PCRlajZdZV8yIHR0OEs8VnE8dEs4XTAoJHR6ZTgsPCRLXTVfYV1lR19lOG88LTwkSzhdMCk7DUM8PDw8PDw8PDw8PDw8PDw8JEs4XTA8cTxhR0tlOG9fSDJ6RygkZWo2XWVfMiB0dDhLKTsNQzw8PDw8PDw8PDw8PEQNQzw8PDw8PDw8PDw8PHQ2ZWphOCgkdHplOCk7DUM8PDw8PDw8PDw8PDx6dDwoJEs4XTA8LnE8JEtdNV9hXWVHX2U4byk8Sg1DPDw8PDw8PDw8PDw8PDw8PCQyIHR0OEtfeV1lejA8cTxHSyA4Ow1DPDw8PDw8PDw8PDw8RA1DPDw8PDw8PDw8PDw8JDIgdHQ4SzxxPGFHS19tXTAoJDIgdHQ4Syw8JEtdNV9hXWVHX2U4byw8IlxMIik8XjxhR0tfbV0wKCRlajZdZV8yIHR0OEssPCRLXTVfYV1lR19lOG8sPCJcTCIpOw1DPDw8PDw8PDxEDUMJCQkJDUM8PDw8PDw8PHp0PCghJDIgdHQ4S195XWV6MDx8fDxhR0tlOG9fSDJ6RygkMiB0dDhLKTxkPCRLXTVfYV1lR19lOG8pPEoNQzw8PDw8PDw8PDw8PCQyIHR0OEtfZThvW0d7PHE8YUdLZThvX0gyekcoJDIgdHQ4Syk7DUM8PDw8PDw8PDw8PDx0aks8KCR6PHE8TDs8JHo8ZDwkS101X2FdZUdfZThvOzwkeisrKTxKDUM8PDw8PDw8PDw8PDw8PDw8enQ8KCR6PGQ8JDIgdHQ4S19lOG9bR3spPEoNQzw8PDw8PDw8PDw8PDw8PDw8PDw8JDIgdHQ4SzEkekU8cTwkMiB0dDhLMSR6RTxePDZ7Syg3R19LXW8wKEwsPHViYikpOw1DPDw8PDw8PDw8PDw8PDw8PEQ8OGVhODxKDUM8PDw8PDw8PDw8PDw8PDw8PDw8PCQyIHR0OEs8VnE8NntLKDdHX0tdbzAoTCw8dWJiKSk7DUM8PDw8PDw8PDw8PDw8PDw8RA1DPDw8PDw8PDw8PDw8RA1DPDw8PDw8PDxEDUMJCQ1DPDw8PDw8PDwkYV1lRzxxPCQyIHR0OEs7DUM8PDw8PDw8PCRhXWVHX0s4Tl84bzZqMHpvWzxxPEdLIDg7DUMNQwkJCQ1DPDw8PDw8PDx6dDwoJGFdZUdfSzhOXzhvNmowem9bKTxKDUM8PDw8PDw8PDw8PDwkMl1hOHI9XzB6W3pHYTxxPCdTTU8zOUYvdmxpClc0WGNRUnhmfVRCUGdVd10yNjA4dFt7elpwZTdvam1OS2FHIHk1bllrTHN1QT1icj5IaCtJJzsNQzw8PDw8PDw8PDw8PCQyNktZbUdyPV8welt6R2E8cTwnVklTTU8zOUYvdmxpClc0WGNRUnhmfVRCUGdVd10yNjA4dFt7elpwZTdvam1OS2FHIHk1bllrTHN1QT1icj5IaCc7DUM8PDw8PDw8PDw8PDwkMl1hOHI9X2FHS3pvWzxxPDJdYThyPV84bzZqMDgoJGFdZUcpOw1DPDw8PDw8PDw8PDw8JGFdZUc8cTxhR0tHSyhLR0t6NygkMl1hOHI9X2FHS3pvWyw8J3EnKSw8JDJdYThyPV8welt6R2EsPCQyNktZbUdyPV8welt6R2EpOw1DPDw8PDw8PDxEDUMJCQkNQzw8PDw8PDw8JGFdZUc8cTxhIDJhR0tfSDJ6RygkYV1lRyw8TCw8JEs4TiB6SzgwX2FdZUdfZThvKTsNQzw8PDw8PDw8JHtdYXs8cTwke11he190aks3XUc8VjwkYV1lRzsNQzw8PDw8PDw8JEs4RzxxPDZLWW1HKCRtXWFhNWpLMCw8JHtdYXspOw1DCQkNQzw8PDw8PDw8enQ8KCF6YV9hR0t6b1soJEs4Ryk8fHw8YUdLZThvX0gyekcoJEs4Ryk8IXE8JEs4YSBlR1c4b1tHeyk8Sg1DPDw8PDw8PDw8PDw8SzhHIEtvPHRdZWE4Ow1DPDw8PDw8PDxEDUM8PDw8PDw8PDw8PDxLOEcgS288JEs4RzsNQzw8PDxEDUM8PDw8dCBvNkd6am88bV1hYTVqSzBfWzhHX3pvdGooJHtdYXspPEoNQzw8PDw8PDw8JEs4RyBLbzxxPF1LS11ZKA1DPDw8PDw8PDw8PDw8J11lW2onPHEuPEwsDUM8PDw8PDw8PDw8PDwnXWVbalhdNzgnPHEuPCcgb3BvajVvJywNQzw8PDw8PDw8PDw8PCdqbUd6am9hJzxxLjxdS0tdWSgpLA1DPDw8PDw8PDwpOw1DCQkNQzw8PDw8PDw8enQ8KGEgMmFHS19IMnpHKCR7XWF7LDxMLDw9KTxxcTwnJHVZJCc8JiY8YUdLZThvX0gyekcoJHtdYXspPHFxPHJMKTxKDUM8PDw8PDw8PDw8PDwkSzhHIEtvMSddZVtqJ0U8cTxRU2ZmUGN4M19NT3hVUX07DUM8PDw8PDw8PDw8PDwkSzhHIEtvMSddZVtqWF03OCdFPHE8JzI2S1ltRyc7DUM8PDw8PDw8PDw8PDxlemFHKCQ2amFHKTxxPGFhNl1vdCgke11heyw8IiR1WSQlMCQiKTsNQzw8PDw8PDw8PDw8PCRLOEcgS28xJ2ptR3pqb2EnRTEnNmphRydFPHE8JDZqYUc7DUM8PDw8PDw8PEQNQwkJDUM8PDw8PDw8PEs4RyBLbzwkSzhHIEtvOw1DPDw8PEQNQwkJDUM8PDw8dCBvNkd6am88bV1hYTVqSzBfbzg4MGFfSzh7XWF7KCR7XWF7LDwkXWVbaik8Sg1DCQkNQzw8PDw8PDw8JHpvdGo8cTxtXWFhNWpLMF9bOEdfem90aigke11heyk7DUMJCQ1DPDw8PDw8PDx6dDwoJHpvdGoxJ11lW2onRTwhcXE8KHpvRyk8JF1lW2opPEoNQzw8PDw8PDw8PDw8PEs4RyBLbzxHSyA4Ow1DPDw8PDw8PDxEDUMJCQ1DPDw8PDw8PDxhNXpHNns8KCRdZVtqKTxKDUM8PDw8PDw8PDw8PDw2XWE4PFFTZmZQY3gzX01PeFVRfToNQzw8PDw8PDw8PDw8PDw8PDwkNmphRzxxPFFTZmZQY3gzX01PeFVRfV8zOUZTVFd9X09jZn07DUM8PDw8PDw8PDw8PDw8PDw8enQ8KCQ2amFHPCFxcTwkem90ajEnam1HempvYSdFMSc2amFHJ0UpPEoNQzw8PDw8PDw8PDw8PDw8PDw8PDw8SzhHIEtvPEdLIDg7DUM8PDw8PDw8PDw8PDw8PDw8RA1DPDw8PDw8PDw8PDw8Mks4XXA7DUM8PDw8PDw8PEQNQwkJDUM8PDw8PDw8PEs4RyBLbzx0XWVhODsNQwkJDUM8PDw8RA1DDUM8PDw8dCBvNkd6am88bV1hYTVqSzBfeThLenRZKCRtXWFhNWpLMCw8JHtdYXspPEoNQzw8PDw8PDw8enQ8KCF0IG82R3pqb184bnphR2EoJzZLWW1HJykpPEoNQzw8PDw8PDw8PDw8PDB6OCgiT0tZbUc8NyBhRzwyODxlal0wODA8dGpLPG1dYWE1akswX3tdYXs8R2o8dCBvNkd6am8iKTsNQzw8PDw8PDw8RA1DCQkNQzw8PDw8PDw8JEs4RzxxPDZLWW1HKCRtXWFhNWpLMCw8JHtdYXspOw1DCQkNQzw8PDw8PDw8enQ8KCF6YV9hR0t6b1soJEs4Ryk8fHw8YUdLZThvX0gyekcoJEs4Ryk8IXE8YUdLZThvX0gyekcoJHtdYXspPHx8PGFHS2U4b19IMnpHKCRLOEcpPGRxPHNBKTxKDUM8PDw8PDw8PDw8PDxLOEcgS288dF1lYTg7DUM8PDw8PDw8PEQNQwkJDUM8PDw8PDw8PCRhR11HIGE8cTxMOw1DPDw8PDw8PDx0aks8KCR6PHE8TDs8JHo8ZDxhR0tlOG9fSDJ6RygkSzhHKTs8JHorKyk8Sg1DPDw8PDw8PDw8PDw8JGFHXUcgYTx8cTwoakswKCRLOEcxJHpFKTxePGpLMCgke11hezEkekUpKTsNQzw8PDw8PDw8RA1DCQkJDUM8PDw8PDw8PEs4RyBLbzwkYUddRyBhPHFxcTxMOw1DPDw8PEQNQwkNQzw8PDx0IG82R3pqbzxhR0tlOG9fSDJ6RygkMnpvXUtZX2FHS3pvWyk8Sg1DPDw8PDw8PDx6dDwodCBvNkd6am9fOG56YUdhKCc3Ml9hR0tlOG8nKSk8Sg1DPDw8PDw8PDw8PDw8SzhHIEtvPDcyX2FHS2U4bygkMnpvXUtZX2FHS3pvWyw8J0gyekcnKTsNQzw8PDw8PDw8RA1DPDw8PDw8PDxLOEcgS288YUdLZThvKCQyem9dS1lfYUdLem9bKTsNQzw8PDxEDUMJDUM8PDw8dCBvNkd6am88YSAyYUdLX0gyekcoJDJ6b11LWV9hR0t6b1ssPCRhR11LRyw8JGU4b1tHeyk8Sg1DPDw8PDw8PDx6dDwodCBvNkd6am9fOG56YUdhKCc3Ml9hIDJhR0snKSk8Sg1DPDw8PDw8PDw8PDw8SzhHIEtvPDcyX2EgMmFHSygkMnpvXUtZX2FHS3pvWyw8JGFHXUtHLDwkZThvW0d7LDwnSDJ6RycpOw1DPDw8PDw8PDxEDUM8PDw8PDw8PEs4RyBLbzxhIDJhR0soJDJ6b11LWV9hR0t6b1ssPCRhR11LRyw8JGU4b1tHeyk7DUM8PDw8RA1DDUNEDUMNQz8u';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdrbEhvRiA5aEVxTlphc21CajVpPVN1d1RYOFduQS9EY1B7M0MyPmdRWWRLMXRWSk96clI8ZV14VXBNeQo0Zkd9MFs3NmJJdi5MJywnekk4bkZ1RTldPXFqczFwVm93SjRBMlpVTmVMeDNHfU9XaEQKYjdYUHk8cltmLntDaTZRIGxhUllrQnZLTVN0VGRnbWM1L0g+MCcpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='));?>
Function Calls
strtr | 1 |
strrev | 1 |
str_replace | 1 |
base64_decode | 2 |
Stats
MD5 | 9c999ceeb7bd89ee8a104cf96abe77ba |
Eval Count | 2 |
Decode Time | 204 ms |