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='P2s8Py5zLkRxKkRVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV..
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: plugins.php
-----------------------------------------------------
Use: Plugins Manager
=====================================================
*/
if( !defined( 'DATALIFEENGINE' ) OR !defined( 'LOGGED_IN' ) ) {
header( "HTTP/1.1 403 Forbidden" );
header ( 'Location: ../../' );
die( "Hacking attempt!" );
}
if($member_id['user_group'] != 1){ msg("error", $lang['addnews_denied'], $lang['db_denied']); }
if( isset( $_REQUEST['id'] ) ) $id = intval( $_REQUEST['id'] ); else $id = 0;
function makeDropDown($options, $name, $selected) {
global $config;
$output = "<select class=\"uniform\" name=\"{$name}\" style=\"min-width:100px;\">
";
foreach ( $options as $value => $description ) {
$output .= "<option value=\"".htmlspecialchars( $value, ENT_QUOTES, $config['charset'] )."\"";
if( $selected === $value ) {
$output .= " selected ";
}
$output .= ">{$description}</option>
";
}
$output .= "</select>";
return $output;
}
if( $_GET['action'] == "on" OR $_GET['action'] == "off" ) {
if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
die( "Hacking attempt! User not found" );
}
if( !$config['allow_plugins'] ) {
msg( "error", $lang['addnews_error'], $lang['module_disabled'], "?mod=plugins" );
} elseif( PLUGINS_READ_ONLY ) {
msg( "error", $lang['addnews_error'], $lang['plugins_errors_6'], "?mod=plugins" );
}
if( !check_referer($_SERVER['PHP_SELF']."?mod=plugins") ) {
msg( "error", $lang['index_denied'], $lang['no_referer'], "javascript:history.go(-1)" );
}
$row = $db->super_query( "SELECT id, dleversion, versioncompare, mysqlenable, mysqldisable, needplugin, phpenable, phpdisable FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
if (!$row['id']) msg( "error", "ID not valid", "ID not valid" );
if( $_GET['action'] == "on" ) {
$active = 1;
if( $row['dleversion'] AND $row['versioncompare'] ) {
if( !version_compare($config['version_id'], $row['dleversion'], $row['versioncompare']) ) {
$row['versioncompare'] = str_replace(array("==", ">=", "<="), array($lang['plugins_vc_1'], $lang['plugins_vc_2'], $lang['plugins_vc_3']), $row['versioncompare']);
$lang['plugins_nerror_2'] = str_replace(array("{version}", "{versioncompare}", "{dleversion}"), array($row['dleversion'],$row['versioncompare'],$config['version_id']), $lang['plugins_nerror_2']);
msg( "error", $lang['addnews_error'], $lang['plugins_nerror_2'], "javascript:history.go(-1)" );
}
}
if ($row['needplugin']) {
$needplugins = explode(',', $row['needplugin']);
$need_plugin_errors = '';
foreach ($needplugins as $fplugin) {
$fplugin = $db->safesql( trim($fplugin) );
$find_need = $db->super_query("SELECT id FROM " . PREFIX . "_plugins WHERE name='{$fplugin}' AND id!='{$id}'");
if (!isset($find_need['id'])) {
$need_plugin_errors .= '<p>' . str_replace("{plugin}", $fplugin, $lang['plugins_nerror_3']) . '</p>';
}
}
if ($need_plugin_errors) {
msg("error", $lang['addnews_error'], $need_plugin_errors, "javascript:history.go(-1)");
}
}
if( $row['mysqlenable'] ) {
execute_query($id, $row['mysqlenable']);
}
if($row['phpenable']) {
eval($row['phpenable']);
}
} else {
$active = 0;
if( $row['mysqldisable'] ) {
execute_query($id, $row['mysqldisable']);
}
if( $row['phpdisable'] ) {
eval($row['phpdisable']);
}
}
$db->query( "UPDATE " . PREFIX . "_plugins SET active='{$active}' WHERE id='{$id}'" );
$db->query( "UPDATE " . PREFIX . "_plugins_files SET active='{$active}' WHERE plugin_id='{$id}'" );
$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '114{$active}', '{$id}')" );
clear_all_caches();
header( "Location: ?mod=plugins" );
die();
}
if( $_GET['action'] == "clearerrors" ) {
if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
die( "Hacking attempt! User not found" );
}
if( !$config['allow_plugins'] ) {
msg( "error", $lang['addnews_error'], $lang['module_disabled'], "?mod=plugins" );
} elseif( PLUGINS_READ_ONLY ) {
msg( "error", $lang['addnews_error'], $lang['plugins_errors_6'], "?mod=plugins" );
}
if($id) $db->query( "DELETE FROM " . PREFIX . "_plugins_logs WHERE plugin_id = '{$id}'" );
else $db->query( "DELETE FROM " . PREFIX . "_plugins_logs" );
header( "Location: ?mod=plugins" );
die();
}
if( $_GET['action'] == "delete" ) {
if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
die( "Hacking attempt! User not found" );
}
if( !check_referer($_SERVER['PHP_SELF']."?mod=plugins") ) {
msg( "error", $lang['index_denied'], $lang['no_referer'], "javascript:history.go(-1)" );
}
if( !$config['allow_plugins'] ) {
msg( "error", $lang['addnews_error'], $lang['module_disabled'], "?mod=plugins" );
} elseif( PLUGINS_READ_ONLY ) {
msg( "error", $lang['addnews_error'], $lang['plugins_errors_6'], "?mod=plugins" );
}
$row = $db->super_query( "SELECT id, mysqldelete, filedelete, filelist, phpdelete FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
if (!$row['id']) msg( "error", "ID not valid", "ID not valid" );
if($row['mysqldelete']) {
execute_query($id, $row['mysqldelete']);
}
if($row['filedelete'] AND $row['filelist']) {
$filelist = explode(",", $row['filelist']);
if(count($filelist)) {
foreach($filelist as $file){
$file = trim($file);
if($file) @unlink( ROOT_DIR."/".$file );
}
}
}
$db->query( "DELETE FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_plugins_files WHERE plugin_id='{$id}'" );
$db->query( "DELETE FROM " . PREFIX . "_plugins_logs WHERE plugin_id = '{$id}'" );
$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '115', '{$id}')" );
clear_all_caches();
if($row['phpdelete']) {
eval($row['phpdelete']);
}
header( "Location: ?mod=plugins" );
die();
}
if( $_REQUEST['action'] == "download" ) {
if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
die( "Hacking attempt!" );
}
$row = $db->super_query( "SELECT * FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
if (!$row['id']) msg( "error", "ID not valid", "ID not valid" );
if($row['versioncompare'] == ">=" ) $row['versioncompare'] = 'greater';
elseif ($row['versioncompare'] == "<=") $row['versioncompare'] = 'less';
$plugin_f_name = totranslit(html_entity_decode($row['name'], ENT_QUOTES, $config['charset']), true, false );
$files = array();
$db->query( "SELECT * FROM " . PREFIX . "_plugins_files WHERE plugin_id='{$id}' ORDER BY id ASC" );
while ( $filerow = $db->get_row() ) {
if($filerow['fileversioncompare'] == ">=" ) $filerow['fileversioncompare'] = 'greater';
elseif ($filerow['fileversioncompare'] == "<=") $filerow['fileversioncompare'] = 'less';
$filerow['file'] = htmlspecialchars( $filerow['file'], ENT_QUOTES, $config['charset'] );
$filerow['filedleversion'] = htmlspecialchars( $filerow['filedleversion'], ENT_QUOTES, $config['charset'] );
$files[$filerow['file']][] = array('action' => $filerow['action'], 'searchcode' => $filerow['searchcode'], 'replacecode' => $filerow['replacecode'], 'searchcount' => intval($filerow['searchcount']), 'replacecount' => intval($filerow['replacecount']), 'filedisable' => intval($filerow['filedisable']), 'filedleversion' => $filerow['filedleversion'], 'fileversioncompare' => $filerow['fileversioncompare'] );
}
$x='';
if(count($files)) {
foreach( $files as $key => $value ) {
$x .= "
<file name=\"$key\">";
foreach ($value as $value2) {
$x .= "
<operation action=\"{$value2['action']}\">";
if($value2['searchcode']) {
$x .= "
<searchcode><![CDATA[{$value2['searchcode']}]]></searchcode>";
}
if($value2['replacecode']) {
$x .= "
<replacecode><![CDATA[{$value2['replacecode']}]]></replacecode>";
}
if($value2['searchcount']) {
$x .= "
<searchcount>{$value2['searchcount']}</searchcount>";
}
if($value2['replacecount']) {
$x .= "
<replacecount>{$value2['replacecount']}</replacecount>";
}
$x .= "
<enabled>{$value2['filedisable']}</enabled>";
if($value2['filedleversion']) {
$x .= "
<dleversion>{$value2['filedleversion']}</dleversion>";
$x .= "
<versioncompare>{$value2['fileversioncompare']}</versioncompare>";
}
$x .= "
</operation>";
}
$x .= "
</file>";
}
}
$plugin_data = <<<HTML
<?xml version="1.0" encoding="{$config['charset']}"?>
<dleplugin>
<name>{$row['name']}</name>
<description>{$row['description']}</description>
<icon>{$row['icon']}</icon>
<version>{$row['version']}</version>
<dleversion>{$row['dleversion']}</dleversion>
<versioncompare>{$row['versioncompare']}</versioncompare>
<upgradeurl>{$row['upgradeurl']}</upgradeurl>
<filedelete>{$row['filedelete']}</filedelete>
<needplugin>{$row['needplugin']}</needplugin>
<mnotice>{$row['mnotice']}</mnotice>
<mysqlinstall><![CDATA[{$row['mysqlinstall']}]]></mysqlinstall>
<mysqlupgrade><![CDATA[{$row['mysqlupgrade']}]]></mysqlupgrade>
<mysqlenable><![CDATA[{$row['mysqlenable']}]]></mysqlenable>
<mysqldisable><![CDATA[{$row['mysqldisable']}]]></mysqldisable>
<mysqldelete><![CDATA[{$row['mysqldelete']}]]></mysqldelete>
<phpinstall><![CDATA[{$row['phpinstall']}]]></phpinstall>
<phpupgrade><![CDATA[{$row['phpupgrade']}]]></phpupgrade>
<phpenable><![CDATA[{$row['phpenable']}]]></phpenable>
<phpdisable><![CDATA[{$row['phpdisable']}]]></phpdisable>
<phpdelete><![CDATA[{$row['phpdelete']}]]></phpdelete>
<notice><![CDATA[{$row['notice']}]]></notice>{$x}
</dleplugin>
HTML;
header( "Pragma: public" );
header( "Expires: 0" );
header( "Cache-Control: must-revalidate, post-check=0, pre-check=0");
header( "Cache-Control: private", false);
header( "Content-Type: text/xml; charset={$config['charset']}" );
header( 'Content-Disposition: attachment; filename="'.$plugin_f_name.'.xml"' );
header( "Content-Transfer-Encoding: binary" );
header( "Connection: close");
echo $plugin_data;
die();
}
if( $_REQUEST['action'] == "doadd" OR $_REQUEST['action'] == "doedit" ) {
@header('X-XSS-Protection: 0;');
if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
msg( "error", $lang['addnews_error'], "Hacking attempt! User not found", "?mod=plugins" );
}
if( !$config['allow_plugins'] ) {
msg( "error", $lang['addnews_error'], $lang['module_disabled'], "?mod=plugins" );
} elseif( PLUGINS_READ_ONLY ) {
msg( "error", $lang['addnews_error'], $lang['plugins_errors_6'], "?mod=plugins" );
}
if( defined('DEMOVERSION') ) {
msg( "error", $lang['addnews_error'], $lang['upgr_demo_1'], "?mod=plugins" );
}
if( !check_referer($_SERVER['PHP_SELF']."?mod=plugins") ) {
msg( "error", $lang['index_denied'], $lang['no_referer'], "javascript:history.go(-1)" );
}
$name = $db->safesql(htmlspecialchars( trim($_POST['name']), ENT_QUOTES, $config['charset'] ));
$description = $db->safesql(htmlspecialchars( trim($_POST['description']), ENT_QUOTES, $config['charset'] ));
$icon = $db->safesql( clearfilepath( htmlspecialchars( trim($_POST['icon']), ENT_QUOTES, $config['charset'] ), array ("gif", "jpg", "jpeg", "png", "bmp", "webp", "avif" ) ) );
$upgradeurl = $db->safesql( htmlspecialchars( trim($_POST['upgradeurl']), ENT_QUOTES, $config['charset'] ) );
$needplugin = $db->safesql( htmlspecialchars( trim($_POST['needplugin']), ENT_QUOTES, $config['charset'] ) );
$version = $db->safesql(htmlspecialchars( trim($_POST['version']), ENT_QUOTES, $config['charset'] ));
$dleversion = $db->safesql(htmlspecialchars( trim($_POST['dleversion']), ENT_QUOTES, $config['charset'] ));
$mysqlinstall = $db->safesql(trim($_POST['mysqlinstall']));
$mysqlupgrade = $db->safesql(trim($_POST['mysqlupgrade']));
$mysqlenable = $db->safesql(trim($_POST['mysqlenable']));
$mysqldisable = $db->safesql(trim($_POST['mysqldisable']));
$mysqldelete = $db->safesql(trim($_POST['mysqldelete']));
$phpinstall = $db->safesql(trim($_POST['phpinstall']));
$phpupgrade = $db->safesql(trim($_POST['phpupgrade']));
$phpenable = $db->safesql(trim($_POST['phpenable']));
$phpdisable = $db->safesql(trim($_POST['phpdisable']));
$phpdelete = $db->safesql(trim($_POST['phpdelete']));
$notice = $db->safesql(trim($_POST['notice']));
$mnotice = isset($_POST['mnotice']) ? intval($_POST['mnotice']) : 0;
$filedelete = isset($_POST['filedelete']) ? intval($_POST['filedelete']) : 0;
$plugin_active = 1;
if ( in_array( $_POST['versioncompare'], array("==", ">=", "<=") ) ) $versioncompare = $db->safesql($_POST['versioncompare']); else $versioncompare = '';
if( $dleversion AND $versioncompare) {
if( !version_compare($config['version_id'], $dleversion, $versioncompare) ) $plugin_active = 0;
}
if( !$name ) msg( "error", $lang['addnews_error'], $lang['plugins_nerror'], "javascript:history.go(-1)" );
$files = array();
$allowed_action =array("replace", "before", "after", "replaceall", "create");
if(is_array($_POST['file']) AND count($_POST['file']) ) {
foreach($_POST['file'] as $key => $value) {
$file_name = clearfilepath( trim($value) , array ("php", "lng" ) );
if(!$file_name) continue;
if( in_array( $file_name, DLEPlugins::$protected_files ) ) {
$lang['plugins_errors_7'] = str_replace ("{file}", $file_name, $lang['plugins_errors_7']);
msg( "error", $lang['addnews_error'], $lang['plugins_errors_7'], "javascript:history.go(-1)" );
}
if(is_array($_POST['fileaction'][$key]) AND count($_POST['fileaction'][$key]) ) {
foreach($_POST['fileaction'][$key] as $key2 => $value2) {
if( !in_array($value2, $allowed_action) ) continue;
$file_action = $value2;
$file_search = $_POST['filesearch'][$key][$key2];
$file_replace = $_POST['filereplace'][$key][$key2];
$searchcount = intval($_POST['filefindcount'][$key][$key2]);
$replacecount = intval($_POST['filereplacecount'][$key][$key2]);
$filedisable = isset($_POST['filedisable'][$key][$key2]) ? intval($_POST['filedisable'][$key][$key2]) : 0;
$filedleversion = $db->safesql(htmlspecialchars( trim($_POST['filedleversion'][$key][$key2]), ENT_QUOTES, $config['charset'] ));
if ( in_array( $_POST['fileversioncompare'][$key][$key2], array("==", ">=", "<=") ) ) $fileversioncompare = $db->safesql($_POST['fileversioncompare'][$key][$key2]); else $fileversioncompare = '';
if( !trim($file_search) ) $file_search ='';
if( !trim($file_replace) ) $file_replace ='';
if( ($file_action == "replace" OR $file_action == "before" OR $file_action == "after") AND !$file_search ) continue;
if( ($file_action == "before" OR $file_action == "after" OR $file_action == "replaceall" OR $file_action == "create") AND !$file_replace) continue;
$files[$file_name][] = array('action' => $file_action, 'searchcode' => $file_search, 'replacecode' => $file_replace, 'searchcount' => $searchcount, 'replacecount' => $replacecount, 'filedisable' => $filedisable, 'filedleversion' => $filedleversion, 'fileversioncompare' => $fileversioncompare );
}
}
}
}
if( $_REQUEST['action'] == "doadd" ) {
$row = $db->super_query( "SELECT id FROM " . PREFIX . "_plugins WHERE name='{$name}'" );
if( isset($row['id']) AND $row['id'] ) {
msg( "error", $lang['addnews_error'], $lang['plugins_nerror_1'], "javascript:history.go(-1)" );
}
if ($needplugin) {
$needplugins = explode(',', $needplugin);
foreach ($needplugins as $fplugin) {
$fplugin = $db->safesql(trim($fplugin));
$row = $db->super_query("SELECT id FROM " . PREFIX . "_plugins WHERE name='{$fplugin}'");
if (!$row['id']) {
$plugin_active = 0;
}
}
}
$db->query( "INSERT INTO " . PREFIX . "_plugins (name, description, icon, version, dleversion, versioncompare, active, mysqlinstall, mysqlupgrade, mysqlenable, mysqldisable, mysqldelete, filedelete, upgradeurl, needplugin, phpinstall, phpupgrade, phpenable, phpdisable, phpdelete, notice, mnotice) values ('{$name}', '{$description}','{$icon}','{$version}','{$dleversion}','{$versioncompare}', '{$plugin_active}', '{$mysqlinstall}', '{$mysqlupgrade}','{$mysqlenable}','{$mysqldisable}','{$mysqldelete}', '{$filedelete}', '{$upgradeurl}', '{$needplugin}','{$phpinstall}', '{$phpupgrade}','{$phpenable}','{$phpdisable}','{$phpdelete}', '{$notice}', '{$mnotice}')" );
$id = $db->insert_id();
$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '116', '{$name}')" );
execute_query($id, trim($_POST['mysqlinstall']) );
if ($plugin_active) {
execute_query($id, trim($_POST['mysqlenable']) );
}
$row = $db->super_query( "SELECT phpinstall, phpenable FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
if($row['phpinstall']) {
eval($row['phpinstall']);
}
if($row['phpenable'] AND $plugin_active) {
eval($row['phpenable']);
}
} else {
$row = $db->super_query( "SELECT id FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
if (!$row['id']) msg( "error", "ID not valid", "ID not valid" );
$row = $db->super_query( "SELECT id FROM " . PREFIX . "_plugins WHERE name='{$name}'" );
if( $row['id'] AND $row['id'] != $id ) {
msg( "error", $lang['cat_error'], $lang['plugins_nerror_1'], "javascript:history.go(-1)" );
}
$db->query( "DELETE FROM " . PREFIX . "_plugins_logs WHERE plugin_id = '{$id}'" );
$db->query( "UPDATE " . PREFIX . "_plugins SET name='{$name}', description='{$description}', icon='{$icon}', version='{$version}', dleversion='{$dleversion}', versioncompare='{$versioncompare}', mysqlinstall='{$mysqlinstall}', mysqlupgrade='{$mysqlupgrade}', mysqlenable='{$mysqlenable}', mysqldisable='{$mysqldisable}', mysqldelete='{$mysqldelete}', filedelete='{$filedelete}', upgradeurl='{$upgradeurl}', needplugin='{$needplugin}', phpinstall='{$phpinstall}', phpupgrade='{$phpupgrade}', phpenable='{$phpenable}', phpdisable='{$phpdisable}', phpdelete='{$phpdelete}', notice='{$notice}', mnotice='{$mnotice}' WHERE id='{$id}'" );
$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '117', '{$name}')" );
}
$db->query( "DELETE FROM " . PREFIX . "_plugins_files WHERE plugin_id='{$id}'" );
if(count($files)) {
$row = $db->super_query( "SELECT active FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
foreach( $files as $key => $value ) {
foreach ($value as $value2) {
$key = $db->safesql($key);
$value2['action'] = $db->safesql($value2['action']);
$value2['searchcode'] = $db->safesql($value2['searchcode']);
$value2['replacecode'] = $db->safesql($value2['replacecode']);
$value2['searchcount'] = intval($value2['searchcount']);
$value2['replacecount'] = intval($value2['replacecount']);
$value2['filedisable'] = $db->safesql($value2['filedisable']);
$value2['filedleversion'] = $db->safesql($value2['filedleversion']);
$value2['fileversioncompare'] = $db->safesql($value2['fileversioncompare']);
$db->query( "INSERT INTO " . PREFIX . "_plugins_files (plugin_id, file, action, searchcode, replacecode, searchcount, active, replacecount, filedisable, filedleversion, fileversioncompare) values ('{$id}', '{$key}', '{$value2['action']}', '{$value2['searchcode']}', '{$value2['replacecode']}', '{$value2['searchcount']}', '{$row['active']}', '{$value2['replacecount']}', '{$value2['filedisable']}', '{$value2['filedleversion']}', '{$value2['fileversioncompare']}')" );
}
}
}
clear_all_caches();
header( "Location: ?mod=plugins" );
die();
}
if( $_REQUEST['action'] == "add" OR $_REQUEST['action'] == "edit" ) {
$files = array();
if( $_REQUEST['action'] == "add" ) {
$form_action = "?mod=plugins&action=doadd";
$row=array();
$versioncompare = makeDropDown( array ("==" => $lang['plugins_vc_1'], ">=" => $lang['plugins_vc_2'], "<=" => $lang['plugins_vc_3'] ) , "versioncompare", 0 );
$ifch1 = "";
$ifch2 = "";
$row['name'] = '';
$row['icon'] = '';
$row['description'] = '';
$row['mysqlinstall'] = '';
$row['mysqlupgrade'] = '';
$row['mysqlenable'] = '';
$row['mysqldisable'] = '';
$row['mysqldelete'] = '';
$row['version'] = '';
$row['dleversion'] = '';
$row['needplugin'] = '';
$row['upgradeurl'] = '';
$row['notice'] = '';
$row['phpinstall'] = '';
$row['phpupgrade'] = '';
$row['phpenable'] = '';
$row['phpdisable'] = '';
$row['phpdelete'] = '';
$errors = "";
} else {
$form_action = "?mod=plugins&action=doedit&id=" . $id;
$lang['plugins_bread'] = $lang['plugins_bread_1'];
$lang['news_add'] = $lang['news_save'];
$errors = "";
$error_ids = array();
$db->query( "SELECT * FROM " . PREFIX . "_plugins_logs WHERE plugin_id = '{$id}'" );
while ( $row = $db->get_row() ) {
if( $row['plugin_id'] AND $row['type'] == "mysql") {
$area = $lang['upgr_db_query'];
$row['area'] = "<pre><code>".$row['area']."</code></pre>";
} elseif( $row['plugin_id'] AND $row['type'] == "file" ) {
$error_ids[] = $row['action_id'];
$area = $lang['plugins_filename'];
$row['error'] = $lang['plugins_errors_4']."<pre><code>".$row['error']."</code></pre>";
} elseif( $row['plugin_id'] AND $row['type'] == "upload" ) {
$area = $lang['plugins_filename'];
$row['error'] = "<pre><code>".$row['error']."</code></pre>";
} else {
$area = $lang['plugins_errors_5'];
}
$errors .= "<div class=\"quote\"><b>{$area}</b> {$row['area']}<div class=\"mt-10\"><b>{$lang['upgr_db_errt']}</b> {$row['error']}</div></div>";
}
$row = $db->super_query( "SELECT * FROM " . PREFIX . "_plugins WHERE id='{$id}'" );
$versioncompare = makeDropDown( array ("==" => $lang['plugins_vc_1'], ">=" => $lang['plugins_vc_2'], "<=" => $lang['plugins_vc_3'] ) , "versioncompare", $row['versioncompare'] );
$row['mysqlinstall'] = htmlspecialchars( $row['mysqlinstall'], ENT_QUOTES, $config['charset'] );
$row['mysqlupgrade'] = htmlspecialchars( $row['mysqlupgrade'], ENT_QUOTES, $config['charset'] );
$row['mysqlenable'] = htmlspecialchars( $row['mysqlenable'], ENT_QUOTES, $config['charset'] );
$row['mysqldisable'] = htmlspecialchars( $row['mysqldisable'], ENT_QUOTES, $config['charset'] );
$row['mysqldelete'] = htmlspecialchars( $row['mysqldelete'], ENT_QUOTES, $config['charset'] );
$row['phpinstall'] = htmlspecialchars( $row['phpinstall'], ENT_QUOTES, $config['charset'] );
$row['phpupgrade'] = htmlspecialchars( $row['phpupgrade'], ENT_QUOTES, $config['charset'] );
$row['phpenable'] = htmlspecialchars( $row['phpenable'], ENT_QUOTES, $config['charset'] );
$row['phpdisable'] = htmlspecialchars( $row['phpdisable'], ENT_QUOTES, $config['charset'] );
$row['phpdelete'] = htmlspecialchars( $row['phpdelete'], ENT_QUOTES, $config['charset'] );
$row['notice'] = htmlspecialchars( $row['notice'], ENT_QUOTES, $config['charset'] );
if( $row['filedelete'] ) $ifch1 = " checked"; else $ifch1 = "";
if( $row['mnotice'] ) $ifch2 = " checked"; else $ifch2 = "";
$db->query( "SELECT * FROM " . PREFIX . "_plugins_files WHERE plugin_id='{$id}' ORDER BY id ASC" );
while ( $filerow = $db->get_row() ) {
$filerow['file'] = htmlspecialchars( $filerow['file'], ENT_QUOTES, $config['charset'] );
if($filerow['replacecode'][0] == "
" OR $filerow['replacecode'][0] == "
") $filerow['replacecode'] = "
".$filerow['replacecode'];
$files[$filerow['file']][] = array('id' => $filerow['id'], 'action' => htmlspecialchars($filerow['action'], ENT_QUOTES, $config['charset'] ), 'searchcode' => htmlspecialchars($filerow['searchcode'], ENT_QUOTES, $config['charset'] ), 'replacecode' => htmlspecialchars($filerow['replacecode'], ENT_QUOTES, $config['charset'] ), 'searchcount' => intval($filerow['searchcount']), 'replacecount' => intval($filerow['replacecount']), 'filedisable' => intval($filerow['filedisable']), 'filedleversion' => htmlspecialchars($filerow['filedleversion'], ENT_QUOTES, $config['charset'] ), 'fileversioncompare' => $filerow['fileversioncompare'] );
}
}
$x = "";
$total_files = 0;
$total_action = 0;
if(count($files)) {
foreach( $files as $key => $value ) {
$total_files ++;
$action_ids = array_column($value, 'id');
$error_in_block = false;
$class = '';
if(count($files) > 1) {
$display = "none";
$expand_block = "<a href=\"#\" onclick=\"javascript:fexpand(this, '{$total_files}'); return(false);\" class=\"position-left\"><span class=\"expandtext\">{$lang['show_all_action']}</span><span class=\"caret\"></span></a>";
foreach ($action_ids as $ids) {
if (in_array($ids, $error_ids)) {
$error_in_block = true;
$class = ' border-warning';
}
}
} else {
$expand_block = "<a href=\"#\" onclick=\"javascript:fexpand(this, '{$total_files}'); return(false);\" class=\"position-left dropup\"><span class=\"expandtext\">{$lang['hide_all_action']}</span><span class=\"caret\"></span></a>";
$display = "block";
}
$x .= "<div class=\"well{$class}\" id=\"filefieldset_{$total_files}\"><fieldset>";
$x .= "<legend>{$lang['plugins_filename']}<input name=\"file[{$total_files}]\" type=\"text\" class=\"form-control width-500 position-right\" value=\"{$key}\"><i class=\"help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right\" data-rel=\"popover\" data-trigger=\"hover\" data-placement=\"right\" data-content=\"{$lang['plugins_file_h']}\"></i><div class=\"pull-right\" >{$expand_block}<a onclick=\"javascript:fdel('{$total_files}'); return(false);\"><i class=\"fa fa-trash-o text-danger\"></i></a></div></legend>";
$x .= "<div id=\"actions_{$total_files}\" style=\"display: {$display};\">";
foreach ($value as $value2) {
$total_action ++;
$f_action = array('replace' => '','before' => '','after' => '','replaceall' => '','create' => '', 'enabled' => '');
$f_action[$value2['action']] = " selected";
$class = ' border-success';
if( $value2['filedleversion'] AND $value2['fileversioncompare']) {
if( !version_compare($config['version_id'], $value2['filedleversion'], $value2['fileversioncompare']) ) $class = ' border-warning';
}
if( $value2['filedisable'] ) $f_action['enabled'] = " checked";
else $class = ' border-grey';
if (in_array($value2['id'], $error_ids)) {
$class = ' border-danger';
$error_message = "<span class=\"text-danger\">{$lang['plugins_errors_4']}</span>";
} else $error_message = "";
if(count($value) > 1 AND !$error_message AND $error_in_block) {
$display = "none";
$expand_block = "<a href=\"#\" onclick=\"javascript:fexpand(this, '{$total_action}', 'searchs_'); return(false);\" class=\"position-left\"><span class=\"expandtext\">{$lang['show_all_action']}</span><span class=\"caret\"></span></a>";
} else {
$expand_block = "<a href=\"#\" onclick=\"javascript:fexpand(this, '{$total_action}', 'searchs_'); return(false);\" class=\"position-left dropup\"><span class=\"expandtext\">{$lang['hide_all_action']}</span><span class=\"caret\"></span></a>";
$display = "block";
}
$x .= "<div id=\"actionset_{$total_action}\" class=\"alert pb-5{$class}\"><fieldset>";
$x .= "<legend><span class=\"position-left\">{$lang['vote_action']}</span>";
$x .= "<select class=\"uniform position-right\" name=\"fileaction[{$total_files}][{$total_action}]\" onchange=\"onActionChange(this, {$total_files}, {$total_action})\">";
$x .= "<option value=\"\">{$lang['xfield_xact']}</option>";
$x .= "<option value=\"replace\"{$f_action['replace']}>{$lang['plugins_at_l1']}</option>";
$x .= "<option value=\"before\"{$f_action['before']}>{$lang['plugins_at_l2']}</option>";
$x .= "<option value=\"after\"{$f_action['after']}>{$lang['plugins_at_l3']}</option>";
$x .= "<option value=\"replaceall\"{$f_action['replaceall']}>{$lang['plugins_at_l4']}</option>";
$x .= "<option value=\"create\"{$f_action['create']}>{$lang['plugins_at_l5']}</option>";
$x .= "</select>";
$x .= "<div class=\"pull-right\">{$expand_block}<input class=\"switch\" type=\"checkbox\" name=\"filedisable[{$total_files}][{$total_action}]\" value=\"1\"{$f_action['enabled']}><a onclick=\"javascript:adel('{$total_action}'); return(false);\"><i class=\"fa fa-trash-o text-danger position-right\"></i></a></div></legend>";
$x .= "<div id=\"searchs_{$total_action}\" style=\"display: {$display};\">";
if($value2['searchcode']) {
$x .= "<div class=\"form-group\">";
$x .= "<label class=\"control-label col-sm-2\">{$lang['plugins_at_l6']}</label>";
$x .= "<div class=\"col-sm-10\">";
$x .= "{$error_message}<textarea name=\"filesearch[{$total_files}][{$total_action}]\" id=\"text_search_{$total_files}_{$total_action}\" class=\"classic width-500 php_editor\" rows=\"3\">{$value2['searchcode']}</textarea>";
$x .= "</div>";
$x .= "</div>";
}
if($value2['replacecode'] OR $value2['action'] == "replace" ) {
$rep_lang = $lang['plugins_at_l7'];
if($value2['action'] == 'before' ) {
$rep_lang="{$lang['plugins_at_l8']}";
} elseif($value2['action'] == 'after') {
$rep_lang="{$lang['plugins_at_l9']}";
} elseif($value2['action'] == 'create') {
$rep_lang="{$lang['plugins_at_l10']}";
}
$x .= "<div class=\"form-group\">";
$x .= "<label class=\"control-label col-sm-2\">{$rep_lang}</label>";
$x .= "<div class=\"col-sm-10\">";
$x .= "<textarea name=\"filereplace[{$total_files}][{$total_action}]\" id=\"text_replace_{$total_files}_{$total_action}\" class=\"classic width-500 php_editor\" rows=\"5\">{$value2['replacecode']}</textarea>";
$x .= "</div></div>";
}
if($value2['searchcode']) {
if( !$value2['searchcount'] ) $value2['searchcount'] = "";
if( !$value2['replacecount'] ) $value2['replacecount'] = "";
$x .= "<div class=\"form-group\">";
$x .= "<label class=\"control-label col-sm-2\">{$lang['plugins_at_l11']}</label>";
$x .= "<div class=\"col-sm-10\">";
$x .= "<input type=\"text\" name=\"filefindcount[{$total_files}][{$total_action}]\" id=\"find_count_{$total_files}_{$total_action}\" class=\"form-control\" maxlength=\"3\" style=\"width:3.438rem;\" value=\"{$value2['searchcount']}\"><i class=\"help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left\" data-rel=\"popover\" data-trigger=\"hover\" data-placement=\"right\" data-content=\"{$lang['plugins_at_hint']}\"></i>";
$x .= "</div></div>";
$x .= "<div class=\"form-group\">";
$x .= "<label class=\"control-label col-sm-2\">{$lang['plugins_at_l12']}</label>";
$x .= "<div class=\"col-sm-10\">";
$x .= "<input type=\"text\" name=\"filereplacecount[{$total_files}][{$total_action}]\" id=\"replace_count_{$total_files}_{$total_action}\" class=\"form-control\" maxlength=\"3\" style=\"width:3.438rem;\" value=\"{$value2['replacecount']}\"><i class=\"help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left\" data-rel=\"popover\" data-trigger=\"hover\" data-placement=\"right\" data-content=\"{$lang['plugins_rep_hint']}\"></i>";
$x .= "</div></div>";
}
$filedleversion = makeDropDown( array ("==" => $lang['plugins_vc_1'], ">=" => $lang['plugins_vc_2'], "<=" => $lang['plugins_vc_3'] ) , "fileversioncompare[{$total_files}][{$total_action}]", $value2['fileversioncompare'] );
$x .= "<div class=\"form-group\">";
$x .= "<label class=\"control-label col-sm-2\">{$lang['plugins_dlever']}</label>";
$x .= "<div class=\"col-sm-10\">";
$x .= "<input type=\"text\" class=\"form-control position-left\" name=\"filedleversion[{$total_files}][{$total_action}]\" value=\"{$value2['filedleversion']}\" style=\"width:100px;\">";
$x .= $filedleversion;
$x .= "</div>";
$x .= "</div>";
$x .="</div></fieldset></div>";
}
$x .= "<div class=\"moreactions\"></div>";
$x .= "<button type=\"button\" onclick=\"AddAction('{$total_files}'); return false;\" class=\"btn bg-brown-600 btn-sm btn-raised position-left\"><i class=\"fa fa-plus position-left\"></i>{$lang['plugins_addact']}</button>";
$x .= "</div></fieldset></div>";
}
}
$js_array[] = "engine/skins/codemirror/js/code.js";
$css_array[] = "engine/skins/codemirror/css/default.css";
echoheader( "<i class=\"fa fa-puzzle-piece position-left\"></i><span class=\"text-semibold\">{$lang['opt_plugins']}</span>", array('?mod=plugins' => $lang['plugins_list'], '' => $lang['plugins_bread'] ) );
if (isset($errors) AND $errors) {
$error_tab = "<li><a href=\"#taberror\" data-toggle=\"tab\" class=\"text-danger\"><i class=\"fa fa-exclamation-triangle position-left\"></i> {$lang['plugins_bread_2']}</a></li>";
$errors = <<<HTML
<div class="tab-pane" id="taberror">
<div class="panel-body">
{$errors}
<a href="?mod=plugins&action=clearerrors&user_hash={$dle_login_hash}&id={$id}" class="btn bg-brown-600 btn-sm btn-raised position-left"><i class="fa fa-trash position-left"></i>{$lang['plugins_errors_2']}</a>
</div>
</div>
HTML;
} else {
$error_tab = "";
}
echo <<<HTML
<style>
.CodeMirror {
height: auto;
border: 1px solid #cccccc;
box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
}
.CodeMirror-scroll {
max-height: 300px;
}
</style>
<form action="{$form_action}" method="post" class="form-horizontal" id="addnews">
<input type="hidden" name="user_hash" value="{$dle_login_hash}" />
<div class="panel panel-default">
<div class="panel-heading">
<ul class="nav nav-tabs nav-tabs-solid">
<li class="active"><a href="#tabhome" data-toggle="tab"><i class="fa fa-home position-left"></i> {$lang['plugins_tab_1']}</a></li>
<li><a href="#tabfiles" data-toggle="tab"><i class="fa fa-file-code-o position-left"></i> {$lang['plugins_tab_2']}</a></li>
<li><a href="#tabmysql" data-toggle="tab"><i class="fa fa-database position-left"></i> {$lang['plugins_tab_3']}</a></li>
<li><a href="#tabphp" data-toggle="tab"><i class="fa fa-code position-left"></i> PHP</a></li>
<li><a href="#notinfo" data-toggle="tab"><i class="fa fa-pencil-square-o position-left"></i> {$lang['main_p_notice']}</a></li>
{$error_tab}
</ul>
<div class="heading-elements">
<ul class="icons-list">
<li><a href="#" class="panel-fullscreen"><i class="fa fa-expand"></i></a></li>
</ul>
</div>
</div>
<div class="panel-tab-content tab-content">
<div class="tab-pane active" id="tabhome">
<div class="panel-body">
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_name']}</label>
<div class="col-sm-10">
<input dir="auto" type="text" class="form-control width-500 position-left" name="name" maxlength="100" value="{$row['name']}"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['plugins_name_h']}"></i>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_descr']}</label>
<div class="col-sm-10">
<textarea dir="auto" name="description" class="classic width-500" rows="3">{$row['description']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['cat_addicon']}</label>
<div class="col-sm-10">
<input type="text" class="form-control width-500 position-left" name="icon" maxlength="255" value="{$row['icon']}"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['plugins_icon_h']}"></i>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_ver']}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="version" maxlength="10" value="{$row['version']}" style="width:100px;">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_dlever']}</label>
<div class="col-sm-10">
<input type="text" class="form-control position-left" name="dleversion" maxlength="10" value="{$row['dleversion']}" style="width:100px;">{$versioncompare}<i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['plugins_dleverh']}"></i>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_needp']}</label>
<div class="col-sm-10">
<input type="text" class="form-control width-500 position-left" name="needplugin" maxlength="255" value="{$row['needplugin']}"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['plugins_needp_h']}"></i>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_upgr']}</label>
<div class="col-sm-10">
<input type="text" class="form-control width-500 position-left" name="upgradeurl" maxlength="255" value="{$row['upgradeurl']}"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['plugins_upgr_h']}"></i>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2"> </label>
<div class="col-sm-10">
<div class="checkbox"><label><input class="icheck" type="checkbox" name="filedelete" value="1"{$ifch1}>{$lang['plugins_filedel']}</label><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['plugins_filedelh']}"></i></div>
</div>
</div>
</div>
</div>
<div class="tab-pane" id="tabfiles">
<div class="panel-body">
<div id="container">{$x}</div>
<button type="button" onclick="AddFile(); return false;" class="btn bg-slate-600 btn-sm btn-raised position-left"><i class="fa fa-plus position-left"></i>{$lang['plugins_addfile']}</button>
</div>
</div>
<div class="tab-pane" id="tabmysql">
<div class="panel-body">
<div class="form-group">
<label class="control-label col-sm-12">{$lang['plugins_myinfo_1']}</label>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_myinstall']}</label>
<div class="col-sm-10">
<textarea name="mysqlinstall" class="classic width-500 sql_editor" rows="5">{$row['mysqlinstall']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_myupgrade']}</label>
<div class="col-sm-10">
<textarea name="mysqlupgrade" class="classic width-500 sql_editor" rows="5">{$row['mysqlupgrade']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_myenable']}</label>
<div class="col-sm-10">
<textarea name="mysqlenable" class="classic width-500 sql_editor" rows="5">{$row['mysqlenable']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_mydisable']}</label>
<div class="col-sm-10">
<textarea name="mysqldisable" class="classic width-500 sql_editor" rows="5">{$row['mysqldisable']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_mydelete']}</label>
<div class="col-sm-10">
<textarea name="mysqldelete" class="classic width-500 sql_editor" rows="5">{$row['mysqldelete']}</textarea>
</div>
</div>
<div class="alert alert-success">{$lang['plugins_myinfo']}</div>
</div>
</div>
<div class="tab-pane" id="tabphp">
<div class="panel-body">
<div class="form-group">
<label class="control-label col-sm-12">{$lang['plugins_pinfo_1']}</label>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_myinstall']}</label>
<div class="col-sm-10">
<textarea name="phpinstall" class="classic width-500 php_editor" rows="5">{$row['phpinstall']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_myupgrade']}</label>
<div class="col-sm-10">
<textarea name="phpupgrade" class="classic width-500 php_editor" rows="5">{$row['phpupgrade']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_myenable']}</label>
<div class="col-sm-10">
<textarea name="phpenable" class="classic width-500 php_editor" rows="5">{$row['phpenable']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_mydisable']}</label>
<div class="col-sm-10">
<textarea name="phpdisable" class="classic width-500 php_editor" rows="5">{$row['phpdisable']}</textarea>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2">{$lang['plugins_mydelete']}</label>
<div class="col-sm-10">
<textarea name="phpdelete" class="classic width-500 php_editor" rows="5">{$row['phpdelete']}</textarea>
</div>
</div>
</div>
</div>
<div class="tab-pane" id="notinfo">
<div class="panel-body">
<textarea dir="auto" name="notice" class="classic" style="width:100%;height:200px;" placeholder="{$lang['main_no_p_notice']}">{$row['notice']}</textarea>
<div class="checkbox mt-10"><label><input class="icheck" type="checkbox" name="mnotice" value="1"{$ifch2}>{$lang['main_p_notice_1']}</label></div>
</div>
</div>
{$errors}
</div>
<div class="panel-footer">
<button type="submit" class="btn bg-teal btn-sm btn-raised position-left"><i class="fa fa-floppy-o position-left"></i>{$lang['news_add']}</button>
</div>
</div>
</form>
<script>
<!--
$(function(){
$(".sql_editor").each(function() {
var editor = CodeMirror.fromTextArea( this, {
mode: "text/x-mysql",
dragDrop: false,
autoRefresh: true,
viewportMargin: Infinity
});
function updateTextArea() {
editor.save();
}
editor.on('change', updateTextArea);
});
$(".php_editor").each(function() {
var editor = CodeMirror.fromTextArea( this, {
mode: "text/x-php",
dragDrop: false,
autoRefresh: true,
viewportMargin: Infinity
});
function updateTextArea() {
editor.save();
}
editor.on('change', updateTextArea);
});
});
var files = {$total_files};
var actions = {$total_action};
function fexpand(obj, id, field='actions_'){
$(obj).toggleClass('dropup');
if( $( obj ).hasClass( "dropup" ) ) {
$( obj ).find('span.expandtext').html('{$lang['hide_all_action']}');
} else {
$( obj ).find('span.expandtext').html('{$lang['show_all_action']}');
}
ShowOrHide(field + id);
return false;
}
function fdel(id){
DLEconfirm( '{$lang['plugins_f_del']}', '{$lang['p_confirm']}', function () {
$("#filefieldset_"+id).remove();
} );
}
function adel(id){
DLEconfirm( '{$lang['plugins_a_del']}', '{$lang['p_confirm']}', function () {
$("#actionset_"+id).remove();
} );
}
function AddFile(){
files ++;
var x = "<div class=\"well\" id=\"filefieldset_" + files + "\"><fieldset>";
x += "<legend>{$lang['plugins_filename']}<input name=\"file[" + files + "]\" type=\"text\" class=\"form-control width-500 position-right\"><i class=\"help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right\" data-rel=\"popover\" data-trigger=\"hover\" data-placement=\"right\" data-content=\"{$lang['plugins_file_h']}\"></i><div class=\"pull-right\"><a href=\"#\" onclick=\"javascript:fexpand(this, '" + files + "'); return(false);\" class=\"position-left dropup\"><span class=\"expandtext\">{$lang['hide_all_action']}</span><span class=\"caret\"></span></a><a onclick=\"javascript:fdel('" + files + "'); return(false);\"><i class=\"fa fa-trash-o text-danger\"></i></a></div></legend>";
x += "<div id=\"actions_" + files + "\"><div class=\"moreactions\"></div>";
x += "<button type=\"button\" onclick=\"AddAction('" + files + "'); return false;\" class=\"btn bg-brown-600 btn-sm btn-raised position-left\"><i class=\"fa fa-plus position-left\"></i>{$lang['plugins_addact']}</button>";
x += "</div></fieldset></div>";
$("#container").append(x);
$("#filefieldset_" + files).find(".help-button").popover();
}
function AddAction(fileid){
actions ++;
var x = "<div id=\"actionset_" + actions + "\" class=\"alert border-success pb-5\"><fieldset>";
x += "<legend><span class=\"position-left\">{$lang['vote_action']}</span>";
x += "<select class=\"uniform position-right\" name=\"fileaction[" + fileid + "][" + actions + "]\" onchange=\"onActionChange(this, " + fileid + ", " + actions + ")\">";
x += "<option value=\"\">{$lang['xfield_xact']}</option>";
x += "<option value=\"replace\">{$lang['plugins_at_l1']}</option>";
x += "<option value=\"before\">{$lang['plugins_at_l2']}</option>";
x += "<option value=\"after\">{$lang['plugins_at_l3']}</option>";
x += "<option value=\"replaceall\">{$lang['plugins_at_l4']}</option>";
x += "<option value=\"create\">{$lang['plugins_at_l5']}</option>";
x += "</select>";
x += "<div class=\"pull-right\"><a href=\"#\" onclick=\"javascript:fexpand(this, '" + actions + "', 'searchs_'); return(false);\" class=\"position-left dropup\"><span class=\"expandtext\">{$lang['hide_all_action']}</span><span class=\"caret\"></span></a><input class=\"switch\" type=\"checkbox\" name=\"filedisable[" + fileid + "][" + actions + "]\" value=\"1\" checked><a onclick=\"javascript:adel('" + actions + "'); return(false);\"><i class=\"fa fa-trash-o text-danger position-right\"></i></a></div></legend>";
x += "<div id=\"searchs_" + actions + "\"></div>";
x += "</fieldset></div>";
$("#actions_" + fileid + " .moreactions").append(x);
$("#actionset_" + actions ).find("select.uniform").selectpicker();
var switches = Array.prototype.slice.call($("#actionset_" + actions ).find(".switch"));
switches.forEach(function(html) {
var switchery = new Switchery(html, {color: '#4CAF50'});
});
}
function onActionChange(obj, fileid, actionid) {
var value = $(obj).val();
if (value == '') {
$("#searchs_" + actionid ).html('');
return false;
}
var x = "";
if( $("#text_search_" + fileid + "_" + actionid ).val() ) {
var prev_val_search = $("#text_search_" + fileid + "_" + actionid ).val();
} else {
var prev_val_search = '';
}
if( $("#text_replace_" + fileid + "_" + actionid ).val() ) {
var prev_val_replace = $("#text_replace_" + fileid + "_" + actionid ).val();
} else {
var prev_val_replace = '';
}
if( $("#replace_count_" + fileid + "_" + actionid ).val() ) {
var prev_val_replace_count = $("#replace_count_" + fileid + "_" + actionid ).val();
} else {
var prev_val_replace_count = '';
}
if( $("#find_count_" + fileid + "_" + actionid ).val() ) {
var prev_val_find_count = $("#find_count_" + fileid + "_" + actionid ).val();
} else {
var prev_val_find_count = '';
}
if(value != 'replaceall' && value !='create') {
x += "<div class=\"form-group\">";
x += "<label class=\"control-label col-sm-2\">{$lang['plugins_at_l6']}</label>";
x += "<div class=\"col-sm-10\">";
x += "<textarea name=\"filesearch[" + fileid + "][" + actionid + "]\" id=\"text_search_" + fileid + "_" + actionid + "\" class=\"classic width-500 php_editor\" rows=\"3\">"+prev_val_search+"</textarea>";
x += "</div>";
x += "</div>";
}
var lang="{$lang['plugins_at_l7']}";
if(value == 'before' ) {
lang="{$lang['plugins_at_l8']}";
} else if(value == 'after') {
lang="{$lang['plugins_at_l9']}";
} else if(value == 'create') {
lang="{$lang['plugins_at_l10']}";
}
x += "<div class=\"form-group\">";
x += "<label class=\"control-label col-sm-2\">"+lang+"</label>";
x += "<div class=\"col-sm-10\">";
x += "<textarea name=\"filereplace[" + fileid + "][" + actionid + "]\" id=\"text_replace_" + fileid + "_" + actionid + "\" class=\"classic width-500 php_editor\" rows=\"5\">"+prev_val_replace+"</textarea>";
x += "</div>";
x += "</div>";
if(value != 'replaceall' && value !='create') {
x += "<div class=\"form-group\">";
x += "<label class=\"control-label col-sm-2\">{$lang['plugins_at_l11']}</label>";
x += "<div class=\"col-sm-10\">";
x += "<input type=\"text\" name=\"filefindcount[" + fileid + "][" + actionid + "]\" id=\"find_count_" + fileid + "_" + actionid + "\" class=\"form-control\" maxlength=\"3\" style=\"width:3.438rem;\"><i class=\"help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left\" data-rel=\"popover\" data-trigger=\"hover\" data-placement=\"right\" data-content=\"{$lang['plugins_at_hint']}\"></i>";
x += "</div>";
x += "</div>";
x += "<div class=\"form-group\">";
x += "<label class=\"control-label col-sm-2\">{$lang['plugins_at_l12']}</label>";
x += "<div class=\"col-sm-10\">";
x += "<input type=\"text\" name=\"filereplacecount[" + fileid + "][" + actionid + "]\" id=\"replace_count_" + fileid + "_" + actionid + "\" class=\"form-control\" maxlength=\"3\" style=\"width:3.438rem;\"><i class=\"help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left\" data-rel=\"popover\" data-trigger=\"hover\" data-placement=\"right\" data-content=\"{$lang['plugins_rep_hint']}\"></i>";
x += "</div>";
x += "</div>";
}
x += "<div class=\"form-group\">";
x += "<label class=\"control-label col-sm-2\">{$lang['plugins_dlever']}</label>";
x += "<div class=\"col-sm-10\">";
x += "<input type=\"text\" class=\"form-control position-left\" name=\"filedleversion[" + fileid + "][" + actionid + "]\" value=\"\" style=\"width:100px;\">";
x += "<select class=\"uniform\" name=\"fileversioncompare[" + fileid + "][" + actionid + "]\" style=\"min-width:100px;\">";
x += "<option value=\"==\">{$lang['plugins_vc_1']}</option>";
x += "<option value=\">=\">{$lang['plugins_vc_2']}</option>";
x += "<option value=\"<=\">{$lang['plugins_vc_3']}</option>";
x += "</select>";
x += "</div>";
x += "</div>";
$("#searchs_" + actionid ).html(x);
$("#text_search_" + fileid + "_" + actionid ).val(prev_val_search);
$("#text_replace_" + fileid + "_" + actionid ).val(prev_val_replace);
$("#find_count_" + fileid + "_" + actionid ).val(prev_val_find_count);
$("#replace_count_" + fileid + "_" + actionid ).val(prev_val_replace_count);
$("#searchs_" + actionid ).find(".php_editor").each(function() {
var editor = CodeMirror.fromTextArea( this, {
mode: "text/x-php",
dragDrop: false,
autoRefresh: true,
viewportMargin: Infinity
});
function updateTextArea() {
editor.save();
}
editor.on('change', updateTextArea);
});
$("#actionset_" + actionid ).find("[data-rel=popover]").popover();
$("#actionset_" + actionid ).find("select.uniform").selectpicker();
}
//-->
</script>
HTML;
echofooter();
} elseif($_REQUEST['action'] == "errors") {
$errors = "";
$db->query( "SELECT id, name FROM " . PREFIX . "_plugins" );
while ( $row = $db->get_row() ) {
$plugins_name[$row['id']] = $row['name'];
}
if($id) $db->query( "SELECT * FROM " . PREFIX . "_plugins_logs WHERE plugin_id = '{$id}'" );
else $db->query( "SELECT * FROM " . PREFIX . "_plugins_logs" );
while ( $row = $db->get_row() ) {
if( $row['plugin_id'] AND $row['type'] == "mysql") {
$area = $lang['upgr_db_query'];
$row['area'] = "<pre><code>".$row['area']."</code></pre>";
} elseif( $row['plugin_id'] AND $row['type'] == "file" ) {
$area = $lang['plugins_filename'];
$row['error'] = $lang['plugins_errors_4']."<pre><code>".$row['error']."</code></pre>";
} elseif( $row['plugin_id'] AND $row['type'] == "upload" ) {
$area = $lang['plugins_filename'];
$row['error'] = "<pre><code>".$row['error']."</code></pre>";
} else {
$plugins_name[0] = $lang['plugins_errors_5'];
$area = "";
}
$errors .= "<div class=\"quote\"><b>{$lang['plugins_name']}</b> {$plugins_name[$row['plugin_id']]}<div class=\"mt-10\"><b>{$area}</b> {$row['area']}</div><div class=\"mt-10\"><b>{$lang['upgr_db_errt']}</b> {$row['error']}</div></div>";
}
if(!$errors) msg( "success", $lang['all_info'], $lang['plugins_errors_3'], "javascript:history.go(-1)" );
$js_array[] = "engine/classes/highlight/highlight.code.js";
echoheader( "<i class=\"fa fa-puzzle-piece position-left\"></i><span class=\"text-semibold\">{$lang['opt_plugins']}</span>", array('?mod=plugins' => $lang['plugins_list'], '' => $lang['plugins_bread_2'] ) );
$errors = "<div class=\"panel-body\"><div class=\"text-size-small\">".$errors."</div></div>";
echo <<<HTML
<div class="panel panel-default">
<div class="panel-heading">
{$lang['plugins_bread_2']}
</div>
{$errors}
<div class="panel-footer">
<a href="?mod=plugins" class="btn bg-teal btn-sm btn-raised position-left"><i class="fa fa-forward position-left"></i>{$lang['upgr_next']}</a>
<a href="?mod=plugins&action=clearerrors&user_hash={$dle_login_hash}&id={$id}" class="btn bg-brown-600 btn-sm btn-raised position-left"><i class="fa fa-trash position-left"></i>{$lang['plugins_errors_2']}</a>
</div>
</div>
HTML;
echofooter();
} else {
$parse = new ParseFilter();
$js_array[] = "engine/classes/highlight/highlight.code.js";
echoheader( "<i class=\"fa fa-puzzle-piece position-left\"></i><span class=\"text-semibold\">{$lang['opt_plugins']}</span>", $lang['plugins_list']);
$plugins_errors = array();
$db->query( "SELECT plugin_id, COUNT(id) AS count FROM " . PREFIX . "_plugins_logs GROUP BY plugin_id" );
while ( $row = $db->get_row() ) {
$plugins_errors[$row['plugin_id']] = $row['count'];
}
if( count($plugins_errors) ) {
$error_button = "<button type=\"button\" onclick=\"document.location='?mod=plugins&action=errors'\" class=\"btn bg-brown-600 btn-sm btn-raised position-left\"><i class=\"fa fa-exclamation-triangle position-left\"></i>{$lang['plugins_errors_1']}</button>";
} else $error_button = "";
if ( isset($_REQUEST['searchword']) AND $_REQUEST['searchword'] ) {
$searchword = $db->safesql($_REQUEST['searchword']);
$ids = array();
$db->query( "SELECT id FROM " . PREFIX . "_plugins WHERE name like '%{$searchword}%' OR description like '%{$searchword}%' OR mysqlinstall like '%{$searchword}%' OR mysqlupgrade like '%{$searchword}%' OR mysqlenable like '%{$searchword}%' OR mysqldisable like '%{$searchword}%' OR mysqldelete like '%{$searchword}%' OR phpinstall like '%{$searchword}%' OR phpupgrade like '%{$searchword}%' OR phpenable like '%{$searchword}%' OR phpdisable like '%{$searchword}%' OR phpdelete like '%{$searchword}%' OR notice like '%{$searchword}%'");
while ( $found_id = $db->get_row() ) {
$ids[] = $found_id['id'];
}
$db->query( "SELECT plugin_id FROM " . PREFIX . "_plugins_files WHERE file like '%{$searchword}%' OR searchcode like '%{$searchword}%' OR replacecode like '%{$searchword}%'");
while ( $found_id = $db->get_row() ) {
$ids[] = $found_id['plugin_id'];
}
if( !count($ids) ) $ids[] = 0;
$ids = implode( ',', $ids );
$db->query( "SELECT * FROM " . PREFIX . "_plugins WHERE id IN({$ids}) ORDER BY posi ASC, id DESC" );
} else $db->query( "SELECT * FROM " . PREFIX . "_plugins ORDER BY posi ASC, id DESC" );
$entries = "";
$i=0;
while ( $row = $db->get_row() ) {
if(!$i) $border = "no-border-top "; else $border = "";
if ( !$row['icon'] OR !@file_exists( $row['icon'] )) $row['icon'] = "engine/skins/images/default_icon.png";
if( $row['version'] ) $row['version'] = " v.<span id=\"version{$row['id']}\">". $row['version']."</span>";
if( $row['mnotice'] AND $row['notice']) {
$row['notice'] = $parse->BB_Parse($parse->process($row['notice']), false);
$row['notice'] = "<div class=\"alert alert-info p-5\" style=\"max-height:200px;overflow:auto;cursor:auto;display: grid;\">".stripslashes($row['notice'])."</div>";
} else $row['notice'] = "";
if( $row['active'] ) {
$status = "<span title=\"{$lang['plugins_on_1']}\" class=\"text-success position-left position-right tip\"><b><i class=\"fa fa-check-circle\"></i></b></span>";
$lang['led_active'] = $lang['plugins_off'];
$led_action = "off";
} else {
$status = "<span title=\"{$lang['plugins_off_1']}\" class=\"text-danger position-left position-right tip\"><b><i class=\"fa fa-exclamation-circle\"></i></b></span>";
$lang['led_active'] = $lang['plugins_on'];
$led_action = "on";
}
if (isset($plugins_errors[$row['id']] ) AND $plugins_errors[$row['id']]) {
$plugin_error = "<span class=\"label label-danger\">{$lang['plugins_errors']}</span>";
$menu_error ="<li><a href=\"?mod=plugins&action=errors&id={$row['id']}\"><i class=\"fa fa-exclamation-triangle\"></i> {$lang['plugins_errors_1']}</a></li>";
} else { $plugin_error = ""; $menu_error =""; }
$menu_link = <<<HTML
<div class="btn-group">
<a href="#" class="dropdown-toggle nocolor" data-toggle="dropdown" aria-expanded="true"><i class="fa fa-bars"></i><span class="caret"></span></a>
<ul class="dropdown-menu dropdown-menu-right">
{$menu_error}
<li><a href="?mod=plugins&user_hash={$dle_login_hash}&action={$led_action}&id={$row['id']}"><i class="fa fa-eye"></i> {$lang['led_active']}</a></li>
<li><a href="?mod=plugins&user_hash={$dle_login_hash}&action=download&id={$row['id']}"><i class="fa fa-download"></i> {$lang['plugins_download']}</a></li>
<li class="divider"></li>
<li><a onclick="CheckUpdate('{$row['id']}'); return false;" href="#"><i class="fa fa-search"></i> {$lang['plugins_upgr_c']}</a></li>
<li><a onclick="PluginUpdate('{$row['id']}'); return false;" href="#"><i class="fa fa-upload"></i> {$lang['plugins_update']}</a></li>
<li class="divider"></li>
<li><a onclick="confirmdelete('{$row['id']}'); return false;" href="#"><i class="fa fa-trash-o text-danger"></i> {$lang['cat_del']}</a></li>
</ul>
</div>
HTML;
$entries .= "
<tr class=\"dd-item\" data-id=\"{$row['id']}\">
<td class=\"{$border}dd-handles\"></td>
<td class=\"{$border}cursor-pointer\" onclick=\"document.location = '?mod=plugins&action=edit&id={$row['id']}'; return false;\"><div class=\"media-list\"><div class=\"media-left\"><img src=\"{$row['icon']}\" class=\"img-lg section_icon\"></div><div class=\"media-body\"><h6 class=\"media-heading text-semibold\">{$row['name']}{$row['version']}{$status}{$plugin_error}</h6><span class=\"text-muted text-size-small\">{$row['description']}</span><span id=\"upgrade{$row['id']}\" class=\"label label-success position-right text-size-small\"></span>{$row['notice']}</div></div></td>
<td class=\"{$border}text-center\" style=\"width: 4.375rem\">{$menu_link}</td>
</tr>";
$i++;
}
if( !$entries ) {
if ( isset($_REQUEST['searchword']) AND $_REQUEST['searchword'] ) {
$entries = "<tr><td class=\"no-border-top\"><div align=\"center\"><br><br>{$lang['plugins_not_found_2']}<br><br><br></div></td></tr>";
} else $entries = "<tr><td class=\"no-border-top\"><div align=\"center\"><br><br>{$lang['plugins_not_found']}<br><br><br></div></td></tr>";
} else {
$entries = "<tbody class=\"dd-list\">".$entries."</tbody>";
}
if( !$config['allow_plugins'] ) {
$alert = "<div class=\"alert alert-warning alert-styled-left alert-arrow-left alert-component\">{$lang['module_disabled']}</div>";
} elseif( !PLUGINS_READ_ONLY AND !defined('DEMOVERSION') ) {
$alert = "<div class=\"alert alert-warning alert-styled-left alert-arrow-left alert-component\">{$lang['stat_secfault_5']}</div>";
} else $alert = "";
if( !$lic_tr AND defined('DEMOVERSION') ) {
$alert .= "<div class=\"alert alert-warning alert-styled-left alert-arrow-left alert-component\">{$lang['upgr_demo']}</div>";
} elseif( defined('DEMOVERSION') ) {
$alert .= "<div class=\"alert alert-warning alert-styled-left alert-arrow-left alert-component\">{$lang['upgr_demo_1']}</div>";
}
$root = ROOT_DIR;
if (isset($_REQUEST['searchword']) AND $_REQUEST['searchword']) {
$searchword = htmlspecialchars( $_REQUEST['searchword'], ENT_QUOTES, $config['charset'] );
} else $searchword = "";
echo <<<HTML
<form action="?mod=plugins" method="post" name="optionsbar" id="optionsbar">
<input type="hidden" name="mod" value="plugins">
<div class="panel panel-default">
<div class="panel-heading">
{$lang['plugins_list']}
<div class="heading-elements">
<div class="form-group has-feedback" style="width:250px;">
<input dir="auto" name="searchword" type="search" class="form-control" placeholder="{$lang['search_field']}" value="{$searchword}">
<div class="form-control-feedback">
<a href="#" onclick="$(this).closest('form').submit();"><i class="fa fa-search text-size-base text-muted"></i></a>
</div>
</div>
</div>
</div>
<div class="dd" id="nestable">
<table class="table table-xs table-hover">
{$entries}
</table>
</div>
<div class="panel-footer">
<button type="button" onclick="document.location='?mod=plugins&action=add'" class="btn bg-teal btn-sm btn-raised position-left"><i class="fa fa-plus position-left"></i>{$lang['plugins_b_add']}</button>
<button type="button" onclick="PluginUpload(); return false;" class="btn bg-slate-600 btn-sm btn-raised position-left"><i class="fa fa-upload position-left"></i>{$lang['plugins_uploads']}</button>
{$error_button}
<button type="button" onclick="CheckUpdate(0); return false;" class="btn bg-primary-600 btn-sm btn-raised position-left"><i class="fa fa-search position-left"></i>{$lang['plugins_upgr_c']}</button>
</div>
</div>
</form>
{$alert}
<div class="modal fade" name="moduleupload" id="moduleupload">
<div class="modal-dialog modal-sm" role="document">
<div class="modal-content">
<form method="post" autocomplete="off" class="form-horizontal" id="pluginupload" enctype="multipart/form-data">
<input type="hidden" name="user_hash" value="{$dle_login_hash}" />
<input type="hidden" name="id" id="plugin_id" value="0">
<div class="modal-header ui-dialog-titlebar">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<span class="ui-dialog-title">{$lang['plugins_upload']}</span>
</div>
<div class="modal-body">
<div class="form-group">
<div class="col-sm-12">
<input type="file" name="pluginfile" accept="text/xml,application/zip" style="width:304px;" class="icheck">
</div>
</div>
</div>
<div class="modal-footer" style="margin-top:-20px;">
<button type="submit" class="btn bg-teal btn-sm btn-raised position-left"><i class="fa fa-upload position-left"></i>{$lang['plugins_uploads']}</button>
<button type="button" class="btn bg-slate-600 btn-sm btn-raised" data-dismiss="modal">{$lang['p_cancel']}</button>
</div>
</form>
</div>
</div>
</div>
<div class="modal fade" name="needftp" id="needftp">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<form method="post" autocomplete="off" class="form-horizontal" id="ftpserver">
<input type="hidden" name="action" value="checkftp">
<input type="hidden" name="user_hash" value="{$dle_login_hash}" />
<div class="modal-header ui-dialog-titlebar">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<span class="ui-dialog-title">{$lang['plugins_upload']}</span>
</div>
<div class="modal-body">
<div class="form-group">
<label class="control-label col-sm-3">{$lang['upgr_ftp_2']}</label>
<div class="col-sm-9">
<label class="radio-inline position-left"><input class="icheck" type="radio" name="ftp[type]" value="ftp" checked>FTP</label>
<label class="radio-inline position-left"><input class="icheck" type="radio" name="ftp[type]" value="sslftp">SSL FTP</label>
<label class="radio-inline position-left"><input class="icheck" type="radio" name="ftp[type]" value="ssh2">SFTP SSH2</label>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3">{$lang['upgr_ftp_3']}</label>
<div class="col-sm-9">
<input type="text" class="form-control width-300 position-left" name="ftp[server]">
<span class="position-left">{$lang['upgr_ftp_4']}</span>
<input type="text" class="form-control position-left" name="ftp[port]" style="width:45px" value="21">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3">{$lang['upgr_ftp_5']}</label>
<div class="col-sm-9">
<input type="text" class="form-control width-350 position-left" name="ftp[username]">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3">{$lang['upgr_ftp_6']}</label>
<div class="col-sm-9">
<input type="text" class="form-control width-350 position-left" name="ftp[password]">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-3">{$lang['upgr_ftp_7']}</label>
<div class="col-sm-9">
<input type="text" class="form-control width-450 position-left" name="ftp[path]" value="{$root}">
</div>
</div>
<div class="text-muted text-size-small">{$lang['upgr_ftp_15']}</div>
</div>
<div class="modal-footer" style="margin-top:-20px;">
<button id="checkftpbutton" type="submit" class="btn bg-teal btn-sm btn-raised position-left"><i class="fa fa-forward position-left"></i>{$lang['upgr_next']}</button>
<button type="button" class="btn bg-slate-600 btn-sm btn-raised" data-dismiss="modal">{$lang['p_cancel']}</button>
</div>
</form>
</div>
</div>
</div>
<script>
<!--
function confirmdelete(id){
DLEconfirm( '{$lang['plugins_del']}', '{$lang['p_confirm']}', function () {
document.location="?mod=plugins&action=delete&user_hash={$dle_login_hash}&id="+id;
} );
}
function PluginUpload(){
$('#plugin_id').val('0');
$('#moduleupload').modal();
}
function PluginUpdate(id){
$('#plugin_id').val(id);
$('#moduleupload').modal();
}
function PluginUpdateFromURL(id, url, version){
ShowLoading('');
$.ajax({
url: "engine/ajax/controller.php?mod=plugins",
data: { id: id, url: url, user_hash: "{$dle_login_hash}", action: "updatefromurl" },
type: 'POST',
dataType: 'json',
success: function(data) {
HideLoading('');
if (data) {
if (data.status == "error") {
DLEalert(data.text, '{$lang['p_info']}');
} else if (data.status == "needftp") {
$('#needftp').modal();
} else if (data.status == "succes") {
if(version) {
$("#upgrade"+id).html('');
$("#version"+id).text(version);
} else {
setTimeout("window.location = '?mod=plugins'", 300 );
}
}
}
},
error: function(data) {
HideLoading('');
DLEalert(data.responseText, '{$lang['p_info']}');
}
});
}
function CheckUpdate(id){
ShowLoading('');
$.ajax({
url: "engine/ajax/controller.php?mod=plugins",
data: { id: id, user_hash: "{$dle_login_hash}", action: "checkupdate" },
type: 'POST',
dataType: 'json',
success: function(data) {
HideLoading('');
if (data) {
if (data.status == "error") {
DLEalert(data.text, '{$lang['p_info']}');
} else if (data.status == "succes") {
if(id) {
DLEconfirm( '{$lang['plugins_upgr_s1']} '+data.version+'<br><br>{$lang['plugins_upgr_s2']}', '{$lang['p_info']}', function () {
PluginUpdateFromURL(id, data.url, false)
} );
} else {
$.each( data.versions, function( i, val ) {
$("#upgrade"+val.id).html('{$lang['plugins_upgr_s1']} '+val.version+' <a class="text-danger" onclick="event.stopPropagation(); PluginUpdateFromURL(\''+val.id+'\', \''+val.url+'\', \''+val.version+'\'); return false;" href="#">{$lang['plugins_upgr_s3']}</a>');
});
}
}
}
},
error: function(data) {
HideLoading('');
DLEalert(data.responseText, '{$lang['p_info']}');
}
});
}
$('#pluginupload').submit(function() {
var formData = new FormData($('#pluginupload')[0]);
$('#moduleupload').modal('hide');
$("#pluginupload")[0].reset();
$(".filename").html('{$lang['file_def_1']}');
ShowLoading('');
$.ajax({
url: "engine/ajax/controller.php?mod=plugins",
data: formData,
processData: false,
contentType: false,
type: 'POST',
dataType: 'json',
success: function(data) {
HideLoading('');
if (data) {
if (data.status == "error") {
DLEalert(data.text, '{$lang['p_info']}');
} else if (data.status == "needftp") {
$('#needftp').modal();
} else if (data.status == "succes") {
setTimeout("window.location = '?mod=plugins'", 300 );
}
}
},
error: function(data) {
HideLoading('');
DLEalert(data.responseText, '{$lang['p_info']}');
}
});
return false;
});
$('#ftpserver').submit(function() {
var formData = new FormData($('#ftpserver')[0]);
ShowLoading('');
$('#checkftpbutton').attr("disabled", "disabled");
$.ajax({
url: "engine/ajax/controller.php?mod=plugins",
data: formData,
processData: false,
contentType: false,
type: 'POST',
dataType: 'json',
success: function(data) {
HideLoading('');
$('#checkftpbutton').attr("disabled", false);
if (data.status == "succes") {
setTimeout("window.location = '?mod=plugins'", 300 );
} else if (data.status == "error") {
DLEalert(data.text, '{$lang['all_info']}');
}
},
error: function(data) {
HideLoading('');
$('#checkftpbutton').attr("disabled", false);
DLEalert(data.responseText, '{$lang['p_info']}');
}
});
return false;
});
jQuery(function($){
$('.dd').nestable({
listNodeName: 'tbody',
itemNodeName: 'tr.dd-item',
handleClass: 'dd-handles',
emptyClass: 'dd-emptys',
placeClass: 'dd-placeholders',
placeElementDefault: '<tr class="dd-placeholders"><td> </td><td> </td><td> </td></tr>',
maxDepth: 1
});
$('#nestable').nestable().on('change',function(){
var url = "action=pluginsort&user_hash={$dle_login_hash}&list="+window.JSON.stringify($(this).nestable('serialize'));
ShowLoading('');
$.post('engine/ajax/controller.php?mod=adminfunction', url, function(data){
HideLoading('');
if (data != 'ok') {
DLEalert('{$lang['cat_sort_fail']}', '{$lang['p_info']}');
}
});
});
$(".alert-info").click(function(e){
e.stopPropagation();
});
});
</script>
HTML;
echofooter();
}
?>
Did this file decode correctly?
Original Code
$_F=__FILE__;$_X='P2s8Py5zLkRxKkRVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVURSNkk5SX0vQ0VSYjNsLzNFUi1SMHBSUG5DOUdFXWdSekVhL0lSClpudC5SRC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tRFJzOTkuZzpxcWE4RS0zRV1nZlp0cUQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLURSMW4ucFovbHM5Uih5KVJjd3dyLWN3Y1NSUG5DOUdFXWdSekVhL0lSClpudC5EVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVEUjVzL2dSeW5hRVIvZ1IuWm45RXk5RWFSMHBSeW4ucFovbHM5RFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRFI9LzhFOlIuOHRsLzNnZi5zLkQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLURSZWdFOlJoOHRsLzNnUnpJM0lsRVpEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVEKnFERC9DKFIhYUVDLzNFYShSJzZGNUZ9Pj1iYkcKPkdiJ1IpUlR2UiFhRUMvM0VhKFInfVQKCmI2Xz5HJ1IpUilSQkQJc0VJYUVaKFIiezU1aHFZZllScndTUj1uWjAvYWFFMyJSKTtECXNFSWFFWlIoUid9bnlJOS9uMzpSZmZxZmZxJ1IpO0QJYS9FKFIie0l5aS8zbFJJOTlFVi45ISJSKTtEN0REL0MoJFZFVjBFWl8vYXgndGdFWl9sWm50LidBUiFVUlkpQlJWZ2woIkVaWm5aIixSJDhJM2x4J0lhYTNFXWdfYUUzL0VhJ0EsUiQ4STNseCdhMF9hRTMvRWEnQSk7UjdERC9DKFIvZ2dFOShSJF92YkplYlA1eCcvYSdBUilSKVIkL2FSVVIvMzkgSTgoUiRfdmJKZWJQNXgnL2EnQVIpO1JFOGdFUiQvYVJVUnc7RERDdDN5OS9uM1JWSWlFNlpuLjZuXTMoJG4uOS9uM2csUiQzSVZFLFIkZ0U4RXk5RWEpUkJECWw4bjBJOFIkeW4zQy9sO0RECSRudDkudDlSVVIiPGdFOEV5OVJ5OElnZ1VcInQzL0NuWlZcIlIzSVZFVVwiQiQzSVZFN1wiUmc5cDhFVVwiVi8zLV0vYTlzOll3dy40O1wia1xaXDMiO0QJQ25aRUl5c1IoUiRuLjkvbjNnUklnUiQgSTh0RVJVa1IkYUVneVovLjkvbjNSKVJCRAkJJG50OS50OVJmVVIiPG4uOS9uM1IgSTh0RVVcIiJmczlWOGcuRXkvSTh5c0laZyhSJCBJOHRFLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKWYiXCIiO0RECQkvQyhSJGdFOEV5OUVhUlVVVVIkIEk4dEVSKVJCRAkJCSRudDkudDlSZlVSIlJnRThFeTlFYVIiO0QJCTdECQlECQkkbnQ5LnQ5UmZVUiJrQiRhRWd5Wi8uOS9uMzc8cW4uOS9uM2tcMyI7RAk3RAkkbnQ5LnQ5UmZVUiI8cWdFOEV5OWsiO0QJWkU5dFozUiRudDkudDk7RDdERC9DKFIkXwpiNXgnSXk5L24zJ0FSVVVSIm4zIlJUdlIkXwpiNXgnSXk5L24zJ0FSVVVSIm5DQyJSKVJCRAlECS9DKFIhL2dnRTkoJF92YkplYlA1eCd0Z0VaX3NJZ3MnQSlSVHZSISRfdmJKZWJQNXgndGdFWl9zSWdzJ0FSVHZSJF92YkplYlA1eCd0Z0VaX3NJZ3MnQVIhVVIkYThFXzhubC8zX3NJZ3NSKVJCRAkJRAkJYS9FKFIie0l5aS8zbFJJOTlFVi45IVJlZ0VaUjNuOVJDbnQzYSJSKTtECUQJN0QJRAkvQyhSISR5bjNDL2x4J0k4OG5dXy44dGwvM2cnQVIpUkJECQlWZ2woUiJFWlpuWiIsUiQ4STNseCdJYWEzRV1nX0VaWm5aJ0EsUiQ4STNseCdWbmF0OEVfYS9nSTA4RWEnQSxSIj9WbmFVLjh0bC8zZyJSKTtECTdSRThnRS9DKFJofWUKPkdQX3ZiRjZfVEd9TFIpUkJECQlWZ2woUiJFWlpuWiIsUiQ4STNseCdJYWEzRV1nX0VaWm5aJ0EsUiQ4STNseCcuOHRsLzNnX0VaWm5aZ19PJ0EsUiI/Vm5hVS44dGwvM2ciUik7RAk3REQJL0MoUiF5c0V5aV9aRUNFWkVaKCRfUGJ2WGJ2eCdoe2hfUGJ9PSdBZiI/Vm5hVS44dGwvM2ciKVIpUkJECQlWZ2woUiJFWlpuWiIsUiQ4STNseCcvM2FFNF9hRTMvRWEnQSxSJDhJM2x4JzNuX1pFQ0VaRVonQSxSImpJIElneVovLjk6cy9nOW5acGZsbigtWSkiUik7RAk3RAlECSRabl1SVVIkYTAta2d0LkVaX1t0RVpwKFIiUGJ9YjE1Ui9hLFJhOEUgRVpnL24zLFIgRVpnL24zeW5WLklaRSxSVnBnWzhFM0kwOEUsUlZwZ1s4YS9nSTA4RSxSM0VFYS44dGwvMyxSLnMuRTNJMDhFLFIucy5hL2dJMDhFUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIvYVUnQiQvYTcnIlIpO0QJRAkvQ1IoISRabl14Jy9hJ0EpUlZnbChSIkVaWm5aIixSIj42UjNuOVIgSTgvYSIsUiI+NlIzbjlSIEk4L2EiUik7RAlECS9DKFIkXwpiNXgnSXk5L24zJ0FSVVVSIm4zIlIpUkJECQlECQkkSXk5LyBFUlVSWTtECQlECQkvQyhSJFpuXXgnYThFIEVaZy9uMydBUkZHNlIkWm5deCcgRVpnL24zeW5WLklaRSdBUilSQkQJCQkvQyhSISBFWmcvbjNfeW5WLklaRSgkeW4zQy9seCcgRVpnL24zXy9hJ0EsUiRabl14J2E4RSBFWmcvbjMnQSxSJFpuXXgnIEVaZy9uM3luVi5JWkUnQSlSKVJCRAkJCQlECQkJCSRabl14JyBFWmcvbjN5blYuSVpFJ0FSVVJnOVpfWkUuOEl5RShJWlpJcCgiVVUiLFIia1UiLFIiPFUiKSxSSVpaSXAoJDhJM2x4Jy44dGwvM2dfIHlfWSdBLFIkOEkzbHgnLjh0bC8zZ18geV9jJ0EsUiQ4STNseCcuOHRsLzNnXyB5X1MnQSksUiRabl14JyBFWmcvbjN5blYuSVpFJ0EpO0QJCQkJJDhJM2x4Jy44dGwvM2dfM0VaWm5aX2MnQVJVUmc5Wl9aRS44SXlFKElaWklwKCJCIEVaZy9uMzciLFIiQiBFWmcvbjN5blYuSVpFNyIsUiJCYThFIEVaZy9uMzciKSxSSVpaSXAoJFpuXXgnYThFIEVaZy9uMydBLCRabl14JyBFWmcvbjN5blYuSVpFJ0EsJHluM0MvbHgnIEVaZy9uM18vYSdBKSxSJDhJM2x4Jy44dGwvM2dfM0VaWm5aX2MnQSk7RAkJCQlECQkJCVZnbChSIkVaWm5aIixSJDhJM2x4J0lhYTNFXWdfRVpablonQSxSJDhJM2x4Jy44dGwvM2dfM0VaWm5aX2MnQSxSImpJIElneVovLjk6cy9nOW5acGZsbigtWSkiUik7RAkJCTdECQk3RAkJRAkJL0NSKCRabl14JzNFRWEuOHRsLzMnQSlSQkRECQkJJDNFRWEuOHRsLzNnUlVSRTQuOG5hRSgnLCcsUiRabl14JzNFRWEuOHRsLzMnQSk7RAkJCSQzRUVhXy44dGwvM19FWlpuWmdSVVInJztERAkJCUNuWkVJeXNSKCQzRUVhLjh0bC8zZ1JJZ1IkQy44dGwvMylSQkQJCQkJJEMuOHRsLzNSVVIkYTAta2dJQ0VnWzgoUjlaL1YoJEMuOHRsLzMpUik7RAkJCQkkQy8zYV8zRUVhUlVSJGEwLWtndC5FWl9bdEVacCgiUGJ9YjE1Ui9hUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIzSVZFVSdCJEMuOHRsLzM3J1JGRzZSL2EhVSdCJC9hNyciKTtERAkJCQkvQ1IoIS9nZ0U5KCRDLzNhXzNFRWF4Jy9hJ0EpKVJCRAkJCQkJJDNFRWFfLjh0bC8zX0VaWm5aZ1JmVVInPC5rJ1JmUmc5Wl9aRS44SXlFKCJCLjh0bC8zNyIsUiRDLjh0bC8zLFIkOEkzbHgnLjh0bC8zZ18zRVpablpfUydBKVJmUic8cS5rJztECQkJCTdECQkJN0RECQkJL0NSKCQzRUVhXy44dGwvM19FWlpuWmcpUkJECQkJCVZnbCgiRVpabloiLFIkOEkzbHgnSWFhM0VdZ19FWlpuWidBLFIkM0VFYV8uOHRsLzNfRVpablpnLFIiakkgSWd5Wi8uOTpzL2c5blpwZmxuKC1ZKSIpO0QJCQk3RAkJCUQJCTdECQlECQkvQyhSJFpuXXgnVnBnWzhFM0kwOEUnQVIpUkJECQkJRTRFeXQ5RV9bdEVacCgkL2EsUiRabl14J1ZwZ1s4RTNJMDhFJ0EpOwlECQk3RAkJRAkJL0MoJFpuXXgnLnMuRTNJMDhFJ0EpUkJECQkJRSBJOCgkWm5deCcucy5FM0kwOEUnQSk7RAkJN0QJCUQJN1JFOGdFUkJECQlECQkkSXk5LyBFUlVSdztECQlECQkvQyhSJFpuXXgnVnBnWzhhL2dJMDhFJ0FSKVJCRAkJCUU0RXl0OUVfW3RFWnAoJC9hLFIkWm5deCdWcGdbOGEvZ0kwOEUnQSk7RAkJN0QJCUQJCS9DKFIkWm5deCcucy5hL2dJMDhFJ0FSKVJCRAkJCUUgSTgoJFpuXXgnLnMuYS9nSTA4RSdBKTtECQk3RAk3RAlECSRhMC1rW3RFWnAoUiJlaDZGNWJSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JQYjVSSXk5LyBFVSdCJEl5OS8gRTcnUkh7YnZiUi9hVSdCJC9hNyciUik7RAkkYTAta1t0RVpwKFIiZWg2RjViUiJSZlJodmI9PnVSZlIiXy44dGwvM2dfQy84RWdSUGI1Ukl5OS8gRVUnQiRJeTkvIEU3J1JIe2J2YlIuOHRsLzNfL2FVJ0IkL2E3JyJSKTtECSRhMC1rW3RFWnAoUiI+R1BidjVSPkc1VFIiUmZSZVBidmh2Yj0+dVJmUiJfSWFWLzNfOG5sZ1IoM0lWRSxSYUk5RSxSLy4sUkl5OS9uMyxSRTQ5WklnKVIgSTh0RWdSKCciZiRhMC1rZ0lDRWdbOCgkVkVWMEVaXy9heCczSVZFJ0EpZiInLFInQiRfNT56YjcnLFInQiRfPmg3JyxSJ1lZckIkSXk5LyBFNycsUidCJC9hNycpIlIpO0RECXk4RUlaX0k4OF95SXlzRWcoKTtECUQJc0VJYUVaKFIifW55STkvbjM6Uj9WbmFVLjh0bC8zZyJSKTtECWEvRSgpO0Q3REQvQyhSJF8KYjV4J0l5OS9uMydBUlVVUiJ5OEVJWkVaWm5aZyJSKVJCRAlECS9DKFIhL2dnRTkoJF92YkplYlA1eCd0Z0VaX3NJZ3MnQSlSVHZSISRfdmJKZWJQNXgndGdFWl9zSWdzJ0FSVHZSJF92YkplYlA1eCd0Z0VaX3NJZ3MnQVIhVVIkYThFXzhubC8zX3NJZ3NSKVJCRAkJRAkJYS9FKFIie0l5aS8zbFJJOTlFVi45IVJlZ0VaUjNuOVJDbnQzYSJSKTtECUQJN0QJRAkvQyhSISR5bjNDL2x4J0k4OG5dXy44dGwvM2cnQVIpUkJECQlWZ2woUiJFWlpuWiIsUiQ4STNseCdJYWEzRV1nX0VaWm5aJ0EsUiQ4STNseCdWbmF0OEVfYS9nSTA4RWEnQSxSIj9WbmFVLjh0bC8zZyJSKTtECTdSRThnRS9DKFJofWUKPkdQX3ZiRjZfVEd9TFIpUkJECQlWZ2woUiJFWlpuWiIsUiQ4STNseCdJYWEzRV1nX0VaWm5aJ0EsUiQ4STNseCcuOHRsLzNnX0VaWm5aZ19PJ0EsUiI/Vm5hVS44dGwvM2ciUik7RAk3RAlECS9DKCQvYSlSJGEwLWtbdEVacChSIjZifWI1YlI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dfOG5sZ1JIe2J2YlIuOHRsLzNfL2FSVVInQiQvYTcnIlIpO0QJRThnRVIkYTAta1t0RVpwKFIiNmJ9YjViUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ184bmxnIlIpO0RECXNFSWFFWihSIn1ueUk5L24zOlI/Vm5hVS44dGwvM2ciUik7RAlhL0UoKTtECUQ3REQvQyhSJF8KYjV4J0l5OS9uMydBUlVVUiJhRThFOUUiUilSQkQJRAkvQyhSIS9nZ0U5KCRfdmJKZWJQNXgndGdFWl9zSWdzJ0EpUlR2UiEkX3ZiSmViUDV4J3RnRVpfc0lncydBUlR2UiRfdmJKZWJQNXgndGdFWl9zSWdzJ0FSIVVSJGE4RV84bmwvM19zSWdzUilSQkQJCUQJCWEvRShSIntJeWkvM2xSSTk5RVYuOSFSZWdFWlIzbjlSQ250M2EiUik7RAlECTdECUQJL0MoUiF5c0V5aV9aRUNFWkVaKCRfUGJ2WGJ2eCdoe2hfUGJ9PSdBZiI/Vm5hVS44dGwvM2ciKVIpUkJECQlWZ2woUiJFWlpuWiIsUiQ4STNseCcvM2FFNF9hRTMvRWEnQSxSJDhJM2x4JzNuX1pFQ0VaRVonQSxSImpJIElneVovLjk6cy9nOW5acGZsbigtWSkiUik7RAk3RAlECS9DKFIhJHluM0MvbHgnSTg4bl1fLjh0bC8zZydBUilSQkQJCVZnbChSIkVaWm5aIixSJDhJM2x4J0lhYTNFXWdfRVpablonQSxSJDhJM2x4J1ZuYXQ4RV9hL2dJMDhFYSdBLFIiP1ZuYVUuOHRsLzNnIlIpO0QJN1JFOGdFL0MoUmh9ZQo+R1BfdmJGNl9UR31MUilSQkQJCVZnbChSIkVaWm5aIixSJDhJM2x4J0lhYTNFXWdfRVpablonQSxSJDhJM2x4Jy44dGwvM2dfRVpablpnX08nQSxSIj9WbmFVLjh0bC8zZyJSKTtECTdECUQJJFpuXVJVUiRhMC1rZ3QuRVpfW3RFWnAoUiJQYn1iMTVSL2EsUlZwZ1s4YUU4RTlFLFJDLzhFYUU4RTlFLFJDLzhFOC9nOSxSLnMuYUU4RTlFUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIvYVUnQiQvYTcnIlIpO0QJRAkvQ1IoISRabl14Jy9hJ0EpUlZnbChSIkVaWm5aIixSIj42UjNuOVIgSTgvYSIsUiI+NlIzbjlSIEk4L2EiUik7RAlECS9DKCRabl14J1ZwZ1s4YUU4RTlFJ0EpUkJECQlFNEV5dDlFX1t0RVpwKCQvYSxSJFpuXXgnVnBnWzhhRThFOUUnQSk7RAk3RAlECS9DKCRabl14J0MvOEVhRThFOUUnQVJGRzZSJFpuXXgnQy84RTgvZzknQSlSQkQJCSRDLzhFOC9nOVJVUkU0LjhuYUUoIiwiLFIkWm5deCdDLzhFOC9nOSdBKTtECQkvQyh5bnQzOSgkQy84RTgvZzkpKVJCRAkJCUNuWkVJeXMoJEMvOEU4L2c5UklnUiRDLzhFKUJECQkJCSRDLzhFUlVSOVovVigkQy84RSk7RAkJCQkvQygkQy84RSlSQHQzOC8zaShSdlRUNV82PnZmInEiZiRDLzhFUik7RAkJCTdECQk3RAk3RAlECSRhMC1rW3RFWnAoUiI2Yn1iNWJSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnUkh7YnZiUi9hVSdCJC9hNyciUik7RAkkYTAta1t0RVpwKFIiNmJ9YjViUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ19DLzhFZ1JIe2J2YlIuOHRsLzNfL2FVJ0IkL2E3JyJSKTtECSRhMC1rW3RFWnAoUiI2Yn1iNWJSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnXzhubGdSSHtidmJSLjh0bC8zXy9hUlVSJ0IkL2E3JyJSKTtERAkkYTAta1t0RVpwKFIiPkdQYnY1Uj5HNVRSIlJmUmVQYnZodmI9PnVSZlIiX0lhVi8zXzhubGdSKDNJVkUsUmFJOUUsUi8uLFJJeTkvbjMsUkU0OVpJZylSIEk4dEVnUignImYkYTAta2dJQ0VnWzgoJFZFVjBFWl8vYXgnM0lWRSdBKWYiJyxSJ0IkXzU+emI3JyxSJ0IkXz5oNycsUidZWTInLFInQiQvYTcnKSJSKTtERAl5OEVJWl9JODhfeUl5c0VnKCk7RAlECS9DKCRabl14Jy5zLmFFOEU5RSdBKVJCRAkJRAkJRSBJOCgkWm5deCcucy5hRThFOUUnQSk7RAkJRAk3RAlECXNFSWFFWihSIn1ueUk5L24zOlI/Vm5hVS44dGwvM2ciUik7RAlhL0UoKTtECUQ3REQvQyhSJF92YkplYlA1eCdJeTkvbjMnQVJVVVIiYW5dMzhuSWEiUilSQkQJRAkvQyhSIS9nZ0U5KCRfdmJKZWJQNXgndGdFWl9zSWdzJ0EpUlR2UiEkX3ZiSmViUDV4J3RnRVpfc0lncydBUlR2UiRfdmJKZWJQNXgndGdFWl9zSWdzJ0FSIVVSJGE4RV84bmwvM19zSWdzUilSQkQJCUQJCWEvRShSIntJeWkvM2xSSTk5RVYuOSEiUik7RAlECTdECUQJJFpuXVJVUiRhMC1rZ3QuRVpfW3RFWnAoUiJQYn1iMTVSKlI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dSSHtidmJSL2FVJ0IkL2E3JyJSKTtECUQJL0NSKCEkWm5deCcvYSdBKVJWZ2woUiJFWlpuWiIsUiI+NlIzbjlSIEk4L2EiLFIiPjZSM245UiBJOC9hIlIpOwlERAkvQygkWm5deCcgRVpnL24zeW5WLklaRSdBUlVVUiJrVSJSKVIkWm5deCcgRVpnL24zeW5WLklaRSdBUlVSJ2xaRUk5RVonO0QJRThnRS9DUigkWm5deCcgRVpnL24zeW5WLklaRSdBUlVVUiI8VSIpUiRabl14JyBFWmcvbjN5blYuSVpFJ0FSVVInOEVnZyc7RAlECSQuOHRsLzNfQ18zSVZFUlVSOW45WkkzZzgvOShzOVY4X0UzOS85cF9hRXluYUUoJFpuXXgnM0lWRSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0EpLFI5WnRFLFJDSThnRVIpO0QJJEMvOEVnUlVSSVpaSXAoKTtERAkkYTAta1t0RVpwKFIiUGJ9YjE1UipSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnX0MvOEVnUkh7YnZiUi44dGwvM18vYVUnQiQvYTcnUlR2NmJ2Um9MUi9hUkZQMSJSKTtECQlECV1zLzhFUihSJEMvOEVabl1SVVIkYTAta2xFOV9abl0oKVIpUkJECQlECQkvQygkQy84RVpuXXgnQy84RSBFWmcvbjN5blYuSVpFJ0FSVVVSImtVIlIpUiRDLzhFWm5deCdDLzhFIEVaZy9uM3luVi5JWkUnQVJVUidsWkVJOUVaJztECQlFOGdFL0NSKCRDLzhFWm5deCdDLzhFIEVaZy9uM3luVi5JWkUnQVJVVVIiPFUiKVIkQy84RVpuXXgnQy84RSBFWmcvbjN5blYuSVpFJ0FSVVInOEVnZyc7RAlECQkkQy84RVpuXXgnQy84RSdBUlVSczlWOGcuRXkvSTh5c0laZyhSJEMvOEVabl14J0MvOEUnQSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUik7RAkJJEMvOEVabl14J0MvOEVhOEUgRVpnL24zJ0FSVVJzOVY4Zy5FeS9JOHlzSVpnKFIkQy84RVpuXXgnQy84RWE4RSBFWmcvbjMnQSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUik7RAkJRAkJJEMvOEVneCRDLzhFWm5deCdDLzhFJ0FBeEFSVVJJWlpJcCgnSXk5L24zJ1JVa1IkQy84RVpuXXgnSXk5L24zJ0EsUidnRUlaeXN5bmFFJ1JVa1IkQy84RVpuXXgnZ0VJWnlzeW5hRSdBLFInWkUuOEl5RXluYUUnUlVrUiRDLzhFWm5deCdaRS44SXlFeW5hRSdBLFInZ0VJWnlzeW50MzknUlVrUi8zOSBJOCgkQy84RVpuXXgnZ0VJWnlzeW50MzknQSksUidaRS44SXlFeW50MzknUlVrUi8zOSBJOCgkQy84RVpuXXgnWkUuOEl5RXludDM5J0EpLFInQy84RWEvZ0kwOEUnUlVrUi8zOSBJOCgkQy84RVpuXXgnQy84RWEvZ0kwOEUnQSksUidDLzhFYThFIEVaZy9uMydSVWtSJEMvOEVabl14J0MvOEVhOEUgRVpnL24zJ0EsUidDLzhFIEVaZy9uM3luVi5JWkUnUlVrUiRDLzhFWm5deCdDLzhFIEVaZy9uM3luVi5JWkUnQVIpO0QJN0QJRAkkNFUnJztECUQJL0MoeW50MzkoJEMvOEVnKSlSQkQJCUQJCUNuWkVJeXMoUiRDLzhFZ1JJZ1IkaUVwUlVrUiQgSTh0RVIpUkJERAkJCSQ0UmZVUlIiXDNcOTxDLzhFUjNJVkVVXCIkaUVwXCJrIjtECQkJRAkJCUNuWkVJeXNSKCQgSTh0RVJJZ1IkIEk4dEVjKVJCRAkJCQkkNFJmVVJSIlwzXDlcOTxuLkVaSTkvbjNSSXk5L24zVVwiQiQgSTh0RWN4J0l5OS9uMydBN1wiayI7RAkJCQlECQkJCS9DKCQgSTh0RWN4J2dFSVp5c3luYUUnQSlSQkQJCQkJCSQ0UmZVUlIiXDNcOVw5XDk8Z0VJWnlzeW5hRWs8IXgxNkY1RnhCJCBJOHRFY3gnZ0VJWnlzeW5hRSdBN0FBazxxZ0VJWnlzeW5hRWsiO0QJCQkJN0QJCQkJRAkJCQkvQygkIEk4dEVjeCdaRS44SXlFeW5hRSdBKVJCRAkJCQkJJDRSZlVSUiJcM1w5XDlcOTxaRS44SXlFeW5hRWs8IXgxNkY1RnhCJCBJOHRFY3gnWkUuOEl5RXluYUUnQTdBQWs8cVpFLjhJeUV5bmFFayI7RAkJCQk3RAkJCQlECQkJCS9DKCQgSTh0RWN4J2dFSVp5c3ludDM5J0EpUkJECQkJCQkkNFJmVVJSIlwzXDlcOVw5PGdFSVp5c3ludDM5a0IkIEk4dEVjeCdnRUlaeXN5bnQzOSdBNzxxZ0VJWnlzeW50MzlrIjtECQkJCTdECQkJCUQJCQkJL0MoJCBJOHRFY3gnWkUuOEl5RXludDM5J0EpUkJECQkJCQkkNFJmVVJSIlwzXDlcOVw5PFpFLjhJeUV5bnQzOWtCJCBJOHRFY3gnWkUuOEl5RXludDM5J0E3PHFaRS44SXlFeW50MzlrIjtECQkJCTdECQkJCUQJCQkJRAkJCQkkNFJmVVJSIlwzXDlcOVw5PEUzSTA4RWFrQiQgSTh0RWN4J0MvOEVhL2dJMDhFJ0E3PHFFM0kwOEVhayI7RAkJCQlECQkJCS9DKCQgSTh0RWN4J0MvOEVhOEUgRVpnL24zJ0EpUkJECQkJCQkkNFJmVVJSIlwzXDlcOVw5PGE4RSBFWmcvbjNrQiQgSTh0RWN4J0MvOEVhOEUgRVpnL24zJ0E3PHFhOEUgRVpnL24zayI7RAkJCQkJJDRSZlVSUiJcM1w5XDlcOTwgRVpnL24zeW5WLklaRWtCJCBJOHRFY3gnQy84RSBFWmcvbjN5blYuSVpFJ0E3PHEgRVpnL24zeW5WLklaRWsiO0QJCQkJN0QJCQkJRAkJCQkkNFJmVVJSIlwzXDlcOTxxbi5FWkk5L24zayI7RAkJCTdECQkJRAkJCSQ0UmZVUiJcM1w5PHFDLzhFayI7RAkJN0QJN0QJRAkkLjh0bC8zX2FJOUlSVVI8PDx7NXp9RDw/NFY4UiBFWmcvbjNVIllmdyJSRTN5bmEvM2xVIkIkeW4zQy9seCd5c0laZ0U5J0E3Ij9rRDxhOEUuOHRsLzNrRAk8M0lWRWtCJFpuXXgnM0lWRSdBNzxxM0lWRWtECTxhRWd5Wi8uOS9uM2tCJFpuXXgnYUVneVovLjkvbjMnQTc8cWFFZ3laLy45L24za0QJPC95bjNrQiRabl14Jy95bjMnQTc8cS95bjNrRAk8IEVaZy9uM2tCJFpuXXgnIEVaZy9uMydBNzxxIEVaZy9uM2tECTxhOEUgRVpnL24za0IkWm5deCdhOEUgRVpnL24zJ0E3PHFhOEUgRVpnL24za0QJPCBFWmcvbjN5blYuSVpFa0IkWm5deCcgRVpnL24zeW5WLklaRSdBNzxxIEVaZy9uM3luVi5JWkVrRAk8dC5sWklhRXRaOGtCJFpuXXgndC5sWklhRXRaOCdBNzxxdC5sWklhRXRaOGtECTxDLzhFYUU4RTlFa0IkWm5deCdDLzhFYUU4RTlFJ0E3PHFDLzhFYUU4RTlFa0QJPDNFRWEuOHRsLzNrQiRabl14JzNFRWEuOHRsLzMnQTc8cTNFRWEuOHRsLzNrRAk8VjNuOS95RWtCJFpuXXgnVjNuOS95RSdBNzxxVjNuOS95RWtECTxWcGdbOC8zZzlJODhrPCF4MTZGNUZ4QiRabl14J1ZwZ1s4LzNnOUk4OCdBN0FBazxxVnBnWzgvM2c5STg4a0QJPFZwZ1s4dC5sWklhRWs8IXgxNkY1RnhCJFpuXXgnVnBnWzh0LmxaSWFFJ0E3QUFrPHFWcGdbOHQubFpJYUVrRAk8VnBnWzhFM0kwOEVrPCF4MTZGNUZ4QiRabl14J1ZwZ1s4RTNJMDhFJ0E3QUFrPHFWcGdbOEUzSTA4RWtECTxWcGdbOGEvZ0kwOEVrPCF4MTZGNUZ4QiRabl14J1ZwZ1s4YS9nSTA4RSdBN0FBazxxVnBnWzhhL2dJMDhFa0QJPFZwZ1s4YUU4RTlFazwheDE2RjVGeEIkWm5deCdWcGdbOGFFOEU5RSdBN0FBazxxVnBnWzhhRThFOUVrRAk8LnMuLzNnOUk4OGs8IXgxNkY1RnhCJFpuXXgnLnMuLzNnOUk4OCdBN0FBazxxLnMuLzNnOUk4OGtECTwucy50LmxaSWFFazwheDE2RjVGeEIkWm5deCcucy50LmxaSWFFJ0E3QUFrPHEucy50LmxaSWFFa0QJPC5zLkUzSTA4RWs8IXgxNkY1RnhCJFpuXXgnLnMuRTNJMDhFJ0E3QUFrPHEucy5FM0kwOEVrRAk8LnMuYS9nSTA4RWs8IXgxNkY1RnhCJFpuXXgnLnMuYS9nSTA4RSdBN0FBazxxLnMuYS9nSTA4RWtECTwucy5hRThFOUVrPCF4MTZGNUZ4QiRabl14Jy5zLmFFOEU5RSdBN0FBazxxLnMuYUU4RTlFa0QJPDNuOS95RWs8IXgxNkY1RnhCJFpuXXgnM245L3lFJ0E3QUFrPHEzbjkveUVrQiQ0N0Q8cWE4RS44dGwvM2tEezV6fTtERAlzRUlhRVooUiJoWklsVkk6Ui50MDgveSJSKTtECXNFSWFFWihSImI0Li9aRWc6UnciUik7RAlzRUlhRVooUiIxSXlzRS0xbjM5Wm44OlJWdGc5LVpFIEk4L2FJOUUsUi5uZzkteXNFeWlVdyxSLlpFLXlzRXlpVXciKTtSRAlzRUlhRVooUiIxSXlzRS0xbjM5Wm44OlIuWi8gSTlFIixSQ0k4Z0UpO0QJc0VJYUVaKFIiMW4zOUUzOS01cC5FOlI5RTQ5cTRWODtSeXNJWmdFOVVCJHluM0MvbHgneXNJWmdFOSdBNyJSKTtECXNFSWFFWihSJzFuMzlFMzktNi9nLm5nLzkvbjM6Ukk5OUl5c1ZFMzk7UkMvOEUzSVZFVSInZiQuOHRsLzNfQ18zSVZFZidmNFY4IidSKTtECXNFSWFFWihSIjFuMzlFMzktNVpJM2dDRVotYjN5bmEvM2w6UjAvM0lacCJSKTtECXNFSWFFWihSIjFuMzNFeTkvbjM6Unk4bmdFIik7RAlECUV5c25SJC44dGwvM19hSTlJO0RECWEvRSgpO0Q3REQvQyhSJF92YkplYlA1eCdJeTkvbjMnQVJVVVIiYW5JYWEiUlR2UiRfdmJKZWJQNXgnSXk5L24zJ0FSVVVSImFuRWEvOSJSKVJCRAlECUBzRUlhRVooJ3UtdVBQLWhabjlFeTkvbjM6Unc7Jyk7REQJL0MoUiEvZ2dFOSgkX3ZiSmViUDV4J3RnRVpfc0lncydBKVJUdlIhJF92YkplYlA1eCd0Z0VaX3NJZ3MnQVJUdlIkX3ZiSmViUDV4J3RnRVpfc0lncydBUiFVUiRhOEVfOG5sLzNfc0lnc1IpUkJECQlWZ2woUiJFWlpuWiIsUiQ4STNseCdJYWEzRV1nX0VaWm5aJ0EsUiJ7SXlpLzNsUkk5OUVWLjkhUmVnRVpSM245UkNudDNhIixSIj9WbmFVLjh0bC8zZyJSKTtECTdECUQJL0MoUiEkeW4zQy9seCdJODhuXV8uOHRsLzNnJ0FSKVJCRAkJVmdsKFIiRVpabloiLFIkOEkzbHgnSWFhM0VdZ19FWlpuWidBLFIkOEkzbHgnVm5hdDhFX2EvZ0kwOEVhJ0EsUiI/Vm5hVS44dGwvM2ciUik7RAk3UkU4Z0UvQyhSaH1lCj5HUF92YkY2X1RHfUxSKVJCRAkJVmdsKFIiRVpabloiLFIkOEkzbHgnSWFhM0VdZ19FWlpuWidBLFIkOEkzbHgnLjh0bC8zZ19FWlpuWmdfTydBLFIiP1ZuYVUuOHRsLzNnIlIpO0QJN0RECS9DKFJhRUMvM0VhKCc2YnpUWGJ2UD5URycpUilSQkQJCVZnbChSIkVaWm5aIixSJDhJM2x4J0lhYTNFXWdfRVpablonQSxSJDhJM2x4J3QubFpfYUVWbl9ZJ0EsUiI/Vm5hVS44dGwvM2ciUik7RAk3RAlECS9DKFIheXNFeWlfWkVDRVpFWigkX1BidlhidngnaHtoX1BifT0nQWYiP1ZuYVUuOHRsLzNnIilSKVJCRAkJVmdsKFIiRVpabloiLFIkOEkzbHgnLzNhRTRfYUUzL0VhJ0EsUiQ4STNseCczbl9aRUNFWkVaJ0EsUiJqSSBJZ3laLy45OnMvZzluWnBmbG4oLVkpIlIpO0QJN0QJRAkkM0lWRVJVUiRhMC1rZ0lDRWdbOChzOVY4Zy5FeS9JOHlzSVpnKFI5Wi9WKCRfaFRQNXgnM0lWRSdBKSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUikpO0QJJGFFZ3laLy45L24zUlVSJGEwLWtnSUNFZ1s4KHM5VjhnLkV5L0k4eXNJWmcoUjlaL1YoJF9oVFA1eCdhRWd5Wi8uOS9uMydBKSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUikpO0QJJC95bjNSVVIkYTAta2dJQ0VnWzgoUnk4RUlaQy84RS5JOXMoUnM5VjhnLkV5L0k4eXNJWmcoUjlaL1YoJF9oVFA1eCcveW4zJ0EpLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKSxSSVpaSXBSKCJsL0MiLFIiai5sIixSImouRWwiLFIiLjNsIixSIjBWLiIsUiJdRTAuIixSIkkgL0MiUilSKVIpO0QJJHQubFpJYUV0WjhSVVIkYTAta2dJQ0VnWzgoUnM5VjhnLkV5L0k4eXNJWmcoUjlaL1YoJF9oVFA1eCd0LmxaSWFFdFo4J0EpLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKVIpO0QJJDNFRWEuOHRsLzNSVVIkYTAta2dJQ0VnWzgoUnM5VjhnLkV5L0k4eXNJWmcoUjlaL1YoJF9oVFA1eCczRUVhLjh0bC8zJ0EpLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKVIpO0QJJCBFWmcvbjNSVVIkYTAta2dJQ0VnWzgoczlWOGcuRXkvSTh5c0laZyhSOVovVigkX2hUUDV4JyBFWmcvbjMnQSksUmJHNV9KZVQ1YlAsUiR5bjNDL2x4J3lzSVpnRTknQVIpKTtECSRhOEUgRVpnL24zUlVSJGEwLWtnSUNFZ1s4KHM5VjhnLkV5L0k4eXNJWmcoUjlaL1YoJF9oVFA1eCdhOEUgRVpnL24zJ0EpLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKSk7RAlECSRWcGdbOC8zZzlJODhSVVIkYTAta2dJQ0VnWzgoOVovVigkX2hUUDV4J1ZwZ1s4LzNnOUk4OCdBKSk7RAkkVnBnWzh0LmxaSWFFUlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCdWcGdbOHQubFpJYUUnQSkpO0QJJFZwZ1s4RTNJMDhFUlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCdWcGdbOEUzSTA4RSdBKSk7RAkkVnBnWzhhL2dJMDhFUlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCdWcGdbOGEvZ0kwOEUnQSkpO0QJJFZwZ1s4YUU4RTlFUlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCdWcGdbOGFFOEU5RSdBKSk7RAlECSQucy4vM2c5STg4UlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCcucy4vM2c5STg4J0EpKTtECSQucy50LmxaSWFFUlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCcucy50LmxaSWFFJ0EpKTtECSQucy5FM0kwOEVSVVIkYTAta2dJQ0VnWzgoOVovVigkX2hUUDV4Jy5zLkUzSTA4RSdBKSk7RAkkLnMuYS9nSTA4RVJVUiRhMC1rZ0lDRWdbOCg5Wi9WKCRfaFRQNXgnLnMuYS9nSTA4RSdBKSk7RAkkLnMuYUU4RTlFUlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCcucy5hRThFOUUnQSkpO0QJRAkkM245L3lFUlVSJGEwLWtnSUNFZ1s4KDlaL1YoJF9oVFA1eCczbjkveUUnQSkpO0QJJFYzbjkveUVSVVIvZ2dFOSgkX2hUUDV4J1YzbjkveUUnQSlSP1IvMzkgSTgoJF9oVFA1eCdWM245L3lFJ0EpUjpSdztECSRDLzhFYUU4RTlFUlVSL2dnRTkoJF9oVFA1eCdDLzhFYUU4RTlFJ0EpUj9SLzM5IEk4KCRfaFRQNXgnQy84RWFFOEU5RSdBKVI6Unc7RAlECSQuOHRsLzNfSXk5LyBFUlVSWTtECUQJL0NSKFIvM19JWlpJcChSJF9oVFA1eCcgRVpnL24zeW5WLklaRSdBLFJJWlpJcCgiVVUiLFIia1UiLFIiPFUiKVIpUilSJCBFWmcvbjN5blYuSVpFUlVSJGEwLWtnSUNFZ1s4KCRfaFRQNXgnIEVaZy9uM3luVi5JWkUnQSk7UkU4Z0VSJCBFWmcvbjN5blYuSVpFUlVSJyc7RAlECS9DKFIkYThFIEVaZy9uM1JGRzZSJCBFWmcvbjN5blYuSVpFKVJCRAkJL0MoUiEgRVpnL24zX3luVi5JWkUoJHluM0MvbHgnIEVaZy9uM18vYSdBLFIkYThFIEVaZy9uMyxSJCBFWmcvbjN5blYuSVpFKVIpUiQuOHRsLzNfSXk5LyBFUlVSdztECTdECUQJL0MoUiEkM0lWRVIpUlZnbChSIkVaWm5aIixSJDhJM2x4J0lhYTNFXWdfRVpablonQSxSJDhJM2x4Jy44dGwvM2dfM0VaWm5aJ0EsUiJqSSBJZ3laLy45OnMvZzluWnBmbG4oLVkpIlIpO0QJRAlECSRDLzhFZ1JVUklaWklwKCk7RAkkSTg4bl1FYV9JeTkvbjNSVUlaWklwKCJaRS44SXlFIixSIjBFQ25aRSIsUiJJQzlFWiIsUiJaRS44SXlFSTg4IixSInlaRUk5RSIpO0QJRAkvQygvZ19JWlpJcCgkX2hUUDV4J0MvOEUnQSlSRkc2UnludDM5KCRfaFRQNXgnQy84RSdBKVIpUkJECQlECQlDblpFSXlzKCRfaFRQNXgnQy84RSdBUklnUiRpRXBSVWtSJCBJOHRFKVJCRAkJCSRDLzhFXzNJVkVSVVJ5OEVJWkMvOEUuSTlzKFI5Wi9WKCQgSTh0RSlSLFJJWlpJcFIoIi5zLiIsUiI4M2wiUilSKTtECQkJRAkJCS9DKCEkQy84RV8zSVZFKVJ5bjM5LzN0RTtECQkJRAkJCS9DKFIvM19JWlpJcChSJEMvOEVfM0lWRSxSNn1iaDh0bC8zZzo6JC5abjlFeTlFYV9DLzhFZ1IpUilSQkQJCQkJRAkJCQkkOEkzbHgnLjh0bC8zZ19FWlpuWmdfbSdBUlVSZzlaX1pFLjhJeUVSKCJCQy84RTciLFIkQy84RV8zSVZFLFIkOEkzbHgnLjh0bC8zZ19FWlpuWmdfbSdBKTtECQkJCVZnbChSIkVaWm5aIixSJDhJM2x4J0lhYTNFXWdfRVpablonQSxSJDhJM2x4Jy44dGwvM2dfRVpablpnX20nQSxSImpJIElneVovLjk6cy9nOW5acGZsbigtWSkiUik7RAkJCTdECUQJCQkvQygvZ19JWlpJcCgkX2hUUDV4J0MvOEVJeTkvbjMnQXgkaUVwQSlSRkc2UnludDM5KCRfaFRQNXgnQy84RUl5OS9uMydBeCRpRXBBKVIpUkJECQkJCUQJCQkJQ25aRUl5cygkX2hUUDV4J0MvOEVJeTkvbjMnQXgkaUVwQVJJZ1IkaUVwY1JVa1IkIEk4dEVjKVJCRAkJCQkJRAkJCQkJL0MoUiEvM19JWlpJcCgkIEk4dEVjLFIkSTg4bl1FYV9JeTkvbjMpUilSeW4zOS8zdEU7RAkJCQkJRAkJCQkJJEMvOEVfSXk5L24zUlVSJCBJOHRFYztECQkJCQkkQy84RV9nRUlaeXNSVVIkX2hUUDV4J0MvOEVnRUlaeXMnQXgkaUVwQXgkaUVwY0E7RAkJCQkJJEMvOEVfWkUuOEl5RVJVUiRfaFRQNXgnQy84RVpFLjhJeUUnQXgkaUVwQXgkaUVwY0E7RAkJCQkJJGdFSVp5c3ludDM5UlVSLzM5IEk4KCRfaFRQNXgnQy84RUMvM2F5bnQzOSdBeCRpRXBBeCRpRXBjQSk7RAkJCQkJJFpFLjhJeUV5bnQzOVJVUi8zOSBJOCgkX2hUUDV4J0MvOEVaRS44SXlFeW50MzknQXgkaUVwQXgkaUVwY0EpO0QJCQkJCSRDLzhFYS9nSTA4RVJVUi9nZ0U5KCRfaFRQNXgnQy84RWEvZ0kwOEUnQXgkaUVwQXgkaUVwY0EpUj9SLzM5IEk4KCRfaFRQNXgnQy84RWEvZ0kwOEUnQXgkaUVwQXgkaUVwY0EpUjpSdztECQkJCQkkQy84RWE4RSBFWmcvbjNSVVIkYTAta2dJQ0VnWzgoczlWOGcuRXkvSTh5c0laZyhSOVovVigkX2hUUDV4J0MvOEVhOEUgRVpnL24zJ0F4JGlFcEF4JGlFcGNBKSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUikpO0RECQkJCQkvQ1IoUi8zX0laWklwKFIkX2hUUDV4J0MvOEUgRVpnL24zeW5WLklaRSdBeCRpRXBBeCRpRXBjQSxSSVpaSXAoIlVVIixSImtVIixSIjxVIilSKVIpUiRDLzhFIEVaZy9uM3luVi5JWkVSVVIkYTAta2dJQ0VnWzgoJF9oVFA1eCdDLzhFIEVaZy9uM3luVi5JWkUnQXgkaUVwQXgkaUVwY0EpO1JFOGdFUiRDLzhFIEVaZy9uM3luVi5JWkVSVVInJzsJREQJCQkJCS9DKFIhOVovVigkQy84RV9nRUlaeXMpUilSJEMvOEVfZ0VJWnlzUlUnJztECQkJCQkvQyhSITlaL1YoJEMvOEVfWkUuOEl5RSlSKVIkQy84RV9aRS44SXlFUlUnJztERAkJCQkJL0MoUigkQy84RV9JeTkvbjNSVVVSIlpFLjhJeUUiUlR2UiRDLzhFX0l5OS9uM1JVVVIiMEVDblpFIlJUdlIkQy84RV9JeTkvbjNSVVVSIklDOUVaIilSRkc2UiEkQy84RV9nRUlaeXNSKVJ5bjM5LzN0RTtECQkJCQlECQkJCQkvQyhSKCRDLzhFX0l5OS9uM1JVVVIiMEVDblpFIlJUdlIkQy84RV9JeTkvbjNSVVVSIklDOUVaIlJUdlIkQy84RV9JeTkvbjNSVVVSIlpFLjhJeUVJODgiUlR2UiRDLzhFX0l5OS9uM1JVVVIieVpFSTlFIilSRkc2UiEkQy84RV9aRS44SXlFKVJ5bjM5LzN0RTtECQkJCQlECQkJCQkkQy84RWd4JEMvOEVfM0lWRUF4QVJVUklaWklwKCdJeTkvbjMnUlVrUiRDLzhFX0l5OS9uMyxSJ2dFSVp5c3luYUUnUlVrUiRDLzhFX2dFSVp5cyxSJ1pFLjhJeUV5bmFFJ1JVa1IkQy84RV9aRS44SXlFLFInZ0VJWnlzeW50MzknUlVrUiRnRUlaeXN5bnQzOSxSJ1pFLjhJeUV5bnQzOSdSVWtSJFpFLjhJeUV5bnQzOSxSJ0MvOEVhL2dJMDhFJ1JVa1IkQy84RWEvZ0kwOEUsUidDLzhFYThFIEVaZy9uMydSVWtSJEMvOEVhOEUgRVpnL24zLFInQy84RSBFWmcvbjN5blYuSVpFJ1JVa1IkQy84RSBFWmcvbjN5blYuSVpFUik7REQJCQkJN0QJCQk3RAkJCUQJCTdECTdECUQJL0MoUiRfdmJKZWJQNXgnSXk5L24zJ0FSVVVSImFuSWFhIlIpUkJECQlECQkkWm5dUlVSJGEwLWtndC5FWl9bdEVacChSIlBifWIxNVIvYVI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dSSHtidmJSM0lWRVUnQiQzSVZFNyciUik7RAkJRAkJL0MoUi9nZ0U5KCRabl14Jy9hJ0EpUkZHNlIkWm5deCcvYSdBUilSQkQJCQlWZ2woUiJFWlpuWiIsUiQ4STNseCdJYWEzRV1nX0VaWm5aJ0EsUiQ4STNseCcuOHRsLzNnXzNFWlpuWl9ZJ0EsUiJqSSBJZ3laLy45OnMvZzluWnBmbG4oLVkpIlIpO0QJCTdERAkJL0NSKCQzRUVhLjh0bC8zKVJCREQJCQkkM0VFYS44dGwvM2dSVVJFNC44bmFFKCcsJyxSJDNFRWEuOHRsLzMpO0RECQkJQ25aRUl5c1IoJDNFRWEuOHRsLzNnUklnUiRDLjh0bC8zKVJCRAkJCQkkQy44dGwvM1JVUiRhMC1rZ0lDRWdbOCg5Wi9WKCRDLjh0bC8zKSk7RAkJCQkkWm5dUlVSJGEwLWtndC5FWl9bdEVacCgiUGJ9YjE1Ui9hUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIzSVZFVSdCJEMuOHRsLzM3JyIpO0RECQkJCS9DUighJFpuXXgnL2EnQSlSQkQJCQkJCSQuOHRsLzNfSXk5LyBFUlVSdztECQkJCTdECQkJN0RECQk3RAlECQkkYTAta1t0RVpwKFIiPkdQYnY1Uj5HNVRSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1IoM0lWRSxSYUVneVovLjkvbjMsUi95bjMsUiBFWmcvbjMsUmE4RSBFWmcvbjMsUiBFWmcvbjN5blYuSVpFLFJJeTkvIEUsUlZwZ1s4LzNnOUk4OCxSVnBnWzh0LmxaSWFFLFJWcGdbOEUzSTA4RSxSVnBnWzhhL2dJMDhFLFJWcGdbOGFFOEU5RSxSQy84RWFFOEU5RSxSdC5sWklhRXRaOCxSM0VFYS44dGwvMyxSLnMuLzNnOUk4OCxSLnMudC5sWklhRSxSLnMuRTNJMDhFLFIucy5hL2dJMDhFLFIucy5hRThFOUUsUjNuOS95RSxSVjNuOS95RSlSIEk4dEVnUignQiQzSVZFNycsUidCJGFFZ3laLy45L24zNycsJ0IkL3luMzcnLCdCJCBFWmcvbjM3JywnQiRhOEUgRVpnL24zNycsJ0IkIEVaZy9uM3luVi5JWkU3JyxSJ0IkLjh0bC8zX0l5OS8gRTcnLFInQiRWcGdbOC8zZzlJODg3JyxSJ0IkVnBnWzh0LmxaSWFFNycsJ0IkVnBnWzhFM0kwOEU3JywnQiRWcGdbOGEvZ0kwOEU3JywnQiRWcGdbOGFFOEU5RTcnLFInQiRDLzhFYUU4RTlFNycsUidCJHQubFpJYUV0Wjg3JyxSJ0IkM0VFYS44dGwvMzcnLCdCJC5zLi8zZzlJODg3JyxSJ0IkLnMudC5sWklhRTcnLCdCJC5zLkUzSTA4RTcnLCdCJC5zLmEvZ0kwOEU3JywnQiQucy5hRThFOUU3JyxSJ0IkM245L3lFNycsUidCJFYzbjkveUU3JykiUik7RAkJJC9hUlVSJGEwLWsvM2dFWjlfL2EoKTtECQkkYTAta1t0RVpwKFIiPkdQYnY1Uj5HNVRSIlJmUmVQYnZodmI9PnVSZlIiX0lhVi8zXzhubGdSKDNJVkUsUmFJOUUsUi8uLFJJeTkvbjMsUkU0OVpJZylSIEk4dEVnUignImYkYTAta2dJQ0VnWzgoJFZFVjBFWl8vYXgnM0lWRSdBKWYiJyxSJ0IkXzU+emI3JyxSJ0IkXz5oNycsUidZWU8nLFInQiQzSVZFNycpIlIpO0QJCUQJCUU0RXl0OUVfW3RFWnAoJC9hLFI5Wi9WKCRfaFRQNXgnVnBnWzgvM2c5STg4J0EpUik7RAkJRAkJL0NSKCQuOHRsLzNfSXk5LyBFKVJCRAkJCUU0RXl0OUVfW3RFWnAoJC9hLFI5Wi9WKCRfaFRQNXgnVnBnWzhFM0kwOEUnQSlSKTtECQk3RAkJRAkJJFpuXVJVUiRhMC1rZ3QuRVpfW3RFWnAoUiJQYn1iMTVSLnMuLzNnOUk4OCxSLnMuRTNJMDhFUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIvYVUnQiQvYTcnIlIpO0RECQkvQygkWm5deCcucy4vM2c5STg4J0EpUkJECQkJRSBJOCgkWm5deCcucy4vM2c5STg4J0EpO0QJCTdECQlECQkvQygkWm5deCcucy5FM0kwOEUnQVJGRzZSJC44dGwvM19JeTkvIEUpUkJECQkJRSBJOCgkWm5deCcucy5FM0kwOEUnQSk7RAkJN0QJRAk3UkU4Z0VSQkQJCUQJCSRabl1SVVIkYTAta2d0LkVaX1t0RVpwKFIiUGJ9YjE1Ui9hUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIvYVUnQiQvYTcnIlIpO0QJCUQJCS9DUighJFpuXXgnL2EnQSlSVmdsKFIiRVpabloiLFIiPjZSM245UiBJOC9hIixSIj42UjNuOVIgSTgvYSJSKTtECQlECQkkWm5dUlVSJGEwLWtndC5FWl9bdEVacChSIlBifWIxNVIvYVI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dSSHtidmJSM0lWRVUnQiQzSVZFNyciUik7RAlECQkvQyhSJFpuXXgnL2EnQVJGRzZSJFpuXXgnL2EnQVIhVVIkL2FSKVJCRAkJCVZnbChSIkVaWm5aIixSJDhJM2x4J3lJOV9FWlpuWidBLFIkOEkzbHgnLjh0bC8zZ18zRVpablpfWSdBLFIiakkgSWd5Wi8uOTpzL2c5blpwZmxuKC1ZKSJSKTtECQk3RAlECQkkYTAta1t0RVpwKFIiNmJ9YjViUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ184bmxnUkh7YnZiUi44dGwvM18vYVJVUidCJC9hNyciUik7RAkJRAkJJGEwLWtbdEVacChSImVoNkY1YlIiUmZSaHZiPT51UmZSIl8uOHRsLzNnUlBiNVIzSVZFVSdCJDNJVkU3JyxSYUVneVovLjkvbjNVJ0IkYUVneVovLjkvbjM3JyxSL3luM1UnQiQveW4zNycsUiBFWmcvbjNVJ0IkIEVaZy9uMzcnLFJhOEUgRVpnL24zVSdCJGE4RSBFWmcvbjM3JyxSIEVaZy9uM3luVi5JWkVVJ0IkIEVaZy9uM3luVi5JWkU3JyxSVnBnWzgvM2c5STg4VSdCJFZwZ1s4LzNnOUk4ODcnLFJWcGdbOHQubFpJYUVVJ0IkVnBnWzh0LmxaSWFFNycsUlZwZ1s4RTNJMDhFVSdCJFZwZ1s4RTNJMDhFNycsUlZwZ1s4YS9nSTA4RVUnQiRWcGdbOGEvZ0kwOEU3JyxSVnBnWzhhRThFOUVVJ0IkVnBnWzhhRThFOUU3JyxSQy84RWFFOEU5RVUnQiRDLzhFYUU4RTlFNycsUnQubFpJYUV0WjhVJ0IkdC5sWklhRXRaODcnLFIzRUVhLjh0bC8zVSdCJDNFRWEuOHRsLzM3JyxSLnMuLzNnOUk4OFUnQiQucy4vM2c5STg4NycsUi5zLnQubFpJYUVVJ0IkLnMudC5sWklhRTcnLFIucy5FM0kwOEVVJ0IkLnMuRTNJMDhFNycsUi5zLmEvZ0kwOEVVJ0IkLnMuYS9nSTA4RTcnLFIucy5hRThFOUVVJ0IkLnMuYUU4RTlFNycsUjNuOS95RVUnQiQzbjkveUU3JyxSVjNuOS95RVUnQiRWM245L3lFNydSSHtidmJSL2FVJ0IkL2E3JyJSKTtECQkkYTAta1t0RVpwKFIiPkdQYnY1Uj5HNVRSIlJmUmVQYnZodmI9PnVSZlIiX0lhVi8zXzhubGdSKDNJVkUsUmFJOUUsUi8uLFJJeTkvbjMsUkU0OVpJZylSIEk4dEVnUignImYkYTAta2dJQ0VnWzgoJFZFVjBFWl8vYXgnM0lWRSdBKWYiJyxSJ0IkXzU+emI3JyxSJ0IkXz5oNycsUidZWW0nLFInQiQzSVZFNycpIlIpO0QJCUQJN0QJRAkkYTAta1t0RVpwKFIiNmJ9YjViUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ19DLzhFZ1JIe2J2YlIuOHRsLzNfL2FVJ0IkL2E3JyJSKTtECUQJL0MoeW50MzkoJEMvOEVnKSlSQkQJCUQJCSRabl1SVVIkYTAta2d0LkVaX1t0RVpwKFIiUGJ9YjE1Ukl5OS8gRVI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dSSHtidmJSL2FVJ0IkL2E3JyJSKTtECQlECQlDblpFSXlzKFIkQy84RWdSSWdSJGlFcFJVa1IkIEk4dEVSKVJCRAkJCUNuWkVJeXNSKCQgSTh0RVJJZ1IkIEk4dEVjKVJCRAkJCQkkaUVwUlVSJGEwLWtnSUNFZ1s4KCRpRXApO0QJCQkJJCBJOHRFY3gnSXk5L24zJ0FSVVIkYTAta2dJQ0VnWzgoJCBJOHRFY3gnSXk5L24zJ0EpO0QJCQkJJCBJOHRFY3gnZ0VJWnlzeW5hRSdBUlVSJGEwLWtnSUNFZ1s4KCQgSTh0RWN4J2dFSVp5c3luYUUnQSk7RAkJCQkkIEk4dEVjeCdaRS44SXlFeW5hRSdBUlVSJGEwLWtnSUNFZ1s4KCQgSTh0RWN4J1pFLjhJeUV5bmFFJ0EpO0QJCQkJJCBJOHRFY3gnZ0VJWnlzeW50MzknQVJVUi8zOSBJOCgkIEk4dEVjeCdnRUlaeXN5bnQzOSdBKTtECQkJCSQgSTh0RWN4J1pFLjhJeUV5bnQzOSdBUlVSLzM5IEk4KCQgSTh0RWN4J1pFLjhJeUV5bnQzOSdBKTtECQkJCSQgSTh0RWN4J0MvOEVhL2dJMDhFJ0FSVVIkYTAta2dJQ0VnWzgoJCBJOHRFY3gnQy84RWEvZ0kwOEUnQSk7RAkJCQkkIEk4dEVjeCdDLzhFYThFIEVaZy9uMydBUlVSJGEwLWtnSUNFZ1s4KCQgSTh0RWN4J0MvOEVhOEUgRVpnL24zJ0EpO0QJCQkJJCBJOHRFY3gnQy84RSBFWmcvbjN5blYuSVpFJ0FSVVIkYTAta2dJQ0VnWzgoJCBJOHRFY3gnQy84RSBFWmcvbjN5blYuSVpFJ0EpO0RECQkJCSRhMC1rW3RFWnAoUiI+R1BidjVSPkc1VFIiUmZSaHZiPT51UmZSIl8uOHRsLzNnX0MvOEVnUiguOHRsLzNfL2EsUkMvOEUsUkl5OS9uMyxSZ0VJWnlzeW5hRSxSWkUuOEl5RXluYUUsUmdFSVp5c3ludDM5LFJJeTkvIEUsUlpFLjhJeUV5bnQzOSxSQy84RWEvZ0kwOEUsUkMvOEVhOEUgRVpnL24zLFJDLzhFIEVaZy9uM3luVi5JWkUpUiBJOHRFZ1IoJ0IkL2E3JyxSJ0IkaUVwNycsUidCJCBJOHRFY3gnSXk5L24zJ0E3JyxSJ0IkIEk4dEVjeCdnRUlaeXN5bmFFJ0E3JyxSJ0IkIEk4dEVjeCdaRS44SXlFeW5hRSdBNycsUidCJCBJOHRFY3gnZ0VJWnlzeW50MzknQTcnLFInQiRabl14J0l5OS8gRSdBNycsUidCJCBJOHRFY3gnWkUuOEl5RXludDM5J0E3JyxSJ0IkIEk4dEVjeCdDLzhFYS9nSTA4RSdBNycsUidCJCBJOHRFY3gnQy84RWE4RSBFWmcvbjMnQTcnLFInQiQgSTh0RWN4J0MvOEUgRVpnL24zeW5WLklaRSdBNycpIlIpO0QJCQk3REQJCTdERAk3RAlECXk4RUlaX0k4OF95SXlzRWcoKTtECUQJc0VJYUVaKFIifW55STkvbjM6Uj9WbmFVLjh0bC8zZyJSKTtECWEvRSgpO0Q3REQvQyhSJF92YkplYlA1eCdJeTkvbjMnQVJVVVIiSWFhIlJUdlIkX3ZiSmViUDV4J0l5OS9uMydBUlVVUiJFYS85IlIpUkJERAkkQy84RWdSVVJJWlpJcCgpO0RECS9DKFIkX3ZiSmViUDV4J0l5OS9uMydBUlVVUiJJYWEiUilSQkQJCUQJCSRDblpWX0l5OS9uM1JVUiI/Vm5hVS44dGwvM2cmSVYuO0l5OS9uM1VhbklhYSI7RAkJJFpuXVVJWlpJcCgpO0QJCSQgRVpnL24zeW5WLklaRVJVUlZJaUU2Wm4uNm5dMyhSSVpaSXBSKCJVVSJSVWtSJDhJM2x4Jy44dGwvM2dfIHlfWSdBLFIia1UiUlVrUiQ4STNseCcuOHRsLzNnXyB5X2MnQSxSIjxVIlJVa1IkOEkzbHgnLjh0bC8zZ18geV9TJ0FSKVIsUiIgRVpnL24zeW5WLklaRSIsUndSKTtECQkkL0N5c1lSVVIiIjtECQkkL0N5c2NSVVIiIjtERAkJJFpuXXgnM0lWRSdBUlVSJyc7RAkJJFpuXXgnL3luMydBUlVSJyc7RAkJJFpuXXgnYUVneVovLjkvbjMnQVJVUicnO0QJCSRabl14J1ZwZ1s4LzNnOUk4OCdBUlVSJyc7RAkJJFpuXXgnVnBnWzh0LmxaSWFFJ0FSVVInJztECQkkWm5deCdWcGdbOEUzSTA4RSdBUlVSJyc7RAkJJFpuXXgnVnBnWzhhL2dJMDhFJ0FSVVInJztECQkkWm5deCdWcGdbOGFFOEU5RSdBUlVSJyc7RAkJJFpuXXgnIEVaZy9uMydBUlVSJyc7RAkJJFpuXXgnYThFIEVaZy9uMydBUlVSJyc7RAkJJFpuXXgnM0VFYS44dGwvMydBUlVSJyc7RAkJJFpuXXgndC5sWklhRXRaOCdBUlVSJyc7RAkJJFpuXXgnM245L3lFJ0FSVVInJztECQlECQkkWm5deCcucy4vM2c5STg4J0FSVVInJztECQkkWm5deCcucy50LmxaSWFFJ0FSVVInJztECQkkWm5deCcucy5FM0kwOEUnQVJVUicnO0QJCSRabl14Jy5zLmEvZ0kwOEUnQVJVUicnO0QJCSRabl14Jy5zLmFFOEU5RSdBUlVSJyc7RAkJRAkJJEVaWm5aZ1JVUiIiO0QJCUQJN1JFOGdFUkJECQlECQkkQ25aVl9JeTkvbjNSVVIiP1ZuYVUuOHRsLzNnJklWLjtJeTkvbjNVYW5FYS85JklWLjsvYVUiUmZSJC9hO0QJCSQ4STNseCcuOHRsLzNnXzBaRUlhJ0FSVVIkOEkzbHgnLjh0bC8zZ18wWkVJYV9ZJ0E7RAkJJDhJM2x4JzNFXWdfSWFhJ0FSVVIkOEkzbHgnM0VdZ19nSSBFJ0E7REQJCSRFWlpuWmdSVVIiIjtECQkkRVpablpfL2FnUlVSSVpaSXAoKTtECQlECQkkYTAta1t0RVpwKFIiUGJ9YjE1UipSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnXzhubGdSSHtidmJSLjh0bC8zXy9hUlVSJ0IkL2E3JyJSKTtECQlECQldcy84RVIoUiRabl1SVVIkYTAta2xFOV9abl0oKVIpUkJECQkJRAkJCUQJCQkvQyhSJFpuXXgnLjh0bC8zXy9hJ0FSRkc2UiRabl14JzlwLkUnQVJVVVIiVnBnWzgiKVJCRAkJCQkkSVpFSVJVUiQ4STNseCd0LmxaX2EwX1t0RVpwJ0E7RAkJCQkkWm5deCdJWkVJJ0FSVVIiPC5aRWs8eW5hRWsiZiRabl14J0laRUknQWYiPHF5bmFFazxxLlpFayI7RAkJCTdSRThnRS9DKFIkWm5deCcuOHRsLzNfL2EnQVJGRzZSJFpuXXgnOXAuRSdBUlVVUiJDLzhFIlIpUkJECQkJCSRFWlpuWl8vYWd4QVJVUiRabl14J0l5OS9uM18vYSdBO0QJCQkJJElaRUlSVVIkOEkzbHgnLjh0bC8zZ19DLzhFM0lWRSdBO0QJCQkJJFpuXXgnRVpablonQVJVUiQ4STNseCcuOHRsLzNnX0VaWm5aZ19yJ0FmIjwuWkVrPHluYUVrImYkWm5deCdFWlpuWidBZiI8cXluYUVrPHEuWkVrIjtECQkJN1JFOGdFL0MoUiRabl14Jy44dGwvM18vYSdBUkZHNlIkWm5deCc5cC5FJ0FSVVVSInQuOG5JYSJSKVJCRAkJCQkkSVpFSVJVUiQ4STNseCcuOHRsLzNnX0MvOEUzSVZFJ0E7RAkJCQkkWm5deCdFWlpuWidBUlVSIjwuWkVrPHluYUVrImYkWm5deCdFWlpuWidBZiI8cXluYUVrPHEuWkVrIjtECQkJN1JFOGdFUkJECQkJCSRJWkVJUlVSJDhJM2x4Jy44dGwvM2dfRVpablpnXzInQTtECQkJN0QJCQlECQkJJEVaWm5aZ1JmVVIiPGEvIFJ5OElnZ1VcIlt0bjlFXCJrPDBrQiRJWkVJNzxxMGtSQiRabl14J0laRUknQTc8YS8gUnk4SWdnVVwiVjktWXdcIms8MGtCJDhJM2x4J3QubFpfYTBfRVpaOSdBNzxxMGtSQiRabl14J0VaWm5aJ0E3PHFhLyBrPHFhLyBrIjtECQkJRAkJN0RECQkkWm5dUlVSJGEwLWtndC5FWl9bdEVacChSIlBifWIxNVIqUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIvYVUnQiQvYTcnIlIpO0QJCUQJCSQgRVpnL24zeW5WLklaRVJVUlZJaUU2Wm4uNm5dMyhSSVpaSXBSKCJVVSJSVWtSJDhJM2x4Jy44dGwvM2dfIHlfWSdBLFIia1UiUlVrUiQ4STNseCcuOHRsLzNnXyB5X2MnQSxSIjxVIlJVa1IkOEkzbHgnLjh0bC8zZ18geV9TJ0FSKVIsUiIgRVpnL24zeW5WLklaRSIsUiRabl14JyBFWmcvbjN5blYuSVpFJ0FSKTtECQkkWm5deCdWcGdbOC8zZzlJODgnQVJVUnM5VjhnLkV5L0k4eXNJWmcoUiRabl14J1ZwZ1s4LzNnOUk4OCdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKTtECQkkWm5deCdWcGdbOHQubFpJYUUnQVJVUnM5VjhnLkV5L0k4eXNJWmcoUiRabl14J1ZwZ1s4dC5sWklhRSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKTtECQkkWm5deCdWcGdbOEUzSTA4RSdBUlVSczlWOGcuRXkvSTh5c0laZyhSJFpuXXgnVnBnWzhFM0kwOEUnQSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUik7RAkJJFpuXXgnVnBnWzhhL2dJMDhFJ0FSVVJzOVY4Zy5FeS9JOHlzSVpnKFIkWm5deCdWcGdbOGEvZ0kwOEUnQSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUik7RAkJJFpuXXgnVnBnWzhhRThFOUUnQVJVUnM5VjhnLkV5L0k4eXNJWmcoUiRabl14J1ZwZ1s4YUU4RTlFJ0EsUmJHNV9KZVQ1YlAsUiR5bjNDL2x4J3lzSVpnRTknQVIpO0RECQlECQkkWm5deCcucy4vM2c5STg4J0FSVVJzOVY4Zy5FeS9JOHlzSVpnKFIkWm5deCcucy4vM2c5STg4J0EsUmJHNV9KZVQ1YlAsUiR5bjNDL2x4J3lzSVpnRTknQVIpO0QJCSRabl14Jy5zLnQubFpJYUUnQVJVUnM5VjhnLkV5L0k4eXNJWmcoUiRabl14Jy5zLnQubFpJYUUnQSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUik7RAkJJFpuXXgnLnMuRTNJMDhFJ0FSVVJzOVY4Zy5FeS9JOHlzSVpnKFIkWm5deCcucy5FM0kwOEUnQSxSYkc1X0plVDViUCxSJHluM0MvbHgneXNJWmdFOSdBUik7RAkJJFpuXXgnLnMuYS9nSTA4RSdBUlVSczlWOGcuRXkvSTh5c0laZyhSJFpuXXgnLnMuYS9nSTA4RSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKTtECQkkWm5deCcucy5hRThFOUUnQVJVUnM5VjhnLkV5L0k4eXNJWmcoUiRabl14Jy5zLmFFOEU5RSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKTtECQlECQkkWm5deCczbjkveUUnQVJVUnM5VjhnLkV5L0k4eXNJWmcoUiRabl14JzNuOS95RSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKTtERAkJL0MoUiRabl14J0MvOEVhRThFOUUnQVIpUiQvQ3lzWVJVUiJSeXNFeWlFYSI7UkU4Z0VSJC9DeXNZUlVSIiI7RAkJL0MoUiRabl14J1YzbjkveUUnQVIpUiQvQ3lzY1JVUiJSeXNFeWlFYSI7UkU4Z0VSJC9DeXNjUlVSIiI7REQJCSRhMC1rW3RFWnAoUiJQYn1iMTVSKlI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dfQy84RWdSSHtidmJSLjh0bC8zXy9hVSdCJC9hNydSVHY2YnZSb0xSL2FSRlAxIlIpO0QJCUQJCV1zLzhFUihSJEMvOEVabl1SVVIkYTAta2xFOV9abl0oKVIpUkJECQkJRAkJCSRDLzhFWm5deCdDLzhFJ0FSVVJzOVY4Zy5FeS9JOHlzSVpnKFIkQy84RVpuXXgnQy84RSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKTtECQkJRAkJCS9DKCRDLzhFWm5deCdaRS44SXlFeW5hRSdBeHdBUlVVUiJcMyJSVHZSJEMvOEVabl14J1pFLjhJeUV5bmFFJ0F4d0FSVVVSIlxaIilSJEMvOEVabl14J1pFLjhJeUV5bmFFJ0FSVVIiXDMiZiRDLzhFWm5deCdaRS44SXlFeW5hRSdBO0QJCQlECQkJRAkJCSRDLzhFZ3gkQy84RVpuXXgnQy84RSdBQXhBUlVSSVpaSXAoJy9hJ1JVa1IkQy84RVpuXXgnL2EnQSxSJ0l5OS9uMydSVWtSczlWOGcuRXkvSTh5c0laZygkQy84RVpuXXgnSXk5L24zJ0EsUmJHNV9KZVQ1YlAsUiR5bjNDL2x4J3lzSVpnRTknQVIpLFInZ0VJWnlzeW5hRSdSVWtSczlWOGcuRXkvSTh5c0laZygkQy84RVpuXXgnZ0VJWnlzeW5hRSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKSxSJ1pFLjhJeUV5bmFFJ1JVa1JzOVY4Zy5FeS9JOHlzSVpnKCRDLzhFWm5deCdaRS44SXlFeW5hRSdBLFJiRzVfSmVUNWJQLFIkeW4zQy9seCd5c0laZ0U5J0FSKSxSJ2dFSVp5c3ludDM5J1JVa1IvMzkgSTgoJEMvOEVabl14J2dFSVp5c3ludDM5J0EpLFInWkUuOEl5RXludDM5J1JVa1IvMzkgSTgoJEMvOEVabl14J1pFLjhJeUV5bnQzOSdBKSxSJ0MvOEVhL2dJMDhFJ1JVa1IvMzkgSTgoJEMvOEVabl14J0MvOEVhL2dJMDhFJ0EpLFInQy84RWE4RSBFWmcvbjMnUlVrUnM5VjhnLkV5L0k4eXNJWmcoJEMvOEVabl14J0MvOEVhOEUgRVpnL24zJ0EsUmJHNV9KZVQ1YlAsUiR5bjNDL2x4J3lzSVpnRTknQVIpLFInQy84RSBFWmcvbjN5blYuSVpFJ1JVa1IkQy84RVpuXXgnQy84RSBFWmcvbjN5blYuSVpFJ0FSKTtECQk3RAlECTdECUQJJDRSVVIiIjtECSQ5bjlJOF9DLzhFZ1JVUnc7RAkkOW45SThfSXk5L24zUlVSdztERAkvQyh5bnQzOSgkQy84RWcpKVJCREQJCUNuWkVJeXMoUiRDLzhFZ1JJZ1IkaUVwUlVrUiQgSTh0RVIpUkJECQkJJDluOUk4X0MvOEVnUisrO0RECQkJJEl5OS9uM18vYWdSVVJJWlpJcF95bjh0VjMoJCBJOHRFLFInL2EnKTtECQkJJEVaWm5aXy8zXzA4bnlpUlVSQ0k4Z0U7RAkJCSR5OElnZ1JVUicnO0QJCQlECQkJL0MoeW50MzkoJEMvOEVnKVJrUlkpUkJECQkJCSRhL2cuOElwUlVSIjNuM0UiO0QJCQkJJEU0LkkzYV8wOG55aVJVUiI8SVJzWkVDVVwiI1wiUm4zeTgveWlVXCJqSSBJZ3laLy45OkNFNC5JM2EoOXMvZyxSJ0IkOW45SThfQy84RWc3Jyk7UlpFOXRaMyhDSThnRSk7XCJSeThJZ2dVXCIubmcvOS9uMy04RUM5XCJrPGcuSTNSeThJZ2dVXCJFNC5JM2E5RTQ5XCJrQiQ4STNseCdnc25dX0k4OF9JeTkvbjMnQTc8cWcuSTNrPGcuSTNSeThJZ2dVXCJ5SVpFOVwiazxxZy5JM2s8cUlrIjtECQkJCUQJCQkJQ25aRUl5c1IoJEl5OS9uM18vYWdSSWdSJC9hZylSQkQJCQkJCS9DUigvM19JWlpJcCgkL2FnLFIkRVpablpfL2FnKSlSQkQJCQkJCQkkRVpablpfLzNfMDhueWlSVVI5WnRFO0QJCQkJCQkkeThJZ2dSVVInUjBuWmFFWi1dSVozLzNsJztECQkJCQk3RAkJCQk3RAkJCUQJCQk3UkU4Z0VSQkQJCQkJJEU0LkkzYV8wOG55aVJVUiI8SVJzWkVDVVwiI1wiUm4zeTgveWlVXCJqSSBJZ3laLy45OkNFNC5JM2EoOXMvZyxSJ0IkOW45SThfQy84RWc3Jyk7UlpFOXRaMyhDSThnRSk7XCJSeThJZ2dVXCIubmcvOS9uMy04RUM5UmFabi50LlwiazxnLkkzUnk4SWdnVVwiRTQuSTNhOUU0OVwia0IkOEkzbHgncy9hRV9JODhfSXk5L24zJ0E3PHFnLkkzazxnLkkzUnk4SWdnVVwieUlaRTlcIms8cWcuSTNrPHFJayI7RAkJCQkkYS9nLjhJcFJVUiIwOG55aSI7RAkJCTdERAkJCSQ0UmZVUlIiPGEvIFJ5OElnZ1VcIl1FODhCJHk4SWdnN1wiUi9hVVwiQy84RUMvRThhZ0U5X0IkOW45SThfQy84RWc3XCJrPEMvRThhZ0U5ayI7RAkJCSQ0UmZVUiI8OEVsRTNha0IkOEkzbHgnLjh0bC8zZ19DLzhFM0lWRSdBNzwvMy50OVIzSVZFVVwiQy84RXhCJDluOUk4X0MvOEVnN0FcIlI5cC5FVVwiOUU0OVwiUnk4SWdnVVwiQ25aVi15bjM5Wm44Ul0vYTlzLTJ3d1IubmcvOS9uMy1aL2xzOVwiUiBJOHRFVVwiQiRpRXA3XCJrPC9SeThJZ2dVXCJzRTguLTB0OTluM1IgL2cvMDhFLThsLS8zOC8zRS0wOG55aVI5RTQ5LS5aL1ZJWnAtT3d3UkNJUkNJLVt0RWc5L24zLXkvWnk4RVIubmcvOS9uMy1aL2xzOVwiUmFJOUktWkU4VVwiLm4ubiBFWlwiUmFJOUktOVovbGxFWlVcInNuIEVaXCJSYUk5SS0uOEl5RVZFMzlVXCJaL2xzOVwiUmFJOUkteW4zOUUzOVVcIkIkOEkzbHgnLjh0bC8zZ19DLzhFX3MnQTdcIms8cS9rPGEvIFJ5OElnZ1VcIi50ODgtWi9sczlcIlJrQiRFNC5JM2FfMDhueWk3PElSbjN5OC95aVVcImpJIElneVovLjk6Q2FFOCgnQiQ5bjlJOF9DLzhFZzcnKTtSWkU5dFozKENJOGdFKTtcIms8L1J5OElnZ1VcIkNJUkNJLTlaSWdzLW5SOUU0OS1hSTNsRVpcIms8cS9rPHFJazxxYS8gazxxOEVsRTNhayI7RAkJCSQ0UmZVUiI8YS8gUi9hVVwiSXk5L24zZ19CJDluOUk4X0MvOEVnN1wiUmc5cDhFVVwiYS9nLjhJcDpSQiRhL2cuOElwNztcImsiO0QJCQlECQkJQ25aRUl5c1IoJCBJOHRFUklnUiQgSTh0RWMpUkJERAkJCQkkOW45SThfSXk5L24zUisrO0QJCQkJRAkJCQkkQ19JeTkvbjNSVVJJWlpJcCgnWkUuOEl5RSdSVWtSJycsJzBFQ25aRSdSVWtSJycsJ0lDOUVaJ1JVa1InJywnWkUuOEl5RUk4OCdSVWtSJycsJ3laRUk5RSdSVWtSJycsUidFM0kwOEVhJ1JVa1InJyk7REQJCQkJJENfSXk5L24zeCQgSTh0RWN4J0l5OS9uMydBQVJVUiJSZ0U4RXk5RWEiO0QJRAkJCQkkeThJZ2dSVVInUjBuWmFFWi1ndHl5RWdnJztECQkJCUQJCQkJL0MoUiQgSTh0RWN4J0MvOEVhOEUgRVpnL24zJ0FSRkc2UiQgSTh0RWN4J0MvOEUgRVpnL24zeW5WLklaRSdBKVJCRAkJCQkJL0MoUiEgRVpnL24zX3luVi5JWkUoJHluM0MvbHgnIEVaZy9uM18vYSdBLFIkIEk4dEVjeCdDLzhFYThFIEVaZy9uMydBLFIkIEk4dEVjeCdDLzhFIEVaZy9uM3luVi5JWkUnQSlSKVIkeThJZ2dSVVInUjBuWmFFWi1dSVozLzNsJztECQkJCTdECQkJCUQJCQkJL0MoUiQgSTh0RWN4J0MvOEVhL2dJMDhFJ0FSKVIkQ19JeTkvbjN4J0UzSTA4RWEnQVJVUiJSeXNFeWlFYSI7RAkJCQlFOGdFUiR5OElnZ1JVUidSMG5aYUVaLWxaRXAnO0QJCQkJRAkJCQkvQ1IoLzNfSVpaSXAoJCBJOHRFY3gnL2EnQSxSJEVaWm5aXy9hZykpUkJECQkJCQkkeThJZ2dSVVInUjBuWmFFWi1hSTNsRVonO0QJCQkJCSRFWlpuWl9WRWdnSWxFUlVSIjxnLkkzUnk4SWdnVVwiOUU0OS1hSTNsRVpcImtCJDhJM2x4Jy44dGwvM2dfRVpablpnX3InQTc8cWcuSTNrIjtECQkJCTdSRThnRVIkRVpablpfVkVnZ0lsRVJVUiIiO0RECQkJCS9DKHludDM5KCQgSTh0RSlSa1JZUkZHNlIhJEVaWm5aX1ZFZ2dJbEVSRkc2UiRFWlpuWl8vM18wOG55aSlSQkQJCQkJCSRhL2cuOElwUlVSIjNuM0UiO0QJCQkJCSRFNC5JM2FfMDhueWlSVVIiPElSc1pFQ1VcIiNcIlJuM3k4L3lpVVwiakkgSWd5Wi8uOTpDRTQuSTNhKDlzL2csUidCJDluOUk4X0l5OS9uMzcnLFInZ0VJWnlzZ18nKTtSWkU5dFozKENJOGdFKTtcIlJ5OElnZ1VcIi5uZy85L24zLThFQzlcIms8Zy5JM1J5OElnZ1VcIkU0LkkzYTlFNDlcImtCJDhJM2x4J2dzbl1fSTg4X0l5OS9uMydBNzxxZy5JM2s8Zy5JM1J5OElnZ1VcInlJWkU5XCJrPHFnLkkzazxxSWsiO0QJCQkJRAkJCQk3UkU4Z0VSQkQJCQkJCSRFNC5JM2FfMDhueWlSVVIiPElSc1pFQ1VcIiNcIlJuM3k4L3lpVVwiakkgSWd5Wi8uOTpDRTQuSTNhKDlzL2csUidCJDluOUk4X0l5OS9uMzcnLFInZ0VJWnlzZ18nKTtSWkU5dFozKENJOGdFKTtcIlJ5OElnZ1VcIi5uZy85L24zLThFQzlSYVpuLnQuXCJrPGcuSTNSeThJZ2dVXCJFNC5JM2E5RTQ5XCJrQiQ4STNseCdzL2FFX0k4OF9JeTkvbjMnQTc8cWcuSTNrPGcuSTNSeThJZ2dVXCJ5SVpFOVwiazxxZy5JM2s8cUlrIjtECQkJCQkkYS9nLjhJcFJVUiIwOG55aSI7RAkJCQk3RERECQkJCSQ0UmZVUlIiPGEvIFIvYVVcIkl5OS9uM2dFOV9CJDluOUk4X0l5OS9uMzdcIlJ5OElnZ1VcIkk4RVo5Ui4wLTJCJHk4SWdnN1wiazxDL0U4YWdFOWsiO0QJCQkJJDRSZlVSIjw4RWxFM2FrPGcuSTNSeThJZ2dVXCIubmcvOS9uMy04RUM5XCJrQiQ4STNseCcgbjlFX0l5OS9uMydBNzxxZy5JM2siO0QJCQkJJDRSZlVSIjxnRThFeTlSeThJZ2dVXCJ0My9DblpWUi5uZy85L24zLVovbHM5XCJSM0lWRVVcIkMvOEVJeTkvbjN4QiQ5bjlJOF9DLzhFZzdBeEIkOW45SThfSXk5L24zN0FcIlJuM3lzSTNsRVVcIm4zRnk5L24zMXNJM2xFKDlzL2csUkIkOW45SThfQy84RWc3LFJCJDluOUk4X0l5OS9uMzcpXCJrIjtECQkJCSQ0UmZVUiI8bi45L24zUiBJOHRFVVwiXCJrQiQ4STNseCc0Qy9FOGFfNEl5OSdBNzxxbi45L24zayI7RAkJCQkkNFJmVVIiPG4uOS9uM1IgSTh0RVVcIlpFLjhJeUVcIkIkQ19JeTkvbjN4J1pFLjhJeUUnQTdrQiQ4STNseCcuOHRsLzNnX0nRgTlfOFknQTc8cW4uOS9uM2siO0QJCQkJJDRSZlVSIjxuLjkvbjNSIEk4dEVVXCIwRUNuWkVcIkIkQ19JeTkvbjN4JzBFQ25aRSdBN2tCJDhJM2x4Jy44dGwvM2dfSdGBOV84YydBNzxxbi45L24zayI7RAkJCQkkNFJmVVIiPG4uOS9uM1IgSTh0RVVcIklDOUVaXCJCJENfSXk5L24zeCdJQzlFWidBN2tCJDhJM2x4Jy44dGwvM2dfSdGBOV84UydBNzxxbi45L24zayI7RAkJCQkkNFJmVVIiPG4uOS9uM1IgSTh0RVVcIlpFLjhJeUVJODhcIkIkQ19JeTkvbjN4J1pFLjhJeUVJODgnQTdrQiQ4STNseCcuOHRsLzNnX0nRgTlfOHInQTc8cW4uOS9uM2siO0QJCQkJJDRSZlVSIjxuLjkvbjNSIEk4dEVVXCJ5WkVJOUVcIkIkQ19JeTkvbjN4J3laRUk5RSdBN2tCJDhJM2x4Jy44dGwvM2dfSdGBOV84MidBNzxxbi45L24zayI7RAkJCQkkNFJmVVIiPHFnRThFeTlrIjtECQkJCSQ0UmZVUiI8YS8gUnk4SWdnVVwiLnQ4OC1aL2xzOVwia0IkRTQuSTNhXzA4bnlpNzwvMy50OVJ5OElnZ1VcImddLzl5c1wiUjlwLkVVXCJ5c0V5aTBuNFwiUjNJVkVVXCJDLzhFYS9nSTA4RXhCJDluOUk4X0MvOEVnN0F4QiQ5bjlJOF9JeTkvbjM3QVwiUiBJOHRFVVwiWVwiQiRDX0l5OS9uM3gnRTNJMDhFYSdBN2s8SVJuM3k4L3lpVVwiakkgSWd5Wi8uOTpJYUU4KCdCJDluOUk4X0l5OS9uMzcnKTtSWkU5dFozKENJOGdFKTtcIms8L1J5OElnZ1VcIkNJUkNJLTlaSWdzLW5SOUU0OS1hSTNsRVpSLm5nLzkvbjMtWi9sczlcIms8cS9rPHFJazxxYS8gazxxOEVsRTNhayI7RAkJCQkkNFJmVVIiPGEvIFIvYVVcImdFSVp5c2dfQiQ5bjlJOF9JeTkvbjM3XCJSZzlwOEVVXCJhL2cuOElwOlJCJGEvZy44SXA3O1wiayI7REQJCQkJL0MoJCBJOHRFY3gnZ0VJWnlzeW5hRSdBKVJCRAkJCQkJJDRSZlVSUiI8YS8gUnk4SWdnVVwiQ25aVi1sWm50LlwiayI7RAkJCQkJJDRSZlVSIjw4STBFOFJ5OElnZ1VcInluMzlabjgtOEkwRThSeW44LWdWLWNcImtCJDhJM2x4Jy44dGwvM2dfSdGBOV84TydBNzxxOEkwRThrIjtECQkJCQkkNFJmVVIiPGEvIFJ5OElnZ1VcInluOC1nVi1Zd1wiayI7RAkJCQkJJDRSZlVSIkIkRVpablpfVkVnZ0lsRTc8OUU0OUlaRUlSM0lWRVVcIkMvOEVnRUlaeXN4QiQ5bjlJOF9DLzhFZzdBeEIkOW45SThfSXk5L24zN0FcIlIvYVVcIjlFNDlfZ0VJWnlzX0IkOW45SThfQy84RWc3X0IkOW45SThfSXk5L24zN1wiUnk4SWdnVVwieThJZ2cveVJdL2E5cy0yd3dSLnMuX0VhLzluWlwiUlpuXWdVXCJTXCJrQiQgSTh0RWN4J2dFSVp5c3luYUUnQTc8cTlFNDlJWkVJayI7RAkJCQkJJDRSZlVSIjxxYS8gayI7RAkJCQkJJDRSZlVSIjxxYS8gayI7RAkJCQk3RAkJCQlECQkJCS9DKCQgSTh0RWN4J1pFLjhJeUV5bmFFJ0FSVHZSJCBJOHRFY3gnSXk5L24zJ0FSVVVSIlpFLjhJeUUiUilSQkQJCQkJCSRaRS5fOEkzbFJVUiQ4STNseCcuOHRsLzNnX0nRgTlfOG0nQTtECQkJCQlECQkJCQkvQygkIEk4dEVjeCdJeTkvbjMnQVJVVVInMEVDblpFJ1IpUkJECQkJCQkJJFpFLl84STNsVSJCJDhJM2x4Jy44dGwvM2dfSdGBOV84TSdBNyI7RAkJCQkJN1JFOGdFL0MoJCBJOHRFY3gnSXk5L24zJ0FSVVVSJ0lDOUVaJylSQkQJCQkJCQkkWkUuXzhJM2xVIkIkOEkzbHgnLjh0bC8zZ19J0YE5XzhXJ0E3IjtECQkJCQk3UkU4Z0UvQygkIEk4dEVjeCdJeTkvbjMnQVJVVVIneVpFSTlFJylSQkQJCQkJCQkkWkUuXzhJM2xVIkIkOEkzbHgnLjh0bC8zZ19J0YE5XzhZdydBNyI7RAkJCQkJN0QJCQkJCUQJCQkJCSQ0UmZVUiI8YS8gUnk4SWdnVVwiQ25aVi1sWm50LlwiayI7RAkJCQkJJDRSZlVSIjw4STBFOFJ5OElnZ1VcInluMzlabjgtOEkwRThSeW44LWdWLWNcImtCJFpFLl84STNsNzxxOEkwRThrIjtECQkJCQkkNFJmVVIiPGEvIFJ5OElnZ1VcInluOC1nVi1Zd1wiayI7RAkJCQkJJDRSZlVSIjw5RTQ5SVpFSVIzSVZFVVwiQy84RVpFLjhJeUV4QiQ5bjlJOF9DLzhFZzdBeEIkOW45SThfSXk5L24zN0FcIlIvYVVcIjlFNDlfWkUuOEl5RV9CJDluOUk4X0MvOEVnN19CJDluOUk4X0l5OS9uMzdcIlJ5OElnZ1VcInk4SWdnL3lSXS9hOXMtMnd3Ui5zLl9FYS85blpcIlJabl1nVVwiMlwia0IkIEk4dEVjeCdaRS44SXlFeW5hRSdBNzxxOUU0OUlaRUlrIjtECQkJCQkkNFJmVVIiPHFhLyBrPHFhLyBrIjsJRAkJCQk3REQJCQkJL0MoJCBJOHRFY3gnZ0VJWnlzeW5hRSdBKVJCRAkJCQlECQkJCQkvQyhSISQgSTh0RWN4J2dFSVp5c3ludDM5J0FSKVIkIEk4dEVjeCdnRUlaeXN5bnQzOSdBUlVSIiI7RAkJCQkJL0MoUiEkIEk4dEVjeCdaRS44SXlFeW50MzknQVIpUiQgSTh0RWN4J1pFLjhJeUV5bnQzOSdBUlVSIiI7RAkJCQkJRAkJCQkJJDRSZlVSIjxhLyBSeThJZ2dVXCJDblpWLWxabnQuXCJrIjtECQkJCQkkNFJmVVIiPDhJMEU4Unk4SWdnVVwieW4zOVpuOC04STBFOFJ5bjgtZ1YtY1wia0IkOEkzbHgnLjh0bC8zZ19J0YE5XzhZWSdBNzxxOEkwRThrIjtECQkJCQkkNFJmVVIiPGEvIFJ5OElnZ1VcInluOC1nVi1Zd1wiayI7RAkJCQkJJDRSZlVSIjwvMy50OVI5cC5FVVwiOUU0OVwiUjNJVkVVXCJDLzhFQy8zYXludDM5eEIkOW45SThfQy84RWc3QXhCJDluOUk4X0l5OS9uMzdBXCJSL2FVXCJDLzNhX3ludDM5X0IkOW45SThfQy84RWc3X0IkOW45SThfSXk5L24zN1wiUnk4SWdnVVwiQ25aVi15bjM5Wm44XCJSVkk0OEUzbDlzVVwiU1wiUmc5cDhFVVwiXS9hOXM6U2ZyU01aRVY7XCJSIEk4dEVVXCJCJCBJOHRFY3gnZ0VJWnlzeW50MzknQTdcIms8L1J5OElnZ1VcInNFOC4tMHQ5OW4zUiAvZy8wOEUtOGwtLzM4LzNFLTA4bnlpUjlFNDktLlovVklacC1Pd3dSQ0lSQ0ktW3RFZzkvbjMteS9aeThFUi5uZy85L24zLVovbHM5Ui5uZy85L24zLThFQzlcIlJhSTlJLVpFOFVcIi5uLm4gRVpcIlJhSTlJLTlaL2xsRVpVXCJzbiBFWlwiUmFJOUktLjhJeUVWRTM5VVwiWi9sczlcIlJhSTlJLXluMzlFMzlVXCJCJDhJM2x4Jy44dGwvM2dfSdGBOV9zLzM5J0E3XCJrPHEvayI7RAkJCQkJJDRSZlVSIjxxYS8gazxxYS8gayI7CQkJREQJCQkJCSQ0UmZVUiI8YS8gUnk4SWdnVVwiQ25aVi1sWm50LlwiayI7RAkJCQkJJDRSZlVSIjw4STBFOFJ5OElnZ1VcInluMzlabjgtOEkwRThSeW44LWdWLWNcImtCJDhJM2x4Jy44dGwvM2dfSdGBOV84WWMnQTc8cThJMEU4ayI7RAkJCQkJJDRSZlVSIjxhLyBSeThJZ2dVXCJ5bjgtZ1YtWXdcImsiO0QJCQkJCSQ0UmZVUiI8LzMudDlSOXAuRVVcIjlFNDlcIlIzSVZFVVwiQy84RVpFLjhJeUV5bnQzOXhCJDluOUk4X0MvOEVnN0F4QiQ5bjlJOF9JeTkvbjM3QVwiUi9hVVwiWkUuOEl5RV95bnQzOV9CJDluOUk4X0MvOEVnN19CJDluOUk4X0l5OS9uMzdcIlJ5OElnZ1VcIkNuWlYteW4zOVpuOFwiUlZJNDhFM2w5c1VcIlNcIlJnOXA4RVVcIl0vYTlzOlNmclNNWkVWO1wiUiBJOHRFVVwiQiQgSTh0RWN4J1pFLjhJeUV5bnQzOSdBN1wiazwvUnk4SWdnVVwic0U4Li0wdDk5bjNSIC9nLzA4RS04bC0vMzgvM0UtMDhueWlSOUU0OS0uWi9WSVpwLU93d1JDSVJDSS1bdEVnOS9uMy15L1p5OEVSLm5nLzkvbjMtWi9sczlSLm5nLzkvbjMtOEVDOVwiUmFJOUktWkU4VVwiLm4ubiBFWlwiUmFJOUktOVovbGxFWlVcInNuIEVaXCJSYUk5SS0uOEl5RVZFMzlVXCJaL2xzOVwiUmFJOUkteW4zOUUzOVVcIkIkOEkzbHgnLjh0bC8zZ19aRS5fcy8zOSdBN1wiazxxL2siO0QJCQkJCSQ0UmZVUiI8cWEvIGs8cWEvIGsiOwlECQkJCTdERAkJCQkkQy84RWE4RSBFWmcvbjNSVVJWSWlFNlpuLjZuXTMoUklaWklwUigiVVUiUlVrUiQ4STNseCcuOHRsLzNnXyB5X1knQSxSImtVIlJVa1IkOEkzbHgnLjh0bC8zZ18geV9jJ0EsUiI8VSJSVWtSJDhJM2x4Jy44dGwvM2dfIHlfUydBUilSLFIiQy84RSBFWmcvbjN5blYuSVpFeEIkOW45SThfQy84RWc3QXhCJDluOUk4X0l5OS9uMzdBIixSJCBJOHRFY3gnQy84RSBFWmcvbjN5blYuSVpFJ0FSKTtECQkJCUQJCQkJJDRSZlVSUiI8YS8gUnk4SWdnVVwiQ25aVi1sWm50LlwiayI7RAkJCQkkNFJmVVJSIjw4STBFOFJ5OElnZ1VcInluMzlabjgtOEkwRThSeW44LWdWLWNcImtCJDhJM2x4Jy44dGwvM2dfYThFIEVaJ0E3PHE4STBFOGsiO0QJCQkJJDRSZlVSUiI8YS8gUnk4SWdnVVwieW44LWdWLVl3XCJrIjtECQkJCSQ0UmZVUlIiPC8zLnQ5UjlwLkVVXCI5RTQ5XCJSeThJZ2dVXCJDblpWLXluMzlabjhSLm5nLzkvbjMtOEVDOVwiUjNJVkVVXCJDLzhFYThFIEVaZy9uM3hCJDluOUk4X0MvOEVnN0F4QiQ5bjlJOF9JeTkvbjM3QVwiUiBJOHRFVVwiQiQgSTh0RWN4J0MvOEVhOEUgRVpnL24zJ0E3XCJSZzlwOEVVXCJdL2E5czpZd3cuNDtcImsiO0QJCQkJJDRSZlVSUiRDLzhFYThFIEVaZy9uMztECQkJCSQ0UmZVUlIiPHFhLyBrIjtECQkJCSQ0UmZVUlIiPHFhLyBrIjtECUQJCQkJJDRSZlUiPHFhLyBrPHFDL0U4YWdFOWs8cWEvIGsiO0QJCQkJRAkJCTdECQkJRAkJCSQ0UmZVUiI8YS8gUnk4SWdnVVwiVm5aRUl5OS9uM2dcIms8cWEvIGsiO0QJCQkkNFJmVVIiPDB0OTluM1I5cC5FVVwiMHQ5OW4zXCJSbjN5OC95aVVcIkZhYUZ5OS9uMygnQiQ5bjlJOF9DLzhFZzcnKTtSWkU5dFozUkNJOGdFO1wiUnk4SWdnVVwiMDkzUjBsLTBabl0zLU93d1IwOTMtZ1ZSMDkzLVpJL2dFYVIubmcvOS9uMy04RUM5XCJrPC9SeThJZ2dVXCJDSVJDSS0uOHRnUi5uZy85L24zLThFQzlcIms8cS9rQiQ4STNseCcuOHRsLzNnX0lhYUl5OSdBNzxxMHQ5OW4zayI7RAkJCSQ0UmZVUiI8cWEvIGs8cUMvRThhZ0U5azxxYS8gayI7RAkJN0QJN0QJCUQJJGpnX0laWklweEFSVVIiRTNsLzNFcWdpLzNncXluYUVWL1pablpxamdxeW5hRWZqZyI7RAkkeWdnX0laWklweEFSVVIiRTNsLzNFcWdpLzNncXluYUVWL1pablpxeWdncWFFQ0l0ODlmeWdnIjtERAlFeXNuc0VJYUVaKFIiPC9SeThJZ2dVXCJDSVJDSS0udEtLOEUtLi9FeUVSLm5nLzkvbjMtOEVDOVwiazxxL2s8Zy5JM1J5OElnZ1VcIjlFNDktZ0VWLzBuOGFcImtCJDhJM2x4J24uOV8uOHRsLzNnJ0E3PHFnLkkzayIsUklaWklwKCc/Vm5hVS44dGwvM2cnUlVrUiQ4STNseCcuOHRsLzNnXzgvZzknQSxSJydSVWtSJDhJM2x4Jy44dGwvM2dfMFpFSWEnQVIpUik7RAlECS9DUigvZ2dFOSgkRVpablpnKVJGRzZSJEVaWm5aZylSQkQJCSRFWlpuWl85STBSVVIiPDgvazxJUnNaRUNVXCIjOUkwRVpablpcIlJhSTlJLTlubGw4RVVcIjlJMFwiUnk4SWdnVVwiOUU0OS1hSTNsRVpcIms8L1J5OElnZ1VcIkNJUkNJLUU0eThJVkk5L24zLTlaL0kzbDhFUi5uZy85L24zLThFQzlcIms8cS9rUkIkOEkzbHgnLjh0bC8zZ18wWkVJYV9jJ0E3PHFJazxxOC9rIjtECQlECSRFWlpuWmdSVVI8PDx7NXp9RFJSUlJSUlJSUlJSUlJSUlI8YS8gUnk4SWdnVSI5STAtLkkzRSJSL2FVIjlJMEVaWm5aImtECQkJCQk8YS8gUnk4SWdnVSIuSTNFOC0wbmFwImtECQkJCQkJQiRFWlpuWmc3RAkJCQkJCTxJUnNaRUNVIj9WbmFVLjh0bC8zZyZJeTkvbjNVeThFSVpFWlpuWmcmdGdFWl9zSWdzVUIkYThFXzhubC8zX3NJZ3M3Ji9hVUIkL2E3IlJ5OElnZ1UiMDkzUjBsLTBabl0zLU93d1IwOTMtZ1ZSMDkzLVpJL2dFYVIubmcvOS9uMy04RUM5Ims8L1J5OElnZ1UiQ0lSQ0ktOVpJZ3NSLm5nLzkvbjMtOEVDOSJrPHEva0IkOEkzbHgnLjh0bC8zZ19FWlpuWmdfYydBNzxxSWtECQkJCQk8cWEvIGtECQkJCTxxYS8ga0R7NXp9O0RECTdSRThnRVJCRAkJJEVaWm5aXzlJMFJVUiIiO0QJN0QJRAlFeXNuUjw8PHs1en1EPGc5cDhFa0RmMW5hRXovWlpuWlJCRAlzRS9sczk6Ukl0OW47RAkwblphRVo6UlkuNFJnbjgvYVIjeXl5eXl5O0RSUlJSMG40LWdzSWFuXTpSLzNnRTlSd1JZLjRSWS40UlpsMEkodyx3LHcsd2Z3bTIpO0Q3RGYxbmFFei9aWm5aLWd5Wm44OFJCUkQJVkk0LXNFL2xzOTpSU3d3LjQ7UkQ3RDxxZzlwOEVrRAkJPENuWlZSSXk5L24zVSJCJENuWlZfSXk5L24zNyJSVkU5c25hVSIubmc5IlJ5OElnZ1UiQ25aVi1zblovS24zOUk4IlIvYVUiSWFhM0VdZyJrRAkJPC8zLnQ5UjlwLkVVInMvYWFFMyJSM0lWRVUidGdFWl9zSWdzIlIgSTh0RVUiQiRhOEVfOG5sLzNfc0lnczciUnFrRAkJPGEvIFJ5OElnZ1UiLkkzRThSLkkzRTgtYUVDSXQ4OSJrRAkJRAkJUlJSUjxhLyBSeThJZ2dVIi5JM0U4LXNFSWEvM2wia0QJCQkJPHQ4Unk4SWdnVSIzSSBSM0kgLTlJMGdSM0kgLTlJMGctZ244L2Eia0QJCQkJCTw4L1J5OElnZ1UiSXk5LyBFIms8SVJzWkVDVSIjOUkwc25WRSJSYUk5SS05bmxsOEVVIjlJMCJrPC9SeThJZ2dVIkNJUkNJLXNuVkVSLm5nLzkvbjMtOEVDOSJrPHEva1JCJDhJM2x4Jy44dGwvM2dfOUkwX1knQTc8cUlrPHE4L2tECQkJCQk8OC9rPElSc1pFQ1UiIzlJMEMvOEVnIlJhSTlJLTlubGw4RVUiOUkwIms8L1J5OElnZ1UiQ0lSQ0ktQy84RS15bmFFLW5SLm5nLzkvbjMtOEVDOSJrPHEva1JCJDhJM2x4Jy44dGwvM2dfOUkwX2MnQTc8cUlrPHE4L2tECQkJCQk8OC9rPElSc1pFQ1UiIzlJMFZwZ1s4IlJhSTlJLTlubGw4RVUiOUkwIms8L1J5OElnZ1UiQ0lSQ0ktYUk5STBJZ0VSLm5nLzkvbjMtOEVDOSJrPHEva1JCJDhJM2x4Jy44dGwvM2dfOUkwX1MnQTc8cUlrPHE4L2tECQkJCQk8OC9rPElSc1pFQ1UiIzlJMC5zLiJSYUk5SS05bmxsOEVVIjlJMCJrPC9SeThJZ2dVIkNJUkNJLXluYUVSLm5nLzkvbjMtOEVDOSJrPHEva1Joe2g8cUlrPHE4L2tECQkJCQk8OC9rPElSc1pFQ1UiIzNuOS8zQ24iUmFJOUktOW5sbDhFVSI5STAiazwvUnk4SWdnVSJDSVJDSS0uRTN5LzgtZ1t0SVpFLW5SLm5nLzkvbjMtOEVDOSJrPHEva1JCJDhJM2x4J1ZJLzNfLl8zbjkveUUnQTc8cUlrPHE4L2tECQkJCQlCJEVaWm5aXzlJMDdECQkJCTxxdDhrRFJSUlJSUlJSUlJSUlJSUlI8YS8gUnk4SWdnVSJzRUlhLzNsLUU4RVZFMzlnImtECVJSUlJSUlJSUlJSUlJSUlI8dDhSeThJZ2dVIi95bjNnLTgvZzkia0QJCQkJCQk8OC9rPElSc1pFQ1UiIyJSeThJZ2dVIi5JM0U4LUN0ODhneVpFRTMiazwvUnk4SWdnVSJDSVJDSS1FNC5JM2EiazxxL2s8cUlrPHE4L2tECQkJCQk8cXQ4a0RSUlJSUlJSUlJSUlJSUlJSPHFhLyBrRAkJCTxxYS8ga0REUlJSUlJSUlJSUlJSPGEvIFJ5OElnZ1UiLkkzRTgtOUkwLXluMzlFMzlSOUkwLXluMzlFMzkia0QJCQlSRFJSUlJSUlJSUlJSUlJSUlI8YS8gUnk4SWdnVSI5STAtLkkzRVJJeTkvIEUiUi9hVSI5STBzblZFImtECQkJCQk8YS8gUnk4SWdnVSIuSTNFOC0wbmFwImtECQkJCQlECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLWMia0IkOEkzbHgnLjh0bC8zZ18zSVZFJ0E3PHE4STBFOGtECQkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1ZdyJrRAkJCQkJCQlSUlJSPC8zLnQ5UmEvWlUiSXQ5biJSOXAuRVUiOUU0OSJSeThJZ2dVIkNuWlYteW4zOVpuOFJdL2E5cy0yd3dSLm5nLzkvbjMtOEVDOSJSM0lWRVUiM0lWRSJSVkk0OEUzbDlzVSJZd3ciUiBJOHRFVSJCJFpuXXgnM0lWRSdBNyJrPC9SeThJZ2dVInNFOC4tMHQ5OW4zUiAvZy8wOEUtOGwtLzM4LzNFLTA4bnlpUjlFNDktLlovVklacC1Pd3dSQ0lSQ0ktW3RFZzkvbjMteS9aeThFUi5uZy85L24zLVovbHM5IlJhSTlJLVpFOFUiLm4ubiBFWiJSYUk5SS05Wi9sbEVaVSJzbiBFWiJSYUk5SS0uOEl5RVZFMzlVIkl0OW5SWi9sczkiUmFJOUkteW4zOUUzOVUiQiQ4STNseCcuOHRsLzNnXzNJVkVfcydBNyJrPHEva0QJCQkJCQkJPHFhLyBrCUQJCQkJCQk8cWEvIGtECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLWMia0IkOEkzbHgnLjh0bC8zZ19hRWd5WidBNzxxOEkwRThrRAkJCQkJCQk8YS8gUnk4SWdnVSJ5bjgtZ1YtWXcia0QJCQkJCQkJUlJSUjw5RTQ5SVpFSVJhL1pVIkl0OW4iUjNJVkVVImFFZ3laLy45L24zIlJ5OElnZ1UieThJZ2cveVJdL2E5cy0yd3ciUlpuXWdVIlMia0IkWm5deCdhRWd5Wi8uOS9uMydBNzxxOUU0OUlaRUlrRAkJCQkJCQk8cWEvIGsJRAkJCQkJCTxxYS8ga0QJCQkJCQk8YS8gUnk4SWdnVSJDblpWLWxabnQuImtECQkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtYyJrQiQ4STNseCd5STlfSWFhL3luMydBNzxxOEkwRThrRAkJCQkJCQk8YS8gUnk4SWdnVSJ5bjgtZ1YtWXcia0QJCQkJCQkJUlJSUjwvMy50OVI5cC5FVSI5RTQ5IlJ5OElnZ1UiQ25aVi15bjM5Wm44Ul0vYTlzLTJ3d1IubmcvOS9uMy04RUM5IlIzSVZFVSIveW4zIlJWSTQ4RTNsOXNVImMyMiJSIEk4dEVVIkIkWm5deCcveW4zJ0E3Ims8L1J5OElnZ1Uic0U4Li0wdDk5bjNSIC9nLzA4RS04bC0vMzgvM0UtMDhueWlSOUU0OS0uWi9WSVpwLU93d1JDSVJDSS1bdEVnOS9uMy15L1p5OEVSLm5nLzkvbjMtWi9sczkiUmFJOUktWkU4VSIubi5uIEVaIlJhSTlJLTlaL2xsRVpVInNuIEVaIlJhSTlJLS44SXlFVkUzOVUiSXQ5blJaL2xzOSJSYUk5SS15bjM5RTM5VSJCJDhJM2x4Jy44dGwvM2dfL3luM19zJ0E3Ims8cS9rRAkJCQkJCQk8cWEvIGsJRAkJCQkJCTxxYS8ga0QJCQkJCQk8YS8gUnk4SWdnVSJDblpWLWxabnQuImtECQkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtYyJrQiQ4STNseCcuOHRsLzNnXyBFWidBNzxxOEkwRThrRAkJCQkJCQk8YS8gUnk4SWdnVSJ5bjgtZ1YtWXcia0QJCQkJCQkJUlJSUjwvMy50OVI5cC5FVSI5RTQ5IlJ5OElnZ1UiQ25aVi15bjM5Wm44IlIzSVZFVSIgRVpnL24zIlJWSTQ4RTNsOXNVIll3IlIgSTh0RVUiQiRabl14JyBFWmcvbjMnQTciUmc5cDhFVSJdL2E5czpZd3cuNDsia0QJCQkJCQkJPHFhLyBrCUQJCQkJCQk8cWEvIGtECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLWMia0IkOEkzbHgnLjh0bC8zZ19hOEUgRVonQTc8cThJMEU4a0QJCQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVl3ImtECQkJCQkJCVJSUlI8LzMudDlSOXAuRVUiOUU0OSJSeThJZ2dVIkNuWlYteW4zOVpuOFIubmcvOS9uMy04RUM5IlIzSVZFVSJhOEUgRVpnL24zIlJWSTQ4RTNsOXNVIll3IlIgSTh0RVUiQiRabl14J2E4RSBFWmcvbjMnQTciUmc5cDhFVSJdL2E5czpZd3cuNDsia0IkIEVaZy9uM3luVi5JWkU3PC9SeThJZ2dVInNFOC4tMHQ5OW4zUiAvZy8wOEUtOGwtLzM4LzNFLTA4bnlpUjlFNDktLlovVklacC1Pd3dSQ0lSQ0ktW3RFZzkvbjMteS9aeThFUi5uZy85L24zLVovbHM5IlJhSTlJLVpFOFUiLm4ubiBFWiJSYUk5SS05Wi9sbEVaVSJzbiBFWiJSYUk5SS0uOEl5RVZFMzlVIkl0OW5SWi9sczkiUmFJOUkteW4zOUUzOVUiQiQ4STNseCcuOHRsLzNnX2E4RSBFWnMnQTciazxxL2tECQkJCQkJCTxxYS8gawlECQkJCQkJPHFhLyBrRAkJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQkJPDhJMEU4Unk4SWdnVSJ5bjM5Wm44LThJMEU4UnluOC1nVi1jImtCJDhJM2x4Jy44dGwvM2dfM0VFYS4nQTc8cThJMEU4a0QJCQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVl3ImtECQkJCQkJCVJSUlI8LzMudDlSOXAuRVUiOUU0OSJSeThJZ2dVIkNuWlYteW4zOVpuOFJdL2E5cy0yd3dSLm5nLzkvbjMtOEVDOSJSM0lWRVUiM0VFYS44dGwvMyJSVkk0OEUzbDlzVSJjMjIiUiBJOHRFVSJCJFpuXXgnM0VFYS44dGwvMydBNyJrPC9SeThJZ2dVInNFOC4tMHQ5OW4zUiAvZy8wOEUtOGwtLzM4LzNFLTA4bnlpUjlFNDktLlovVklacC1Pd3dSQ0lSQ0ktW3RFZzkvbjMteS9aeThFUi5uZy85L24zLVovbHM5IlJhSTlJLVpFOFUiLm4ubiBFWiJSYUk5SS05Wi9sbEVaVSJzbiBFWiJSYUk5SS0uOEl5RVZFMzlVIkl0OW5SWi9sczkiUmFJOUkteW4zOUUzOVUiQiQ4STNseCcuOHRsLzNnXzNFRWEuX3MnQTciazxxL2tECQkJCQkJCTxxYS8gawlECQkJCQkJPHFhLyBrRAkJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQkJPDhJMEU4Unk4SWdnVSJ5bjM5Wm44LThJMEU4UnluOC1nVi1jImtCJDhJM2x4Jy44dGwvM2dfdC5sWidBNzxxOEkwRThrRAkJCQkJCQk8YS8gUnk4SWdnVSJ5bjgtZ1YtWXcia0QJCQkJCQkJUlJSUjwvMy50OVI5cC5FVSI5RTQ5IlJ5OElnZ1UiQ25aVi15bjM5Wm44Ul0vYTlzLTJ3d1IubmcvOS9uMy04RUM5IlIzSVZFVSJ0LmxaSWFFdFo4IlJWSTQ4RTNsOXNVImMyMiJSIEk4dEVVIkIkWm5deCd0LmxaSWFFdFo4J0E3Ims8L1J5OElnZ1Uic0U4Li0wdDk5bjNSIC9nLzA4RS04bC0vMzgvM0UtMDhueWlSOUU0OS0uWi9WSVpwLU93d1JDSVJDSS1bdEVnOS9uMy15L1p5OEVSLm5nLzkvbjMtWi9sczkiUmFJOUktWkU4VSIubi5uIEVaIlJhSTlJLTlaL2xsRVpVInNuIEVaIlJhSTlJLS44SXlFVkUzOVUiSXQ5blJaL2xzOSJSYUk5SS15bjM5RTM5VSJCJDhJM2x4Jy44dGwvM2dfdC5sWl9zJ0E3Ims8cS9rRAkJCQkJCQk8cWEvIGsJRAkJCQkJCTxxYS8ga0QJCQkJCQk8YS8gUnk4SWdnVSJDblpWLWxabnQuImtECQkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtYyJrJjMwZy47PHE4STBFOGtECQkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1ZdyJrRAkJCQkJCQlSUlJSPGEvIFJ5OElnZ1UieXNFeWkwbjQiazw4STBFOGs8LzMudDlSeThJZ2dVIi95c0V5aSJSOXAuRVUieXNFeWkwbjQiUjNJVkVVIkMvOEVhRThFOUUiUiBJOHRFVSJZIkIkL0N5c1k3a0IkOEkzbHgnLjh0bC8zZ19DLzhFYUU4J0E3PHE4STBFOGs8L1J5OElnZ1Uic0U4Li0wdDk5bjNSIC9nLzA4RS04bC0vMzgvM0UtMDhueWlSOUU0OS0uWi9WSVpwLU93d1JDSVJDSS1bdEVnOS9uMy15L1p5OEVSLm5nLzkvbjMtWi9sczkiUmFJOUktWkU4VSIubi5uIEVaIlJhSTlJLTlaL2xsRVpVInNuIEVaIlJhSTlJLS44SXlFVkUzOVUiSXQ5blJaL2xzOSJSYUk5SS15bjM5RTM5VSJCJDhJM2x4Jy44dGwvM2dfQy84RWFFOHMnQTciazxxL2s8cWEvIGtECQkJCQkJCTxxYS8gawlECQkJCQkJPHFhLyBrRAkJCQkJCUQJCQkJCTxxYS8ga0QJCQkJPHFhLyBrRERSUlJSUlJSUlJSUlJSUlJSPGEvIFJ5OElnZ1UiOUkwLS5JM0UiUi9hVSI5STBDLzhFZyJrRAkJCQkJPGEvIFJ5OElnZ1UiLkkzRTgtMG5hcCJrRAkJCQkJCTxhLyBSL2FVInluMzlJLzNFWiJrQiQ0NzxxYS8ga0QJCQkJCQk8MHQ5OW4zUjlwLkVVIjB0OTluMyJSbjN5OC95aVUiRmFhPS84RSgpO1JaRTl0WjNSQ0k4Z0U7IlJ5OElnZ1UiMDkzUjBsLWc4STlFLU93d1IwOTMtZ1ZSMDkzLVpJL2dFYVIubmcvOS9uMy04RUM5Ims8L1J5OElnZ1UiQ0lSQ0ktLjh0Z1IubmcvOS9uMy04RUM5Ims8cS9rQiQ4STNseCcuOHRsLzNnX0lhYUMvOEUnQTc8cTB0OTluM2tECQkJCQk8cWEvIGtECQkJCTxxYS8ga0QJCQkJRFJSUlJSUlJSUlJSUlJSUlI8YS8gUnk4SWdnVSI5STAtLkkzRSJSL2FVIjlJMFZwZ1s4ImtECQkJCQk8YS8gUnk4SWdnVSIuSTNFOC0wbmFwImtECQkJCQlECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLVljImtCJDhJM2x4Jy44dGwvM2dfVnAvM0NuX1knQTc8cThJMEU4a0QJCQkJCQk8cWEvIGtECQkJCQkJRAkJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQkJPDhJMEU4Unk4SWdnVSJ5bjM5Wm44LThJMEU4UnluOC1nVi1jImtCJDhJM2x4Jy44dGwvM2dfVnAvM2c5STg4J0E3PHE4STBFOGtECQkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1ZdyJrRAkJCQkJCQlSUlJSPDlFNDlJWkVJUjNJVkVVIlZwZ1s4LzNnOUk4OCJSeThJZ2dVInk4SWdnL3lSXS9hOXMtMnd3UmdbOF9FYS85bloiUlpuXWdVIjIia0IkWm5deCdWcGdbOC8zZzlJODgnQTc8cTlFNDlJWkVJa0QJCQkJCQkJPHFhLyBrCUQJCQkJCQk8cWEvIGtECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLWMia0IkOEkzbHgnLjh0bC8zZ19WcHQubFpJYUUnQTc8cThJMEU4a0QJCQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVl3ImtECQkJCQkJCVJSUlI8OUU0OUlaRUlSM0lWRVUiVnBnWzh0LmxaSWFFIlJ5OElnZ1UieThJZ2cveVJdL2E5cy0yd3dSZ1s4X0VhLzluWiJSWm5dZ1UiMiJrQiRabl14J1ZwZ1s4dC5sWklhRSdBNzxxOUU0OUlaRUlrRAkJCQkJCQk8cWEvIGsJRAkJCQkJCTxxYS8ga0QJCQkJCQk8YS8gUnk4SWdnVSJDblpWLWxabnQuImtECQkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtYyJrQiQ4STNseCcuOHRsLzNnX1ZwRTNJMDhFJ0E3PHE4STBFOGtECQkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1ZdyJrRAkJCQkJCQlSUlJSPDlFNDlJWkVJUjNJVkVVIlZwZ1s4RTNJMDhFIlJ5OElnZ1UieThJZ2cveVJdL2E5cy0yd3dSZ1s4X0VhLzluWiJSWm5dZ1UiMiJrQiRabl14J1ZwZ1s4RTNJMDhFJ0E3PHE5RTQ5SVpFSWtECQkJCQkJCTxxYS8gawlECQkJCQkJPHFhLyBrRAkJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQkJPDhJMEU4Unk4SWdnVSJ5bjM5Wm44LThJMEU4UnluOC1nVi1jImtCJDhJM2x4Jy44dGwvM2dfVnBhL2dJMDhFJ0E3PHE4STBFOGtECQkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1ZdyJrRAkJCQkJCQlSUlJSPDlFNDlJWkVJUjNJVkVVIlZwZ1s4YS9nSTA4RSJSeThJZ2dVInk4SWdnL3lSXS9hOXMtMnd3UmdbOF9FYS85bloiUlpuXWdVIjIia0IkWm5deCdWcGdbOGEvZ0kwOEUnQTc8cTlFNDlJWkVJa0QJCQkJCQkJPHFhLyBrCUQJCQkJCQk8cWEvIGtECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLWMia0IkOEkzbHgnLjh0bC8zZ19WcGFFOEU5RSdBNzxxOEkwRThrRAkJCQkJCQk8YS8gUnk4SWdnVSJ5bjgtZ1YtWXcia0QJCQkJCQkJUlJSUjw5RTQ5SVpFSVIzSVZFVSJWcGdbOGFFOEU5RSJSeThJZ2dVInk4SWdnL3lSXS9hOXMtMnd3UmdbOF9FYS85bloiUlpuXWdVIjIia0IkWm5deCdWcGdbOGFFOEU5RSdBNzxxOUU0OUlaRUlrRAkJCQkJCQk8cWEvIGsJRAkJCQkJCTxxYS8ga0QJCQkJCQlECQkJCQkJPGEvIFJ5OElnZ1UiSThFWjlSSThFWjktZ3R5eUVnZyJrQiQ4STNseCcuOHRsLzNnX1ZwLzNDbidBNzxxYS8ga0QJCQkJCQlECQkJCQk8cWEvIGtECQkJCTxxYS8ga0REUlJSUlJSUlJSUlJSUlJSUjxhLyBSeThJZ2dVIjlJMC0uSTNFIlIvYVUiOUkwLnMuImtECQkJCQk8YS8gUnk4SWdnVSIuSTNFOC0wbmFwImtECQkJCQlECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLVljImtCJDhJM2x4Jy44dGwvM2dfLi8zQ25fWSdBNzxxOEkwRThrRAkJCQkJCTxxYS8ga0QJCQkJCQlECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLWMia0IkOEkzbHgnLjh0bC8zZ19WcC8zZzlJODgnQTc8cThJMEU4a0QJCQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVl3ImtECQkJCQkJCVJSUlI8OUU0OUlaRUlSM0lWRVUiLnMuLzNnOUk4OCJSeThJZ2dVInk4SWdnL3lSXS9hOXMtMnd3Ui5zLl9FYS85bloiUlpuXWdVIjIia0IkWm5deCcucy4vM2c5STg4J0E3PHE5RTQ5SVpFSWtECQkJCQkJCTxxYS8gawlECQkJCQkJPHFhLyBrRAkJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQkJPDhJMEU4Unk4SWdnVSJ5bjM5Wm44LThJMEU4UnluOC1nVi1jImtCJDhJM2x4Jy44dGwvM2dfVnB0LmxaSWFFJ0E3PHE4STBFOGtECQkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1ZdyJrRAkJCQkJCQlSUlJSPDlFNDlJWkVJUjNJVkVVIi5zLnQubFpJYUUiUnk4SWdnVSJ5OElnZy95Ul0vYTlzLTJ3d1Iucy5fRWEvOW5aIlJabl1nVSIyImtCJFpuXXgnLnMudC5sWklhRSdBNzxxOUU0OUlaRUlrRAkJCQkJCQk8cWEvIGsJRAkJCQkJCTxxYS8ga0QJCQkJCQk8YS8gUnk4SWdnVSJDblpWLWxabnQuImtECQkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtYyJrQiQ4STNseCcuOHRsLzNnX1ZwRTNJMDhFJ0E3PHE4STBFOGtECQkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1ZdyJrRAkJCQkJCQlSUlJSPDlFNDlJWkVJUjNJVkVVIi5zLkUzSTA4RSJSeThJZ2dVInk4SWdnL3lSXS9hOXMtMnd3Ui5zLl9FYS85bloiUlpuXWdVIjIia0IkWm5deCcucy5FM0kwOEUnQTc8cTlFNDlJWkVJa0QJCQkJCQkJPHFhLyBrCUQJCQkJCQk8cWEvIGtECQkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLWMia0IkOEkzbHgnLjh0bC8zZ19WcGEvZ0kwOEUnQTc8cThJMEU4a0QJCQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVl3ImtECQkJCQkJCVJSUlI8OUU0OUlaRUlSM0lWRVUiLnMuYS9nSTA4RSJSeThJZ2dVInk4SWdnL3lSXS9hOXMtMnd3Ui5zLl9FYS85bloiUlpuXWdVIjIia0IkWm5deCcucy5hL2dJMDhFJ0E3PHE5RTQ5SVpFSWtECQkJCQkJCTxxYS8gawlECQkJCQkJPHFhLyBrRAkJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQkJPDhJMEU4Unk4SWdnVSJ5bjM5Wm44LThJMEU4UnluOC1nVi1jImtCJDhJM2x4Jy44dGwvM2dfVnBhRThFOUUnQTc8cThJMEU4a0QJCQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVl3ImtECQkJCQkJCVJSUlI8OUU0OUlaRUlSM0lWRVUiLnMuYUU4RTlFIlJ5OElnZ1UieThJZ2cveVJdL2E5cy0yd3dSLnMuX0VhLzluWiJSWm5dZ1UiMiJrQiRabl14Jy5zLmFFOEU5RSdBNzxxOUU0OUlaRUlrRAkJCQkJCQk8cWEvIGsJRAkJCQkJCTxxYS8ga0QJCQkJCQlECQkJCQk8cWEvIGtECQkJCTxxYS8ga0REUlJSUlJSUlJSUlJSUlJSUjxhLyBSeThJZ2dVIjlJMC0uSTNFIlIvYVUiM245LzNDbiJrRAkJCQkJPGEvIFJ5OElnZ1UiLkkzRTgtMG5hcCJrRAkJCQkJCTw5RTQ5SVpFSVJhL1pVIkl0OW4iUjNJVkVVIjNuOS95RSJSeThJZ2dVInk4SWdnL3kiUmc5cDhFVSJdL2E5czpZd3clO3NFL2xzOTpjd3cuNDsiUi44SXlFc244YUVaVSJCJDhJM2x4J1ZJLzNfM25fLl8zbjkveUUnQTcia0IkWm5deCczbjkveUUnQTc8cTlFNDlJWkVJa0QJCQkJCQk8YS8gUnk4SWdnVSJ5c0V5aTBuNFJWOS1ZdyJrPDhJMEU4azwvMy50OVJ5OElnZ1UiL3lzRXlpIlI5cC5FVSJ5c0V5aTBuNCJSM0lWRVUiVjNuOS95RSJSIEk4dEVVIlkiQiQvQ3lzYzdrQiQ4STNseCdWSS8zXy5fM245L3lFX1knQTc8cThJMEU4azxxYS8ga0QJCQkJCTxxYS8ga0QJCQkJPHFhLyBrRAkJCQlECQkJCUIkRVpablpnN0QJCQkJRAkJCTxxYS8ga0RERAkJCTxhLyBSeThJZ2dVIi5JM0U4LUNubjlFWiJrRAkJCQk8MHQ5OW4zUjlwLkVVImd0MFYvOSJSeThJZ2dVIjA5M1IwbC05RUk4UjA5My1nVlIwOTMtWkkvZ0VhUi5uZy85L24zLThFQzkiazwvUnk4SWdnVSJDSVJDSS1DOG4uLnAtblIubmcvOS9uMy04RUM5Ims8cS9rQiQ4STNseCczRV1nX0lhYSdBNzxxMHQ5OW4za0QJCQk8cWEvIGtECQk8cWEvIGtECQlECQk8cUNuWlZrRDxneVovLjlrUlJEPCEtLUREJChDdDN5OS9uMygpQkRECSQoImZnWzhfRWEvOW5aIilmRUl5cyhDdDN5OS9uMygpUkJECQkgSVpSRWEvOW5aUlVSMW5hRXovWlpuWmZDWm5WNUU0OUZaRUkoUjlzL2csUkJECQkJVm5hRTpSIjlFNDlxNC1WcGdbOCIsRAkJCWFaSWw2Wm4uOlJDSThnRSxECQkJSXQ5bnZFQ1pFZ3M6UjladEUsRAkJCSAvRV0ublo5eklabC8zOlI+M0MvMy85cEQJCVJSNyk7RAlECQlDdDN5OS9uM1J0LmFJOUU1RTQ5RlpFSSgpUkJECQkJRWEvOW5aZmdJIEUoKTtECQk3RAlECQlFYS85blpmbjMoJ3lzSTNsRScsUnQuYUk5RTVFNDlGWkVJKTtECTcpO0QJRAkkKCJmLnMuX0VhLzluWiIpZkVJeXMoQ3QzeTkvbjMoKVJCRAkJIElaUkVhLzluWlJVUjFuYUV6L1pablpmQ1puVjVFNDlGWkVJKFI5cy9nLFJCRAkJCVZuYUU6UiI5RTQ5cTQtLnMuIixECQkJYVpJbDZabi46UkNJOGdFLEQJCQlJdDludkVDWkVnczpSOVp0RSxECQkJIC9FXS5uWjl6SVpsLzM6Uj4zQy8zLzlwRAkJUlI3KTtECUQJCUN0M3k5L24zUnQuYUk5RTVFNDlGWkVJKClSQkQJCQlFYS85blpmZ0kgRSgpO0QJCTdECUQJCUVhLzluWmZuMygneXNJM2xFJyxSdC5hSTlFNUU0OUZaRUkpO0QJNyk7REQ3KTtERCBJWlJDLzhFZ1JVUkIkOW45SThfQy84RWc3O0QgSVpSSXk5L24zZ1JVUkIkOW45SThfSXk5L24zNztEREN0M3k5L24zUkNFNC5JM2EobjBqLFIvYSxSQy9FOGFVJ0l5OS9uM2dfJylCREQJJChuMGopZjlubGw4RTE4SWdnKCdhWm4udC4nKTtECUQJL0MoUiQoUm4walIpZnNJZzE4SWdnKFIiYVpuLnQuIlIpUilSQkQJCSQoUm4walIpZkMvM2EoJ2cuSTNmRTQuSTNhOUU0OScpZnM5VjgoJ0IkOEkzbHgncy9hRV9JODhfSXk5L24zJ0E3Jyk7RAk3UkU4Z0VSQkQJCSQoUm4walIpZkMvM2EoJ2cuSTNmRTQuSTNhOUU0OScpZnM5VjgoJ0IkOEkzbHgnZ3NuXV9JODhfSXk5L24zJ0E3Jyk7RAk3RAlECVBzbl1UWnsvYUUoQy9FOGFSK1IvYSk7RAlECVpFOXRaM1JDSThnRTtEN0REQ3QzeTkvbjNSQ2FFOCgvYSlCRAk2fWJ5bjNDL1pWKFInQiQ4STNseCcuOHRsLzNnX0NfYUU4J0E3JyxSJ0IkOEkzbHgnLl95bjNDL1pWJ0E3JyxSQ3QzeTkvbjNSKClSQkQJCSQoIiNDLzhFQy9FOGFnRTlfIisvYSlmWkVWbiBFKCk7RAk3Uik7RDdEREN0M3k5L24zUklhRTgoL2EpQkQJNn1ieW4zQy9aVihSJ0IkOEkzbHgnLjh0bC8zZ19JX2FFOCdBNycsUidCJDhJM2x4Jy5feW4zQy9aVidBNycsUkN0M3k5L24zUigpUkJECQkkKCIjSXk5L24zZ0U5XyIrL2EpZlpFVm4gRSgpO0QJN1IpO0Q3RERDdDN5OS9uM1JGYWE9LzhFKClCRAlDLzhFZ1IrKztECUQJIElaUjRSVVJSIjxhLyBSeThJZ2dVXCJdRTg4XCJSL2FVXCJDLzhFQy9FOGFnRTlfIlIrUkMvOEVnUitSIlwiazxDL0U4YWdFOWsiO0QJNFIrVVIiPDhFbEUzYWtCJDhJM2x4Jy44dGwvM2dfQy84RTNJVkUnQTc8LzMudDlSM0lWRVVcIkMvOEV4IlIrUkMvOEVnUitSIkFcIlI5cC5FVVwiOUU0OVwiUnk4SWdnVVwiQ25aVi15bjM5Wm44Ul0vYTlzLTJ3d1IubmcvOS9uMy1aL2xzOVwiazwvUnk4SWdnVVwic0U4Li0wdDk5bjNSIC9nLzA4RS04bC0vMzgvM0UtMDhueWlSOUU0OS0uWi9WSVpwLU93d1JDSVJDSS1bdEVnOS9uMy15L1p5OEVSLm5nLzkvbjMtWi9sczlcIlJhSTlJLVpFOFVcIi5uLm4gRVpcIlJhSTlJLTlaL2xsRVpVXCJzbiBFWlwiUmFJOUktLjhJeUVWRTM5VVwiWi9sczlcIlJhSTlJLXluMzlFMzlVXCJCJDhJM2x4Jy44dGwvM2dfQy84RV9zJ0E3XCJrPHEvazxhLyBSeThJZ2dVXCIudDg4LVovbHM5XCJrPElSc1pFQ1VcIiNcIlJuM3k4L3lpVVwiakkgSWd5Wi8uOTpDRTQuSTNhKDlzL2csUiciUitSQy84RWdSK1IiJyk7UlpFOXRaMyhDSThnRSk7XCJSeThJZ2dVXCIubmcvOS9uMy04RUM5UmFabi50LlwiazxnLkkzUnk4SWdnVVwiRTQuSTNhOUU0OVwia0IkOEkzbHgncy9hRV9JODhfSXk5L24zJ0E3PHFnLkkzazxnLkkzUnk4SWdnVVwieUlaRTlcIms8cWcuSTNrPHFJazxJUm4zeTgveWlVXCJqSSBJZ3laLy45OkNhRTgoJyJSK1JDLzhFZ1IrUiInKTtSWkU5dFozKENJOGdFKTtcIms8L1J5OElnZ1VcIkNJUkNJLTlaSWdzLW5SOUU0OS1hSTNsRVpcIms8cS9rPHFJazxxYS8gazxxOEVsRTNhayI7RAk0UitVUiI8YS8gUi9hVVwiSXk5L24zZ18iUitSQy84RWdSK1IiXCJrPGEvIFJ5OElnZ1VcIlZuWkVJeTkvbjNnXCJrPHFhLyBrIjtECTRSK1VSIjwwdDk5bjNSOXAuRVVcIjB0OTluM1wiUm4zeTgveWlVXCJGYWFGeTkvbjMoJyJSK1JDLzhFZ1IrUiInKTtSWkU5dFozUkNJOGdFO1wiUnk4SWdnVVwiMDkzUjBsLTBabl0zLU93d1IwOTMtZ1ZSMDkzLVpJL2dFYVIubmcvOS9uMy04RUM5XCJrPC9SeThJZ2dVXCJDSVJDSS0uOHRnUi5uZy85L24zLThFQzlcIms8cS9rQiQ4STNseCcuOHRsLzNnX0lhYUl5OSdBNzxxMHQ5OW4zayI7RAk0UitVUiI8cWEvIGs8cUMvRThhZ0U5azxxYS8gayI7RAlECSQoIiN5bjM5SS8zRVoiKWZJLi5FM2EoNCk7RAkkKCIjQy84RUMvRThhZ0U5XyJSK1JDLzhFZylmQy8zYSgiZnNFOC4tMHQ5OW4zIilmLm4ubiBFWigpO0REN0REQ3QzeTkvbjNSRmFhRnk5L24zKEMvOEUvYSlCRAlJeTkvbjNnUisrO0RECSBJWlI0UlVSUiI8YS8gUi9hVVwiSXk5L24zZ0U5XyJSK1JJeTkvbjNnUitSIlwiUnk4SWdnVVwiSThFWjlSMG5aYUVaLWd0eXlFZ2dSLjAtMlwiazxDL0U4YWdFOWsiO0QJNFIrVVIiPDhFbEUzYWs8Zy5JM1J5OElnZ1VcIi5uZy85L24zLThFQzlcImtCJDhJM2x4JyBuOUVfSXk5L24zJ0E3PHFnLkkzayI7RAk0UitVUiI8Z0U4RXk5Unk4SWdnVVwidDMvQ25aVlIubmcvOS9uMy1aL2xzOVwiUjNJVkVVXCJDLzhFSXk5L24zeCJSK1JDLzhFL2FSK1IiQXgiUitSSXk5L24zZ1IrUiJBXCJSbjN5c0kzbEVVXCJuM0Z5OS9uMzFzSTNsRSg5cy9nLFIiUitSQy84RS9hUitSIixSIlIrUkl5OS9uM2dSK1IiKVwiayI7RAk0UitVUiI8bi45L24zUiBJOHRFVVwiXCJrQiQ4STNseCc0Qy9FOGFfNEl5OSdBNzxxbi45L24zayI7RAk0UitVUiI8bi45L24zUiBJOHRFVVwiWkUuOEl5RVwia0IkOEkzbHgnLjh0bC8zZ19J0YE5XzhZJ0E3PHFuLjkvbjNrIjtECTRSK1VSIjxuLjkvbjNSIEk4dEVVXCIwRUNuWkVcImtCJDhJM2x4Jy44dGwvM2dfSdGBOV84YydBNzxxbi45L24zayI7RAk0UitVUiI8bi45L24zUiBJOHRFVVwiSUM5RVpcImtCJDhJM2x4Jy44dGwvM2dfSdGBOV84UydBNzxxbi45L24zayI7RAk0UitVUiI8bi45L24zUiBJOHRFVVwiWkUuOEl5RUk4OFwia0IkOEkzbHgnLjh0bC8zZ19J0YE5XzhyJ0E3PHFuLjkvbjNrIjtECTRSK1VSIjxuLjkvbjNSIEk4dEVVXCJ5WkVJOUVcImtCJDhJM2x4Jy44dGwvM2dfSdGBOV84MidBNzxxbi45L24zayI7RAk0UitVUiI8cWdFOEV5OWsiO0QJNFIrVVIiPGEvIFJ5OElnZ1VcIi50ODgtWi9sczlcIms8SVJzWkVDVVwiI1wiUm4zeTgveWlVXCJqSSBJZ3laLy45OkNFNC5JM2EoOXMvZyxSJyJSK1JJeTkvbjNnUitSIicsUidnRUlaeXNnXycpO1JaRTl0WjMoQ0k4Z0UpO1wiUnk4SWdnVVwiLm5nLzkvbjMtOEVDOVJhWm4udC5cIms8Zy5JM1J5OElnZ1VcIkU0LkkzYTlFNDlcImtCJDhJM2x4J3MvYUVfSTg4X0l5OS9uMydBNzxxZy5JM2s8Zy5JM1J5OElnZ1VcInlJWkU5XCJrPHFnLkkzazxxSWs8LzMudDlSeThJZ2dVXCJnXS85eXNcIlI5cC5FVVwieXNFeWkwbjRcIlIzSVZFVVwiQy84RWEvZ0kwOEV4IlIrUkMvOEUvYVIrUiJBeCJSK1JJeTkvbjNnUitSIkFcIlIgSTh0RVVcIllcIlJ5c0V5aUVhazxJUm4zeTgveWlVXCJqSSBJZ3laLy45OklhRTgoJyJSK1JJeTkvbjNnUitSIicpO1JaRTl0WjMoQ0k4Z0UpO1wiazwvUnk4SWdnVVwiQ0lSQ0ktOVpJZ3MtblI5RTQ5LWFJM2xFWlIubmcvOS9uMy1aL2xzOVwiazxxL2s8cUlrPHFhLyBrPHE4RWxFM2FrIjtECTRSK1VSIjxhLyBSL2FVXCJnRUlaeXNnXyJSK1JJeTkvbjNnUitSIlwiazxxYS8gayI7RAk0UitVUiI8cUMvRThhZ0U5azxxYS8gayI7REQJJCgiI0l5OS9uM2dfIlIrUkMvOEUvYVIrUiJSZlZuWkVJeTkvbjNnIilmSS4uRTNhKDQpO0QJJCgiI0l5OS9uM2dFOV8iUitSSXk5L24zZ1IpZkMvM2EoImdFOEV5OWZ0My9DblpWIilmZ0U4RXk5Li95aUVaKCk7RAlEUlJSUiBJWlJnXS85eXNFZ1JVUkZaWklwZi5abjluOXAuRWZnOC95RWZ5STg4KCQoIiNJeTkvbjNnRTlfIlIrUkl5OS9uM2dSKWZDLzNhKCJmZ10vOXlzIikpO0RSUlJSZ10vOXlzRWdmQ25aYkl5cyhDdDN5OS9uMyhzOVY4KVJCRFJSUlJSUlJSIElaUmddLzl5c0VacFJVUjNFXVJQXS85eXNFWnAoczlWOCxSQnluOG5aOlInI3IxRj0ydyc3KTtEUlJSUjcpO0QJRAlEN0REQ3QzeTkvbjNSbjNGeTkvbjMxc0kzbEUobjBqLFJDLzhFL2EsUkl5OS9uMy9hKVJCRAkgSVpSIEk4dEVSVVIkKG4wailmIEk4KCk7RAlECS9DUiggSTh0RVJVVVInJylSQkQJRAkJJCgiI2dFSVp5c2dfIlIrUkl5OS9uMy9hUilmczlWOCgnJyk7RAkJWkU5dFozUkNJOGdFO0QJCUQJN0RECSBJWlI0UlVSUiIiO0QJRAkvQyhSJCgiIzlFNDlfZ0VJWnlzXyJSK1JDLzhFL2FSK1IiXyJSK1JJeTkvbjMvYVIpZiBJOCgpUilSQkQJCSBJWlIuWkUgXyBJOF9nRUlaeXNSUlVSJCgiIzlFNDlfZ0VJWnlzXyJSK1JDLzhFL2FSK1IiXyJSK1JJeTkvbjMvYVIpZiBJOCgpO0QJN1JFOGdFUkJECQkgSVpSLlpFIF8gSThfZ0VJWnlzUlJVUicnO0QJN0QJRAkvQyhSJCgiIzlFNDlfWkUuOEl5RV8iUitSQy84RS9hUitSIl8iUitSSXk5L24zL2FSKWYgSTgoKVIpUkJECQkgSVpSLlpFIF8gSThfWkUuOEl5RVJVUiQoIiM5RTQ5X1pFLjhJeUVfIlIrUkMvOEUvYVIrUiJfIlIrUkl5OS9uMy9hUilmIEk4KCk7RAk3UkU4Z0VSQkQJCSBJWlIuWkUgXyBJOF9aRS44SXlFUlJVUicnO0QJN0RECS9DKFIkKCIjWkUuOEl5RV95bnQzOV8iUitSQy84RS9hUitSIl8iUitSSXk5L24zL2FSKWYgSTgoKVIpUkJECQkgSVpSLlpFIF8gSThfWkUuOEl5RV95bnQzOVJVUiQoIiNaRS44SXlFX3ludDM5XyJSK1JDLzhFL2FSK1IiXyJSK1JJeTkvbjMvYVIpZiBJOCgpO0QJN1JFOGdFUkJECQkgSVpSLlpFIF8gSThfWkUuOEl5RV95bnQzOVJSVVInJztECTdERAkvQyhSJCgiI0MvM2FfeW50MzlfIlIrUkMvOEUvYVIrUiJfIlIrUkl5OS9uMy9hUilmIEk4KClSKVJCRAkJIElaUi5aRSBfIEk4X0MvM2FfeW50MzlSVVIkKCIjQy8zYV95bnQzOV8iUitSQy84RS9hUitSIl8iUitSSXk5L24zL2FSKWYgSTgoKTtECTdSRThnRVJCRAkJIElaUi5aRSBfIEk4X0MvM2FfeW50MzlSUlVSJyc7RAk3CURECS9DKCBJOHRFUiFVUidaRS44SXlFSTg4J1ImJlIgSTh0RVIhVSd5WkVJOUUnKVJCRAkJNFIrVVJSIjxhLyBSeThJZ2dVXCJDblpWLWxabnQuXCJrIjtECQk0UitVUiI8OEkwRThSeThJZ2dVXCJ5bjM5Wm44LThJMEU4UnluOC1nVi1jXCJrQiQ4STNseCcuOHRsLzNnX0nRgTlfOE8nQTc8cThJMEU4ayI7RAkJNFIrVVIiPGEvIFJ5OElnZ1VcInluOC1nVi1Zd1wiayI7RAkJNFIrVVIiPDlFNDlJWkVJUjNJVkVVXCJDLzhFZ0VJWnlzeCJSK1JDLzhFL2FSK1IiQXgiUitSSXk5L24zL2FSK1IiQVwiUi9hVVwiOUU0OV9nRUlaeXNfIlIrUkMvOEUvYVIrUiJfIlIrUkl5OS9uMy9hUitSIlwiUnk4SWdnVVwieThJZ2cveVJdL2E5cy0yd3dSLnMuX0VhLzluWlwiUlpuXWdVXCJTXCJrIisuWkUgXyBJOF9nRUlaeXMrIjxxOUU0OUlaRUlrIjtECQk0UitVUiI8cWEvIGsiO0QJCTRSK1VSIjxxYS8gayI7REQJN0QJRAkgSVpSOEkzbFUiQiQ4STNseCcuOHRsLzNnX0nRgTlfOG0nQTciO0QJRAkvQyggSTh0RVJVVVInMEVDblpFJ1IpUkJECQk4STNsVSJCJDhJM2x4Jy44dGwvM2dfSdGBOV84TSdBNyI7RAk3UkU4Z0VSL0MoIEk4dEVSVVVSJ0lDOUVaJylSQkQJCThJM2xVIkIkOEkzbHgnLjh0bC8zZ19J0YE5XzhXJ0E3IjtECTdSRThnRVIvQyggSTh0RVJVVVIneVpFSTlFJylSQkQJCThJM2xVIkIkOEkzbHgnLjh0bC8zZ19J0YE5XzhZdydBNyI7RAk3RAlECTRSK1VSUiI8YS8gUnk4SWdnVVwiQ25aVi1sWm50LlwiayI7RAk0UitVUiI8OEkwRThSeThJZ2dVXCJ5bjM5Wm44LThJMEU4UnluOC1nVi1jXCJrIis4STNsKyI8cThJMEU4ayI7RAk0UitVUiI8YS8gUnk4SWdnVVwieW44LWdWLVl3XCJrIjtECTRSK1VSIjw5RTQ5SVpFSVIzSVZFVVwiQy84RVpFLjhJeUV4IlIrUkMvOEUvYVIrUiJBeCJSK1JJeTkvbjMvYVIrUiJBXCJSL2FVXCI5RTQ5X1pFLjhJeUVfIlIrUkMvOEUvYVIrUiJfIlIrUkl5OS9uMy9hUitSIlwiUnk4SWdnVVwieThJZ2cveVJdL2E5cy0yd3dSLnMuX0VhLzluWlwiUlpuXWdVXCIyXCJrIisuWkUgXyBJOF9aRS44SXlFKyI8cTlFNDlJWkVJayI7RAk0UitVUiI8cWEvIGsiOwlECTRSK1VSIjxxYS8gayI7REQJL0MoIEk4dEVSIVVSJ1pFLjhJeUVJODgnUiYmUiBJOHRFUiFVJ3laRUk5RScpUkJECUQJCTRSK1VSUiI8YS8gUnk4SWdnVVwiQ25aVi1sWm50LlwiayI7RAkJNFIrVVIiPDhJMEU4Unk4SWdnVVwieW4zOVpuOC04STBFOFJ5bjgtZ1YtY1wia0IkOEkzbHgnLjh0bC8zZ19J0YE5XzhZWSdBNzxxOEkwRThrIjtECQk0UitVUiI8YS8gUnk4SWdnVVwieW44LWdWLVl3XCJrIjtECQk0UitVUiI8LzMudDlSOXAuRVVcIjlFNDlcIlIzSVZFVVwiQy84RUMvM2F5bnQzOXgiUitSQy84RS9hUitSIkF4IlIrUkl5OS9uMy9hUitSIkFcIlIvYVVcIkMvM2FfeW50MzlfIlIrUkMvOEUvYVIrUiJfIlIrUkl5OS9uMy9hUitSIlwiUnk4SWdnVVwiQ25aVi15bjM5Wm44XCJSVkk0OEUzbDlzVVwiU1wiUmc5cDhFVVwiXS9hOXM6U2ZyU01aRVY7XCJrPC9SeThJZ2dVXCJzRTguLTB0OTluM1IgL2cvMDhFLThsLS8zOC8zRS0wOG55aVI5RTQ5LS5aL1ZJWnAtT3d3UkNJUkNJLVt0RWc5L24zLXkvWnk4RVIubmcvOS9uMy1aL2xzOVIubmcvOS9uMy04RUM5XCJSYUk5SS1aRThVXCIubi5uIEVaXCJSYUk5SS05Wi9sbEVaVVwic24gRVpcIlJhSTlJLS44SXlFVkUzOVVcIlovbHM5XCJSYUk5SS15bjM5RTM5VVwiQiQ4STNseCcuOHRsLzNnX0nRgTlfcy8zOSdBN1wiazxxL2siO0QJCTRSK1VSIjxxYS8gayI7CUQJCTRSK1VSIjxxYS8gayI7REQJCTRSK1VSUiI8YS8gUnk4SWdnVVwiQ25aVi1sWm50LlwiayI7RAkJNFIrVVIiPDhJMEU4Unk4SWdnVVwieW4zOVpuOC04STBFOFJ5bjgtZ1YtY1wia0IkOEkzbHgnLjh0bC8zZ19J0YE5XzhZYydBNzxxOEkwRThrIjtECQk0UitVUiI8YS8gUnk4SWdnVVwieW44LWdWLVl3XCJrIjtECQk0UitVUiI8LzMudDlSOXAuRVVcIjlFNDlcIlIzSVZFVVwiQy84RVpFLjhJeUV5bnQzOXgiUitSQy84RS9hUitSIkF4IlIrUkl5OS9uMy9hUitSIkFcIlIvYVVcIlpFLjhJeUVfeW50MzlfIlIrUkMvOEUvYVIrUiJfIlIrUkl5OS9uMy9hUitSIlwiUnk4SWdnVVwiQ25aVi15bjM5Wm44XCJSVkk0OEUzbDlzVVwiU1wiUmc5cDhFVVwiXS9hOXM6U2ZyU01aRVY7XCJrPC9SeThJZ2dVXCJzRTguLTB0OTluM1IgL2cvMDhFLThsLS8zOC8zRS0wOG55aVI5RTQ5LS5aL1ZJWnAtT3d3UkNJUkNJLVt0RWc5L24zLXkvWnk4RVIubmcvOS9uMy1aL2xzOVIubmcvOS9uMy04RUM5XCJSYUk5SS1aRThVXCIubi5uIEVaXCJSYUk5SS05Wi9sbEVaVVwic24gRVpcIlJhSTlJLS44SXlFVkUzOVVcIlovbHM5XCJSYUk5SS15bjM5RTM5VVwiQiQ4STNseCcuOHRsLzNnX1pFLl9zLzM5J0E3XCJrPHEvayI7RAkJNFIrVVIiPHFhLyBrIjsJRAkJNFIrVVIiPHFhLyBrIjtERAk3REQJNFIrVVJSIjxhLyBSeThJZ2dVXCJDblpWLWxabnQuXCJrIjtECTRSK1VSUiI8OEkwRThSeThJZ2dVXCJ5bjM5Wm44LThJMEU4UnluOC1nVi1jXCJrQiQ4STNseCcuOHRsLzNnX2E4RSBFWidBNzxxOEkwRThrIjtECTRSK1VSUiI8YS8gUnk4SWdnVVwieW44LWdWLVl3XCJrIjtECTRSK1VSUiI8LzMudDlSOXAuRVVcIjlFNDlcIlJ5OElnZ1VcIkNuWlYteW4zOVpuOFIubmcvOS9uMy04RUM5XCJSM0lWRVVcIkMvOEVhOEUgRVpnL24zeCJSK1JDLzhFL2FSK1IiQXgiUitSSXk5L24zL2FSK1IiQVwiUiBJOHRFVVwiXCJSZzlwOEVVXCJdL2E5czpZd3cuNDtcImsiO0QJNFIrVVJSIjxnRThFeTlSeThJZ2dVXCJ0My9DblpWXCJSM0lWRVVcIkMvOEUgRVpnL24zeW5WLklaRXgiUitSQy84RS9hUitSIkF4IlIrUkl5OS9uMy9hUitSIkFcIlJnOXA4RVVcIlYvMy1dL2E5czpZd3cuNDtcImsiO0QJNFIrVVJSIjxuLjkvbjNSIEk4dEVVXCJVVVwia0IkOEkzbHgnLjh0bC8zZ18geV9ZJ0E3PHFuLjkvbjNrIjtECTRSK1VSUiI8bi45L24zUiBJOHRFVVwia1VcImtCJDhJM2x4Jy44dGwvM2dfIHlfYydBNzxxbi45L24zayI7RAk0UitVUlIiPG4uOS9uM1IgSTh0RVVcIjxVXCJrQiQ4STNseCcuOHRsLzNnXyB5X1MnQTc8cW4uOS9uM2siO0QJNFIrVVJSIjxxZ0U4RXk5ayI7RAk0UitVUlIiPHFhLyBrIjtECTRSK1VSUiI8cWEvIGsiO0RECSQoIiNnRUlaeXNnXyJSK1JJeTkvbjMvYVIpZnM5VjgoNCk7RAkkKCIjOUU0OV9nRUlaeXNfIlIrUkMvOEUvYVIrUiJfIlIrUkl5OS9uMy9hUilmIEk4KC5aRSBfIEk4X2dFSVp5cyk7RAkkKCIjOUU0OV9aRS44SXlFXyJSK1JDLzhFL2FSK1IiXyJSK1JJeTkvbjMvYVIpZiBJOCguWkUgXyBJOF9aRS44SXlFKTtECSQoIiNDLzNhX3ludDM5XyJSK1JDLzhFL2FSK1IiXyJSK1JJeTkvbjMvYVIpZiBJOCguWkUgXyBJOF9DLzNhX3ludDM5KTtECSQoIiNaRS44SXlFX3ludDM5XyJSK1JDLzhFL2FSK1IiXyJSK1JJeTkvbjMvYVIpZiBJOCguWkUgXyBJOF9aRS44SXlFX3ludDM5KTtECUQJJCgiI2dFSVp5c2dfIlIrUkl5OS9uMy9hUilmQy8zYSgiZi5zLl9FYS85bloiKWZFSXlzKEN0M3k5L24zKClSQkQJCSBJWlJFYS85blpSVVIxbmFFei9aWm5aZkNablY1RTQ5RlpFSShSOXMvZyxSQkQJCQlWbmFFOlIiOUU0OXE0LS5zLiIsRAkJCWFaSWw2Wm4uOlJDSThnRSxECQkJSXQ5bnZFQ1pFZ3M6UjladEUsRAkJCSAvRV0ublo5eklabC8zOlI+M0MvMy85cEQJCVJSNyk7RAlECQlDdDN5OS9uM1J0LmFJOUU1RTQ5RlpFSSgpUkJECQkJRWEvOW5aZmdJIEUoKTtECQk3RAlECQlFYS85blpmbjMoJ3lzSTNsRScsUnQuYUk5RTVFNDlGWkVJKTtECTcpO0QJRAkkKCIjSXk5L24zZ0U5XyJSK1JJeTkvbjMvYVIpZkMvM2EoInhhSTlJLVpFOFUubi5uIEVaQSIpZi5uLm4gRVooKTtECSQoIiNJeTkvbjNnRTlfIlIrUkl5OS9uMy9hUilmQy8zYSgiZ0U4RXk5ZnQzL0NuWlYiKWZnRThFeTkuL3lpRVooKTtEN0REcXEtLWtEPHFneVovLjlrRHs1en07REQJRXlzbkNubjlFWigpO0QJRDdSRThnRS9DKCRfdmJKZWJQNXgnSXk5L24zJ0FSVVVSIkVaWm5aZyIpUkJECUQJJEVaWm5aZ1JVUiIiO0RECSRhMC1rW3RFWnAoUiJQYn1iMTVSL2EsUjNJVkVSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnIlIpO0QJRAldcy84RVIoUiRabl1SVVIkYTAta2xFOV9abl0oKVIpUkJECQkkLjh0bC8zZ18zSVZFeCRabl14Jy9hJ0FBUlVSJFpuXXgnM0lWRSdBO0QJN0QJRAkvQygkL2EpUiRhMC1rW3RFWnAoUiJQYn1iMTVSKlI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dfOG5sZ1JIe2J2YlIuOHRsLzNfL2FSVVInQiQvYTcnIlIpO0QJRThnRVIkYTAta1t0RVpwKFIiUGJ9YjE1UipSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnXzhubGciUik7RAlECV1zLzhFUihSJFpuXVJVUiRhMC1rbEU5X1puXSgpUilSQkRECQkvQyhSJFpuXXgnLjh0bC8zXy9hJ0FSRkc2UiRabl14JzlwLkUnQVJVVVIiVnBnWzgiKVJCRAkJCSRJWkVJUlVSJDhJM2x4J3QubFpfYTBfW3RFWnAnQTtECQkJJFpuXXgnSVpFSSdBUlVSIjwuWkVrPHluYUVrImYkWm5deCdJWkVJJ0FmIjxxeW5hRWs8cS5aRWsiO0QJCTdSRThnRS9DKFIkWm5deCcuOHRsLzNfL2EnQVJGRzZSJFpuXXgnOXAuRSdBUlVVUiJDLzhFIlIpUkJECQkJJElaRUlSVVIkOEkzbHgnLjh0bC8zZ19DLzhFM0lWRSdBO0QJCQkkWm5deCdFWlpuWidBUlVSJDhJM2x4Jy44dGwvM2dfRVpablpnX3InQWYiPC5aRWs8eW5hRWsiZiRabl14J0VaWm5aJ0FmIjxxeW5hRWs8cS5aRWsiO0QJCTdSRThnRS9DKFIkWm5deCcuOHRsLzNfL2EnQVJGRzZSJFpuXXgnOXAuRSdBUlVVUiJ0LjhuSWEiUilSQkQJCQkkSVpFSVJVUiQ4STNseCcuOHRsLzNnX0MvOEUzSVZFJ0E7RAkJCSRabl14J0VaWm5aJ0FSVVIiPC5aRWs8eW5hRWsiZiRabl14J0VaWm5aJ0FmIjxxeW5hRWs8cS5aRWsiO0QJCTdSRThnRVJCRAkJCSQuOHRsLzNnXzNJVkV4d0FSVVIkOEkzbHgnLjh0bC8zZ19FWlpuWmdfMidBO0QJCQkkSVpFSVJVUiIiO0QJCTdECQlECQkkRVpablpnUmZVUiI8YS8gUnk4SWdnVVwiW3RuOUVcIms8MGtCJDhJM2x4Jy44dGwvM2dfM0lWRSdBNzxxMGtSQiQuOHRsLzNnXzNJVkV4JFpuXXgnLjh0bC8zXy9hJ0FBNzxhLyBSeThJZ2dVXCJWOS1Zd1wiazwwa0IkSVpFSTc8cTBrUkIkWm5deCdJWkVJJ0E3PHFhLyBrPGEvIFJ5OElnZ1VcIlY5LVl3XCJrPDBrQiQ4STNseCd0LmxaX2EwX0VaWjknQTc8cTBrUkIkWm5deCdFWlpuWidBNzxxYS8gazxxYS8gayI7RAkJRAk3RAlECS9DKCEkRVpablpnKVJWZ2woUiJndHl5RWdnIixSJDhJM2x4J0k4OF8vM0NuJ0EsUiQ4STNseCcuOHRsLzNnX0VaWm5aZ19TJ0EsUiJqSSBJZ3laLy45OnMvZzluWnBmbG4oLVkpIlIpO0RECSRqZ19JWlpJcHhBUlVSIkUzbC8zRXF5OElnZ0VncXMvbHM4L2xzOXFzL2xzOC9sczlmeW5hRWZqZyI7REQJRXlzbnNFSWFFWihSIjwvUnk4SWdnVVwiQ0lSQ0ktLnRLSzhFLS4vRXlFUi5uZy85L24zLThFQzlcIms8cS9rPGcuSTNSeThJZ2dVXCI5RTQ5LWdFVi8wbjhhXCJrQiQ4STNseCduLjlfLjh0bC8zZydBNzxxZy5JM2siLFJJWlpJcCgnP1ZuYVUuOHRsLzNnJ1JVa1IkOEkzbHgnLjh0bC8zZ184L2c5J0EsUicnUlVrUiQ4STNseCcuOHRsLzNnXzBaRUlhX2MnQVIpUik7REQJJEVaWm5aZ1JVUiI8YS8gUnk4SWdnVVwiLkkzRTgtMG5hcFwiazxhLyBSeThJZ2dVXCI5RTQ5LWcvS0UtZ1ZJODhcImsiZiRFWlpuWmdmIjxxYS8gazxxYS8gayI7RAlECUV5c25SPDw8ezV6fUQJPGEvIFJ5OElnZ1UiLkkzRThSLkkzRTgtYUVDSXQ4OSJrRAlSUjxhLyBSeThJZ2dVIi5JM0U4LXNFSWEvM2wia0QJCUIkOEkzbHgnLjh0bC8zZ18wWkVJYV9jJ0E3RAlSUjxxYS8ga0QJUlJCJEVaWm5aZzdECVJSPGEvIFJ5OElnZ1UiLkkzRTgtQ25uOUVaImtECQlSPElSc1pFQ1UiP1ZuYVUuOHRsLzNnIlJ5OElnZ1UiMDkzUjBsLTlFSThSMDkzLWdWUjA5My1aSS9nRWFSLm5nLzkvbjMtOEVDOSJrPC9SeThJZ2dVIkNJUkNJLUNuWl1JWmFSLm5nLzkvbjMtOEVDOSJrPHEva0IkOEkzbHgndC5sWl8zRTQ5J0E3PHFJa0QJCVI8SVJzWkVDVSI/Vm5hVS44dGwvM2cmSXk5L24zVXk4RUlaRVpablpnJnRnRVpfc0lnc1VCJGE4RV84bmwvM19zSWdzNyYvYVVCJC9hNyJSeThJZ2dVIjA5M1IwbC0wWm5dMy1Pd3dSMDkzLWdWUjA5My1aSS9nRWFSLm5nLzkvbjMtOEVDOSJrPC9SeThJZ2dVIkNJUkNJLTlaSWdzUi5uZy85L24zLThFQzkiazxxL2tCJDhJM2x4Jy44dGwvM2dfRVpablpnX2MnQTc8cUlrRAlSUlI8cWEvIGtECTxxYS8ga0R7NXp9O0RECUV5c25Dbm45RVooKTtECUQ3UkU4Z0VSQkQJRAkkLklaZ0VSVVIzRV1SaElaZ0U9Lzg5RVooKTtECUQJJGpnX0laWklweEFSVVIiRTNsLzNFcXk4SWdnRWdxcy9sczgvbHM5cXMvbHM4L2xzOWZ5bmFFZmpnIjtERAlFeXNuc0VJYUVaKFIiPC9SeThJZ2dVXCJDSVJDSS0udEtLOEUtLi9FeUVSLm5nLzkvbjMtOEVDOVwiazxxL2s8Zy5JM1J5OElnZ1VcIjlFNDktZ0VWLzBuOGFcImtCJDhJM2x4J24uOV8uOHRsLzNnJ0E3PHFnLkkzayIsUiQ4STNseCcuOHRsLzNnXzgvZzknQSk7REQJJC44dGwvM2dfRVpablpnUlVSSVpaSXAoKTtECUQJJGEwLWtbdEVacChSIlBifWIxNVIuOHRsLzNfL2EsUjFUZUc1KC9hKVJGUFJ5bnQzOVI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dfOG5sZ1IKdlRlaFJvTFIuOHRsLzNfL2EiUik7RAlECV1zLzhFUihSJFpuXVJVUiRhMC1rbEU5X1puXSgpUilSQkQJCSQuOHRsLzNnX0VaWm5aZ3gkWm5deCcuOHRsLzNfL2EnQUFSVVIkWm5deCd5bnQzOSdBO0QJN0QJRAkvQyhSeW50MzkoJC44dGwvM2dfRVpablpnKVIpUkJECQlECQkkRVpablpfMHQ5OW4zUlVSIjwwdDk5bjNSOXAuRVVcIjB0OTluM1wiUm4zeTgveWlVXCJhbnl0VkUzOWY4bnlJOS9uM1UnP1ZuYVUuOHRsLzNnJkl5OS9uM1VFWlpuWmcnXCJSeThJZ2dVXCIwOTNSMGwtMFpuXTMtT3d3UjA5My1nVlIwOTMtWkkvZ0VhUi5uZy85L24zLThFQzlcIms8L1J5OElnZ1VcIkNJUkNJLUU0eThJVkk5L24zLTlaL0kzbDhFUi5uZy85L24zLThFQzlcIms8cS9rQiQ4STNseCcuOHRsLzNnX0VaWm5aZ19ZJ0E3PHEwdDk5bjNrIjtECQlECTdSRThnRVIkRVpablpfMHQ5OW4zUlVSIiI7RAlECS9DUihSL2dnRTkoJF92YkplYlA1eCdnRUlaeXNdblphJ0EpUkZHNlIkX3ZiSmViUDV4J2dFSVp5c11uWmEnQVIpUkJECQlECQkkZ0VJWnlzXW5aYVJVUiRhMC1rZ0lDRWdbOCgkX3ZiSmViUDV4J2dFSVp5c11uWmEnQSk7RAkJJC9hZ1JVUklaWklwKCk7RAkJUkQJCSRhMC1rW3RFWnAoUiJQYn1iMTVSL2FSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnUkh7YnZiUjNJVkVSOC9pRVInJUIkZ0VJWnlzXW5aYTclJ1JUdlJhRWd5Wi8uOS9uM1I4L2lFUiclQiRnRUlaeXNdblphNyUnUlR2UlZwZ1s4LzNnOUk4OFI4L2lFUiclQiRnRUlaeXNdblphNyUnUlR2UlZwZ1s4dC5sWklhRVI4L2lFUiclQiRnRUlaeXNdblphNyUnUlR2UlZwZ1s4RTNJMDhFUjgvaUVSJyVCJGdFSVp5c11uWmE3JSdSVHZSVnBnWzhhL2dJMDhFUjgvaUVSJyVCJGdFSVp5c11uWmE3JSdSVHZSVnBnWzhhRThFOUVSOC9pRVInJUIkZ0VJWnlzXW5aYTclJ1JUdlIucy4vM2c5STg4UjgvaUVSJyVCJGdFSVp5c11uWmE3JSdSVHZSLnMudC5sWklhRVI4L2lFUiclQiRnRUlaeXNdblphNyUnUlR2Ui5zLkUzSTA4RVI4L2lFUiclQiRnRUlaeXNdblphNyUnUlR2Ui5zLmEvZ0kwOEVSOC9pRVInJUIkZ0VJWnlzXW5aYTclJ1JUdlIucy5hRThFOUVSOC9pRVInJUIkZ0VJWnlzXW5aYTclJ1JUdlIzbjkveUVSOC9pRVInJUIkZ0VJWnlzXW5aYTclJyIpO0QJCUQJCV1zLzhFUihSJENudDNhXy9hUlVSJGEwLWtsRTlfWm5dKClSKVJCRAkJCSQvYWd4QVJVUiRDbnQzYV8vYXgnL2EnQTtECQk3RAkJRAkJJGEwLWtbdEVacChSIlBifWIxNVIuOHRsLzNfL2FSPXZUelIiUmZSaHZiPT51UmZSIl8uOHRsLzNnX0MvOEVnUkh7YnZiUkMvOEVSOC9pRVInJUIkZ0VJWnlzXW5aYTclJ1JUdlJnRUlaeXN5bmFFUjgvaUVSJyVCJGdFSVp5c11uWmE3JSdSVHZSWkUuOEl5RXluYUVSOC9pRVInJUIkZ0VJWnlzXW5aYTclJyIpO0QJRAkJXXMvOEVSKFIkQ250M2FfL2FSVVIkYTAta2xFOV9abl0oKVIpUkJECQkJJC9hZ3hBUlVSJENudDNhXy9heCcuOHRsLzNfL2EnQTtECQk3RAkJRAkJL0MoUiF5bnQzOSgkL2FnKVIpUiQvYWd4QVJVUnc7RAkJRAkJJC9hZ1JVUi9WLjhuYUUoUicsJyxSJC9hZ1IpO0QJRAkJJGEwLWtbdEVacChSIlBifWIxNVIqUj12VHpSIlJmUmh2Yj0+dVJmUiJfLjh0bC8zZ1JIe2J2YlIvYVI+RyhCJC9hZzcpUlR2NmJ2Um9MUi5uZy9SRlAxLFIvYVI2YlAxIlIpO0QJCUQJN1JFOGdFUiRhMC1rW3RFWnAoUiJQYn1iMTVSKlI9dlR6UiJSZlJodmI9PnVSZlIiXy44dGwvM2dSVHY2YnZSb0xSLm5nL1JGUDEsUi9hUjZiUDEiUik7RAlECSRFMzlaL0VnUlVSIiI7RAkkL1V3O0QJRAldcy84RVIoUiRabl1SVVIkYTAta2xFOV9abl0oKVIpUkJECUQJCS9DKCEkLylSJDBuWmFFWlJVUiIzbi0wblphRVotOW4uUiI7UkU4Z0VSJDBuWmFFWlJVUiIiO0QJRAkJL0NSKFIhJFpuXXgnL3luMydBUlR2UiFAQy84RV9FNC9nOWcoUiRabl14Jy95bjMnQVIpKVIkWm5deCcveW4zJ0FSVVIiRTNsLzNFcWdpLzNncS9WSWxFZ3FhRUNJdDg5Xy95bjNmLjNsIjtECUQJCS9DKFIkWm5deCcgRVpnL24zJ0FSKVIkWm5deCcgRVpnL24zJ0FSVVIiUiBmPGcuSTNSL2FVXCIgRVpnL24zQiRabl14Jy9hJ0E3XCJrImZSJFpuXXgnIEVaZy9uMydBZiI8cWcuSTNrIjtECQlECQkvQyhSJFpuXXgnVjNuOS95RSdBUkZHNlIkWm5deCczbjkveUUnQSlSQkQJCQlECQkJJFpuXXgnM245L3lFJ0FSVVIkLklaZ0Uta29vX2hJWmdFKCQuSVpnRS1rLlpueUVnZygkWm5deCczbjkveUUnQSksUkNJOGdFKTtECQkJJFpuXXgnM245L3lFJ0FSVVIiPGEvIFJ5OElnZ1VcIkk4RVo5Ukk4RVo5LS8zQ25SLi0yXCJSZzlwOEVVXCJWSTQtc0UvbHM5OmN3dy40O24gRVpDOG5dOkl0OW47eXRaZ25aOkl0OW47YS9nLjhJcDpSbFovYTtcImsiZmc5Wi8uZzhJZ3NFZygkWm5deCczbjkveUUnQSlmIjxxYS8gayI7RAkJCUQJCTdSRThnRVIkWm5deCczbjkveUUnQVJVUiIiO0QJCUQJCS9DKFIkWm5deCdJeTkvIEUnQVIpUkJECQkJJGc5STl0Z1JVUiI8Zy5JM1I5Lzk4RVVcIkIkOEkzbHgnLjh0bC8zZ19uM19ZJ0E3XCJSeThJZ2dVXCI5RTQ5LWd0eXlFZ2dSLm5nLzkvbjMtOEVDOVIubmcvOS9uMy1aL2xzOVI5Ly5cIms8MGs8L1J5OElnZ1VcIkNJUkNJLXlzRXlpLXkvWnk4RVwiazxxL2s8cTBrPHFnLkkzayI7RAkJCSQ4STNseCc4RWFfSXk5LyBFJ0FSVVIkOEkzbHgnLjh0bC8zZ19uQ0MnQTtECQkJJDhFYV9JeTkvbjNSVVIibkNDIjtECQk3UkU4Z0VSQkQJCQkkZzlJOXRnUlVSIjxnLkkzUjkvOThFVVwiQiQ4STNseCcuOHRsLzNnX25DQ19ZJ0E3XCJSeThJZ2dVXCI5RTQ5LWFJM2xFWlIubmcvOS9uMy04RUM5Ui5uZy85L24zLVovbHM5UjkvLlwiazwwazwvUnk4SWdnVVwiQ0lSQ0ktRTR5OElWSTkvbjMteS9aeThFXCJrPHEvazxxMGs8cWcuSTNrIjtECQkJJDhJM2x4JzhFYV9JeTkvIEUnQVJVUiQ4STNseCcuOHRsLzNnX24zJ0E7RAkJCSQ4RWFfSXk5L24zUlVSIm4zIjtECQk3RAkJRAkJL0NSKC9nZ0U5KCQuOHRsLzNnX0VaWm5aZ3gkWm5deCcvYSdBQQkpUkZHNlIkLjh0bC8zZ19FWlpuWmd4JFpuXXgnL2EnQUEpUkJECQkJJC44dGwvM19FWlpuWlJVUiI8Zy5JM1J5OElnZ1VcIjhJMEU4UjhJMEU4LWFJM2xFWlwia0IkOEkzbHgnLjh0bC8zZ19FWlpuWmcnQTc8cWcuSTNrIjtECQkJJFZFM3RfRVpablpSVSI8OC9rPElSc1pFQ1VcIj9WbmFVLjh0bC8zZyZJeTkvbjNVRVpablpnJi9hVUIkWm5deCcvYSdBN1wiazwvUnk4SWdnVVwiQ0lSQ0ktRTR5OElWSTkvbjMtOVovSTNsOEVcIms8cS9rUkIkOEkzbHgnLjh0bC8zZ19FWlpuWmdfWSdBNzxxSWs8cTgvayI7REQJCTdSRThnRVJCUiQuOHRsLzNfRVpablpSVVIiIjtSJFZFM3RfRVpablpSVSIiO1I3RAkJRAkJJFZFM3RfOC8zaVJVUjw8PHs1en1ECQk8YS8gUnk4SWdnVSIwOTMtbFpudC4ia0QJCQk8SVJzWkVDVSIjIlJ5OElnZ1UiYVpuLmFuXTMtOW5sbDhFUjNueW44bloiUmFJOUktOW5sbDhFVSJhWm4uYW5dMyJSSVovSS1FNC5JM2FFYVUiOVp0RSJrPC9SeThJZ2dVIkNJUkNJLTBJWmciazxxL2s8Zy5JM1J5OElnZ1UieUlaRTkiazxxZy5JM2s8cUlrRAkJCTx0OFJ5OElnZ1UiYVpuLmFuXTMtVkUzdFJhWm4uYW5dMy1WRTN0LVovbHM5ImtECQkJUlJCJFZFM3RfRVpablo3RAkJCVJSPDgvazxJUnNaRUNVIj9WbmFVLjh0bC8zZyZ0Z0VaX3NJZ3NVQiRhOEVfOG5sLzNfc0lnczcmSXk5L24zVUIkOEVhX0l5OS9uMzcmL2FVQiRabl14Jy9hJ0E3Ims8L1J5OElnZ1UiQ0lSQ0ktRXBFIms8cS9rUkIkOEkzbHgnOEVhX0l5OS8gRSdBNzxxSWs8cTgva0QJCQlSUjw4L2s8SVJzWkVDVSI/Vm5hVS44dGwvM2cmdGdFWl9zSWdzVUIkYThFXzhubC8zX3NJZ3M3Jkl5OS9uM1Vhbl0zOG5JYSYvYVVCJFpuXXgnL2EnQTciazwvUnk4SWdnVSJDSVJDSS1hbl0zOG5JYSJrPHEva1JCJDhJM2x4Jy44dGwvM2dfYW5dMzhuSWEnQTc8cUlrPHE4L2tECQkJUlI8OC9SeThJZ2dVImEvIC9hRVoiazxxOC9rRAkJCVJSPDgvazxJUm4zeTgveWlVIjFzRXlpZS5hSTlFKCdCJFpuXXgnL2EnQTcnKTtSWkU5dFozUkNJOGdFOyJSc1pFQ1UiIyJrPC9SeThJZ2dVIkNJUkNJLWdFSVp5cyJrPHEva1JCJDhJM2x4Jy44dGwvM2dfdC5sWl95J0E3PHFJazxxOC9rRAkJCVJSPDgvazxJUm4zeTgveWlVImg4dGwvM2UuYUk5RSgnQiRabl14Jy9hJ0E3Jyk7UlpFOXRaM1JDSThnRTsiUnNaRUNVIiMiazwvUnk4SWdnVSJDSVJDSS10LjhuSWEiazxxL2tSQiQ4STNseCcuOHRsLzNnX3QuYUk5RSdBNzxxSWs8cTgva0QJCQlSUjw4L1J5OElnZ1UiYS8gL2FFWiJrPHE4L2tECQkJUlI8OC9rPElSbjN5OC95aVUieW4zQy9aVmFFOEU5RSgnQiRabl14Jy9hJ0E3Jyk7UlpFOXRaM1JDSThnRTsiUnNaRUNVIiMiazwvUnk4SWdnVSJDSVJDSS05Wklncy1uUjlFNDktYUkzbEVaIms8cS9rUkIkOEkzbHgneUk5X2FFOCdBNzxxSWs8cTgva0QJCQk8cXQ4a0QJCTxxYS8ga0R7NXp9O0QJRAkJJEUzOVovRWdSZlVSIkQJCQk8OVpSeThJZ2dVXCJhYS0vOUVWXCJSYUk5SS0vYVVcIkIkWm5deCcvYSdBN1wia0QJCQk8OWFSeThJZ2dVXCJCJDBuWmFFWjdhYS1zSTNhOEVnXCJrPHE5YWtECQkJUjw5YVJ5OElnZ1VcIkIkMG5aYUVaN3l0WmduWi0ubi8zOUVaXCJSbjN5OC95aVVcImFueXRWRTM5ZjhueUk5L24zUlVSJz9WbmFVLjh0bC8zZyZJeTkvbjNVRWEvOSYvYVVCJFpuXXgnL2EnQTcnO1JaRTl0WjNSQ0k4Z0U7XCJrPGEvIFJ5OElnZ1VcIlZFYS9JLTgvZzlcIms8YS8gUnk4SWdnVVwiVkVhL0ktOEVDOVwiazwvVmxSZ1p5VVwiQiRabl14Jy95bjMnQTdcIlJ5OElnZ1VcIi9WbC04bFJnRXk5L24zXy95bjNcIms8cWEvIGs8YS8gUnk4SWdnVVwiVkVhL0ktMG5hcFwiazxzT1J5OElnZ1VcIlZFYS9JLXNFSWEvM2xSOUU0OS1nRVYvMG44YVwia0IkWm5deCczSVZFJ0E3QiRabl14JyBFWmcvbjMnQTdCJGc5STl0ZzdCJC44dGwvM19FWlpuWjc8cXNPazxnLkkzUnk4SWdnVVwiOUU0OS1WdDlFYVI5RTQ5LWcvS0UtZ1ZJODhcImtCJFpuXXgnYUVneVovLjkvbjMnQTc8cWcuSTNrPGcuSTNSL2FVXCJ0LmxaSWFFQiRabl14Jy9hJ0E3XCJSeThJZ2dVXCI4STBFOFI4STBFOC1ndHl5RWdnUi5uZy85L24zLVovbHM5UjlFNDktZy9LRS1nVkk4OFwiazxxZy5JM2tCJFpuXXgnM245L3lFJ0E3PHFhLyBrPHFhLyBrPHE5YWtECQkJUjw5YVJ5OElnZ1VcIkIkMG5aYUVaNzlFNDkteUUzOUVaXCJSZzlwOEVVXCJdL2E5czpScmZTbTJaRVZcImtCJFZFM3RfOC8zaTc8cTlha0QJCVJSUjxxOVprIjtECQkJUlJSRAkJCVIkLysrO0QJCUQJN0QJRAkvQyhSISRFMzlaL0VnUilSQkQJCUQJCS9DUihSL2dnRTkoJF92YkplYlA1eCdnRUlaeXNdblphJ0EpUkZHNlIkX3ZiSmViUDV4J2dFSVp5c11uWmEnQVIpUkJECQkJRAkJCSRFMzlaL0VnUlVSIjw5Wms8OWFSeThJZ2dVXCIzbi0wblphRVotOW4uXCJrPGEvIFJJOC9sM1VcInlFMzlFWlwiazwwWms8MFprQiQ4STNseCcuOHRsLzNnXzNuOV9DbnQzYV9jJ0E3PDBaazwwWms8MFprPHFhLyBrPHE5YWs8cTlaayI7RAkJCUQJCTdSRThnRVIkRTM5Wi9FZ1JVUiI8OVprPDlhUnk4SWdnVVwiM24tMG5aYUVaLTluLlwiazxhLyBSSTgvbDNVXCJ5RTM5RVpcIms8MFprPDBaa0IkOEkzbHgnLjh0bC8zZ18zbjlfQ250M2EnQTc8MFprPDBaazwwWms8cWEvIGs8cTlhazxxOVprIjtECQlECTdSRThnRVJCRAkJJEUzOVovRWdSVVIiPDkwbmFwUnk4SWdnVVwiYWEtOC9nOVwiayJmJEUzOVovRWdmIjxxOTBuYXBrIjtECTdECUQJL0MoUiEkeW4zQy9seCdJODhuXV8uOHRsLzNnJ0FSKVJCRAkJRAkJJEk4RVo5UlVSIjxhLyBSeThJZ2dVXCJJOEVaOVJJOEVaOS1dSVozLzNsUkk4RVo5LWc5cDhFYS04RUM5Ukk4RVo5LUlaWm5dLThFQzlSSThFWjkteW5WLm4zRTM5XCJrQiQ4STNseCdWbmF0OEVfYS9nSTA4RWEnQTc8cWEvIGsiO0QJCUQJN1JFOGdFL0MoUiFofWUKPkdQX3ZiRjZfVEd9TFJGRzZSIWFFQy8zRWEoJzZielRYYnZQPlRHJylSKVJCRAkJRAkJJEk4RVo5UlVSIjxhLyBSeThJZ2dVXCJJOEVaOVJJOEVaOS1dSVozLzNsUkk4RVo5LWc5cDhFYS04RUM5Ukk4RVo5LUlaWm5dLThFQzlSSThFWjkteW5WLm4zRTM5XCJrQiQ4STNseCdnOUk5X2dFeUNJdDg5XzInQTc8cWEvIGsiO0QJCUQJN1JFOGdFUiRJOEVaOVJVUiIiO0QJRAkvQyhSISQ4L3lfOVpSRkc2UmFFQy8zRWEoJzZielRYYnZQPlRHJylSKVJCRAkJJEk4RVo5UmZVUiI8YS8gUnk4SWdnVVwiSThFWjlSSThFWjktXUlaMy8zbFJJOEVaOS1nOXA4RWEtOEVDOVJJOEVaOS1JWlpuXS04RUM5Ukk4RVo5LXluVi5uM0UzOVwia0IkOEkzbHgndC5sWl9hRVZuJ0E3PHFhLyBrIjtECTdSRThnRS9DKFJhRUMvM0VhKCc2YnpUWGJ2UD5URycpUilSQkQJCSRJOEVaOVJmVVIiPGEvIFJ5OElnZ1VcIkk4RVo5Ukk4RVo5LV1JWjMvM2xSSThFWjktZzlwOEVhLThFQzlSSThFWjktSVpabl0tOEVDOVJJOEVaOS15blYubjNFMzlcImtCJDhJM2x4J3QubFpfYUVWbl9ZJ0E3PHFhLyBrIjtECTdECUQJJFpubjlSVVJ2VFQ1XzY+djtECUQvQ1IoL2dnRTkoJF92YkplYlA1eCdnRUlaeXNdblphJ0EpUkZHNlIkX3ZiSmViUDV4J2dFSVp5c11uWmEnQSlSQkRSUkRSUiRnRUlaeXNdblphUlVSczlWOGcuRXkvSTh5c0laZyhSJF92YkplYlA1eCdnRUlaeXNdblphJ0EsUmJHNV9KZVQ1YlAsUiR5bjNDL2x4J3lzSVpnRTknQVIpO0RSUkQ3UkU4Z0VSJGdFSVp5c11uWmFSVVIiIjtERAkJRXlzblI8PDx7NXp9RDxDblpWUkl5OS9uM1UiP1ZuYVUuOHRsLzNnIlJWRTlzbmFVIi5uZzkiUjNJVkVVIm4uOS9uM2cwSVoiUi9hVSJuLjkvbjNnMElaImtEPC8zLnQ5UjlwLkVVInMvYWFFMyJSM0lWRVUiVm5hIlIgSTh0RVUiLjh0bC8zZyJrRAk8YS8gUnk4SWdnVSIuSTNFOFIuSTNFOC1hRUNJdDg5ImtECVJSPGEvIFJ5OElnZ1UiLkkzRTgtc0VJYS8zbCJrRAkJQiQ4STNseCcuOHRsLzNnXzgvZzknQTdECQlECQk8YS8gUnk4SWdnVSJzRUlhLzNsLUU4RVZFMzlnImtECQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LlJzSWctQ0VFYTBJeWkiUmc5cDhFVSJdL2E5czpjMncuNDsia0QJCQkJPC8zLnQ5UmEvWlUiSXQ5biJSM0lWRVUiZ0VJWnlzXW5aYSJSOXAuRVUiZ0VJWnlzIlJ5OElnZ1UiQ25aVi15bjM5Wm44IlIuOEl5RXNuOGFFWlUiQiQ4STNseCdnRUlaeXNfQy9FOGEnQTciUiBJOHRFVSJCJGdFSVp5c11uWmE3ImtECQkJCTxhLyBSeThJZ2dVIkNuWlYteW4zOVpuOC1DRUVhMEl5aSJrRAkJCQkJPElSc1pFQ1UiIyJSbjN5OC95aVUiJCg5cy9nKWZ5OG5nRWc5KCdDblpWJylmZ3QwVi85KCk7Ims8L1J5OElnZ1UiQ0lSQ0ktZ0VJWnlzUjlFNDktZy9LRS0wSWdFUjlFNDktVnQ5RWEiazxxL2s8cUlrRAkJCQk8cWEvIGtECQkJPHFhLyBrRAkJPHFhLyBrRAlECVJSPHFhLyBrRAlSUkQJUlI8YS8gUnk4SWdnVSJhYSJSL2FVIjNFZzlJMDhFImtECQk8OUkwOEVSeThJZ2dVIjlJMDhFUjlJMDhFLTRnUjlJMDhFLXNuIEVaImtECQkJQiRFMzlaL0VnN0QJCTxxOUkwOEVrRAlSUjxxYS8ga0QJCTxhLyBSeThJZ2dVIi5JM0U4LUNubjlFWiJrRAkJCTwwdDk5bjNSOXAuRVUiMHQ5OW4zIlJuM3k4L3lpVSJhbnl0VkUzOWY4bnlJOS9uM1UnP1ZuYVUuOHRsLzNnJkl5OS9uM1VJYWEnIlJ5OElnZ1UiMDkzUjBsLTlFSThSMDkzLWdWUjA5My1aSS9nRWFSLm5nLzkvbjMtOEVDOSJrPC9SeThJZ2dVIkNJUkNJLS44dGdSLm5nLzkvbjMtOEVDOSJrPHEva0IkOEkzbHgnLjh0bC8zZ18wX0lhYSdBNzxxMHQ5OW4za0QJCQk8MHQ5OW4zUjlwLkVVIjB0OTluMyJSbjN5OC95aVUiaDh0bC8zZS44bklhKCk7UlpFOXRaM1JDSThnRTsiUnk4SWdnVSIwOTNSMGwtZzhJOUUtT3d3UjA5My1nVlIwOTMtWkkvZ0VhUi5uZy85L24zLThFQzkiazwvUnk4SWdnVSJDSVJDSS10LjhuSWFSLm5nLzkvbjMtOEVDOSJrPHEva0IkOEkzbHgnLjh0bC8zZ190LjhuSWFnJ0E3PHEwdDk5bjNrRAkJCUIkRVpablpfMHQ5OW4zN0QJCQk8MHQ5OW4zUjlwLkVVIjB0OTluMyJSbjN5OC95aVUiMXNFeWllLmFJOUUodyk7UlpFOXRaM1JDSThnRTsiUnk4SWdnVSIwOTNSMGwtLlovVklacC1Pd3dSMDkzLWdWUjA5My1aSS9nRWFSLm5nLzkvbjMtOEVDOSJrPC9SeThJZ2dVIkNJUkNJLWdFSVp5c1IubmcvOS9uMy04RUM5Ims8cS9rQiQ4STNseCcuOHRsLzNnX3QubFpfeSdBNzxxMHQ5OW4za0QJCTxxYS8gawkJRAk8cWEvIGtEPHFDblpWa0QJQiRJOEVaOTdECTxhLyBSeThJZ2dVIlZuYUk4UkNJYUUiUjNJVkVVIlZuYXQ4RXQuOG5JYSJSL2FVIlZuYXQ4RXQuOG5JYSJrRAkJPGEvIFJ5OElnZ1UiVm5hSTgtYS9JOG5sUlZuYUk4LWdWIlJabjhFVSJhbnl0VkUzOSJrCUQJCQk8YS8gUnk4SWdnVSJWbmFJOC15bjM5RTM5ImtECQkJCTxDblpWUlZFOXNuYVUiLm5nOSJSSXQ5bnluVi44RTlFVSJuQ0MiUnk4SWdnVSJDblpWLXNuWi9LbjM5STgiUi9hVSIuOHRsLzN0LjhuSWEiUkUzeTlwLkVVIlZ0ODkvLklaOXFDblpWLWFJOUkia0QJCQkJPC8zLnQ5UjlwLkVVInMvYWFFMyJSM0lWRVUidGdFWl9zSWdzIlIgSTh0RVUiQiRhOEVfOG5sLzNfc0lnczciUnFrRAkJCQk8LzMudDlSOXAuRVUicy9hYUUzIlIzSVZFVSIvYSJSL2FVIi44dGwvM18vYSJSIEk4dEVVIncia0QJCQkJPGEvIFJ5OElnZ1UiVm5hSTgtc0VJYUVaUnQvLWEvSThubC05Lzk4RTBJWiJrRAkJCQkJPDB0OTluM1I5cC5FVSIwdDk5bjMiUnk4SWdnVSJ5OG5nRSJSYUk5SS1hL2dWL2dnVSJWbmFJOCJSSVovSS04STBFOFUiMThuZ0UiazxnLkkzUklaL0ktcy9hYUUzVSI5WnRFImsmOS9WRWc7PHFnLkkzazxxMHQ5OW4za0QJCQkJCTxnLkkzUnk4SWdnVSJ0Ly1hL0k4bmwtOS85OEUia0IkOEkzbHgnLjh0bC8zZ190LjhuSWEnQTc8cWcuSTNrRAkJCQk8cWEvIGtECQkJCTxhLyBSeThJZ2dVIlZuYUk4LTBuYXAia0QJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQk8YS8gUnk4SWdnVSJ5bjgtZ1YtWWMia0QJCQkJCQlSUjwvMy50OVI5cC5FVSJDLzhFIlIzSVZFVSIuOHRsLzNDLzhFIlJJeXlFLjlVIjlFNDlxNFY4LEkuLjgveUk5L24zcUsvLiJSZzlwOEVVIl0vYTlzOlN3ci40OyJSeThJZ2dVIi95c0V5aSJrRAkJCQkJCTxxYS8ga0QJCUQJCQkJCTxxYS8ga0QJCQkJPHFhLyBrRAkJCQk8YS8gUnk4SWdnVSJWbmFJOC1Dbm45RVoiUmc5cDhFVSJWSVpsLzMtOW4uOi1jdy40OyJrRAkJCQkJPDB0OTluM1I5cC5FVSJndDBWLzkiUnk4SWdnVSIwOTNSMGwtOUVJOFIwOTMtZ1ZSMDkzLVpJL2dFYVIubmcvOS9uMy04RUM5Ims8L1J5OElnZ1UiQ0lSQ0ktdC44bklhUi5uZy85L24zLThFQzkiazxxL2tCJDhJM2x4Jy44dGwvM2dfdC44bklhZydBNzxxMHQ5OW4za0QJCQkJCTwwdDk5bjNSOXAuRVUiMHQ5OW4zIlJ5OElnZ1UiMDkzUjBsLWc4STlFLU93d1IwOTMtZ1ZSMDkzLVpJL2dFYSJSYUk5SS1hL2dWL2dnVSJWbmFJOCJrQiQ4STNseCcuX3lJM3lFOCdBNzxxMHQ5OW4za0QJCQkJPHFhLyBrRAkJCQk8cUNuWlZrRAkJCTxxYS8ga0QJCTxxYS8ga0QJPHFhLyBrREQJPGEvIFJ5OElnZ1UiVm5hSThSQ0lhRSJSM0lWRVUiM0VFYUM5LiJSL2FVIjNFRWFDOS4ia0QJCTxhLyBSeThJZ2dVIlZuYUk4LWEvSThubFJWbmFJOC04bCJSWm44RVUiYW55dFZFMzkiawlECQkJPGEvIFJ5OElnZ1UiVm5hSTgteW4zOUUzOSJrRAkJCQk8Q25aVlJWRTlzbmFVIi5uZzkiUkl0OW55blYuOEU5RVUibkNDIlJ5OElnZ1UiQ25aVi1zblovS24zOUk4IlIvYVUiQzkuZ0VaIEVaImtECQkJCTwvMy50OVI5cC5FVSJzL2FhRTMiUjNJVkVVIkl5OS9uMyJSIEk4dEVVInlzRXlpQzkuImtECQkJCTwvMy50OVI5cC5FVSJzL2FhRTMiUjNJVkVVInRnRVpfc0lncyJSIEk4dEVVIkIkYThFXzhubC8zX3NJZ3M3IlJxa0QJCQkJPGEvIFJ5OElnZ1UiVm5hSTgtc0VJYUVaUnQvLWEvSThubC05Lzk4RTBJWiJrRAkJCQkJPDB0OTluM1I5cC5FVSIwdDk5bjMiUnk4SWdnVSJ5OG5nRSJSYUk5SS1hL2dWL2dnVSJWbmFJOCJSSVovSS04STBFOFUiMThuZ0UiazxnLkkzUklaL0ktcy9hYUUzVSI5WnRFImsmOS9WRWc7PHFnLkkzazxxMHQ5OW4za0QJCQkJCTxnLkkzUnk4SWdnVSJ0Ly1hL0k4bmwtOS85OEUia0IkOEkzbHgnLjh0bC8zZ190LjhuSWEnQTc8cWcuSTNrRAkJCQk8cWEvIGtECQkJCTxhLyBSeThJZ2dVIlZuYUk4LTBuYXAia0QJCQkJRAkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtUyJrQiQ4STNseCd0LmxaX0M5Ll9jJ0E3PHE4STBFOGtECQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVcia0QJCQkJCQkJPDhJMEU4Unk4SWdnVSJaSWEvbi0vMzgvM0VSLm5nLzkvbjMtOEVDOSJrPC8zLnQ5Unk4SWdnVSIveXNFeWkiUjlwLkVVIlpJYS9uIlIzSVZFVSJDOS54OXAuRUEiUiBJOHRFVSJDOS4iUnlzRXlpRWFrPTVoPHE4STBFOGtECQkJCQkJCTw4STBFOFJ5OElnZ1UiWklhL24tLzM4LzNFUi5uZy85L24zLThFQzkiazwvMy50OVJ5OElnZ1UiL3lzRXlpIlI5cC5FVSJaSWEvbiJSM0lWRVUiQzkueDlwLkVBIlIgSTh0RVUiZ2c4QzkuImtQUH1SPTVoPHE4STBFOGtECQkJCQkJCTw4STBFOFJ5OElnZ1UiWklhL24tLzM4LzNFUi5uZy85L24zLThFQzkiazwvMy50OVJ5OElnZ1UiL3lzRXlpIlI5cC5FVSJaSWEvbiJSM0lWRVUiQzkueDlwLkVBIlIgSTh0RVUiZ2dzYyJrUD01aFJQUHtjPHE4STBFOGtECQkJCQkJPHFhLyBrRAkJCQkJPHFhLyBrRAkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtUyJrQiQ4STNseCd0LmxaX0M5Ll9TJ0E3PHE4STBFOGtECQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVcia0QJCQkJCQkJPC8zLnQ5UjlwLkVVIjlFNDkiUnk4SWdnVSJDblpWLXluMzlabjhSXS9hOXMtU3d3Ui5uZy85L24zLThFQzkiUjNJVkVVIkM5LnhnRVogRVpBImtECQkJCQkJCTxnLkkzUnk4SWdnVSIubmcvOS9uMy04RUM5ImtCJDhJM2x4J3QubFpfQzkuX3InQTc8cWcuSTNrRAkJCQkJCQk8LzMudDlSOXAuRVUiOUU0OSJSeThJZ2dVIkNuWlYteW4zOVpuOFIubmcvOS9uMy04RUM5IlIzSVZFVSJDOS54Lm5aOUEiUmc5cDhFVSJdL2E5czpyMi40IlIgSTh0RVUiY1kia0QJCQkJCQk8cWEvIGtECQkJCQk8cWEvIGtECQkJCQk8YS8gUnk4SWdnVSJDblpWLWxabnQuImtECQkJCQkJPDhJMEU4Unk4SWdnVSJ5bjM5Wm44LThJMEU4UnluOC1nVi1TImtCJDhJM2x4J3QubFpfQzkuXzInQTc8cThJMEU4a0QJCQkJCQk8YS8gUnk4SWdnVSJ5bjgtZ1YtVyJrRAkJCQkJCQk8LzMudDlSOXAuRVUiOUU0OSJSeThJZ2dVIkNuWlYteW4zOVpuOFJdL2E5cy1TMndSLm5nLzkvbjMtOEVDOSJSM0lWRVUiQzkueHRnRVozSVZFQSJrRAkJCQkJCTxxYS8ga0QJCQkJCTxxYS8ga0QJCQkJCTxhLyBSeThJZ2dVIkNuWlYtbFpudC4ia0QJCQkJCQk8OEkwRThSeThJZ2dVInluMzlabjgtOEkwRThSeW44LWdWLVMia0IkOEkzbHgndC5sWl9DOS5fTydBNzxxOEkwRThrRAkJCQkJCTxhLyBSeThJZ2dVInluOC1nVi1XImtECQkJCQkJCTwvMy50OVI5cC5FVSI5RTQ5IlJ5OElnZ1UiQ25aVi15bjM5Wm44Ul0vYTlzLVMyd1IubmcvOS9uMy04RUM5IlIzSVZFVSJDOS54LklnZ11uWmFBImtECQkJCQkJPHFhLyBrRAkJCQkJPHFhLyBrRAkJCQkJPGEvIFJ5OElnZ1UiQ25aVi1sWm50LiJrRAkJCQkJCTw4STBFOFJ5OElnZ1UieW4zOVpuOC04STBFOFJ5bjgtZ1YtUyJrQiQ4STNseCd0LmxaX0M5Ll9tJ0E3PHE4STBFOGtECQkJCQkJPGEvIFJ5OElnZ1UieW44LWdWLVcia0QJCQkJCQkJPC8zLnQ5UjlwLkVVIjlFNDkiUnk4SWdnVSJDblpWLXluMzlabjhSXS9hOXMtcjJ3Ui5uZy85L24zLThFQzkiUjNJVkVVIkM5LnguSTlzQSJSIEk4dEVVIkIkWm5uOTcia0QJCQkJCQk8cWEvIGtECQkJCQk8cWEvIGtECQkJCQk8YS8gUnk4SWdnVSI5RTQ5LVZ0OUVhUjlFNDktZy9LRS1nVkk4OCJrQiQ4STNseCd0LmxaX0M5Ll9ZMidBNzxxYS8ga0QJCQkJREQJCQkJPHFhLyBrRAkJCQk8YS8gUnk4SWdnVSJWbmFJOC1Dbm45RVoiUmc5cDhFVSJWSVpsLzMtOW4uOi1jdy40OyJrRAkJCQkJPDB0OTluM1IvYVUieXNFeWlDOS4wdDk5bjMiUjlwLkVVImd0MFYvOSJSeThJZ2dVIjA5M1IwbC05RUk4UjA5My1nVlIwOTMtWkkvZ0VhUi5uZy85L24zLThFQzkiazwvUnk4SWdnVSJDSVJDSS1DblpdSVphUi5uZy85L24zLThFQzkiazxxL2tCJDhJM2x4J3QubFpfM0U0OSdBNzxxMHQ5OW4za0QJCQkJCTwwdDk5bjNSOXAuRVUiMHQ5OW4zIlJ5OElnZ1UiMDkzUjBsLWc4STlFLU93d1IwOTMtZ1ZSMDkzLVpJL2dFYSJSYUk5SS1hL2dWL2dnVSJWbmFJOCJrQiQ4STNseCcuX3lJM3lFOCdBNzxxMHQ5OW4za0QJCQkJPHFhLyBrRAkJCQk8cUNuWlZrRAkJCTxxYS8ga0QJCTxxYS8ga0QJPHFhLyBrCUQJRAk8Z3laLy45a1JSRAk8IS0tRAlDdDN5OS9uM1J5bjNDL1pWYUU4RTlFKC9hKUJECQkJNn1ieW4zQy9aVihSJ0IkOEkzbHgnLjh0bC8zZ19hRTgnQTcnLFInQiQ4STNseCcuX3luM0MvWlYnQTcnLFJDdDN5OS9uM1IoKVJCRAkJCQlhbnl0VkUzOWY4bnlJOS9uM1UiP1ZuYVUuOHRsLzNnJkl5OS9uM1VhRThFOUUmdGdFWl9zSWdzVUIkYThFXzhubC8zX3NJZ3M3Ji9hVSIrL2E7RAkJCTdSKTtECTdECUQJQ3QzeTkvbjNSaDh0bC8zZS44bklhKClCRAkJJCgnIy44dGwvM18vYScpZiBJOCgndycpO0QJCSQoJyNWbmF0OEV0LjhuSWEnKWZWbmFJOCgpO0QJCUQJN0QJRAlDdDN5OS9uM1JoOHRsLzNlLmFJOUUoL2EpQkQJRAkJJCgnIy44dGwvM18vYScpZiBJOCgvYSk7RAkJJCgnI1ZuYXQ4RXQuOG5JYScpZlZuYUk4KCk7RAkJRAk3RAlECUN0M3k5L24zUmg4dGwvM2UuYUk5RT1ablZldn0oL2EsUnRaOCxSIEVaZy9uMylCREQJCVBzbl19bklhLzNsKCcnKTtECQlECQkkZklqSTQoQkQJCQl0Wjg6UiJFM2wvM0VxSWpJNHF5bjM5Wm44OEVaZi5zLj9WbmFVLjh0bC8zZyIsRAkJCWFJOUk6UkJSL2E6Ui9hLFJ0Wjg6UnRaOCxSdGdFWl9zSWdzOlIiQiRhOEVfOG5sLzNfc0lnczciLFJJeTkvbjM6UiJ0LmFJOUVDWm5WdFo4IlI3LEQJCQk5cC5FOlInaFRQNScsRAkJCWFJOUk1cC5FOlInamduMycsRAkJCWd0eXlFZ2c6UkN0M3k5L24zKGFJOUkpUkJECQkJCXsvYUV9bklhLzNsKCcnKTtECQkJCUQJCQkJL0NSKGFJOUkpUkJECQkJCUQJCQkJCS9DUihhSTlJZmc5STl0Z1JVVVIiRVpabloiKVJCRAkJCQkJRAkJCQkJCTZ9Ykk4RVo5KGFJOUlmOUU0OSxSJ0IkOEkzbHgnLl8vM0NuJ0E3Jyk7RAkJRAkJCQkJN1JFOGdFUi9DUihhSTlJZmc5STl0Z1JVVVIiM0VFYUM5LiIpUkJECQkJCQlECQkJCQkJJCgnIzNFRWFDOS4nKWZWbmFJOCgpO0QJCQkJCQlECQkJCQk3UkU4Z0VSL0NSKGFJOUlmZzlJOXRnUlVVUiJndHl5RWciKVJCRAkJCQkJRAkJCQkJCS9DKCBFWmcvbjMpUkJECQkJCQkJCSQoIiN0LmxaSWFFIisvYSlmczlWOCgnJyk7RAkJCQkJCQkkKCIjIEVaZy9uMyIrL2EpZjlFNDkoIEVaZy9uMyk7RAkJCQkJCTdSRThnRVJCRAkJCQkJCQlnRTk1L1ZFbnQ5KCJdLzNhbl1mOG55STkvbjNSVVInP1ZuYVUuOHRsLzNnJyIsUlN3d1IpO0QJCQkJCQk3RAkJCQkJN0QJCQlECQkJCTdECQkJNyxECQkJRVpablo6UkN0M3k5L24zKGFJOUkpUkJECQkJCXsvYUV9bklhLzNsKCcnKTtECQkJCQlECQkJCTZ9Ykk4RVo5KGFJOUlmWkVnLm4zZ0U1RTQ5LFInQiQ4STNseCcuXy8zQ24nQTcnKTtECQkJRAkJCTdECQk3KTtECQlECTdECUQJQ3QzeTkvbjNSMXNFeWllLmFJOUUoL2EpQkQJRAkJUHNuXX1uSWEvM2woJycpO0QJCUQJCSRmSWpJNChCRAkJCXRaODpSIkUzbC8zRXFJakk0cXluMzlabjg4RVpmLnMuP1ZuYVUuOHRsLzNnIixECQkJYUk5STpSQlIvYTpSL2EsUnRnRVpfc0lnczpSIkIkYThFXzhubC8zX3NJZ3M3IixSSXk5L24zOlIieXNFeWl0LmFJOUUiUjcsRAkJCTlwLkU6UidoVFA1JyxECQkJYUk5STVwLkU6UidqZ24zJyxECQkJZ3R5eUVnZzpSQ3QzeTkvbjMoYUk5SSlSQkQJCQkJey9hRX1uSWEvM2woJycpO0QJCQkJRAkJCQkvQ1IoYUk5SSlSQkQJCQkJRAkJCQkJL0NSKGFJOUlmZzlJOXRnUlVVUiJFWlpuWiIpUkJECQkJCQlECQkJCQkJNn1iSThFWjkoYUk5SWY5RTQ5LFInQiQ4STNseCcuXy8zQ24nQTcnKTtECQlECQkJCQk3UkU4Z0VSL0NSKGFJOUlmZzlJOXRnUlVVUiJndHl5RWciKVJCREQJCQkJCQkvQygvYSlSQkQJCQkJCQkJNn1ieW4zQy9aVihSJ0IkOEkzbHgnLjh0bC8zZ190LmxaX2dZJ0E3UicrYUk5SWYgRVpnL24zKyc8MFprPDBaa0IkOEkzbHgnLjh0bC8zZ190LmxaX2djJ0E3JyxSJ0IkOEkzbHgnLl8vM0NuJ0E3JyxSQ3QzeTkvbjNSKClSQkQJCQkJCQkJRAkJCQkJCQkJaDh0bC8zZS5hSTlFPVpuVmV2fSgvYSxSYUk5SWZ0WjgsUkNJOGdFKUQJCQkJCQkJRAkJCQkJCQk3Uik7RAkJCQkJCTdSRThnRVJCRAkJCQkJCQkkZkVJeXMoUmFJOUlmIEVaZy9uM2csUkN0M3k5L24zKFIvLFIgSThSKVJCRAkJCQkJCQkJJCgiI3QubFpJYUUiKyBJOGYvYSlmczlWOCgnQiQ4STNseCcuOHRsLzNnX3QubFpfZ1knQTdSJysgSThmIEVaZy9uMysnUjxJUnk4SWdnVSI5RTQ5LWFJM2xFWiJSbjN5OC95aVUiRSBFMzlmZzluLmhabi5JbEk5L24zKCk7Umg4dGwvM2UuYUk5RT1ablZldn0oXCcnKyBJOGYvYSsnXCcsUlwnJysgSThmdFo4KydcJyxSXCcnKyBJOGYgRVpnL24zKydcJyk7UlpFOXRaM1JDSThnRTsiUnNaRUNVIiMia0IkOEkzbHgnLjh0bC8zZ190LmxaX2dTJ0E3PHFJaycpO0QJCQkJCQkJNyk7RAkJCQkJCTdERAkJCQkJN0QJCQlECQkJCTdECQkJNyxECQkJRVpablo6UkN0M3k5L24zKGFJOUkpUkJECQkJCXsvYUV9bklhLzNsKCcnKTtECQkJCQlECQkJCTZ9Ykk4RVo5KGFJOUlmWkVnLm4zZ0U1RTQ5LFInQiQ4STNseCcuXy8zQ24nQTcnKTtECQkJRAkJCTdECQk3KTtECQlECTdECUQJJCgnIy44dGwvM3QuOG5JYScpZmd0MFYvOShDdDN5OS9uMygpUkJECUQJCSBJWlJDblpWNkk5SVJVUjNFXVI9blpWNkk5SSgkKCcjLjh0bC8zdC44bklhJyl4d0EpO0QJCUQJCSQoJyNWbmF0OEV0LjhuSWEnKWZWbmFJOCgncy9hRScpO0QJCSQoIiMuOHRsLzN0LjhuSWEiKXh3QWZaRWdFOSgpO0QJCSQoImZDLzhFM0lWRSIpZnM5VjgoJ0IkOEkzbHgnQy84RV9hRUNfWSdBNycpO0QJCVBzbl19bklhLzNsKCcnKTtECQlECQkkZklqSTQoQkQJCQl0Wjg6UiJFM2wvM0VxSWpJNHF5bjM5Wm44OEVaZi5zLj9WbmFVLjh0bC8zZyIsRAkJCWFJOUk6UkNuWlY2STlJLEQJCQkuWm55RWdnNkk5STpSQ0k4Z0UsRAkJCXluMzlFMzk1cC5FOlJDSThnRSxECQkJOXAuRTpSJ2hUUDUnLEQJCQlhSTlJNXAuRTpSJ2pnbjMnLEQJCQlndHl5RWdnOlJDdDN5OS9uMyhhSTlJKVJCRAkJCQl7L2FFfW5JYS8zbCgnJyk7RAkJCQlECQkJCS9DUihhSTlJKVJCRAkJCQlECQkJCQkvQ1IoYUk5SWZnOUk5dGdSVVVSIkVaWm5aIilSQkQJCQkJCUQJCQkJCQk2fWJJOEVaOShhSTlJZjlFNDksUidCJDhJM2x4Jy5fLzNDbidBNycpO0QJCUQJCQkJCTdSRThnRVIvQ1IoYUk5SWZnOUk5dGdSVVVSIjNFRWFDOS4iKVJCRAkJCQkJRAkJCQkJCSQoJyMzRUVhQzkuJylmVm5hSTgoKTtECQkJCQkJRAkJCQkJN1JFOGdFUi9DUihhSTlJZmc5STl0Z1JVVVIiZ3R5eUVnIilSQkQJCQkJCQlnRTk1L1ZFbnQ5KCJdLzNhbl1mOG55STkvbjNSVVInP1ZuYVUuOHRsLzNnJyIsUlN3d1IpO0QJCQkJCTdECQkJRAkJCQk3RAkJCTcsRAkJCUVaWm5aOlJDdDN5OS9uMyhhSTlJKVJCRAkJCQl7L2FFfW5JYS8zbCgnJyk7RAkJCQkJRAkJCQk2fWJJOEVaOShhSTlJZlpFZy5uM2dFNUU0OSxSJ0IkOEkzbHgnLl8vM0NuJ0E3Jyk7RAkJCUQJCQk3RAkJNyk7REQJCVpFOXRaM1JDSThnRTtECTcpO0QJRAkkKCcjQzkuZ0VaIEVaJylmZ3QwVi85KEN0M3k5L24zKClSQkQJRAkJIElaUkNuWlY2STlJUlVSM0VdUj1uWlY2STlJKCQoJyNDOS5nRVogRVonKXh3QSk7RAkJRAkJUHNuXX1uSWEvM2woJycpO0QJCSQoJyN5c0V5aUM5LjB0OTluMycpZkk5OVooImEvZ0kwOEVhIixSImEvZ0kwOEVhIik7RAkJRAkJJGZJakk0KEJECQkJdFo4OlIiRTNsLzNFcUlqSTRxeW4zOVpuODhFWmYucy4/Vm5hVS44dGwvM2ciLEQJCQlhSTlJOlJDblpWNkk5SSxECQkJLlpueUVnZzZJOUk6UkNJOGdFLEQJCQl5bjM5RTM5NXAuRTpSQ0k4Z0UsRAkJCTlwLkU6UidoVFA1JyxECQkJYUk5STVwLkU6UidqZ24zJyxECQkJZ3R5eUVnZzpSQ3QzeTkvbjMoYUk5SSlSQkQJCQkJey9hRX1uSWEvM2woJycpO0QJCQkJJCgnI3lzRXlpQzkuMHQ5OW4zJylmSTk5WigiYS9nSTA4RWEiLFJDSThnRSk7RAkJCQlECQkJCS9DUihhSTlJZmc5STl0Z1JVVVIiZ3R5eUVnIilSQkQJCQkJCWdFOTUvVkVudDkoIl0vM2FuXWY4bnlJOS9uM1JVUic/Vm5hVS44dGwvM2cnIixSU3d3Uik7RAkJCQk3UkU4Z0VSL0NSKGFJOUlmZzlJOXRnUlVVUiJFWlpuWiIpUkJECQkJCQk2fWJJOEVaOShhSTlJZjlFNDksUidCJDhJM2x4J0k4OF8vM0NuJ0E3Jyk7RAkJCQk3RAkJCTcsRAkJCUVaWm5aOlJDdDN5OS9uMyhhSTlJKVJCRAkJCQl7L2FFfW5JYS8zbCgnJyk7RAkJCQkkKCcjeXNFeWlDOS4wdDk5bjMnKWZJOTlaKCJhL2dJMDhFYSIsUkNJOGdFKTtECQkJCTZ9Ykk4RVo5KGFJOUlmWkVnLm4zZ0U1RTQ5LFInQiQ4STNseCcuXy8zQ24nQTcnKTtECQkJRAkJCTdECQk3KTtECUQJCVpFOXRaM1JDSThnRTtECUQJNyk7RAlECWpKdEVacChDdDN5OS9uMygkKUJERAkJJCgnZmFhJylmM0VnOUkwOEUoQkQJCQk4L2c5R25hRUdJVkU6Uic5MG5hcCcsRAkJCS85RVZHbmFFR0lWRTpSJzlaZmFhLS85RVYnLEQJCQlzSTNhOEUxOElnZzpSJ2FhLXNJM2E4RWcnLEQJCQlFVi45cDE4SWdnOlInYWEtRVYuOXBnJyxECQkJLjhJeUUxOElnZzpSJ2FhLS44SXlFc244YUVaZycsRAkJCS44SXlFYjhFVkUzOTZFQ0l0ODk6Uic8OVpSeThJZ2dVImFhLS44SXlFc244YUVaZyJrPDlhayYzMGcuOzxxOWFrPDlhayYzMGcuOzxxOWFrPDlhayYzMGcuOzxxOWFrPHE5WmsnLEQJCQlWSTQ2RS45czpSWUQJCTcpO0QJCUQJCSQoJyMzRWc5STA4RScpZjNFZzlJMDhFKClmbjMoJ3lzSTNsRScsQ3QzeTkvbjMoKUJECQlECQkJIElaUnRaOFJVUiJJeTkvbjNVLjh0bC8zZ25aOSZ0Z0VaX3NJZ3NVQiRhOEVfOG5sLzNfc0lnczcmOC9nOVUiK10vM2FuXWZRUFRHZmc5Wi8zbC9DcCgkKDlzL2cpZjNFZzlJMDhFKCdnRVovSTgvS0UnKSk7RAkJCQlECQkJUHNuXX1uSWEvM2woJycpO0QJCQkkZi5uZzkoJ0UzbC8zRXFJakk0cXluMzlabjg4RVpmLnMuP1ZuYVVJYVYvM0N0M3k5L24zJyxSdFo4LFJDdDN5OS9uMyhhSTlJKUJECUQJCQkJey9hRX1uSWEvM2woJycpO0QJRAkJCQkvQ1IoYUk5SVIhVVInbmknKVJCREQJCQkJCTZ9Ykk4RVo5KCdCJDhJM2x4J3lJOV9nblo5X0NJLzgnQTcnLFInQiQ4STNseCcuXy8zQ24nQTcnKTtERAkJCQk3RAlECQkJNyk7RAkJCUQJCTcpO0QJCUQJCSQoImZJOEVaOS0vM0NuIilmeTgveWkoQ3QzeTkvbjMoRSlCRAkJCUVmZzluLmhabi5JbEk5L24zKCk7RAkJNyk7RFJSRAk3KTtECTxxZ3laLy45a0R7NXp9O0QJRAlFeXNuQ25uOUVaKCk7REQ3RD9r';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdhXVRod0t9V05VakM2U2xJeHNybnE0M1ZZQUYKPDAxTTc9YltMaXQ1UEQva0p7OFoyZHU5PmVjWEJHRSBvenlPdi5IbWZSUXBnJywnZHdPUDB6TDlLPWpmRDNnYVtoNG8veG5tMV1BRzxiQzh9RkVxWWt1VFMKaT5RSGxyNVpYdElVMlZ7TmV2Qk1jNlJwVzcuIEp5cycpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw=='));
Function Calls
strtr | 1 |
strrev | 1 |
str_replace | 1 |
base64_decode | 2 |
Stats
MD5 | 9c48e630f87226234a9b7ec0bbccf3d3 |
Eval Count | 2 |
Decode Time | 207 ms |