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 $_F=__FILE__;$_X='P1c3P3B4cA1PYioNTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg..

Decoded Output download

?><?php
/*
=====================================================
 DataLife Engine - by SoftNews Media Group 
-----------------------------------------------------
 http://dle-news.ru/
-----------------------------------------------------
 Copyright (c) 2004-2019 SoftNews Media Group
=====================================================
 This code is protected by copyright
=====================================================
 File: engine.php
=====================================================
*/

if (!defined('DATALIFEENGINE')) {
	die ( "Hacking attempt!" );
}

if ($cstart < 0) $cstart = 0;

$CN_HALT = false;
$allow_add_comment = false;
$allow_active_news = false;
$allow_comments = false;
$allow_userinfo = false;
$active = false;
$disable_index = false;
$social_tags = array();
$canonical = false;
$url_page = false;
$user_query = false;
$news_author = false;
$attachments = array ();
$short_news_cache = false;

switch ( $do ) {
	
	case "search" :
		
		if ($_REQUEST['mode'] == "advanced") $_REQUEST['full_search'] = 1;
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/search.php'));
		break;

	case "changemail" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/changemail.php'));
		break;
	
	case "deletenews" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/deletenews.php'));
		break;

	case "comments" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/comments.php'));
		break;
	
	case "stats" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/stats.php'));
		break;
	
	case "addnews" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/addnews.php'));
		break;
	
	case "register" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/register.php'));
		break;
	
	case "lostpassword" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/lostpassword.php'));
		break;
	
	case "rules" :
		$_GET['page'] = "dle-rules-page";
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/static.php'));
		break;
	
	case "static" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/static.php'));
		break;
	
	case "alltags" :
		include_once (DLEPlugins::Check(ENGINE_DIR . '/modules/tagscloud.php'));
		break;

	case "auth-social" :
		include_once (DLEPlugins::Check(ENGINE_DIR . '/modules/social.php'));
		break;
	
	case "favorites" :
		
		if ($is_logged) {
			
			$config['allow_cache'] = false;
			
			include (DLEPlugins::Check(ENGINE_DIR . '/modules/favorites.php'));
		
		} else {
			
			@header( "HTTP/1.1 403 Forbidden" );
			msgbox ( $lang['all_err_1'], $lang['fav_error'] );
			
		}
			
		break;
	
	case "feedback" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/feedback.php'));
		break;
	
	case "lastcomments" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/lastcomments.php'));
		break;
	
	case "pm" :
		include (DLEPlugins::Check(ENGINE_DIR . '/modules/pm.php'));
		break;

	case "unsubscribe" :
		$_GET['post_id'] = intval ($_GET['post_id']);
		$_GET['user_id'] = intval ($_GET['user_id']);

		if ($_GET['post_id'] AND $_GET['user_id'] AND $_GET['hash']) {

			$row = $db->super_query( "SELECT hash FROM " . PREFIX . "_subscribe WHERE news_id='{$_GET['post_id']}' AND user_id='{$_GET['user_id']}'" );

			if ($row['hash'] AND $row['hash'] == $_GET['hash']) {

				$db->query( "DELETE FROM " . PREFIX . "_subscribe WHERE news_id='{$_GET['post_id']}' AND user_id='{$_GET['user_id']}'" );
				msgbox( $lang['all_info'],  $lang['unsubscribe_ok']);

			} else {
				msgbox( $lang['all_info'],  $lang['unsubscribe_err']);
			}

		} else {
			msgbox( $lang['all_info'],  $lang['unsubscribe_err']);
		}

		break;
	
	case "newsletterunsubscribe" :
		
		$_GET['user_id'] = intval ($_GET['user_id']);

		if ($_GET['user_id'] AND $_GET['hash']) {

			$row = $db->super_query( "SELECT password, user_id FROM " . USERPREFIX . "_users WHERE user_id='{$_GET['user_id']}'" );
			
			if ($row['user_id']) {
				
				$unsubscribe_hash = md5( SECURE_AUTH_KEY . $_SERVER['HTTP_HOST'] . $row['user_id'] . sha1( substr($row['password'], 0, 6) ) . $config['key'] );
	
				if ($unsubscribe_hash == $_GET['hash']) {
	
					$db->query( "UPDATE " . USERPREFIX . "_users SET allow_mail='0' WHERE user_id = '{$_GET['user_id']}'" );
					
					msgbox( $lang['all_info'],  $lang['n_unsubscribe_ok']);
	
				} else {
					
					msgbox( $lang['all_info'],  $lang['n_unsubscribe_err']);
					
				}
				
			} else {
				msgbox( $lang['all_info'],  $lang['n_unsubscribe_err']);
			}

		} else {
			msgbox( $lang['all_info'],  $lang['n_unsubscribe_err']);
		}

		break;
	
	default :
		
		$is_main = 0;
		$active = false;
		$user_query = "";
		$url_page = "";
		
		$thisdate = date ( "Y-m-d H:i:s", time () );
		if ($config['no_date'] AND !$config['news_future']) $where_date = " AND date < '" . $thisdate . "'";
		else $where_date = "";
		
		if ($config['allow_fixed']) $fixed = "fixed desc, ";
		else $fixed = "";
		
		$config['news_number'] = intval ( $config['news_number'] );

		if ( $smartphone_detected AND $config['mobile_news'] ) $config['news_number'] = intval ( $config['mobile_news'] );
		
		$news_sort_by = ($config['news_sort']) ? $config['news_sort'] : "date";
		$news_direction_by = ($config['news_msort']) ? $config['news_msort'] : "DESC";

		$allow_list = explode ( ',', $user_group[$member_id['user_group']]['allow_cats'] );
		$stop_list = "";
		$cat_join = "";
		$cat_join_count = "";
		
		if ($allow_list[0] != "all") {
			
			if ($config['allow_multi_category']) {
				
				$cat_join = "INNER JOIN (SELECT DISTINCT(" . PREFIX . "_post_extras_cats.news_id) FROM " . PREFIX . "_post_extras_cats WHERE cat_id IN (" . implode ( ',', $allow_list ) . ")) c ON (p.id=c.news_id) ";
				$cat_join_count = "p ".$cat_join;
			
			} else {
				
				$stop_list = "category IN ('" . implode ( "','", $allow_list ) . "') AND ";
			
			}
		
		}
		
		$not_allow_cats = explode ( ',', $user_group[$member_id['user_group']]['not_allow_cats'] );
		
		if( $not_allow_cats[0] != "" ) {
			
			if ($config['allow_multi_category']) {
				
				$stop_list = "p.id NOT IN ( SELECT DISTINCT(" . PREFIX . "_post_extras_cats.news_id) FROM " . PREFIX . "_post_extras_cats WHERE cat_id IN (" . implode ( ',', $not_allow_cats ) . ") ) AND ";
				$cat_join_count = "p ";
				
			} else {
				
				$stop_list = "category NOT IN ('" . implode ( "','", $not_allow_cats ) . "') AND ";
			
			}
			
		}
		
		if ($user_group[$member_id['user_group']]['allow_short']) { $stop_list = ""; $cat_join = ""; $cat_join_count = ""; }
		
		$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}approve=1 AND allow_main=1" . $where_date . " ORDER BY " . $fixed . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];

		$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}approve=1 AND allow_main=1" . $where_date;
		$sql_news = "";
		
		// ################ Show of a category #################
		if ($do == "cat" and $category != '' and $subaction == '') {

			$allow_sub_cats = true;
			
			if( $config['allow_alt_url'] AND $config['seo_control'] AND $category_id AND $view_template != "rss") {

				$re_cat = get_url( $category_id );

				if ($re_cat != $_GET['category'] OR substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//' OR strpos ($_SERVER['REQUEST_URI'], "do=cat" ) !== false ) {
					$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
					$re_url = reset ( $re_url );

					if( (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//') AND $_GET['cstart'] AND $_GET['cstart'] != 1 ) {
					 $re_cat .= "/page/".intval($_GET['cstart']);
					}
					
					header("HTTP/1.0 301 Moved Permanently");
					header("Location: {$re_url}{$re_cat}/");
					die("Redirect");
				}
			}

			if (!$category_id) $category_id = 'not detected';
			
			if ($allow_list[0] != "all") {
				if (!$user_group[$member_id['user_group']]['allow_short'] AND !in_array( $category_id, $allow_list )) $category_id = 'not detected';
			}

			if ($not_allow_cats[0] != "") {
				if (!$user_group[$member_id['user_group']]['allow_short'] AND in_array( $category_id, $not_allow_cats )) $category_id = 'not detected';
			}

			if ( $cat_info[$category_id]['show_sub'] ) {

				if ( $cat_info[$category_id]['show_sub'] == 1 ) $get_cats = get_sub_cats ( $category_id );
				else { $get_cats = $category_id; $allow_sub_cats = false; }

			} else {

				if ( $config['show_sub_cats'] ) $get_cats = get_sub_cats ( $category_id );
				else { $get_cats = $category_id; $allow_sub_cats = false; }

			}

			if ($cat_info[$category_id]['news_sort']) $news_sort_by = $cat_info[$category_id]['news_sort'];
			if ($cat_info[$category_id]['news_msort']) $news_direction_by = $cat_info[$category_id]['news_msort'];
			if ($cat_info[$category_id]['news_number']) $config['news_number'] = $cat_info[$category_id]['news_number'];

			if ($cstart) {
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			}

			$url_page = $config['http_home_url'] . get_url ( $category_id );
			$user_query = "do=cat&amp;category=" . $cat_info[$category_id]['alt_name'];
			
			if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?do=cat&category=" . $cat_info[$category_id]['alt_name'];
			
			if ($config['allow_multi_category']) {
		
				$get_cats = str_replace ( "|", "','", $get_cats );
				$join_category = "INNER JOIN (SELECT DISTINCT(" . PREFIX . "_post_extras_cats.news_id) FROM " . PREFIX . "_post_extras_cats WHERE cat_id IN ('" . $get_cats . "')) c ON (p.id=c.news_id) ";
				$where_category = "";
				
			} else {
				
				if ( $allow_sub_cats ) {
					
					$get_cats = str_replace ( "|", "','", $get_cats );
					$where_category = "category IN ('" . $get_cats . "') AND ";
				
				} else {
					
					$where_category = "category = '{$get_cats}' AND ";
				
				}
				
				$join_category = "";
			
			}
			
			if ($view_template == "rss") {
				
				$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name FROM " . PREFIX . "_post p {$join_category}WHERE {$where_category}approve=1" . $where_date . " ORDER BY date DESC LIMIT 0," . $config['rss_number'];
			
			} else {
				
				if (isset ( $_SESSION['dle_sort_cat_'.$category_id] )) $news_sort_by = $_SESSION['dle_sort_cat_'.$category_id];
				if (isset ( $_SESSION['dle_direction_cat_'.$category_id] )) $news_direction_by = $_SESSION['dle_direction_cat_'.$category_id];
				
				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$join_category}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$where_category}approve=1" . $where_date . " ORDER BY " . $fixed . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post p {$join_category}WHERE {$where_category}approve=1" . $where_date;
			}
		
		} elseif ($do == 'lastnews') {
			// ################ Show all news #################			
			if ($cstart) {
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			}

			if( $config['allow_alt_url'] AND $config['seo_control'] AND $_GET['cstart'] ) {
	
				if (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 ) {

					$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
					$re_url = reset ( $re_url );
						
					$re_url .= "lastnews/";
						
					if(substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' AND $_GET['cstart'] != 1 ) {
						$re_url .= "page/".intval($_GET['cstart'])."/";
					}
					
					header("HTTP/1.0 301 Moved Permanently");
					header("Location: {$re_url}");
					die("Redirect");
				}
			}
				
			$url_page = $config['http_home_url'] . "lastnews";
			$user_query = "do=lastnews";
			
			if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?do=lastnews";
			
			if (isset ( $_SESSION['dle_sort_lastnews'] )) $news_sort_by = $_SESSION['dle_sort_lastnews'];
			else $news_sort_by = "date";
			if (isset ( $_SESSION['dle_direction_lastnews'] )) $news_direction_by = $_SESSION['dle_direction_lastnews'];
			else $news_direction_by = "DESC";
			
			$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
			$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}approve=1" . $where_date;
		
		} elseif ($do == 'tags') {
			// ################ Seach news by tags #################			
			if ($cstart) {
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			}

			$tag = rawurldecode( $_GET['tag'] );

			$tag = htmlspecialchars ( strip_tags ( stripslashes ( trim ( $tag ) ) ), ENT_COMPAT, $config['charset'] );
			$encoded_tag = rawurlencode(str_replace(array("&#039;", "&quot;", "&amp;"), array("'", '"', "&"), $tag));
			
			define( 'CLOUDSTAG', $tag );
			
			$url_page = $config['http_home_url'] . "tags/" . $encoded_tag;
			$user_query = "do=tags&amp;tag=" . $encoded_tag;
			
			if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?do=tags&tag=" . $encoded_tag;

			if( $config['allow_alt_url'] AND $config['seo_control'] ) {

				if ( substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//' OR strpos ($_SERVER['REQUEST_URI'], "do=tags" ) !== false) {
	
					$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
					$re_url = reset ( $re_url );
						
					$re_url .= "tags/" . $encoded_tag . "/";
						
					if( $_GET['cstart'] > 1 ) {
						$re_url .= "page/".intval($_GET['cstart'])."/";
					}
					
					header("HTTP/1.0 301 Moved Permanently");
					header("Location: {$re_url}");
					die("Redirect");
				}
			}
			
			if (isset ( $_SESSION['dle_sort_tags'] )) $news_sort_by = $_SESSION['dle_sort_tags'];
			if (isset ( $_SESSION['dle_direction_tags'] )) $news_direction_by = $_SESSION['dle_direction_tags'];

			$tag = @$db->safesql ( $tag );

			$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p INNER JOIN " . PREFIX . "_tags t on (t.news_id=p.id) {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}t.tag = '{$tag}' AND p.approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
			$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post p INNER JOIN " . PREFIX . "_tags t on (t.news_id=p.id) {$cat_join}WHERE {$stop_list}t.tag = '{$tag}' AND approve=1" . $where_date;
			$allow_active_news = true;

		} elseif ($do == 'xfsearch') {
			// ################ Seach news by xfields #################			
			if ($cstart) {
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			}
			
			if (isset ( $_SESSION['dle_sort_xfsearch'] )) $news_sort_by = $_SESSION['dle_sort_xfsearch'];
			if (isset ( $_SESSION['dle_direction_xfsearch'] )) $news_direction_by = $_SESSION['dle_direction_xfsearch'];
		
			$xf = rawurldecode($_GET['xf']);

			if (dle_substr ( $xf, - 1, 1, $config['charset'] ) == '/') $xf = dle_substr ( $xf, 0, - 1, $config['charset'] );
			
			$xf = explode ( '/', $xf );
			$xfname = "";
			
			if( $_GET['xfname'] AND !$config['allow_alt_url'] ) {
				$xfname =totranslit(trim($_GET['xfname']));
			} elseif(count($xf) > 1 ) {
				$xfname =totranslit(trim($xf[0]));
				unset($xf[0]);
			}

			$xf = implode(' ', $xf);
			$xf = htmlspecialchars ( strip_tags ( stripslashes ( trim ( $xf ) ) ), ENT_QUOTES, $config['charset'] );

			if($xfname) {
				
				$url_page = $config['http_home_url'] . "xfsearch/{$xfname}/" . rawurlencode ( str_replace(array("&#039;", "&quot;"), array("'", '"'), $xf) );
				$user_query = "do=xfsearch&amp;xfname=".$xfname."&amp;xf=" . rawurlencode ( str_replace(array("&#039;", "&quot;"), array("'", '"'), $xf) );
				
				if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?do=xfsearch&xfname=".$xfname."&xf=" . urlencode ( str_replace("&#039;", "'", $xf) );
				
			} else {
				
				$url_page = $config['http_home_url'] . "xfsearch/" . rawurlencode ( str_replace(array("&#039;", "&quot;"), array("'", '"'), $xf) );
				$user_query = "do=xfsearch&amp;xf=" . rawurlencode ( str_replace(array("&#039;", "&quot;"), array("'", '"'), $xf) );
				
				if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?do=xfsearch&xf=" . urlencode ( str_replace("&#039;", "'", $xf) );
				
				$xfields = xfieldsload();
				$xfields_name = array();
				
				foreach ( $xfields as $value ) {
					$xfields_name[] = $value[0];
				}
				
				if( in_array($xf, $xfields_name) ) {$xf .= "|";}
				
				
			}
			
			$xfname = $db->safesql($xfname);
			$xf = $db->safesql($xf);

			if ( $xfname ) {
				
				if( $config['allow_alt_url'] AND $config['seo_control'] ) {

					if (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//' OR strpos ($_SERVER['REQUEST_URI'], "do=xfsearch" ) !== false) {
							
						$re_url = $url_page . "/";
							
						if( $_GET['cstart'] > 1 ) {
							$re_url .= "page/".intval($_GET['cstart'])."/";
						}
						
						header("HTTP/1.0 301 Moved Permanently");
						header("Location: {$re_url}");
						die("Redirect");
					}
				}

				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p INNER JOIN " . PREFIX . "_xfsearch xf on (xf.news_id=p.id) {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}xf.tagname = '{$xfname}' AND xf.tagvalue='{$xf}' AND p.approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count  = "SELECT COUNT(*) as count FROM " . PREFIX . "_post p INNER JOIN " . PREFIX . "_xfsearch xf on (xf.news_id=p.id) {$cat_join}WHERE {$stop_list}xf.tagname = '{$xfname}' AND xf.tagvalue='{$xf}' AND approve=1" . $where_date;
		
			} else {
				
				if(!$xf) {
					
					$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
					$re_url = reset ( $re_url );
						
					header("HTTP/1.0 301 Moved Permanently");
					header("Location: {$re_url}");
					die("Redirect");
				}
				
				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}xfields LIKE '%{$xf}%' AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}xfields LIKE '%{$xf}%' AND approve=1" . $where_date;
		
				$xf = str_replace ( '|', '', $xf );
			}

			$allow_active_news = true;
		
		} elseif ($subaction == 'userinfo') {
			// ################ show user profile #################
			if ($cstart) {
				
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			
			}
			
			$url_page = $config['http_home_url'] . "user/" . urlencode ( $user );
			$user_query = "subaction=userinfo&amp;user=" . urlencode ( $user );
			
			if ($member_id['name'] == $user OR $user_group[$member_id['user_group']]['allow_all_edit']) {
				if (isset ( $_SESSION['dle_sort_userinfo'] )) $news_sort_by = $_SESSION['dle_sort_userinfo'];
				if (isset ( $_SESSION['dle_direction_userinfo'] )) $news_direction_by = $_SESSION['dle_direction_userinfo'];
				
				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE autor = '{$user}' AND approve=0 ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE autor = '$user' AND approve=0";
				
				if( $config['profile_news'] ) {
					$allow_active_news = true;
				} else {
					$allow_active_news = false;
					$news_found = false;		
				}

			} else {
				$allow_active_news = false;
				$news_found = false;
			}
			
			$config['allow_cache'] = false;
		} elseif ($subaction == 'allnews') {
			// ################ show all news by user #################
			if ($cstart) {
				
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			
			}
			
			$url_page = $config['http_home_url'] . "user/" . urlencode ( $user ) . "/news";
			$user_query = "subaction=allnews&amp;user=" . urlencode ( $user );
			
			if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?subaction=allnews&user=" . urlencode ( $user );
			
			if ($view_template == "rss") {
				
				$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name FROM " . PREFIX . "_post {$cat_join_count}where {$stop_list}autor = '$user' AND approve=1" . $where_date . " ORDER BY date DESC LIMIT 0," . $config['rss_number'];
			
			} else {
				
				if (isset ( $_SESSION['dle_sort_allnews'] )) $news_sort_by = $_SESSION['dle_sort_allnews'];
				if (isset ( $_SESSION['dle_direction_allnews'] )) $news_direction_by = $_SESSION['dle_direction_allnews'];
				
				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}autor = '$user' AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}autor = '$user' AND approve=1" . $where_date;
			}
			
			$allow_active_news = true;
		
		} elseif ($subaction == 'newposts') {
			// ################ show all unread news #################
			if ($cstart) {
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			}
			
			$url_page = $config['http_home_url'] . "newposts";
			$user_query = "subaction=newposts";
			
			if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?subaction=newposts";
			
			$thistime = date ( "Y-m-d H:i:s", $_TIME );
			
			if (isset ( $_SESSION['member_lasttime'] )) {
				$lasttime = date ( "Y-m-d H:i:s", $_SESSION['member_lasttime'] );
			} else {
				$lasttime = date ( "Y-m-d H:i:s", (time () - (3600 * 4)) );
			}
			
			if (isset ( $_SESSION['dle_sort_newposts'] )) $news_sort_by = $_SESSION['dle_sort_newposts'];
			if (isset ( $_SESSION['dle_direction_newposts'] )) $news_direction_by = $_SESSION['dle_direction_newposts'];
			
			$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}approve=1 AND date between '$lasttime' and '$thistime' order by " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
			$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}approve=1 AND date between '$lasttime' and '$thistime'";
			
			$config['allow_cache'] = false;
			
		} elseif ( isset ($_GET['catalog']) ) {
			
			// ################ show by catalog #################
			if ($cstart) {
				$cstart = $cstart - 1;
				$cstart = $cstart * $config['news_number'];
			}

			if( $config['allow_alt_url'] AND $config['seo_control']) {

				if (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//') {
					
					$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
					$re_url = reset ( $re_url );
					
					$re_url .= "catalog/".urlencode ( $catalog )."/";
					
					if( $_GET['cstart'] > 1 ) {
						$re_url .= "page/".intval($_GET['cstart'])."/";
					}
					
					
					header("HTTP/1.0 301 Moved Permanently");
					header("Location: {$re_url}");
					die("Redirect");
				}
			}
				
			$url_page = $config['http_home_url'] . "catalog/" . urlencode ( $catalog );
			$user_query = "catalog=" . urlencode ( $catalog );

			if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?catalog=" . urlencode ( $catalog );

			$news_sort_by = ($config['catalog_sort']) ? $config['catalog_sort'] : "date";
			$news_direction_by = ($config['catalog_msort']) ? $config['catalog_msort'] : "DESC";
			
			if (isset ( $_SESSION['dle_sort_catalog'] )) $news_sort_by = $_SESSION['dle_sort_catalog'];
			if (isset ( $_SESSION['dle_direction_catalog'] )) $news_direction_by = $_SESSION['dle_direction_catalog'];
			
			$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}symbol = '$catalog' AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
			$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}symbol = '$catalog' AND approve=1" . $where_date;

		} else {

			// ################ show main page #################
			if ($year == '' AND $month == '' AND $day == '' AND !$newsid) {

				$canonical = $config['http_home_url'];

				if( $config['start_site'] == 2 AND $view_template != "rss") {
					
					break;				
				}
				
				if( $config['allow_alt_url'] AND $config['seo_control'] AND $_GET['cstart'] ) {
	
					if (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 ) {
						
						$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
						$re_url = reset ( $re_url );
						
						if(substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' AND $_GET['cstart'] != 1 ) {
							$re_url .= "page/".intval($_GET['cstart'])."/";
						}
					
						header("HTTP/1.0 301 Moved Permanently");
						header("Location: {$re_url}");
						die("Redirect");
					}
				}
			
				if ($cstart) {
					
					$cstart = $cstart - 1;
					$cstart = $cstart * $config['news_number'];		
				}
			
				$url_page = substr ( $config['http_home_url'], 0, strlen ( $config['http_home_url'] ) - 1 );
				$user_query = "";
				
				if ($view_template == "rss") {
	
					$not_allow_cats = array();
					
					foreach($cat_info as $value) {
						if( !$value['allow_rss'] ) $not_allow_cats[] = $value['id'];
					}
					
					if( count($not_allow_cats) ) {

						if ($config['allow_multi_category']) {
							
							$not_allow_cats = "id NOT IN ( SELECT DISTINCT(" . PREFIX . "_post_extras_cats.news_id) FROM " . PREFIX . "_post_extras_cats WHERE cat_id IN (" . implode ( ',', $not_allow_cats ) . ") ) AND ";
						
						} else {
							
							$not_allow_cats = "category NOT IN ('" . implode ( "','", $not_allow_cats ) . "') AND ";
						
						}
						
					} else $not_allow_cats = "";
					
					$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name FROM " . PREFIX . "_post {$cat_join_count}WHERE {$not_allow_cats}{$stop_list}approve=1";
					
					if ($config['rss_mtype']) {
						
						$sql_select .= " AND allow_main=1";
					
					}
					
					$sql_select .= $where_date . " ORDER BY date DESC LIMIT 0," . $config['rss_number'];
				
				} else {
					
					if (isset ( $_SESSION['dle_sort_main'] )) $news_sort_by = $_SESSION['dle_sort_main'];
					if (isset ( $_SESSION['dle_direction_main'] )) $news_direction_by = $_SESSION['dle_direction_main'];
					
					$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}approve=1 AND allow_main=1" . $where_date . " ORDER BY " . $fixed . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
					$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}approve=1 AND allow_main=1" . $where_date;
				
				}
			}
	
			// ################ Show news by year #################
			if ($year != '' and $month == '' and $day == '') {
				if ($cstart) {
					
					$cstart = $cstart - 1;
					$cstart = $cstart * $config['news_number'];
				}
				
				if( $config['allow_alt_url'] AND $config['seo_control']) {

					if (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//' OR intval($_GET['year']) < 1970 OR intval($_GET['year']) > 2100) {
						
						$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
						$re_url = reset ( $re_url );
						
						if (intval($_GET['year']) < 1970 OR intval($_GET['year']) > 2100) {
							$year= date( 'Y', $_TIME );
						}
						
						$re_url .= $year."/";
						
						if( $_GET['cstart'] > 1 ) {
							$re_url .= "page/".intval($_GET['cstart'])."/";
						}
						
						
						header("HTTP/1.0 301 Moved Permanently");
						header("Location: {$re_url}");
						die("Redirect");
					}
				}
				
				$url_page = $config['http_home_url'] . $year;
				$user_query = "year=" . $year;
				
				if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?year=" . $year;
				
				if (isset ( $_SESSION['dle_sort_date'] )) $news_sort_by = $_SESSION['dle_sort_date'];
				if (isset ( $_SESSION['dle_direction_date'] )) $news_direction_by = $_SESSION['dle_direction_date'];
				
				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}date >= '{$year}-01-01'AND date < '{$year}-01-01' + INTERVAL 1 YEAR AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}where {$stop_list}date >= '{$year}-01-01'AND date < '{$year}-01-01' + INTERVAL 1 YEAR AND approve=1" . $where_date;
			}
			
			// ################ Show news by month #################
			if ($year != '' and $month != '' and $day == '') {
				if ($cstart) {
					$cstart = $cstart - 1;
					$cstart = $cstart * $config['news_number'];
				}
				
				if( $config['allow_alt_url'] AND $config['seo_control']) {

					if (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//' OR intval($_GET['year']) < 1970 OR intval($_GET['year']) > 2100 OR intval($_GET['month']) < 1 OR intval($_GET['month']) > 12) {
						
						$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
						$re_url = reset ( $re_url );
						
						if (intval($_GET['year']) < 1970 OR intval($_GET['year']) > 2100) {
							$year= date( 'Y', $_TIME );
						}
						
						$re_url .= $year."/";
						
						if (intval($_GET['month']) < 1 OR intval($_GET['month']) > 12) {
							$month= date( 'm', $_TIME );
						}
						
						$re_url .= $month."/";
						
						if( $_GET['cstart'] > 1 ) {
							$re_url .= "page/".intval($_GET['cstart'])."/";
						}

						header("HTTP/1.0 301 Moved Permanently");
						header("Location: {$re_url}");
						die("Redirect");
					}
				}

				$url_page = $config['http_home_url'] . $year . "/" . $month;
				$user_query = "year=" . $year . "&amp;month=" . $month;
				
				if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?year=" . $year . "&month=" . $month;
				
				if (isset ( $_SESSION['dle_sort_date'] )) $news_sort_by = $_SESSION['dle_sort_date'];
				if (isset ( $_SESSION['dle_direction_date'] )) $news_direction_by = $_SESSION['dle_direction_date'];
				
				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}date >= '{$year}-{$month}-01'AND date < '{$year}-{$month}-01' + INTERVAL 1 MONTH AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}where {$stop_list}date >= '{$year}-{$month}-01'AND date < '{$year}-{$month}-01' + INTERVAL 1 MONTH AND approve=1" . $where_date;
			}
		
			// ################ Show news by day #################

			if ($year != '' and $month != '' and $day != '' and $subaction == '') {
				if ($cstart) {
					$cstart = $cstart - 1;
					$cstart = $cstart * $config['news_number'];
				}

				if( $config['allow_alt_url'] AND $config['seo_control']) {

					if (substr ( $_SERVER['REQUEST_URI'], - 1, 1 ) != '/' OR $_GET['cstart'] == 1 OR substr ( $_SERVER['REQUEST_URI'], - 2 ) == '//' OR intval($_GET['year']) < 1970 OR intval($_GET['year']) > 2100 OR intval($_GET['month']) < 1 OR intval($_GET['month']) > 12 OR intval($_GET['day']) < 1 OR intval($_GET['day']) > 31) {
						
						$re_url = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
						$re_url = reset ( $re_url );
						
						if (intval($_GET['year']) < 1970 OR intval($_GET['year']) > 2100) {
							$year= date( 'Y', $_TIME );
						}
						
						$re_url .= $year."/";
						
						if (intval($_GET['month']) < 1 OR intval($_GET['month']) > 12) {
							$month= date( 'm', $_TIME );
						}
						
						$re_url .= $month."/";
						
						if (intval($_GET['day']) < 1 OR intval($_GET['day']) > 31) {
							$day= date( 'd', $_TIME );
						}
						
						$re_url .= $day."/";
						
						if( $_GET['cstart'] > 1 ) {
							$re_url .= "page/".intval($_GET['cstart'])."/";
						}

						header("HTTP/1.0 301 Moved Permanently");
						header("Location: {$re_url}");
						die("Redirect");
					}
				}
				
				$url_page = $config['http_home_url'] . $year . "/" . $month . "/" . $day;
				$user_query = "year=" . $year . "&amp;month=" . $month . "&amp;day=" . $day;
				
				if( $config['allow_alt_url'] ) $canonical = $url_page . "/"; else $canonical = $PHP_SELF."?year=" . $year . "&month=" . $month . "&day=" . $day;
				
				if (isset ( $_SESSION['dle_sort_date'] )) $news_sort_by = $_SESSION['dle_sort_date'];
				if (isset ( $_SESSION['dle_direction_date'] )) $news_direction_by = $_SESSION['dle_direction_date'];
				
				$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p {$cat_join}LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
				$sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post {$cat_join_count}WHERE {$stop_list}date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR AND approve=1" . $where_date;
		
			}
			
			// ################ Full News #################
			if ($subaction != '' or $newsid) {
				if (! $newsid) $sql_news = "SELECT * FROM " . PREFIX . "_post LEFT JOIN " . PREFIX . "_post_extras ON (" . PREFIX . "_post.id=" . PREFIX . "_post_extras.news_id) WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR LIMIT 1";
				else $sql_news = "SELECT * FROM " . PREFIX . "_post LEFT JOIN " . PREFIX . "_post_extras ON (" . PREFIX . "_post.id=" . PREFIX . "_post_extras.news_id) WHERE  id = '{$newsid}'";
				
				if ($subaction == '') $subaction = "showfull";
			}
		}
		
		if (($subaction == "showfull" or $subaction == "addcomment") and ((! isset ( $category ) or $category == ""))) {
			
			//####################################################################################################################
			//          Add a comment to the database
			//####################################################################################################################
			if (isset( $_POST['subaction'] ) AND $_POST['subaction'] == "addcomment") {
				
				$allow_add_comment = TRUE;
				$allow_comments = TRUE;
				$ajax_adds = false;
				
				include_once (DLEPlugins::Check(ENGINE_DIR . '/modules/addcomments.php'));
			}
			//####################################################################################################################
			//         Show the full news
			//####################################################################################################################
			if ($subaction == "showfull") {
				$allow_comments = TRUE;
			
				include_once (DLEPlugins::Check(ENGINE_DIR . '/modules/show.full.php'));
			}
		
		} else {
			
			//####################################################################################################################
			//         Viewing user profile
			//####################################################################################################################
			if ($subaction == 'userinfo') {
				
				$allow_userinfo = TRUE;
				include_once (DLEPlugins::Check(ENGINE_DIR . '/modules/profile.php'));
			
			} else {
				$allow_active_news = TRUE;
			}
			
			//####################################################################################################################
			//         Viewing short news
			//####################################################################################################################
			
			$cache_prefix = "content_".$dle_module;

			$_SESSION['referrer'] = htmlspecialchars($_SERVER['REQUEST_URI'], ENT_QUOTES, $config['charset'] );
			
			if ($catalog != "") {
				
				$cache_prefix .= "_catalog_" . $catalog;
			
			} elseif ($do == "lastnews") {
				
				$cache_prefix .= "_lastnews";
			
			} elseif ($subaction == 'allnews') {

				$cache_prefix .= "_allnews_". $user;

			} elseif ($do == 'tags') {

				$cache_prefix .= "_tagscl_". $tag;

			} elseif ($do == 'xfsearch') {
				
				if($xfname) $cache_prefix .= "_xfsearch_" . $xfname . "_" . $xf;
				else $cache_prefix .= "_xfsearch_". $xf;

			} else {
				
				$cache_prefix .= "_";
				
				if ($month) $cache_prefix .= "month_" . $month;
				if ($year) $cache_prefix .= "year_" . $year;
				if ($day) $cache_prefix .= "day_" . $day;
				if ($category) $cache_prefix .= "category_" . $category;
			}
			
			$cache_prefix .= "_tempate_" . $config['skin'];

			if ($view_template == "rss") {

				if ($catalog) $active = dle_cache ( "rss", $catalog, false );				
				else $active = dle_cache ( "rss", $category_id, false );
			
			} else {
				
				if ($is_logged and ($user_group[$member_id['user_group']]['allow_edit'] and ! $user_group[$member_id['user_group']]['allow_all_edit'])) $config['allow_cache'] = false;
				if (isset($_SESSION['dle_no_cache']) AND $_SESSION['dle_no_cache']) $config['allow_cache'] = false;
				if ($cstart) $cache_id = ($cstart / $config['news_number']) + 1;
				else $cache_id = 1;
				
				$config['max_cache_pages'] = intval($config['max_cache_pages']);
				if($config['max_cache_pages'] < 3) $config['max_cache_pages'] = 3;

				if ($config['allow_cache'] AND $cache_id <= $config['max_cache_pages']) {
					$active = dle_cache( "news", $cache_id . $cache_prefix, true );
					$short_news_cache = true;
				} else {
					$active = false;
					$short_news_cache = false;
				}
			
			}
			
			if ($active) {

				$tpl->result['content'] .= $active;
				$active = null;
				$news_found = true;
				if ($config['allow_quick_wysiwyg'] and ($user_group[$member_id['user_group']]['allow_edit'] or $user_group[$member_id['user_group']]['allow_all_edit'])) $allow_comments_ajax = true;
				else $allow_comments_ajax = false;
			
			} else {
				
				include_once (DLEPlugins::Check(ENGINE_DIR . '/modules/show.short.php'));
				
				if (!$config['allow_quick_wysiwyg']) $allow_comments_ajax = false;
				
				if ($config['files_allow']) if (strpos ( $tpl->result['content'], "[attachment=" ) !== false) {
					$tpl->result['content'] = show_attach ( $tpl->result['content'], $attachments );
				}
				
				if ($view_template == "rss" AND $news_found) {
					
					if ($catalog) create_cache ( "rss", $tpl->result['content'], $catalog, false );
					else create_cache ( "rss", $tpl->result['content'], $category_id, false );
				
				} elseif ($news_found AND $cache_id <= $config['max_cache_pages'] ) create_cache ( "news", $tpl->result['content'], $cache_id . $cache_prefix, true );

			}
			
			if($tpl->result['content'] AND $canonical AND intval($_GET['cstart']) AND intval($_GET['cstart']) != 1 ) {
					
					if( $config['allow_alt_url'] ) {
						
						$canonical .= "page/".intval($_GET['cstart'])."/";
						
					} else {
						
						if ($user_query) {
							
							$canonical = "{$PHP_SELF}?cstart=".intval($_GET['cstart'])."&".str_replace('&amp;', '&', $user_query);
							
						} else $canonical = "{$PHP_SELF}?cstart=".intval($_GET['cstart']);
					}
					
			}
			
		
		}

}

/*
=====================================================
 The output of the page header
=====================================================
*/
$titl_e = '';
$nam_e = '';
$rss_url = '';
$rss_title = '';

if ($do == "cat" and $category != '' and $subaction == '') {
	
	$metatags['description'] = ($cat_info[$category_id]['descr'] != '') ? $cat_info[$category_id]['descr'] : $metatags['description'];
	$metatags['keywords'] = ($cat_info[$category_id]['keywords'] != '') ? $cat_info[$category_id]['keywords'] : $metatags['keywords'];

	if ($cat_info[$category_id]['metatitle'] != '') $metatags['header_title'] = $cat_info[$category_id]['metatitle'];
	else $nam_e = stripslashes ( $cat_info[$category_id]['name'] );
	
	if ($config['allow_alt_url'] ) {
		$rss_url = $url_page . "/" . "rss.xml";
	} else {
		$rss_url = $PHP_SELF . "?mod=rss&do=cat&category=" . $cat_info[$category_id]['alt_name'];
	}

} elseif ($subaction == 'userinfo') {
	$nam_e = $user;
	
	if ($config['allow_alt_url'] ) {
		$rss_url = $url_page . "/" . "rss.xml";
	} else {
		$rss_url = $PHP_SELF . "?mod=rss&subaction=allnews&user=" . urlencode ( $user );
	}

} elseif ($subaction == 'allnews') {
	$nam_e = $lang['show_user_news'] . ' ' . $user;
	
	if ($config['allow_alt_url']) {
		$rss_url = $config['http_home_url'] . "user/" . urlencode ( $user ) . "/" . "rss.xml";
	} else {
		$rss_url = $PHP_SELF . "?mod=rss&subaction=allnews&user=" . urlencode ( $user );
	}

} elseif ($subaction == 'newposts') $nam_e = $lang['title_new'];
elseif ($do == 'stats') $nam_e = $lang['title_stats'];
elseif ($do == 'addnews') $nam_e = $lang['title_addnews'];
elseif ($do == 'register') $nam_e = $lang['title_register'];
elseif ($do == 'favorites') $nam_e = $lang['title_fav'];
elseif ($do == 'pm') $nam_e = $lang['title_pm'];
elseif ($do == 'feedback') $nam_e = $lang['title_feed'];
elseif ($do == 'lastcomments') $nam_e = $lang['title_last'];
elseif ($do == 'lostpassword') $nam_e = $lang['title_lost'];
elseif ($do == 'search') $nam_e = $lang['title_search'];
elseif ($do == 'static') $titl_e = $static_descr;
elseif ($do == 'lastnews') $nam_e = $lang['last_news'];
elseif ($do == 'alltags') $nam_e = $lang['tag_cloud'];
elseif ($do == 'rules') $nam_e = $lang['rules_page'];
elseif ($do == 'tags') $nam_e = stripslashes($tag);
elseif ($do == 'xfsearch') $nam_e = $xf;
elseif ($catalog != "") { 
	$nam_e = $lang['title_catalog'] . ' &raquo; ' . $catalog;

	if ($config['allow_alt_url']) {
		$rss_url = $config['http_home_url'] . "catalog/" . urlencode ( $catalog ) . "/" . "rss.xml";
	} else {
		$rss_url = $PHP_SELF . "?mod=rss&catalog=" . urlencode ( $catalog );
	}

}
else {
	
	if ($year != '' and $month == '' and $day == '') $nam_e = $lang['title_date'] . ' ' . $year . ' ' . $lang['title_year'];
	if ($year != '' and $month != '' and $day == '') $nam_e = $lang['title_date'] . ' ' . $r[$month - 1] . ' ' . $year . ' ' . $lang['title_year1'];
	if ($year != '' and $month != '' and $day != '' and $subaction == '') $nam_e = $lang['title_date'] . ' ' . $day . '.' . $month . '.' . $year;
	if (($subaction != '' or $newsid != '') and $news_found) $titl_e = $metatags['title'];

}

if ( ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ) OR (isset($_GET['news_page']) AND intval($_GET['news_page']) > 1) ){

	if ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ) $page_extra = ' &raquo; '.$lang['news_site'].' '.intval($_GET['cstart']);
	else $page_extra = ' &raquo; '.$lang['news_site'].' '.intval($_GET['news_page']);

} else $page_extra = '';


if ($nam_e) {

	$metatags['title'] = $nam_e . $page_extra . ' &raquo; ' . $metatags['title'];
	$rss_title = $metatags['title'];

} elseif ($titl_e) {

	$metatags['title'] = $titl_e . $page_extra . ' &raquo; ' . $config['home_title'];

} else $metatags['title'] .= $page_extra;

if ( $metatags['header_title'] ) $metatags['title'] = stripslashes($metatags['header_title'].$page_extra);
if ( $disable_index ) $disable_index = "
<meta name=\"robots\" content=\"noindex,nofollow\" />"; else $disable_index = "";

if (! $rss_url) {
	
	if ($config['allow_alt_url']) {
		$rss_url = $config['http_home_url'] . "rss.xml";
	} else {
		$rss_url = $PHP_SELF . "?mod=rss";
	}
	
	$rss_title = $config['home_title'];
}

$s_meta = "";

if ( count($social_tags) ) {

	foreach ($social_tags as $key => $value) {
		
		$value=str_replace(array("{", "}", "[", "]"),"",$value);

		if( $key == "news_keywords" ) {
			$s_meta .= "<meta name=\"{$key}\" content=\"{$value}\">
";
		} else {
			$s_meta .= "<meta property=\"og:{$key}\" content=\"{$value}\">
";
		}

	}
}

if( $config['allow_own_meta'] ) {
	
	if(is_array($custom_metatags['simple']) AND count($custom_metatags['simple']) AND $custom_metatags['simple'][$r_uri] ) {
		if( $custom_metatags['simple'][$r_uri]['title'] ) $metatags['title'] = $custom_metatags['simple'][$r_uri]['title'];
		if( $custom_metatags['simple'][$r_uri]['description'] ) $metatags['description'] = $custom_metatags['simple'][$r_uri]['description'];
		if( $custom_metatags['simple'][$r_uri]['keywords'] ) $metatags['keywords'] = $custom_metatags['simple'][$r_uri]['keywords'];
	}
	
	if(is_array($custom_metatags['regex']) AND count($custom_metatags['regex'])) {	
		foreach ($custom_metatags['regex'] as $key => $value) {
			if(preg_match($key, $r_uri)){
				if( $value['title'] ) $metatags['title'] = $value['title'];
				if( $value['description'] ) $metatags['description'] = $value['description'];
				if( $value['keywords'] ) $metatags['keywords'] = $value['keywords'];
		    }
		}
	}

}

$metatags['title']=str_replace(array("{", "}", "[", "]"), "", $metatags['title']);
$metatags['description']=str_replace(array("{", "}", "[", "]"), "", $metatags['description']);
$metatags['keywords']=str_replace(array("{", "}", "[", "]"), "", $metatags['keywords']);

$metatags = <<<HTML
<meta charset="{$config['charset']}">
<title>{$metatags['title']}</title>
<meta name="description" content="{$metatags['description']}">
<meta name="keywords" content="{$metatags['keywords']}">{$disable_index}
<meta name="generator" content="DataLife Engine (http://dle-news.ru)">
{$s_meta}<link rel="search" type="application/opensearchdescription+xml" href="{$PHP_SELF}?do=opensearch" title="{$config['home_title']}">
HTML;

if ($canonical) {
	
	if (strpos($canonical, "//") === 0) $canonical = "https:".$canonical;
	elseif (strpos($canonical, "/") === 0) $canonical = "http://".$_SERVER['HTTP_HOST'].$canonical;

	$metatags .= <<<HTML

<link rel="canonical" href="{$canonical}">
HTML;

}

if ($config['allow_rss']) $metatags .= <<<HTML

<link rel="alternate" type="application/rss+xml" title="{$rss_title}" href="{$rss_url}">
HTML;


/*
=====================================================
 speedbar creation
=====================================================
*/
if ($config['speedbar'] AND !$view_template ) {
	
	$s_navigation = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"{$config['http_home_url']}\" itemprop=\"url\"><span itemprop=\"title\">" . $config['short_title'] . "</span></a></span>";

	if( $config['start_site'] == 3 AND $_SERVER['QUERY_STRING'] == "" AND !$_POST['do']) $titl_e = "";

	if (intval($category_id)){
		
		if($titl_e OR (isset($_GET['cstart']) AND intval($_GET['cstart']) > 1) ) {
			$last_link = true;
		} else $last_link = false;
		
		$s_navigation .= " {$config['speedbar_separator']} " . get_breadcrumbcategories ( intval($category_id), $config['speedbar_separator'], $last_link );
		
	} elseif ($do == 'tags') {
		
		if ($config['allow_alt_url']) $s_navigation .= " {$config['speedbar_separator']} <span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" . $config['http_home_url'] . "tags/\" itemprop=\"url\"><span itemprop=\"title\">" . $lang['tag_cloud'] . "</span></a></span> {$config['speedbar_separator']} " . $tag;
		else $s_navigation .= " {$config['speedbar_separator']} <span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"?do=tags\" itemprop=\"url\"><span itemprop=\"title\">" . $lang['tag_cloud'] . "</span></a></span> {$config['speedbar_separator']} " . $tag;

	} elseif ($nam_e) $s_navigation .= " {$config['speedbar_separator']} " . $nam_e;

	if ($titl_e) {
		
		$s_navigation .= " {$config['speedbar_separator']} " . $titl_e;
		
	} else {

		if ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ){
		
			$page_extra = " {$config['speedbar_separator']} ".$lang['news_site']." ".intval($_GET['cstart']);
		
		} else $page_extra = '';

		$s_navigation .= $page_extra;

	}
	
	$tpl->load_template ( 'speedbar.tpl' );
	$tpl->set ( '{speedbar}', '<span id="dle-speedbar">' . stripslashes ( $s_navigation ) . '</span>' );
	$tpl->compile ( 'speedbar' );
	$tpl->clear ();

}
?>

Did this file decode correctly?

Original Code

?><?php $_F=__FILE__;$_X='P1c3P3B4cA1PYioNTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDU9JRTBoMFJsU2NJWi5lbC5jSS1JPFhJVUpTaG1je0RJc2M5bDBJYXFKOGRJDU8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ1PSU1oaGQ6YmI5bmMtLmN7RHRxOGINTy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDU9JaUpkWHFsZU1oSSg2KUk9TExULT1MdTVJVUpTaG1je0RJc2M5bDBJYXFKOGQNTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDU9JS01sREk2SjljSWxESWRxSmhjNmhjOUk8WEk2SmRYcWxlTWgNTyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDU9JR2xuYzpJYy5lbC5jdGRNZA1PICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANTypiDU8NT2xTSSghOWNTbC5jOSgnRUFLQVJyR1pabWFybVonKSlJdg1PCTlsY0koSSJ4MDZWbC5lSTBoaGNDZGghIkkpOw1PZg1PDU9sU0koJDZEaDBxaEk3SUwpSSQ2RGgwcWhJIElMOw1PDU8kaW1feEFSS0kgSVMwbkRjOw1PJDBubkp7XzA5OV82SkNDYy5oSSBJUzBuRGM7DU8kMG5uSntfMDZobApjXy5je0RJIElTMG5EYzsNTyQwbm5Ke182SkNDYy5oREkgSVMwbkRjOw1PJDBubkp7XzhEY3FsLlNKSSBJUzBuRGM7DU8kMDZobApjSSBJUzBuRGM7DU8kOWxEMDxuY19sLjljMUkgSVMwbkRjOw1PJERKNmwwbl9oMGVESSBJMHFxMFgoKTsNTyQ2MC5KLmw2MG5JIElTMG5EYzsNTyQ4cW5fZDBlY0kgSVMwbkRjOw1PJDhEY3FfPjhjcVhJIElTMG5EYzsNTyQuY3tEXzA4aE1KcUkgSVMwbkRjOw1PJDBoaDA2TUNjLmhESSBJMHFxMFhJKCk7DU8kRE1KcWhfLmN7RF82MDZNY0kgSVMwbkRjOw1PDU9Ee2xoNk1JKEkkOUpJKUl2DU8JDU8JNjBEY0kiRGMwcTZNIkk6DU8JCQ1PCQlsU0koJF9IWjR3WlVLaidDSjljJ31JICBJIjA5CjAuNmM5IilJJF9IWjR3WlVLaidTOG5uX0RjMHE2TSd9SSBJdTsNTwkJbC42bjg5Y0koRVJacG44ZWwuRDo6aU1jNlYoWm1hcm1aX0VySEl0SSdiQ0o5OG5jRGJEYzBxNk10ZE1kJykpOw1PCQk8cWMwVjsNTw1PCTYwRGNJIjZNMC5lY0MwbG4iSToNTwkJbC42bjg5Y0koRVJacG44ZWwuRDo6aU1jNlYoWm1hcm1aX0VySEl0SSdiQ0o5OG5jRGI2TTAuZWNDMGxudGRNZCcpKTsNTwkJPHFjMFY7DU8JDU8JNjBEY0kiOWNuY2hjLmN7RCJJOg1PCQlsLjZuODljSShFUlpwbjhlbC5EOjppTWM2VihabWFybVpfRXJISXRJJ2JDSjk4bmNEYjljbmNoYy5je0R0ZE1kJykpOw1PCQk8cWMwVjsNTw1PCTYwRGNJIjZKQ0NjLmhEIkk6DU8JCWwuNm44OWNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiNkpDQ2MuaER0ZE1kJykpOw1PCQk8cWMwVjsNTwkNTwk2MERjSSJEaDBoRCJJOg1PCQlsLjZuODljSShFUlpwbjhlbC5EOjppTWM2VihabWFybVpfRXJISXRJJ2JDSjk4bmNEYkRoMGhEdGRNZCcpKTsNTwkJPHFjMFY7DU8JDU8JNjBEY0kiMDk5LmN7RCJJOg1PCQlsLjZuODljSShFUlpwbjhlbC5EOjppTWM2VihabWFybVpfRXJISXRJJ2JDSjk4bmNEYjA5OS5je0R0ZE1kJykpOw1PCQk8cWMwVjsNTwkNTwk2MERjSSJxY2VsRGhjcSJJOg1PCQlsLjZuODljSShFUlpwbjhlbC5EOjppTWM2VihabWFybVpfRXJISXRJJ2JDSjk4bmNEYnFjZWxEaGNxdGRNZCcpKTsNTwkJPHFjMFY7DU8JDU8JNjBEY0kibkpEaGQwRER7SnE5Ikk6DU8JCWwuNm44OWNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RibkpEaGQwRER7SnE5dGRNZCcpKTsNTwkJPHFjMFY7DU8JDU8JNjBEY0kicThuY0QiSToNTwkJJF9hWktqJ2QwZWMnfUkgSSI5bmMtcThuY0QtZDBlYyI7DU8JCWwuNm44OWNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiRGgwaGw2dGRNZCcpKTsNTwkJPHFjMFY7DU8JDU8JNjBEY0kiRGgwaGw2Ikk6DU8JCWwuNm44OWNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiRGgwaGw2dGRNZCcpKTsNTwkJPHFjMFY7DU8JDU8JNjBEY0kiMG5uaDBlRCJJOg1PCQlsLjZuODljX0ouNmNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiaDBlRDZuSjg5dGRNZCcpKTsNTwkJPHFjMFY7DU8NTwk2MERjSSIwOGhNLURKNmwwbiJJOg1PCQlsLjZuODljX0ouNmNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiREo2bDBudGRNZCcpKTsNTwkJPHFjMFY7DU8JDU8JNjBEY0kiUzAKSnFsaGNEIkk6DU8JCQ1PCQlsU0koJGxEX25KZWVjOSlJdg1PCQkJDU8JCQkkNkouU2xlaicwbm5Ke182MDZNYyd9SSBJUzBuRGM7DU8JCQkNTwkJCWwuNm44OWNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiUzAKSnFsaGNEdGRNZCcpKTsNTwkJDU8JCWZJY25EY0l2DU8JCQkNTwkJCUBNYzA5Y3EoSSJ4S0twYnV0dUlUTGdJR0pxPGw5OWMuIkkpOw1PCQkJQ0RlPEoxSShJJG4wLmVqJzBubl9jcXFfdSd9LEkkbjAuZWonUzAKX2NxcUpxJ31JKTsNTwkJCQ1PCQlmDU8JCQkNTwkJPHFjMFY7DU8JDU8JNjBEY0kiU2NjOTwwNlYiSToNTwkJbC42bjg5Y0koRVJacG44ZWwuRDo6aU1jNlYoWm1hcm1aX0VySEl0SSdiQ0o5OG5jRGJTY2M5PDA2VnRkTWQnKSk7DU8JCTxxYzBWOw1PCQ1PCTYwRGNJIm4wRGg2SkNDYy5oRCJJOg1PCQlsLjZuODljSShFUlpwbjhlbC5EOjppTWM2VihabWFybVpfRXJISXRJJ2JDSjk4bmNEYm4wRGg2SkNDYy5oRHRkTWQnKSk7DU8JCTxxYzBWOw1PCQ1PCTYwRGNJImRDIkk6DU8JCWwuNm44OWNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiZEN0ZE1kJykpOw1PCQk8cWMwVjsNTw1PCTYwRGNJIjguRDg8RDZxbDxjIkk6DU8JCSRfYVpLaidkSkRoX2w5J31JIElsLmgKMG5JKCRfYVpLaidkSkRoX2w5J30pOw1PCQkkX2FaS2onOERjcV9sOSd9SSBJbC5oCjBuSSgkX2FaS2onOERjcV9sOSd9KTsNTw1PCQlsU0koJF9hWktqJ2RKRGhfbDknfUlBbUVJJF9hWktqJzhEY3FfbDknfUlBbUVJJF9hWktqJ00wRE0nfSlJdg1PDU8JCQkkcUp7SSBJJDk8LVdEOGRjcV8+OGNxWChJIlVaUlppS0lNMERNSUdIL3NJIkl0SXBIWkdyQkl0SSJfRDg8RDZxbDxjSUZ4WkhaSS5je0RfbDkgJ3YkX2FaS2onZEpEaF9sOSd9ZidJQW1FSThEY3FfbDkgJ3YkX2FaS2onOERjcV9sOSd9ZiciSSk7DU8NTwkJCWxTSSgkcUp7aidNMERNJ31JQW1FSSRxSntqJ00wRE0nfUkgIEkkX2FaS2onTTBETSd9KUl2DU8NTwkJCQkkOTwtVz44Y3FYKEkiRVpSWktaSUdIL3NJIkl0SXBIWkdyQkl0SSJfRDg8RDZxbDxjSUZ4WkhaSS5je0RfbDkgJ3YkX2FaS2onZEpEaF9sOSd9ZidJQW1FSThEY3FfbDkgJ3YkX2FaS2onOERjcV9sOSd9ZiciSSk7DU8JCQkJQ0RlPEoxKEkkbjAuZWonMG5uX2wuU0onfSxJSSRuMC5laic4LkQ4PEQ2cWw8Y19KVid9KTsNTw1PCQkJZkljbkRjSXYNTwkJCQlDRGU8SjEoSSRuMC5laicwbm5fbC5TSid9LElJJG4wLmVqJzguRDg8RDZxbDxjX2NxcSd9KTsNTwkJCWYNTw1PCQlmSWNuRGNJdg1PCQkJQ0RlPEoxKEkkbjAuZWonMG5uX2wuU0onfSxJSSRuMC5laic4LkQ4PEQ2cWw8Y19jcXEnfSk7DU8JCWYNTw1PCQk8cWMwVjsNTwkNTwk2MERjSSIuY3tEbmNoaGNxOC5EODxENnFsPGMiSToNTwkJDU8JCSRfYVpLaic4RGNxX2w5J31JIElsLmgKMG5JKCRfYVpLaic4RGNxX2w5J30pOw1PDU8JCWxTSSgkX2FaS2onOERjcV9sOSd9SUFtRUkkX2FaS2onTTBETSd9KUl2DU8NTwkJCSRxSntJIEkkOTwtV0Q4ZGNxXz44Y3FYKEkiVVpSWmlLSWQwRER7SnE5LEk4RGNxX2w5SUdIL3NJIkl0SXdVWkhwSFpHckJJdEkiXzhEY3FESUZ4WkhaSThEY3FfbDkgJ3YkX2FaS2onOERjcV9sOSd9ZiciSSk7DU8JCQkNTwkJCWxTSSgkcUp7aic4RGNxX2w5J30pSXYNTwkJCQkNTwkJCQkkOC5EODxENnFsPGNfTTBETUkgSUM5WShJVVppd0haX0F3S3hfUVpvSXRJJF9VWkgyWkhqJ3hLS3BfeC9VSyd9SXRJJHFKe2onOERjcV9sOSd9SXRJRE0wdShJRDg8RGhxKCRxSntqJ2QwRER7SnE5J30sSUwsSTMpSSlJdEkkNkouU2xlaidWY1gnfUkpOw1PCQ1PCQkJCWxTSSgkOC5EODxENnFsPGNfTTBETUkgIEkkX2FaS2onTTBETSd9KUl2DU8JDU8JCQkJCSQ5PC1XPjhjcVgoSSJ3cEVBS1pJIkl0SXdVWkhwSFpHckJJdEkiXzhEY3FESVVaS0kwbm5Ke19DMGxuICdMJ0lGeFpIWkk4RGNxX2w5SSBJJ3YkX2FaS2onOERjcV9sOSd9ZiciSSk7DU8JCQkJCQ1PCQkJCQlDRGU8SjEoSSRuMC5laicwbm5fbC5TSid9LElJJG4wLmVqJy5fOC5EODxENnFsPGNfSlYnfSk7DU8JDU8JCQkJZkljbkRjSXYNTwkJCQkJDU8JCQkJCUNEZTxKMShJJG4wLmVqJzBubl9sLlNKJ30sSUkkbjAuZWonLl84LkQ4PEQ2cWw8Y19jcXEnfSk7DU8JCQkJCQ1PCQkJCWYNTwkJCQkNTwkJCWZJY25EY0l2DU8JCQkJQ0RlPEoxKEkkbjAuZWonMG5uX2wuU0onfSxJSSRuMC5laicuXzguRDg8RDZxbDxjX2NxcSd9KTsNTwkJCWYNTw1PCQlmSWNuRGNJdg1PCQkJQ0RlPEoxKEkkbjAuZWonMG5uX2wuU0onfSxJSSRuMC5laicuXzguRDg8RDZxbDxjX2NxcSd9KTsNTwkJZg1PDU8JCTxxYzBWOw1PCQ1PCTljUzA4bmhJOg1PCQkNTwkJJGxEX0MwbC5JIElMOw1PCQkkMDZobApjSSBJUzBuRGM7DU8JCSQ4RGNxXz44Y3FYSSBJIiI7DU8JCSQ4cW5fZDBlY0kgSSIiOw1PCQkNTwkJJGhNbEQ5MGhjSSBJOTBoY0koSSJvLUMtOUl4Omw6RCIsSWhsQ2NJKClJKTsNTwkJbFNJKCQ2Si5TbGVqJy5KXzkwaGMnfUlBbUVJISQ2Si5TbGVqJy5je0RfUzhoOHFjJ30pSSR7TWNxY185MGhjSSBJIklBbUVJOTBoY0k3SSciSXRJJGhNbEQ5MGhjSXRJIiciOw1PCQljbkRjSSR7TWNxY185MGhjSSBJIiI7DU8JCQ1PCQlsU0koJDZKLlNsZWonMG5uSntfU2wxYzknfSlJJFNsMWM5SSBJIlNsMWM5STljRDYsSSI7DU8JCWNuRGNJJFNsMWM5SSBJIiI7DU8JCQ1PCQkkNkouU2xlaicuY3tEXy44QzxjcSd9SSBJbC5oCjBuSShJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfUkpOw1PDU8JCWxTSShJJERDMHFoZE1KLmNfOWNoYzZoYzlJQW1FSSQ2Si5TbGVqJ0NKPGxuY18uY3tEJ31JKUkkNkouU2xlaicuY3tEXy44QzxjcSd9SSBJbC5oCjBuSShJJDZKLlNsZWonQ0o8bG5jXy5je0QnfUkpOw1PCQkNTwkJJC5je0RfREpxaF88WEkgSSgkNkouU2xlaicuY3tEX0RKcWgnfSlJP0kkNkouU2xlaicuY3tEX0RKcWgnfUk6SSI5MGhjIjsNTwkJJC5je0RfOWxxYzZobEouXzxYSSBJKCQ2Si5TbGVqJy5je0RfQ0RKcWgnfSlJP0kkNkouU2xlaicuY3tEX0NESnFoJ31JOkkiRVpVaSI7DU8NTwkJJDBubkp7X25sRGhJIEljMWRuSjljSShJJywnLEkkOERjcV9lcUo4ZGokQ2NDPGNxX2w5aic4RGNxX2VxSjhkJ319aicwbm5Ke182MGhEJ31JKTsNTwkJJERoSmRfbmxEaEkgSSIiOw1PCQkkNjBoX11KbC5JIEkiIjsNTwkJJDYwaF9dSmwuXzZKOC5oSSBJIiI7DU8JCQ1PCQlsU0koJDBubkp7X25sRGhqTH1JISBJIjBubiIpSXYNTwkJCQ1PCQkJbFNJKCQ2Si5TbGVqJzBubkp7X0M4bmhsXzYwaGNlSnFYJ30pSXYNTwkJCQkNTwkJCQkkNjBoX11KbC5JIEkicm1tWkhJWy9ybUkoVVpSWmlLSUVyVUtybWlLKCJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBEXzYwaER0LmN7RF9sOSlJR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwRF82MGhESUZ4WkhaSTYwaF9sOUlybUkoIkl0SWxDZG5KOWNJKEknLCcsSSQwbm5Ke19ubERoSSlJdEkiKSlJNkkvbUkoZHRsOSA2dC5je0RfbDkpSSI7DU8JCQkJJDYwaF9dSmwuXzZKOC5oSSBJImRJInQkNjBoX11KbC47DU8JCQkNTwkJCWZJY25EY0l2DU8JCQkJDU8JCQkJJERoSmRfbmxEaEkgSSI2MGhjZUpxWElybUkoJyJJdElsQ2RuSjljSShJIicsJyIsSSQwbm5Ke19ubERoSSlJdEkiJylJQW1FSSI7DU8JCQkNTwkJCWYNTwkJDU8JCWYNTwkJDU8JCSQuSmhfMG5uSntfNjBoREkgSWMxZG5KOWNJKEknLCcsSSQ4RGNxX2VxSjhkaiRDY0M8Y3FfbDlqJzhEY3FfZXFKOGQnfX1qJy5KaF8wbm5Ke182MGhEJ31JKTsNTwkJDU8JCWxTKEkkLkpoXzBubkp7XzYwaERqTH1JISBJIiJJKUl2DU8JCQkNTwkJCWxTSSgkNkouU2xlaicwbm5Ke19DOG5obF82MGhjZUpxWCd9KUl2DU8JCQkJDU8JCQkJJERoSmRfbmxEaEkgSSJkdGw5SW0vS0lybUkoSVVaUlppS0lFclVLcm1pSygiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwRF82MGhEdC5je0RfbDkpSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERfNjBoRElGeFpIWkk2MGhfbDlJcm1JKCJJdElsQ2RuSjljSShJJywnLEkkLkpoXzBubkp7XzYwaERJKUl0SSIpSSlJQW1FSSI7DU8JCQkJJDYwaF9dSmwuXzZKOC5oSSBJImRJIjsNTwkJCQkNTwkJCWZJY25EY0l2DU8JCQkJDU8JCQkJJERoSmRfbmxEaEkgSSI2MGhjZUpxWEltL0tJcm1JKCciSXRJbENkbko5Y0koSSInLCciLEkkLkpoXzBubkp7XzYwaERJKUl0SSInKUlBbUVJIjsNTwkJCQ1PCQkJZg1PCQkJDU8JCWYNTwkJDU8JCWxTSSgkOERjcV9lcUo4ZGokQ2NDPGNxX2w5aic4RGNxX2VxSjhkJ319aicwbm5Ke19ETUpxaCd9KUl2SSREaEpkX25sRGhJIEkiIjtJJDYwaF9dSmwuSSBJIiI7SSQ2MGhfXUpsLl82SjguaEkgSSIiO0lmDU8JCQ1PCQkkRD5uX0RjbmM2aEkgSSJVWlJaaUtJZHRsOSxJZHQwOGhKcSxJZHQ5MGhjLElkdERNSnFoX0RoSnFYLElpeEFIX1JabWFLeChkdFM4bm5fRGhKcVgpSTBESVM4bm5fRGhKcVgsSWR0MVNsY245RCxJZHRobGhuYyxJZHQ2MGhjZUpxWCxJZHQwbmhfLjBDYyxJZHQ2SkNDXy44QyxJZHQwbm5Ke182SkNDLElkdFNsMWM5LElkdGgwZUQsSWN0LmN7RF9xYzA5LEljdDBubkp7X3EwaGMsSWN0cTBobC5lLEljdApKaGNfLjhDLEljdApKaGNELEljdApsY3tfYzlsaCxJY3RjOWxoOTBoYyxJY3RjOWxoSnEsSWN0cWMwREouSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXYkNjBoX11KbC5mUlpHS0lbL3JtSSJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBESWNJL21JKGR0bDkgY3QuY3tEX2w5KUlGeFpIWkl2JERoSmRfbmxEaGYwZGRxSgpjIHVJQW1FSTBubkp7X0MwbC4gdSJJdEkke01jcWNfOTBoY0l0SSJJL0hFWkhJTm9JIkl0SSRTbDFjOUl0SSQuY3tEX0RKcWhfPFhJdEkiSSJJdEkkLmN7RF85bHFjNmhsSi5fPFhJdEkiSVJyc3JLSSJJdEkkNkRoMHFoSXRJIiwiSXRJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTw1PCQkkRD5uXzZKOC5oSSBJIlVaUlppS0lpL3dtSygqKUkwREk2SjguaElHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJdiQ2MGhfXUpsLl82SjguaGZGeFpIWkl2JERoSmRfbmxEaGYwZGRxSgpjIHVJQW1FSTBubkp7X0MwbC4gdSJJdEkke01jcWNfOTBoYzsNTwkJJEQ+bl8uY3tESSBJIiI7DU8JCQ1PCQliYkkjIyMjIyMjIyMjIyMjIyMjSVVNSntJSlNJMEk2MGhjZUpxWEkjIyMjIyMjIyMjIyMjIyMjIw1PCQlsU0koJDlKSSAgSSI2MGgiSTAuOUkkNjBoY2VKcVhJISBJJydJMC45SSREODwwNmhsSi5JICBJJycpSXYNTw1PCQkJJDBubkp7X0Q4PF82MGhESSBJaHE4YzsNTwkJCQ1PCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUlBbUVJJDZKLlNsZWonRGNKXzZKLmhxSm4nfUlBbUVJJDYwaGNlSnFYX2w5SUFtRUkkCmxje19oY0NkbjBoY0khIEkicUREIilJdg1PDU8JCQkJJHFjXzYwaEkgSWVjaF84cW4oSSQ2MGhjZUpxWF9sOUkpOw1PDU8JCQkJbFNJKCRxY182MGhJISBJJF9hWktqJzYwaGNlSnFYJ31JL0hJRDg8RGhxSShJJF9VWkgyWkhqJ0haNHdaVUtfd0hyJ30sSS1JdSxJdUkpSSEgSSdiJ0kvSEkkX2FaS2onNkRoMHFoJ31JICBJdUkvSElEODxEaHFJKEkkX1VaSDJaSGonSFo0d1pVS193SHInfSxJLUk9SSlJICBJJ2JiJ0kvSElEaHFkSkRJKCRfVVpIMlpIaidIWjR3WlVLX3dIcid9LEkiOUogNjBoIkkpSSEgIElTMG5EY0kpSXYNTwkJCQkJJHFjXzhxbkkgSWMxZG5KOWNJKEkibC45YzF0ZE1kIixJRGhxaEpuSntjcUkoSSRfVVpIMlpIaidweHBfVVpSRyd9SSlJKTsNTwkJCQkJJHFjXzhxbkkgSXFjRGNoSShJJHFjXzhxbkkpOw1PDU8JCQkJCWxTKEkoRDg8RGhxSShJJF9VWkgyWkhqJ0haNHdaVUtfd0hyJ30sSS1JdSxJdUkpSSEgSSdiJ0kvSElEODxEaHFJKEkkX1VaSDJaSGonSFo0d1pVS193SHInfSxJLUk9SSlJICBJJ2JiJylJQW1FSSRfYVpLaic2RGgwcWgnfUlBbUVJJF9hWktqJzZEaDBxaCd9SSEgSXVJKUl2DU8JCQkJCUkkcWNfNjBoSXQgSSJiZDBlY2IidGwuaAowbigkX2FaS2onNkRoMHFoJ30pOw1PCQkJCQlmDU8JCQkJCQ1PCQkJCQlNYzA5Y3EoInhLS3BidXRMSWdMdUlzSgpjOUlwY3FDMC5jLmhuWCIpOw1PCQkJCQlNYzA5Y3EoIlJKNjBobEouOkl2JHFjXzhxbmZ2JHFjXzYwaGZiIik7DU8JCQkJCTlsYygiSGM5bHFjNmgiKTsNTwkJCQlmDU8JCQlmDU8NTwkJCWxTSSghJDYwaGNlSnFYX2w5KUkkNjBoY2VKcVhfbDlJIEknLkpoSTljaGM2aGM5JzsNTwkJCQ1PCQkJbFNJKCQwbm5Ke19ubERoakx9SSEgSSIwbm4iKUl2DU8JCQkJbFNJKCEkOERjcV9lcUo4ZGokQ2NDPGNxX2w5aic4RGNxX2VxSjhkJ319aicwbm5Ke19ETUpxaCd9SUFtRUkhbC5fMHFxMFgoSSQ2MGhjZUpxWF9sOSxJJDBubkp7X25sRGhJKSlJJDYwaGNlSnFYX2w5SSBJJy5KaEk5Y2hjNmhjOSc7DU8JCQlmDU8NTwkJCWxTSSgkLkpoXzBubkp7XzYwaERqTH1JISBJIiIpSXYNTwkJCQlsU0koISQ4RGNxX2VxSjhkaiRDY0M8Y3FfbDlqJzhEY3FfZXFKOGQnfX1qJzBubkp7X0RNSnFoJ31JQW1FSWwuXzBxcTBYKEkkNjBoY2VKcVhfbDksSSQuSmhfMG5uSntfNjBoREkpKUkkNjBoY2VKcVhfbDlJIEknLkpoSTljaGM2aGM5JzsNTwkJCWYNTw1PCQkJbFNJKEkkNjBoX2wuU0pqJDYwaGNlSnFYX2w5fWonRE1Ke19EODwnfUkpSXYNTw1PCQkJCWxTSShJJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJ0RNSntfRDg8J31JICBJdUkpSSRlY2hfNjBoREkgSWVjaF9EODxfNjBoREkoSSQ2MGhjZUpxWF9sOUkpOw1PCQkJCWNuRGNJdkkkZWNoXzYwaERJIEkkNjBoY2VKcVhfbDk7SSQwbm5Ke19EODxfNjBoREkgSVMwbkRjO0lmDU8NTwkJCWZJY25EY0l2DU8NTwkJCQlsU0koSSQ2Si5TbGVqJ0RNSntfRDg8XzYwaEQnfUkpSSRlY2hfNjBoREkgSWVjaF9EODxfNjBoREkoSSQ2MGhjZUpxWF9sOUkpOw1PCQkJCWNuRGNJdkkkZWNoXzYwaERJIEkkNjBoY2VKcVhfbDk7SSQwbm5Ke19EODxfNjBoREkgSVMwbkRjO0lmDU8NTwkJCWYNTw1PCQkJbFNJKCQ2MGhfbC5TSmokNjBoY2VKcVhfbDl9aicuY3tEX0RKcWgnfSlJJC5je0RfREpxaF88WEkgSSQ2MGhfbC5TSmokNjBoY2VKcVhfbDl9aicuY3tEX0RKcWgnfTsNTwkJCWxTSSgkNjBoX2wuU0pqJDYwaGNlSnFYX2w5fWonLmN7RF9DREpxaCd9KUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkNjBoX2wuU0pqJDYwaGNlSnFYX2w5fWonLmN7RF9DREpxaCd9Ow1PCQkJbFNJKCQ2MGhfbC5TSmokNjBoY2VKcVhfbDl9aicuY3tEXy44QzxjcSd9KUkkNkouU2xlaicuY3tEXy44QzxjcSd9SSBJJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJy5je0RfLjhDPGNxJ307DU8NTwkJCWxTSSgkNkRoMHFoKUl2DU8JCQkJJDZEaDBxaEkgSSQ2RGgwcWhJLUl1Ow1PCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSSpJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTwkJCWYNTw1PCQkJJDhxbl9kMGVjSSBJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SXRJZWNoXzhxbkkoSSQ2MGhjZUpxWF9sOUkpOw1PCQkJJDhEY3FfPjhjcVhJIEkiOUogNjBoJjBDZDs2MGhjZUpxWCAiSXRJJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJzBuaF8uMENjJ307DU8JCQkNTwkJCWxTKEkkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JKUkkNjAuSi5sNjBuSSBJJDhxbl9kMGVjSXRJImIiO0ljbkRjSSQ2MC5KLmw2MG5JIEkkcHhwX1VaUkd0Ij85SiA2MGgmNjBoY2VKcVggIkl0SSQ2MGhfbC5TSmokNjBoY2VKcVhfbDl9aicwbmhfLjBDYyd9Ow1PCQkJDU8JCQlsU0koJDZKLlNsZWonMG5uSntfQzhuaGxfNjBoY2VKcVgnfSlJdg1PCQkNTwkJCQkkZWNoXzYwaERJIElEaHFfcWNkbjA2Y0koSSJ8IixJIicsJyIsSSRlY2hfNjBoREkpOw1PCQkJCSRdSmwuXzYwaGNlSnFYSSBJInJtbVpISVsvcm1JKFVaUlppS0lFclVLcm1pSygiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwRF82MGhEdC5je0RfbDkpSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERfNjBoRElGeFpIWkk2MGhfbDlJcm1JKCciSXRJJGVjaF82MGhESXRJIicpKUk2SS9tSShkdGw5IDZ0LmN7RF9sOSlJIjsNTwkJCQkke01jcWNfNjBoY2VKcVhJIEkiIjsNTwkJCQkNTwkJCWZJY25EY0l2DU8JCQkJDU8JCQkJbFNJKEkkMG5uSntfRDg8XzYwaERJKUl2DU8JCQkJCQ1PCQkJCQkkZWNoXzYwaERJIElEaHFfcWNkbjA2Y0koSSJ8IixJIicsJyIsSSRlY2hfNjBoREkpOw1PCQkJCQkke01jcWNfNjBoY2VKcVhJIEkiNjBoY2VKcVhJcm1JKCciSXRJJGVjaF82MGhESXRJIicpSUFtRUkiOw1PCQkJCQ1PCQkJCWZJY25EY0l2DU8JCQkJCQ1PCQkJCQkke01jcWNfNjBoY2VKcVhJIEkiNjBoY2VKcVhJIEkndiRlY2hfNjBoRGYnSUFtRUkiOw1PCQkJCQ1PCQkJCWYNTwkJCQkNTwkJCQkkXUpsLl82MGhjZUpxWEkgSSIiOw1PCQkJDU8JCQlmDU8JCQkNTwkJCWxTSSgkCmxje19oY0NkbjBoY0kgIEkicUREIilJdg1PCQkJCQ1PCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lsOSxJMDhoSnEsSTkwaGMsSURNSnFoX0RoSnFYLElTOG5uX0RoSnFYLEkxU2xjbjlELElobGhuYyxJNjBoY2VKcVgsSTBuaF8uMENjSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXYkXUpsLl82MGhjZUpxWGZGeFpIWkl2JHtNY3FjXzYwaGNlSnFYZjBkZHFKCmMgdSJJdEkke01jcWNfOTBoY0l0SSJJL0hFWkhJTm9JOTBoY0lFWlVpSVJyc3JLSUwsIkl0SSQ2Si5TbGVqJ3FERF8uOEM8Y3EnfTsNTwkJCQ1PCQkJZkljbkRjSXYNTwkJCQkNTwkJCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY19ESnFoXzYwaF8ndCQ2MGhjZUpxWF9sOX1JKSlJJC5je0RfREpxaF88WEkgSSRfVVpVVXIvbWonOW5jX0RKcWhfNjBoXyd0JDYwaGNlSnFYX2w5fTsNTwkJCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fNjBoXyd0JDYwaGNlSnFYX2w5fUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fNjBoXyd0JDYwaGNlSnFYX2w5fTsNTwkJCQkNTwkJCQkkRD5uX0RjbmM2aEkgSSJVWlJaaUtJZHRsOSxJZHQwOGhKcSxJZHQ5MGhjLElkdERNSnFoX0RoSnFYLElpeEFIX1JabWFLeChkdFM4bm5fRGhKcVgpSTBESVM4bm5fRGhKcVgsSWR0MVNsY245RCxJZHRobGhuYyxJZHQ2MGhjZUpxWCxJZHQwbmhfLjBDYyxJZHQ2SkNDXy44QyxJZHQwbm5Ke182SkNDLElkdFNsMWM5LElkdGgwZUQsSWN0LmN7RF9xYzA5LEljdDBubkp7X3EwaGMsSWN0cTBobC5lLEljdApKaGNfLjhDLEljdApKaGNELEljdApsY3tfYzlsaCxJY3RjOWxoOTBoYyxJY3RjOWxoSnEsSWN0cWMwREouSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXYkXUpsLl82MGhjZUpxWGZSWkdLSVsvcm1JIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERJY0kvbUkoZHRsOSBjdC5je0RfbDkpSUZ4WkhaSXYke01jcWNfNjBoY2VKcVhmMGRkcUoKYyB1Ikl0SSR7TWNxY185MGhjSXRJIkkvSEVaSElOb0kiSXRJJFNsMWM5SXRJJC5je0RfREpxaF88WEl0SSJJIkl0SSQuY3tEXzlscWM2aGxKLl88WEl0SSJJUnJzcktJIkl0SSQ2RGgwcWhJdEkiLCJJdEkkNkouU2xlaicuY3tEXy44QzxjcSd9Ow1PCQkJCSREPm5fNko4LmhJIEkiVVpSWmlLSWkvd21LKCopSTBESTZKOC5oSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXYkXUpsLl82MGhjZUpxWGZGeFpIWkl2JHtNY3FjXzYwaGNlSnFYZjBkZHFKCmMgdSJJdEkke01jcWNfOTBoYzsNTwkJCWYNTwkJDU8JCWZJY25EY2xTSSgkOUpJICBJJ24wRGguY3tEJylJdg1PCQkJYmJJIyMjIyMjIyMjIyMjIyMjI0lVTUp7STBubkkuY3tESSMjIyMjIyMjIyMjIyMjIyMjCQkJDU8JCQlsU0koJDZEaDBxaClJdg1PCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSS1JdTsNTwkJCQkkNkRoMHFoSSBJJDZEaDBxaEkqSSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQlmDU8NTwkJCWxTKEkkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JQW1FSSQ2Si5TbGVqJ0RjSl82Si5ocUpuJ31JQW1FSSRfYVpLaic2RGgwcWgnfUkpSXYNTwkNTwkJCQlsU0koRDg8RGhxSShJJF9VWkgyWkhqJ0haNHdaVUtfd0hyJ30sSS1JdSxJdUkpSSEgSSdiJ0kvSEkkX2FaS2onNkRoMHFoJ31JICBJdUkpSXYNTw1PCQkJCQkkcWNfOHFuSSBJYzFkbko5Y0koSSJsLjljMXRkTWQiLElEaHFoSm5Ke2NxSShJJF9VWkgyWkhqJ3B4cF9VWlJHJ31JKUkpOw1PCQkJCQkkcWNfOHFuSSBJcWNEY2hJKEkkcWNfOHFuSSk7DU8JCQkJCQkNTwkJCQkJJHFjXzhxbkl0IEkibjBEaC5je0RiIjsNTwkJCQkJCQ1PCQkJCQlsUyhEODxEaHFJKEkkX1VaSDJaSGonSFo0d1pVS193SHInfSxJLUl1LEl1SSlJISBJJ2InSUFtRUkkX2FaS2onNkRoMHFoJ31JISBJdUkpSXYNTwkJCQkJCSRxY184cW5JdCBJImQwZWNiInRsLmgKMG4oJF9hWktqJzZEaDBxaCd9KXQiYiI7DU8JCQkJCWYNTwkJCQkJDU8JCQkJCU1jMDljcSgieEtLcGJ1dExJZ0x1SXNKCmM5SXBjcUMwLmMuaG5YIik7DU8JCQkJCU1jMDljcSgiUko2MGhsSi46SXYkcWNfOHFuZiIpOw1PCQkJCQk5bGMoIkhjOWxxYzZoIik7DU8JCQkJZg1PCQkJZg1PCQkJCQ1PCQkJJDhxbl9kMGVjSSBJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SXRJIm4wRGguY3tEIjsNTwkJCSQ4RGNxXz44Y3FYSSBJIjlKIG4wRGguY3tEIjsNTwkJCQ1PCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUkpSSQ2MC5KLmw2MG5JIEkkOHFuX2QwZWNJdEkiYiI7SWNuRGNJJDYwLkoubDYwbkkgSSRweHBfVVpSR3QiPzlKIG4wRGguY3tEIjsNTwkJCQ1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfREpxaF9uMERoLmN7RCd9SSkpSSQuY3tEX0RKcWhfPFhJIEkkX1VaVVVyL21qJzluY19ESnFoX24wRGguY3tEJ307DU8JCQljbkRjSSQuY3tEX0RKcWhfPFhJIEkiOTBoYyI7DU8JCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fbjBEaC5je0QnfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fbjBEaC5je0QnfTsNTwkJCWNuRGNJJC5je0RfOWxxYzZobEouXzxYSSBJIkVaVWkiOw1PCQkJDU8JCQkkRD5uX0RjbmM2aEkgSSJVWlJaaUtJZHRsOSxJZHQwOGhKcSxJZHQ5MGhjLElkdERNSnFoX0RoSnFYLElpeEFIX1JabWFLeChkdFM4bm5fRGhKcVgpSTBESVM4bm5fRGhKcVgsSWR0MVNsY245RCxJZHRobGhuYyxJZHQ2MGhjZUpxWCxJZHQwbmhfLjBDYyxJZHQ2SkNDXy44QyxJZHQwbm5Ke182SkNDLElkdFNsMWM5LElkdGgwZUQsSWN0LmN7RF9xYzA5LEljdDBubkp7X3EwaGMsSWN0cTBobC5lLEljdApKaGNfLjhDLEljdApKaGNELEljdApsY3tfYzlsaCxJY3RjOWxoOTBoYyxJY3RjOWxoSnEsSWN0cWMwREouSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXYkNjBoX11KbC5mUlpHS0lbL3JtSSJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBESWNJL21JKGR0bDkgY3QuY3tEX2w5KUlGeFpIWkl2JERoSmRfbmxEaGYwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGNJdEkiSS9IRVpISU5vSSJJdEkkLmN7RF9ESnFoXzxYSXRJIkkiSXRJJC5je0RfOWxxYzZobEouXzxYSXRJIklScnNyS0kiSXRJJDZEaDBxaEl0SSIsIkl0SSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkkRD5uXzZKOC5oSSBJIlVaUlppS0lpL3dtSygqKUkwREk2SjguaElHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJdiQ2MGhfXUpsLl82SjguaGZGeFpIWkl2JERoSmRfbmxEaGYwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGM7DU8JCQ1PCQlmSWNuRGNsU0koJDlKSSAgSSdoMGVEJylJdg1PCQkJYmJJIyMjIyMjIyMjIyMjIyMjI0lVYzA2TUkuY3tESTxYSWgwZURJIyMjIyMjIyMjIyMjIyMjIyMJCQkNTwkJCWxTSSgkNkRoMHFoKUl2DU8JCQkJJDZEaDBxaEkgSSQ2RGgwcWhJLUl1Ow1PCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSSpJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTwkJCWYNTw1PCQkJJGgwZUkgSXEwezhxbjljNko5YyhJJF9hWktqJ2gwZSd9SSk7DU8NTwkJCSRoMGVJIElNaENuRGRjNmwwbjZNMHFESShJRGhxbGRfaDBlREkoSURocWxkRG4wRE1jREkoSWhxbENJKEkkaDBlSSlJKUkpLElabUtfaS9zcEFLLEkkNkouU2xlaic2TTBxRGNoJ31JKTsNTwkJCSRjLjZKOWM5X2gwZUkgSXEwezhxbmMuNko5YyhEaHFfcWNkbjA2YygwcXEwWCgiJiNMZzU7IixJIiY+OEpoOyIsSSImMENkOyIpLEkwcXEwWCgiJyIsSSciJyxJIiYiKSxJJGgwZSkpOw1PCQkJDU8JCQk5Y1NsLmMoSSdpUi93RVVLQWEnLEkkaDBlSSk7DU8JCQkNTwkJCSQ4cW5fZDBlY0kgSSQ2Si5TbGVqJ01oaGRfTUpDY184cW4nfUl0SSJoMGVEYiJJdEkkYy42SjljOV9oMGU7DU8JCQkkOERjcV8+OGNxWEkgSSI5SiBoMGVEJjBDZDtoMGUgIkl0SSRjLjZKOWM5X2gwZTsNTwkJCQ1PCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUkpSSQ2MC5KLmw2MG5JIEkkOHFuX2QwZWNJdEkiYiI7SWNuRGNJJDYwLkoubDYwbkkgSSRweHBfVVpSR3QiPzlKIGgwZUQmaDBlICJJdEkkYy42SjljOV9oMGU7DU8NTwkJCWxTKEkkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JQW1FSSQ2Si5TbGVqJ0RjSl82Si5ocUpuJ31JKUl2DU8NTwkJCQlsU0koSUQ4PERocUkoSSRfVVpIMlpIaidIWjR3WlVLX3dIcid9LEktSXUsSXVJKUkhIEknYidJL0hJJF9hWktqJzZEaDBxaCd9SSAgSXVJL0hJRDg8RGhxSShJJF9VWkgyWkhqJ0haNHdaVUtfd0hyJ30sSS1JPUkpSSAgSSdiYidJL0hJRGhxZEpESSgkX1VaSDJaSGonSFo0d1pVS193SHInfSxJIjlKIGgwZUQiSSlJISAgSVMwbkRjKUl2DU8JDU8JCQkJCSRxY184cW5JIEljMWRuSjljSShJImwuOWMxdGRNZCIsSURocWhKbkp7Y3FJKEkkX1VaSDJaSGoncHhwX1VaUkcnfUkpSSk7DU8JCQkJCSRxY184cW5JIElxY0RjaEkoSSRxY184cW5JKTsNTwkJCQkJCQ1PCQkJCQkkcWNfOHFuSXQgSSJoMGVEYiJJdEkkYy42SjljOV9oMGVJdEkiYiI7DU8JCQkJCQkNTwkJCQkJbFMoSSRfYVpLaic2RGgwcWgnfUlXSXVJKUl2DU8JCQkJCQkkcWNfOHFuSXQgSSJkMGVjYiJ0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSl0ImIiOw1PCQkJCQlmDU8JCQkJCQ1PCQkJCQlNYzA5Y3EoInhLS3BidXRMSWdMdUlzSgpjOUlwY3FDMC5jLmhuWCIpOw1PCQkJCQlNYzA5Y3EoIlJKNjBobEouOkl2JHFjXzhxbmYiKTsNTwkJCQkJOWxjKCJIYzlscWM2aCIpOw1PCQkJCWYNTwkJCWYNTwkJCQ1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfREpxaF9oMGVEJ31JKSlJJC5je0RfREpxaF88WEkgSSRfVVpVVXIvbWonOW5jX0RKcWhfaDBlRCd9Ow1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfOWxxYzZobEouX2gwZUQnfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5faDBlRCd9Ow1PDU8JCQkkaDBlSSBJQCQ5PC1XRDBTY0Q+bkkoSSRoMGVJKTsNTw1PCQkJJEQ+bl9EY25jNmhJIEkiVVpSWmlLSWR0bDksSWR0MDhoSnEsSWR0OTBoYyxJZHRETUpxaF9EaEpxWCxJaXhBSF9SWm1hS3goZHRTOG5uX0RoSnFYKUkwRElTOG5uX0RoSnFYLElkdDFTbGNuOUQsSWR0aGxobmMsSWR0NjBoY2VKcVgsSWR0MG5oXy4wQ2MsSWR0NkpDQ18uOEMsSWR0MG5uSntfNkpDQyxJZHRTbDFjOSxJZHRoMGVELEljdC5je0RfcWMwOSxJY3Qwbm5Ke19xMGhjLEljdHEwaGwuZSxJY3QKSmhjXy44QyxJY3QKSmhjRCxJY3QKbGN7X2M5bGgsSWN0YzlsaDkwaGMsSWN0YzlsaEpxLEljdHFjMERKLklHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJZElybW1aSElbL3JtSSJJdElwSFpHckJJdEkiX2gwZURJaElKLkkoaHQuY3tEX2w5IGR0bDkpSXYkNjBoX11KbC5mUlpHS0lbL3JtSSJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBESWNJL21JKGR0bDkgY3QuY3tEX2w5KUlGeFpIWkl2JERoSmRfbmxEaGZodGgwZUkgSSd2JGgwZWYnSUFtRUlkdDBkZHFKCmMgdSJJdEkke01jcWNfOTBoY0l0SSJJL0hFWkhJTm9JIkl0SSQuY3tEX0RKcWhfPFhJdEkiSSJJdEkkLmN7RF85bHFjNmhsSi5fPFhJdEkiSVJyc3JLSSJJdEkkNkRoMHFoSXRJIiwiSXRJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTwkJCSREPm5fNko4LmhJIEkiVVpSWmlLSWkvd21LKCopSTBESTZKOC5oSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXJtbVpISVsvcm1JIkl0SXBIWkdyQkl0SSJfaDBlREloSUouSShodC5je0RfbDkgZHRsOSlJdiQ2MGhfXUpsLmZGeFpIWkl2JERoSmRfbmxEaGZodGgwZUkgSSd2JGgwZWYnSUFtRUkwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGM7DU8JCQkkMG5uSntfMDZobApjXy5je0RJIElocThjOw1PDU8JCWZJY25EY2xTSSgkOUpJICBJJzFTRGMwcTZNJylJdg1PCQkJYmJJIyMjIyMjIyMjIyMjIyMjI0lVYzA2TUkuY3tESTxYSTFTbGNuOURJIyMjIyMjIyMjIyMjIyMjIyMJCQkNTwkJCWxTSSgkNkRoMHFoKUl2DU8JCQkJJDZEaDBxaEkgSSQ2RGgwcWhJLUl1Ow1PCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSSpJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTwkJCWYNTwkJCQ1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfREpxaF8xU0RjMHE2TSd9SSkpSSQuY3tEX0RKcWhfPFhJIEkkX1VaVVVyL21qJzluY19ESnFoXzFTRGMwcTZNJ307DU8JCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fMVNEYzBxNk0nfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fMVNEYzBxNk0nfTsNTwkJDU8JCQkkMVNJIElxMHs4cW45YzZKOWMoJF9hWktqJzFTJ30pOw1PDU8JCQlsU0koOW5jX0Q4PERocUkoSSQxUyxJLUl1LEl1LEkkNkouU2xlaic2TTBxRGNoJ31JKUkgIEknYicpSSQxU0kgSTluY19EODxEaHFJKEkkMVMsSUwsSS1JdSxJJDZKLlNsZWonNk0wcURjaCd9SSk7DU8JCQkNTwkJCSQxU0kgSWMxZG5KOWNJKEknYicsSSQxU0kpOw1PCQkJJDFTLjBDY0kgSSIiOw1PCQkJDU8JCQlsUyhJJF9hWktqJzFTLjBDYyd9SUFtRUkhJDZKLlNsZWonMG5uSntfMG5oXzhxbid9SSlJdg1PCQkJCSQxUy4wQ2NJIGhKaHEwLkRubGgoaHFsQygkX2FaS2onMVMuMENjJ30pKTsNTwkJCWZJY25EY2xTKDZKOC5oKCQxUylJV0l1SSlJdg1PCQkJCSQxUy4wQ2NJIGhKaHEwLkRubGgoaHFsQygkMVNqTH0pKTsNTwkJCQk4LkRjaCgkMVNqTH0pOw1PCQkJZg1PDU8JCQkkMVNJIElsQ2RuSjljKCdJJyxJJDFTKTsNTwkJCSQxU0kgSU1oQ25EZGM2bDBuNk0wcURJKElEaHFsZF9oMGVESShJRGhxbGREbjBETWNESShJaHFsQ0koSSQxU0kpSSlJKSxJWm1LXzR3L0taVSxJJDZKLlNsZWonNk0wcURjaCd9SSk7DU8NTwkJCWxTKCQxUy4wQ2MpSXYNTwkJCQkNTwkJCQkkOHFuX2QwZWNJIEkkNkouU2xlaidNaGhkX01KQ2NfOHFuJ31JdEkiMVNEYzBxNk1idiQxUy4wQ2NmYiJJdElxMHs4cW5jLjZKOWNJKElEaHFfcWNkbjA2YygwcXEwWCgiJiNMZzU7IixJIiY+OEpoOyIpLEkwcXEwWCgiJyIsSSciJyksSSQxUylJKTsNTwkJCQkkOERjcV8+OGNxWEkgSSI5SiAxU0RjMHE2TSYwQ2Q7MVMuMENjICJ0JDFTLjBDY3QiJjBDZDsxUyAiSXRJcTB7OHFuYy42SjljSShJRGhxX3FjZG4wNmMoMHFxMFgoIiYjTGc1OyIsSSImPjhKaDsiKSxJMHFxMFgoIiciLEknIicpLEkkMVMpSSk7DU8JCQkJDU8JCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUkpSSQ2MC5KLmw2MG5JIEkkOHFuX2QwZWNJdEkiYiI7SWNuRGNJJDYwLkoubDYwbkkgSSRweHBfVVpSR3QiPzlKIDFTRGMwcTZNJjFTLjBDYyAidCQxUy4wQ2N0IiYxUyAiSXRJOHFuYy42SjljSShJRGhxX3FjZG4wNmMoIiYjTGc1OyIsSSInIixJJDFTKUkpOw1PCQkJCQ1PCQkJZkljbkRjSXYNTwkJCQkNTwkJCQkkOHFuX2QwZWNJIEkkNkouU2xlaidNaGhkX01KQ2NfOHFuJ31JdEkiMVNEYzBxNk1iIkl0SXEwezhxbmMuNko5Y0koSURocV9xY2RuMDZjKDBxcTBYKCImI0xnNTsiLEkiJj44Smg7IiksSTBxcTBYKCInIixJJyInKSxJJDFTKUkpOw1PCQkJCSQ4RGNxXz44Y3FYSSBJIjlKIDFTRGMwcTZNJjBDZDsxUyAiSXRJcTB7OHFuYy42SjljSShJRGhxX3FjZG4wNmMoMHFxMFgoIiYjTGc1OyIsSSImPjhKaDsiKSxJMHFxMFgoIiciLEknIicpLEkkMVMpSSk7DU8JCQkJDU8JCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUkpSSQ2MC5KLmw2MG5JIEkkOHFuX2QwZWNJdEkiYiI7SWNuRGNJJDYwLkoubDYwbkkgSSRweHBfVVpSR3QiPzlKIDFTRGMwcTZNJjFTICJJdEk4cW5jLjZKOWNJKElEaHFfcWNkbjA2YygiJiNMZzU7IixJIiciLEkkMVMpSSk7DU8JCQkJDU8JCQkJJDFTbGNuOURJIEkxU2xjbjlEbkowOSgpOw1PCQkJCSQxU2xjbjlEXy4wQ2NJIEkwcXEwWCgpOw1PCQkJCQ1PCQkJCVNKcWMwNk1JKEkkMVNsY245REkwREkkCjBuOGNJKUl2DU8JCQkJCSQxU2xjbjlEXy4wQ2NqfUkgSSQKMG44Y2pMfTsNTwkJCQlmDU8JCQkJDU8JCQkJbFMoSWwuXzBxcTBYKCQxUyxJJDFTbGNuOURfLjBDYylJKUl2JDFTSXQgSSJ8IjtmDU8JCQkJDU8JCQkJDU8JCQlmDU8JCQkNTwkJCSQxUy4wQ2NJIEkkOTwtV0QwU2NEPm4oJDFTLjBDYyk7DU8JCQkkMVNJIEkkOTwtV0QwU2NEPm4oJDFTKTsNTw1PCQkJbFNJKEkkMVMuMENjSSlJdg1PCQkJCQ1PCQkJCWxTKEkkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JQW1FSSQ2Si5TbGVqJ0RjSl82Si5ocUpuJ31JKUl2DU8NTwkJCQkJbFNJKEQ4PERocUkoSSRfVVpIMlpIaidIWjR3WlVLX3dIcid9LEktSXUsSXVJKUkhIEknYidJL0hJJF9hWktqJzZEaDBxaCd9SSAgSXVJL0hJRDg8RGhxSShJJF9VWkgyWkhqJ0haNHdaVUtfd0hyJ30sSS1JPUkpSSAgSSdiYidJL0hJRGhxZEpESSgkX1VaSDJaSGonSFo0d1pVS193SHInfSxJIjlKIDFTRGMwcTZNIkkpSSEgIElTMG5EYylJdg1PCQkJCQkJCQ1PCQkJCQkJJHFjXzhxbkkgSSQ4cW5fZDBlY0l0SSJiIjsNTwkJCQkJCQkNTwkJCQkJCWxTKEkkX2FaS2onNkRoMHFoJ31JV0l1SSlJdg1PCQkJCQkJCSRxY184cW5JdCBJImQwZWNiInRsLmgKMG4oJF9hWktqJzZEaDBxaCd9KXQiYiI7DU8JCQkJCQlmDU8JCQkJCQkNTwkJCQkJCU1jMDljcSgieEtLcGJ1dExJZ0x1SXNKCmM5SXBjcUMwLmMuaG5YIik7DU8JCQkJCQlNYzA5Y3EoIlJKNjBobEouOkl2JHFjXzhxbmYiKTsNTwkJCQkJCTlsYygiSGM5bHFjNmgiKTsNTwkJCQkJZg1PCQkJCWYNTw1PCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lkdGw5LElkdDA4aEpxLElkdDkwaGMsSWR0RE1KcWhfRGhKcVgsSWl4QUhfUlptYUt4KGR0Uzhubl9EaEpxWClJMERJUzhubl9EaEpxWCxJZHQxU2xjbjlELElkdGhsaG5jLElkdDYwaGNlSnFYLElkdDBuaF8uMENjLElkdDZKQ0NfLjhDLElkdDBubkp7XzZKQ0MsSWR0U2wxYzksSWR0aDBlRCxJY3QuY3tEX3FjMDksSWN0MG5uSntfcTBoYyxJY3RxMGhsLmUsSWN0CkpoY18uOEMsSWN0CkpoY0QsSWN0Cmxje19jOWxoLEljdGM5bGg5MGhjLEljdGM5bGhKcSxJY3RxYzBESi5JR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSWRJcm1tWkhJWy9ybUkiSXRJcEhaR3JCSXRJIl8xU0RjMHE2TUkxU0lKLkkoMVN0LmN7RF9sOSBkdGw5KUl2JDYwaF9dSmwuZlJaR0tJWy9ybUkiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwREljSS9tSShkdGw5IGN0LmN7RF9sOSlJRnhaSFpJdiREaEpkX25sRGhmMVN0aDBlLjBDY0kgSSd2JDFTLjBDY2YnSUFtRUkxU3RoMGUKMG44YyAndiQxU2YnSUFtRUlkdDBkZHFKCmMgdSJJdEkke01jcWNfOTBoY0l0SSJJL0hFWkhJTm9JIkl0SSQuY3tEX0RKcWhfPFhJdEkiSSJJdEkkLmN7RF85bHFjNmhsSi5fPFhJdEkiSVJyc3JLSSJJdEkkNkRoMHFoSXRJIiwiSXRJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTwkJCQkkRD5uXzZKOC5oSUkgSSJVWlJaaUtJaS93bUsoKilJMERJNko4LmhJR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSWRJcm1tWkhJWy9ybUkiSXRJcEhaR3JCSXRJIl8xU0RjMHE2TUkxU0lKLkkoMVN0LmN7RF9sOSBkdGw5KUl2JDYwaF9dSmwuZkZ4WkhaSXYkRGhKZF9ubERoZjFTdGgwZS4wQ2NJIEkndiQxUy4wQ2NmJ0lBbUVJMVN0aDBlCjBuOGMgJ3YkMVNmJ0lBbUVJMGRkcUoKYyB1Ikl0SSR7TWNxY185MGhjOw1PCQkNTwkJCWZJY25EY0l2DU8JCQkJDU8JCQkJbFMoISQxUylJdg1PCQkJCQkNTwkJCQkJJHFjXzhxbkkgSWMxZG5KOWNJKEkibC45YzF0ZE1kIixJRGhxaEpuSntjcUkoSSRfVVpIMlpIaidweHBfVVpSRyd9SSlJKTsNTwkJCQkJJHFjXzhxbkkgSXFjRGNoSShJJHFjXzhxbkkpOw1PCQkJCQkJDU8JCQkJCU1jMDljcSgieEtLcGJ1dExJZ0x1SXNKCmM5SXBjcUMwLmMuaG5YIik7DU8JCQkJCU1jMDljcSgiUko2MGhsSi46SXYkcWNfOHFuZiIpOw1PCQkJCQk5bGMoIkhjOWxxYzZoIik7DU8JCQkJZg1PCQkJCQ1PCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lkdGw5LElkdDA4aEpxLElkdDkwaGMsSWR0RE1KcWhfRGhKcVgsSWl4QUhfUlptYUt4KGR0Uzhubl9EaEpxWClJMERJUzhubl9EaEpxWCxJZHQxU2xjbjlELElkdGhsaG5jLElkdDYwaGNlSnFYLElkdDBuaF8uMENjLElkdDZKQ0NfLjhDLElkdDBubkp7XzZKQ0MsSWR0U2wxYzksSWR0aDBlRCxJY3QuY3tEX3FjMDksSWN0MG5uSntfcTBoYyxJY3RxMGhsLmUsSWN0CkpoY18uOEMsSWN0CkpoY0QsSWN0Cmxje19jOWxoLEljdGM5bGg5MGhjLEljdGM5bGhKcSxJY3RxYzBESi5JR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSWRJdiQ2MGhfXUpsLmZSWkdLSVsvcm1JIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERJY0kvbUkoZHRsOSBjdC5je0RfbDkpSUZ4WkhaSXYkRGhKZF9ubERoZjFTbGNuOURJUnJRWkknJXYkMVNmJSdJQW1FSTBkZHFKCmMgdSJJdEkke01jcWNfOTBoY0l0SSJJL0hFWkhJTm9JIkl0SSQuY3tEX0RKcWhfPFhJdEkiSSJJdEkkLmN7RF85bHFjNmhsSi5fPFhJdEkiSVJyc3JLSSJJdEkkNkRoMHFoSXRJIiwiSXRJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTwkJCQkkRD5uXzZKOC5oSSBJIlVaUlppS0lpL3dtSygqKUkwREk2SjguaElHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJdiQ2MGhfXUpsLl82SjguaGZGeFpIWkl2JERoSmRfbmxEaGYxU2xjbjlESVJyUVpJJyV2JDFTZiUnSUFtRUkwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGM7DU8JCQ1PCQkJCSQxU0kgSURocV9xY2RuMDZjSShJJ3wnLEknJyxJJDFTSSk7DU8JCQlmDU8NTwkJCSQwbm5Ke18wNmhsCmNfLmN7REkgSWhxOGM7DU8JCQ1PCQlmSWNuRGNsU0koJEQ4PDA2aGxKLkkgIEknOERjcWwuU0onKUl2DU8JCQliYkkjIyMjIyMjIyMjIyMjIyMjSURNSntJOERjcUlkcUpTbG5jSSMjIyMjIyMjIyMjIyMjIyMjDU8JCQlsU0koJDZEaDBxaClJdg1PCQkJCQ1PCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSS1JdTsNTwkJCQkkNkRoMHFoSSBJJDZEaDBxaEkqSSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkNTwkJCWYNTwkJCQ1PCQkJJDhxbl9kMGVjSSBJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SXRJIjhEY3FiIkl0SThxbmMuNko5Y0koSSQ4RGNxSSk7DU8JCQkkOERjcV8+OGNxWEkgSSJEODwwNmhsSi4gOERjcWwuU0omMENkOzhEY3EgIkl0SThxbmMuNko5Y0koSSQ4RGNxSSk7DU8JCQkNTwkJCWxTSSgkQ2NDPGNxX2w5aicuMENjJ31JICBJJDhEY3FJL0hJJDhEY3FfZXFKOGRqJENjQzxjcV9sOWonOERjcV9lcUo4ZCd9fWonMG5uSntfMG5uX2M5bGgnfSlJdg1PCQkJCWxTSShsRERjaEkoSSRfVVpVVXIvbWonOW5jX0RKcWhfOERjcWwuU0onfUkpKUkkLmN7RF9ESnFoXzxYSSBJJF9VWlVVci9taic5bmNfREpxaF84RGNxbC5TSid9Ow1PCQkJCWxTSShsRERjaEkoSSRfVVpVVXIvbWonOW5jXzlscWM2aGxKLl84RGNxbC5TSid9SSkpSSQuY3tEXzlscWM2aGxKLl88WEkgSSRfVVpVVXIvbWonOW5jXzlscWM2aGxKLl84RGNxbC5TSid9Ow1PCQkJCQ1PCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lkdGw5LElkdDA4aEpxLElkdDkwaGMsSWR0RE1KcWhfRGhKcVgsSWl4QUhfUlptYUt4KGR0Uzhubl9EaEpxWClJMERJUzhubl9EaEpxWCxJZHQxU2xjbjlELElkdGhsaG5jLElkdDYwaGNlSnFYLElkdDBuaF8uMENjLElkdDZKQ0NfLjhDLElkdDBubkp7XzZKQ0MsSWR0U2wxYzksSWR0aDBlRCxJY3QuY3tEX3FjMDksSWN0MG5uSntfcTBoYyxJY3RxMGhsLmUsSWN0CkpoY18uOEMsSWN0CkpoY0QsSWN0Cmxje19jOWxoLEljdGM5bGg5MGhjLEljdGM5bGhKcSxJY3RxYzBESi5JR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSWRJUlpHS0lbL3JtSSJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBESWNJL21JKGR0bDkgY3QuY3tEX2w5KUlGeFpIWkkwOGhKcUkgSSd2JDhEY3FmJ0lBbUVJMGRkcUoKYyBMSS9IRVpISU5vSSJJdEkkLmN7RF9ESnFoXzxYSXRJIkkiSXRJJC5je0RfOWxxYzZobEouXzxYSXRJIklScnNyS0kiSXRJJDZEaDBxaEl0SSIsIkl0SSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkJJEQ+bl82SjguaEkgSSJVWlJaaUtJaS93bUsoKilJMERJNko4LmhJR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSUZ4WkhaSTA4aEpxSSBJJyQ4RGNxJ0lBbUVJMGRkcUoKYyBMIjsNTwkJCQkNTwkJCQlsUyhJJDZKLlNsZWonZHFKU2xuY18uY3tEJ31JKUl2DU8JCQkJCSQwbm5Ke18wNmhsCmNfLmN7REkgSWhxOGM7DU8JCQkJZkljbkRjSXYNTwkJCQkJJDBubkp7XzA2aGwKY18uY3tESSBJUzBuRGM7DU8JCQkJCSQuY3tEX1NKOC45SSBJUzBuRGM7CQkNTwkJCQlmDU8NTwkJCWZJY25EY0l2DU8JCQkJJDBubkp7XzA2aGwKY18uY3tESSBJUzBuRGM7DU8JCQkJJC5je0RfU0o4LjlJIElTMG5EYzsNTwkJCWYNTwkJCQ1PCQkJJDZKLlNsZWonMG5uSntfNjA2TWMnfUkgSVMwbkRjOw1PCQlmSWNuRGNsU0koJEQ4PDA2aGxKLkkgIEknMG5uLmN7RCcpSXYNTwkJCWJiSSMjIyMjIyMjIyMjIyMjIyNJRE1Ke0kwbm5JLmN7REk8WEk4RGNxSSMjIyMjIyMjIyMjIyMjIyMjDU8JCQlsU0koJDZEaDBxaClJdg1PCQkJCQ1PCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSS1JdTsNTwkJCQkkNkRoMHFoSSBJJDZEaDBxaEkqSSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkNTwkJCWYNTwkJCQ1PCQkJJDhxbl9kMGVjSSBJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SXRJIjhEY3FiIkl0SThxbmMuNko5Y0koSSQ4RGNxSSlJdEkiYi5je0QiOw1PCQkJJDhEY3FfPjhjcVhJIEkiRDg8MDZobEouIDBubi5je0QmMENkOzhEY3EgIkl0SThxbmMuNko5Y0koSSQ4RGNxSSk7DU8JCQkNTwkJCWxTKEkkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JKUkkNjAuSi5sNjBuSSBJJDhxbl9kMGVjSXRJImIiO0ljbkRjSSQ2MC5KLmw2MG5JIEkkcHhwX1VaUkd0Ij9EODwwNmhsSi4gMG5uLmN7RCY4RGNxICJJdEk4cW5jLjZKOWNJKEkkOERjcUkpOw1PCQkJDU8JCQlsU0koJApsY3tfaGNDZG4waGNJICBJInFERCIpSXYNTwkJCQkNTwkJCQkkRD5uX0RjbmM2aEkgSSJVWlJaaUtJbDksSTA4aEpxLEk5MGhjLElETUpxaF9EaEpxWCxJUzhubl9EaEpxWCxJMVNsY245RCxJaGxobmMsSTYwaGNlSnFYLEkwbmhfLjBDY0lHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJdiQ2MGhfXUpsLl82SjguaGZ7TWNxY0l2JERoSmRfbmxEaGYwOGhKcUkgSSckOERjcSdJQW1FSTBkZHFKCmMgdSJJdEkke01jcWNfOTBoY0l0SSJJL0hFWkhJTm9JOTBoY0lFWlVpSVJyc3JLSUwsIkl0SSQ2Si5TbGVqJ3FERF8uOEM8Y3EnfTsNTwkJCQ1PCQkJZkljbkRjSXYNTwkJCQkNTwkJCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY19ESnFoXzBubi5je0QnfUkpKUkkLmN7RF9ESnFoXzxYSSBJJF9VWlVVci9taic5bmNfREpxaF8wbm4uY3tEJ307DU8JCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfOWxxYzZobEouXzBubi5je0QnfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fMG5uLmN7RCd9Ow1PCQkJCQ1PCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lkdGw5LElkdDA4aEpxLElkdDkwaGMsSWR0RE1KcWhfRGhKcVgsSWl4QUhfUlptYUt4KGR0Uzhubl9EaEpxWClJMERJUzhubl9EaEpxWCxJZHQxU2xjbjlELElkdGhsaG5jLElkdDYwaGNlSnFYLElkdDBuaF8uMENjLElkdDZKQ0NfLjhDLElkdDBubkp7XzZKQ0MsSWR0U2wxYzksSWR0aDBlRCxJY3QuY3tEX3FjMDksSWN0MG5uSntfcTBoYyxJY3RxMGhsLmUsSWN0CkpoY18uOEMsSWN0CkpoY0QsSWN0Cmxje19jOWxoLEljdGM5bGg5MGhjLEljdGM5bGhKcSxJY3RxYzBESi5JR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSWRJdiQ2MGhfXUpsLmZSWkdLSVsvcm1JIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERJY0kvbUkoZHRsOSBjdC5je0RfbDkpSUZ4WkhaSXYkRGhKZF9ubERoZjA4aEpxSSBJJyQ4RGNxJ0lBbUVJMGRkcUoKYyB1Ikl0SSR7TWNxY185MGhjSXRJIkkvSEVaSElOb0kiSXRJJC5je0RfREpxaF88WEl0SSJJIkl0SSQuY3tEXzlscWM2aGxKLl88WEl0SSJJUnJzcktJIkl0SSQ2RGgwcWhJdEkiLCJJdEkkNkouU2xlaicuY3tEXy44QzxjcSd9Ow1PCQkJCSREPm5fNko4LmhJIEkiVVpSWmlLSWkvd21LKCopSTBESTZKOC5oSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaEl2JDYwaF9dSmwuXzZKOC5oZkZ4WkhaSXYkRGhKZF9ubERoZjA4aEpxSSBJJyQ4RGNxJ0lBbUVJMGRkcUoKYyB1Ikl0SSR7TWNxY185MGhjOw1PCQkJZg1PCQkJDU8JCQkkMG5uSntfMDZobApjXy5je0RJIElocThjOw1PCQkNTwkJZkljbkRjbFNJKCREODwwNmhsSi5JICBJJy5je2RKRGhEJylJdg1PCQkJYmJJIyMjIyMjIyMjIyMjIyMjI0lETUp7STBubkk4LnFjMDlJLmN7REkjIyMjIyMjIyMjIyMjIyMjIw1PCQkJbFNJKCQ2RGgwcWgpSXYNTwkJCQkkNkRoMHFoSSBJJDZEaDBxaEktSXU7DU8JCQkJJDZEaDBxaEkgSSQ2RGgwcWhJKkkkNkouU2xlaicuY3tEXy44QzxjcSd9Ow1PCQkJZg1PCQkJDU8JCQkkOHFuX2QwZWNJIEkkNkouU2xlaidNaGhkX01KQ2NfOHFuJ31JdEkiLmN7ZEpEaEQiOw1PCQkJJDhEY3FfPjhjcVhJIEkiRDg8MDZobEouIC5je2RKRGhEIjsNTwkJCQ1PCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUkpSSQ2MC5KLmw2MG5JIEkkOHFuX2QwZWNJdEkiYiI7SWNuRGNJJDYwLkoubDYwbkkgSSRweHBfVVpSR3QiP0Q4PDA2aGxKLiAuY3tkSkRoRCI7DU8JCQkNTwkJCSRoTWxEaGxDY0kgSTkwaGNJKEkiby1DLTlJeDpsOkQiLEkkX0tyc1pJKTsNTwkJCQ1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taidDY0M8Y3FfbjBEaGhsQ2MnfUkpKUl2DU8JCQkJJG4wRGhobENjSSBJOTBoY0koSSJvLUMtOUl4Omw6RCIsSSRfVVpVVXIvbWonQ2NDPGNxX24wRGhobENjJ31JKTsNTwkJCWZJY25EY0l2DU8JCQkJJG4wRGhobENjSSBJOTBoY0koSSJvLUMtOUl4Omw6RCIsSShobENjSSgpSS1JKGczTExJKklUKSlJKTsNTwkJCWYNTwkJCQ1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfREpxaF8uY3tkSkRoRCd9SSkpSSQuY3tEX0RKcWhfPFhJIEkkX1VaVVVyL21qJzluY19ESnFoXy5je2RKRGhEJ307DU8JCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fLmN7ZEpEaEQnfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fLmN7ZEpEaEQnfTsNTwkJCQ1PCQkJJEQ+bl9EY25jNmhJIEkiVVpSWmlLSWR0bDksSWR0MDhoSnEsSWR0OTBoYyxJZHRETUpxaF9EaEpxWCxJaXhBSF9SWm1hS3goZHRTOG5uX0RoSnFYKUkwRElTOG5uX0RoSnFYLElkdDFTbGNuOUQsSWR0aGxobmMsSWR0NjBoY2VKcVgsSWR0MG5oXy4wQ2MsSWR0NkpDQ18uOEMsSWR0MG5uSntfNkpDQyxJZHRTbDFjOSxJZHRoMGVELEljdC5je0RfcWMwOSxJY3Qwbm5Ke19xMGhjLEljdHEwaGwuZSxJY3QKSmhjXy44QyxJY3QKSmhjRCxJY3QKbGN7X2M5bGgsSWN0YzlsaDkwaGMsSWN0YzlsaEpxLEljdHFjMERKLklHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJZEl2JDYwaF9dSmwuZlJaR0tJWy9ybUkiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwREljSS9tSShkdGw5IGN0LmN7RF9sOSlJRnhaSFpJdiREaEpkX25sRGhmMGRkcUoKYyB1SUFtRUk5MGhjSTxjaHtjYy5JJyRuMERoaGxDYydJMC45SSckaE1sRGhsQ2MnSUpxOWNxSTxYSSJJdEkkLmN7RF9ESnFoXzxYSXRJIkkiSXRJJC5je0RfOWxxYzZobEouXzxYSXRJIklScnNyS0kiSXRJJDZEaDBxaEl0SSIsIkl0SSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkkRD5uXzZKOC5oSSBJIlVaUlppS0lpL3dtSygqKUkwREk2SjguaElHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJdiQ2MGhfXUpsLl82SjguaGZGeFpIWkl2JERoSmRfbmxEaGYwZGRxSgpjIHVJQW1FSTkwaGNJPGNoe2NjLkknJG4wRGhobENjJ0kwLjlJJyRoTWxEaGxDYyciOw1PCQkJDU8JCQkkNkouU2xlaicwbm5Ke182MDZNYyd9SSBJUzBuRGM7DU8JCQkNTwkJZkljbkRjbFNJKElsRERjaEkoJF9hWktqJzYwaDBuSmUnfSlJKUl2DU8JCQkNTwkJCWJiSSMjIyMjIyMjIyMjIyMjIyNJRE1Ke0k8WEk2MGgwbkplSSMjIyMjIyMjIyMjIyMjIyMjDU8JCQlsU0koJDZEaDBxaClJdg1PCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSS1JdTsNTwkJCQkkNkRoMHFoSSBJJDZEaDBxaEkqSSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQlmDU8NTwkJCWxTKEkkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JQW1FSSQ2Si5TbGVqJ0RjSl82Si5ocUpuJ30pSXYNTw1PCQkJCWxTSShEODxEaHFJKEkkX1VaSDJaSGonSFo0d1pVS193SHInfSxJLUl1LEl1SSlJISBJJ2InSS9ISSRfYVpLaic2RGgwcWgnfUkgIEl1SS9ISUQ4PERocUkoSSRfVVpIMlpIaidIWjR3WlVLX3dIcid9LEktST1JKUkgIEknYmInKUl2DU8JCQkJCQ1PCQkJCQkkcWNfOHFuSSBJYzFkbko5Y0koSSJsLjljMXRkTWQiLElEaHFoSm5Ke2NxSShJJF9VWkgyWkhqJ3B4cF9VWlJHJ31JKUkpOw1PCQkJCQkkcWNfOHFuSSBJcWNEY2hJKEkkcWNfOHFuSSk7DU8JCQkJCQ1PCQkJCQkkcWNfOHFuSXQgSSI2MGgwbkplYiJ0OHFuYy42SjljSShJJDYwaDBuSmVJKXQiYiI7DU8JCQkJCQ1PCQkJCQlsUyhJJF9hWktqJzZEaDBxaCd9SVdJdUkpSXYNTwkJCQkJCSRxY184cW5JdCBJImQwZWNiInRsLmgKMG4oJF9hWktqJzZEaDBxaCd9KXQiYiI7DU8JCQkJCWYNTwkJCQkJDU8JCQkJCQ1PCQkJCQlNYzA5Y3EoInhLS3BidXRMSWdMdUlzSgpjOUlwY3FDMC5jLmhuWCIpOw1PCQkJCQlNYzA5Y3EoIlJKNjBobEouOkl2JHFjXzhxbmYiKTsNTwkJCQkJOWxjKCJIYzlscWM2aCIpOw1PCQkJCWYNTwkJCWYNTwkJCQkNTwkJCSQ4cW5fZDBlY0kgSSQ2Si5TbGVqJ01oaGRfTUpDY184cW4nfUl0SSI2MGgwbkplYiJJdEk4cW5jLjZKOWNJKEkkNjBoMG5KZUkpOw1PCQkJJDhEY3FfPjhjcVhJIEkiNjBoMG5KZSAiSXRJOHFuYy42SjljSShJJDYwaDBuSmVJKTsNTw1PCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUkpSSQ2MC5KLmw2MG5JIEkkOHFuX2QwZWNJdEkiYiI7SWNuRGNJJDYwLkoubDYwbkkgSSRweHBfVVpSR3QiPzYwaDBuSmUgIkl0SThxbmMuNko5Y0koSSQ2MGgwbkplSSk7DU8NTwkJCSQuY3tEX0RKcWhfPFhJIEkoJDZKLlNsZWonNjBoMG5KZV9ESnFoJ30pST9JJDZKLlNsZWonNjBoMG5KZV9ESnFoJ31JOkkiOTBoYyI7DU8JCQkkLmN7RF85bHFjNmhsSi5fPFhJIEkoJDZKLlNsZWonNjBoMG5KZV9DREpxaCd9KUk/SSQ2Si5TbGVqJzYwaDBuSmVfQ0RKcWgnfUk6SSJFWlVpIjsNTwkJCQ1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfREpxaF82MGgwbkplJ31JKSlJJC5je0RfREpxaF88WEkgSSRfVVpVVXIvbWonOW5jX0RKcWhfNjBoMG5KZSd9Ow1PCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfOWxxYzZobEouXzYwaDBuSmUnfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fNjBoMG5KZSd9Ow1PCQkJDU8JCQkkRD5uX0RjbmM2aEkgSSJVWlJaaUtJZHRsOSxJZHQwOGhKcSxJZHQ5MGhjLElkdERNSnFoX0RoSnFYLElpeEFIX1JabWFLeChkdFM4bm5fRGhKcVgpSTBESVM4bm5fRGhKcVgsSWR0MVNsY245RCxJZHRobGhuYyxJZHQ2MGhjZUpxWCxJZHQwbmhfLjBDYyxJZHQ2SkNDXy44QyxJZHQwbm5Ke182SkNDLElkdFNsMWM5LElkdGgwZUQsSWN0LmN7RF9xYzA5LEljdDBubkp7X3EwaGMsSWN0cTBobC5lLEljdApKaGNfLjhDLEljdApKaGNELEljdApsY3tfYzlsaCxJY3RjOWxoOTBoYyxJY3RjOWxoSnEsSWN0cWMwREouSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXYkNjBoX11KbC5mUlpHS0lbL3JtSSJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBESWNJL21JKGR0bDkgY3QuY3tEX2w5KUlGeFpIWkl2JERoSmRfbmxEaGZEWEM8Sm5JIEknJDYwaDBuSmUnSUFtRUkwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGNJdEkiSS9IRVpISU5vSSJJdEkkLmN7RF9ESnFoXzxYSXRJIkkiSXRJJC5je0RfOWxxYzZobEouXzxYSXRJIklScnNyS0kiSXRJJDZEaDBxaEl0SSIsIkl0SSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkkRD5uXzZKOC5oSSBJIlVaUlppS0lpL3dtSygqKUkwREk2SjguaElHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJdiQ2MGhfXUpsLl82SjguaGZGeFpIWkl2JERoSmRfbmxEaGZEWEM8Sm5JIEknJDYwaDBuSmUnSUFtRUkwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGM7DU8NTwkJZkljbkRjSXYNTw1PCQkJYmJJIyMjIyMjIyMjIyMjIyMjI0lETUp7SUMwbC5JZDBlY0kjIyMjIyMjIyMjIyMjIyMjIw1PCQkJbFNJKCRYYzBxSSAgSScnSUFtRUkkQ0ouaE1JICBJJydJQW1FSSQ5MFhJICBJJydJQW1FSSEkLmN7RGw5KUl2DU8NTwkJCQkkNjAuSi5sNjBuSSBJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9Ow1PDU8JCQkJbFMoSSQ2Si5TbGVqJ0RoMHFoX0RsaGMnfUkgIEk9SUFtRUkkCmxje19oY0NkbjBoY0khIEkicUREIilJdg1PCQkJCQkNTwkJCQkJPHFjMFY7CQkJCQ1PCQkJCWYNTwkJCQkNTwkJCQlsUyhJJDZKLlNsZWonMG5uSntfMG5oXzhxbid9SUFtRUkkNkouU2xlaidEY0pfNkouaHFKbid9SUFtRUkkX2FaS2onNkRoMHFoJ31JKUl2DU8JDU8JCQkJCWxTSShEODxEaHFJKEkkX1VaSDJaSGonSFo0d1pVS193SHInfSxJLUl1LEl1SSlJISBJJ2InSS9ISSRfYVpLaic2RGgwcWgnfUkgIEl1SSlJdg1PCQkJCQkJDU8JCQkJCQkkcWNfOHFuSSBJYzFkbko5Y0koSSJsLjljMXRkTWQiLElEaHFoSm5Ke2NxSShJJF9VWkgyWkhqJ3B4cF9VWlJHJ31JKUkpOw1PCQkJCQkJJHFjXzhxbkkgSXFjRGNoSShJJHFjXzhxbkkpOw1PCQkJCQkJDU8JCQkJCQlsUyhEODxEaHFJKEkkX1VaSDJaSGonSFo0d1pVS193SHInfSxJLUl1LEl1SSlJISBJJ2InSUFtRUkkX2FaS2onNkRoMHFoJ31JISBJdUkpSXYNTwkJCQkJCQkkcWNfOHFuSXQgSSJkMGVjYiJ0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSl0ImIiOw1PCQkJCQkJZg1PCQkJCQkNTwkJCQkJCU1jMDljcSgieEtLcGJ1dExJZ0x1SXNKCmM5SXBjcUMwLmMuaG5YIik7DU8JCQkJCQlNYzA5Y3EoIlJKNjBobEouOkl2JHFjXzhxbmYiKTsNTwkJCQkJCTlsYygiSGM5bHFjNmgiKTsNTwkJCQkJZg1PCQkJCWYNTwkJCQ1PCQkJCWxTSSgkNkRoMHFoKUl2DU8JCQkJCQ1PCQkJCQkkNkRoMHFoSSBJJDZEaDBxaEktSXU7DU8JCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSSpJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsJCQ1PCQkJCWYNTwkJCQ1PCQkJCSQ4cW5fZDBlY0kgSUQ4PERocUkoSSQ2Si5TbGVqJ01oaGRfTUpDY184cW4nfSxJTCxJRGhxbmMuSShJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SSlJLUl1SSk7DU8JCQkJJDhEY3FfPjhjcVhJIEkiIjsNTwkJCQkNTwkJCQlsU0koJApsY3tfaGNDZG4waGNJICBJInFERCIpSXYNTwkNTwkJCQkJJC5KaF8wbm5Ke182MGhESSBJMHFxMFgoKTsNTwkJCQkJDU8JCQkJCVNKcWMwNk0oJDYwaF9sLlNKSTBESSQKMG44YylJdg1PCQkJCQkJbFMoSSEkCjBuOGNqJzBubkp7X3FERCd9SSlJJC5KaF8wbm5Ke182MGhEan1JIEkkCjBuOGNqJ2w5J307DU8JCQkJCWYNTwkJCQkJDU8JCQkJCWxTKEk2SjguaCgkLkpoXzBubkp7XzYwaEQpSSlJdg1PDU8JCQkJCQlsU0koJDZKLlNsZWonMG5uSntfQzhuaGxfNjBoY2VKcVgnfSlJdg1PCQkJCQkJCQ1PCQkJCQkJCSQuSmhfMG5uSntfNjBoREkgSSJsOUltL0tJcm1JKElVWlJaaUtJRXJVS3JtaUsoIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERfNjBoRHQuY3tEX2w5KUlHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBEXzYwaERJRnhaSFpJNjBoX2w5SXJtSSgiSXRJbENkbko5Y0koSScsJyxJJC5KaF8wbm5Ke182MGhESSlJdEkiKUkpSUFtRUkiOw1PCQkJCQkJDU8JCQkJCQlmSWNuRGNJdg1PCQkJCQkJCQ1PCQkJCQkJCSQuSmhfMG5uSntfNjBoREkgSSI2MGhjZUpxWEltL0tJcm1JKCciSXRJbENkbko5Y0koSSInLCciLEkkLkpoXzBubkp7XzYwaERJKUl0SSInKUlBbUVJIjsNTwkJCQkJCQ1PCQkJCQkJZg1PCQkJCQkJDU8JCQkJCWZJY25EY0kkLkpoXzBubkp7XzYwaERJIEkiIjsNTwkJCQkJDU8JCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lsOSxJMDhoSnEsSTkwaGMsSURNSnFoX0RoSnFYLElTOG5uX0RoSnFYLEkxU2xjbjlELElobGhuYyxJNjBoY2VKcVgsSTBuaF8uMENjSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaEl2JDYwaF9dSmwuXzZKOC5oZkZ4WkhaSXYkLkpoXzBubkp7XzYwaERmdiREaEpkX25sRGhmMGRkcUoKYyB1IjsNTwkJCQkJDU8JCQkJCWxTSSgkNkouU2xlaidxRERfQ2hYZGMnfSlJdg1PCQkJCQkJDU8JCQkJCQkkRD5uX0RjbmM2aEl0IEkiSUFtRUkwbm5Ke19DMGwuIHUiOw1PCQkJCQkNTwkJCQkJZg1PCQkJCQkNTwkJCQkJJEQ+bl9EY25jNmhJdCBJJHtNY3FjXzkwaGNJdEkiSS9IRVpISU5vSTkwaGNJRVpVaUlScnNyS0lMLCJJdEkkNkouU2xlaidxRERfLjhDPGNxJ307DU8JCQkJDU8JCQkJZkljbkRjSXYNTwkJCQkJDU8JCQkJCWxTSShsRERjaEkoSSRfVVpVVXIvbWonOW5jX0RKcWhfQzBsLid9SSkpSSQuY3tEX0RKcWhfPFhJIEkkX1VaVVVyL21qJzluY19ESnFoX0MwbC4nfTsNTwkJCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfOWxxYzZobEouX0MwbC4nfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fQzBsLid9Ow1PCQkJCQkNTwkJCQkJJEQ+bl9EY25jNmhJIEkiVVpSWmlLSWR0bDksSWR0MDhoSnEsSWR0OTBoYyxJZHRETUpxaF9EaEpxWCxJaXhBSF9SWm1hS3goZHRTOG5uX0RoSnFYKUkwRElTOG5uX0RoSnFYLElkdDFTbGNuOUQsSWR0aGxobmMsSWR0NjBoY2VKcVgsSWR0MG5oXy4wQ2MsSWR0NkpDQ18uOEMsSWR0MG5uSntfNkpDQyxJZHRTbDFjOSxJZHRoMGVELEljdC5je0RfcWMwOSxJY3Qwbm5Ke19xMGhjLEljdHEwaGwuZSxJY3QKSmhjXy44QyxJY3QKSmhjRCxJY3QKbGN7X2M5bGgsSWN0YzlsaDkwaGMsSWN0YzlsaEpxLEljdHFjMERKLklHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJZEl2JDYwaF9dSmwuZlJaR0tJWy9ybUkiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwREljSS9tSShkdGw5IGN0LmN7RF9sOSlJRnhaSFpJdiREaEpkX25sRGhmMGRkcUoKYyB1SUFtRUkwbm5Ke19DMGwuIHUiSXRJJHtNY3FjXzkwaGNJdEkiSS9IRVpISU5vSSJJdEkkU2wxYzlJdEkkLmN7RF9ESnFoXzxYSXRJIkkiSXRJJC5je0RfOWxxYzZobEouXzxYSXRJIklScnNyS0kiSXRJJDZEaDBxaEl0SSIsIkl0SSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkJCSREPm5fNko4LmhJIEkiVVpSWmlLSWkvd21LKCopSTBESTZKOC5oSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaEl2JDYwaF9dSmwuXzZKOC5oZkZ4WkhaSXYkRGhKZF9ubERoZjBkZHFKCmMgdUlBbUVJMG5uSntfQzBsLiB1Ikl0SSR7TWNxY185MGhjOw1PCQkJCQ1PCQkJCWYNTwkJCWYNTwkNTwkJCWJiSSMjIyMjIyMjIyMjIyMjIyNJVU1Ke0kuY3tESTxYSVhjMHFJIyMjIyMjIyMjIyMjIyMjIyMNTwkJCWxTSSgkWGMwcUkhIEknJ0kwLjlJJENKLmhNSSAgSScnSTAuOUkkOTBYSSAgSScnKUl2DU8JCQkJbFNJKCQ2RGgwcWgpSXYNTwkJCQkJDU8JCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSS1JdTsNTwkJCQkJJDZEaDBxaEkgSSQ2RGgwcWhJKkkkNkouU2xlaicuY3tEXy44QzxjcSd9Ow1PCQkJCWYNTwkJCQkNTwkJCQlsUyhJJDZKLlNsZWonMG5uSntfMG5oXzhxbid9SUFtRUkkNkouU2xlaidEY0pfNkouaHFKbid9KUl2DU8NTwkJCQkJbFNJKEQ4PERocUkoSSRfVVpIMlpIaidIWjR3WlVLX3dIcid9LEktSXUsSXVJKUkhIEknYidJL0hJJF9hWktqJzZEaDBxaCd9SSAgSXVJL0hJRDg8RGhxSShJJF9VWkgyWkhqJ0haNHdaVUtfd0hyJ30sSS1JPUkpSSAgSSdiYidJL0hJbC5oCjBuKCRfYVpLaidYYzBxJ30pSTdJdTVQTEkvSElsLmgKMG4oJF9hWktqJ1hjMHEnfSlJV0k9dUxMKUl2DU8JCQkJCQkNTwkJCQkJCSRxY184cW5JIEljMWRuSjljSShJImwuOWMxdGRNZCIsSURocWhKbkp7Y3FJKEkkX1VaSDJaSGoncHhwX1VaUkcnfUkpSSk7DU8JCQkJCQkkcWNfOHFuSSBJcWNEY2hJKEkkcWNfOHFuSSk7DU8JCQkJCQkNTwkJCQkJCWxTSShsLmgKMG4oJF9hWktqJ1hjMHEnfSlJN0l1NVBMSS9ISWwuaAowbigkX2FaS2onWGMwcSd9KUlXST11TEwpSXYNTwkJCQkJCQkkWGMwcSBJOTBoYyhJJ28nLEkkX0tyc1pJKTsNTwkJCQkJCWYNTwkJCQkJCQ1PCQkJCQkJJHFjXzhxbkl0IEkkWGMwcXQiYiI7DU8JCQkJCQkNTwkJCQkJCWxTKEkkX2FaS2onNkRoMHFoJ31JV0l1SSlJdg1PCQkJCQkJCSRxY184cW5JdCBJImQwZWNiInRsLmgKMG4oJF9hWktqJzZEaDBxaCd9KXQiYiI7DU8JCQkJCQlmDU8JCQkJCQkNTwkJCQkJCQ1PCQkJCQkJTWMwOWNxKCJ4S0twYnV0TElnTHVJc0oKYzlJcGNxQzAuYy5oblgiKTsNTwkJCQkJCU1jMDljcSgiUko2MGhsSi46SXYkcWNfOHFuZiIpOw1PCQkJCQkJOWxjKCJIYzlscWM2aCIpOw1PCQkJCQlmDU8JCQkJZg1PCQkJCQ1PCQkJCSQ4cW5fZDBlY0kgSSQ2Si5TbGVqJ01oaGRfTUpDY184cW4nfUl0SSRYYzBxOw1PCQkJCSQ4RGNxXz44Y3FYSSBJIlhjMHEgIkl0SSRYYzBxOw1PCQkJCQ1PCQkJCWxTKEkkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JKUkkNjAuSi5sNjBuSSBJJDhxbl9kMGVjSXRJImIiO0ljbkRjSSQ2MC5KLmw2MG5JIEkkcHhwX1VaUkd0Ij9YYzBxICJJdEkkWGMwcTsNTwkJCQkNTwkJCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY19ESnFoXzkwaGMnfUkpKUkkLmN7RF9ESnFoXzxYSSBJJF9VWlVVci9taic5bmNfREpxaF85MGhjJ307DU8JCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfOWxxYzZobEouXzkwaGMnfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fOTBoYyd9Ow1PCQkJCQ1PCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lkdGw5LElkdDA4aEpxLElkdDkwaGMsSWR0RE1KcWhfRGhKcVgsSWl4QUhfUlptYUt4KGR0Uzhubl9EaEpxWClJMERJUzhubl9EaEpxWCxJZHQxU2xjbjlELElkdGhsaG5jLElkdDYwaGNlSnFYLElkdDBuaF8uMENjLElkdDZKQ0NfLjhDLElkdDBubkp7XzZKQ0MsSWR0U2wxYzksSWR0aDBlRCxJY3QuY3tEX3FjMDksSWN0MG5uSntfcTBoYyxJY3RxMGhsLmUsSWN0CkpoY18uOEMsSWN0CkpoY0QsSWN0Cmxje19jOWxoLEljdGM5bGg5MGhjLEljdGM5bGhKcSxJY3RxYzBESi5JR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSWRJdiQ2MGhfXUpsLmZSWkdLSVsvcm1JIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERJY0kvbUkoZHRsOSBjdC5je0RfbDkpSUZ4WkhaSXYkRGhKZF9ubERoZjkwaGNJVyBJJ3YkWGMwcWYtTHUtTHUnQW1FSTkwaGNJN0kndiRYYzBxZi1MdS1MdSdJK0lybUtaSDJBUkl1SW9aQUhJQW1FSTBkZHFKCmMgdSJJdEkke01jcWNfOTBoY0l0SSJJL0hFWkhJTm9JIkl0SSQuY3tEX0RKcWhfPFhJdEkiSSJJdEkkLmN7RF85bHFjNmhsSi5fPFhJdEkiSVJyc3JLSSJJdEkkNkRoMHFoSXRJIiwiSXRJJDZKLlNsZWonLmN7RF8uOEM8Y3EnfTsNTwkJCQkkRD5uXzZKOC5oSSBJIlVaUlppS0lpL3dtSygqKUkwREk2SjguaElHSC9zSSJJdElwSFpHckJJdEkiX2RKRGhJdiQ2MGhfXUpsLl82SjguaGZ7TWNxY0l2JERoSmRfbmxEaGY5MGhjSVcgSSd2JFhjMHFmLUx1LUx1J0FtRUk5MGhjSTdJJ3YkWGMwcWYtTHUtTHUnSStJcm1LWkgyQVJJdUlvWkFISUFtRUkwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGM7DU8JCQlmDU8JCQkNTwkJCWJiSSMjIyMjIyMjIyMjIyMjIyNJVU1Ke0kuY3tESTxYSUNKLmhNSSMjIyMjIyMjIyMjIyMjIyMjDU8JCQlsU0koJFhjMHFJISBJJydJMC45SSRDSi5oTUkhIEknJ0kwLjlJJDkwWEkgIEknJylJdg1PCQkJCWxTSSgkNkRoMHFoKUl2DU8JCQkJCSQ2RGgwcWhJIEkkNkRoMHFoSS1JdTsNTwkJCQkJJDZEaDBxaEkgSSQ2RGgwcWhJKkkkNkouU2xlaicuY3tEXy44QzxjcSd9Ow1PCQkJCWYNTwkJCQkNTwkJCQlsUyhJJDZKLlNsZWonMG5uSntfMG5oXzhxbid9SUFtRUkkNkouU2xlaidEY0pfNkouaHFKbid9KUl2DU8NTwkJCQkJbFNJKEQ4PERocUkoSSRfVVpIMlpIaidIWjR3WlVLX3dIcid9LEktSXUsSXVJKUkhIEknYidJL0hJJF9hWktqJzZEaDBxaCd9SSAgSXVJL0hJRDg8RGhxSShJJF9VWkgyWkhqJ0haNHdaVUtfd0hyJ30sSS1JPUkpSSAgSSdiYidJL0hJbC5oCjBuKCRfYVpLaidYYzBxJ30pSTdJdTVQTEkvSElsLmgKMG4oJF9hWktqJ1hjMHEnfSlJV0k9dUxMSS9ISWwuaAowbigkX2FaS2onQ0ouaE0nfSlJN0l1SS9ISWwuaAowbigkX2FaS2onQ0ouaE0nfSlJV0l1PSlJdg1PCQkJCQkJDU8JCQkJCQkkcWNfOHFuSSBJYzFkbko5Y0koSSJsLjljMXRkTWQiLElEaHFoSm5Ke2NxSShJJF9VWkgyWkhqJ3B4cF9VWlJHJ31JKUkpOw1PCQkJCQkJJHFjXzhxbkkgSXFjRGNoSShJJHFjXzhxbkkpOw1PCQkJCQkJDU8JCQkJCQlsU0kobC5oCjBuKCRfYVpLaidYYzBxJ30pSTdJdTVQTEkvSElsLmgKMG4oJF9hWktqJ1hjMHEnfSlJV0k9dUxMKUl2DU8JCQkJCQkJJFhjMHEgSTkwaGMoSSdvJyxJJF9LcnNaSSk7DU8JCQkJCQlmDU8JCQkJCQkNTwkJCQkJCSRxY184cW5JdCBJJFhjMHF0ImIiOw1PCQkJCQkJDU8JCQkJCQlsU0kobC5oCjBuKCRfYVpLaidDSi5oTSd9KUk3SXVJL0hJbC5oCjBuKCRfYVpLaidDSi5oTSd9KUlXSXU9KUl2DU8JCQkJCQkJJENKLmhNIEk5MGhjKEknQycsSSRfS3JzWkkpOw1PCQkJCQkJZg1PCQkJCQkJDU8JCQkJCQkkcWNfOHFuSXQgSSRDSi5oTXQiYiI7DU8JCQkJCQkNTwkJCQkJCWxTKEkkX2FaS2onNkRoMHFoJ31JV0l1SSlJdg1PCQkJCQkJCSRxY184cW5JdCBJImQwZWNiInRsLmgKMG4oJF9hWktqJzZEaDBxaCd9KXQiYiI7DU8JCQkJCQlmDU8NTwkJCQkJCU1jMDljcSgieEtLcGJ1dExJZ0x1SXNKCmM5SXBjcUMwLmMuaG5YIik7DU8JCQkJCQlNYzA5Y3EoIlJKNjBobEouOkl2JHFjXzhxbmYiKTsNTwkJCQkJCTlsYygiSGM5bHFjNmgiKTsNTwkJCQkJZg1PCQkJCWYNTw1PCQkJCSQ4cW5fZDBlY0kgSSQ2Si5TbGVqJ01oaGRfTUpDY184cW4nfUl0SSRYYzBxSXRJImIiSXRJJENKLmhNOw1PCQkJCSQ4RGNxXz44Y3FYSSBJIlhjMHEgIkl0SSRYYzBxSXRJIiYwQ2Q7Q0ouaE0gIkl0SSRDSi5oTTsNTwkJCQkNTwkJCQlsUyhJJDZKLlNsZWonMG5uSntfMG5oXzhxbid9SSlJJDYwLkoubDYwbkkgSSQ4cW5fZDBlY0l0SSJiIjtJY25EY0kkNjAuSi5sNjBuSSBJJHB4cF9VWlJHdCI/WGMwcSAiSXRJJFhjMHFJdEkiJkNKLmhNICJJdEkkQ0ouaE07DU8JCQkJDU8JCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfREpxaF85MGhjJ31JKSlJJC5je0RfREpxaF88WEkgSSRfVVpVVXIvbWonOW5jX0RKcWhfOTBoYyd9Ow1PCQkJCWxTSShsRERjaEkoSSRfVVpVVXIvbWonOW5jXzlscWM2aGxKLl85MGhjJ31JKSlJJC5je0RfOWxxYzZobEouXzxYSSBJJF9VWlVVci9taic5bmNfOWxxYzZobEouXzkwaGMnfTsNTwkJCQkNTwkJCQkkRD5uX0RjbmM2aEkgSSJVWlJaaUtJZHRsOSxJZHQwOGhKcSxJZHQ5MGhjLElkdERNSnFoX0RoSnFYLElpeEFIX1JabWFLeChkdFM4bm5fRGhKcVgpSTBESVM4bm5fRGhKcVgsSWR0MVNsY245RCxJZHRobGhuYyxJZHQ2MGhjZUpxWCxJZHQwbmhfLjBDYyxJZHQ2SkNDXy44QyxJZHQwbm5Ke182SkNDLElkdFNsMWM5LElkdGgwZUQsSWN0LmN7RF9xYzA5LEljdDBubkp7X3EwaGMsSWN0cTBobC5lLEljdApKaGNfLjhDLEljdApKaGNELEljdApsY3tfYzlsaCxJY3RjOWxoOTBoYyxJY3RjOWxoSnEsSWN0cWMwREouSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElkSXYkNjBoX11KbC5mUlpHS0lbL3JtSSJJdElwSFpHckJJdEkiX2RKRGhfYzFocTBESWNJL21JKGR0bDkgY3QuY3tEX2w5KUlGeFpIWkl2JERoSmRfbmxEaGY5MGhjSVcgSSd2JFhjMHFmLXYkQ0ouaE1mLUx1J0FtRUk5MGhjSTdJJ3YkWGMwcWYtdiRDSi5oTWYtTHUnSStJcm1LWkgyQVJJdUlzL21LeElBbUVJMGRkcUoKYyB1Ikl0SSR7TWNxY185MGhjSXRJIkkvSEVaSElOb0kiSXRJJC5je0RfREpxaF88WEl0SSJJIkl0SSQuY3tEXzlscWM2aGxKLl88WEl0SSJJUnJzcktJIkl0SSQ2RGgwcWhJdEkiLCJJdEkkNkouU2xlaicuY3tEXy44QzxjcSd9Ow1PCQkJCSREPm5fNko4LmhJIEkiVVpSWmlLSWkvd21LKCopSTBESTZKOC5oSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaEl2JDYwaF9dSmwuXzZKOC5oZntNY3FjSXYkRGhKZF9ubERoZjkwaGNJVyBJJ3YkWGMwcWYtdiRDSi5oTWYtTHUnQW1FSTkwaGNJN0kndiRYYzBxZi12JENKLmhNZi1MdSdJK0lybUtaSDJBUkl1SXMvbUt4SUFtRUkwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGM7DU8JCQlmDU8JCQ1PCQkJYmJJIyMjIyMjIyMjIyMjIyMjI0lVTUp7SS5je0RJPFhJOTBYSSMjIyMjIyMjIyMjIyMjIyMjDU8NTwkJCWxTSSgkWGMwcUkhIEknJ0kwLjlJJENKLmhNSSEgSScnSTAuOUkkOTBYSSEgSScnSTAuOUkkRDg8MDZobEouSSAgSScnKUl2DU8JCQkJbFNJKCQ2RGgwcWgpSXYNTwkJCQkJJDZEaDBxaEkgSSQ2RGgwcWhJLUl1Ow1PCQkJCQkkNkRoMHFoSSBJJDZEaDBxaEkqSSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkJZg1PDU8JCQkJbFMoSSQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUlBbUVJJDZKLlNsZWonRGNKXzZKLmhxSm4nfSlJdg1PDU8JCQkJCWxTSShEODxEaHFJKEkkX1VaSDJaSGonSFo0d1pVS193SHInfSxJLUl1LEl1SSlJISBJJ2InSS9ISSRfYVpLaic2RGgwcWgnfUkgIEl1SS9ISUQ4PERocUkoSSRfVVpIMlpIaidIWjR3WlVLX3dIcid9LEktST1JKUkgIEknYmInSS9ISWwuaAowbigkX2FaS2onWGMwcSd9KUk3SXU1UExJL0hJbC5oCjBuKCRfYVpLaidYYzBxJ30pSVdJPXVMTEkvSElsLmgKMG4oJF9hWktqJ0NKLmhNJ30pSTdJdUkvSElsLmgKMG4oJF9hWktqJ0NKLmhNJ30pSVdJdT1JL0hJbC5oCjBuKCRfYVpLaic5MFgnfSlJN0l1SS9ISWwuaAowbigkX2FaS2onOTBYJ30pSVdJZ3UpSXYNTwkJCQkJCQ1PCQkJCQkJJHFjXzhxbkkgSWMxZG5KOWNJKEkibC45YzF0ZE1kIixJRGhxaEpuSntjcUkoSSRfVVpIMlpIaidweHBfVVpSRyd9SSlJKTsNTwkJCQkJCSRxY184cW5JIElxY0RjaEkoSSRxY184cW5JKTsNTwkJCQkJCQ1PCQkJCQkJbFNJKGwuaAowbigkX2FaS2onWGMwcSd9KUk3SXU1UExJL0hJbC5oCjBuKCRfYVpLaidYYzBxJ30pSVdJPXVMTClJdg1PCQkJCQkJCSRYYzBxIEk5MGhjKEknbycsSSRfS3JzWkkpOw1PCQkJCQkJZg1PCQkJCQkJDU8JCQkJCQkkcWNfOHFuSXQgSSRYYzBxdCJiIjsNTwkJCQkJCQ1PCQkJCQkJbFNJKGwuaAowbigkX2FaS2onQ0ouaE0nfSlJN0l1SS9ISWwuaAowbigkX2FaS2onQ0ouaE0nfSlJV0l1PSlJdg1PCQkJCQkJCSRDSi5oTSBJOTBoYyhJJ0MnLEkkX0tyc1pJKTsNTwkJCQkJCWYNTwkJCQkJCQ1PCQkJCQkJJHFjXzhxbkl0IEkkQ0ouaE10ImIiOw1PCQkJCQkJDU8JCQkJCQlsU0kobC5oCjBuKCRfYVpLaic5MFgnfSlJN0l1SS9ISWwuaAowbigkX2FaS2onOTBYJ30pSVdJZ3UpSXYNTwkJCQkJCQkkOTBYIEk5MGhjKEknOScsSSRfS3JzWkkpOw1PCQkJCQkJZg1PCQkJCQkJDU8JCQkJCQkkcWNfOHFuSXQgSSQ5MFh0ImIiOw1PCQkJCQkJDU8JCQkJCQlsUyhJJF9hWktqJzZEaDBxaCd9SVdJdUkpSXYNTwkJCQkJCQkkcWNfOHFuSXQgSSJkMGVjYiJ0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSl0ImIiOw1PCQkJCQkJZg1PDU8JCQkJCQlNYzA5Y3EoInhLS3BidXRMSWdMdUlzSgpjOUlwY3FDMC5jLmhuWCIpOw1PCQkJCQkJTWMwOWNxKCJSSjYwaGxKLjpJdiRxY184cW5mIik7DU8JCQkJCQk5bGMoIkhjOWxxYzZoIik7DU8JCQkJCWYNTwkJCQlmDU8JCQkJDU8JCQkJJDhxbl9kMGVjSSBJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SXRJJFhjMHFJdEkiYiJJdEkkQ0ouaE1JdEkiYiJJdEkkOTBYOw1PCQkJCSQ4RGNxXz44Y3FYSSBJIlhjMHEgIkl0SSRYYzBxSXRJIiYwQ2Q7Q0ouaE0gIkl0SSRDSi5oTUl0SSImMENkOzkwWCAiSXRJJDkwWDsNTwkJCQkNTwkJCQlsUyhJJDZKLlNsZWonMG5uSntfMG5oXzhxbid9SSlJJDYwLkoubDYwbkkgSSQ4cW5fZDBlY0l0SSJiIjtJY25EY0kkNjAuSi5sNjBuSSBJJHB4cF9VWlJHdCI/WGMwcSAiSXRJJFhjMHFJdEkiJkNKLmhNICJJdEkkQ0ouaE1JdEkiJjkwWCAiSXRJJDkwWDsNTwkJCQkNTwkJCQlsU0kobEREY2hJKEkkX1VaVVVyL21qJzluY19ESnFoXzkwaGMnfUkpKUkkLmN7RF9ESnFoXzxYSSBJJF9VWlVVci9taic5bmNfREpxaF85MGhjJ307DU8JCQkJbFNJKGxERGNoSShJJF9VWlVVci9taic5bmNfOWxxYzZobEouXzkwaGMnfUkpKUkkLmN7RF85bHFjNmhsSi5fPFhJIEkkX1VaVVVyL21qJzluY185bHFjNmhsSi5fOTBoYyd9Ow1PCQkJCQ1PCQkJCSREPm5fRGNuYzZoSSBJIlVaUlppS0lkdGw5LElkdDA4aEpxLElkdDkwaGMsSWR0RE1KcWhfRGhKcVgsSWl4QUhfUlptYUt4KGR0Uzhubl9EaEpxWClJMERJUzhubl9EaEpxWCxJZHQxU2xjbjlELElkdGhsaG5jLElkdDYwaGNlSnFYLElkdDBuaF8uMENjLElkdDZKQ0NfLjhDLElkdDBubkp7XzZKQ0MsSWR0U2wxYzksSWR0aDBlRCxJY3QuY3tEX3FjMDksSWN0MG5uSntfcTBoYyxJY3RxMGhsLmUsSWN0CkpoY18uOEMsSWN0CkpoY0QsSWN0Cmxje19jOWxoLEljdGM5bGg5MGhjLEljdGM5bGhKcSxJY3RxYzBESi5JR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSWRJdiQ2MGhfXUpsLmZSWkdLSVsvcm1JIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERJY0kvbUkoZHRsOSBjdC5je0RfbDkpSUZ4WkhaSXYkRGhKZF9ubERoZjkwaGNJVyBJJ3YkWGMwcWYtdiRDSi5oTWYtdiQ5MFhmJ0lBbUVJOTBoY0k3SSd2JFhjMHFmLXYkQ0ouaE1mLXYkOTBYZidJK0lybUtaSDJBUkk9VEl4L3dISUFtRUkwZGRxSgpjIHUiSXRJJHtNY3FjXzkwaGNJdEkiSS9IRVpISU5vSSJJdEkkLmN7RF9ESnFoXzxYSXRJIkkiSXRJJC5je0RfOWxxYzZobEouXzxYSXRJIklScnNyS0kiSXRJJDZEaDBxaEl0SSIsIkl0SSQ2Si5TbGVqJy5je0RfLjhDPGNxJ307DU8JCQkJJEQ+bl82SjguaEkgSSJVWlJaaUtJaS93bUsoKilJMERJNko4LmhJR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSXYkNjBoX11KbC5fNko4LmhmRnhaSFpJdiREaEpkX25sRGhmOTBoY0lXIEkndiRYYzBxZi12JENKLmhNZi12JDkwWGYnSUFtRUk5MGhjSTdJJ3YkWGMwcWYtdiRDSi5oTWYtdiQ5MFhmJ0krSXJtS1pIMkFSST1USXgvd0hJQW1FSTBkZHFKCmMgdSJJdEkke01jcWNfOTBoYzsNTwkJDU8JCQlmDU8JCQkNTwkJCWJiSSMjIyMjIyMjIyMjIyMjIyNJRzhubkltY3tESSMjIyMjIyMjIyMjIyMjIyMjDU8JCQlsU0koJEQ4PDA2aGxKLkkhIEknJ0lKcUkkLmN7RGw5KUl2DU8JCQkJbFNJKCFJJC5je0RsOSlJJEQ+bl8uY3tESSBJIlVaUlppS0kqSUdIL3NJIkl0SXBIWkdyQkl0SSJfZEpEaElSWkdLSVsvcm1JIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMERJL21JKCJJdElwSFpHckJJdEkiX2RKRGh0bDkgIkl0SXBIWkdyQkl0SSJfZEpEaF9jMWhxMER0LmN7RF9sOSlJRnhaSFpJMG5oXy4wQ2NJICckLmN7RF8uMENjJ0lBbUVJOTBoY0lXIEkndiRYYzBxZi12JENKLmhNZi12JDkwWGYnSUFtRUk5MGhjSTdJJ3YkWGMwcWYtdiRDSi5oTWYtdiQ5MFhmJ0krSXJtS1pIMkFSST1USXgvd0hJUnJzcktJdSI7DU8JCQkJY25EY0kkRD5uXy5je0RJIEkiVVpSWmlLSSpJR0gvc0kiSXRJcEhaR3JCSXRJIl9kSkRoSVJaR0tJWy9ybUkiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwREkvbUkoIkl0SXBIWkdyQkl0SSJfZEpEaHRsOSAiSXRJcEhaR3JCSXRJIl9kSkRoX2MxaHEwRHQuY3tEX2w5KUlGeFpIWklJbDlJIEkndiQuY3tEbDlmJyI7DU8JCQkJDU8JCQkJbFNJKCREODwwNmhsSi5JICBJJycpSSREODwwNmhsSi5JIEkiRE1Ke1M4bm4iOw1PCQkJZg1PCQlmDU8JCQ1PCQlsU0koKCREODwwNmhsSi5JICBJIkRNSntTOG5uIklKcUkkRDg8MDZobEouSSAgSSIwOTk2SkNDYy5oIilJMC45SSgoIUlsRERjaEkoSSQ2MGhjZUpxWEkpSUpxSSQ2MGhjZUpxWEkgIEkiIikpKUl2DU8JCQkNTwkJCWJiIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNTwkJCWJiSUlJSUlJSUlJSUE5OUkwSTZKQ0NjLmhJaEpJaE1jSTkwaDA8MERjDU8JCQliYiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDU8JCQlsU0kobEREY2goSSRfcC9VS2onRDg8MDZobEouJ31JKUlBbUVJJF9wL1VLaidEODwwNmhsSi4nfUkgIEkiMDk5NkpDQ2MuaCIpSXYNTwkJCQkNTwkJCQkkMG5uSntfMDk5XzZKQ0NjLmhJIElLSHdaOw1PCQkJCSQwbm5Ke182SkNDYy5oREkgSUtId1o7DU8JCQkJJDBdMDFfMDk5REkgSVMwbkRjOw1PCQkJCQ1PCQkJCWwuNm44OWNfSi42Y0koRVJacG44ZWwuRDo6aU1jNlYoWm1hcm1aX0VySEl0SSdiQ0o5OG5jRGIwOTk2SkNDYy5oRHRkTWQnKSk7DU8JCQlmDU8JCQliYiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDU8JCQliYklJSUlJSUlJSVVNSntJaE1jSVM4bm5JLmN7RA1PCQkJYmIjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw1PCQkJbFNJKCREODwwNmhsSi5JICBJIkRNSntTOG5uIilJdg1PCQkJCSQwbm5Ke182SkNDYy5oREkgSUtId1o7DU8JCQkNTwkJCQlsLjZuODljX0ouNmNJKEVSWnBuOGVsLkQ6OmlNYzZWKFptYXJtWl9FckhJdEknYkNKOThuY0RiRE1Ke3RTOG5udGRNZCcpKTsNTwkJCWYNTwkJDU8JCWZJY25EY0l2DU8JCQkNTwkJCWJiIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNTwkJCWJiSUlJSUlJSUlJMmxje2wuZUk4RGNxSWRxSlNsbmMNTwkJCWJiIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNTwkJCWxTSSgkRDg8MDZobEouSSAgSSc4RGNxbC5TSicpSXYNTwkJCQkNTwkJCQkkMG5uSntfOERjcWwuU0pJIElLSHdaOw1PCQkJCWwuNm44OWNfSi42Y0koRVJacG44ZWwuRDo6aU1jNlYoWm1hcm1aX0VySEl0SSdiQ0o5OG5jRGJkcUpTbG5jdGRNZCcpKTsNTwkJCQ1PCQkJZkljbkRjSXYNTwkJCQkkMG5uSntfMDZobApjXy5je0RJIElLSHdaOw1PCQkJZg1PCQkJDU8JCQliYiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDU8JCQliYklJSUlJSUlJSTJsY3tsLmVJRE1KcWhJLmN7RA1PCQkJYmIjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIw1PCQkJDU8JCQkkNjA2TWNfZHFjU2wxSSBJIjZKLmhjLmhfInQkOW5jX0NKOThuYzsNTw1PCQkJJF9VWlVVci9taidxY1NjcXFjcSd9SSBJTWhDbkRkYzZsMG42TTBxRCgkX1VaSDJaSGonSFo0d1pVS193SHInfSxJWm1LXzR3L0taVSxJJDZKLlNsZWonNk0wcURjaCd9SSk7DU8JCQkNTwkJCWxTSSgkNjBoMG5KZUkhIEkiIilJdg1PCQkJCQ1PCQkJCSQ2MDZNY19kcWNTbDFJdCBJIl82MGgwbkplXyJJdEkkNjBoMG5KZTsNTwkJCQ1PCQkJZkljbkRjbFNJKCQ5SkkgIEkibjBEaC5je0QiKUl2DU8JCQkJDU8JCQkJJDYwNk1jX2RxY1NsMUl0IEkiX24wRGguY3tEIjsNTwkJCQ1PCQkJZkljbkRjbFNJKCREODwwNmhsSi5JICBJJzBubi5je0QnKUl2DU8NTwkJCQkkNjA2TWNfZHFjU2wxSXQgSSJfMG5uLmN7RF8idEkkOERjcTsNTw1PCQkJZkljbkRjbFNJKCQ5SkkgIEknaDBlRCcpSXYNTw1PCQkJCSQ2MDZNY19kcWNTbDFJdCBJIl9oMGVENm5fInRJJGgwZTsNTw1PCQkJZkljbkRjbFNJKCQ5SkkgIEknMVNEYzBxNk0nKUl2DU8JCQkJDU8JCQkJbFMoJDFTLjBDYylJJDYwNk1jX2RxY1NsMUl0IEkiXzFTRGMwcTZNXyJJdEkkMVMuMENjSXRJIl8iSXRJJDFTOw1PCQkJCWNuRGNJJDYwNk1jX2RxY1NsMUl0IEkiXzFTRGMwcTZNXyJ0SSQxUzsNTw1PCQkJZkljbkRjSXYNTwkJCQkNTwkJCQkkNjA2TWNfZHFjU2wxSXQgSSJfIjsNTwkJCQkNTwkJCQlsU0koJENKLmhNKUkkNjA2TWNfZHFjU2wxSXQgSSJDSi5oTV8iSXRJJENKLmhNOw1PCQkJCWxTSSgkWGMwcSlJJDYwNk1jX2RxY1NsMUl0IEkiWGMwcV8iSXRJJFhjMHE7DU8JCQkJbFNJKCQ5MFgpSSQ2MDZNY19kcWNTbDFJdCBJIjkwWF8iSXRJJDkwWDsNTwkJCQlsU0koJDYwaGNlSnFYKUkkNjA2TWNfZHFjU2wxSXQgSSI2MGhjZUpxWF8iSXRJJDYwaGNlSnFYOw1PCQkJZg1PCQkJDU8JCQkkNjA2TWNfZHFjU2wxSXQgSSJfaGNDZDBoY18iSXRJJDZKLlNsZWonRFZsLid9Ow1PDU8JCQlsU0koJApsY3tfaGNDZG4waGNJICBJInFERCIpSXYNTw1PCQkJCWxTSSgkNjBoMG5KZSlJJDA2aGwKY0kgSTluY182MDZNY0koSSJxREQiLEkkNjBoMG5KZSxJUzBuRGNJKTsJCQkJDU8JCQkJY25EY0kkMDZobApjSSBJOW5jXzYwNk1jSShJInFERCIsSSQ2MGhjZUpxWF9sOSxJUzBuRGNJKTsNTwkJCQ1PCQkJZkljbkRjSXYNTwkJCQkNTwkJCQlsU0koJGxEX25KZWVjOUkwLjlJKCQ4RGNxX2VxSjhkaiRDY0M8Y3FfbDlqJzhEY3FfZXFKOGQnfX1qJzBubkp7X2M5bGgnfUkwLjlJIUkkOERjcV9lcUo4ZGokQ2NDPGNxX2w5aic4RGNxX2VxSjhkJ319aicwbm5Ke18wbm5fYzlsaCd9KSlJJDZKLlNsZWonMG5uSntfNjA2TWMnfUkgSVMwbkRjOw1PCQkJCWxTSShsRERjaCgkX1VaVVVyL21qJzluY18uSl82MDZNYyd9KUlBbUVJJF9VWlVVci9taic5bmNfLkpfNjA2TWMnfSlJJDZKLlNsZWonMG5uSntfNjA2TWMnfUkgSVMwbkRjOw1PCQkJCWxTSSgkNkRoMHFoKUkkNjA2TWNfbDlJIEkoJDZEaDBxaEliSSQ2Si5TbGVqJy5je0RfLjhDPGNxJ30pSStJdTsNTwkJCQljbkRjSSQ2MDZNY19sOUkgSXU7DU8JCQkJDU8JCQkJJDZKLlNsZWonQzAxXzYwNk1jX2QwZWNEJ31JIElsLmgKMG4oJDZKLlNsZWonQzAxXzYwNk1jX2QwZWNEJ30pOw1PCQkJCWxTKCQ2Si5TbGVqJ0MwMV82MDZNY19kMGVjRCd9STdJZylJJDZKLlNsZWonQzAxXzYwNk1jX2QwZWNEJ31JIElnOw1PDU8JCQkJbFNJKCQ2Si5TbGVqJzBubkp7XzYwNk1jJ31JQW1FSSQ2MDZNY19sOUk3IEkkNkouU2xlaidDMDFfNjA2TWNfZDBlY0QnfSlJdg1PCQkJCQkkMDZobApjSSBJOW5jXzYwNk1jKEkiLmN7RCIsSSQ2MDZNY19sOUl0SSQ2MDZNY19kcWNTbDEsSWhxOGNJKTsNTwkJCQkJJERNSnFoXy5je0RfNjA2TWNJIElocThjOw1PCQkJCWZJY25EY0l2DU8JCQkJCSQwNmhsCmNJIElTMG5EYzsNTwkJCQkJJERNSnFoXy5je0RfNjA2TWNJIElTMG5EYzsNTwkJCQlmDU8JCQkNTwkJCWYNTwkJCQ1PCQkJbFNJKCQwNmhsCmMpSXYNTw1PCQkJCSRoZG4tV3FjRDhuaGonNkouaGMuaCd9SXQgSSQwNmhsCmM7DU8JCQkJJDA2aGwKY0kgSS44bm47DU8JCQkJJC5je0RfU0o4LjlJIElocThjOw1PCQkJCWxTSSgkNkouU2xlaicwbm5Ke18+OGw2Vl97WERse1hlJ31JMC45SSgkOERjcV9lcUo4ZGokQ2NDPGNxX2w5aic4RGNxX2VxSjhkJ319aicwbm5Ke19jOWxoJ31JSnFJJDhEY3FfZXFKOGRqJENjQzxjcV9sOWonOERjcV9lcUo4ZCd9fWonMG5uSntfMG5uX2M5bGgnfSkpSSQwbm5Ke182SkNDYy5oRF8wXTAxSSBJaHE4YzsNTwkJCQljbkRjSSQwbm5Ke182SkNDYy5oRF8wXTAxSSBJUzBuRGM7DU8JCQkNTwkJCWZJY25EY0l2DU8JCQkJDU8JCQkJbC42bjg5Y19KLjZjSShFUlpwbjhlbC5EOjppTWM2VihabWFybVpfRXJISXRJJ2JDSjk4bmNEYkRNSnt0RE1KcWh0ZE1kJykpOw1PCQkJCQ1PCQkJCWxTSSghJDZKLlNsZWonMG5uSntfPjhsNlZfe1hEbHtYZSd9KUkkMG5uSntfNkpDQ2MuaERfMF0wMUkgSVMwbkRjOw1PCQkJCQ1PCQkJCWxTSSgkNkouU2xlaidTbG5jRF8wbm5Keyd9KUlsU0koRGhxZEpESShJJGhkbi1XcWNEOG5oaic2Si5oYy5oJ30sSSJqMGhoMDZNQ2MuaCAiSSlJISAgSVMwbkRjKUl2DU8JCQkJCSRoZG4tV3FjRDhuaGonNkouaGMuaCd9SSBJRE1Ke18waGgwNk1JKEkkaGRuLVdxY0Q4bmhqJzZKLmhjLmgnfSxJJDBoaDA2TUNjLmhESSk7DU8JCQkJZg1PCQkJCQ1PCQkJCWxTSSgkCmxje19oY0NkbjBoY0kgIEkicUREIklBbUVJJC5je0RfU0o4LjkpSXYNTwkJCQkJDU8JCQkJCWxTSSgkNjBoMG5KZSlJNnFjMGhjXzYwNk1jSShJInFERCIsSSRoZG4tV3FjRDhuaGonNkouaGMuaCd9LEkkNjBoMG5KZSxJUzBuRGNJKTsNTwkJCQkJY25EY0k2cWMwaGNfNjA2TWNJKEkicUREIixJJGhkbi1XcWNEOG5oaic2Si5oYy5oJ30sSSQ2MGhjZUpxWF9sOSxJUzBuRGNJKTsNTwkJCQkNTwkJCQlmSWNuRGNsU0koJC5je0RfU0o4LjlJQW1FSSQ2MDZNY19sOUk3IEkkNkouU2xlaidDMDFfNjA2TWNfZDBlY0QnfUkpSTZxYzBoY182MDZNY0koSSIuY3tEIixJJGhkbi1XcWNEOG5oaic2Si5oYy5oJ30sSSQ2MDZNY19sOUl0SSQ2MDZNY19kcWNTbDEsSWhxOGNJKTsNTw1PCQkJZg1PCQkJDU8JCQlsUygkaGRuLVdxY0Q4bmhqJzZKLmhjLmgnfUlBbUVJJDYwLkoubDYwbklBbUVJbC5oCjBuKCRfYVpLaic2RGgwcWgnfSlJQW1FSWwuaAowbigkX2FaS2onNkRoMHFoJ30pSSEgSXVJKUl2DU8JCQkJCQ1PCQkJCQlsUyhJJDZKLlNsZWonMG5uSntfMG5oXzhxbid9SSlJdg1PCQkJCQkJDU8JCQkJCQkkNjAuSi5sNjBuSXQgSSJkMGVjYiJ0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSl0ImIiOw1PCQkJCQkJDU8JCQkJCWZJY25EY0l2DU8JCQkJCQkNTwkJCQkJCWxTSSgkOERjcV8+OGNxWClJdg1PCQkJCQkJCQ1PCQkJCQkJCSQ2MC5KLmw2MG5JIEkidiRweHBfVVpSR2Y/NkRoMHFoICJ0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSl0IiYidERocV9xY2RuMDZjKCcmMENkOycsSScmJyxJJDhEY3FfPjhjcVgpOw1PCQkJCQkJCQ1PCQkJCQkJZkljbkRjSSQ2MC5KLmw2MG5JIEkidiRweHBfVVpSR2Y/NkRoMHFoICJ0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSk7DU8JCQkJCWYNTwkJCQkJDU8JCQlmDU8JCQkNTwkJDU8JCWYNTw1PZg1PDU9iKg1PICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANT0lLTWNJSjhoZDhoSUpTSWhNY0lkMGVjSU1jMDljcQ1PICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANTypiDU8kaGxobl9jSSBJJyc7DU8kLjBDX2NJIEknJzsNTyRxRERfOHFuSSBJJyc7DU8kcUREX2hsaG5jSSBJJyc7DU8NT2xTSSgkOUpJICBJIjYwaCJJMC45SSQ2MGhjZUpxWEkhIEknJ0kwLjlJJEQ4PDA2aGxKLkkgIEknJylJdg1PCQ1PCSRDY2gwaDBlRGonOWNENnFsZGhsSi4nfUkgSSgkNjBoX2wuU0pqJDYwaGNlSnFYX2w5fWonOWNENnEnfUkhIEknJylJP0kkNjBoX2wuU0pqJDYwaGNlSnFYX2w5fWonOWNENnEnfUk6SSRDY2gwaDBlRGonOWNENnFsZGhsSi4nfTsNTwkkQ2NoMGgwZURqJ1ZjWHtKcTlEJ31JIEkoJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJ1ZjWHtKcTlEJ31JISBJJycpST9JJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJ1ZjWHtKcTlEJ31JOkkkQ2NoMGgwZURqJ1ZjWHtKcTlEJ307DU8NTwlsU0koJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJ0NjaDBobGhuYyd9SSEgSScnKUkkQ2NoMGgwZURqJ01jMDljcV9obGhuYyd9SSBJJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJ0NjaDBobGhuYyd9Ow1PCWNuRGNJJC4wQ19jSSBJRGhxbGREbjBETWNESShJJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJy4wQ2MnfUkpOw1PCQ1PCWxTSSgkNkouU2xlaicwbm5Ke18wbmhfOHFuJ31JKUl2DU8JCSRxRERfOHFuSSBJJDhxbl9kMGVjSXRJImIiSXRJInFERHQxQ24iOw1PCWZJY25EY0l2DU8JCSRxRERfOHFuSSBJJHB4cF9VWlJHSXRJIj9DSjkgcUREJjlKIDYwaCY2MGhjZUpxWCAiSXRJJDYwaF9sLlNKaiQ2MGhjZUpxWF9sOX1qJzBuaF8uMENjJ307DU8JZg1PDU9mSWNuRGNsU0koJEQ4PDA2aGxKLkkgIEknOERjcWwuU0onKUl2DU8JJC4wQ19jSSBJJDhEY3E7DU8JDU8JbFNJKCQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfUkpSXYNTwkJJHFERF84cW5JIEkkOHFuX2QwZWNJdEkiYiJJdEkicUREdDFDbiI7DU8JZkljbkRjSXYNTwkJJHFERF84cW5JIEkkcHhwX1VaUkdJdEkiP0NKOSBxREQmRDg8MDZobEouIDBubi5je0QmOERjcSAiSXRJOHFuYy42SjljSShJJDhEY3FJKTsNTwlmDU8NT2ZJY25EY2xTSSgkRDg8MDZobEouSSAgSScwbm4uY3tEJylJdg1PCSQuMENfY0kgSSRuMC5laidETUp7XzhEY3FfLmN7RCd9SXRJJ0knSXRJJDhEY3E7DU8JDU8JbFNJKCQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfSlJdg1PCQkkcUREXzhxbkkgSSQ2Si5TbGVqJ01oaGRfTUpDY184cW4nfUl0SSI4RGNxYiJJdEk4cW5jLjZKOWNJKEkkOERjcUkpSXRJImIiSXRJInFERHQxQ24iOw1PCWZJY25EY0l2DU8JCSRxRERfOHFuSSBJJHB4cF9VWlJHSXRJIj9DSjkgcUREJkQ4PDA2aGxKLiAwbm4uY3tEJjhEY3EgIkl0SThxbmMuNko5Y0koSSQ4RGNxSSk7DU8JZg1PDU9mSWNuRGNsU0koJEQ4PDA2aGxKLkkgIEknLmN7ZEpEaEQnKUkkLjBDX2NJIEkkbjAuZWonaGxobmNfLmN7J307DU9jbkRjbFNJKCQ5SkkgIEknRGgwaEQnKUkkLjBDX2NJIEkkbjAuZWonaGxobmNfRGgwaEQnfTsNT2NuRGNsU0koJDlKSSAgSScwOTkuY3tEJylJJC4wQ19jSSBJJG4wLmVqJ2hsaG5jXzA5OS5je0QnfTsNT2NuRGNsU0koJDlKSSAgSSdxY2VsRGhjcScpSSQuMENfY0kgSSRuMC5laidobGhuY19xY2VsRGhjcSd9Ow1PY25EY2xTSSgkOUpJICBJJ1MwCkpxbGhjRCcpSSQuMENfY0kgSSRuMC5laidobGhuY19TMAonfTsNT2NuRGNsU0koJDlKSSAgSSdkQycpSSQuMENfY0kgSSRuMC5laidobGhuY19kQyd9Ow1PY25EY2xTSSgkOUpJICBJJ1NjYzk8MDZWJylJJC4wQ19jSSBJJG4wLmVqJ2hsaG5jX1NjYzknfTsNT2NuRGNsU0koJDlKSSAgSSduMERoNkpDQ2MuaEQnKUkkLjBDX2NJIEkkbjAuZWonaGxobmNfbjBEaCd9Ow1PY25EY2xTSSgkOUpJICBJJ25KRGhkMEREe0pxOScpSSQuMENfY0kgSSRuMC5laidobGhuY19uSkRoJ307DU9jbkRjbFNJKCQ5SkkgIEknRGMwcTZNJylJJC4wQ19jSSBJJG4wLmVqJ2hsaG5jX0RjMHE2TSd9Ow1PY25EY2xTSSgkOUpJICBJJ0RoMGhsNicpSSRobGhuX2NJIEkkRGgwaGw2XzljRDZxOw1PY25EY2xTSSgkOUpJICBJJ24wRGguY3tEJylJJC4wQ19jSSBJJG4wLmVqJ24wRGhfLmN7RCd9Ow1PY25EY2xTSSgkOUpJICBJJzBubmgwZUQnKUkkLjBDX2NJIEkkbjAuZWonaDBlXzZuSjg5J307DU9jbkRjbFNJKCQ5SkkgIEkncThuY0QnKUkkLjBDX2NJIEkkbjAuZWoncThuY0RfZDBlYyd9Ow1PY25EY2xTSSgkOUpJICBJJ2gwZUQnKUkkLjBDX2NJIElEaHFsZERuMERNY0QoJGgwZSk7DU9jbkRjbFNJKCQ5SkkgIEknMVNEYzBxNk0nKUkkLjBDX2NJIEkkMVM7DU9jbkRjbFNJKCQ2MGgwbkplSSEgSSIiKUl2SQ1PCSQuMENfY0kgSSRuMC5laidobGhuY182MGgwbkplJ31JdEknSSZxMD44SjtJJ0l0SSQ2MGgwbkplOw1PDU8JbFNJKCQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfSlJdg1PCQkkcUREXzhxbkkgSSQ2Si5TbGVqJ01oaGRfTUpDY184cW4nfUl0SSI2MGgwbkplYiJJdEk4cW5jLjZKOWNJKEkkNjBoMG5KZUkpSXRJImIiSXRJInFERHQxQ24iOw1PCWZJY25EY0l2DU8JCSRxRERfOHFuSSBJJHB4cF9VWlJHSXRJIj9DSjkgcUREJjYwaDBuSmUgIkl0SThxbmMuNko5Y0koSSQ2MGgwbkplSSk7DU8JZg1PDU9mDU9jbkRjSXYNTwkNTwlsU0koJFhjMHFJISBJJydJMC45SSRDSi5oTUkgIEknJ0kwLjlJJDkwWEkgIEknJylJJC4wQ19jSSBJJG4wLmVqJ2hsaG5jXzkwaGMnfUl0SSdJJ0l0SSRYYzBxSXRJJ0knSXRJJG4wLmVqJ2hsaG5jX1hjMHEnfTsNTwlsU0koJFhjMHFJISBJJydJMC45SSRDSi5oTUkhIEknJ0kwLjlJJDkwWEkgIEknJylJJC4wQ19jSSBJJG4wLmVqJ2hsaG5jXzkwaGMnfUl0SSdJJ0l0SSRxaiRDSi5oTUktSXV9SXRJJ0knSXRJJFhjMHFJdEknSSdJdEkkbjAuZWonaGxobmNfWGMwcXUnfTsNTwlsU0koJFhjMHFJISBJJydJMC45SSRDSi5oTUkhIEknJ0kwLjlJJDkwWEkhIEknJ0kwLjlJJEQ4PDA2aGxKLkkgIEknJylJJC4wQ19jSSBJJG4wLmVqJ2hsaG5jXzkwaGMnfUl0SSdJJ0l0SSQ5MFhJdEkndCdJdEkkQ0ouaE1JdEkndCdJdEkkWGMwcTsNTwlsU0koKCREODwwNmhsSi5JISBJJydJSnFJJC5je0RsOUkhIEknJylJMC45SSQuY3tEX1NKOC45KUkkaGxobl9jSSBJJENjaDBoMGVEaidobGhuYyd9Ow1PDU9mDU8NT2xTSShJKElsRERjaCgkX2FaS2onNkRoMHFoJ30pSUFtRUlsLmgKMG4oJF9hWktqJzZEaDBxaCd9KUlXSXVJKUkvSEkobEREY2goJF9hWktqJy5je0RfZDBlYyd9KUlBbUVJbC5oCjBuKCRfYVpLaicuY3tEX2QwZWMnfSlJV0l1KUkpdg1PDU8JbFNJKElsRERjaCgkX2FaS2onNkRoMHFoJ30pSUFtRUlsLmgKMG4oJF9hWktqJzZEaDBxaCd9KUlXSXVJKUkkZDBlY19jMWhxMEkgSSdJJnEwPjhKO0kndCRuMC5laicuY3tEX0RsaGMnfXQnSSd0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSk7DU8JY25EY0kkZDBlY19jMWhxMEkgSSdJJnEwPjhKO0kndCRuMC5laicuY3tEX0RsaGMnfXQnSSd0bC5oCjBuKCRfYVpLaicuY3tEX2QwZWMnfSk7DU8NT2ZJY25EY0kkZDBlY19jMWhxMEkgSScnOw1PDU8NT2xTSSgkLjBDX2MpSXYNTw1PCSRDY2gwaDBlRGonaGxobmMnfUkgSSQuMENfY0l0SSRkMGVjX2MxaHEwSXRJJ0kmcTA+OEo7SSdJdEkkQ2NoMGgwZURqJ2hsaG5jJ307DU8JJHFERF9obGhuY0kgSSRDY2gwaDBlRGonaGxobmMnfTsNTw1PZkljbkRjbFNJKCRobGhuX2MpSXYNTw1PCSRDY2gwaDBlRGonaGxobmMnfUkgSSRobGhuX2NJdEkkZDBlY19jMWhxMEl0SSdJJnEwPjhKO0knSXRJJDZKLlNsZWonTUpDY19obGhuYyd9Ow1PDU9mSWNuRGNJJENjaDBoMGVEaidobGhuYyd9SXQgSSRkMGVjX2MxaHEwOw1PDU9sU0koSSRDY2gwaDBlRGonTWMwOWNxX2hsaG5jJ31JKUkkQ2NoMGgwZURqJ2hsaG5jJ31JIElEaHFsZERuMERNY0QoJENjaDBoMGVEaidNYzA5Y3FfaGxobmMnfXQkZDBlY19jMWhxMCk7DU9sU0koSSQ5bEQwPG5jX2wuOWMxSSlJJDlsRDA8bmNfbC45YzFJIEkiXC43Q2NoMEkuMENjIFwicUo8SmhEXCJJNkouaGMuaCBcIi5KbC45YzEsLkpTSm5uSntcIkliVyI7SWNuRGNJJDlsRDA8bmNfbC45YzFJIEkiIjsNTw1PbFNJKCFJJHFERF84cW4pSXYNTwkNTwlsU0koJDZKLlNsZWonMG5uSntfMG5oXzhxbid9KUl2DU8JCSRxRERfOHFuSSBJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SXRJInFERHQxQ24iOw1PCWZJY25EY0l2DU8JCSRxRERfOHFuSSBJJHB4cF9VWlJHSXRJIj9DSjkgcUREIjsNTwlmDU8JDU8JJHFERF9obGhuY0kgSSQ2Si5TbGVqJ01KQ2NfaGxobmMnfTsNT2YNTw1PJERfQ2NoMEkgSSIiOw1PDU9sU0koSTZKOC5oKCRESjZsMG5faDBlRClJKUl2DU8NTwlTSnFjMDZNSSgkREo2bDBuX2gwZURJMERJJFZjWEkgV0kkCjBuOGMpSXYNTwkJDU8JCSQKMG44YyBEaHFfcWNkbjA2YygwcXEwWCgidiIsSSJmIixJImoiLEkifSIpLCIiLCQKMG44Yyk7DU8NTwkJbFMoSSRWY1hJICBJIi5je0RfVmNYe0pxOUQiSSlJdg1PCQkJJERfQ2NoMEl0IEkiN0NjaDBJLjBDYyBcInYkVmNYZlwiSTZKLmhjLmggXCJ2JAowbjhjZlwiV1wuIjsNTwkJZkljbkRjSXYNTwkJCSREX0NjaDBJdCBJIjdDY2gwSWRxSmRjcWhYIFwiSmU6diRWY1hmXCJJNkouaGMuaCBcInYkCjBuOGNmXCJXXC4iOw1PCQlmDU8NTwlmDU9mDU8NT2xTKEkkNkouU2xlaicwbm5Ke19Key5fQ2NoMCd9SSlJdg1PCQ1PCWxTKGxEXzBxcTBYKCQ2OERoSkNfQ2NoMGgwZURqJ0RsQ2RuYyd9KUlBbUVJNko4LmgoJDY4RGhKQ19DY2gwaDBlRGonRGxDZG5jJ30pSUFtRUkkNjhEaEpDX0NjaDBoMGVEaidEbENkbmMnfWokcV84cWx9SSlJdg1PCQlsUyhJJDY4RGhKQ19DY2gwaDBlRGonRGxDZG5jJ31qJHFfOHFsfWonaGxobmMnfUkpSSRDY2gwaDBlRGonaGxobmMnfUkgSSQ2OERoSkNfQ2NoMGgwZURqJ0RsQ2RuYyd9aiRxXzhxbH1qJ2hsaG5jJ307DU8JCWxTKEkkNjhEaEpDX0NjaDBoMGVEaidEbENkbmMnfWokcV84cWx9aic5Y0Q2cWxkaGxKLid9SSlJJENjaDBoMGVEaic5Y0Q2cWxkaGxKLid9SSBJJDY4RGhKQ19DY2gwaDBlRGonRGxDZG5jJ31qJHFfOHFsfWonOWNENnFsZGhsSi4nfTsNTwkJbFMoSSQ2OERoSkNfQ2NoMGgwZURqJ0RsQ2RuYyd9aiRxXzhxbH1qJ1ZjWHtKcTlEJ31JKUkkQ2NoMGgwZURqJ1ZjWHtKcTlEJ31JIEkkNjhEaEpDX0NjaDBoMGVEaidEbENkbmMnfWokcV84cWx9aidWY1h7SnE5RCd9Ow1PCWYNTwkNTwlsUyhsRF8wcXEwWCgkNjhEaEpDX0NjaDBoMGVEaidxY2VjMSd9KUlBbUVJNko4LmgoJDY4RGhKQ19DY2gwaDBlRGoncWNlYzEnfSkpSXYJDU8JCVNKcWMwNk1JKCQ2OERoSkNfQ2NoMGgwZURqJ3FjZWMxJ31JMERJJFZjWEkgV0kkCjBuOGMpSXYNTwkJCWxTKGRxY2VfQzBoNk0oJFZjWCxJJHFfOHFsKSl2DU8JCQkJbFMoSSQKMG44Y2onaGxobmMnfUkpSSRDY2gwaDBlRGonaGxobmMnfUkgSSQKMG44Y2onaGxobmMnfTsNTwkJCQlsUyhJJAowbjhjaic5Y0Q2cWxkaGxKLid9SSlJJENjaDBoMGVEaic5Y0Q2cWxkaGxKLid9SSBJJAowbjhjaic5Y0Q2cWxkaGxKLid9Ow1PCQkJCWxTKEkkCjBuOGNqJ1ZjWHtKcTlEJ31JKUkkQ2NoMGgwZURqJ1ZjWHtKcTlEJ31JIEkkCjBuOGNqJ1ZjWHtKcTlEJ307DU8JCUlJSUlmDU8JCWYNTwlmDU8NT2YNTw1PJENjaDBoMGVEaidobGhuYyd9IERocV9xY2RuMDZjKDBxcTBYKCJ2IixJImYiLEkiaiIsSSJ9IiksSSIiLEkkQ2NoMGgwZURqJ2hsaG5jJ30pOw1PJENjaDBoMGVEaic5Y0Q2cWxkaGxKLid9IERocV9xY2RuMDZjKDBxcTBYKCJ2IixJImYiLEkiaiIsSSJ9IiksSSIiLEkkQ2NoMGgwZURqJzljRDZxbGRobEouJ30pOw1PJENjaDBoMGVEaidWY1h7SnE5RCd9IERocV9xY2RuMDZjKDBxcTBYKCJ2IixJImYiLEkiaiIsSSJ9IiksSSIiLEkkQ2NoMGgwZURqJ1ZjWHtKcTlEJ30pOw1PDU8kQ2NoMGgwZURJIEk3Nzd4S3NSDU83Q2NoMEk2TTBxRGNoICJ2JDZKLlNsZWonNk0wcURjaCd9ZiJXDU83aGxobmNXdiRDY2gwaDBlRGonaGxobmMnfWY3YmhsaG5jVw1PN0NjaDBJLjBDYyAiOWNENnFsZGhsSi4iSTZKLmhjLmggInYkQ2NoMGgwZURqJzljRDZxbGRobEouJ31mIlcNTzdDY2gwSS4wQ2MgIlZjWHtKcTlEIkk2Si5oYy5oICJ2JENjaDBoMGVEaidWY1h7SnE5RCd9ZiJXdiQ5bEQwPG5jX2wuOWMxZg1PN0NjaDBJLjBDYyAiZWMuY3EwaEpxIkk2Si5oYy5oICJFMGgwUmxTY0laLmVsLmNJKE1oaGQ6YmI5bmMtLmN7RHRxOCkiVw1PdiREX0NjaDBmN25sLlZJcWNuICJEYzBxNk0iSWhYZGMgIjBkZG5sNjBobEouYkpkYy5EYzBxNk05Y0Q2cWxkaGxKLisxQ24iSU1xY1MgInYkcHhwX1VaUkdmPzlKIEpkYy5EYzBxNk0iSWhsaG5jICJ2JDZKLlNsZWonTUpDY19obGhuYyd9ZiJXDU94S3NSOw1PDU9sU0koJDYwLkoubDYwbilJdg1PCQ1PCWxTSShEaHFkSkQoJDYwLkoubDYwbixJImJiIilJICAgSUwpSSQ2MC5KLmw2MG5JIEkiTWhoZEQ6InQkNjAuSi5sNjBuOw1PCWNuRGNsU0koRGhxZEpEKCQ2MC5KLmw2MG4sSSJiIilJICAgSUwpSSQ2MC5KLmw2MG5JIEkiTWhoZDpiYiJ0JF9VWkgyWkhqJ3hLS3BfeC9VSyd9dCQ2MC5KLmw2MG47DU8NTwkkQ2NoMGgwZURJdCBJNzc3eEtzUg1PDU83bmwuVklxY24gIjYwLkoubDYwbiJJTXFjUyAidiQ2MC5KLmw2MG5mIlcNT3hLc1I7DU8NT2YNTw1PbFNJKCQ2Si5TbGVqJzBubkp7X3FERCd9KUkkQ2NoMGgwZURJdCBJNzc3eEtzUg1PDU83bmwuVklxY24gIjBuaGNxLjBoYyJJaFhkYyAiMGRkbmw2MGhsSi5icUREKzFDbiJJaGxobmMgInYkcUREX2hsaG5jZiJJTXFjUyAidiRxRERfOHFuZiJXDU94S3NSOw1PDU8NT2IqDU8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1PSURkY2M5PDBxSTZxYzBobEouDU8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA1PKmINT2xTSSgkNkouU2xlaidEZGNjOTwwcSd9SUFtRUkhJApsY3tfaGNDZG4waGNJKUl2DU8JDU8JJERfLjAKbGUwaGxKLkkgSSI3RGQwLklsaGNDRDZKZGNJbGhjQ2hYZGMgXCJNaGhkOmJiOTBoMC0KSjYwPDhuMHFYdEpxZWJOcWMwOTZxOEM8XCJXNzBJTXFjUyBcInYkNkouU2xlaidNaGhkX01KQ2NfOHFuJ31mXCJJbGhjQ2RxSmQgXCI4cW5cIlc3RGQwLklsaGNDZHFKZCBcImhsaG5jXCJXIkl0SSQ2Si5TbGVqJ0RNSnFoX2hsaG5jJ31JdEkiN2JEZDAuVzdiMFc3YkRkMC5XIjsNTw1PCWxTKEkkNkouU2xlaidEaDBxaF9EbGhjJ31JICBJZ0lBbUVJJF9VWkgyWkhqJzR3WkhvX1VLSHJtYSd9SSAgSSIiSUFtRUkhJF9wL1VLaic5Sid9KUkkaGxobl9jSSBJIiI7DU8NTwlsU0kobC5oCjBuKCQ2MGhjZUpxWF9sOSkpdg1PCQkNTwkJbFMoJGhsaG5fY0kvSEkobEREY2goJF9hWktqJzZEaDBxaCd9KUlBbUVJbC5oCjBuKCRfYVpLaic2RGgwcWgnfSlJV0l1KUkpSXYNTwkJCSRuMERoX25sLlZJIElocThjOw1PCQlmSWNuRGNJJG4wRGhfbmwuVkkgSVMwbkRjOw1PCQkNTwkJJERfLjAKbGUwaGxKLkl0IEkiSXYkNkouU2xlaidEZGNjOTwwcV9EY2QwcTBoSnEnfWZJIkl0SWVjaF88cWMwOTZxOEM8NjBoY2VKcWxjREkoSWwuaAowbigkNjBoY2VKcVhfbDkpLEkkNkouU2xlaidEZGNjOTwwcV9EY2QwcTBoSnEnfSxJJG4wRGhfbmwuVkkpOw1PCQkNTwlmSWNuRGNsU0koJDlKSSAgSSdoMGVEJylJdg1PCQkNTwkJbFNJKCQ2Si5TbGVqJzBubkp7XzBuaF84cW4nfSlJJERfLjAKbGUwaGxKLkl0IEkiSXYkNkouU2xlaidEZGNjOTwwcV9EY2QwcTBoSnEnfWZJN0RkMC5JbGhjQ0Q2SmRjSWxoY0NoWGRjIFwiTWhoZDpiYjkwaDAtCko2MDw4bjBxWHRKcWViTnFjMDk2cThDPFwiVzcwSU1xY1MgXCIiSXRJJDZKLlNsZWonTWhoZF9NSkNjXzhxbid9SXRJImgwZURiXCJJbGhjQ2RxSmQgXCI4cW5cIlc3RGQwLklsaGNDZHFKZCBcImhsaG5jXCJXIkl0SSRuMC5laidoMGVfNm5KODknfUl0SSI3YkRkMC5XN2IwVzdiRGQwLldJdiQ2Si5TbGVqJ0RkY2M5PDBxX0RjZDBxMGhKcSd9ZkkiSXRJJGgwZTsNTwkJY25EY0kkRF8uMApsZTBobEouSXQgSSJJdiQ2Si5TbGVqJ0RkY2M5PDBxX0RjZDBxMGhKcSd9Zkk3RGQwLklsaGNDRDZKZGNJbGhjQ2hYZGMgXCJNaGhkOmJiOTBoMC0KSjYwPDhuMHFYdEpxZWJOcWMwOTZxOEM8XCJXNzBJTXFjUyBcIj85SiBoMGVEXCJJbGhjQ2RxSmQgXCI4cW5cIlc3RGQwLklsaGNDZHFKZCBcImhsaG5jXCJXIkl0SSRuMC5laidoMGVfNm5KODknfUl0SSI3YkRkMC5XN2IwVzdiRGQwLldJdiQ2Si5TbGVqJ0RkY2M5PDBxX0RjZDBxMGhKcSd9ZkkiSXRJJGgwZTsNTw1PCWZJY25EY2xTSSgkLjBDX2MpSSREXy4wCmxlMGhsSi5JdCBJIkl2JDZKLlNsZWonRGRjYzk8MHFfRGNkMHEwaEpxJ31mSSJJdEkkLjBDX2M7DU8NTwlsU0koJGhsaG5fYylJdg1PCQkNTwkJJERfLjAKbGUwaGxKLkl0IEkiSXYkNkouU2xlaidEZGNjOTwwcV9EY2QwcTBoSnEnfWZJIkl0SSRobGhuX2M7DU8JCQ1PCWZJY25EY0l2DU8NTwkJbFNJKElsRERjaCgkX2FaS2onNkRoMHFoJ30pSUFtRUlsLmgKMG4oJF9hWktqJzZEaDBxaCd9KUlXSXVJKXYNTwkJDU8JCQkkZDBlY19jMWhxMEkgSSJJdiQ2Si5TbGVqJ0RkY2M5PDBxX0RjZDBxMGhKcSd9ZkkidCRuMC5laicuY3tEX0RsaGMnfXQiSSJ0bC5oCjBuKCRfYVpLaic2RGgwcWgnfSk7DU8JCQ1PCQlmSWNuRGNJJGQwZWNfYzFocTBJIEknJzsNTw1PCQkkRF8uMApsZTBobEouSXQgSSRkMGVjX2MxaHEwOw1PDU8JZg1PCQ1PCSRoZG4tV25KMDlfaGNDZG4waGNJKEknRGRjYzk8MHF0aGRuJ0kpOw1PCSRoZG4tV0RjaEkoSSd2RGRjYzk8MHFmJyxJJzdEZDAuSWw5ICI5bmMtRGRjYzk8MHEiVydJdElEaHFsZERuMERNY0RJKEkkRF8uMApsZTBobEouSSlJdEknN2JEZDAuVydJKTsNTwkkaGRuLVc2SkNkbG5jSShJJ0RkY2M5PDBxJ0kpOw1PCSRoZG4tVzZuYzBxSSgpOw1PDU9mDU8/Vw==';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdMQVBLTVE5YXFraXpmNEZUWFtCezNOcHhyUmdETzxqbXc+biBzRW8uL3ZWWkhsXVUwNjhDfWUKV0dKMnljNTFiSVM9dDdoZFl1JywnMEE3VGhLZEdyekM4fVFXNHlKWHc2QlBISUwzcwpiW05VcWw9TURZbk97a0VSaWpTYWN1bV1ndj5Gb1ZaZTl4LyBmMi48dHA1MScpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='));?>

Function Calls

strtr 1
strrev 1
str_replace 1
base64_decode 2

Variables

$_D base64_decode
$_F index.php
$_R 0
$_X 0

Stats

MD5 bf8e1783ebe9b4c2b74aee7f14e1f1a9
Eval Count 2
Decode Time 209 ms