Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php $_F=__FILE__;$_C1353562110='Pz48PzdCNwpmZSAoIWViOENXZmg4X1l1ZkdXRygiTTc3X0NkTUdHX01i..
Decoded Output download
?><?php
if (!function_exists("app_class_autoloader")) {
include("../lib/app_top.php");
}
if (!isset($_SESSION[SESSION_VAR_NAME]['user_id'])) {
header("location: ../error_401.php");
exit();
} else {
$page_ctl = new page_access_ctl($db);
if ($page_ctl->hasPermission('274', $_SESSION[SESSION_VAR_NAME]['role'])) {
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && !empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
//else {
$Page = new page($db);
$userAccessRight = $Page->accesspermissions('274', $_SESSION[SESSION_VAR_NAME]['role']);
$no_userAccessRight = count($userAccessRight);
$access_type = array();
foreach ($userAccessRight as $p_ar) {
array_push($access_type, $p_ar['type']);
}
if (!empty($no_userAccessRight) && $no_userAccessRight > 0) {
$userAccessRightd_wk = $Page->accesspermissions('474', $_SESSION[SESSION_VAR_NAME]['role']);
$no_userAccessRightd_wk = count($userAccessRightd_wk);
$access_typed_wk = array();
foreach ($userAccessRightd_wk as $p_ard_wk) {
array_push($access_typed_wk, $p_ard_wk['type']);
}
if (in_array('1', $access_type)) {
$cateId = decrypt_url($_REQUEST['cateId'], APP_ENCRYPTION_SALT);
$pid = decrypt_url($_REQUEST['pid'], APP_ENCRYPTION_SALT);
$Project = new project($db);
$project_details = $Project->getProject_ById($pid);
$Category = new category($db);
$Category->setModule('Deal Room');
$Category->setParentId($cateId);
if ($_SESSION[SESSION_VAR_NAME]['guest_id'] == '' || empty($_SESSION[SESSION_VAR_NAME]['guest_id'])) {
if ($_SESSION[SESSION_VAR_NAME]['role'] != 1 || $_SESSION[SESSION_VAR_NAME]['role'] != 2) {
$Category->setParentId($cateId);
$category_details = $Category->getUser_AccessCategories($_SESSION[SESSION_VAR_NAME]['role'], $_SESSION[SESSION_VAR_NAME]['user_id']);
} else {
$category_details = $Category->getCategory_ByParentIdAll();
}
} else {
if ($_SESSION[SESSION_VAR_NAME]['role'] == 29) {
$Category->setUserId($_SESSION[SESSION_VAR_NAME]['user_id']);
$category_details = $Category->getCategory_ByBranch($project_details[0]['category_id']);
} else {
$Category->setUserId($_SESSION[SESSION_VAR_NAME]['guest_id']);
$category_details = $Category->getCategory_ByGuestID($project_details[0]['category_id']);
}
}
$no_category_details = count($category_details);
$File = new file_manager($db);
//print_r($category_details);
?>
<script type="text/javascript">
/*====Select Box====*/
$(function () {
$(".chzn-select").chosen();
$(".chzn-select-deselect").chosen({
allow_single_deselect: true
});
});
$(function () {
// add multiple select / deselect functionality
$("#selectall").click(function () {
$('.case').prop('checked', this.checked);
});
// if all checkbox are selected, check the selectall checkbox
// and viceversa
$(".case").click(function () {
if ($(".case").length == $(".case:checked").length) {
$("#selectall").prop("checked", "checked");
} else {
$("#selectall").prop("checked", false);
}
});
});
$(function () {
$('#data-table').dataTable({
"sDom": "<'row-fluid'<'span6'l><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
"aoColumnDefs": [
{"bSortable": false, "aTargets": [0]},
{"bSortable": false, "aTargets": [3]},
]
});
});
$(function () {
$("#delete_all").click(function () {
basic_form_submit_msg('categories/category_delete_all.php', '', 'DashboardForm');
});
$("#print_all").click(function () {
var printall_pid = 'pid';
var printall_hidden_field = '<div id="div_' + printall_pid + '"><input type="hidden" name="' + printall_pid + '" value="<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>" >" ></div>';
$("#DashboardForm").append(printall_hidden_field);
document.getElementById("DashboardForm").target = "_blank";
document.getElementById("DashboardForm").action = 'categories/category_print_all.php';
document.getElementById("DashboardForm").submit();
document.getElementById("DashboardForm").target = "";
document.getElementById("DashboardForm").action = '';
$('#div_' + printall_pid).remove();
});
$("#export_xls").click(function () {
var export_format = 'format';
var export_pid = 'pid';
var export_hidden_field = '<div id="div_' + export_format + '"><input type="hidden" name="' + export_format + '" value="xls" ><input type="hidden" name="' + export_pid + '" value="<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>" ></div>';
$("#DashboardForm").append(export_hidden_field);
document.getElementById("DashboardForm").target = "_blank";
document.getElementById("DashboardForm").action = 'categories/category_export.php';
document.getElementById("DashboardForm").submit();
document.getElementById("DashboardForm").target = "";
document.getElementById("DashboardForm").action = '';
$('#div_' + export_format).remove();
});
$("#export_pdf").click(function () {
var export_format = 'format';
var export_pid = 'pid';
var export_hidden_field = '<div id="div_' + export_format + '"><input type="hidden" name="' + export_format + '" value="pdf" ><input type="hidden" name="' + export_pid + '" value="<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>" ></div>';
$("#DashboardForm").append(export_hidden_field);
document.getElementById("DashboardForm").target = "_blank";
document.getElementById("DashboardForm").action = 'categories/category_export.php';
document.getElementById("DashboardForm").submit();
document.getElementById("DashboardForm").target = "";
document.getElementById("DashboardForm").action = '';
$('#div_' + export_format).remove();
});
$("#export_doc").click(function () {
var export_format = 'format';
var export_pid = 'pid';
var export_hidden_field = '<div id="div_' + export_format + '"><input type="hidden" name="' + export_format + '" value="doc" ><input type="hidden" name="' + export_pid + '" value="<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>" ></div>';
$("#DashboardForm").append(export_hidden_field);
document.getElementById("DashboardForm").target = "_blank";
document.getElementById("DashboardForm").action = 'categories/category_export.php';
document.getElementById("DashboardForm").submit();
document.getElementById("DashboardForm").target = "";
document.getElementById("DashboardForm").action = '';
$('#div_' + export_format).remove();
});
$("#export_csv").click(function () {
var export_format = 'format';
var export_pid = 'pid';
var export_hidden_field = '<div id="div_' + export_format + '"><input type="hidden" name="' + export_format + '" value="csv" ><input type="hidden" name="' + export_pid + '" value="<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>" ></div>';
$("#DashboardForm").append(export_hidden_field);
document.getElementById("DashboardForm").target = "_blank";
document.getElementById("DashboardForm").action = 'categories/category_export.php';
document.getElementById("DashboardForm").submit();
document.getElementById("DashboardForm").target = "";
document.getElementById("DashboardForm").action = '';
$('#div_' + export_format).remove();
});
});
</script>
<div class="btn-group" style="margin-bottom: 5px;">
<?php
if (in_array('4', $access_type) || in_array('5', $access_type)) {
?>
<button class="btn btn-warning">Action</button>
<button data-toggle="dropdown" class="btn btn-warning dropdown-toggle"><span
class="caret"></span></button>
<ul class="dropdown-menu">
<?php
if (in_array('4', $access_type)) {
?>
<li><a href="#" id="delete_all">Delete All</a></li>
<?php
}
if (in_array('4', $access_type)) {
?>
<li><a href="#" id="export_xls" name="xls">Export To XLS</a></li>
<li><a href="#" id="export_doc" name="doc">Export To DOC</a></li>
<li><a href="#" id="export_pdf" name="pdf">Export To PDF</a></li>
<li><a href="#" id="export_csv" name="csv">Export To CSV</a></li>
<li><a href="#" id="print_all">Print All</a></li>
<?php
}
?>
</ul>
<?php
}
?>
</div>
<?php
if (in_array('2', $access_type)) {
/*category redirect changes*/
?>
<a href="index.php?rq=<?php echo encrypt_url('categories/category_addform.php', APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>&cid=<?php echo encrypt_url($cateId, APP_ENCRYPTION_SALT); ?>">
<button style="float: right; margin-bottom: 5px;" class="btn btn-info" type="button">Create
Category
</button>
</a>
<?php
/*category redirect changes*/
}
?>
<form class="form-horizontal left-align" id="DashboardForm" method="POST" action="#">
<input type="hidden" name="p_cid" value="<?php echo $cateId; ?>">
<table class="responsive table table-striped table-bordered" id="data-table">
<thead>
<tr>
<th align="center"><input type="checkbox" id="selectall"></th>
<th >Name</th>
<th width="12%">Date</th>
<!--<th>Status</th>-->
<th width="30%">Action</th>
</tr>
</thead>
<tbody>
<?php
if (!empty($no_category_details)) {
$auto = new autoIndex($db);
for ($i = 0; $i < $no_category_details; $i++) {
$is_child = $Category->getCategory_ByParentId($category_details[$i]['id']);
//print_r($category_details);
?>
<tr>
<td align="center"><input type="checkbox" name="id[]" class="case"
value="<?php echo $category_details[$i]['id']; ?>">
</td>
<td><?php
echo $category_details[$i]['category'];
if ($category_details[$i]['pre_approval_status'] == 1) {
?> <span class="label label-success"> Pre-Approved </span><?php } else { ?> <span class="label label-important">Not Pre-Approved </span><?php } ?></td>
<td><?php echo $category_details[$i]['log_datetime']; ?></td>
<!-- <td><?php
if ($category_details[$i]['status'] == '1') {
echo '<span class="label label-success">Active</span>';
} else {
echo '<span class="label">Inactive</span>';
}
?></td>-->
<td>
<div>
<?php
if (in_array('1', $access_type)) {
?>
<a href="index.php?rq=<?php echo encrypt_url("categories/category_viewform.php", APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>"
title="View" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-success">
<span><i class="icon-eye-open"></i></span></button>
</a>
<?php
}
if (in_array('3', $access_type)) {
?>
<a href="index.php?rq=<?php echo encrypt_url("categories/category_editform.php", APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>"
title="Edit" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-primary">
<span><i class="icon-edit"></i></span></button>
</a>
<a href="index.php?rq=<?php echo encrypt_url("categories/set_indexes_to_categoryForm.php", APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>" title="Set indexes to category" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-inverse " id="<?php echo $category_details[$i]['id'] . '_' . $pid; ?>">
<span><i class="icon-retweet" ></i></span></button>
</a>
<a href="index.php?rq=<?php echo encrypt_url("categories/set_master_category_values.php", APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($pid, APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>" title="Set Master Values To Category" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-danger " id="<?php echo $category_details[$i]['id'] . '_' . $pid; ?>">
<span><i class="icon-bookmark"></i></span></button>
</a>
<?php
if ($category_details[$i]['pre_approval_status'] == 1) {
?>
<a data-id="<?php echo $category_details[$i]['id'] . '_0'; ?>" id="pre_approve" data-toggle="modal" title="Remove Pre Approval" class="table_tool_link">
<button type="button" rel="<?php echo $category_details[$i]['id'] . '_0'; ?>" id="pre_approval" class="btn btn-round-min btn-warning pre_approval"><span><i class="icon-check"></i></span></button>
</a>
<?php } else {
?>
<a data-id="<?php echo $category_details[$i]['id'] . '_1'; ?>" id="pre_approve" data-toggle="modal" title="Pre Approve" class="table_tool_link">
<button type="button" rel="<?php echo $category_details[$i]['id'] . '_1'; ?>" id="pre_approval" class="btn btn-round-min btn-warning pre_approval"><span><i class="icon-check-empty"></i></span></button>
</a>
<?php
}
$module_details = $Global_Settings->get_module_info_byId(1);
if ($module_details[0]['status'] == 1) {
?>
<a href="index.php?rq=<?php echo encrypt_url('categories/autoIndexingForm.php', APP_ENCRYPTION_SALT); ?>&mn=<?php echo encrypt_url("deal_room/dealroom_dashboard.php", APP_ENCRYPTION_SALT); ?>&itag=<?php echo encrypt_url('imodule', APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($project_details[0]['id'], APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>"
title="Auto File name Indexing" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-info">
<span><i class="icon-tags"></i></span></button>
</a>
<a href="index.php?rq=<?php echo encrypt_url('categories/autoRenameForm.php', APP_ENCRYPTION_SALT); ?>&mn=<?php echo encrypt_url("deal_room/dealroom_dashboard.php", APP_ENCRYPTION_SALT); ?>&itag=<?php echo encrypt_url('imodule', APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($project_details[0]['id'], APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>"
title="File Renaming Pattern" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-success">
<span><i class="icon-filter"></i></span></button>
</a>
<?php
$category_autoindexing = $auto->getAutoIndex($category_details[$i]['id']);
if ($category_autoindexing[0]['mail_syn'] == 1) {
?>
<a href="index.php?rq=<?php echo encrypt_url("categories/mail_inbox.php", APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($project_details[0]['id'], APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>" title="Mail-Auto Indexing" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-info"><span><i class="icon-envelope"></i></span></button>
</a>
<?php
}
}
$module_details = $Global_Settings->get_module_info_byId(2);
if ($module_details[0]['status'] == 1) {
?>
<a href="index.php?rq=<?php echo encrypt_url('categories/autoBulkIndexingForm.php', APP_ENCRYPTION_SALT); ?>&mn=<?php echo encrypt_url("deal_room/dealroom_dashboard.php", APP_ENCRYPTION_SALT); ?>&itag=<?php echo encrypt_url('imodule', APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($project_details[0]['id'], APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>"
title="Auto Folder Bulk Indexing Pattern" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-warning">
<span><i class="icon-tag"></i></span></button>
</a>
<?php
}
$module_details = $Global_Settings->get_module_info_byId(7);
if ($module_details[0]['status'] == 1) {
?>
<a href="index.php?rq=<?php echo encrypt_url('categories/document_reports_dashboard.php', APP_ENCRYPTION_SALT); ?>&mn=<?php echo encrypt_url("deal_room/dealroom_dashboard.php", APP_ENCRYPTION_SALT); ?>&itag=<?php echo encrypt_url('imodule', APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($project_details[0]['id'], APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>"
title="Document Reports " class="table_tool_link">
<button type="button" class="btn btn-round-min">
<span><i class="icon-tasks"></i></span></button>
</a>
<?php
}
}
/*if (in_array('1', $access_typed_wk) && in_array('5', $access_typed_wk)) {
?>
<a href="index.php?rq=<?php echo encrypt_url("index_group/workspace.php", APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($project_details[0]['id'], APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>" title="Workspace" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-primary"><span><i class="icon-home"></i></span></button>
</a>
<?php
}*/
if (in_array('1', $access_type)) {
$module_details = $Global_Settings->get_module_info_byId(12);
if ($module_details[0]['status'] == 1) {
?>
<a href="index.php?rq=<?php echo encrypt_url("categories/document_life_cycle_form.php", APP_ENCRYPTION_SALT); ?>&pid=<?php echo encrypt_url($project_details[0]['id'], APP_ENCRYPTION_SALT); ?>&id=<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>" title="DMS Life Cycle" class="table_tool_link">
<button type="button" class="btn btn-round-min btn-inverse"><span><i class="icon-time"></i></span></button>
</a>
<?php
}
}
if (in_array('4', $access_type)) {
if (empty($is_child)) {
$is_files = $File->CountDoc_ByCategoryID($category_details[$i]['id']);
if ($is_files[0]['doc_id'] == 0) {
?>
<a title="Delete" class="table_tool_link">
<button
id="<?php echo encrypt_url($category_details[$i]['id'], APP_ENCRYPTION_SALT); ?>"
type="button"
class="btn btn-round-min btn-danger btn-delete">
<span><i class="icon-trash"></i></span></button>
</a>
<?php
}
}
}
?>
</div>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</form>
<!-- <div class="modal fade" id="pre_approval_status" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<form class="modal-form" id="status_form_bulk" method="post" action="#">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Pre Approval</h4>
</div>
<div class="modal-body">
<div id="change_status_result_bulk"></div>
<input type="hidden" name="catId" id="catId" value=""/>
<div class="row-fluid" id="show_form">
<div class="control-group">
<label class="control-label">Status</label>
<div class="controls">
<label class="radio">
<input name="status" value="1" checked="" type="checkbox">
Approved</label>
<label class="radio">
<input name="status" value="Unapproved" type="radio">
Unapproved </label>
</div>
</div>
<div class="status_comment_div">
<label class="control-label">Comment</label>
<div class="controls">
<textarea id="status_comment_category_bulk_approval" name="status_comment_category_bulk_approval" rows="3" class="span8" placeholder="Enter reason for change of status..." required="true"></textarea><br/>
<span class="label label-important">* Comment once submitted, cannot be edited. This comment will be applied for all the selected files.</span><br/>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button id= "save_pre_approval" class="btn btn-primary" type="button">Save changes</button>
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</div>
</div>
</form>
</div>-->
<?php
}
}
} else {
echo "You are not authorised to view";
}
} else {
$page_ctl->log_indirect_access();
include("error_403.php");
}
}
?>
Did this file decode correctly?
Original Code
<?php $_F=__FILE__;$_C1353562110='Pz48PzdCNwpmZSAoIWViOENXZmg4X1l1ZkdXRygiTTc3X0NkTUdHX01iV2hkaE1GWTMiKSkgewogICAgZjhDZGJGWSgiLi4vZGZaL003N19XaDcuN0I3Iik7Cn0KZmUgKCFmR0dZVygkX0k2SUl6cG1bSTZJSXpwbV9VQXFfbUF5Nl1bJ2JHWTNfZkYnXSkpIHsKICAgIEJZTUZZMygiZGhDTVdmaDg6IC4uL1kzM2gzX1g1by43QjciKTsKICAgIFl1ZlcoKTsKfSBZZEdZIHsKICAgICQ3TXdZX0NXZCA9IDhZbCA3TXdZX01DQ1lHR19DV2QoJEZaKTsKICAgIGZlICgkN013WV9DV2QtPkJNR0xZM0pmR0dmaDgoJ0h4WCcsICRfSTZJSXpwbVtJNklJenBtX1VBcV9tQXk2XVsnM2hkWSddKSkgewoKICAgICAgICBmZSAoZkdHWVcoJF9JNnFVNnFbJ3ZSUkxfUF9xNlZFNklSNmpfaXpSdiddKSAmJiAhWUo3VzIoJF9JNnFVNnFbJ3ZSUkxfUF9xNlZFNklSNmpfaXpSdiddKSAmJiBHVzNXaGRobFkzKCRfSTZxVTZxWyd2UlJMX1BfcTZWRTZJUjZqX2l6UnYnXSkgPT0gJ3VKZEJXVzczWVFiWUdXJykgewoKCi8vWWRHWSB7CiAgICAgICAgICAgICRMTXdZID0gOFlsIDdNd1koJEZaKTsKICAgICAgICAgICAgJGJHWTNBQ0NZR0dxZndCVyA9ICRMTXdZLT5NQ0NZR0c3WTNKZkdHZmg4RygnSHhYJywgJF9JNklJenBtW0k2SUl6cG1fVUFxX21BeTZdWyczaGRZJ10pOwogICAgICAgICAgICAkOGhfYkdZM0FDQ1lHR3Fmd0JXID0gQ2hiOFcoJGJHWTNBQ0NZR0dxZndCVyk7CiAgICAgICAgICAgICRNQ0NZR0dfVzI3WSA9IE0zM00yKCk7CiAgICAgICAgICAgIGVoM1lNQ0IgKCRiR1kzQUNDWUdHcWZ3QlcgTUcgJDdfTTMpIHsKICAgICAgICAgICAgICAgIE0zM00yXzdiR0IoJE1DQ1lHR19XMjdZLCAkN19NM1snVzI3WSddKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBmZSAoIVlKN1cyKCQ4aF9iR1kzQUNDWUdHcWZ3QlcpICYmICQ4aF9iR1kzQUNDWUdHcWZ3QlcgPiA1KSB7CiAgICAgICAgICAgICAgICAkYkdZM0FDQ1lHR3Fmd0JXRl9sayA9ICRMTXdZLT5NQ0NZR0c3WTNKZkdHZmg4RygnWHhYJywgJF9JNklJenBtW0k2SUl6cG1fVUFxX21BeTZdWyczaGRZJ10pOwogICAgICAgICAgICAgICAgJDhoX2JHWTNBQ0NZR0dxZndCV0ZfbGsgPSBDaGI4VygkYkdZM0FDQ1lHR3Fmd0JXRl9sayk7CiAgICAgICAgICAgICAgICAkTUNDWUdHX1cyN1lGX2xrID0gTTMzTTIoKTsKCiAgICAgICAgICAgICAgICBlaDNZTUNCICgkYkdZM0FDQ1lHR3Fmd0JXRl9sayBNRyAkN19NM0ZfbGspIHsKICAgICAgICAgICAgICAgICAgICBNMzNNMl83YkdCKCRNQ0NZR0dfVzI3WUZfbGssICQ3X00zRl9sa1snVzI3WSddKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBmZSAoZjhfTTMzTTIoJ28nLCAkTUNDWUdHX1cyN1kpKSB7CiAgICAgICAgICAgICAgICAgICAgJENNV1l6RiA9IEZZQzMyN1dfYjNkKCRfcTZWRTZJUlsnQ01XWXpGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOwogICAgICAgICAgICAgICAgICAgICQ3ZkYgPSBGWUMzMjdXX2IzZCgkX3E2VkU2SVJbJzdmRiddLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsKICAgICAgICAgICAgICAgICAgICAkTDNoMFlDVyA9IDhZbCA3M2gwWUNXKCRGWik7CiAgICAgICAgICAgICAgICAgICAgJDczaDBZQ1dfRllXTWZkRyA9ICRMM2gwWUNXLT53WVdMM2gwWUNXX0QyekYoJDdmRik7CiAgICAgICAgICAgICAgICAgICAgJGNNV1l3aDMyID0gOFlsIENNV1l3aDMyKCRGWik7CiAgICAgICAgICAgICAgICAgICAgJGNNV1l3aDMyLT5HWVd5aEZiZFkoJ2pZTWQgcWhoSicpOwogICAgICAgICAgICAgICAgICAgICRjTVdZd2gzMi0+R1lXTE0zWThXekYoJENNV1l6Rik7CgoKICAgICAgICAgICAgICAgICAgICBmZSAoJF9JNklJenBtW0k2SUl6cG1fVUFxX21BeTZdWyd3YllHV19mRiddID09ICcnIHx8IFlKN1cyKCRfSTZJSXpwbVtJNklJenBtX1VBcV9tQXk2XVsnd2JZR1dfZkYnXSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZmUgKCRfSTZJSXpwbVtJNklJenBtX1VBcV9tQXk2XVsnM2hkWSddICE9IG8gfHwgJF9JNklJenBtW0k2SUl6cG1fVUFxX21BeTZdWyczaGRZJ10gIT0gSCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNNV1l3aDMyLT5HWVdMTTNZOFd6RigkQ01XWXpGKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRDTVdZd2gzMl9GWVdNZmRHID0gJGNNV1l3aDMyLT53WVdFR1kzX0FDQ1lHR2NNV1l3aDNmWUcoJF9JNklJenBtW0k2SUl6cG1fVUFxX21BeTZdWyczaGRZJ10sICRfSTZJSXpwbVtJNklJenBtX1VBcV9tQXk2XVsnYkdZM19mRiddKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSBZZEdZIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRDTVdZd2gzMl9GWVdNZmRHID0gJGNNV1l3aDMyLT53WVdjTVdZd2gzMl9EMkxNM1k4V3pGQWRkKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9IFlkR1kgewoKICAgICAgICAgICAgICAgICAgICAgICAgZmUgKCRfSTZJSXpwbVtJNklJenBtX1VBcV9tQXk2XVsnM2hkWSddID09IEhUKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY01XWXdoMzItPkdZV0VHWTN6RigkX0k2SUl6cG1bSTZJSXpwbV9VQXFfbUF5Nl1bJ2JHWTNfZkYnXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkQ01XWXdoMzJfRllXTWZkRyA9ICRjTVdZd2gzMi0+d1lXY01XWXdoMzJfRDJEM004Q0IoJDczaDBZQ1dfRllXTWZkR1s1XVsnQ01XWXdoMzJfZkYnXSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gWWRHWSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY01XWXdoMzItPkdZV0VHWTN6RigkX0k2SUl6cG1bSTZJSXpwbV9VQXFfbUF5Nl1bJ3diWUdXX2ZGJ10pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJENNV1l3aDMyX0ZZV01mZEcgPSAkY01XWXdoMzItPndZV2NNV1l3aDMyX0QydGJZR1d6aigkNzNoMFlDV19GWVdNZmRHWzVdWydDTVdZd2gzMl9mRiddKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAkOGhfQ01XWXdoMzJfRllXTWZkRyA9IENoYjhXKCRDTVdZd2gzMl9GWVdNZmRHKTsKCgogICAgICAgICAgICAgICAgICAgICRPZmRZID0gOFlsIGVmZFlfSk04TXdZMygkRlopOwoKICAgICAgICAgICAgICAgICAgICAvLzczZjhXXzMoJENNV1l3aDMyX0ZZV01mZEcpOwogICAgICAgICAgICAgICAgICAgID8+CgogICAgICAgICAgICAgICAgICAgIDxHQzNmN1cgVzI3WT0iV1l1Vy8wTU5NR0MzZjdXIj4KCiAgICAgICAgICAgICAgICAgICAgICAgIC8qPT09PUlZZFlDVyBEaHU9PT09Ki8KICAgICAgICAgICAgICAgICAgICAgICAgJChlYjhDV2ZoOCAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIuQ0I5OC1HWWRZQ1ciKS5DQmhHWTgoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIi5DQjk4LUdZZFlDVy1GWUdZZFlDVyIpLkNCaEdZOCh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTWRkaGxfR2Y4d2RZX0ZZR1lkWUNXOiBXM2JZCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgICQoZWI4Q1dmaDggKCkgewoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE1GRiBKYmRXZjdkWSBHWWRZQ1cgLyBGWUdZZFlDVyBlYjhDV2ZoOE1kZlcyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjR1lkWUNXTWRkIikuQ2RmQ2soZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJy5DTUdZJykuNzNoNygnQ0JZQ2tZRicsIFdCZkcuQ0JZQ2tZRik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBmZSBNZGQgQ0JZQ2taaHUgTTNZIEdZZFlDV1lGLCBDQllDayBXQlkgR1lkWUNXTWRkIENCWUNrWmh1CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBNOEYgTmZDWU5ZM0dNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIuQ01HWSIpLkNkZkNrKGViOENXZmg4ICgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoJCgiLkNNR1kiKS5kWTh3V0IgPT0gJCgiLkNNR1k6Q0JZQ2tZRiIpLmRZOHdXQikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjR1lkWUNXTWRkIikuNzNoNygiQ0JZQ2tZRiIsICJDQllDa1lGIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBZZEdZIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiI0dZZFlDV01kZCIpLjczaDcoIkNCWUNrWUYiLCBlTWRHWSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgICAgICAgICQoZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgnI0ZNV00tV01aZFknKS5GTVdNUk1aZFkoewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJHamhKIjogIjwnM2hsLWVkYmZGJzwnRzdNODQnZD48J0c3TTg0J2U+Mz5XPCczaGwtZWRiZkYnPCdHN004NCdmPjwnRzdNODQnNz4+IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTWhjaGRiSjhqWWVHIjogWwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IlpJaDNXTVpkWSI6IGVNZEdZLCAiTVJNM3dZV0ciOiBbNV19LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IlpJaDNXTVpkWSI6IGVNZEdZLCAiTVJNM3dZV0ciOiBbcl19LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgICAgICAgICQoZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJCgiI0ZZZFlXWV9NZGQiKS5DZGZDayhlYjhDV2ZoOCAoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWk1HZkNfZWgzSl9HYlpKZldfSkd3KCdDTVdZd2gzZllHL0NNV1l3aDMyX0ZZZFlXWV9NZGQuN0I3JywgJycsICdqTUdCWmhNM0ZPaDNKJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjNzNmOFdfTWRkIikuQ2RmQ2soZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5NMyA3M2Y4V01kZF83ZkYgPSAnN2ZGJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOTTMgNzNmOFdNZGRfQmZGRlk4X2VmWWRGID0gJzxGZk4gZkY9IkZmTl8nICsgNzNmOFdNZGRfN2ZGICsgJyI+PGY4N2JXIFcyN1k9IkJmRkZZOCIgIDhNSlk9IicgKyA3M2Y4V01kZF83ZkYgKyAnIiBOTWRiWT0iPD83QjcgWUNCaCBZOEMzMjdXX2IzZCgkN2ZGLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4iID4iID48L0ZmTj4nOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiNqTUdCWmhNM0ZPaDNKIikuTTc3WThGKDczZjhXTWRkX0JmRkZZOF9lZllkRik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiX1pkTThrIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICdDTVdZd2gzZllHL0NNV1l3aDMyXzczZjhXX01kZC43QjcnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZoQ2JKWThXLndZVzZkWUpZOFdEMnpGKCJqTUdCWmhNM0ZPaDNKIikuR2JaSmZXKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICcnOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjRmZOXycgKyA3M2Y4V01kZF83ZkYpLjNZSmhOWSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiNZdTdoM1dfdWRHIikuQ2RmQ2soZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5NMyBZdTdoM1dfZWgzSk1XID0gJ2VoM0pNVyc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTk0zIFl1N2gzV183ZkYgPSAnN2ZGJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOTTMgWXU3aDNXX0JmRkZZOF9lZllkRiA9ICc8RmZOIGZGPSJGZk5fJyArIFl1N2gzV19laDNKTVcgKyAnIj48Zjg3YlcgVzI3WT0iQmZGRlk4IiAgOE1KWT0iJyArIFl1N2gzV19laDNKTVcgKyAnIiBOTWRiWT0idWRHIiA+PGY4N2JXIFcyN1k9IkJmRkZZOCIgIDhNSlk9IicgKyBZdTdoM1dfN2ZGICsgJyIgTk1kYlk9Ijw/N0I3IFlDQmggWThDMzI3V19iM2QoJDdmRiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IiA+PC9GZk4+JzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjak1HQlpoTTNGT2gzSiIpLk03N1k4RihZdTdoM1dfQmZGRlk4X2VmWWRGKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiX1pkTThrIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICdDTVdZd2gzZllHL0NNV1l3aDMyX1l1N2gzVy43QjcnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZoQ2JKWThXLndZVzZkWUpZOFdEMnpGKCJqTUdCWmhNM0ZPaDNKIikuR2JaSmZXKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICcnOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjRmZOXycgKyBZdTdoM1dfZWgzSk1XKS4zWUpoTlkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiNZdTdoM1dfN0ZlIikuQ2RmQ2soZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5NMyBZdTdoM1dfZWgzSk1XID0gJ2VoM0pNVyc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTk0zIFl1N2gzV183ZkYgPSAnN2ZGJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOTTMgWXU3aDNXX0JmRkZZOF9lZllkRiA9ICc8RmZOIGZGPSJGZk5fJyArIFl1N2gzV19laDNKTVcgKyAnIj48Zjg3YlcgVzI3WT0iQmZGRlk4IiAgOE1KWT0iJyArIFl1N2gzV19laDNKTVcgKyAnIiBOTWRiWT0iN0ZlIiA+PGY4N2JXIFcyN1k9IkJmRkZZOCIgIDhNSlk9IicgKyBZdTdoM1dfN2ZGICsgJyIgTk1kYlk9Ijw/N0I3IFlDQmggWThDMzI3V19iM2QoJDdmRiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IiA+PC9GZk4+JzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjak1HQlpoTTNGT2gzSiIpLk03N1k4RihZdTdoM1dfQmZGRlk4X2VmWWRGKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiX1pkTThrIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICdDTVdZd2gzZllHL0NNV1l3aDMyX1l1N2gzVy43QjcnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZoQ2JKWThXLndZVzZkWUpZOFdEMnpGKCJqTUdCWmhNM0ZPaDNKIikuR2JaSmZXKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICcnOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjRmZOXycgKyBZdTdoM1dfZWgzSk1XKS4zWUpoTlkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiNZdTdoM1dfRmhDIikuQ2RmQ2soZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5NMyBZdTdoM1dfZWgzSk1XID0gJ2VoM0pNVyc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTk0zIFl1N2gzV183ZkYgPSAnN2ZGJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOTTMgWXU3aDNXX0JmRkZZOF9lZllkRiA9ICc8RmZOIGZGPSJGZk5fJyArIFl1N2gzV19laDNKTVcgKyAnIj48Zjg3YlcgVzI3WT0iQmZGRlk4IiAgOE1KWT0iJyArIFl1N2gzV19laDNKTVcgKyAnIiBOTWRiWT0iRmhDIiA+PGY4N2JXIFcyN1k9IkJmRkZZOCIgIDhNSlk9IicgKyBZdTdoM1dfN2ZGICsgJyIgTk1kYlk9Ijw/N0I3IFlDQmggWThDMzI3V19iM2QoJDdmRiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IiA+PC9GZk4+JzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjak1HQlpoTTNGT2gzSiIpLk03N1k4RihZdTdoM1dfQmZGRlk4X2VmWWRGKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiX1pkTThrIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICdDTVdZd2gzZllHL0NNV1l3aDMyX1l1N2gzVy43QjcnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZoQ2JKWThXLndZVzZkWUpZOFdEMnpGKCJqTUdCWmhNM0ZPaDNKIikuR2JaSmZXKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICcnOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjRmZOXycgKyBZdTdoM1dfZWgzSk1XKS4zWUpoTlkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoIiNZdTdoM1dfQ0dOIikuQ2RmQ2soZWI4Q1dmaDggKCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5NMyBZdTdoM1dfZWgzSk1XID0gJ2VoM0pNVyc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTk0zIFl1N2gzV183ZkYgPSAnN2ZGJzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOTTMgWXU3aDNXX0JmRkZZOF9lZllkRiA9ICc8RmZOIGZGPSJGZk5fJyArIFl1N2gzV19laDNKTVcgKyAnIj48Zjg3YlcgVzI3WT0iQmZGRlk4IiAgOE1KWT0iJyArIFl1N2gzV19laDNKTVcgKyAnIiBOTWRiWT0iQ0dOIiA+PGY4N2JXIFcyN1k9IkJmRkZZOCIgIDhNSlk9IicgKyBZdTdoM1dfN2ZGICsgJyIgTk1kYlk9Ijw/N0I3IFlDQmggWThDMzI3V19iM2QoJDdmRiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IiA+PC9GZk4+JzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCIjak1HQlpoTTNGT2gzSiIpLk03N1k4RihZdTdoM1dfQmZGRlk4X2VmWWRGKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiX1pkTThrIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICdDTVdZd2gzZllHL0NNV1l3aDMyX1l1N2gzVy43QjcnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZoQ2JKWThXLndZVzZkWUpZOFdEMnpGKCJqTUdCWmhNM0ZPaDNKIikuR2JaSmZXKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmhDYkpZOFcud1lXNmRZSlk4V0QyekYoImpNR0JaaE0zRk9oM0oiKS5XTTN3WVcgPSAiIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGaENiSlk4Vy53WVc2ZFlKWThXRDJ6Rigiak1HQlpoTTNGT2gzSiIpLk1DV2ZoOCA9ICcnOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKCcjRmZOXycgKyBZdTdoM1dfZWgzSk1XKS4zWUpoTlkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgICAgPC9HQzNmN1c+CgoKICAgICAgICAgICAgICAgICAgICA8RmZOIENkTUdHPSJaVzgtdzNoYjciIEdXMmRZPSJKTTN3ZjgtWmhXV2hKOiBnN3U7Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPD83QjcKICAgICAgICAgICAgICAgICAgICAgICAgZmUgKGY4X00zM00yKCdYJywgJE1DQ1lHR19XMjdZKSB8fCBmOF9NMzNNMignZycsICRNQ0NZR0dfVzI3WSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IENkTUdHPSJaVzggWlc4LWxNMzhmOHciPkFDV2ZoODwvWmJXV2g4PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPFpiV1doOCBGTVdNLVdod3dkWT0iRjNoN0ZobDgiIENkTUdHPSJaVzggWlc4LWxNMzhmOHcgRjNoN0ZobDgtV2h3d2RZIj48RzdNOAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDZE1HRz0iQ00zWVciPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiZCBDZE1HRz0iRjNoN0ZobDgtSlk4YiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD83QjcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoZjhfTTMzTTIoJ1gnLCAkTUNDWUdHX1cyN1kpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZj48TSBCM1llPSIjIiBmRj0iRllkWVdZX01kZCI+allkWVdZIEFkZDwvTT48L2RmPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoZjhfTTMzTTIoJ1gnLCAkTUNDWUdHX1cyN1kpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZj48TSBCM1llPSIjIiBmRj0iWXU3aDNXX3VkRyIgOE1KWT0idWRHIj42dTdoM1cgUmggUEtJPC9NPjwvZGY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZj48TSBCM1llPSIjIiBmRj0iWXU3aDNXX0ZoQyIgOE1KWT0iRmhDIj42dTdoM1cgUmgganBjPC9NPjwvZGY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZj48TSBCM1llPSIjIiBmRj0iWXU3aDNXXzdGZSIgOE1KWT0iN0ZlIj42dTdoM1cgUmggTGpPPC9NPjwvZGY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZj48TSBCM1llPSIjIiBmRj0iWXU3aDNXX0NHTiIgOE1KWT0iQ0dOIj42dTdoM1cgUmggY0lVPC9NPjwvZGY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZj48TSBCM1llPSIjIiBmRj0iNzNmOFdfTWRkIj5MM2Y4VyBBZGQ8L00+PC9kZj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD83QjcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYmQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgPC9GZk4+CgoKICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgIGZlIChmOF9NMzNNMignSCcsICRNQ0NZR0dfVzI3WSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLypDTVdZd2gzMiAzWUZmM1lDVyBDQk04d1lHKi8KICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgPE0gQjNZZT0iZjhGWXUuN0I3PzNRPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJ0NNV1l3aDNmWUcvQ01XWXdoMzJfTUZGZWgzSi43QjcnLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mN2ZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJDdmRiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JkNmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCRDTVdZekYsIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IEdXMmRZPSJlZGhNVzogM2Z3Qlc7IEpNM3dmOC1aaFdXaEo6IGc3dTsiIENkTUdHPSJaVzggWlc4LWY4ZWgiIFcyN1k9IlpiV1doOCI+YzNZTVdZCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY01XWXdoMzIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvWmJXV2g4PgogICAgICAgICAgICAgICAgICAgICAgICA8L00+CiAgICAgICAgICAgICAgICAgICAgICAgIDw/N0I3CiAgICAgICAgICAgICAgICAgICAgICAgIC8qQ01XWXdoMzIgM1lGZjNZQ1cgQ0JNOHdZRyovCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgPGVoM0ogQ2RNR0c9ImVoM0otQmgzZjloOFdNZCBkWWVXLU1kZnc4IiBmRj0iak1HQlpoTTNGT2gzSiIgSllXQmhGPSJMcElSIiBNQ1dmaDg9IiMiPgogICAgICAgICAgICAgICAgICAgICAgICA8Zjg3YlcgVzI3WT0iQmZGRlk4IiA4TUpZPSI3X0NmRiIgIE5NZGJZPSI8PzdCNyBZQ0JoICRDTVdZekY7ID8+Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPFdNWmRZIENkTUdHPSIzWUc3aDhHZk5ZIFdNWmRZIFdNWmRZLUdXM2Y3WUYgV01aZFktWmgzRlkzWUYiIGZGPSJGTVdNLVdNWmRZIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxXQllNRj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VzM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxXQiBNZGZ3OD0iQ1k4V1kzIj48Zjg3YlcgVzI3WT0iQ0JZQ2taaHUiIGZGPSJHWWRZQ1dNZGQiPjwvV0I+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxXQiA+bU1KWTwvV0I+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxXQiAgbGZGV0I9Im9IJSI+ak1XWTwvV0I+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS08V0I+SVdNV2JHPC9XQj4tLT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFdCIGxmRldCPSJyNSUiPkFDV2ZoODwvV0I+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9XMz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvV0JZTUY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPFdaaEYyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/N0I3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmUgKCFZSjdXMigkOGhfQ01XWXdoMzJfRllXTWZkRykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJE1iV2ggPSA4WWwgTWJXaHo4Rll1KCRGWik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVoMyAoJGYgPSA1OyAkZiA8ICQ4aF9DTVdZd2gzMl9GWVdNZmRHOyAkZisrKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZkdfQ0JmZEYgPSAkY01XWXdoMzItPndZV2NNV1l3aDMyX0QyTE0zWThXekYoJENNV1l3aDMyX0ZZV01mZEdbJGZdWydmRiddKTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLzczZjhXXzMoJENNV1l3aDMyX0ZZV01mZEcpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxXMz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8V0YgTWRmdzg9IkNZOFdZMyI+PGY4N2JXIFcyN1k9IkNCWUNrWmh1IiA4TUpZPSJmRltdIiBDZE1HRz0iQ01HWSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5NZGJZPSI8PzdCNyBZQ0JoICRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZkYnXTsgPz4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvV0Y+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFdGPjw/N0I3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFlDQmggJENNV1l3aDMyX0ZZV01mZEdbJGZdWydDTVdZd2gzMiddOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoJENNV1l3aDMyX0ZZV01mZEdbJGZdWyc3M1lfTTc3M2hOTWRfR1dNV2JHJ10gPT0gbykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4gPEc3TTggQ2RNR0c9ImRNWllkIGRNWllkLUdiQ0NZR0ciPiBMM1ktQTc3M2hOWUYgPC9HN004Pjw/N0I3IH0gWWRHWSB7ID8+IDxHN004IENkTUdHPSJkTVpZZCBkTVpZZC1mSjdoM1dNOFciPm1oVyBMM1ktQTc3M2hOWUYgPC9HN004Pjw/N0I3IH0gPz48L1dGPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxXRj48PzdCNyBZQ0JoICRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZGh3X0ZNV1lXZkpZJ107ID8+PC9XRj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8V0Y+PD83QjcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoJENNV1l3aDMyX0ZZV01mZEdbJGZdWydHV01XYkcnXSA9PSAnbycpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWUNCaCAnPEc3TTggQ2RNR0c9ImRNWllkIGRNWllkLUdiQ0NZR0ciPkFDV2ZOWTwvRzdNOD4nOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gWWRHWSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFlDQmggJzxHN004IENkTUdHPSJkTVpZZCI+ejhNQ1dmTlk8L0c3TTg+JzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz48L1dGPi0tPgoKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFdGPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmZOPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD83QjcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlIChmOF9NMzNNMignbycsICRNQ0NZR0dfVzI3WSkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNIEIzWWU9ImY4Rll1LjdCNz8zUT08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCJDTVdZd2gzZllHL0NNV1l3aDMyX05mWWxlaDNKLjdCNyIsIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiY3ZkY9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgkN2ZGLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mZkY9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZldkWT0iVWZZbCIgQ2RNR0c9IldNWmRZX1doaGRfZGY4ayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxaYldXaDggVzI3WT0iWmJXV2g4IiBDZE1HRz0iWlc4IFpXOC0zaGI4Ri1KZjggWlc4LUdiQ0NZR0ciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEc3TTg+PGYgQ2RNR0c9ImZDaDgtWTJZLWg3WTgiPjwvZj48L0c3TTg+PC9aYldXaDg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/N0I3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoZjhfTTMzTTIoJ3InLCAkTUNDWUdHX1cyN1kpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TSBCM1llPSJmOEZZdS43Qjc/M1E9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgiQ01XWXdoM2ZZRy9DTVdZd2gzMl9ZRmZXZWgzSi43QjciLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mN2ZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJDdmRiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JmZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJENNV1l3aDMyX0ZZV01mZEdbJGZdWydmRiddLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV2ZXZFk9IjZGZlciIENkTUdHPSJXTVpkWV9XaGhkX2RmOGsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IFcyN1k9IlpiV1doOCIgQ2RNR0c9IlpXOCBaVzgtM2hiOEYtSmY4IFpXOC03M2ZKTTMyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHN004PjxmIENkTUdHPSJmQ2g4LVlGZlciPjwvZj48L0c3TTg+PC9aYldXaDg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNIEIzWWU9ImY4Rll1LjdCNz8zUT08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCJDTVdZd2gzZllHL0dZV19mOEZZdVlHX1doX0NNV1l3aDMyT2gzSi43QjciLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mN2ZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJDdmRiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JmZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJENNV1l3aDMyX0ZZV01mZEdbJGZdWydmRiddLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4iIFdmV2RZPSJJWVcgZjhGWXVZRyBXaCBDTVdZd2gzMiIgQ2RNR0c9IldNWmRZX1doaGRfZGY4ayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxaYldXaDggVzI3WT0iWmJXV2g4IiBDZE1HRz0iWlc4IFpXOC0zaGI4Ri1KZjggWlc4LWY4TlkzR1kgIiBmRj0iPD83QjcgWUNCaCAkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10gLiAnXycgLiAkN2ZGOyA/PiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RzdNOD48ZiBDZE1HRz0iZkNoOC0zWVdsWVlXIiA+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L00+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE0gQjNZZT0iZjhGWXUuN0I3PzNRPTw/N0I3IFlDQmggWThDMzI3V19iM2QoIkNNV1l3aDNmWUcvR1lXX0pNR1dZM19DTVdZd2gzMl9OTWRiWUcuN0I3IiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JjdmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCQ3ZkYsIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiZmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZkYnXSwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IiBXZldkWT0iSVlXIHlNR1dZMyBVTWRiWUcgUmggY01XWXdoMzIiIENkTUdHPSJXTVpkWV9XaGhkX2RmOGsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IFcyN1k9IlpiV1doOCIgQ2RNR0c9IlpXOCBaVzgtM2hiOEYtSmY4IFpXOC1GTTh3WTMgIiBmRj0iPD83QjcgWUNCaCAkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10gLiAnXycgLiAkN2ZGOyA/PiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RzdNOD48ZiBDZE1HRz0iZkNoOC1aaGhrSk0zayI+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L00+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/N0I3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmUgKCRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnNzNZX003NzNoTk1kX0dXTVdiRyddID09IG8pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE0gRk1XTS1mRj0iPD83QjcgWUNCaCAkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10gLiAnXzUnOyA/PiIgZkY9IjczWV9NNzczaE5ZIiBGTVdNLVdod3dkWT0iSmhGTWQiIFdmV2RZPSJxWUpoTlkgTDNZIEE3NzNoTk1kIiBDZE1HRz0iV01aZFlfV2hoZF9kZjhrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxaYldXaDggVzI3WT0iWmJXV2g4IiAgM1lkPSI8PzdCNyBZQ0JoICRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZkYnXSAuICdfNSc7ID8+IiBmRj0iNzNZX003NzNoTk1kIiBDZE1HRz0iWlc4IFpXOC0zaGI4Ri1KZjggWlc4LWxNMzhmOHcgNzNZX003NzNoTk1kIj48RzdNOD48ZiBDZE1HRz0iZkNoOC1DQllDayI+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NPiAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD83QjcgfSBZZEdZIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE0gIEZNV00tZkY9Ijw/N0I3IFlDQmggJENNV1l3aDMyX0ZZV01mZEdbJGZdWydmRiddIC4gJ19vJzsgPz4iIGZGPSI3M1lfTTc3M2hOWSIgRk1XTS1XaHd3ZFk9IkpoRk1kIiBXZldkWT0iTDNZIEE3NzNoTlkiIENkTUdHPSJXTVpkWV9XaGhkX2RmOGsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFpiV1doOCBXMjdZPSJaYldXaDgiICAzWWQ9Ijw/N0I3IFlDQmggJENNV1l3aDMyX0ZZV01mZEdbJGZdWydmRiddIC4gJ19vJzsgPz4iIGZGPSI3M1lfTTc3M2hOTWQiIENkTUdHPSJaVzggWlc4LTNoYjhGLUpmOCBaVzgtbE0zOGY4dyA3M1lfTTc3M2hOTWQiPjxHN004PjxmIENkTUdHPSJmQ2g4LUNCWUNrLVlKN1cyIj48L2Y+PC9HN004PjwvWmJXV2g4PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L00+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/N0I3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRKaEZiZFlfRllXTWZkRyA9ICR0ZGhaTWRfSVlXV2Y4d0ctPndZV19KaEZiZFlfZjhlaF9aMnpGKG8pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlICgkSmhGYmRZX0ZZV01mZEdbNV1bJ0dXTVdiRyddID09IG8pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE0gQjNZZT0iZjhGWXUuN0I3PzNRPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJ0NNV1l3aDNmWUcvTWJXaHo4Rll1Zjh3T2gzSi43QjcnLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mSjg9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgiRllNZF8zaGhKL0ZZTWQzaGhKX0ZNR0JaaE0zRi43QjciLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mZldNdz08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCdmSmhGYmRZJywgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JjdmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCQ3M2gwWUNXX0ZZV01mZEdbNV1bJ2ZGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiZmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZkYnXSwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZldkWT0iQWJXaCBPZmRZIDhNSlkgejhGWXVmOHciIENkTUdHPSJXTVpkWV9XaGhkX2RmOGsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFpiV1doOCBXMjdZPSJaYldXaDgiIENkTUdHPSJaVzggWlc4LTNoYjhGLUpmOCBaVzgtZjhlaCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEc3TTg+PGYgQ2RNR0c9ImZDaDgtV013RyI+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TSBCM1llPSJmOEZZdS43Qjc/M1E9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgnQ01XWXdoM2ZZRy9NYldocVk4TUpZT2gzSi43QjcnLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mSjg9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgiRllNZF8zaGhKL0ZZTWQzaGhKX0ZNR0JaaE0zRi43QjciLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mZldNdz08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCdmSmhGYmRZJywgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JjdmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCQ3M2gwWUNXX0ZZV01mZEdbNV1bJ2ZGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiZmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZkYnXSwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZldkWT0iT2ZkWSBxWThNSmY4dyBMTVdXWTM4IiBDZE1HRz0iV01aZFlfV2hoZF9kZjhrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxaYldXaDggVzI3WT0iWmJXV2g4IiBDZE1HRz0iWlc4IFpXOC0zaGI4Ri1KZjggWlc4LUdiQ0NZR0ciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHN004PjxmIENkTUdHPSJmQ2g4LWVmZFdZMyI+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkQ01XWXdoMzJfTWJXaGY4Rll1Zjh3ID0gJE1iV2gtPndZV0FiV2h6OEZZdSgkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoJENNV1l3aDMyX01iV2hmOEZZdWY4d1s1XVsnSk1mZF9HMjgnXSA9PSBvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNIEIzWWU9ImY4Rll1LjdCNz8zUT08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCJDTVdZd2gzZllHL0pNZmRfZjhaaHUuN0I3IiwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JjdmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCQ3M2gwWUNXX0ZZV01mZEdbNV1bJ2ZGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiZmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZkYnXSwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IiBXZldkWT0ieU1mZC1BYldoIHo4Rll1Zjh3IiBDZE1HRz0iV01aZFlfV2hoZF9kZjhrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IFcyN1k9IlpiV1doOCIgQ2RNR0c9IlpXOCBaVzgtM2hiOEYtSmY4IFpXOC1mOGVoIj48RzdNOD48ZiBDZE1HRz0iZkNoOC1ZOE5ZZGg3WSI+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/N0I3CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJEpoRmJkWV9GWVdNZmRHID0gJHRkaFpNZF9JWVdXZjh3Ry0+d1lXX0poRmJkWV9mOGVoX1oyekYoSCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmUgKCRKaEZiZFlfRllXTWZkR1s1XVsnR1dNV2JHJ10gPT0gbykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TSBCM1llPSJmOEZZdS43Qjc/M1E9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgnQ01XWXdoM2ZZRy9NYldoRGJka3o4Rll1Zjh3T2gzSi43QjcnLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mSjg9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgiRllNZF8zaGhKL0ZZTWQzaGhKX0ZNR0JaaE0zRi43QjciLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mZldNdz08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCdmSmhGYmRZJywgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JjdmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCQ3M2gwWUNXX0ZZV01mZEdbNV1bJ2ZGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiZmRj08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCRDTVdZd2gzMl9GWVdNZmRHWyRmXVsnZkYnXSwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXZldkWT0iQWJXaCBPaGRGWTMgRGJkayB6OEZZdWY4dyBMTVdXWTM4IiBDZE1HRz0iV01aZFlfV2hoZF9kZjhrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxaYldXaDggVzI3WT0iWmJXV2g4IiBDZE1HRz0iWlc4IFpXOC0zaGI4Ri1KZjggWlc4LWxNMzhmOHciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxHN004PjxmIENkTUdHPSJmQ2g4LVdNdyI+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkSmhGYmRZX0ZZV01mZEcgPSAkdGRoWk1kX0lZV1dmOHdHLT53WVdfSmhGYmRZX2Y4ZWhfWjJ6Rih4KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoJEpoRmJkWV9GWVdNZmRHWzVdWydHV01XYkcnXSA9PSBvKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNIEIzWWU9ImY4Rll1LjdCNz8zUT08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCdDTVdZd2gzZllHL0ZoQ2JKWThXXzNZN2gzV0dfRk1HQlpoTTNGLjdCNycsIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiZKOD08PzdCNyBZQ0JoIFk4QzMyN1dfYjNkKCJGWU1kXzNoaEovRllNZDNoaEpfRk1HQlpoTTNGLjdCNyIsIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiZmV013PTw/N0I3IFlDQmggWThDMzI3V19iM2QoJ2ZKaEZiZFknLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mN2ZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJDczaDBZQ1dfRllXTWZkR1s1XVsnZkYnXSwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JmZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJENNV1l3aDMyX0ZZV01mZEdbJGZdWydmRiddLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdmV2RZPSJqaENiSlk4VyBxWTdoM1dHICIgQ2RNR0c9IldNWmRZX1doaGRfZGY4ayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IFcyN1k9IlpiV1doOCIgQ2RNR0c9IlpXOCBaVzgtM2hiOEYtSmY4Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RzdNOD48ZiBDZE1HRz0iZkNoOC1XTUdrRyI+PC9mPjwvRzdNOD48L1piV1doOD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qZmUgKGY4X00zM00yKCdvJywgJE1DQ1lHR19XMjdZRl9saykgJiYgZjhfTTMzTTIoJ2cnLCAkTUNDWUdHX1cyN1lGX2xrKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE0gQjNZZT0iZjhGWXUuN0I3PzNRPTw/N0I3IFlDQmggWThDMzI3V19iM2QoImY4Rll1X3czaGI3L2xoM2tHN01DWS43QjciLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mN2ZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJDczaDBZQ1dfRllXTWZkR1s1XVsnZkYnXSwgQUxMXzZtY3FTTFJ6cG1fSUFLUik7ID8+JmZGPTw/N0I3IFlDQmggWThDMzI3V19iM2QoJENNV1l3aDMyX0ZZV01mZEdbJGZdWydmRiddLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4iIFdmV2RZPSJpaDNrRzdNQ1kiIENkTUdHPSJXTVpkWV9XaGhkX2RmOGsiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IFcyN1k9IlpiV1doOCIgQ2RNR0c9IlpXOCBaVzgtM2hiOEYtSmY4IFpXOC03M2ZKTTMyIj48RzdNOD48ZiBDZE1HRz0iZkNoOC1CaEpZIj48L2Y+PC9HN004PjwvWmJXV2g4PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoZjhfTTMzTTIoJ28nLCAkTUNDWUdHX1cyN1kpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJEpoRmJkWV9GWVdNZmRHID0gJHRkaFpNZF9JWVdXZjh3Ry0+d1lXX0poRmJkWV9mOGVoX1oyekYob0gpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZlICgkSmhGYmRZX0ZZV01mZEdbNV1bJ0dXTVdiRyddID09IG8pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE0gQjNZZT0iZjhGWXUuN0I3PzNRPTw/N0I3IFlDQmggWThDMzI3V19iM2QoIkNNV1l3aDNmWUcvRmhDYkpZOFdfZGZlWV9DMkNkWV9laDNKLjdCNyIsIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiY3ZkY9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgkNzNoMFlDV19GWVdNZmRHWzVdWydmRiddLCBBTExfNm1jcVNMUnpwbV9JQUtSKTsgPz4mZkY9PD83QjcgWUNCaCBZOEMzMjdXX2IzZCgkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiIgV2ZXZFk9Imp5SSBLZmVZIGMyQ2RZIiBDZE1HRz0iV01aZFlfV2hoZF9kZjhrIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxaYldXaDggVzI3WT0iWmJXV2g4IiBDZE1HRz0iWlc4IFpXOC0zaGI4Ri1KZjggWlc4LWY4TlkzR1kiPjxHN004PjxmIENkTUdHPSJmQ2g4LVdmSlkiPjwvZj48L0c3TTg+PC9aYldXaDg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD83QjcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgoKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoZjhfTTMzTTIoJ1gnLCAkTUNDWUdHX1cyN1kpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmUgKFlKN1cyKCRmR19DQmZkRikpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZHX2VmZFlHID0gJE9mZFktPmNoYjhXamhDX0QyY01XWXdoMzJ6aigkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZSAoJGZHX2VmZFlHWzVdWydGaENfZkYnXSA9PSA1KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE0gV2ZXZFk9ImpZZFlXWSIgQ2RNR0c9IldNWmRZX1doaGRfZGY4ayI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFpiV1doOAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmRj0iPD83QjcgWUNCaCBZOEMzMjdXX2IzZCgkQ01XWXdoMzJfRllXTWZkR1skZl1bJ2ZGJ10sIEFMTF82bWNxU0xSenBtX0lBS1IpOyA/PiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVzI3WT0iWmJXV2g4IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDZE1HRz0iWlc4IFpXOC0zaGI4Ri1KZjggWlc4LUZNOHdZMyBaVzgtRllkWVdZIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEc3TTg+PGYgQ2RNR0c9ImZDaDgtVzNNR0IiPjwvZj48L0c3TTg+PC9aYldXaDg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L00+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GZk4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9XRj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVzM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PzdCNwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1daaEYyPgoKICAgICAgICAgICAgICAgICAgICAgICAgPC9XTVpkWT4KICAgICAgICAgICAgICAgICAgICA8L2VoM0o+CgogICAgICAgICAgICAgICAgICAgIDwhLS0gICAgICAgICAgICAgICAgICAgIDxGZk4gQ2RNR0c9IkpoRk1kIGVNRlkiIGZGPSI3M1lfTTc3M2hOTWRfR1dNV2JHIiBXTVpmOEZZdT0iLW8iIDNoZFk9IkZmTWRodyIgTTNmTS1kTVpZZGRZRloyPSJKMnloRk1kS01aWWQiIE0zZk0tQmZGRlk4PSJXM2JZIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZWgzSiBDZE1HRz0iSmhGTWQtZWgzSiIgZkY9IkdXTVdiR19laDNKX1piZGsiIEpZV0JoRj0iN2hHVyIgTUNXZmg4PSIjIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZmTiBDZE1HRz0iSmhGTWQtRmZNZGh3Ij4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmZOIENkTUdHPSJKaEZNZC1DaDhXWThXIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmZOIENkTUdHPSJKaEZNZC1CWU1GWTMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IFcyN1k9IlpiV1doOCIgQ2RNR0c9IkNkaEdZIiBGTVdNLUZmR0pmR0c9IkpoRk1kIiBNM2ZNLUJmRkZZOD0iVzNiWSI+JldmSllHOzwvWmJXV2g4PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QlggQ2RNR0c9IkpoRk1kLVdmV2RZIj5MM1kgQTc3M2hOTWQ8L0JYPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmZOPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGZk4gQ2RNR0c9IkpoRk1kLVpoRjIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmZOIGZGPSJDQk04d1lfR1dNV2JHXzNZR2JkV19aYmRrIj48L0ZmTj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGY4N2JXIFcyN1k9IkJmRkZZOCIgOE1KWT0iQ01XekYiIGZGPSJDTVd6RiIgTk1kYlk9IiIvPgoKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGZk4gQ2RNR0c9IjNobC1lZGJmRiIgZkY9IkdCaGxfZWgzSiI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmZOIENkTUdHPSJDaDhXM2hkLXczaGI3Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZE1aWWQgQ2RNR0c9IkNoOFczaGQtZE1aWWQiPklXTVdiRzwvZE1aWWQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZmTiBDZE1HRz0iQ2g4VzNoZEciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZE1aWWQgQ2RNR0c9IjNNRmZoIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmODdiVyA4TUpZPSJHV01XYkciIE5NZGJZPSJvIiBDQllDa1lGPSIiIFcyN1k9IkNCWUNrWmh1Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEE3NzNoTllGPC9kTVpZZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkTVpZZCBDZE1HRz0iM01GZmgiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmODdiVyA4TUpZPSJHV01XYkciIE5NZGJZPSJFOE03NzNoTllGIiBXMjdZPSIzTUZmaCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRThNNzczaE5ZRiA8L2RNWllkPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZmTj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmZOPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmZOIENkTUdHPSJHV01XYkdfQ2hKSlk4V19GZk4iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRNWllkIENkTUdHPSJDaDhXM2hkLWRNWllkIj5jaEpKWThXPC9kTVpZZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGZk4gQ2RNR0c9IkNoOFczaGRHIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8V1l1V00zWU0gZkY9IkdXTVdiR19DaEpKWThXX0NNV1l3aDMyX1piZGtfTTc3M2hOTWQiIDhNSlk9IkdXTVdiR19DaEpKWThXX0NNV1l3aDMyX1piZGtfTTc3M2hOTWQiIDNobEc9InIiIENkTUdHPSJHN004MSIgN2RNQ1lCaGRGWTM9IjY4V1kzIDNZTUdoOCBlaDMgQ0JNOHdZIGhlIEdXTVdiRy4uLiIgM1lRYmYzWUY9IlczYlkiPjwvV1l1V00zWU0+PFozLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RzdNOCBDZE1HRz0iZE1aWWQgZE1aWWQtZko3aDNXTThXIj4qIGNoSkpZOFcgaDhDWSBHYlpKZldXWUYsIENNODhoVyBaWSBZRmZXWUYuIFJCZkcgQ2hKSlk4VyBsZmRkIFpZIE03N2RmWUYgZWgzIE1kZCBXQlkgR1lkWUNXWUYgZWZkWUcuPC9HN004PjxaMy8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZmTj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GZk4+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZmTj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZmTj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8RmZOIENkTUdHPSJKaEZNZC1laGhXWTMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8WmJXV2g4IGZGPSAiR01OWV83M1lfTTc3M2hOTWQiIENkTUdHPSJaVzggWlc4LTczZkpNMzIiIFcyN1k9IlpiV1doOCI+SU1OWSBDQk04d1lHPC9aYldXaDg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxaYldXaDggQ2RNR0c9IlpXOCIgRk1XTS1GZkdKZkdHPSJKaEZNZCIgTTNmTS1CZkZGWTg9IlczYlkiPmNkaEdZPC9aYldXaDg+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmZOPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvRmZOPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9GZk4+CgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2VoM0o+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0ZmTj4tLT4KCiAgICAgICAgICAgICAgICAgICAgPD83QjcKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0gWWRHWSB7CiAgICAgICAgICAgIFlDQmggIlNoYiBNM1kgOGhXIE1iV0JoM2ZHWUYgV2ggTmZZbCI7CiAgICAgICAgfQogICAgfSBZZEdZIHsKICAgICAgICAkN013WV9DV2QtPmRod19mOEZmM1lDV19NQ0NZR0coKTsKICAgICAgICBmOENkYkZZKCJZMzNoM19YNXIuN0I3Iik7CiAgICB9Cn0KPz4K';$_D=strrev('edoced_46esab');eval($_D('JF9DMTM1MzU2MjExMD1iYXNlNjRfZGVjb2RlKCRfQzEzNTM1NjIxMTApOyRfQzEzNTM1NjIxMTA9c3RydHIoJF9DMTM1MzU2MjExMCwnOEFzZDJFd0hOUFZYRmNMclJ4TUJ5bDBJMTNUdGh1N3ZrZlFpU0ttblVncGphNXpaNEpvT3FZYldEOWU2R0MnLCduQUtseVVnMnZYUTRkQ1AzVDdhaE13alM4cjlHb3hwSGtpcVdZTE5aVjVPREowSWI2bTFGUmV1dEJ6ZkVzYycpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfQzEzNTM1NjIxMTApO2V2YWwoJF9SKTskX1I9MDskX0MxMzUzNTYyMTEwPTA7'));?>
Function Calls
strtr | 1 |
strrev | 1 |
str_replace | 1 |
base64_decode | 2 |
Stats
MD5 | 8a7f7c8315e88fc938aea9211575cb71 |
Eval Count | 2 |
Decode Time | 140 ms |