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

Signing you up...

Thank you for signing up!

PHP Decode

$_F=__FILE__;$_X='P1VHPy9GL1RDKlQyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy..

Decoded Output download

?><?php
/*
=====================================================
 DataLife Engine - by SoftNews Media Group 
-----------------------------------------------------
 https://dle-news.ru/
-----------------------------------------------------
 Copyright (c) 2004-2023 SoftNews Media Group
=====================================================
 This code is protected by copyright
=====================================================
 File: pm.php
-----------------------------------------------------
 Use: PM
=====================================================
*/

if( !defined('DATALIFEENGINE') ) {
	header( "HTTP/1.1 403 Forbidden" );
	header ( 'Location: ../../' );
	die( "Hacking attempt!" );
}

if( $config['allow_comments_wysiwyg'] > 0 ) {

	$allowed_tags = array('div[align|style|class|data-commenttime|data-commentuser|contenteditable]', 'span[style|class|data-userurl|data-username|contenteditable]', 'p[align|style|class]', 'pre[class]', 'code', 'br', 'strong', 'em', 'ul', 'li', 'ol', 'b', 'u', 'i', 's', 'hr');
	
	if( $user_group[$member_id['user_group']]['allow_url'] ) $allowed_tags[] = 'a[href|target|style|class|title]';
	if( $user_group[$member_id['user_group']]['allow_image'] ) $allowed_tags[] = 'img[style|class|src|alt|width|height]';
	
	$parse = new ParseFilter( $allowed_tags );

} else {
	$parse = new ParseFilter();
}

$parse->safe_mode = true;
$parse->remove_html = false;
$parse->allow_video = false;
$parse->allow_media = false;
$parse->disable_leech = true;
$parse->allow_url = $user_group[$member_id['user_group']]['allow_url'];
$parse->allow_image = $user_group[$member_id['user_group']]['allow_image'];

$user_group[$member_id['user_group']]['allow_up_image'] = 0;
$user_group[$member_id['user_group']]['video_comments'] = 0;
$user_group[$member_id['user_group']]['media_comments'] = 0;

$p_name = "";
$p_id = "";

$stop_pm = FALSE;
if( isset( $_REQUEST['doaction'] ) ) $doaction = $_REQUEST['doaction'];
else $doaction = "";

if( !$is_logged OR !$user_group[$member_id['user_group']]['allow_pm'] ) {
	
	if( !$is_logged AND isset($_GET['pmid']) AND $_GET['pmid'] ) {
		
		msgbox( $lang['all_err_1'], $lang['pm_err_12'] );
		
	} elseif ( !$is_logged ) {
		
		msgbox( $lang['all_err_1'], $lang['pm_err_13'] );
		
	} else {
		
		msgbox( $lang['all_err_1'], $lang['pm_err_1'] );
		
	}
	
	$stop_pm = TRUE;
}

if( $user_group[$member_id['user_group']]['max_pm'] AND $member_id['pm_all'] >= $user_group[$member_id['user_group']]['max_pm'] AND ! $stop_pm ) {
	msgbox( $lang['all_info'], $lang['pm_err_9'] );
}


if( $user_group[$member_id['user_group']]['max_pm_day'] AND ( isset( $_POST['send'] ) OR $doaction == "newpm" ) ) {

	$this_time = time() - 86400;
	$db->query( "DELETE FROM " . PREFIX . "_sendlog WHERE date < '$this_time' AND flag='1'" );

	$row = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_sendlog WHERE user = '{$member_id['name']}' AND flag='1'");

	if( $row['count'] >=  $user_group[$member_id['user_group']]['max_pm_day'] ) {

		msgbox( $lang['all_err_1'], str_replace('{max}', $user_group[$member_id['user_group']]['max_pm_day'], $lang['pm_err_10']) );
		$stop_pm = TRUE;
	}
}


if( $doaction == "del" AND !$stop_pm AND isset($_POST['selected_pm']) AND count($_POST['selected_pm']) ) {

	if( $_REQUEST['dle_allow_hash'] == "" or $_REQUEST['dle_allow_hash'] != $dle_login_hash ) {
		
		die( "Hacking attempt! User ID not valid" );
	
	}

	$delete_count = 0;

	foreach ( $_POST['selected_pm'] as $pmid ) {
			
		$pmid = intval( $pmid );
		$row = $db->super_query( "SELECT id, user, user_from, pm_read, folder FROM " . USERPREFIX . "_pm where id= '{$pmid}'" );
			
		if( ($row['user'] == $member_id['user_id'] AND $row['folder'] == "inbox") OR ($row['user_from'] == $member_id['name'] AND $row['folder'] == "outbox") ) {
			$db->query( "DELETE FROM " . USERPREFIX . "_pm WHERE id='{$row['id']}'" );
			$delete_count ++;
				
			if( !$row['pm_read'] AND $row['folder'] == "inbox" ) {
				$db->query( "UPDATE " . USERPREFIX . "_users SET pm_unread=pm_unread-1 where user_id='{$member_id['user_id']}'" );
			}
				
			$db->query( "UPDATE " . USERPREFIX . "_users SET pm_all=pm_all-1 where user_id='{$member_id['user_id']}'" );
			
		}
		
	}

	$member_id['pm_all'] = $member_id['pm_all'] - $delete_count;
	if( !$delete_count ) msgbox( $lang['all_err_1'], $lang['pm_err_5'] );

}

if( $doaction == "setunread" AND !$stop_pm AND count($_POST['selected_pm']) ) {

	if( $_REQUEST['dle_allow_hash'] == "" or $_REQUEST['dle_allow_hash'] != $dle_login_hash ) {
		
		die( "Hacking attempt! User ID not valid" );
	
	}

	foreach ( $_POST['selected_pm'] as $pmid ) {

		$pmid = intval( $pmid );
		$row = $db->super_query( "SELECT id, user, user_from, pm_read, folder FROM " . USERPREFIX . "_pm where id= '{$pmid}'" );

		if( ($row['user'] == $member_id['user_id'] AND $row['folder'] == "inbox") ) {

			if( $row['pm_read'] ) {
				
				$db->query( "UPDATE " . USERPREFIX . "_users SET pm_unread=pm_unread+1  WHERE user_id='{$member_id['user_id']}'" );
				
				$db->query( "UPDATE " . USERPREFIX . "_pm SET pm_read='0'  WHERE id='{$row['id']}'" );
			
			}

		}

	}

}


if( $doaction == "setread" AND !$stop_pm AND isset($_POST['selected_pm']) AND count($_POST['selected_pm']) ) {

	if( $_REQUEST['dle_allow_hash'] == "" or $_REQUEST['dle_allow_hash'] != $dle_login_hash ) {
		
		die( "Hacking attempt! User ID not valid" );
	
	}

	foreach ( $_POST['selected_pm'] as $pmid ) {

		$pmid = intval( $pmid );
		$row = $db->super_query( "SELECT id, user, user_from, pm_read, folder FROM " . USERPREFIX . "_pm where id= '{$pmid}'" );

		if( ($row['user'] == $member_id['user_id'] AND $row['folder'] == "inbox") ) {

			if( !$row['pm_read'] ) {
				
				$db->query( "UPDATE " . USERPREFIX . "_users SET pm_unread=pm_unread-1  WHERE user_id='{$member_id['user_id']}'" );
				
				$db->query( "UPDATE " . USERPREFIX . "_pm SET pm_read='1'  WHERE id='{$row['id']}'" );
			
			}

		}

	}

}

$tpl->load_template( 'pm.tpl' );

$tpl->set( '[inbox]', "<a href=\"$PHP_SELF?do=pm&amp;folder=inbox\">" );
$tpl->set( '[/inbox]', "</a>" );
$tpl->set( '[outbox]', "<a href=\"$PHP_SELF?do=pm&amp;folder=outbox\">" );
$tpl->set( '[/outbox]', "</a>" );
$tpl->set( '[new_pm]', "<a href=\"$PHP_SELF?do=pm&amp;doaction=newpm\">" );
$tpl->set( '[/new_pm]', "</a>" );

if ( $user_group[$member_id['user_group']]['max_pm'] ) {

	$prlim = intval( ($member_id['pm_all'] / $user_group[$member_id['user_group']]['max_pm']) * 100 );

	if ($prlim > 100) $prlim = 100;

	$tpl->set( '{proc-pm-limit}', $prlim );
	$tpl->set( '{pm-limit}', $user_group[$member_id['user_group']]['max_pm'] );

} else {
	$prlim = 0;
	$tpl->set( '{proc-pm-limit}', $prlim );
	$tpl->set( '{pm-limit}', $lang['no_pm_limit'] );
}

$tpl->set( '{pm-progress-bar}', "<div class=\"pm_progress_bar\" title=\"{$lang['pm_progress_bar']} {$prlim}%\"><span style=\"width: {$prlim}%\">{$prlim}%</span></div>" );

if( isset( $_POST['send'] ) and !$stop_pm ) {
	
	$name = $db->safesql( htmlspecialchars(strip_tags( trim( $_POST['name'] ) ), ENT_QUOTES, $config['charset'] ) );
	$subj = $db->safesql( htmlspecialchars(strip_tags( trim( $_POST['subj'] ) ), ENT_QUOTES, $config['charset'] ) );

	if( dle_strlen( $_POST['comments'], $config['charset'] ) > 65000 ) $_POST['comments'] = "";
	
	$stop = "";
	$go_back = "";
	
	if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
		$stop .= "<li>" . $lang['sess_error'] . "</li>";
		$stop_pm = true;
	}

	if( !isset($_POST['duplicateprotection']) OR (isset($_SESSION['dp']['dp_'.md5($_POST['duplicateprotection'])]) AND $_SESSION['dp']['dp_'.md5($_POST['duplicateprotection'])] === true ) ) {
		$stop .= "<li>" . $lang['duplicate_protect'] . "</li>";
		$stop_pm = true;
		$go_back = "<a href=\"{$PHP_SELF}?do=pm\">{$lang['all_prev']}</a>";
	}
	
	if( $config['allow_comments_wysiwyg'] > 0 ) {
			
		if( strlen( $_POST['comments'] ) < 8 ) $_POST['comments'] = "";
		
		$parse->wysiwyg = true;
			
		$comments = $db->safesql( $parse->BB_Parse( $parse->process( trim( $_POST['comments'] ) ) ) );
	
	} else {
		
		if ($config['allow_comments_wysiwyg'] == "-1") $parse->allowbbcodes = false;
		
		$comments = $db->safesql( $parse->BB_Parse( $parse->process( trim( $_POST['comments'] ) ), false ) );
	}

	
	if( empty( $name ) or empty( $subj ) or $comments == "" ) $stop .= $lang['pm_err_2'];
	
	if( dle_strlen( $subj, $config['charset'] ) > 250 ) {
		$stop .= $lang['pm_err_3'];
	}
	
	if( dle_strlen( $name, $config['charset'] ) > 40 ) {
		$stop .= $lang['reg_err_3'];
	}
	
	if( $parse->not_allowed_tags ) {
		
		$stop .= "<li>" .$lang['news_err_33']. "</li>";
	}

	if( $parse->not_allowed_text ) {
		
		$stop .= "<li>" . $lang['news_err_37']. "</li>";
	}
	
	if( $user_group[$member_id['user_group']]['captcha_pm'] ) {

		if ($config['allow_recaptcha']) {

			$sec_code = 1;
			$sec_code_session = false;

			if ( $_POST['g-recaptcha-response'] ) {
			
					$reCaptcha = new ReCaptcha($config['recaptcha_private_key']);

					$resp = $reCaptcha->verifyResponse(get_ip(), $_POST['g-recaptcha-response'] );
			
			        if ($resp === null OR !$resp->success) {

						$stop .= "<li>" . $lang['recaptcha_fail'] . "</li>";

			        }

			} else $stop .= "<li>" . $lang['recaptcha_fail'] . "</li>";

		} elseif( $_REQUEST['sec_code'] != $_SESSION['sec_code_session'] OR !$_SESSION['sec_code_session'] ) $stop .= "<li>" . $lang['recaptcha_fail'] . "</li>";
	
	}

	if( $user_group[$member_id['user_group']]['pm_question'] ) {
	
		if ( intval($_SESSION['question']) ) {
	
			$answer = $db->super_query("SELECT id, answer FROM " . PREFIX . "_question WHERE id='".intval($_SESSION['question'])."'");
	
			$answers = explode( "
", $answer['answer'] );
	
			$pass_answer = false;
	
			if( function_exists('mb_strtolower') ) {
				$question_answer = trim(mb_strtolower($_POST['question_answer'], $config['charset']));
			} else {
				$question_answer = trim(strtolower($_POST['question_answer']));
			}
	
			if( count($answers) AND $question_answer ) {
				foreach( $answers as $answer ){

					if( function_exists('mb_strtolower') ) {
						$answer = trim(mb_strtolower($answer, $config['charset']));
					} else {
						$answer = trim(strtolower($answer));
					}

					if( $answer AND $answer == $question_answer ) {
						$pass_answer	= true;
						break;
					}
				}
			}

			if( !$pass_answer ) $stop .= "<li>".$lang['reg_err_24']."</li>";

		} else $stop .= "<li>".$lang['reg_err_24']."</li>";
	
	}

	if( !$stop AND $user_group[$member_id['user_group']]['spampmfilter'] ) {
		
		$row = $db->super_query( "SELECT * FROM " . PREFIX . "_spam_log WHERE ip = '{$_IP}'" );
		$member_id['email'] = $db->safesql($member_id['email']);
		
		$row['id'] = isset($row['id']) ? $row['id'] : false;
		$row['email'] = isset($row['email']) ? $row['email'] : false;
		$row['is_spammer'] = isset($row['is_spammer']) ? $row['is_spammer'] : false;
		
		if ( !$row['id'] OR !$row['email'] ) {
	
			$sfs = new StopSpam($config['spam_api_key'], $user_group[$member_id['user_group']]['spampmfilter'] );
			$args = array('ip' => $_IP, 'email' => $member_id['email']);
	
			if ($sfs->is_spammer( $args )) {
	
				if ( !$row['id'] ) {
					$db->query( "INSERT INTO " . PREFIX . "_spam_log (ip, is_spammer, email, date) VALUES ('{$_IP}','1', '{$member_id['email']}', '{$_TIME}')" );
				} else {
					$db->query( "UPDATE " . PREFIX . "_spam_log SET is_spammer='1', email='{$member_id['email']}' WHERE id='{$row['id']}'" );
				}
	
				$stop .= $lang['reg_err_34'];
	
			} else {
				
				if ( !$row['id'] ) {
					$db->query( "INSERT INTO " . PREFIX . "_spam_log (ip, is_spammer, email, date) VALUES ('{$_IP}','0', '{$member_id['email']}', '{$_TIME}')" );
				} else {
					$db->query( "UPDATE " . PREFIX . "_spam_log SET email='{$member_id['email']}' WHERE id='{$row['id']}'" );
				}
				
			}
		
		} elseif ($row['is_spammer']) {
	
			$stop .= $lang['reg_err_34'];
	
		}
	
	}
	
	if( !$stop ) {
		
		$db->query( "SELECT email, name, user_id, pm_all, user_group FROM " . USERPREFIX . "_users WHERE name = '{$name}'" );
		
		if( !$db->num_rows() ) $stop .= $lang['pm_err_4'];
		
		$row = $db->get_row();
		$db->free();
		
		if(!$stop AND !$user_group[$row['user_group']]['allow_pm'] ) {
			$stop .= "<li>".$lang['pm_err_11']."</li>";
		}
	
	}
	
	if( !$stop ) {

		$db->query( "SELECT id FROM " . USERPREFIX . "_ignore_list WHERE user='{$row['user_id']}' AND user_from='{$member_id['name']}'" );
		if( $db->num_rows() ) $stop .= $lang['pm_ignored'];
		$db->free();

	}
	
	if( !$stop AND ($user_group[$row['user_group']]['max_pm'] AND $row['pm_all'] >= $user_group[$row['user_group']]['max_pm']) and $member_id['user_group'] != 1 ) {
		$stop .= $lang['pm_err_8'];
	}
	
	if( !$stop ) {
		
		$_SESSION['sec_code_session'] = 0;
		$_SESSION['dp']['dp_'.md5($_POST['duplicateprotection'])] = true;
		
		$time = time();
		$member_id['name'] = $db->safesql($member_id['name']);

		if( isset($_REQUEST['outboxcopy']) AND intval($_REQUEST['outboxcopy']) ) {
			
			$db->query( "INSERT INTO " . USERPREFIX . "_pm (subj, text, user, user_from, date, pm_read, folder) values ('$subj', '$comments', '{$row['user_id']}', '{$member_id['name']}', '{$time}', '0', 'outbox')" );
			$send_id = $db->insert_id();

			$db->query( "UPDATE " . USERPREFIX . "_users SET pm_all=pm_all+1 WHERE user_id='{$member_id['user_id']}'" );
		
		} else $send_id = 0;
		
		$db->query( "INSERT INTO " . USERPREFIX . "_pm (subj, text, user, user_from, date, pm_read, folder, sendid) values ('{$subj}', '{$comments}', '{$row['user_id']}', '{$member_id['name']}', '{$time}', '0', 'inbox', '{$send_id}')" );
		$newpmid = $db->insert_id();
		
		$db->query( "UPDATE " . USERPREFIX . "_users SET pm_all=pm_all+1, pm_unread=pm_unread+1  WHERE user_id='{$row['user_id']}'" );
		
		if( isset( $_GET['replyid'] ) ) $replyid = intval( $_GET['replyid'] ); else $replyid = false;
		
		if( $replyid ) {
			
			$db->query( "UPDATE " . USERPREFIX . "_pm SET reply=1 WHERE id= '{$replyid}'" );
		
		}

		if( $user_group[$member_id['user_group']]['max_pm_day'] ) { 

			$db->query( "INSERT INTO " . PREFIX . "_sendlog (user, date, flag) values ('{$member_id['name']}', '{$time}', '1')" );

		}
		
		if( $config['mail_pm'] ) {
			
			$mail_template = $db->super_query( "SELECT * FROM " . PREFIX . "_email WHERE name='pm' LIMIT 0,1" );
			$mail = new dle_mail( $config, $mail_template['use_html'] );
			
			if (strpos($config['http_home_url'], "//") === 0) $slink = "https:".$config['http_home_url'];
			elseif (strpos($config['http_home_url'], "/") === 0) $slink = "https://".$_SERVER['HTTP_HOST'].$config['http_home_url'];
			else $slink = $config['http_home_url'];
			
			$slink = $slink . "index.php?do=pm&doaction=readpm&pmid=" . $newpmid;
			
			$mail_template['template'] = stripslashes( $mail_template['template'] );
			$mail_template['template'] = str_replace( "{%username%}", $row['name'], $mail_template['template'] );
			$mail_template['template'] = str_replace( "{%date%}", langdate( "j F Y H:i", $_TIME ), $mail_template['template'] );
			$mail_template['template'] = str_replace( "{%fromusername%}", $member_id['name'], $mail_template['template'] );
			$mail_template['template'] = str_replace( "{%title%}", strip_tags( stripslashes( $subj ) ), $mail_template['template'] );
			$mail_template['template'] = str_replace( "{%url%}", $slink, $mail_template['template'] );
			
			$body = str_replace( '
', "", $comments );
			$body = str_replace( '
', "", $body );
			
			$body = stripslashes( stripslashes( $body ) );
			$body = str_replace( "<br />", "
", $body );
			$body = str_replace( "<br>", "
", $body );
			$body = strip_tags( $body );
			
			if( $mail_template['use_html'] ) {
				$body = str_replace("
", "<br>", $body );
			}
			
			$mail_template['template'] = str_replace( "{%text%}", $body, $mail_template['template'] );
			
			$mail->send( $row['email'], $lang['mail_pm'], $mail_template['template'] );
		
		}
		
		msgbox( $lang['all_info'], $lang['pm_sendok'] . " <a href=\"$PHP_SELF?do=pm&amp;doaction=newpm\">" . $lang['pm_noch'] . "</a> " . $lang['pm_or'] . " <a href=\"$PHP_SELF\">" . $lang['pm_main'] . "</a>" );
		$stop_pm = TRUE;
	
	} else msgbox( $lang['all_err_1'], "<ul>{$stop}</ul>{$go_back}" );

}

if( $doaction == "del" AND !$stop_pm AND isset($_GET['pmid']) ) {
	
	if( $_REQUEST['dle_allow_hash'] == "" or $_REQUEST['dle_allow_hash'] != $dle_login_hash ) {
		
		die( "Hacking attempt! User ID not valid" );
	
	}
	
	$pmid = intval( $_GET['pmid'] );
	$row = $db->super_query( "SELECT id, user, user_from, pm_read, folder FROM " . USERPREFIX . "_pm where id= '{$pmid}'" );
		
	if( ($row['user'] == $member_id['user_id'] AND $row['folder'] == "inbox") OR ($row['user_from'] == $member_id['name'] AND $row['folder'] == "outbox") ) {
		$db->query( "DELETE FROM " . USERPREFIX . "_pm WHERE id='{$row['id']}'" );
			
		if( !$row['pm_read'] AND $row['folder'] == "inbox" ) {
			$db->query( "UPDATE " . USERPREFIX . "_users SET pm_unread=pm_unread-1 WHERE user_id='{$member_id['user_id']}'" );
		}
			
		$db->query( "UPDATE " . USERPREFIX . "_users SET pm_all=pm_all-1 WHERE user_id='{$member_id['user_id']}'" );

		msgbox( $lang['all_info'], $lang['pm_delok'] . " <a href=\"$PHP_SELF?do=pm\">" . $lang['all_prev'] . "</a>." );
		
	} else msgbox( $lang['all_err_1'], $lang['pm_err_5'] );


} elseif( $doaction == "readpm" AND !$stop_pm ) {
	
	$pmid = intval( $_GET['pmid'] );
	
	$tpl->set( '[readpm]', "" );
	$tpl->set( '[/readpm]', "" );
	$tpl->set_block( "'\[pmlist\].*?\[/pmlist\]'si", "" );
	$tpl->set_block( "'\[newpm\].*?\[/newpm\]'si", "" );
	
	$db->query( "SELECT id, subj, text, user, user_from, date, pm_read, folder, sendid, user_id, news_num, comm_num, user_group, lastdate, reg_date, signature, foto, fullname, land, xfields FROM " . USERPREFIX . "_pm LEFT JOIN " . USERPREFIX . "_users ON " . USERPREFIX . "_pm.user_from=" . USERPREFIX . "_users.name WHERE " . USERPREFIX . "_pm.id= '$pmid'" );
	$row = $db->get_row();
	
	if( $db->num_rows() < 1 ) {
		
		msgbox( $lang['all_err_1'], $lang['pm_err_6'] );
		$stop_pm = TRUE;
	
	} elseif( $row['user'] != $member_id['user_id'] AND $row['user_from'] != $member_id['name'] ) {
		
		msgbox( $lang['all_err_1'], $lang['pm_err_7'] );
		$stop_pm = TRUE;
	
	} else {
		
		if( $row['user'] == $member_id['user_id'] AND !$row['pm_read'] AND $row['folder'] == "inbox" ) {
			
			$db->query( "UPDATE " . USERPREFIX . "_users SET pm_unread=pm_unread-1  WHERE user_id='{$member_id['user_id']}'" );

			if ( $row['sendid'] ) $addwhere =" OR id='{$row['sendid']}'"; else $addwhere ="";

			$db->query( "UPDATE " . USERPREFIX . "_pm SET pm_read='1' WHERE id='{$row['id']}'{$addwhere}" );
		
		}

		if( strpos( $tpl->copy_template, "[xfvalue_" ) !== false ) $xfound = true;
		else $xfound = false;
		
		if( $xfound ) { 

			$xfields = xfieldsload( true );

			$xfieldsdata = xfieldsdataload( $row['xfields'] );
				
			foreach ( $xfields as $value ) {
				$preg_safe_name = preg_quote( $value[0], "'" );
					
				if( $value[5] != 1 OR $member_id['user_group'] == 1 OR ($is_logged AND $member_id['name'] == $row['user_from']) ) {
					if( empty( $xfieldsdata[$value[0]] ) ) {
						$tpl->copy_template = preg_replace( "'\[xfgiven_{$preg_safe_name}\](.*?)\[/xfgiven_{$preg_safe_name}\]'is", "", $tpl->copy_template );
					} else {
						$tpl->copy_template = preg_replace( "'\[xfgiven_{$preg_safe_name}\](.*?)\[/xfgiven_{$preg_safe_name}\]'is", "", $tpl->copy_template );
					}
					$tpl->set( "[xfvalue_{$value[0]}]", stripslashes( $xfieldsdata[$value[0]] ));
				} else {
					$tpl->copy_template = preg_replace( "'\[xfgiven_{$preg_safe_name}\](.*?)\[/xfgiven_{$preg_safe_name}\]'is", "", $tpl->copy_template );
					$tpl->copy_template = preg_replace( "'\[xfvalue_{$preg_safe_name}\]'i", "", $tpl->copy_template );
				}
			}
		}

		if( $row['signature'] and $user_group[$row['user_group']]['allow_signature'] ) {
				
			$tpl->set_block( "'\[signature\](.*?)\[/signature\]'si", "" );
			$tpl->set( '{signature}', stripslashes( $row['signature'] ) );
			
		} else {
			$tpl->set_block( "'\[signature\](.*?)\[/signature\]'si", "" );
		}


		if( $user_group[$row['user_group']]['icon'] ) $tpl->set( '{group-icon}', "<img src=\"" . $user_group[$row['user_group']]['icon'] . "\" border=\"0\" alt=\"\" />" );
		else $tpl->set( '{group-icon}', "" );

		$tpl->set( '{group-name}', $user_group[$row['user_group']]['group_prefix'].$user_group[$row['user_group']]['group_name'].$user_group[$row['user_group']]['group_suffix'] );

		$tpl->set( '{news-num}', number_format($row['news_num'], 0, ',', ' ') );
		$tpl->set( '{comm-num}', number_format($row['comm_num'], 0, ',', ' ') );

		if ( count(explode("@", $row['foto'])) == 2 ) {
		
			$tpl->set( '{foto}', 'https://www.gravatar.com/avatar/' . md5(trim($row['foto'])) . '?s=' . intval($user_group[$row['user_group']]['max_foto']) );	
		
		} else {
			
			if( $row['foto'] ) {
				
				if (strpos($row['foto'], "//") === 0) $avatar = "http:".$row['foto']; else $avatar = $row['foto'];
	
				$avatar = @parse_url ( $avatar );
	
				if( $avatar['host'] ) {
					
					$tpl->set( '{foto}', $row['foto'] );
					
				} else $tpl->set( '{foto}', $config['http_home_url'] . "uploads/fotos/" . $row['foto'] );
			
			} else $tpl->set( '{foto}', "{THEME}/dleimages/noavatar.png" );
		
		}

		$tpl->set('{date}', difflangdate($config['timestamp_comment'], $row['date']));

		$news_date = $row['date'];
		$tpl->copy_template = preg_replace_callback("#\{date=(.+?)\}#i", "formdate", $tpl->copy_template);

		if($row['reg_date'] ) {

			$tpl->set( '{registration}', difflangdate("j F Y, H:i", $row['reg_date'] ) );

			$news_date = $row['reg_date'];
			$tpl->copy_template = preg_replace_callback("#\{registration=(.+?)\}#i", "formdate", $tpl->copy_template);
		
		} else $tpl->set( '{registration}', '--' );

		if ( $row['lastdate'] ) {

			$tpl->set('{lastdate}', difflangdate("j F Y, H:i", $row['lastdate']));

			$news_date = $row['lastdate'];
			$tpl->copy_template = preg_replace_callback("#\{lastdate=(.+?)\}#i", "formdate", $tpl->copy_template);

			if ( ($row['lastdate'] + 1200) > $_TIME ) {

				$tpl->set('[online]', "");
				$tpl->set('[/online]', "");
				$tpl->set_block("'\[offline\](.*?)\[/offline\]'si", "");
			} else {
				$tpl->set('[offline]', "");
				$tpl->set('[/offline]', "");
				$tpl->set_block("'\[online\](.*?)\[/online\]'si", "");
			}

		} else {

			$tpl->set('{lastdate}', '--');
			$tpl->set_block("'\[offline\](.*?)\[/offline\]'si", "");
			$tpl->set_block("'\[online\](.*?)\[/online\]'si", "");
		}

		if( $config['allow_alt_url'] ) {
			
			$user_from = $config['http_home_url'] . "user/" . urlencode( $row['user_from'] ) . "/";
			$user_from = "onclick=\"ShowProfile('" . urlencode( $row['user_from'] ) . "', '" . htmlspecialchars( $user_from, ENT_QUOTES, $config['charset'] ) . "', '" . $user_group[$member_id['user_group']]['admin_editusers'] . "'); return false;\"";
			$tpl->set( '{author}', "<a {$user_from} class=\"pm_list\" href=\"" . $config['http_home_url'] . "user/" . urlencode( $row['user_from'] ) . "/\">" . $row['user_from'] . "</a>");
		
		} else {
			
			$user_from = "$PHP_SELF?subaction=userinfo&amp;user=" . urlencode( $row['user_from'] );
			$user_from = "onclick=\"ShowProfile('" . urlencode( $row['user_from'] ) . "', '" . htmlspecialchars( $user_from, ENT_QUOTES, $config['charset'] ) . "', '" . $user_group[$member_id['user_group']]['admin_editusers'] . "'); return false;\"";
			$tpl->set( '{author}', "<a {$user_from} class=\"pm_list\" href=\"$PHP_SELF?subaction=userinfo&amp;user=" . urlencode( $row['user_from'] ) . "\">" . $row['user_from'] . "</a>");

		}

		$tpl->set( '{login}', $row['user_from']);
		$tpl->set( '[reply]', "<a href=\"" . $config['http_home_url'] . "index.php?do=pm&amp;doaction=newpm&amp;replyid=" . $row['id'] . "\">" );
		$tpl->set( '[/reply]', "</a>" );
		
		$tpl->set( '[del]', "<a href=\"javascript:confirmDelete('" . $config['http_home_url'] . "index.php?do=pm&amp;doaction=del&amp;pmid=" . $row['id'] . "&amp;dle_allow_hash=" . $dle_login_hash . "')\">" );
		$tpl->set( '[/del]', "</a>" );

		$tpl->set( '[ignore]', "<a href=\"javascript:AddIgnorePM('" . $row['user_id'] . "', '" . $lang['add_to_ignore'] . "')\">" );
		$tpl->set( '[/ignore]', "</a>" );

		$tpl->set( '[complaint]', "<a href=\"javascript:AddComplaint('" . $row['id'] . "', 'pm')\">" );
		$tpl->set( '[/complaint]', "</a>" );

		$row['text'] = preg_replace ( "#\[hide(.*?)\]#i", "", $row['text'] );
		$row['text'] = str_ireplace( "[/hide]", "", $row['text']);

		$tpl->set( '{subj}', stripslashes( $row['subj'] ) );
		$tpl->set( '{text}', stripslashes( $row['text'] ) );
		
		$tpl->compile( 'content' );

		$tpl->clear();
	}

} elseif( $doaction == "newpm" AND !$stop_pm ) {
	
	$duplicateprotection = md5(SECURE_AUTH_KEY.time().random_int( 0, 100 ));
	
	$ajax_form = <<<HTML
<span id="dle-pm-preview"></span>
<script>
<!--
function dlePMPreview(){ 

	if (dle_wysiwyg == "2") {

		var pm_text = tinyMCE.get('comments').getContent(); 

	} else {

		var pm_text = document.getElementById('dle-comments-form').comments.value;

	}

	if(document.getElementById('dle-comments-form').name.value == '' || document.getElementById('dle-comments-form').subj.value == '' || pm_text == '')
	{
		DLEalert('{$lang['comm_req_f']}', dle_info);return false;

	}

	var name = document.getElementById('dle-comments-form').name.value;
	var subj = document.getElementById('dle-comments-form').subj.value;

	ShowLoading('');

	$.post(dle_root + "engine/ajax/controller.php?mod=pm", { text: pm_text, name: name, subj: subj, skin: dle_skin, user_hash: '{$dle_login_hash}' }, function(data){

		HideLoading('');

		$("#dle-pm-preview").html(data);

		$("html,body").stop().animate({scrollTop: $("#dle-pm-preview").position().top - 70}, 1100);

		setTimeout(function() { $("#blind-animation").show('blind',{},1500)}, 1100);


	});

};
//-->
</script>
HTML;
	
	$tpl->set( '[newpm]', $ajax_form );
	$tpl->set( '[/newpm]', "" );
	$tpl->set_block( "'\[pmlist\].*?\[/pmlist\]'si", "" );
	$tpl->set_block( "'\[readpm\].*?\[/readpm\]'si", "" );
	
	if( $user_group[$member_id['user_group']]['captcha_pm'] ) {

			if ( $config['allow_recaptcha'] ) {

				$tpl->set( '[recaptcha]', "" );
				$tpl->set( '[/recaptcha]', "" );
				
				$captcha_name = "g-recaptcha";
				$captcha_url = "https://www.google.com/recaptcha/api.js?hl={$lang['language_code']}";
				
				if( $config['allow_recaptcha'] == 3) {
					
					$captcha_name = "h-captcha";
					$captcha_url = "https://js.hcaptcha.com/1/api.js?hl={$lang['language_code']}";
				
				}

				if ($config['allow_recaptcha'] == 4) {

					$captcha_name = "cf-turnstile";
					$captcha_url = "https://challenges.cloudflare.com/turnstile/v0/api.js?compat=recaptcha";
				}

				if( $config['allow_recaptcha'] == 2) {
						
					$tpl->set( '{recaptcha}', "");
					$tpl->copy_template .= "<script src=\"https://www.google.com/recaptcha/api.js?render={$config['recaptcha_public_key']}\" async defer></script>";
						
				} else {
						
					$tpl->set( '{recaptcha}', "<div class=\"{$captcha_name}\" data-sitekey=\"{$config['recaptcha_public_key']}\" data-theme=\"{$config['recaptcha_theme']}\" data-language=\"{$lang['language_code']}\"></div><script src=\"{$captcha_url}\" async defer></script>" );

				}
				$tpl->set_block( "'\[sec_code\](.*?)\[/sec_code\]'si", "" );
				$tpl->set( '{sec_code}', "" );

			} else {

				$tpl->set( '[sec_code]', "" );
				$tpl->set( '[/sec_code]', "" );
				$tpl->set( '{sec_code}', "<a onclick=\"reload(); return false;\" href=\"#\" title=\"{$lang['reload_code']}\"><span id=\"dle-captcha\"><img src=\"engine/modules/antibot/antibot.php\" alt=\"{$lang['reload_code']}\" border=\"0\" width=\"160\" height=\"80\" /></span></a>" );
				$tpl->set_block( "'\[recaptcha\](.*?)\[/recaptcha\]'si", "" );
				$tpl->set( '{recaptcha}', "" );
			}

	} else {

		$tpl->set( '{sec_code}', "" );
		$tpl->set( '{recaptcha}', "" );
		$tpl->set_block( "'\[recaptcha\](.*?)\[/recaptcha\]'si", "" );
		$tpl->set_block( "'\[sec_code\](.*?)\[/sec_code\]'si", "" );

	}

	if( $user_group[$member_id['user_group']]['pm_question'] ) {

		$tpl->set( '[question]', "" );
		$tpl->set( '[/question]', "" );

		$question = $db->super_query("SELECT id, question FROM " . PREFIX . "_question ORDER BY RAND() LIMIT 1");
		$tpl->set( '{question}', "<span id=\"dle-question\">".htmlspecialchars( stripslashes( $question['question'] ), ENT_QUOTES, $config['charset'] )."</span>" );

		$_SESSION['question'] = $question['id'];

	} else {

		$tpl->set_block( "'\[question\](.*?)\[/question\]'si", "" );
		$tpl->set( '{question}', "" );

	}
	
	if( isset( $_GET['replyid'] ) ) $replyid = intval( $_GET['replyid'] ); else $replyid = false;
	if( isset( $_GET['user'] ) ) $user = intval( $_GET['user'] ); else $user = false;

	if( isset( $_REQUEST['username'] ) ) $username = $db->safesql( strip_tags( urldecode( $_GET['username'] ) ) );
	else $username = '';

	$text = "";

	if( $replyid ) {
		
		$row = $db->super_query( "SELECT * FROM " . USERPREFIX . "_pm WHERE id= '$replyid'" );
		
		if( ($row['user'] != $member_id['user_id']) AND ($row['user_from'] != $member_id['name']) ) {
			
			msgbox( $lang['all_err_1'], $lang['pm_err_7'] );
			$stop_pm = TRUE;
		
		} else {
			
			if( $config['allow_comments_wysiwyg'] > 0 ) {
				
				$parse->wysiwyg = true;
				$text = $parse->decodeBBCodes( $row['text'], TRUE, $config['allow_comments_wysiwyg'] );
				
				$text = preg_replace('/<p[^>]*>/', '', $text); 
				$text = str_replace("</p>", "<br>", $text);	
				$text = preg_replace('/<div[^>]*>/', '', $text); 
				$text = str_replace("</div>", "<br>", $text);
				$text = str_replace( "
", "", $text );
				$text = str_replace( "
", "", $text );
				
				$count_start = substr_count ($text, "[quote");
				$count_end = substr_count ($text, "[/quote]");
				
				if ($count_start AND $count_start == $count_end) {
					$text = str_ireplace( "[quote]", "<div class=\"quote\">", $text );
					$text = preg_replace( "#\[quote=(.*?)\]#i", "<div class=\"title_quote\">{$lang['i_quote']} </div><div class=\"quote\">", $text );
					$text = str_ireplace( "[/quote]", "</div>", $text );
				}
			
				$text = trim($text);
	
				$text = "<div class=\"quote_block noncontenteditable\"><div class=\"quote\"><div class=\"quote_body contenteditable\">{$text}</div></div></div><p></p>";
			
			} else {
				
				$text = $parse->decodeBBCodes( $row['text'], false );
	
				$text = str_replace( "&#58;", ":", $text );
				$text = str_replace( "&#91;", "[", $text );
				$text = str_replace( "&#93;", "]", $text );
				$text = str_replace( "&#123;", "{", $text );
				$text = str_replace( "&#39;", "'", $text );
				$text = "[quote]" . $text . "[/quote]
";
				
			}
			
			$tpl->set( '{author}', $row['user_from'] );
	
			if (strpos ( $row['subj'], "RE:" ) === false)
				$tpl->set( '{subj}', "RE: " . stripslashes( $row['subj'] ) );
			else
				$tpl->set( '{subj}', stripslashes( $row['subj'] ) );
	
			$row = $db->super_query( "SELECT user_id, pm_all, user_group FROM " . USERPREFIX . "_users WHERE name = '" . $db->safesql( $row['user_from'] ) . "'" );
			
			if( $user_group[$row['user_group']]['max_pm'] AND $row['pm_all'] >= $user_group[$row['user_group']]['max_pm'] AND $member_id['user_group'] != 1 ) {
				$stop_pm = true;
			}
			
		}
	
	} elseif( $username != "" ) {
		
		$row = $db->super_query( "SELECT user_id, name, pm_all, user_group FROM " . USERPREFIX . "_users where name='{$username}'" );
		
		if( $user_group[$row['user_group']]['max_pm'] AND $row['pm_all'] >= $user_group[$row['user_group']]['max_pm'] AND $member_id['user_group'] != 1 ) {
			$stop_pm = true;
		}
		
		$tpl->set( '{author}', $row['name'] );
		$tpl->set( '{subj}', "" );
	
	} else {
		$tpl->set( '{author}', "" );
		$tpl->set( '{subj}', "" );
	
	}

	if( $config['allow_comments_wysiwyg'] > 0 ) {
		
		include_once (DLEPlugins::Check(ENGINE_DIR . '/editor/comments.php'));
		$bb_code = "";
		$allow_comments_ajax = true;
		
	} else
		include_once (DLEPlugins::Check(ENGINE_DIR . '/modules/bbcode.php'));

	if( $config['allow_comments_wysiwyg'] > 0 ) {
		
		$tpl->set( '{editor}', $wysiwyg );
	
	} else {
		$tpl->set( '{editor}', $bb_code );
	}
	
	$tpl->copy_template = "<form  method=\"post\" name=\"dle-comments-form\" id=\"dle-comments-form\" action=\"\">
" . $tpl->copy_template . "<input name=\"send\" type=\"hidden\" value=\"send\" /><input type=\"hidden\" name=\"user_hash\" value=\"{$dle_login_hash}\"><input type=\"hidden\" name=\"duplicateprotection\" value=\"{$duplicateprotection}\"></form>";

		
		$onload_scripts[] = <<<HTML
		
			$('#dle-comments-form').submit(function(event) {
			
				
				if (dle_wysiwyg == "2") {
					tinyMCE.triggerSave();
				}
				
				if( document.getElementById('dle-comments-form').name.value == '' || document.getElementById('dle-comments-form').subj.value == '' || document.getElementById('comments').value == '') {
					DLEalert('{$lang['comm_req_f']}', dle_info);
					return false;
				}
			
				if(dle_captcha_type == 2 && typeof grecaptcha != "undefined") {
				
					event.preventDefault();
					
					grecaptcha.execute('{$config['recaptcha_public_key']}', {action: 'personal_message'}).then(function(token) {
						$('#dle-comments-form').append('<input type="hidden" name="g-recaptcha-response" value="' + token + '">');
						$('#dle-comments-form').off('submit');
						HTMLFormElement.prototype.submit.call(document.getElementById('dle-comments-form'));
					});
			
					return false;
				}
				
				return true;
				
			});
HTML;


	if (isset($row['user_id']) AND $row['user_id']) {

		$db->query( "SELECT id FROM " . USERPREFIX . "_ignore_list WHERE user='{$row['user_id']}' AND user_from='{$member_id['name']}'" );
		if( $db->num_rows() ) { $stop_pm = true; $lang['pm_err_8'] = $lang['pm_ignored'];}
		$db->free();

	}

	if( !$stop_pm ) {
		
		$tpl->compile( 'content' );
		$tpl->clear();
		
	} else {
		
		$tpl->clear();
		if( ! $tpl->result['info'] ) msgbox( $lang['all_info'], $lang['pm_err_8'] );
		
	}

} elseif( !$stop_pm ) {
	
	$tpl->set( '[pmlist]', "" );
	$tpl->set( '[/pmlist]', "" );
	$tpl->set_block( "'\[newpm\].*?\[/newpm\]'si", "" );
	$tpl->set_block( "'\[readpm\].*?\[/readpm\]'si", "" );

	$pm_per_page = 20;
	if (isset ( $_GET['cstart'] )) $cstart = intval ( $_GET['cstart'] ); else $cstart = 0;

	if ($cstart) {
		$cstart = $cstart - 1;
		$cstart = $cstart * $pm_per_page;
	}

	if ($cstart < 0) $cstart = 0;
	
	if( $member_id['pm_unread'] < 0 ) {
		
		$db->query( "UPDATE " . USERPREFIX . "_users SET pm_unread='0' WHERE user_id='{$member_id['user_id']}'" );
	
	}
	
	$pmlist = <<<HTML
<form action="" method="post" name="pmlist" id="pmlist">
<input type="hidden" name="dle_allow_hash" value="{$dle_login_hash}" />
HTML;
	
	if( isset($_GET['folder']) AND $_GET['folder'] == "outbox" ) {

		$lang['pm_from'] = $lang['pm_to'];
		$sql = "SELECT id, subj, name as user_from, date, pm_read FROM " . USERPREFIX . "_pm LEFT JOIN " . USERPREFIX . "_users ON " . USERPREFIX . "_pm.user=" . USERPREFIX . "_users.user_id WHERE user_from = '{$member_id['name']}' AND folder = 'outbox' ORDER BY date DESC LIMIT " . $cstart . "," . $pm_per_page;
		$sql_count = "SELECT COUNT(*) as count FROM " . USERPREFIX . "_pm WHERE user_from = '{$member_id['name']}' AND folder = 'outbox'";
		$user_query = "do=pm&amp;folder=outbox";

	} else {

		$sql = "SELECT id, subj, user_from, date, pm_read, reply FROM " . USERPREFIX . "_pm where user = '{$member_id['user_id']}' AND folder = 'inbox' ORDER BY pm_read ASC, date DESC LIMIT " . $cstart . "," . $pm_per_page;
		$sql_count = "SELECT COUNT(*) as count FROM " . USERPREFIX . "_pm where user = '{$member_id['user_id']}' AND folder = 'inbox'";
		$user_query = "do=pm";
	}
	
	$pmlist .= "<table class=\"pm\" style=\"width:100%;\"><tr><td width=\"20\">&nbsp;</td><td class=\"pm_head\">" . $lang['pm_subj'] . "</td><td width=\"130\" class=\"pm_head\">" . $lang['pm_from'] . "</td><td width=\"130\" class=\"pm_head\" align=\"center\">" . $lang['pm_date'] . "</td><td width=\"50\" class=\"pm_head\" align=\"center\"><input type=\"checkbox\" name=\"master_box\" title=\"{$lang['pm_selall']}\" onclick=\"javascript:ckeck_uncheck_all()\" /></td></tr>";
	
	$db->query( $sql );
	$i = 0;
	$cc = $cstart;
	
	while ( $row = $db->get_row() ) {
		
		$i ++;
		$cc ++;
		
		if( $config['allow_alt_url'] ) {
			
			$user_from = $config['http_home_url'] . "user/" . urlencode( $row['user_from'] ) . "/";
			$user_from = "onclick=\"ShowProfile('" . urlencode( $row['user_from'] ) . "', '" . htmlspecialchars( $user_from, ENT_QUOTES, $config['charset'] ) . "', '" . $user_group[$member_id['user_group']]['admin_editusers'] . "'); return false;\"";
			$user_from = "<a {$user_from} class=\"pm_list\" href=\"" . $config['http_home_url'] . "user/" . urlencode( $row['user_from'] ) . "/\">" . $row['user_from'] . "</a>";
		
		} else {
			
			$user_from = "$PHP_SELF?subaction=userinfo&amp;user=" . urlencode( $row['user_from'] );
			$user_from = "onclick=\"ShowProfile('" . urlencode( $row['user_from'] ) . "', '" . $user_from . "', '" . $user_group[$member_id['user_group']]['admin_editusers'] . "'); return false;\"";
			$user_from = "<a {$user_from} class=\"pm_list\" href=\"$PHP_SELF?subaction=userinfo&amp;user=" . urlencode( $row['user_from'] ) . "\">" . $row['user_from'] . "</a>";

		}
		
		if( $row['pm_read'] ) {
			
			$subj = "<a class=\"pm_list\" href=\"$PHP_SELF?do=pm&amp;doaction=readpm&amp;pmid=" . $row['id'] . "\">" . stripslashes( $row['subj'] ) . "</a>";
			$icon = "{THEME}/dleimages/read.gif";
			$class = "pm-read-image";
		
		} else {
			
			$subj = "<a class=\"pm_list\" href=\"$PHP_SELF?do=pm&amp;doaction=readpm&amp;pmid=" . $row['id'] . "\"><b>" . stripslashes( $row['subj'] ) . "</b></a>";
			$icon = "{THEME}/dleimages/unread.gif";
			$class = "pm-unread-image";
		
		}
		
		if( isset($row['reply']) AND $row['reply'] ) {
			$icon = "{THEME}/dleimages/send.gif";
			$class = "pm-reply-image";
		}
		
		$pmlist .= "<tr><td><span class=\"{$class}\"><img src=\"{$icon}\" alt=\"\" /></span></td><td class=\"pm_list pm_subj\">{$subj}</td><td class=\"pm_list pm_from\">{$user_from}</td><td class=\"pm_list pm_date\" align=\"center\">" . langdate( "j.m.Y H:i", $row['date'] ) . "</td><td class=\"pm_list pm_checkbox\" align=\"center\"><input name=\"selected_pm[]\" value=\"{$row['id']}\" type=\"checkbox\" /></td></tr>";
	
	}
	
	$db->free();

	$count_all = $db->super_query( $sql_count );
	$count_all = $count_all['count'];
	$pages = "";

	if( $count_all AND $count_all > $pm_per_page) {

		if( isset( $cstart ) and $cstart > 0 ) {
			$prev = $cstart / $pm_per_page;

				if ($prev == 1)
					$pages .= "<a href=\"$PHP_SELF?{$user_query}\"> << </a> ";
				else
					$pages .= "<a href=\"$PHP_SELF?cstart=$prev&amp;$user_query\"> << </a> ";
		
		}
				
		$enpages_count = @ceil( $count_all / $pm_per_page );
				
		$cstart = ($cstart / $pm_per_page) + 1;
				
		if( $enpages_count <= 10 ) {
					
			for($j = 1; $j <= $enpages_count; $j ++) {
						
				if( $j != $cstart ) {
							
					if ($j == 1)
						$pages .= "<a href=\"$PHP_SELF?{$user_query}\">$j</a> ";
					else
						$pages .= "<a href=\"$PHP_SELF?cstart=$j&amp;$user_query\">$j</a> ";
						
				} else {
					
					$pages .= "<span>$j</span> ";
				}
			}
				
		} else {
					
			$start = 1;
			$end = 10;
			$nav_prefix = "<span class=\"nav_ext\">{$lang['nav_trennen']}</span> ";
			
			if( $cstart > 0 ) {
						
				if( $cstart > 6 ) {
							
					$start = $cstart - 4;
					$end = $start + 8;
							
					if( $end >= $enpages_count ) {
						$start = $enpages_count - 9;
						$end = $enpages_count - 1;
						$nav_prefix = "";
				} else
						$nav_prefix = "<span class=\"nav_ext\">{$lang['nav_trennen']}</span> ";
					
				}
					
			}
					
			if( $start >= 2 ) {
				
				$pages .= "<a href=\"$PHP_SELF?{$user_query}\">1</a> <span class=\"nav_ext\">{$lang['nav_trennen']}</span> ";
			
			}
					
			for($j = $start; $j <= $end; $j ++) {
						
				if( $j != $cstart ) {
					if ($j == 1)
						$pages .= "<a href=\"$PHP_SELF?{$user_query}\">$j</a> ";
					else
						$pages .= "<a href=\"$PHP_SELF?cstart=$j&amp;$user_query\">$j</a> ";
						
				} else {
							
					$pages .= "<span>$j</span> ";
				}
					
			}
					
			if( $cstart != $enpages_count ) {
						
				$pages .= $nav_prefix . "<a href=\"$PHP_SELF?cstart={$enpages_count}&amp;$user_query\">{$enpages_count}</a>";
					
			} else
				$pages .= "<span>{$enpages_count}</span> ";
		
		}

		if( $pm_per_page < $count_all AND $cc < $count_all ) {
			$next_page = $cc / $pm_per_page + 1;
			$pages .= "<a href=\"$PHP_SELF?cstart=$next_page&amp;$user_query\"> >> </a>";			
		
		}	
	}

	$pmlist .= "<tr><td colspan=\"5\">&nbsp;</td></tr><tr><td colspan=\"2\"><div class=\"navigation\">{$pages}</div></td><td colspan=\"3\" align=\"right\"><select id=\"pmlist_doaction\"name=\"doaction\"><optgroup label=\"{$lang['edit_selact']}\"><option value=\"\">---</option><option value=\"del\">{$lang['edit_seldel']}</option><option value=\"setread\">{$lang['pm_set_read']}</option><option value=\"setunread\">{$lang['pm_set_unread']}</option></optgroup></select>&nbsp;&nbsp;<input class=\"bbcodes\" type=\"submit\" value=\"{$lang['b_start']}\" /></td></tr></table></form>";
	
	if( $i ) {
		
		$tpl->set( '{pmlist}', $pmlist );

			$onload_scripts[] = <<<HTML
$('#pmlist').submit(function() {

	if( $(this).find('#pmlist_doaction').val() == 'del' ) {
	
	    DLEconfirm( dle_del_agree, dle_confirm, function () {
			$('#pmlist').off('submit').submit();
		} );
		
		return false;
	}
	
	return true;
});
HTML;
	
	} else $tpl->set( '{pmlist}', "<span class=\"pm-no-messages\">".$lang['no_message']."</span>" );
	
	$tpl->compile( 'content' );
	$tpl->clear();
}
?>

Did this file decode correctly?

Original Code

$_F=__FILE__;$_X='P1VHPy9GL1RDKlQyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMlRmTXVjdXFWTnJmOXY2VnZyZi1mOGhmPC5OY3pyam5mPXJlVnVmdzcuCi9mVC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tVGZGY2MvbjpDQ2U+ci12cmpuRTcKQ1QtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVRmSS4vaDdWNkZjZigxKWZvSEg1LW9Ib1pmPC5OY3pyam5mPXJlVnVmdzcuCi9UMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjJUZmFGVm5mMS5lcmZWbmYvNy5jcjFjcmVmOGhmMS4vaDdWNkZjVDIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyVGY0Vj5yOmYvWEUvRi9ULS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1UZltucjpmaT1UMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjJUKkNUVFZOKGYhZXJOVnZyZSgnTTNhM3F9NDk5end9ejknKWYpZnlUCUZydWVyNyhmIkRhYWlDUEVQZjVIWmY0Ljc4VmVlcnYiZik7VAlGcnVlcjdmKGYncS4xdWNWLnY6ZkVFQ0VFQydmKTtUCWVWcihmIkR1MVdWdjZmdWNjclgvYyEiZik7VHBUVFZOKGYkMS52TlY2TCd1Pj4ual8xLlhYcnZjbl9qaG5Wamg2JzBmVWZIZilmeVRUCSR1Pj4uanJlX2N1Nm5mMmZ1Nzd1aCgnZVZCTHU+VjZ2fG5jaD5yfDE+dW5ufGV1Y3UtMS5YWHJ2Y2NWWHJ8ZXVjdS0xLlhYcnZjCm5yN3wxLnZjcnZjcmVWY3U4PnIwJyxmJ24vdXZMbmNoPnJ8MT51bm58ZXVjdS0KbnI3Cjc+fGV1Y3UtCm5yN3Z1WHJ8MS52Y3J2Y3JlVmN1OD5yMCcsZicvTHU+VjZ2fG5jaD5yfDE+dW5uMCcsZicvN3JMMT51bm4wJyxmJzEuZXInLGYnODcnLGYnbmM3LnY2JyxmJ3JYJyxmJwo+JyxmJz5WJyxmJy4+JyxmJzgnLGYnCicsZidWJyxmJ24nLGYnRjcnKTtUCVQJVk4oZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ3U+Pi5qXwo3PicwZilmJHU+Pi5qcmVfY3U2bkwwZjJmJ3VMRjdyTnxjdTc2cmN8bmNoPnJ8MT51bm58Y1ZjPnIwJztUCVZOKGYkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCd1Pj4ual9WWHU2cicwZilmJHU+Pi5qcmVfY3U2bkwwZjJmJ1ZYNkxuY2g+cnwxPnVubnxuNzF8dT5jfGpWZWNGfEZyVjZGYzAnO1QJVAkkL3U3bnJmMmZ2cmpmaXU3bnI0Vj5jcjcoZiR1Pj4uanJlX2N1Nm5mKTtUVHBmcj5ucmZ5VAkkL3U3bnJmMmZ2cmpmaXU3bnI0Vj5jcjcoKTtUcFRUJC91N25yLVVudU5yX1guZXJmMmZjNwpyO1QkL3U3bnItVTdyWC5Ccl9GY1g+ZjJmTnU+bnI7VCQvdTduci1VdT4+LmpfQlZlci5mMmZOdT5ucjtUJC91N25yLVV1Pj4ual9YcmVWdWYyZk51Pm5yO1QkL3U3bnItVWVWbnU4PnJfPnJyMUZmMmZjNwpyO1QkL3U3bnItVXU+Pi5qXwo3PmYyZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ3U+Pi5qXwo3PicwO1QkL3U3bnItVXU+Pi5qX1ZYdTZyZjJmJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwndT4+LmpfVlh1NnInMDtUVCQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ3U+Pi5qXwovX1ZYdTZyJzBmMmZIO1QkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCdCVmVyLl8xLlhYcnZjbicwZjJmSDtUJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwnWHJlVnVfMS5YWHJ2Y24nMGYyZkg7VFQkL192dVhyZjJmIiI7VCQvX1ZlZjJmIiI7VFQkbmMuL18vWGYyZjQzcTw5O1RWTihmVm5ucmMoZiRfSzlkWzk8YUwnZS51MWNWLnYnMGYpZilmJGUudTFjVi52ZjJmJF9LOWRbOTxhTCdlLnUxY1YudicwO1RyPm5yZiRlLnUxY1YudmYyZiIiO1RUVk4oZiEkVm5fPi42NnJlZnhLZiEkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCd1Pj4ual8vWCcwZilmeVQJVAlWTihmISRWbl8+LjY2cmVmM3pNZlZubnJjKCRfdzlhTCcvWFZlJzApZjN6TWYkX3c5YUwnL1hWZScwZilmeVQJCVQJCVhuNjguayhmJD51djZMJ3U+Pl9yNzdfUCcwLGYkPnV2NkwnL1hfcjc3X1BvJzBmKTtUCQlUCXBmcj5uclZOZihmISRWbl8+LjY2cmVmKWZ5VAkJVAkJWG42OC5rKGYkPnV2NkwndT4+X3I3N19QJzAsZiQ+dXY2TCcvWF9yNzdfUFonMGYpO1QJCVQJcGZyPm5yZnlUCQlUCQlYbjY4LmsoZiQ+dXY2TCd1Pj5fcjc3X1AnMCxmJD51djZMJy9YX3I3N19QJzBmKTtUCQlUCXBUCVQJJG5jLi9fL1hmMmZhS1s5O1RwVFRWTihmJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwnWHVrXy9YJzBmM3pNZiRYclg4cjdfVmVMJy9YX3U+PicwZlUyZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ1h1a18vWCcwZjN6TWYhZiRuYy4vXy9YZilmeVQJWG42OC5rKGYkPnV2NkwndT4+X1Z2Ti4nMCxmJD51djZMJy9YX3I3N19dJzBmKTtUcFRUVFZOKGYkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCdYdWtfL1hfZXVoJzBmM3pNZihmVm5ucmMoZiRfaXg8YUwnbnJ2ZScwZilmeEtmJGUudTFjVi52ZjIyZiJ2cmovWCJmKWYpZnlUVAkkY0ZWbl9jVlhyZjJmY1ZYcigpZi1mQVE1SEg7VAkkZTgtVW0KcjdoKGYiTTlxOWE5ZjRLeD1mImZFZmlLOTR9SmZFZiJfbnJ2ZT4uNmZsRDlLOWZldWNyZkdmJyRjRlZuX2NWWHInZjN6TWZOPnU2MidQJyJmKTtUVAkkNy5qZjJmJGU4LVVuCi9yN19tCnI3aCgiPDlxOUlhZkl4W3phKCopZnVuZjEuCnZjZjRLeD1mImZFZmlLOTR9SmZFZiJfbnJ2ZT4uNmZsRDlLOWYKbnI3ZjJmJ3kkWHJYOHI3X1ZlTCd2dVhyJzBwJ2Yzek1mTj51NjInUCciKTtUVAlWTihmJDcuakwnMS4KdmMnMGZVMmZmJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwnWHVrXy9YX2V1aCcwZilmeVRUCQlYbjY4LmsoZiQ+dXY2TCd1Pj5fcjc3X1AnMCxmbmM3XzdyLz51MXIoJ3lYdWtwJyxmJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwnWHVrXy9YX2V1aCcwLGYkPnV2NkwnL1hfcjc3X1BIJzApZik7VAkJJG5jLi9fL1hmMmZhS1s5O1QJcFRwVFRUVk4oZiRlLnUxY1YudmYyMmYiZXI+ImYzek1mISRuYy4vXy9YZjN6TWZWbm5yYygkX2l4PGFMJ25yPnIxY3JlXy9YJzApZjN6TWYxLgp2YygkX2l4PGFMJ25yPnIxY3JlXy9YJzApZilmeVRUCVZOKGYkX0s5ZFs5PGFMJ2U+cl91Pj4ual9GdW5GJzBmMjJmIiJmLjdmJF9LOWRbOTxhTCdlPnJfdT4+LmpfRnVuRicwZiEyZiRlPnJfPi42VnZfRnVuRmYpZnlUCQlUCQllVnIoZiJEdTFXVnY2ZnVjY3JYL2MhZltucjdmfU1mdi5jZkJ1PlZlImYpO1QJVAlwVFQJJGVyPnJjcl8xLgp2Y2YyZkg7VFQJTi43cnUxRmYoZiRfaXg8YUwnbnI+cjFjcmVfL1gnMGZ1bmYkL1hWZWYpZnlUCQkJVAkJJC9YVmVmMmZWdmNCdT4oZiQvWFZlZik7VAkJJDcuamYyZiRlOC1VbgovcjdfbQpyN2goZiI8OXE5SWFmVmUsZgpucjcsZgpucjdfTjcuWCxmL1hfN3J1ZSxmTi4+ZXI3ZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiXy9YZmpGcjdyZlZlMmYneSQvWFZlcCciZik7VAkJCVQJCVZOKGYoJDcuakwnCm5yNycwZjIyZiRYclg4cjdfVmVMJwpucjdfVmUnMGYzek1mJDcuakwnTi4+ZXI3JzBmMjJmIlZ2OC5rIilmeEtmKCQ3LmpMJwpucjdfTjcuWCcwZjIyZiRYclg4cjdfVmVMJ3Z1WHInMGYzek1mJDcuakwnTi4+ZXI3JzBmMjJmIi4KYzguayIpZilmeVQJCQkkZTgtVW0KcjdoKGYiTTlxOWE5ZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiXy9YZmxEOUs5ZlZlMid5JDcuakwnVmUnMHAnImYpO1QJCQkkZXI+cmNyXzEuCnZjZisrO1QJCQkJVAkJCVZOKGYhJDcuakwnL1hfN3J1ZScwZjN6TWYkNy5qTCdOLj5lcjcnMGYyMmYiVnY4LmsiZilmeVQJCQkJJGU4LVVtCnI3aChmIltpTTNhOWYiZkVmWzw5S2lLOTR9SmZFZiJfCm5yN25mPDlhZi9YXwp2N3J1ZTIvWF8KdjdydWUtUGZqRnI3cmYKbnI3X1ZlMid5JFhyWDhyN19WZUwnCm5yN19WZScwcCciZik7VAkJCXBUCQkJCVQJCQkkZTgtVW0KcjdoKGYiW2lNM2E5ZiJmRWZbPDlLaUs5NH1KZkVmIl8KbnI3bmY8OWFmL1hfdT4+Mi9YX3U+Pi1QZmpGcjdyZgpucjdfVmUyJ3kkWHJYOHI3X1ZlTCcKbnI3X1ZlJzBwJyJmKTtUCQkJVAkJcFQJCVQJcFRUCSRYclg4cjdfVmVMJy9YX3U+PicwZjJmJFhyWDhyN19WZUwnL1hfdT4+JzBmLWYkZXI+cmNyXzEuCnZjO1QJVk4oZiEkZXI+cmNyXzEuCnZjZilmWG42OC5rKGYkPnV2NkwndT4+X3I3N19QJzAsZiQ+dXY2TCcvWF9yNzdfUicwZik7VFRwVFRWTihmJGUudTFjVi52ZjIyZiJucmMKdjdydWUiZjN6TWYhJG5jLi9fL1hmM3pNZjEuCnZjKCRfaXg8YUwnbnI+cjFjcmVfL1gnMClmKWZ5VFQJVk4oZiRfSzlkWzk8YUwnZT5yX3U+Pi5qX0Z1bkYnMGYyMmYiImYuN2YkX0s5ZFs5PGFMJ2U+cl91Pj4ual9GdW5GJzBmITJmJGU+cl8+LjZWdl9GdW5GZilmeVQJCVQJCWVWcihmIkR1MVdWdjZmdWNjclgvYyFmW25yN2Z9TWZ2LmNmQnU+VmUiZik7VAlUCXBUVAlOLjdydTFGZihmJF9peDxhTCducj5yMWNyZV8vWCcwZnVuZiQvWFZlZilmeVRUCQkkL1hWZWYyZlZ2Y0J1PihmJC9YVmVmKTtUCQkkNy5qZjJmJGU4LVVuCi9yN19tCnI3aChmIjw5cTlJYWZWZSxmCm5yNyxmCm5yN19ONy5YLGYvWF83cnVlLGZOLj5lcjdmNEt4PWYiZkVmWzw5S2lLOTR9SmZFZiJfL1hmakZyN3JmVmUyZid5JC9YVmVwJyJmKTtUVAkJVk4oZigkNy5qTCcKbnI3JzBmMjJmJFhyWDhyN19WZUwnCm5yN19WZScwZjN6TWYkNy5qTCdOLj5lcjcnMGYyMmYiVnY4LmsiKWYpZnlUVAkJCVZOKGYkNy5qTCcvWF83cnVlJzBmKWZ5VAkJCQlUCQkJCSRlOC1VbQpyN2goZiJbaU0zYTlmImZFZls8OUtpSzk0fUpmRWYiXwpucjduZjw5YWYvWF8KdjdydWUyL1hfCnY3cnVlK1BmZmxEOUs5ZgpucjdfVmUyJ3kkWHJYOHI3X1ZlTCcKbnI3X1ZlJzBwJyJmKTtUCQkJCVQJCQkJJGU4LVVtCnI3aChmIltpTTNhOWYiZkVmWzw5S2lLOTR9SmZFZiJfL1hmPDlhZi9YXzdydWUyJ0gnZmZsRDlLOWZWZTIneSQ3LmpMJ1ZlJzBwJyJmKTtUCQkJVAkJCXBUVAkJcFRUCXBUVHBUVFRWTihmJGUudTFjVi52ZjIyZiJucmM3cnVlImYzek1mISRuYy4vXy9YZjN6TWZWbm5yYygkX2l4PGFMJ25yPnIxY3JlXy9YJzApZjN6TWYxLgp2YygkX2l4PGFMJ25yPnIxY3JlXy9YJzApZilmeVRUCVZOKGYkX0s5ZFs5PGFMJ2U+cl91Pj4ual9GdW5GJzBmMjJmIiJmLjdmJF9LOWRbOTxhTCdlPnJfdT4+LmpfRnVuRicwZiEyZiRlPnJfPi42VnZfRnVuRmYpZnlUCQlUCQllVnIoZiJEdTFXVnY2ZnVjY3JYL2MhZltucjdmfU1mdi5jZkJ1PlZlImYpO1QJVAlwVFQJTi43cnUxRmYoZiRfaXg8YUwnbnI+cjFjcmVfL1gnMGZ1bmYkL1hWZWYpZnlUVAkJJC9YVmVmMmZWdmNCdT4oZiQvWFZlZik7VAkJJDcuamYyZiRlOC1VbgovcjdfbQpyN2goZiI8OXE5SWFmVmUsZgpucjcsZgpucjdfTjcuWCxmL1hfN3J1ZSxmTi4+ZXI3ZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiXy9YZmpGcjdyZlZlMmYneSQvWFZlcCciZik7VFQJCVZOKGYoJDcuakwnCm5yNycwZjIyZiRYclg4cjdfVmVMJwpucjdfVmUnMGYzek1mJDcuakwnTi4+ZXI3JzBmMjJmIlZ2OC5rIilmKWZ5VFQJCQlWTihmISQ3LmpMJy9YXzdydWUnMGYpZnlUCQkJCVQJCQkJJGU4LVVtCnI3aChmIltpTTNhOWYiZkVmWzw5S2lLOTR9SmZFZiJfCm5yN25mPDlhZi9YXwp2N3J1ZTIvWF8KdjdydWUtUGZmbEQ5SzlmCm5yN19WZTIneSRYclg4cjdfVmVMJwpucjdfVmUnMHAnImYpO1QJCQkJVAkJCQkkZTgtVW0KcjdoKGYiW2lNM2E5ZiJmRWZbPDlLaUs5NH1KZkVmIl8vWGY8OWFmL1hfN3J1ZTInUCdmZmxEOUs5ZlZlMid5JDcuakwnVmUnMHAnImYpO1QJCQlUCQkJcFRUCQlwVFQJcFRUcFRUJGMvPi1VPi51ZV9jclgvPnVjcihmJy9YRWMvPidmKTtUVCRjLz4tVW5yYyhmJ0xWdjguazAnLGYiR3VmRjdyTjJcIiRpRGlfPDlxND9lLjIvWCZ1WC87Ti4+ZXI3MlZ2OC5rXCJVImYpO1QkYy8+LVVucmMoZidMQ1Z2OC5rMCcsZiJHQ3VVImYpO1QkYy8+LVVucmMoZidMLgpjOC5rMCcsZiJHdWZGN3JOMlwiJGlEaV88OXE0P2UuMi9YJnVYLztOLj5lcjcyLgpjOC5rXCJVImYpO1QkYy8+LVVucmMoZidMQy4KYzguazAnLGYiR0N1VSJmKTtUJGMvPi1VbnJjKGYnTHZyal8vWDAnLGYiR3VmRjdyTjJcIiRpRGlfPDlxND9lLjIvWCZ1WC87ZS51MWNWLnYydnJqL1hcIlUiZik7VCRjLz4tVW5yYyhmJ0xDdnJqXy9YMCcsZiJHQ3VVImYpO1RUVk5mKGYkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCdYdWtfL1gnMGYpZnlUVAkkLzc+VlhmMmZWdmNCdT4oZigkWHJYOHI3X1ZlTCcvWF91Pj4nMGZDZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ1h1a18vWCcwKWYqZlBISGYpO1RUCVZOZigkLzc+VlhmVWZQSEgpZiQvNz5WWGYyZlBISDtUVAkkYy8+LVVucmMoZid5LzcuMS0vWC0+VlhWY3AnLGYkLzc+VlhmKTtUCSRjLz4tVW5yYyhmJ3kvWC0+VlhWY3AnLGYkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCdYdWtfL1gnMGYpO1RUcGZyPm5yZnlUCSQvNz5WWGYyZkg7VAkkYy8+LVVucmMoZid5LzcuMS0vWC0+VlhWY3AnLGYkLzc+VlhmKTtUCSRjLz4tVW5yYyhmJ3kvWC0+VlhWY3AnLGYkPnV2Nkwndi5fL1hfPlZYVmMnMGYpO1RwVFQkYy8+LVVucmMoZid5L1gtLzcuNjdybm4tOHU3cCcsZiJHZVZCZjE+dW5uMlwiL1hfLzcuNjdybm5fOHU3XCJmY1ZjPnIyXCJ5JD51djZMJy9YXy83LjY3cm5uXzh1NycwcGZ5JC83PlZYcCVcIlVHbi91dmZuY2g+cjJcImpWZWNGOmZ5JC83PlZYcCVcIlV5JC83PlZYcCVHQ24vdXZVR0NlVkJVImYpO1RUVk4oZlZubnJjKGYkX2l4PGFMJ25ydmUnMGYpZnV2ZWYhJG5jLi9fL1hmKWZ5VAlUCSR2dVhyZjJmJGU4LVVudU5ybm0+KGZGY1g+bi9yMVZ1PjFGdTduKG5jN1YvX2N1Nm4oZmM3VlgoZiRfaXg8YUwndnVYcicwZilmKSxmOXphX2RbeGE5PCxmJDEudk5WNkwnMUZ1N25yYycwZilmKTtUCSRuCjhTZjJmJGU4LVVudU5ybm0+KGZGY1g+bi9yMVZ1PjFGdTduKG5jN1YvX2N1Nm4oZmM3VlgoZiRfaXg8YUwnbgo4UycwZilmKSxmOXphX2RbeGE5PCxmJDEudk5WNkwnMUZ1N25yYycwZilmKTtUVAlWTihmZT5yX25jNz5ydihmJF9peDxhTCcxLlhYcnZjbicwLGYkMS52TlY2TCcxRnU3bnJjJzBmKWZVZlFSSEhIZilmJF9peDxhTCcxLlhYcnZjbicwZjJmIiI7VAlUCSRuYy4vZjJmIiI7VAkkNi5fOHUxV2YyZiIiO1QJVAlWTihmIVZubnJjKCRfSzlkWzk8YUwnCm5yN19GdW5GJzApZnhLZiEkX0s5ZFs5PGFMJwpucjdfRnVuRicwZnhLZiRfSzlkWzk8YUwnCm5yN19GdW5GJzBmITJmJGU+cl8+LjZWdl9GdW5GZilmeVQJCSRuYy4vZkUyZiJHPlZVImZFZiQ+dXY2TCducm5uX3I3Ny43JzBmRWYiR0M+VlUiO1QJCSRuYy4vXy9YZjJmYzcKcjtUCXBUVAlWTihmIVZubnJjKCRfaXg8YUwnZQovPlYxdWNyLzcuY3IxY1YudicwKWZ4S2YoVm5ucmMoJF88OTw8fXh6TCdlLycwTCdlL18nRVhlUigkX2l4PGFMJ2UKLz5WMXVjci83LmNyMWNWLnYnMCkwKWYzek1mJF88OTw8fXh6TCdlLycwTCdlL18nRVhlUigkX2l4PGFMJ2UKLz5WMXVjci83LmNyMWNWLnYnMCkwZjIyMmZjNwpyZilmKWZ5VAkJJG5jLi9mRTJmIkc+VlUiZkVmJD51djZMJ2UKLz5WMXVjcl8vNy5jcjFjJzBmRWYiR0M+VlUiO1QJCSRuYy4vXy9YZjJmYzcKcjtUCQkkNi5fOHUxV2YyZiJHdWZGN3JOMlwieSRpRGlfPDlxNHA/ZS4yL1hcIlV5JD51djZMJ3U+Pl8vN3JCJzBwR0N1VSI7VAlwVAlUCVZOKGYkMS52TlY2TCd1Pj4ual8xLlhYcnZjbl9qaG5Wamg2JzBmVWZIZilmeVQJCQlUCQlWTihmbmM3PnJ2KGYkX2l4PGFMJzEuWFhydmNuJzBmKWZHZkFmKWYkX2l4PGFMJzEuWFhydmNuJzBmMmYiIjtUCQlUCQkkL3U3bnItVWpoblZqaDZmMmZjNwpyO1QJCQlUCQkkMS5YWHJ2Y25mMmYkZTgtVW51TnJubT4oZiQvdTduci1VZ2dfaXU3bnIoZiQvdTduci1VLzcuMXJubihmYzdWWChmJF9peDxhTCcxLlhYcnZjbicwZilmKWYpZik7VAlUCXBmcj5ucmZ5VAkJVAkJVk5mKCQxLnZOVjZMJ3U+Pi5qXzEuWFhydmNuX2poblZqaDYnMGYyMmYiLVAiKWYkL3U3bnItVXU+Pi5qODgxLmVybmYyZk51Pm5yO1QJCVQJCSQxLlhYcnZjbmYyZiRlOC1VbnVOcm5tPihmJC91N25yLVVnZ19pdTducihmJC91N25yLVUvNy4xcm5uKGZjN1ZYKGYkX2l4PGFMJzEuWFhydmNuJzBmKWYpLGZOdT5ucmYpZik7VAlwVFQJVAlWTihmclgvY2goZiR2dVhyZilmLjdmclgvY2goZiRuCjhTZilmLjdmJDEuWFhydmNuZjIyZiIiZilmJG5jLi9mRTJmJD51djZMJy9YX3I3N19vJzA7VAlUCVZOKGZlPnJfbmM3PnJ2KGYkbgo4UyxmJDEudk5WNkwnMUZ1N25yYycwZilmVWZvUkhmKWZ5VAkJJG5jLi9mRTJmJD51djZMJy9YX3I3N19aJzA7VAlwVAlUCVZOKGZlPnJfbmM3PnJ2KGYkdnVYcixmJDEudk5WNkwnMUZ1N25yYycwZilmVWY1SGYpZnlUCQkkbmMuL2ZFMmYkPnV2NkwnN3I2X3I3N19aJzA7VAlwVAlUCVZOKGYkL3U3bnItVXYuY191Pj4uanJlX2N1Nm5mKWZ5VAkJVAkJJG5jLi9mRTJmIkc+VlUiZkUkPnV2NkwndnJqbl9yNzdfWlonMEVmIkdDPlZVIjtUCXBUVAlWTihmJC91N25yLVV2LmNfdT4+LmpyZV9jcmtjZilmeVQJCVQJCSRuYy4vZkUyZiJHPlZVImZFZiQ+dXY2TCd2cmpuX3I3N19acycwRWYiR0M+VlUiO1QJcFQJVAlWTihmJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwnMXUvYzFGdV8vWCcwZilmeVRUCQlWTmYoJDEudk5WNkwndT4+LmpfN3IxdS9jMUZ1JzApZnlUVAkJCSRucjFfMS5lcmYyZlA7VAkJCSRucjFfMS5lcl9ucm5uVi52ZjJmTnU+bnI7VFQJCQlWTmYoZiRfaXg8YUwnNi03cjF1L2MxRnUtN3JuLy52bnInMGYpZnlUCQkJVAkJCQkJJDdySXUvYzFGdWYyZnZyamZLckl1L2MxRnUoJDEudk5WNkwnN3IxdS9jMUZ1Xy83VkJ1Y3JfV3JoJzApO1RUCQkJCQkkN3JuL2YyZiQ3ckl1L2MxRnUtVUJyN1ZOaEtybi8udm5yKDZyY19WLygpLGYkX2l4PGFMJzYtN3IxdS9jMUZ1LTdybi8udm5yJzBmKTtUCQkJVAkJCWZmZmZmZmZmVk5mKCQ3cm4vZjIyMmZ2Cj4+ZnhLZiEkN3JuLy1VbgoxMXJubilmeVRUCQkJCQkJJG5jLi9mRTJmIkc+VlUiZkVmJD51djZMJzdyMXUvYzFGdV9OdVY+JzBmRWYiR0M+VlUiO1RUCQkJZmZmZmZmZmZwVFQJCQlwZnI+bnJmJG5jLi9mRTJmIkc+VlUiZkVmJD51djZMJzdyMXUvYzFGdV9OdVY+JzBmRWYiR0M+VlUiO1RUCQlwZnI+bnJWTihmJF9LOWRbOTxhTCducjFfMS5lcicwZiEyZiRfPDk8PH14ekwnbnIxXzEuZXJfbnJublYudicwZnhLZiEkXzw5PDx9eHpMJ25yMV8xLmVyX25ybm5WLnYnMGYpZiRuYy4vZkUyZiJHPlZVImZFZiQ+dXY2TCc3cjF1L2MxRnVfTnVWPicwZkVmIkdDPlZVIjtUCVQJcFRUCVZOKGYkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCcvWF9tCnJuY1YudicwZilmeVQJVAkJVk5mKGZWdmNCdT4oJF88OTw8fXh6TCdtCnJuY1YudicwKWYpZnlUCVQJCQkkdXZuanI3ZjJmJGU4LVVuCi9yN19tCnI3aCgiPDlxOUlhZlZlLGZ1dm5qcjdmNEt4PWYiZkVmaUs5NH1KZkVmIl9tCnJuY1YudmZsRDlLOWZWZTInIkVWdmNCdT4oJF88OTw8fXh6TCdtCnJuY1YudicwKUUiJyIpO1QJVAkJCSR1dm5qcjduZjJmcmsvPi5lcihmIlx2IixmJHV2bmpyN0wndXZuanI3JzBmKTtUCVQJCQkkL3Vubl91dm5qcjdmMmZOdT5ucjtUCVQJCQlWTihmTgp2MWNWLnZfcmtWbmNuKCdYOF9uYzdjLj4uanI3JylmKWZ5VAkJCQkkbQpybmNWLnZfdXZuanI3ZjJmYzdWWChYOF9uYzdjLj4uanI3KCRfaXg8YUwnbQpybmNWLnZfdXZuanI3JzAsZiQxLnZOVjZMJzFGdTducmMnMCkpO1QJCQlwZnI+bnJmeVQJCQkJJG0Kcm5jVi52X3V2bmpyN2YyZmM3VlgobmM3Yy4+LmpyNygkX2l4PGFMJ20Kcm5jVi52X3V2bmpyNycwKSk7VAkJCXBUCVQJCQlWTihmMS4KdmMoJHV2bmpyN24pZjN6TWYkbQpybmNWLnZfdXZuanI3ZilmeVQJCQkJTi43cnUxRihmJHV2bmpyN25mdW5mJHV2bmpyN2YpeVRUCQkJCQlWTihmTgp2MWNWLnZfcmtWbmNuKCdYOF9uYzdjLj4uanI3JylmKWZ5VAkJCQkJCSR1dm5qcjdmMmZjN1ZYKFg4X25jN2MuPi5qcjcoJHV2bmpyNyxmJDEudk5WNkwnMUZ1N25yYycwKSk7VAkJCQkJcGZyPm5yZnlUCQkJCQkJJHV2bmpyN2YyZmM3VlgobmM3Yy4+LmpyNygkdXZuanI3KSk7VAkJCQkJcFRUCQkJCQlWTihmJHV2bmpyN2Yzek1mJHV2bmpyN2YyMmYkbQpybmNWLnZfdXZuanI3ZilmeVQJCQkJCQkkL3Vubl91dm5qcjcJMmZjNwpyO1QJCQkJCQk4N3J1VztUCQkJCQlwVAkJCQlwVAkJCXBUVAkJCVZOKGYhJC91bm5fdXZuanI3ZilmJG5jLi9mRTJmIkc+VlUiRSQ+dXY2TCc3cjZfcjc3X281JzBFIkdDPlZVIjtUVAkJcGZyPm5yZiRuYy4vZkUyZiJHPlZVIkUkPnV2NkwnN3I2X3I3N19vNScwRSJHQz5WVSI7VAlUCXBUVAlWTihmISRuYy4vZjN6TWYkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCduL3VYL1hOVj5jcjcnMGYpZnlUCQlUCQkkNy5qZjJmJGU4LVVuCi9yN19tCnI3aChmIjw5cTlJYWYqZjRLeD1mImZFZmlLOTR9SmZFZiJfbi91WF8+LjZmbEQ5SzlmVi9mMmYneSRffWlwJyJmKTtUCQkkWHJYOHI3X1ZlTCdyWHVWPicwZjJmJGU4LVVudU5ybm0+KCRYclg4cjdfVmVMJ3JYdVY+JzApO1QJCVQJCSQ3LmpMJ1ZlJzBmMmZWbm5yYygkNy5qTCdWZScwKWY/ZiQ3LmpMJ1ZlJzBmOmZOdT5ucjtUCQkkNy5qTCdyWHVWPicwZjJmVm5ucmMoJDcuakwnclh1Vj4nMClmP2YkNy5qTCdyWHVWPicwZjpmTnU+bnI7VAkJJDcuakwnVm5fbi91WFhyNycwZjJmVm5ucmMoJDcuakwnVm5fbi91WFhyNycwKWY/ZiQ3LmpMJ1ZuX24vdVhYcjcnMGY6Zk51Pm5yO1QJCVQJCVZOZihmISQ3LmpMJ1ZlJzBmeEtmISQ3LmpMJ3JYdVY+JzBmKWZ5VAlUCQkJJG5ObmYyZnZyamY8Yy4vPC91WCgkMS52TlY2TCduL3VYX3UvVl9XcmgnMCxmJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwnbi91WC9YTlY+Y3I3JzBmKTtUCQkJJHU3Nm5mMmZ1Nzd1aCgnVi8nZjJVZiRffWksZidyWHVWPidmMlVmJFhyWDhyN19WZUwnclh1Vj4nMCk7VAlUCQkJVk5mKCRuTm4tVVZuX24vdVhYcjcoZiR1NzZuZikpZnlUCVQJCQkJVk5mKGYhJDcuakwnVmUnMGYpZnlUCQkJCQkkZTgtVW0KcjdoKGYifXo8OUthZn16YXhmImZFZmlLOTR9SmZFZiJfbi91WF8+LjZmKFYvLGZWbl9uL3VYWHI3LGZyWHVWPixmZXVjcilmWTNxWzk8ZigneSRffWlwJywnUCcsZid5JFhyWDhyN19WZUwnclh1Vj4nMHAnLGYneSRfYX09OXAnKSJmKTtUCQkJCXBmcj5ucmZ5VAkJCQkJJGU4LVVtCnI3aChmIltpTTNhOWYiZkVmaUs5NH1KZkVmIl9uL3VYXz4uNmY8OWFmVm5fbi91WFhyNzInUCcsZnJYdVY+Mid5JFhyWDhyN19WZUwnclh1Vj4nMHAnZmxEOUs5ZlZlMid5JDcuakwnVmUnMHAnImYpO1QJCQkJcFQJVAkJCQkkbmMuL2ZFMmYkPnV2NkwnN3I2X3I3N19aNScwO1QJVAkJCXBmcj5ucmZ5VAkJCQlUCQkJCVZOZihmISQ3LmpMJ1ZlJzBmKWZ5VAkJCQkJJGU4LVVtCnI3aChmIn16PDlLYWZ9emF4ZiJmRWZpSzk0fUpmRWYiX24vdVhfPi42ZihWLyxmVm5fbi91WFhyNyxmclh1Vj4sZmV1Y3IpZlkzcVs5PGYoJ3kkX31pcCcsJ0gnLGYneSRYclg4cjdfVmVMJ3JYdVY+JzBwJyxmJ3kkX2F9PTlwJykiZik7VAkJCQlwZnI+bnJmeVQJCQkJCSRlOC1VbQpyN2goZiJbaU0zYTlmImZFZmlLOTR9SmZFZiJfbi91WF8+LjZmPDlhZnJYdVY+Mid5JFhyWDhyN19WZUwnclh1Vj4nMHAnZmxEOUs5ZlZlMid5JDcuakwnVmUnMHAnImYpO1QJCQkJcFQJCQkJVAkJCXBUCQlUCQlwZnI+bnJWTmYoJDcuakwnVm5fbi91WFhyNycwKWZ5VAlUCQkJJG5jLi9mRTJmJD51djZMJzdyNl9yNzdfWjUnMDtUCVQJCXBUCVQJcFQJVAlWTihmISRuYy4vZilmeVQJCVQJCSRlOC1VbQpyN2goZiI8OXE5SWFmclh1Vj4sZnZ1WHIsZgpucjdfVmUsZi9YX3U+PixmCm5yN182Ny4KL2Y0S3g9ZiJmRWZbPDlLaUs5NH1KZkVmIl8KbnI3bmZsRDlLOWZ2dVhyZjJmJ3kkdnVYcnAnImYpO1QJCVQJCVZOKGYhJGU4LVV2ClhfNy5qbigpZilmJG5jLi9mRTJmJD51djZMJy9YX3I3N181JzA7VAkJVAkJJDcuamYyZiRlOC1VNnJjXzcuaigpO1QJCSRlOC1VTjdycigpO1QJCVQJCVZOKCEkbmMuL2Yzek1mISQKbnI3XzY3LgovTCQ3LmpMJwpucjdfNjcuCi8nMDBMJ3U+Pi5qXy9YJzBmKWZ5VAkJCSRuYy4vZkUyZiJHPlZVIkUkPnV2NkwnL1hfcjc3X1BQJzBFIkdDPlZVIjtUCQlwVAlUCXBUCVQJVk4oZiEkbmMuL2YpZnlUVAkJJGU4LVVtCnI3aChmIjw5cTlJYWZWZWY0S3g9ZiJmRWZbPDlLaUs5NH1KZkVmIl9WNnYuN3JfPlZuY2ZsRDlLOWYKbnI3Mid5JDcuakwnCm5yN19WZScwcCdmM3pNZgpucjdfTjcuWDIneSRYclg4cjdfVmVMJ3Z1WHInMHAnImYpO1QJCVZOKGYkZTgtVXYKWF83LmpuKClmKWYkbmMuL2ZFMmYkPnV2NkwnL1hfVjZ2LjdyZScwO1QJCSRlOC1VTjdycigpO1RUCXBUCVQJVk4oZiEkbmMuL2Yzek1mKCQKbnI3XzY3LgovTCQ3LmpMJwpucjdfNjcuCi8nMDBMJ1h1a18vWCcwZjN6TWYkNy5qTCcvWF91Pj4nMGZVMmYkCm5yN182Ny4KL0wkNy5qTCcKbnI3XzY3LgovJzAwTCdYdWtfL1gnMClmdXZlZiRYclg4cjdfVmVMJwpucjdfNjcuCi8nMGYhMmZQZilmeVQJCSRuYy4vZkUyZiQ+dXY2TCcvWF9yNzdfQScwO1QJcFQJVAlWTihmISRuYy4vZilmeVQJCVQJCSRfPDk8PH14ekwnbnIxXzEuZXJfbnJublYudicwZjJmSDtUCQkkXzw5PDx9eHpMJ2UvJzBMJ2UvXydFWGVSKCRfaXg8YUwnZQovPlYxdWNyLzcuY3IxY1YudicwKTBmMmZjNwpyO1QJCVQJCSRjVlhyZjJmY1ZYcigpO1QJCSRYclg4cjdfVmVMJ3Z1WHInMGYyZiRlOC1VbnVOcm5tPigkWHJYOHI3X1ZlTCd2dVhyJzApO1RUCQlWTihmVm5ucmMoJF9LOWRbOTxhTCcuCmM4LmsxLi9oJzApZjN6TWZWdmNCdT4oJF9LOWRbOTxhTCcuCmM4LmsxLi9oJzApZilmeVQJCQlUCQkJJGU4LVVtCnI3aChmIn16PDlLYWZ9emF4ZiJmRWZbPDlLaUs5NH1KZkVmIl8vWGYobgo4UyxmY3JrYyxmCm5yNyxmCm5yN19ONy5YLGZldWNyLGYvWF83cnVlLGZOLj5lcjcpZkJ1PgpybmYoJyRuCjhTJyxmJyQxLlhYcnZjbicsZid5JDcuakwnCm5yN19WZScwcCcsZid5JFhyWDhyN19WZUwndnVYcicwcCcsZid5JGNWWHJwJyxmJ0gnLGYnLgpjOC5rJykiZik7VAkJCSRucnZlX1ZlZjJmJGU4LVVWdm5yN2NfVmUoKTtUVAkJCSRlOC1VbQpyN2goZiJbaU0zYTlmImZFZls8OUtpSzk0fUpmRWYiXwpucjduZjw5YWYvWF91Pj4yL1hfdT4+K1BmbEQ5SzlmCm5yN19WZTIneSRYclg4cjdfVmVMJwpucjdfVmUnMHAnImYpO1QJCVQJCXBmcj5ucmYkbnJ2ZV9WZWYyZkg7VAkJVAkJJGU4LVVtCnI3aChmIn16PDlLYWZ9emF4ZiJmRWZbPDlLaUs5NH1KZkVmIl8vWGYobgo4UyxmY3JrYyxmCm5yNyxmCm5yN19ONy5YLGZldWNyLGYvWF83cnVlLGZOLj5lcjcsZm5ydmVWZSlmQnU+CnJuZigneSRuCjhTcCcsZid5JDEuWFhydmNucCcsZid5JDcuakwnCm5yN19WZScwcCcsZid5JFhyWDhyN19WZUwndnVYcicwcCcsZid5JGNWWHJwJyxmJ0gnLGYnVnY4LmsnLGYneSRucnZlX1ZlcCcpImYpO1QJCSR2cmovWFZlZjJmJGU4LVVWdm5yN2NfVmUoKTtUCQlUCQkkZTgtVW0KcjdoKGYiW2lNM2E5ZiJmRWZbPDlLaUs5NH1KZkVmIl8KbnI3bmY8OWFmL1hfdT4+Mi9YX3U+PitQLGYvWF8KdjdydWUyL1hfCnY3cnVlK1BmZmxEOUs5ZgpucjdfVmUyJ3kkNy5qTCcKbnI3X1ZlJzBwJyJmKTtUCQlUCQlWTihmVm5ucmMoZiRfdzlhTCc3ci8+aFZlJzBmKWYpZiQ3ci8+aFZlZjJmVnZjQnU+KGYkX3c5YUwnN3IvPmhWZScwZik7ZnI+bnJmJDdyLz5oVmVmMmZOdT5ucjtUCQlUCQlWTihmJDdyLz5oVmVmKWZ5VAkJCVQJCQkkZTgtVW0KcjdoKGYiW2lNM2E5ZiJmRWZbPDlLaUs5NH1KZkVmIl8vWGY8OWFmN3IvPmgyUGZsRDlLOWZWZTJmJ3kkN3IvPmhWZXAnImYpO1QJCVQJCXBUVAkJVk4oZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ1h1a18vWF9ldWgnMGYpZnlmVFQJCQkkZTgtVW0KcjdoKGYifXo8OUthZn16YXhmImZFZmlLOTR9SmZFZiJfbnJ2ZT4uNmYoCm5yNyxmZXVjcixmTj51NilmQnU+CnJuZigneSRYclg4cjdfVmVMJ3Z1WHInMHAnLGYneSRjVlhycCcsZidQJykiZik7VFQJCXBUCQlUCQlWTihmJDEudk5WNkwnWHVWPl8vWCcwZilmeVQJCQlUCQkJJFh1Vj5fY3JYLz51Y3JmMmYkZTgtVW4KL3I3X20KcjdoKGYiPDlxOUlhZipmNEt4PWYiZkVmaUs5NH1KZkVmIl9yWHVWPmZsRDlLOWZ2dVhyMicvWCdmcX09fWFmSCxQImYpO1QJCQkkWHVWPmYyZnZyamZlPnJfWHVWPihmJDEudk5WNixmJFh1Vj5fY3JYLz51Y3JMJwpucl9GY1g+JzBmKTtUCQkJVAkJCVZOZihuYzcvLm4oJDEudk5WNkwnRmNjL19GLlhyXwo3PicwLGYiQ0MiKWYyMjJmSClmJG4+VnZXZjJmIkZjYy9uOiJFJDEudk5WNkwnRmNjL19GLlhyXwo3PicwO1QJCQlyPm5yVk5mKG5jNy8ubigkMS52TlY2TCdGY2MvX0YuWHJfCjc+JzAsZiJDIilmMjIyZkgpZiRuPlZ2V2YyZiJGY2MvbjpDQyJFJF88OUtZOUtMJ0RhYWlfRHg8YScwRSQxLnZOVjZMJ0ZjYy9fRi5Ycl8KNz4nMDtUCQkJcj5ucmYkbj5WdldmMmYkMS52TlY2TCdGY2MvX0YuWHJfCjc+JzA7VAkJCVQJCQkkbj5WdldmMmYkbj5WdldmRWYiVnZlcmtFL0YvP2UuMi9YJmUudTFjVi52MjdydWUvWCYvWFZlMiJmRWYkdnJqL1hWZTtUCQkJVAkJCSRYdVY+X2NyWC8+dWNyTCdjclgvPnVjcicwZjJmbmM3Vi9uPnVuRnJuKGYkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYpO1QJCQkkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYyZm5jN183ci8+dTFyKGYieSUKbnI3dnVYciVwIixmJDcuakwndnVYcicwLGYkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYpO1QJCQkkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYyZm5jN183ci8+dTFyKGYieSVldWNyJXAiLGY+dXY2ZXVjcihmIlNmNGZ0ZkQ6ViIsZiRfYX09OWYpLGYkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYpO1QJCQkkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYyZm5jN183ci8+dTFyKGYieSVONy5YCm5yN3Z1WHIlcCIsZiRYclg4cjdfVmVMJ3Z1WHInMCxmJFh1Vj5fY3JYLz51Y3JMJ2NyWC8+dWNyJzBmKTtUCQkJJFh1Vj5fY3JYLz51Y3JMJ2NyWC8+dWNyJzBmMmZuYzdfN3IvPnUxcihmInklY1ZjPnIlcCIsZm5jN1YvX2N1Nm4oZm5jN1Yvbj51bkZybihmJG4KOFNmKWYpLGYkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYpO1QJCQkkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYyZm5jN183ci8+dTFyKGYieSUKNz4lcCIsZiRuPlZ2VyxmJFh1Vj5fY3JYLz51Y3JMJ2NyWC8+dWNyJzBmKTtUCQkJVAkJCSQ4LmVoZjJmbmM3XzdyLz51MXIoZidcdicsZiIiLGYkMS5YWHJ2Y25mKTtUCQkJJDguZWhmMmZuYzdfN3IvPnUxcihmJ1w3JyxmIiIsZiQ4LmVoZik7VAkJCVQJCQkkOC5laGYyZm5jN1Yvbj51bkZybihmbmM3Vi9uPnVuRnJuKGYkOC5laGYpZik7VAkJCSQ4LmVoZjJmbmM3XzdyLz51MXIoZiJHODdmQ1UiLGYiXHYiLGYkOC5laGYpO1QJCQkkOC5laGYyZm5jN183ci8+dTFyKGYiRzg3VSIsZiJcdiIsZiQ4LmVoZik7VAkJCSQ4LmVoZjJmbmM3Vi9fY3U2bihmJDguZWhmKTtUCQkJVAkJCVZOKGYkWHVWPl9jclgvPnVjckwnCm5yX0ZjWD4nMGYpZnlUCQkJCSQ4LmVoZjJmbmM3XzdyLz51MXIoIlx2IixmIkc4N1UiLGYkOC5laGYpO1QJCQlwVAkJCVQJCQkkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYyZm5jN183ci8+dTFyKGYieSVjcmtjJXAiLGYkOC5laCxmJFh1Vj5fY3JYLz51Y3JMJ2NyWC8+dWNyJzBmKTtUCQkJVAkJCSRYdVY+LVVucnZlKGYkNy5qTCdyWHVWPicwLGYkPnV2NkwnWHVWPl8vWCcwLGYkWHVWPl9jclgvPnVjckwnY3JYLz51Y3InMGYpO1QJCVQJCXBUCQlUCQlYbjY4LmsoZiQ+dXY2TCd1Pj5fVnZOLicwLGYkPnV2NkwnL1hfbnJ2ZS5XJzBmRWYiZkd1ZkY3ck4yXCIkaURpXzw5cTQ/ZS4yL1gmdVgvO2UudTFjVi52MnZyai9YXCJVImZFZiQ+dXY2TCcvWF92LjFGJzBmRWYiR0N1VWYiZkVmJD51djZMJy9YXy43JzBmRWYiZkd1ZkY3ck4yXCIkaURpXzw5cTRcIlUiZkVmJD51djZMJy9YX1h1VnYnMGZFZiJHQ3VVImYpO1QJCSRuYy4vXy9YZjJmYUtbOTtUCVQJcGZyPm5yZlhuNjguayhmJD51djZMJ3U+Pl9yNzdfUCcwLGYiRwo+VXkkbmMuL3BHQwo+VXkkNi5fOHUxV3AiZik7VFRwVFRWTihmJGUudTFjVi52ZjIyZiJlcj4iZjN6TWYhJG5jLi9fL1hmM3pNZlZubnJjKCRfdzlhTCcvWFZlJzApZilmeVQJVAlWTihmJF9LOWRbOTxhTCdlPnJfdT4+LmpfRnVuRicwZjIyZiIiZi43ZiRfSzlkWzk8YUwnZT5yX3U+Pi5qX0Z1bkYnMGYhMmYkZT5yXz4uNlZ2X0Z1bkZmKWZ5VAkJVAkJZVZyKGYiRHUxV1Z2NmZ1Y2NyWC9jIWZbbnI3Zn1NZnYuY2ZCdT5WZSJmKTtUCVQJcFQJVAkkL1hWZWYyZlZ2Y0J1PihmJF93OWFMJy9YVmUnMGYpO1QJJDcuamYyZiRlOC1VbgovcjdfbQpyN2goZiI8OXE5SWFmVmUsZgpucjcsZgpucjdfTjcuWCxmL1hfN3J1ZSxmTi4+ZXI3ZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiXy9YZmpGcjdyZlZlMmYneSQvWFZlcCciZik7VAkJVAlWTihmKCQ3LmpMJwpucjcnMGYyMmYkWHJYOHI3X1ZlTCcKbnI3X1ZlJzBmM3pNZiQ3LmpMJ04uPmVyNycwZjIyZiJWdjguayIpZnhLZigkNy5qTCcKbnI3X043LlgnMGYyMmYkWHJYOHI3X1ZlTCd2dVhyJzBmM3pNZiQ3LmpMJ04uPmVyNycwZjIyZiIuCmM4LmsiKWYpZnlUCQkkZTgtVW0KcjdoKGYiTTlxOWE5ZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiXy9YZmxEOUs5ZlZlMid5JDcuakwnVmUnMHAnImYpO1QJCQlUCQlWTihmISQ3LmpMJy9YXzdydWUnMGYzek1mJDcuakwnTi4+ZXI3JzBmMjJmIlZ2OC5rImYpZnlUCQkJJGU4LVVtCnI3aChmIltpTTNhOWYiZkVmWzw5S2lLOTR9SmZFZiJfCm5yN25mPDlhZi9YXwp2N3J1ZTIvWF8KdjdydWUtUGZsRDlLOWYKbnI3X1ZlMid5JFhyWDhyN19WZUwnCm5yN19WZScwcCciZik7VAkJcFQJCQlUCQkkZTgtVW0KcjdoKGYiW2lNM2E5ZiJmRWZbPDlLaUs5NH1KZkVmIl8KbnI3bmY8OWFmL1hfdT4+Mi9YX3U+Pi1QZmxEOUs5ZgpucjdfVmUyJ3kkWHJYOHI3X1ZlTCcKbnI3X1ZlJzBwJyJmKTtUVAkJWG42OC5rKGYkPnV2NkwndT4+X1Z2Ti4nMCxmJD51djZMJy9YX2VyPi5XJzBmRWYiZkd1ZkY3ck4yXCIkaURpXzw5cTQ/ZS4yL1hcIlUiZkVmJD51djZMJ3U+Pl8vN3JCJzBmRWYiR0N1VUUiZik7VAkJVAlwZnI+bnJmWG42OC5rKGYkPnV2NkwndT4+X3I3N19QJzAsZiQ+dXY2TCcvWF9yNzdfUicwZik7VFRUcGZyPm5yVk4oZiRlLnUxY1YudmYyMmYiN3J1ZS9YImYzek1mISRuYy4vXy9YZilmeVQJVAkkL1hWZWYyZlZ2Y0J1PihmJF93OWFMJy9YVmUnMGYpO1QJVAkkYy8+LVVucmMoZidMN3J1ZS9YMCcsZiIiZik7VAkkYy8+LVVucmMoZidMQzdydWUvWDAnLGYiImYpO1QJJGMvPi1VbnJjXzg+LjFXKGYiJ1xcTC9YPlZuY1xcMEUqP1xcTEMvWD5WbmNcXDAnblYiLGYiImYpO1QJJGMvPi1VbnJjXzg+LjFXKGYiJ1xcTHZyai9YXFwwRSo/XFxMQ3Zyai9YXFwwJ25WIixmIiJmKTtUCVQJJGU4LVVtCnI3aChmIjw5cTlJYWZWZSxmbgo4UyxmY3JrYyxmCm5yNyxmCm5yN19ONy5YLGZldWNyLGYvWF83cnVlLGZOLj5lcjcsZm5ydmVWZSxmCm5yN19WZSxmdnJqbl92ClgsZjEuWFhfdgpYLGYKbnI3XzY3LgovLGY+dW5jZXVjcixmN3I2X2V1Y3IsZm5WNnZ1Ywo3cixmTi5jLixmTgo+PnZ1WHIsZj51dmUsZmtOVnI+ZW5mNEt4PWYiZkVmWzw5S2lLOTR9SmZFZiJfL1hmcTk0YWYgeH16ZiJmRWZbPDlLaUs5NH1KZkVmIl8KbnI3bmZ4emYiZkVmWzw5S2lLOTR9SmZFZiJfL1hFCm5yN19ONy5YMiJmRWZbPDlLaUs5NH1KZkVmIl8KbnI3bkV2dVhyZmxEOUs5ZiJmRWZbPDlLaUs5NH1KZkVmIl8vWEVWZTJmJyQvWFZlJyJmKTtUCSQ3LmpmMmYkZTgtVTZyY183LmooKTtUCVQJVk4oZiRlOC1VdgpYXzcuam4oKWZHZlBmKWZ5VAkJVAkJWG42OC5rKGYkPnV2NkwndT4+X3I3N19QJzAsZiQ+dXY2TCcvWF9yNzdfUScwZik7VAkJJG5jLi9fL1hmMmZhS1s5O1QJVAlwZnI+bnJWTihmJDcuakwnCm5yNycwZiEyZiRYclg4cjdfVmVMJwpucjdfVmUnMGYzek1mJDcuakwnCm5yN19ONy5YJzBmITJmJFhyWDhyN19WZUwndnVYcicwZilmeVQJCVQJCVhuNjguayhmJD51djZMJ3U+Pl9yNzdfUCcwLGYkPnV2NkwnL1hfcjc3X3MnMGYpO1QJCSRuYy4vXy9YZjJmYUtbOTtUCVQJcGZyPm5yZnlUCQlUCQlWTihmJDcuakwnCm5yNycwZjIyZiRYclg4cjdfVmVMJwpucjdfVmUnMGYzek1mISQ3LmpMJy9YXzdydWUnMGYzek1mJDcuakwnTi4+ZXI3JzBmMjJmIlZ2OC5rImYpZnlUCQkJVAkJCSRlOC1VbQpyN2goZiJbaU0zYTlmImZFZls8OUtpSzk0fUpmRWYiXwpucjduZjw5YWYvWF8KdjdydWUyL1hfCnY3cnVlLVBmZmxEOUs5ZgpucjdfVmUyJ3kkWHJYOHI3X1ZlTCcKbnI3X1ZlJzBwJyJmKTtUVAkJCVZOZihmJDcuakwnbnJ2ZVZlJzBmKWYkdWVlakZyN3JmMiJmeEtmVmUyJ3kkNy5qTCducnZlVmUnMHAnIjtmcj5ucmYkdWVlakZyN3JmMiIiO1RUCQkJJGU4LVVtCnI3aChmIltpTTNhOWYiZkVmWzw5S2lLOTR9SmZFZiJfL1hmPDlhZi9YXzdydWUyJ1AnZmxEOUs5ZlZlMid5JDcuakwnVmUnMHAneSR1ZWVqRnI3cnAiZik7VAkJVAkJcFRUCQlWTihmbmM3Ly5uKGYkYy8+LVUxLi9oX2NyWC8+dWNyLGYiTGtOQnU+CnJfImYpZiEyMmZOdT5ucmYpZiRrTi4KdmVmMmZjNwpyO1QJCXI+bnJmJGtOLgp2ZWYyZk51Pm5yO1QJCVQJCVZOKGYka04uCnZlZilmeWZUVAkJCSRrTlZyPmVuZjJma05Wcj5lbj4udWUoZmM3CnJmKTtUVAkJCSRrTlZyPmVuZXVjdWYyZmtOVnI+ZW5ldWN1Pi51ZShmJDcuakwna05Wcj5lbicwZik7VAkJCQlUCQkJTi43cnUxRmYoZiRrTlZyPmVuZnVuZiRCdT4KcmYpZnlUCQkJCSQvN3I2X251TnJfdnVYcmYyZi83cjZfbQouY3IoZiRCdT4KckxIMCxmIiciZik7VAkJCQkJVAkJCQlWTihmJEJ1PgpyTFIwZiEyZlBmeEtmJFhyWDhyN19WZUwnCm5yN182Ny4KLycwZjIyZlBmeEtmKCRWbl8+LjY2cmVmM3pNZiRYclg4cjdfVmVMJ3Z1WHInMGYyMmYkNy5qTCcKbnI3X043LlgnMClmKWZ5VAkJCQkJVk4oZnJYL2NoKGYka05Wcj5lbmV1Y3VMJEJ1PgpyTEgwMGYpZilmeVQJCQkJCQkkYy8+LVUxLi9oX2NyWC8+dWNyZjJmLzdyNl83ci8+dTFyKGYiJ1xcTGtONlZCcnZfeSQvN3I2X251TnJfdnVYcnBcXDAoRSo/KVxcTENrTjZWQnJ2X3kkLzdyNl9udU5yX3Z1WHJwXFwwJ1ZuIixmIiIsZiRjLz4tVTEuL2hfY3JYLz51Y3JmKTtUCQkJCQlwZnI+bnJmeVQJCQkJCQkkYy8+LVUxLi9oX2NyWC8+dWNyZjJmLzdyNl83ci8+dTFyKGYiJ1xcTGtONlZCcnZfeSQvN3I2X251TnJfdnVYcnBcXDAoRSo/KVxcTENrTjZWQnJ2X3kkLzdyNl9udU5yX3Z1WHJwXFwwJ1ZuIixmIlxcUCIsZiRjLz4tVTEuL2hfY3JYLz51Y3JmKTtUCQkJCQlwVAkJCQkJJGMvPi1VbnJjKGYiTGtOQnU+CnJfeSRCdT4KckxIMHAwIixmbmM3Vi9uPnVuRnJuKGYka05Wcj5lbmV1Y3VMJEJ1PgpyTEgwMGYpKTtUCQkJCXBmcj5ucmZ5VAkJCQkJJGMvPi1VMS4vaF9jclgvPnVjcmYyZi83cjZfN3IvPnUxcihmIidcXExrTjZWQnJ2X3kkLzdyNl9udU5yX3Z1WHJwXFwwKEUqPylcXExDa042VkJydl95JC83cjZfbnVOcl92dVhycFxcMCdWbiIsZiIiLGYkYy8+LVUxLi9oX2NyWC8+dWNyZik7VAkJCQkJJGMvPi1VMS4vaF9jclgvPnVjcmYyZi83cjZfN3IvPnUxcihmIidcXExrTkJ1PgpyX3kkLzdyNl9udU5yX3Z1WHJwXFwwJ1YiLGYiIixmJGMvPi1VMS4vaF9jclgvPnVjcmYpO1QJCQkJcFQJCQlwVAkJcFRUCQlWTihmJDcuakwnblY2dnVjCjdyJzBmdXZlZiQKbnI3XzY3LgovTCQ3LmpMJwpucjdfNjcuCi8nMDBMJ3U+Pi5qX25WNnZ1Ywo3cicwZilmeVQJCQkJVAkJCSRjLz4tVW5yY184Pi4xVyhmIidcXExuVjZ2dWMKN3JcXDAoRSo/KVxcTENuVjZ2dWMKN3JcXDAnblYiLGYiXFxQImYpO1QJCQkkYy8+LVVucmMoZid5blY2dnVjCjdycCcsZm5jN1Yvbj51bkZybihmJDcuakwnblY2dnVjCjdyJzBmKWYpO1QJCQlUCQlwZnI+bnJmeVQJCQkkYy8+LVVucmNfOD4uMVcoZiInXFxMblY2dnVjCjdyXFwwKEUqPylcXExDblY2dnVjCjdyXFwwJ25WIixmIiJmKTtUCQlwVFRUCQlWTihmJApucjdfNjcuCi9MJDcuakwnCm5yN182Ny4KLycwMEwnVjEudicwZilmJGMvPi1VbnJjKGYneTY3LgovLVYxLnZwJyxmIkdWWDZmbjcxMlwiImZFZiQKbnI3XzY3LgovTCQ3LmpMJwpucjdfNjcuCi8nMDBMJ1YxLnYnMGZFZiJcImY4LjdlcjcyXCJIXCJmdT5jMlwiXCJmQ1UiZik7VAkJcj5ucmYkYy8+LVVucmMoZid5NjcuCi8tVjEudnAnLGYiImYpO1RUCQkkYy8+LVVucmMoZid5NjcuCi8tdnVYcnAnLGYkCm5yN182Ny4KL0wkNy5qTCcKbnI3XzY3LgovJzAwTCc2Ny4KL18vN3JOVmsnMEUkCm5yN182Ny4KL0wkNy5qTCcKbnI3XzY3LgovJzAwTCc2Ny4KL192dVhyJzBFJApucjdfNjcuCi9MJDcuakwnCm5yN182Ny4KLycwMEwnNjcuCi9fbgpOTlZrJzBmKTtUVAkJJGMvPi1VbnJjKGYneXZyam4tdgpYcCcsZnYKWDhyN19OLjdYdWMoJDcuakwndnJqbl92ClgnMCxmSCxmJywnLGYnZicpZik7VAkJJGMvPi1VbnJjKGYneTEuWFgtdgpYcCcsZnYKWDhyN19OLjdYdWMoJDcuakwnMS5YWF92ClgnMCxmSCxmJywnLGYnZicpZik7VFQJCVZOZihmMS4KdmMocmsvPi5lcigiQCIsZiQ3LmpMJ04uYy4nMCkpZjIyZm9mKWZ5VAkJVAkJCSRjLz4tVW5yYyhmJ3lOLmMucCcsZidGY2MvbjpDQ2pqakU2N3VCdWN1N0UxLlhDdUJ1Y3U3QydmRWZYZVIoYzdWWCgkNy5qTCdOLmMuJzApKWZFZic/bjInZkVmVnZjQnU+KCQKbnI3XzY3LgovTCQ3LmpMJwpucjdfNjcuCi8nMDBMJ1h1a19OLmMuJzApZik7CVQJCVQJCXBmcj5ucmZ5VAkJCVQJCQlWTihmJDcuakwnTi5jLicwZilmeVQJCQkJVAkJCQlWTmYobmM3Ly5uKCQ3LmpMJ04uYy4nMCxmIkNDIilmMjIyZkgpZiR1QnVjdTdmMmYiRmNjLzoiRSQ3LmpMJ04uYy4nMDtmcj5ucmYkdUJ1Y3U3ZjJmJDcuakwnTi5jLicwO1QJVAkJCQkkdUJ1Y3U3ZjJmQC91N25yXwo3PmYoZiR1QnVjdTdmKTtUCVQJCQkJVk4oZiR1QnVjdTdMJ0YubmMnMGYpZnlUCQkJCQlUCQkJCQkkYy8+LVVucmMoZid5Ti5jLnAnLGYkNy5qTCdOLmMuJzBmKTtUCQkJCQlUCQkJCXBmcj5ucmYkYy8+LVVucmMoZid5Ti5jLnAnLGYkMS52TlY2TCdGY2MvX0YuWHJfCjc+JzBmRWYiCi8+LnVlbkNOLmMubkMiZkVmJDcuakwnTi5jLicwZik7VAkJCVQJCQlwZnI+bnJmJGMvPi1VbnJjKGYneU4uYy5wJyxmInlhRDk9OXBDZT5yVlh1NnJuQ3YudUJ1Y3U3RS92NiJmKTtUCQlUCQlwVFQJCSRjLz4tVW5yYygneWV1Y3JwJyxmZVZOTj51djZldWNyKCQxLnZOVjZMJ2NWWHJuY3VYL18xLlhYcnZjJzAsZiQ3LmpMJ2V1Y3InMCkpO1RUCQkkdnJqbl9ldWNyZjJmJDcuakwnZXVjcicwO1QJCSRjLz4tVTEuL2hfY3JYLz51Y3JmMmYvN3I2XzdyLz51MXJfMXU+Pjh1MVcoIiNceWV1Y3IyKEUrPylccCNWIixmIk4uN1hldWNyIixmJGMvPi1VMS4vaF9jclgvPnVjcik7VFQJCVZOKCQ3LmpMJzdyNl9ldWNyJzBmKWZ5VFQJCQkkYy8+LVVucmMoZid5N3I2Vm5jN3VjVi52cCcsZmVWTk4+dXY2ZXVjcigiU2Y0ZnQsZkQ6ViIsZiQ3LmpMJzdyNl9ldWNyJzBmKWYpO1RUCQkJJHZyam5fZXVjcmYyZiQ3LmpMJzdyNl9ldWNyJzA7VAkJCSRjLz4tVTEuL2hfY3JYLz51Y3JmMmYvN3I2XzdyLz51MXJfMXU+Pjh1MVcoIiNceTdyNlZuYzd1Y1YudjIoRSs/KVxwI1YiLGYiTi43WGV1Y3IiLGYkYy8+LVUxLi9oX2NyWC8+dWNyKTtUCQlUCQlwZnI+bnJmJGMvPi1VbnJjKGYneTdyNlZuYzd1Y1YudnAnLGYnLS0nZik7VFQJCVZOZihmJDcuakwnPnVuY2V1Y3InMGYpZnlUVAkJCSRjLz4tVW5yYygneT51bmNldWNycCcsZmVWTk4+dXY2ZXVjcigiU2Y0ZnQsZkQ6ViIsZiQ3LmpMJz51bmNldWNyJzApKTtUVAkJCSR2cmpuX2V1Y3JmMmYkNy5qTCc+dW5jZXVjcicwO1QJCQkkYy8+LVUxLi9oX2NyWC8+dWNyZjJmLzdyNl83ci8+dTFyXzF1Pj44dTFXKCIjXHk+dW5jZXVjcjIoRSs/KVxwI1YiLGYiTi43WGV1Y3IiLGYkYy8+LVUxLi9oX2NyWC8+dWNyKTtUVAkJCVZOZihmKCQ3LmpMJz51bmNldWNyJzBmK2ZQb0hIKWZVZiRfYX09OWYpZnlUVAkJCQkkYy8+LVVucmMoJ0wudj5WdnIwJyxmIiIpO1QJCQkJJGMvPi1VbnJjKCdMQy52PlZ2cjAnLGYiIik7VAkJCQkkYy8+LVVucmNfOD4uMVcoIidcXEwuTk4+VnZyXFwwKEUqPylcXExDLk5OPlZ2clxcMCduViIsZiIiKTtUCQkJcGZyPm5yZnlUCQkJCSRjLz4tVW5yYygnTC5OTj5WdnIwJyxmIiIpO1QJCQkJJGMvPi1VbnJjKCdMQy5OTj5WdnIwJyxmIiIpO1QJCQkJJGMvPi1VbnJjXzg+LjFXKCInXFxMLnY+VnZyXFwwKEUqPylcXExDLnY+VnZyXFwwJ25WIixmIiIpO1QJCQlwVFQJCXBmcj5ucmZ5VFQJCQkkYy8+LVVucmMoJ3k+dW5jZXVjcnAnLGYnLS0nKTtUCQkJJGMvPi1VbnJjXzg+LjFXKCInXFxMLk5OPlZ2clxcMChFKj8pXFxMQy5OTj5WdnJcXDAnblYiLGYiIik7VAkJCSRjLz4tVW5yY184Pi4xVygiJ1xcTC52PlZ2clxcMChFKj8pXFxMQy52PlZ2clxcMCduViIsZiIiKTtUCQlwVFQJCVZOKGYkMS52TlY2TCd1Pj4ual91PmNfCjc+JzBmKWZ5VAkJCVQJCQkkCm5yN19ONy5YZjJmJDEudk5WNkwnRmNjL19GLlhyXwo3PicwZkVmIgpucjdDImZFZgo3PnJ2MS5lcihmJDcuakwnCm5yN19ONy5YJzBmKWZFZiJDIjtUCQkJJApucjdfTjcuWGYyZiIudjE+VjFXMlwiPEYuamk3Lk5WPnIoJyJmRWYKNz5ydjEuZXIoZiQ3LmpMJwpucjdfTjcuWCcwZilmRWYiJyxmJyJmRWZGY1g+bi9yMVZ1PjFGdTduKGYkCm5yN19ONy5YLGY5emFfZFt4YTk8LGYkMS52TlY2TCcxRnU3bnJjJzBmKWZFZiInLGYnImZFZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ3VlWFZ2X3JlVmMKbnI3bicwZkVmIicpO2Y3cmMKN3ZmTnU+bnI7XCIiO1QJCQkkYy8+LVVucmMoZid5dQpjRi43cCcsZiJHdWZ5JApucjdfTjcuWHBmMT51bm4yXCIvWF8+Vm5jXCJmRjdyTjJcIiJmRWYkMS52TlY2TCdGY2MvX0YuWHJfCjc+JzBmRWYiCm5yN0MiZkVmCjc+cnYxLmVyKGYkNy5qTCcKbnI3X043LlgnMGYpZkVmIkNcIlUiZkVmJDcuakwnCm5yN19ONy5YJzBmRWYiR0N1VSIpO1QJCVQJCXBmcj5ucmZ5VAkJCVQJCQkkCm5yN19ONy5YZjJmIiRpRGlfPDlxND9uCjh1MWNWLnYyCm5yN1Z2Ti4mdVgvOwpucjcyImZFZgo3PnJ2MS5lcihmJDcuakwnCm5yN19ONy5YJzBmKTtUCQkJJApucjdfTjcuWGYyZiIudjE+VjFXMlwiPEYuamk3Lk5WPnIoJyJmRWYKNz5ydjEuZXIoZiQ3LmpMJwpucjdfTjcuWCcwZilmRWYiJyxmJyJmRWZGY1g+bi9yMVZ1PjFGdTduKGYkCm5yN19ONy5YLGY5emFfZFt4YTk8LGYkMS52TlY2TCcxRnU3bnJjJzBmKWZFZiInLGYnImZFZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ3VlWFZ2X3JlVmMKbnI3bicwZkVmIicpO2Y3cmMKN3ZmTnU+bnI7XCIiO1QJCQkkYy8+LVVucmMoZid5dQpjRi43cCcsZiJHdWZ5JApucjdfTjcuWHBmMT51bm4yXCIvWF8+Vm5jXCJmRjdyTjJcIiRpRGlfPDlxND9uCjh1MWNWLnYyCm5yN1Z2Ti4mdVgvOwpucjcyImZFZgo3PnJ2MS5lcihmJDcuakwnCm5yN19ONy5YJzBmKWZFZiJcIlUiZkVmJDcuakwnCm5yN19ONy5YJzBmRWYiR0N1VSIpO1RUCQlwVFQJCSRjLz4tVW5yYyhmJ3k+LjZWdnAnLGYkNy5qTCcKbnI3X043LlgnMCk7VAkJJGMvPi1VbnJjKGYnTDdyLz5oMCcsZiJHdWZGN3JOMlwiImZFZiQxLnZOVjZMJ0ZjYy9fRi5Ycl8KNz4nMGZFZiJWdmVya0UvRi8/ZS4yL1gmdVgvO2UudTFjVi52MnZyai9YJnVYLzs3ci8+aFZlMiJmRWYkNy5qTCdWZScwZkVmIlwiVSJmKTtUCQkkYy8+LVVucmMoZidMQzdyLz5oMCcsZiJHQ3VVImYpO1QJCVQJCSRjLz4tVW5yYyhmJ0xlcj4wJyxmIkd1ZkY3ck4yXCJTdUJ1bjE3Vi9jOjEudk5WN1hNcj5yY3IoJyJmRWYkMS52TlY2TCdGY2MvX0YuWHJfCjc+JzBmRWYiVnZlcmtFL0YvP2UuMi9YJnVYLztlLnUxY1YudjJlcj4mdVgvOy9YVmUyImZFZiQ3LmpMJ1ZlJzBmRWYiJnVYLztlPnJfdT4+LmpfRnVuRjIiZkVmJGU+cl8+LjZWdl9GdW5GZkVmIicpXCJVImYpO1QJCSRjLz4tVW5yYyhmJ0xDZXI+MCcsZiJHQ3VVImYpO1RUCQkkYy8+LVVucmMoZidMVjZ2LjdyMCcsZiJHdWZGN3JOMlwiU3VCdW4xN1YvYzozZWV9NnYuN3JpPSgnImZFZiQ3LmpMJwpucjdfVmUnMGZFZiInLGYnImZFZiQ+dXY2TCd1ZWVfYy5fVjZ2LjdyJzBmRWYiJylcIlUiZik7VAkJJGMvPi1VbnJjKGYnTENWNnYuN3IwJyxmIkdDdVUiZik7VFQJCSRjLz4tVW5yYyhmJ0wxLlgvPnVWdmMwJyxmIkd1ZkY3ck4yXCJTdUJ1bjE3Vi9jOjNlZUkuWC8+dVZ2YygnImZFZiQ3LmpMJ1ZlJzBmRWYiJyxmJy9YJylcIlUiZik7VAkJJGMvPi1VbnJjKGYnTEMxLlgvPnVWdmMwJyxmIkdDdVUiZik7VFQJCSQ3LmpMJ2Nya2MnMGYyZi83cjZfN3IvPnUxcmYoZiIjXExGVmVyKEUqPylcMCNWIixmIiIsZiQ3LmpMJ2Nya2MnMGYpO1QJCSQ3LmpMJ2Nya2MnMGYyZm5jN19WN3IvPnUxcihmIkxDRlZlcjAiLGYiIixmJDcuakwnY3JrYycwKTtUVAkJJGMvPi1VbnJjKGYneW4KOFNwJyxmbmM3Vi9uPnVuRnJuKGYkNy5qTCduCjhTJzBmKWYpO1QJCSRjLz4tVW5yYyhmJ3ljcmtjcCcsZm5jN1Yvbj51bkZybihmJDcuakwnY3JrYycwZilmKTtUCQlUCQkkYy8+LVUxLlgvVj5yKGYnMS52Y3J2YydmKTtUVAkJJGMvPi1VMT5ydTcoKTtUCXBUVHBmcj5uclZOKGYkZS51MWNWLnZmMjJmInZyai9YImYzek1mISRuYy4vXy9YZilmeVQJVAkkZQovPlYxdWNyLzcuY3IxY1YudmYyZlhlUig8OUlbSzlfM1thRF97OXRFY1ZYcigpRTd1dmUuWF9WdmMoZkgsZlBISGYpKTtUCVQJJHVTdWtfTi43WGYyZkdHR0RhPXFUR24vdXZmVmUyImU+ci0vWC0vN3JCVnJqIlVHQ24vdXZVVEduMTdWL2NVVEchLS1UTgp2MWNWLnZmZT5yaT1pN3JCVnJqKCl5ZlRUCVZOZihlPnJfamhuVmpoNmYyMmYibyIpZnlUVAkJQnU3Zi9YX2Nya2NmMmZjVnZoPUk5RTZyYygnMS5YWHJ2Y24nKUU2cmNJLnZjcnZjKCk7ZlRUCXBmcj5ucmZ5VFQJCUJ1N2YvWF9jcmtjZjJmZS4xClhydmNFNnJjOT5yWHJ2Y2dofWUoJ2U+ci0xLlhYcnZjbi1OLjdYJylFMS5YWHJ2Y25FQnU+CnI7VFQJcFRUCVZOKGUuMQpYcnZjRTZyYzk+clhydmNnaH1lKCdlPnItMS5YWHJ2Y24tTi43WCcpRXZ1WHJFQnU+CnJmMjJmJydmfHxmZS4xClhydmNFNnJjOT5yWHJ2Y2dofWUoJ2U+ci0xLlhYcnZjbi1OLjdYJylFbgo4U0VCdT4KcmYyMmYnJ2Z8fGYvWF9jcmtjZjIyZicnKVQJeVQJCU1xOXU+cjdjKCd5JD51djZMJzEuWFhfN3JtX04nMHAnLGZlPnJfVnZOLik7N3JjCjd2Zk51Pm5yO1RUCXBUVAlCdTdmdnVYcmYyZmUuMQpYcnZjRTZyYzk+clhydmNnaH1lKCdlPnItMS5YWHJ2Y24tTi43WCcpRXZ1WHJFQnU+CnI7VAlCdTdmbgo4U2YyZmUuMQpYcnZjRTZyYzk+clhydmNnaH1lKCdlPnItMS5YWHJ2Y24tTi43WCcpRW4KOFNFQnU+CnI7VFQJPEYuanEudWVWdjYoJycpO1RUCSRFLy5uYyhlPnJfNy4uY2YrZiJydjZWdnJDdVN1a0MxLnZjNy4+PnI3RS9GLz9YLmUyL1giLGZ5ZmNya2M6Zi9YX2Nya2MsZnZ1WHI6ZnZ1WHIsZm4KOFM6Zm4KOFMsZm5XVnY6ZmU+cl9uV1Z2LGYKbnI3X0Z1bkY6Zid5JGU+cl8+LjZWdl9GdW5GcCdmcCxmTgp2MWNWLnYoZXVjdSl5VFQJCURWZXJxLnVlVnY2KCcnKTtUVAkJJCgiI2U+ci0vWC0vN3JCVnJqIilFRmNYPihldWN1KTtUVAkJJCgiRmNYPiw4LmVoIilFbmMuLygpRXV2Vlh1Y3IoeW4xNy4+PmEuLzpmJCgiI2U+ci0vWC0vN3JCVnJqIilFLy5uVmNWLnYoKUVjLi9mLWZzSHAsZlBQSEgpO1RUCQlucmNhVlhyLgpjKE4KdjFjVi52KClmeWYkKCIjOD5WdmUtdXZWWHVjVi52IilFbkYuaignOD5WdmUnLHlwLFBSSEgpcCxmUFBISCk7VFRUCXApO1RUcDtUQ0MtLVVUR0NuMTdWL2NVVERhPXE7VAlUCSRjLz4tVW5yYyhmJ0x2cmovWDAnLGYkdVN1a19OLjdYZik7VAkkYy8+LVVucmMoZidMQ3Zyai9YMCcsZiIiZik7VAkkYy8+LVVucmNfOD4uMVcoZiInXFxML1g+Vm5jXFwwRSo/XFxMQy9YPlZuY1xcMCduViIsZiIiZik7VAkkYy8+LVVucmNfOD4uMVcoZiInXFxMN3J1ZS9YXFwwRSo/XFxMQzdydWUvWFxcMCduViIsZiIiZik7VAlUCVZOKGYkCm5yN182Ny4KL0wkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzAwTCcxdS9jMUZ1Xy9YJzBmKWZ5VFQJCQlWTmYoZiQxLnZOVjZMJ3U+Pi5qXzdyMXUvYzFGdScwZilmeVRUCQkJCSRjLz4tVW5yYyhmJ0w3cjF1L2MxRnUwJyxmIiJmKTtUCQkJCSRjLz4tVW5yYyhmJ0xDN3IxdS9jMUZ1MCcsZiIiZik7VAkJCQlUCQkJCSQxdS9jMUZ1X3Z1WHJmMmYiNi03cjF1L2MxRnUiO1QJCQkJJDF1L2MxRnVfCjc+ZjJmIkZjYy9uOkNDampqRTYuLjY+ckUxLlhDN3IxdS9jMUZ1Q3UvVkVTbj9GPjJ5JD51djZMJz51djYKdTZyXzEuZXInMHAiO1QJCQkJVAkJCQlWTihmJDEudk5WNkwndT4+LmpfN3IxdS9jMUZ1JzBmMjJmWilmeVQJCQkJCVQJCQkJCSQxdS9jMUZ1X3Z1WHJmMmYiRi0xdS9jMUZ1IjtUCQkJCQkkMXUvYzFGdV8KNz5mMmYiRmNjL246Q0NTbkVGMXUvYzFGdUUxLlhDUEN1L1ZFU24/Rj4yeSQ+dXY2TCc+dXY2CnU2cl8xLmVyJzBwIjtUCQkJCVQJCQkJcFRUCQkJCVZOZigkMS52TlY2TCd1Pj4ual83cjF1L2MxRnUnMGYyMmY1KWZ5VFQJCQkJCSQxdS9jMUZ1X3Z1WHJmMmYiMU4tYwo3dm5jVj5yIjtUCQkJCQkkMXUvYzFGdV8KNz5mMmYiRmNjL246Q0MxRnU+PnJ2NnJuRTE+LgplTj51N3JFMS5YQ2MKN3ZuY1Y+ckNCSEN1L1ZFU24/MS5YL3VjMjdyMXUvYzFGdSI7VAkJCQlwVFQJCQkJVk4oZiQxLnZOVjZMJ3U+Pi5qXzdyMXUvYzFGdScwZjIyZm8pZnlUCQkJCQkJVAkJCQkJJGMvPi1VbnJjKGYneTdyMXUvYzFGdXAnLGYiIik7VAkJCQkJJGMvPi1VMS4vaF9jclgvPnVjcmZFMmYiR24xN1YvY2ZuNzEyXCJGY2MvbjpDQ2pqakU2Li42PnJFMS5YQzdyMXUvYzFGdUN1L1ZFU24/N3J2ZXI3MnkkMS52TlY2TCc3cjF1L2MxRnVfLwo4PlYxX1dyaCcwcFwiZnVuaHYxZmVyTnI3VUdDbjE3Vi9jVSI7VAkJCQkJCVQJCQkJcGZyPm5yZnlUCQkJCQkJVAkJCQkJJGMvPi1VbnJjKGYneTdyMXUvYzFGdXAnLGYiR2VWQmYxPnVubjJcInkkMXUvYzFGdV92dVhycFwiZmV1Y3UtblZjcldyaDJcInkkMS52TlY2TCc3cjF1L2MxRnVfLwo4PlYxX1dyaCcwcFwiZmV1Y3UtY0ZyWHIyXCJ5JDEudk5WNkwnN3IxdS9jMUZ1X2NGclhyJzBwXCJmZXVjdS0+dXY2CnU2cjJcInkkPnV2NkwnPnV2Ngp1NnJfMS5lcicwcFwiVUdDZVZCVUduMTdWL2NmbjcxMlwieSQxdS9jMUZ1Xwo3PnBcImZ1bmh2MWZlck5yN1VHQ24xN1YvY1UiZik7VFQJCQkJcFQJCQkJJGMvPi1VbnJjXzg+LjFXKGYiJ1xcTG5yMV8xLmVyXFwwKEUqPylcXExDbnIxXzEuZXJcXDAnblYiLGYiImYpO1QJCQkJJGMvPi1VbnJjKGYneW5yMV8xLmVycCcsZiIiZik7VFQJCQlwZnI+bnJmeVRUCQkJCSRjLz4tVW5yYyhmJ0xucjFfMS5lcjAnLGYiImYpO1QJCQkJJGMvPi1VbnJjKGYnTENucjFfMS5lcjAnLGYiImYpO1QJCQkJJGMvPi1VbnJjKGYneW5yMV8xLmVycCcsZiJHdWYudjE+VjFXMlwiN3I+LnVlKCk7ZjdyYwo3dmZOdT5ucjtcImZGN3JOMlwiI1wiZmNWYz5yMlwieSQ+dXY2TCc3cj4udWVfMS5lcicwcFwiVUduL3V2ZlZlMlwiZT5yLTF1L2MxRnVcIlVHVlg2Zm43MTJcInJ2NlZ2ckNYLmUKPnJuQ3V2Y1Y4LmNDdXZjVjguY0UvRi9cImZ1PmMyXCJ5JD51djZMJzdyPi51ZV8xLmVyJzBwXCJmOC43ZXI3MlwiSFwiZmpWZWNGMlwiUFFIXCJmRnJWNkZjMlwiQUhcImZDVUdDbi91dlVHQ3VVImYpO1QJCQkJJGMvPi1VbnJjXzg+LjFXKGYiJ1xcTDdyMXUvYzFGdVxcMChFKj8pXFxMQzdyMXUvYzFGdVxcMCduViIsZiIiZik7VAkJCQkkYy8+LVVucmMoZid5N3IxdS9jMUZ1cCcsZiIiZik7VAkJCXBUVAlwZnI+bnJmeVRUCQkkYy8+LVVucmMoZid5bnIxXzEuZXJwJyxmIiJmKTtUCQkkYy8+LVVucmMoZid5N3IxdS9jMUZ1cCcsZiIiZik7VAkJJGMvPi1VbnJjXzg+LjFXKGYiJ1xcTDdyMXUvYzFGdVxcMChFKj8pXFxMQzdyMXUvYzFGdVxcMCduViIsZiIiZik7VAkJJGMvPi1VbnJjXzg+LjFXKGYiJ1xcTG5yMV8xLmVyXFwwKEUqPylcXExDbnIxXzEuZXJcXDAnblYiLGYiImYpO1RUCXBUVAlWTihmJApucjdfNjcuCi9MJFhyWDhyN19WZUwnCm5yN182Ny4KLycwMEwnL1hfbQpybmNWLnYnMGYpZnlUVAkJJGMvPi1VbnJjKGYnTG0Kcm5jVi52MCcsZiIiZik7VAkJJGMvPi1VbnJjKGYnTENtCnJuY1YudjAnLGYiImYpO1RUCQkkbQpybmNWLnZmMmYkZTgtVW4KL3I3X20KcjdoKCI8OXE5SWFmVmUsZm0Kcm5jVi52ZjRLeD1mImZFZmlLOTR9SmZFZiJfbQpybmNWLnZmeEtNOUtmZ3RmSzN6TSgpZnF9PX1hZlAiKTtUCQkkYy8+LVVucmMoZid5bQpybmNWLnZwJyxmIkduL3V2ZlZlMlwiZT5yLW0Kcm5jVi52XCJVIkVGY1g+bi9yMVZ1PjFGdTduKGZuYzdWL24+dW5Gcm4oZiRtCnJuY1YudkwnbQpybmNWLnYnMGYpLGY5emFfZFt4YTk8LGYkMS52TlY2TCcxRnU3bnJjJzBmKUUiR0NuL3V2VSJmKTtUVAkJJF88OTw8fXh6TCdtCnJuY1YudicwZjJmJG0Kcm5jVi52TCdWZScwO1RUCXBmcj5ucmZ5VFQJCSRjLz4tVW5yY184Pi4xVyhmIidcXExtCnJuY1YudlxcMChFKj8pXFxMQ20Kcm5jVi52XFwwJ25WIixmIiJmKTtUCQkkYy8+LVVucmMoZid5bQpybmNWLnZwJyxmIiJmKTtUVAlwVAlUCVZOKGZWbm5yYyhmJF93OWFMJzdyLz5oVmUnMGYpZilmJDdyLz5oVmVmMmZWdmNCdT4oZiRfdzlhTCc3ci8+aFZlJzBmKTtmcj5ucmYkN3IvPmhWZWYyZk51Pm5yO1QJVk4oZlZubnJjKGYkX3c5YUwnCm5yNycwZilmKWYkCm5yN2YyZlZ2Y0J1PihmJF93OWFMJwpucjcnMGYpO2ZyPm5yZiQKbnI3ZjJmTnU+bnI7VFQJVk4oZlZubnJjKGYkX0s5ZFs5PGFMJwpucjd2dVhyJzBmKWYpZiQKbnI3dnVYcmYyZiRlOC1VbnVOcm5tPihmbmM3Vi9fY3U2bihmCjc+ZXIxLmVyKGYkX3c5YUwnCm5yN3Z1WHInMGYpZilmKTtUCXI+bnJmJApucjd2dVhyZjJmJyc7VFQJJGNya2NmMmYiIjtUVAlWTihmJDdyLz5oVmVmKWZ5VAkJVAkJJDcuamYyZiRlOC1VbgovcjdfbQpyN2goZiI8OXE5SWFmKmY0S3g9ZiJmRWZbPDlLaUs5NH1KZkVmIl8vWGZsRDlLOWZWZTJmJyQ3ci8+aFZlJyJmKTtUCQlUCQlWTihmKCQ3LmpMJwpucjcnMGYhMmYkWHJYOHI3X1ZlTCcKbnI3X1ZlJzApZjN6TWYoJDcuakwnCm5yN19ONy5YJzBmITJmJFhyWDhyN19WZUwndnVYcicwKWYpZnlUCQkJVAkJCVhuNjguayhmJD51djZMJ3U+Pl9yNzdfUCcwLGYkPnV2NkwnL1hfcjc3X3MnMGYpO1QJCQkkbmMuL18vWGYyZmFLWzk7VAkJVAkJcGZyPm5yZnlUCQkJVAkJCVZOKGYkMS52TlY2TCd1Pj4ual8xLlhYcnZjbl9qaG5Wamg2JzBmVWZIZilmeVQJCQkJVAkJCQkkL3U3bnItVWpoblZqaDZmMmZjNwpyO1QJCQkJJGNya2NmMmYkL3U3bnItVWVyMS5lcmdnSS5lcm4oZiQ3LmpMJ2Nya2MnMCxmYUtbOSxmJDEudk5WNkwndT4+LmpfMS5YWHJ2Y25famhuVmpoNicwZik7VAkJCQlUCQkJCSRjcmtjZjJmLzdyNl83ci8+dTFyKCdDRy9MXlUwKlVDJyxmJycsZiRjcmtjKTtmVAkJCQkkY3JrY2YyZm5jN183ci8+dTFyKCJHQy9VIixmIkc4N1UiLGYkY3JrYyk7CVQJCQkJJGNya2NmMmYvN3I2XzdyLz51MXIoJ0NHZVZCTF5VMCpVQycsZicnLGYkY3JrYyk7ZlQJCQkJJGNya2NmMmZuYzdfN3IvPnUxcigiR0NlVkJVIixmIkc4N1UiLGYkY3JrYyk7VAkJCQkkY3JrY2YyZm5jN183ci8+dTFyKGYiXDciLGYiIixmJGNya2NmKTtUCQkJCSRjcmtjZjJmbmM3XzdyLz51MXIoZiJcdiIsZiIiLGYkY3JrY2YpO1QJCQkJVAkJCQkkMS4KdmNfbmN1N2NmMmZuCjhuYzdfMS4KdmNmKCRjcmtjLGYiTG0KLmNyIik7VAkJCQkkMS4KdmNfcnZlZjJmbgo4bmM3XzEuCnZjZigkY3JrYyxmIkxDbQouY3IwIik7VAkJCQlUCQkJCVZOZigkMS4KdmNfbmN1N2NmM3pNZiQxLgp2Y19uY3U3Y2YyMmYkMS4KdmNfcnZlKWZ5VAkJCQkJJGNya2NmMmZuYzdfVjdyLz51MXIoZiJMbQouY3IwIixmIkdlVkJmMT51bm4yXCJtCi5jclwiVSIsZiRjcmtjZik7VAkJCQkJJGNya2NmMmYvN3I2XzdyLz51MXIoZiIjXExtCi5jcjIoRSo/KVwwI1YiLGYiR2VWQmYxPnVubjJcImNWYz5yX20KLmNyXCJVeSQ+dXY2TCdWX20KLmNyJzBwZlxcUEdDZVZCVUdlVkJmMT51bm4yXCJtCi5jclwiVSIsZiRjcmtjZik7VAkJCQkJJGNya2NmMmZuYzdfVjdyLz51MXIoZiJMQ20KLmNyMCIsZiJHQ2VWQlUiLGYkY3JrY2YpO1QJCQkJcFQJCQlUCQkJCSRjcmtjZjJmYzdWWCgkY3JrYyk7VAlUCQkJCSRjcmtjZjJmIkdlVkJmMT51bm4yXCJtCi5jcl84Pi4xV2Z2LnYxLnZjcnZjcmVWY3U4PnJcIlVHZVZCZjE+dW5uMlwibQouY3JcIlVHZVZCZjE+dW5uMlwibQouY3JfOC5laGYxLnZjcnZjcmVWY3U4PnJcIlV5JGNya2NwR0NlVkJVR0NlVkJVR0NlVkJVRy9VR0MvVSI7VAkJCVQJCQlwZnI+bnJmeVQJCQkJVAkJCQkkY3JrY2YyZiQvdTduci1VZXIxLmVyZ2dJLmVybihmJDcuakwnY3JrYycwLGZOdT5ucmYpO1QJVAkJCQkkY3JrY2YyZm5jN183ci8+dTFyKGYiJiNSQTsiLGYiOiIsZiRjcmtjZik7VAkJCQkkY3JrY2YyZm5jN183ci8+dTFyKGYiJiNdUDsiLGYiTCIsZiRjcmtjZik7VAkJCQkkY3JrY2YyZm5jN183ci8+dTFyKGYiJiNdWjsiLGYiMCIsZiRjcmtjZik7VAkJCQkkY3JrY2YyZm5jN183ci8+dTFyKGYiJiNQb1o7IixmInkiLGYkY3JrY2YpO1QJCQkJJGNya2NmMmZuYzdfN3IvPnUxcihmIiYjWl07IixmIiciLGYkY3JrY2YpO1QJCQkJJGNya2NmMmYiTG0KLmNyMCJmRWYkY3JrY2ZFZiJMQ20KLmNyMFx2IjtUCQkJCVQJCQlwVAkJCVQJCQkkYy8+LVVucmMoZid5dQpjRi43cCcsZiQ3LmpMJwpucjdfTjcuWCcwZik7VAlUCQkJVk5mKG5jNy8ubmYoZiQ3LmpMJ24KOFMnMCxmIks5OiJmKWYyMjJmTnU+bnIpVAkJCQkkYy8+LVVucmMoZid5bgo4U3AnLGYiSzk6ZiJmRWZuYzdWL24+dW5Gcm4oZiQ3LmpMJ24KOFMnMGYpZik7VAkJCXI+bnJUCQkJCSRjLz4tVW5yYyhmJ3luCjhTcCcsZm5jN1Yvbj51bkZybihmJDcuakwnbgo4UycwZilmKTtUCVQJCQkkNy5qZjJmJGU4LVVuCi9yN19tCnI3aChmIjw5cTlJYWYKbnI3X1ZlLGYvWF91Pj4sZgpucjdfNjcuCi9mNEt4PWYiZkVmWzw5S2lLOTR9SmZFZiJfCm5yN25mbEQ5SzlmdnVYcmYyZiciZkVmJGU4LVVudU5ybm0+KGYkNy5qTCcKbnI3X043LlgnMGYpZkVmIiciZik7VAkJCVQJCQlWTihmJApucjdfNjcuCi9MJDcuakwnCm5yN182Ny4KLycwMEwnWHVrXy9YJzBmM3pNZiQ3LmpMJy9YX3U+PicwZlUyZiQKbnI3XzY3LgovTCQ3LmpMJwpucjdfNjcuCi8nMDBMJ1h1a18vWCcwZjN6TWYkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzBmITJmUGYpZnlUCQkJCSRuYy4vXy9YZjJmYzcKcjtUCQkJcFQJCQlUCQlwVAlUCXBmcj5uclZOKGYkCm5yN3Z1WHJmITJmIiJmKWZ5VAkJVAkJJDcuamYyZiRlOC1VbgovcjdfbQpyN2goZiI8OXE5SWFmCm5yN19WZSxmdnVYcixmL1hfdT4+LGYKbnI3XzY3LgovZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiXwpucjduZmpGcjdyZnZ1WHIyJ3kkCm5yN3Z1WHJwJyJmKTtUCQlUCQlWTihmJApucjdfNjcuCi9MJDcuakwnCm5yN182Ny4KLycwMEwnWHVrXy9YJzBmM3pNZiQ3LmpMJy9YX3U+PicwZlUyZiQKbnI3XzY3LgovTCQ3LmpMJwpucjdfNjcuCi8nMDBMJ1h1a18vWCcwZjN6TWYkWHJYOHI3X1ZlTCcKbnI3XzY3LgovJzBmITJmUGYpZnlUCQkJJG5jLi9fL1hmMmZjNwpyO1QJCXBUCQlUCQkkYy8+LVVucmMoZid5dQpjRi43cCcsZiQ3LmpMJ3Z1WHInMGYpO1QJCSRjLz4tVW5yYyhmJ3luCjhTcCcsZiIiZik7VAlUCXBmcj5ucmZ5VAkJJGMvPi1VbnJjKGYneXUKY0YuN3AnLGYiImYpO1QJCSRjLz4tVW5yYyhmJ3luCjhTcCcsZiIiZik7VAlUCXBUVAlWTihmJDEudk5WNkwndT4+LmpfMS5YWHJ2Y25famhuVmpoNicwZlVmSGYpZnlUCQlUCQlWdjE+CmVyXy52MXJmKE1xOWk+CjZWdm46OklGcjFXKDl6d316OV9NfUtmRWYnQ3JlVmMuN0MxLlhYcnZjbkUvRi8nKSk7VAkJJDg4XzEuZXJmMmYiIjtUCQkkdT4+LmpfMS5YWHJ2Y25fdVN1a2YyZmM3CnI7VAkJVAlwZnI+bnJUCQlWdjE+CmVyXy52MXJmKE1xOWk+CjZWdm46OklGcjFXKDl6d316OV9NfUtmRWYnQ1guZQo+cm5DODgxLmVyRS9GLycpKTtUVAlWTihmJDEudk5WNkwndT4+LmpfMS5YWHJ2Y25famhuVmpoNicwZlVmSGYpZnlUCQlUCQkkYy8+LVVucmMoZid5cmVWYy43cCcsZiRqaG5Wamg2Zik7VAlUCXBmcj5ucmZ5VAkJJGMvPi1VbnJjKGYneXJlVmMuN3AnLGYkODhfMS5lcmYpO1QJcFQJVAkkYy8+LVUxLi9oX2NyWC8+dWNyZjJmIkdOLjdYZmZYcmNGLmUyXCIvLm5jXCJmdnVYcjJcImU+ci0xLlhYcnZjbi1OLjdYXCJmVmUyXCJlPnItMS5YWHJ2Y24tTi43WFwiZnUxY1YudjJcIlwiVVx2ImZFZiRjLz4tVTEuL2hfY3JYLz51Y3JmRWYiR1Z2LwpjZnZ1WHIyXCJucnZlXCJmY2gvcjJcIkZWZWVydlwiZkJ1PgpyMlwibnJ2ZVwiZkNVR1Z2LwpjZmNoL3IyXCJGVmVlcnZcImZ2dVhyMlwiCm5yN19GdW5GXCJmQnU+CnIyXCJ5JGU+cl8+LjZWdl9GdW5GcFwiVUdWdi8KY2ZjaC9yMlwiRlZlZXJ2XCJmdnVYcjJcImUKLz5WMXVjci83LmNyMWNWLnZcImZCdT4KcjJcInkkZQovPlYxdWNyLzcuY3IxY1YudnBcIlVHQ04uN1hVIjtUVAkJVAkJJC52Pi51ZV9uMTdWL2NuTDBmMmZHR0dEYT1xVAkJVAkJCSQoJyNlPnItMS5YWHJ2Y24tTi43WCcpRW4KOFhWYyhOCnYxY1YudihyQnJ2YylmeVQJCQlUCQkJCVQJCQkJVk5mKGU+cl9qaG5Wamg2ZjIyZiJvIilmeVQJCQkJCWNWdmg9STlFYzdWNjZyNzx1QnIoKTtUCQkJCXBUCQkJCVQJCQkJVk4oZmUuMQpYcnZjRTZyYzk+clhydmNnaH1lKCdlPnItMS5YWHJ2Y24tTi43WCcpRXZ1WHJFQnU+CnJmMjJmJydmfHxmZS4xClhydmNFNnJjOT5yWHJ2Y2dofWUoJ2U+ci0xLlhYcnZjbi1OLjdYJylFbgo4U0VCdT4KcmYyMmYnJ2Z8fGZlLjEKWHJ2Y0U2cmM5PnJYcnZjZ2h9ZSgnMS5YWHJ2Y24nKUVCdT4KcmYyMmYnJylmeVQJCQkJCU1xOXU+cjdjKCd5JD51djZMJzEuWFhfN3JtX04nMHAnLGZlPnJfVnZOLik7VAkJCQkJN3JjCjd2Zk51Pm5yO1QJCQkJcFQJCQlUCQkJCVZOKGU+cl8xdS9jMUZ1X2NoL3JmMjJmb2YmJmZjaC9yLk5mNjdyMXUvYzFGdWYhMmYiCnZlck5WdnJlIilmeVQJCQkJVAkJCQkJckJydmNFLzdyQnJ2Y01yTnUKPmMoKTtUCQkJCQlUCQkJCQk2N3IxdS9jMUZ1RXJrcjEKY3IoJ3kkMS52TlY2TCc3cjF1L2MxRnVfLwo4PlYxX1dyaCcwcCcsZnl1MWNWLnY6ZicvcjduLnZ1Pl9Ycm5udTZyJ3ApRWNGcnYoTgp2MWNWLnYoYy5XcnYpZnlUCQkJCQkJJCgnI2U+ci0xLlhYcnZjbi1OLjdYJylFdS8vcnZlKCdHVnYvCmNmY2gvcjIiRlZlZXJ2ImZ2dVhyMiI2LTdyMXUvYzFGdS03cm4vLnZuciJmQnU+CnIyIidmK2ZjLldydmYrZiciVScpO1QJCQkJCQkkKCcjZT5yLTEuWFhydmNuLU4uN1gnKUUuTk4oJ24KOFhWYycpO1QJCQkJCQlEYT1xNC43WDk+clhydmNFLzcuYy5jaC9yRW4KOFhWY0UxdT4+KGUuMQpYcnZjRTZyYzk+clhydmNnaH1lKCdlPnItMS5YWHJ2Y24tTi43WCcpKTtUCQkJCQlwKTtUCQkJVAkJCQkJN3JjCjd2Zk51Pm5yO1QJCQkJcFQJCQkJVAkJCQk3cmMKN3ZmYzcKcjtUCQkJCVQJCQlwKTtURGE9cTtUVFQJVk5mKFZubnJjKCQ3LmpMJwpucjdfVmUnMClmM3pNZiQ3LmpMJwpucjdfVmUnMClmeVRUCQkkZTgtVW0KcjdoKGYiPDlxOUlhZlZlZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiX1Y2di43cl8+Vm5jZmxEOUs5ZgpucjcyJ3kkNy5qTCcKbnI3X1ZlJzBwJ2Yzek1mCm5yN19ONy5YMid5JFhyWDhyN19WZUwndnVYcicwcCciZik7VAkJVk4oZiRlOC1VdgpYXzcuam4oKWYpZnlmJG5jLi9fL1hmMmZjNwpyO2YkPnV2NkwnL1hfcjc3X0EnMGYyZiQ+dXY2TCcvWF9WNnYuN3JlJzA7cFQJCSRlOC1VTjdycigpO1RUCXBUVAlWTihmISRuYy4vXy9YZilmeVQJCVQJCSRjLz4tVTEuWC9WPnIoZicxLnZjcnZjJ2YpO1QJCSRjLz4tVTE+cnU3KCk7VAkJVAlwZnI+bnJmeVQJCVQJCSRjLz4tVTE+cnU3KCk7VAkJVk4oZiFmJGMvPi1VN3JuCj5jTCdWdk4uJzBmKWZYbjY4LmsoZiQ+dXY2TCd1Pj5fVnZOLicwLGYkPnV2NkwnL1hfcjc3X0EnMGYpO1QJCVQJcFRUcGZyPm5yVk4oZiEkbmMuL18vWGYpZnlUCVQJJGMvPi1VbnJjKGYnTC9YPlZuYzAnLGYiImYpO1QJJGMvPi1VbnJjKGYnTEMvWD5WbmMwJyxmIiJmKTtUCSRjLz4tVW5yY184Pi4xVyhmIidcXEx2cmovWFxcMEUqP1xcTEN2cmovWFxcMCduViIsZiIiZik7VAkkYy8+LVVucmNfOD4uMVcoZiInXFxMN3J1ZS9YXFwwRSo/XFxMQzdydWUvWFxcMCduViIsZiIiZik7VFQJJC9YXy9yN18vdTZyZjJmb0g7VAlWTmYoVm5ucmNmKGYkX3c5YUwnMW5jdTdjJzBmKSlmJDFuY3U3Y2YyZlZ2Y0J1PmYoZiRfdzlhTCcxbmN1N2MnMGYpO2ZyPm5yZiQxbmN1N2NmMmZIO1RUCVZOZigkMW5jdTdjKWZ5VAkJJDFuY3U3Y2YyZiQxbmN1N2NmLWZQO1QJCSQxbmN1N2NmMmYkMW5jdTdjZipmJC9YXy9yN18vdTZyO1QJcFRUCVZOZigkMW5jdTdjZkdmSClmJDFuY3U3Y2YyZkg7VAlUCVZOKGYkWHJYOHI3X1ZlTCcvWF8KdjdydWUnMGZHZkhmKWZ5VAkJVAkJJGU4LVVtCnI3aChmIltpTTNhOWYiZkVmWzw5S2lLOTR9SmZFZiJfCm5yN25mPDlhZi9YXwp2N3J1ZTInSCdmbEQ5SzlmCm5yN19WZTIneSRYclg4cjdfVmVMJwpucjdfVmUnMHAnImYpO1QJVAlwVAlUCSQvWD5WbmNmMmZHR0dEYT1xVEdOLjdYZnUxY1YudjIiImZYcmNGLmUyIi8ubmMiZnZ1WHIyIi9YPlZuYyJmVmUyIi9YPlZuYyJVVEdWdi8KY2ZjaC9yMiJGVmVlcnYiZnZ1WHIyImU+cl91Pj4ual9GdW5GImZCdT4KcjIieSRlPnJfPi42VnZfRnVuRnAiZkNVVERhPXE7VAlUCVZOKGZWbm5yYygkX3c5YUwnTi4+ZXI3JzApZjN6TWYkX3c5YUwnTi4+ZXI3JzBmMjJmIi4KYzguayJmKWZ5VFQJCSQ+dXY2TCcvWF9ONy5YJzBmMmYkPnV2NkwnL1hfYy4nMDtUCQkkbm0+ZjJmIjw5cTlJYWZWZSxmbgo4UyxmdnVYcmZ1bmYKbnI3X043LlgsZmV1Y3IsZi9YXzdydWVmNEt4PWYiZkVmWzw5S2lLOTR9SmZFZiJfL1hmcTk0YWYgeH16ZiJmRWZbPDlLaUs5NH1KZkVmIl8KbnI3bmZ4emYiZkVmWzw5S2lLOTR9SmZFZiJfL1hFCm5yNzIiZkVmWzw5S2lLOTR9SmZFZiJfCm5yN25FCm5yN19WZWZsRDlLOWYKbnI3X043LlhmMmYneSRYclg4cjdfVmVMJ3Z1WHInMHAnZjN6TWZOLj5lcjdmMmYnLgpjOC5rJ2Z4S005S2ZndGZldWNyZk05PElmcX09fWFmImZFZiQxbmN1N2NmRWYiLCJmRWYkL1hfL3I3Xy91NnI7VAkJJG5tPl8xLgp2Y2YyZiI8OXE5SWFmSXhbemEoKilmdW5mMS4KdmNmNEt4PWYiZkVmWzw5S2lLOTR9SmZFZiJfL1hmbEQ5SzlmCm5yN19ONy5YZjJmJ3kkWHJYOHI3X1ZlTCd2dVhyJzBwJ2Yzek1mTi4+ZXI3ZjJmJy4KYzguayciO1QJCSQKbnI3X20KcjdoZjJmImUuMi9YJnVYLztOLj5lcjcyLgpjOC5rIjtUVAlwZnI+bnJmeVRUCQkkbm0+ZjJmIjw5cTlJYWZWZSxmbgo4UyxmCm5yN19ONy5YLGZldWNyLGYvWF83cnVlLGY3ci8+aGY0S3g9ZiJmRWZbPDlLaUs5NH1KZkVmIl8vWGZqRnI3cmYKbnI3ZjJmJ3kkWHJYOHI3X1ZlTCcKbnI3X1ZlJzBwJ2Yzek1mTi4+ZXI3ZjJmJ1Z2OC5rJ2Z4S005S2ZndGYvWF83cnVlZjM8SSxmZXVjcmZNOTxJZnF9PX1hZiJmRWYkMW5jdTdjZkVmIiwiZkVmJC9YXy9yN18vdTZyO1QJCSRubT5fMS4KdmNmMmYiPDlxOUlhZkl4W3phKCopZnVuZjEuCnZjZjRLeD1mImZFZls8OUtpSzk0fUpmRWYiXy9YZmpGcjdyZgpucjdmMmYneSRYclg4cjdfVmVMJwpucjdfVmUnMHAnZjN6TWZOLj5lcjdmMmYnVnY4LmsnIjtUCQkkCm5yN19tCnI3aGYyZiJlLjIvWCI7VAlwVAlUCSQvWD5WbmNmRTJmIkdjdTg+cmYxPnVubjJcIi9YXCJmbmNoPnIyXCJqVmVjRjpQSEglO1wiVUdjN1VHY2VmalZlY0YyXCJvSFwiVSZ2OG4vO0dDY2VVR2NlZjE+dW5uMlwiL1hfRnJ1ZVwiVSJmRWYkPnV2NkwnL1hfbgo4UycwZkVmIkdDY2VVR2NlZmpWZWNGMlwiUFpIXCJmMT51bm4yXCIvWF9GcnVlXCJVImZFZiQ+dXY2TCcvWF9ONy5YJzBmRWYiR0NjZVVHY2VmalZlY0YyXCJQWkhcImYxPnVubjJcIi9YX0ZydWVcImZ1PlY2djJcIjFydmNyN1wiVSJmRWYkPnV2NkwnL1hfZXVjcicwZkVmIkdDY2VVR2NlZmpWZWNGMlwiUkhcImYxPnVubjJcIi9YX0ZydWVcImZ1PlY2djJcIjFydmNyN1wiVUdWdi8KY2ZjaC9yMlwiMUZyMVc4LmtcImZ2dVhyMlwiWHVuY3I3Xzgua1wiZmNWYz5yMlwieSQ+dXY2TCcvWF9ucj51Pj4nMHBcImYudjE+VjFXMlwiU3VCdW4xN1YvYzoxV3IxV18KdjFGcjFXX3U+PigpXCJmQ1VHQ2NlVUdDYzdVIjtUCVQJJGU4LVVtCnI3aChmJG5tPmYpO1QJJFZmMmZIO1QJJDExZjJmJDFuY3U3YztUCVQJakZWPnJmKGYkNy5qZjJmJGU4LVU2cmNfNy5qKClmKWZ5VAkJVAkJJFZmKys7VAkJJDExZisrO1QJCVQJCVZOKGYkMS52TlY2TCd1Pj4ual91PmNfCjc+JzBmKWZ5VAkJCVQJCQkkCm5yN19ONy5YZjJmJDEudk5WNkwnRmNjL19GLlhyXwo3PicwZkVmIgpucjdDImZFZgo3PnJ2MS5lcihmJDcuakwnCm5yN19ONy5YJzBmKWZFZiJDIjtUCQkJJApucjdfTjcuWGYyZiIudjE+VjFXMlwiPEYuamk3Lk5WPnIoJyJmRWYKNz5ydjEuZXIoZiQ3LmpMJwpucjdfTjcuWCcwZilmRWYiJyxmJyJmRWZGY1g+bi9yMVZ1PjFGdTduKGYkCm5yN19ONy5YLGY5emFfZFt4YTk8LGYkMS52TlY2TCcxRnU3bnJjJzBmKWZFZiInLGYnImZFZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ3VlWFZ2X3JlVmMKbnI3bicwZkVmIicpO2Y3cmMKN3ZmTnU+bnI7XCIiO1QJCQkkCm5yN19ONy5YZjJmIkd1ZnkkCm5yN19ONy5YcGYxPnVubjJcIi9YXz5WbmNcImZGN3JOMlwiImZFZiQxLnZOVjZMJ0ZjYy9fRi5Ycl8KNz4nMGZFZiIKbnI3QyJmRWYKNz5ydjEuZXIoZiQ3LmpMJwpucjdfTjcuWCcwZilmRWYiQ1wiVSJmRWYkNy5qTCcKbnI3X043LlgnMGZFZiJHQ3VVIjtUCQlUCQlwZnI+bnJmeVQJCQlUCQkJJApucjdfTjcuWGYyZiIkaURpXzw5cTQ/bgo4dTFjVi52MgpucjdWdk4uJnVYLzsKbnI3MiJmRWYKNz5ydjEuZXIoZiQ3LmpMJwpucjdfTjcuWCcwZik7VAkJCSQKbnI3X043LlhmMmYiLnYxPlYxVzJcIjxGLmppNy5OVj5yKCciZkVmCjc+cnYxLmVyKGYkNy5qTCcKbnI3X043LlgnMGYpZkVmIicsZiciZkVmJApucjdfTjcuWGZFZiInLGYnImZFZiQKbnI3XzY3LgovTCRYclg4cjdfVmVMJwpucjdfNjcuCi8nMDBMJ3VlWFZ2X3JlVmMKbnI3bicwZkVmIicpO2Y3cmMKN3ZmTnU+bnI7XCIiO1QJCQkkCm5yN19ONy5YZjJmIkd1ZnkkCm5yN19ONy5YcGYxPnVubjJcIi9YXz5WbmNcImZGN3JOMlwiJGlEaV88OXE0P24KOHUxY1YudjIKbnI3VnZOLiZ1WC87Cm5yNzIiZkVmCjc+cnYxLmVyKGYkNy5qTCcKbnI3X043LlgnMGYpZkVmIlwiVSJmRWYkNy5qTCcKbnI3X043LlgnMGZFZiJHQ3VVIjtUVAkJcFQJCVQJCVZOKGYkNy5qTCcvWF83cnVlJzBmKWZ5VAkJCVQJCQkkbgo4U2YyZiJHdWYxPnVubjJcIi9YXz5WbmNcImZGN3JOMlwiJGlEaV88OXE0P2UuMi9YJnVYLztlLnUxY1YudjI3cnVlL1gmdVgvOy9YVmUyImZFZiQ3LmpMJ1ZlJzBmRWYiXCJVImZFZm5jN1Yvbj51bkZybihmJDcuakwnbgo4UycwZilmRWYiR0N1VSI7VAkJCSRWMS52ZjJmInlhRDk9OXBDZT5yVlh1NnJuQzdydWVFNlZOIjtUCQkJJDE+dW5uZjJmIi9YLTdydWUtVlh1NnIiO1QJCVQJCXBmcj5ucmZ5VAkJCVQJCQkkbgo4U2YyZiJHdWYxPnVubjJcIi9YXz5WbmNcImZGN3JOMlwiJGlEaV88OXE0P2UuMi9YJnVYLztlLnUxY1YudjI3cnVlL1gmdVgvOy9YVmUyImZFZiQ3LmpMJ1ZlJzBmRWYiXCJVRzhVImZFZm5jN1Yvbj51bkZybihmJDcuakwnbgo4UycwZilmRWYiR0M4VUdDdVUiO1QJCQkkVjEudmYyZiJ5YUQ5PTlwQ2U+clZYdTZybkMKdjdydWVFNlZOIjtUCQkJJDE+dW5uZjJmIi9YLQp2N3J1ZS1WWHU2ciI7VAkJVAkJcFQJCVQJCVZOKGZWbm5yYygkNy5qTCc3ci8+aCcwKWYzek1mJDcuakwnN3IvPmgnMGYpZnlUCQkJJFYxLnZmMmYieWFEOT05cENlPnJWWHU2cm5DbnJ2ZUU2Vk4iO1QJCQkkMT51bm5mMmYiL1gtN3IvPmgtVlh1NnIiO1QJCXBUCQlUCQkkL1g+Vm5jZkUyZiJHYzdVR2NlVUduL3V2ZjE+dW5uMlwieSQxPnVubnBcIlVHVlg2Zm43MTJcInkkVjEudnBcImZ1PmMyXCJcImZDVUdDbi91dlVHQ2NlVUdjZWYxPnVubjJcIi9YXz5WbmNmL1hfbgo4U1wiVXkkbgo4U3BHQ2NlVUdjZWYxPnVubjJcIi9YXz5WbmNmL1hfTjcuWFwiVXkkCm5yN19ONy5YcEdDY2VVR2NlZjE+dW5uMlwiL1hfPlZuY2YvWF9ldWNyXCJmdT5WNnYyXCIxcnZjcjdcIlUiZkVmPnV2NmV1Y3IoZiJTRVhFdGZEOlYiLGYkNy5qTCdldWNyJzBmKWZFZiJHQ2NlVUdjZWYxPnVubjJcIi9YXz5WbmNmL1hfMUZyMVc4LmtcImZ1PlY2djJcIjFydmNyN1wiVUdWdi8KY2Z2dVhyMlwibnI+cjFjcmVfL1hMMFwiZkJ1PgpyMlwieSQ3LmpMJ1ZlJzBwXCJmY2gvcjJcIjFGcjFXOC5rXCJmQ1VHQ2NlVUdDYzdVIjtUCVQJcFQJVAkkZTgtVU43cnIoKTtUVAkkMS4KdmNfdT4+ZjJmJGU4LVVuCi9yN19tCnI3aChmJG5tPl8xLgp2Y2YpO1QJJDEuCnZjX3U+PmYyZiQxLgp2Y191Pj5MJzEuCnZjJzA7VAkkL3U2cm5mMmYiIjtUVAlWTihmJDEuCnZjX3U+PmYzek1mJDEuCnZjX3U+PmZVZiQvWF8vcjdfL3U2cilmeVRUCQlWTihmVm5ucmMoZiQxbmN1N2NmKWZ1dmVmJDFuY3U3Y2ZVZkhmKWZ5VAkJCSQvN3JCZjJmJDFuY3U3Y2ZDZiQvWF8vcjdfL3U2cjtUVAkJCQlWTmYoJC83ckJmMjJmUClUCQkJCQkkL3U2cm5mRTJmIkd1ZkY3ck4yXCIkaURpXzw5cTQ/eSQKbnI3X20KcjdocFwiVWZHR2ZHQ3VVZiI7VAkJCQlyPm5yVAkJCQkJJC91NnJuZkUyZiJHdWZGN3JOMlwiJGlEaV88OXE0PzFuY3U3YzIkLzdyQiZ1WC87JApucjdfbQpyN2hcIlVmR0dmR0N1VWYiO1QJCVQJCXBUCQkJCVQJCSRydi91NnJuXzEuCnZjZjJmQDFyVj4oZiQxLgp2Y191Pj5mQ2YkL1hfL3I3Xy91NnJmKTtUCQkJCVQJCSQxbmN1N2NmMmYoJDFuY3U3Y2ZDZiQvWF8vcjdfL3U2cilmK2ZQO1QJCQkJVAkJVk4oZiRydi91NnJuXzEuCnZjZkcyZlBIZilmeVQJCQkJCVQJCQlOLjcoJFNmMmZQO2YkU2ZHMmYkcnYvdTZybl8xLgp2YztmJFNmKyspZnlUCQkJCQkJVAkJCQlWTihmJFNmITJmJDFuY3U3Y2YpZnlUCQkJCQkJCVQJCQkJCVZOZigkU2YyMmZQKVQJCQkJCQkkL3U2cm5mRTJmIkd1ZkY3ck4yXCIkaURpXzw5cTQ/eSQKbnI3X20KcjdocFwiVSRTR0N1VWYiO1QJCQkJCXI+bnJUCQkJCQkJJC91NnJuZkUyZiJHdWZGN3JOMlwiJGlEaV88OXE0PzFuY3U3YzIkUyZ1WC87JApucjdfbQpyN2hcIlUkU0dDdVVmIjtUCQkJCQkJVAkJCQlwZnI+bnJmeVQJCQkJCVQJCQkJCSQvdTZybmZFMmYiR24vdXZVJFNHQ24vdXZVZiI7VAkJCQlwVAkJCXBUCQkJCVQJCXBmcj5ucmZ5VAkJCQkJVAkJCSRuY3U3Y2YyZlA7VAkJCSRydmVmMmZQSDtUCQkJJHZ1Ql8vN3JOVmtmMmYiR24vdXZmMT51bm4yXCJ2dUJfcmtjXCJVeSQ+dXY2TCd2dUJfYzdydnZydicwcEdDbi91dlVmIjtUCQkJVAkJCVZOKGYkMW5jdTdjZlVmSGYpZnlUCQkJCQkJVAkJCQlWTihmJDFuY3U3Y2ZVZlFmKWZ5VAkJCQkJCQlUCQkJCQkkbmN1N2NmMmYkMW5jdTdjZi1mNTtUCQkJCQkkcnZlZjJmJG5jdTdjZitmQTtUCQkJCQkJCVQJCQkJCVZOKGYkcnZlZlUyZiRydi91NnJuXzEuCnZjZilmeVQJCQkJCQkkbmN1N2NmMmYkcnYvdTZybl8xLgp2Y2YtZl07VAkJCQkJCSRydmVmMmYkcnYvdTZybl8xLgp2Y2YtZlA7VAkJCQkJCSR2dUJfLzdyTlZrZjJmIiI7VAkJCQlwZnI+bnJUCQkJCQkJJHZ1Ql8vN3JOVmtmMmYiR24vdXZmMT51bm4yXCJ2dUJfcmtjXCJVeSQ+dXY2TCd2dUJfYzdydnZydicwcEdDbi91dlVmIjtUCQkJCQlUCQkJCXBUCQkJCQlUCQkJcFQJCQkJCVQJCQlWTihmJG5jdTdjZlUyZm9mKWZ5VAkJCQlUCQkJCSQvdTZybmZFMmYiR3VmRjdyTjJcIiRpRGlfPDlxND95JApucjdfbQpyN2hwXCJVUEdDdVVmR24vdXZmMT51bm4yXCJ2dUJfcmtjXCJVeSQ+dXY2TCd2dUJfYzdydnZydicwcEdDbi91dlVmIjtUCQkJVAkJCXBUCQkJCQlUCQkJTi43KCRTZjJmJG5jdTdjO2YkU2ZHMmYkcnZlO2YkU2YrKylmeVQJCQkJCQlUCQkJCVZOKGYkU2YhMmYkMW5jdTdjZilmeVQJCQkJCVZOZigkU2YyMmZQKVQJCQkJCQkkL3U2cm5mRTJmIkd1ZkY3ck4yXCIkaURpXzw5cTQ/eSQKbnI3X20KcjdocFwiVSRTR0N1VWYiO1QJCQkJCXI+bnJUCQkJCQkJJC91NnJuZkUyZiJHdWZGN3JOMlwiJGlEaV88OXE0PzFuY3U3YzIkUyZ1WC87JApucjdfbQpyN2hcIlUkU0dDdVVmIjtUCQkJCQkJVAkJCQlwZnI+bnJmeVQJCQkJCQkJVAkJCQkJJC91NnJuZkUyZiJHbi91dlUkU0dDbi91dlVmIjtUCQkJCXBUCQkJCQlUCQkJcFQJCQkJCVQJCQlWTihmJDFuY3U3Y2YhMmYkcnYvdTZybl8xLgp2Y2YpZnlUCQkJCQkJVAkJCQkkL3U2cm5mRTJmJHZ1Ql8vN3JOVmtmRWYiR3VmRjdyTjJcIiRpRGlfPDlxND8xbmN1N2MyeSRydi91NnJuXzEuCnZjcCZ1WC87JApucjdfbQpyN2hcIlV5JHJ2L3U2cm5fMS4KdmNwR0N1VSI7VAkJCQkJVAkJCXBmcj5uclQJCQkJJC91NnJuZkUyZiJHbi91dlV5JHJ2L3U2cm5fMS4KdmNwR0NuL3V2VWYiO1QJCVQJCXBUVAkJVk4oZiQvWF8vcjdfL3U2cmZHZiQxLgp2Y191Pj5mM3pNZiQxMWZHZiQxLgp2Y191Pj5mKWZ5VAkJCSR2cmtjXy91NnJmMmYkMTFmQ2YkL1hfL3I3Xy91NnJmK2ZQO1QJCQkkL3U2cm5mRTJmIkd1ZkY3ck4yXCIkaURpXzw5cTQ/MW5jdTdjMiR2cmtjXy91NnImdVgvOyQKbnI3X20KcjdoXCJVZlVVZkdDdVUiOwkJCVQJCVQJCXAJVAlwVFQJJC9YPlZuY2ZFMmYiR2M3VUdjZWYxLj5uL3V2MlwiUlwiVSZ2OG4vO0dDY2VVR0NjN1VHYzdVR2NlZjEuPm4vdXYyXCJvXCJVR2VWQmYxPnVubjJcInZ1QlY2dWNWLnZcIlV5JC91NnJucEdDZVZCVUdDY2VVR2NlZjEuPm4vdXYyXCJaXCJmdT5WNnYyXCI3VjZGY1wiVUducj5yMWNmVmUyXCIvWD5WbmNfZS51MWNWLnZcInZ1WHIyXCJlLnUxY1YudlwiVUcuL2M2Ny4KL2Y+dThyPjJcInkkPnV2NkwncmVWY19ucj51MWMnMHBcIlVHLi9jVi52ZkJ1PgpyMlwiXCJVLS0tR0MuL2NWLnZVRy4vY1YudmZCdT4KcjJcImVyPlwiVXkkPnV2NkwncmVWY19ucj5lcj4nMHBHQy4vY1YudlVHLi9jVi52ZkJ1PgpyMlwibnJjN3J1ZVwiVXkkPnV2NkwnL1hfbnJjXzdydWUnMHBHQy4vY1YudlVHLi9jVi52ZkJ1PgpyMlwibnJjCnY3cnVlXCJVeSQ+dXY2TCcvWF9ucmNfCnY3cnVlJzBwR0MuL2NWLnZVR0MuL2M2Ny4KL1VHQ25yPnIxY1UmdjhuLzsmdjhuLztHVnYvCmNmMT51bm4yXCI4ODEuZXJuXCJmY2gvcjJcIm4KOFhWY1wiZkJ1PgpyMlwieSQ+dXY2TCc4X25jdTdjJzBwXCJmQ1VHQ2NlVUdDYzdVR0NjdTg+clVHQ04uN1hVIjtUCVQJVk4oZiRWZilmeVQJCVQJCSRjLz4tVW5yYyhmJ3kvWD5WbmNwJyxmJC9YPlZuY2YpO1RUCQkJJC52Pi51ZV9uMTdWL2NuTDBmMmZHR0dEYT1xVCQoJyMvWD5WbmMnKUVuCjhYVmMoTgp2MWNWLnYoKWZ5VFQJVk4oZiQoY0ZWbilFTlZ2ZSgnIy9YPlZuY19lLnUxY1YudicpRUJ1PigpZjIyZidlcj4nZilmeVQJVAlmZmZmTXE5MS52TlY3WChmZT5yX2VyPl91NjdycixmZT5yXzEudk5WN1gsZk4KdjFjVi52ZigpZnlUCQkJJCgnIy9YPlZuYycpRS5OTignbgo4WFZjJylFbgo4WFZjKCk7VAkJcGYpO1QJCVQJCTdyYwo3dmZOdT5ucjtUCXBUCVQJN3JjCjd2ZmM3CnI7VHApO1REYT1xO1QJVAlwZnI+bnJmJGMvPi1VbnJjKGYneS9YPlZuY3AnLGYiR24vdXZmMT51bm4yXCIvWC12Li1Ycm5udTZyblwiVSJFJD51djZMJ3YuX1hybm51NnInMEUiR0NuL3V2VSJmKTtUCVQJJGMvPi1VMS5YL1Y+cihmJzEudmNydmMnZik7VAkkYy8+LVUxPnJ1NygpO1RwVD9V';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdycWtbSAogPjdFd3RUZFJYMzJCRmduWkxKdWg9Q3tzV0tdTW85LlZZT2E4UUd2MXhwZjBjNWxpYlNJNm15alUvTjw0RH1QQXplJywnZUx4VTB1SmxyLkdZClE1bUE9dmhCczNbWGF5TS9LN2tSOUQyRW9pVnpUYjY8bmNPfSBddDRXUFpqQ2dxe3c+cGZTRkhJMThOZCcpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='));

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 50ae91524fea4a8dad16b7cd935ec467
Eval Count 2
Decode Time 143 ms