Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php $_F=__FILE__;$_C60465765='Pz48P1Y2Vg0KCUxYaDRsN1QoJy4uLy4uLy4uLy4uLzRMYjFUMUxqL1RYdE..
Decoded Output download
?><?php
include('../../../../libreria/engine.php');
include('../../municipia.php');
require_once('../../fpdf.php');
$_SESSION["tmpMes"] = $_SESSION["sqlDataPDF"]["titulo"];
$sql = $_SESSION["sqlDataPDF"]["textoSQL"];
$rs = mysql_query($sql);
$datos = array();
class ep02 extends FPDF
{
var $ProcessingTable; //Es la propiedad que indica si se esta procesando la tabla, para repetir nuevamente el encabezado.
var $anchos; // Son los anchos de las diferentes columnas
var $left; //Margen izquierdo inicial
function Header()
{ //0 1 2 3 4 5 6 7 8 9 10 11 12 13
$this->anchos = array(14,60,9,20,20,20,20,20, 20, 20,20, 20);
$this->left = 5;
$this->ProcessingTable = true;
//Print the table header if necessary
if($this->ProcessingTable)
$this->TableHeader();
}
function TableHeader()
{
$alto = 8; //Es el alto de la linea
$this->SetFont('Arial','',6);
$this->SetXY($this->left,37);
$this->Cell($this->anchos[0],$alto,'Clasificador', 1,0,'C'); //http://www.fpdf.org/es/doc/cell.htm
$this->Cell($this->anchos[1],$alto,'Denominacin', 'LRT',0,'C');
$this->Cell($this->anchos[2],$alto,'Fuente', 'LRT','C');
$this->SetFont('Arial','',9);
$ancho = $this->anchos[3] + $this->anchos[4]+ $this->anchos[5];
$this->Cell($ancho,$alto,'Presupuesto', 1,0,'C');
$ancho = $this->anchos[6] ;
$this->Cell($ancho,$alto,'Acumulado', 1,0,'C');
$ancho = $this->anchos[7] + $this->anchos[8]+ $this->anchos[9] + $this->anchos[10];
$this->Cell($ancho,$alto,'Ejecucin del Gasto', 1,0,'C');
$x = $this->GetX() + $this->anchos[11];
$this->MultiCell($this->anchos[11],$alto/2,'Balance Disponible', 'LRT','C');
$this->SetXY($x,37);
/////////////////////////////////////////////////////
$this->SetFont('Arial','',7);
$this->SetXY($this->left,45);
$this->Cell($this->anchos[0],$alto,'', 'LRT',0,'C');
$x = $this->GetX() + $this->anchos[1];
$this->MultiCell($this->anchos[1],$alto,'', 'LRT','C');
$this->SetXY($x,45);
$this->Cell($this->anchos[2],$alto,'', 'LRT',0,'C');
$x = $this->GetX() + $this->anchos[4];
//$this->SetXY($x,45);
$this->Cell($this->anchos[3],$alto,'Original', 'LRT',0,'C');
$this->Cell($this->anchos[4],$alto,'Variacin', 'LRT',0,'C');
$this->Cell($this->anchos[5],$alto,'Actual', 'LRT',0,'C');
$x = $this->GetX() + $this->anchos[6];
$this->MultiCell($this->anchos[6],$alto/2,'Acumulado Anterior', 'LRT','C');
$this->SetXY($x,45);
$x = $x + $this->anchos[7];
$this->MultiCell($this->anchos[7],$alto,'Compromiso', 'LRT','C');
$this->SetXY($x,45);
$x = $x + $this->anchos[8];
$this->MultiCell($this->anchos[8],$alto,'Devengado', 'LRT','C');
$this->SetXY($x,45);
$x = $x + $this->anchos[9];
$this->MultiCell($this->anchos[9],$alto,'Pagado', 'LRT','C');
$this->SetXY($x,45);
$x = $x + $this->anchos[10];
$this->Cell($this->anchos[10],$alto,'A la Fecha', 'LRT',0,'C');
$x = $x + $this->anchos[11];
$this->Cell($this->anchos[11],$alto,'', 'LRT',0,'C');
//Linea con los numeritos.
$alto = 4;
$this->SetFont('Arial','',6);
$this->SetXY($this->left,53);
for($i=0 ; $i < 12; $i++)
{
$valor = $i + 1;
$this->Cell($this->anchos[$i],$alto,$valor, 'LRB',0,'C');
}
}
function agregarDatos($rs)
{
$inicioDeTabla = 57; ///////////////////// Indica donde va iniciar la tabla a nivel de top
$y = $inicioDeTabla;
$alto = 4;
$mes = $_SESSION["sqlDataPDF"]["mesSQL"];;
$per = $_SESSION["sqlDataPDF"]["perSQL"];;
$tipo=1;
$topres = 0;
$tmodif = 0;
$tactual = 0;
$tacum = 0;
$tcomp = 0;
$tmes = 0;
$tfecha = 0;
$ttpres = 0;
$ttmodif = 0;
$ttactual = 0;
$ttacum = 0;
$ttcomp = 0;
$ttmes = 0;
$ttfecha = 0;
$primero = true; //para saber si s la primera vez
while ($row = mysql_fetch_array($rs))
{
if($primero)
{
$tipo = $row['fdo'];
$titulo = $row['fdo'];
$primero = false;
}
$ant=0;
$dmes = 0;
$tmes = 0;
$total = 0;
$balance = 0;
$tpres = 0;
$clas =$row['clas'];
$fdo=$row['fdo'];
$row['modif'] = ($row["modif"] <> 0)?$row["modif"] :0;
$row["presup"] = ($row["presup"] <> 0)?$row["presup"] :0;
$tpres = $row["presup"] + $row["modif"];
if ($tipo != $row['fdo'])
{
$this->SetFont('Arial','B',7);
$this->SetFillColor(232,242,255);
$this->SetXY($this->left,$y);
$ancho = $this->anchos[0] + $this->anchos[1] + $this->anchos[2] ;
$this->Cell($ancho,$alto,"Total por ".utf8_decode(nombreDelFondo($titulo)), 1,0,'C', 1);
$this->Cell($this->anchos[3],$alto,number_format($topres,2), 1,0,'R',1); //Original
$this->Cell($this->anchos[4],$alto,number_format($tmodif,2), 1,0,'R',1); //Variacion
$this->Cell($this->anchos[5],$alto,number_format($tactual,2), 1,0,'R',1); //Actual
$this->Cell($this->anchos[6],$alto,number_format($tacum,2), 1,0,'R',1); //Acumulado
$this->Cell($this->anchos[7],$alto,number_format($tcomp,2), 1,0,'R',1); //ttrimestre
$this->Cell($this->anchos[8],$alto,number_format($totalmes,2), 1,0,'R',1); //Acumulado
$this->Cell($this->anchos[9],$alto,number_format($totalmes,2), 1,0,'R',1); //ttrimestre
$this->Cell($this->anchos[10],$alto, number_format($tfecha,2), 1,0,'R',1); /// % ingresado
$this->Cell($this->anchos[11],$alto,number_format(($tactual-$tfecha),2), 1,0,'R',1); //BalIn
$tipo = $row['fdo'];
$ttpres = $ttpres + $topres;
$ttmodif = $ttmodif + $tmodif;
$ttactual = $ttactual + $tactual;
$ttacum = $ttacum + $tacum;
$ttcomp = $ttcomp + $tcomp;
$ttmes = $ttmes + $totalmes;
$ttfecha = $ttfecha + $tfecha;
$topres = 0;
$tmodif = 0;
$tactual = 0;
$tacum = 0;
$tcomp = 0;
$totalmes = 0;
$tfecha = 0;
$titulo = $row['fdo'];
$y += $alto;
}
$alto = intval(strlen(substr($row['det'],9,100)) / 70);
$indice = ($alto + 1);
$alto = 4 * $indice;
$this->SetFont('Arial','',7);
$this->SetXY($this->left,$y);
$this->Cell($this->anchos[0],$alto,$row['clas'], 1,0,'C'); //Clasificador
$this->Cell($this->anchos[1],$alto,utf8_decode($row['det']), 1,0,'L'); //denominacion
$this->Cell($this->anchos[2],$alto,'30-40', 1,0,'C'); //fuente
////
///anterior
$sqla = "SELECT SUM(d.monto) AS monto FROM af_exec d, af_tgasto t
WHERE d.pres = t.pres AND t.clas = '$clas' AND t.fdo = $fdo AND tipo = 'G'
AND d.ref IN(SELECT cod FROM af_gasto WHERE YEAR(fpago) = $per AND MONTH(fpago) < $mes AND pago = 1 AND stad = 1 ) ";
$rowa = mysql_fetch_array(mysql_query($sqla));
$ant = $rowa[0];
///mes
$sqla = "SELECT SUM(d.monto) AS monto FROM af_exec d, af_tgasto t
WHERE d.pres = t.pres AND t.clas = '$clas' AND t.fdo = $fdo AND tipo = 'G'
AND d.ref IN(SELECT cod FROM af_gasto WHERE YEAR(fpago) = $per AND MONTH(fpago)= $mes AND pago =1 AND stad = 1 ) ";
$rowa = mysql_fetch_array(mysql_query($sqla));
$vmes = $rowa[0];
$total = $ant + $vmes;
$balance = $tpres - $total;
////
$this->Cell($this->anchos[3],$alto,number_format($row['presup'],2), 1,0,'R'); //Original
$this->Cell($this->anchos[4],$alto,number_format($row['modif'],2), 1,0,'R'); //Variacion
$this->Cell($this->anchos[5],$alto,number_format($tpres,2), 1,0,'R'); //Actual
$this->Cell($this->anchos[6],$alto,number_format($ant,2), 1,0,'R'); //acumulado
$this->Cell($this->anchos[7],$alto,number_format(0,2), 1,0,'R'); //compromiso
$this->Cell($this->anchos[8],$alto,number_format($vmes,2), 1,0,'R'); //devengado
$this->Cell($this->anchos[9],$alto,number_format($vmes,2), 1,0,'R'); //del mes pagado
$this->Cell($this->anchos[10],$alto,number_format($total,2), 1,0,'R'); //a la fecha ///
$this->Cell($this->anchos[11],$alto,number_format($balance,2), 1,0,'R'); //Balance
$topres = $topres + $row['presup'];
$tmodif = $tmodif + $row['modif'];
$tactual = $tactual + $tpres;
$tacum = $tacum + $ant;
$tcomp = $tcomp + 0;
$totalmes += $vmes + 0;
$tfecha = $tfecha + $total;
$cat = $row['lcat'];
$y += $alto;
$alto = 4;
if($y > 200)
{
$this->AddPage();
$y = $inicioDeTabla;
}
}
/////////////////////////////////////////////Ultimo subtotal
$this->SetFont('Arial','B',7);
$this->SetFillColor(232,242,255);
$this->SetXY($this->left,$y);
$ancho = $this->anchos[0] + $this->anchos[1] + $this->anchos[2] ;
$this->Cell($ancho,$alto,"Total por ".utf8_decode(nombreDelFondo($titulo)), 1,0,'C', 1);
$this->Cell($this->anchos[3],$alto,number_format($topres,2), 1,0,'R',1); //Original
$this->Cell($this->anchos[4],$alto,number_format($tmodif,2), 1,0,'R',1); //Variacion
$this->Cell($this->anchos[5],$alto,number_format($tactual,2), 1,0,'R',1); //Actual
$this->Cell($this->anchos[6],$alto,number_format($tacum,2), 1,0,'R',1); //Acumulado
$this->Cell($this->anchos[7],$alto,number_format($tcomp,2), 1,0,'R',1); //ttrimestre
$this->Cell($this->anchos[8],$alto,number_format($totalmes,2), 1,0,'R',1); //Acumulado
$this->Cell($this->anchos[9],$alto,number_format($totalmes,2), 1,0,'R',1); //ttrimestre
$this->Cell($this->anchos[10],$alto, number_format($tfecha,2), 1,0,'R',1); /// % ingresado
$this->Cell($this->anchos[11],$alto,number_format(($tactual-$tfecha),2), 1,0,'R',1); //BalIn
$tipo = $row['fdo'];
$ttpres = $ttpres + $topres;
$ttmodif = $ttmodif + $tmodif;
$ttactual = $ttactual + $tactual;
$ttacum = $ttacum + $tacum;
$ttcomp = $ttcomp + $tcomp;
$ttmes = $ttmes + $totalmes;
$ttfecha = $ttfecha + $tfecha;
$y += $alto;
///linea final TOTAL
$this->SetFillColor(209,211,223);
$this->SetXY($this->left,$y);
$ancho = $this->anchos[0] + $this->anchos[1] + $this->anchos[2] ;
$this->Cell($ancho,$alto,"TOTAL GENERAL ", 1,0,'C', 1);
$this->Cell($this->anchos[3],$alto,number_format($ttpres,2), 1,0,'R',1); //Original
$this->Cell($this->anchos[4],$alto,number_format($ttmodif,2), 1,0,'R',1); //Variacion
$this->Cell($this->anchos[5],$alto,number_format($ttactual,2), 1,0,'R',1); //Actual
$this->Cell($this->anchos[6],$alto,number_format($ttacum,2), 1,0,'R',1); //Acumulado
$this->Cell($this->anchos[7],$alto,number_format($ttcomp,2), 1,0,'R',1); //ttrimestre
$this->Cell($this->anchos[8],$alto,number_format($ttmes,2), 1,0,'R',1); //Acumulado
$this->Cell($this->anchos[9],$alto,number_format($ttmes,2), 1,0,'R',1); //ttrimestre
$this->Cell($this->anchos[10],$alto, number_format($ttfecha,2), 1,0,'R',1); /// % ingresado
$this->Cell($this->anchos[11],$alto,number_format(($ttactual-$ttfecha),2), 1,0,'R',1); //BalIn
////las firmas
$y += 25;
$this->left = 10;
$this->SetXY($this->left + 10 ,$y);
$this->Line($this->left + 10, $y, 60, $y);
$this->SetXY($this->left + 20 ,$y);
$this->Cell($this->anchos[13],$alto,"Preparado por", 0,0,'L',0);
$this->SetXY($this->left + 100 ,$y);
$this->Line($this->left + 100, $y, 150, $y);
$this->SetXY($this->left + 110 ,$y);
$this->Cell($this->anchos[13],$alto,"Revisado por", 0,0,'L',0);
$this->SetXY($this->left + 190 ,$y);
$this->Line($this->left + 190, $y, 240, $y);
$this->SetXY($this->left + 155 ,$y);
$this->Cell($this->anchos[13],$alto,"Aprobado por", 0,0,'C',0);
}
}
class PDF extends ep02
{
var $trimestre;
function Header()
{
$muni = utf8_decode($_SESSION["sistemVARS"]["nombre"]);
$clave = $_SESSION["sistemVARS"]["cod"];
$muni = strtoupper($muni);
$alto = 5;
//Title
$this->SetFont('Arial','',6);
$this->SetXY(3,5);
$this->Cell(25,4,'FORM No. EP-02',0,1,'L');
$this->SetXY(3,8);
$this->Cell(25,4,'Aprobado por DIGEPRES',0,1,'L');
$this->SetFont('Arial','',12);
$this->Cell(0,$alto,'EJECUCION PRESUPUESTARIA DEL GASTO POR FONDOS',0,1,'C');
$this->Cell(0,$alto,"CORRESPONDIENTE AL MES DE ". $_SESSION["tmpMes"],0,1,'C');
$this->SetXY(3,30);
$this->SetFont('Arial','',10);
$this->Cell(20,$alto,'CODIGO', 0,0,'L');
$this->Cell(4,$alto,substr($clave,0,1), 'LTB',0,'C');
$this->Cell(1,$alto,'|','TB',0,'C');
$this->Cell(4,$alto,substr($clave,1,1), 'TB',0,'C');
$this->Cell(1,$alto,'|','TB',0,'C');
$this->Cell(4,$alto,substr($clave,2,1), 'TB',0,'C');
$this->Cell(1,$alto,'|','TB',0,'C');
$this->Cell(4,$alto,substr($clave,3,1), 'TBR',0,'C');
$this->SetXY(50,30);
$this->Cell(40,$alto,'INSTITUCION', '0',0,'L');
$this->SetXY(80,30);
$this->Cell(110,$alto,$muni, 'B','B','L');
$this->Ln(10);
//Ensure table header is output
parent::Header();
}
//Pie de pgina
function Footer()
{
//Posicin: a 1,5 cm del final
$this->SetY(-15);
//Arial italic 8
$this->SetFont('Arial','I',8);
//Nmero de pgina
$this->Cell(0,10,'Pagina '.$this->PageNo().' de {nb}',0,0,'R');
}
}
$pdf=new PDF('L', 'mm', 'Letter');
//$pdf->ltrim = nombreDelMes($_GET["mes"]);
$pdf->AliasNbPages();
$pdf->SetAutoPageBreak(false);
$pdf->AddPage();
$pdf->agregarDatos($rs);
$pdf->Output();
?>
Did this file decode correctly?
Original Code
<?php $_F=__FILE__;$_C60465765='Pz48P1Y2Vg0KCUxYaDRsN1QoJy4uLy4uLy4uLy4uLzRMYjFUMUxqL1RYdExYVC5WNlYnKTsNCglMWGg0bDdUKCcuLi8uLi9ObFhMaExWTGouVjZWJyk7DQoNCg0KMVRrbEwxVF9RWGhUKCcuLi8uLi9vVjdvLlY2VicpOw0KDQokXzlDOTlxMnBbImROVndURSJdID0gJF85Qzk5cTJwWyJFazR5amRqbnl6Il1bImRMZGw0USJdOw0KDQokRWs0ID0gCSRfOUM5OXEycFsiRWs0eWpkam55eiJdWyJkVFBkUTlIcyJdOw0KDQokMUUgPSBOdUVrNF9rbFQxdSgkRWs0KTsNCg0KCQ0KJDdqZFFFID0gajExanUoKTsNCg0KDQpoNGpFRSBUVkpJIFRQZFRYN0Ugem55eg0Kew0KCVNqMSAkbjFRaFRFRUxYdFdqYjRUOyAgIC8vQ0UgNGogVjFRVkxUN2o3IGtsVCBMWDdMaGogRUwgRVQgVEVkaiBWMVFoVEVqWDdRIDRqIGRqYjRqLCBWajFqIDFUVlRkTDEgWGxUU2pOVFhkVCBUNCBUWGhqYlRhajdRLg0KCVNqMSAkalhoNlFFOyAgICAgICAvLyA5UVggNFFFIGpYaDZRRSA3VCA0akUgN0xvVDFUWGRURSBoUTRsTlhqRQ0KCVNqMSAkNFRvZDsgICAgICAgIC8vd2oxdFRYIExha2xMVDE3USBMWExoTGo0DQoJb2xYaGRMUVggbVRqN1QxKCkNCgl7CQkJCQkJLy9KICAzICBJICBHICBEICBLICA4ICBSICBGICAgciAgM0ogIDMzIDNJIDNHIA0KCQkkZDZMRS0+alhoNlFFID0gajExanUoM0QsOEoscixJSixJSixJSixJSixJSiwgSUosIElKLElKLCBJSik7DQoJCSRkNkxFLT40VG9kID0gSzsNCgkJJGQ2TEUtPm4xUWhURUVMWHRXamI0VCA9IGQxbFQ7DQoJCS8vbjFMWGQgZDZUIGRqYjRUIDZUajdUMSBMbyBYVGhURUVqMXUNCgkJTG8oJGQ2TEUtPm4xUWhURUVMWHRXamI0VCkNCgkJCSRkNkxFLT5XamI0VG1UajdUMSgpOw0KCX0NCglvbFhoZExRWCBXamI0VG1UajdUMSgpDQoJew0KCQkkajRkUSA9IEY7ICAgLy9DRSBUNCBqNGRRIDdUIDRqIDRMWFRqDQoJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJycsOCk7DQoJCSRkNkxFLT45VGRnYygkZDZMRS0+NFRvZCxHUik7DQoJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbSl0sJGo0ZFEsJ2Y0akVMb0xoajdRMScsIDMsSiwnZicpOyAgICAvLzZkZFY6Ly9NTU0ub1Y3by5RMXQvVEUvN1FoL2hUNDQuNmRODQoJCQ0KDQoJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbM10sJGo0ZFEsJ3lUWFFOTFhqaEzzWCcsICdzeFcnLEosJ2YnKTsNCgkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtJXSwkajRkUSwnemxUWGRUJywgJ3N4VycsJ2YnKTsNCgkJDQoJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJycscik7DQoJCSRqWGg2USA9ICRkNkxFLT5qWGg2UUVbR10gKyAkZDZMRS0+alhoNlFFW0RdKyAkZDZMRS0+alhoNlFFW0tdOw0KCQkkZDZMRS0+ZlQ0NCgkalhoNlEsJGo0ZFEsJ24xVEVsVmxURWRRJywgMyxKLCdmJyk7DQoJCSRqWGg2USA9ICRkNkxFLT5qWGg2UUVbOF0gOw0KCQkkZDZMRS0+ZlQ0NCgkalhoNlEsJGo0ZFEsJ0FobE5sNGo3UScsIDMsSiwnZicpOw0KCQkNCgkJJGpYaDZRID0gJGQ2TEUtPmpYaDZRRVtSXSArICRkNkxFLT5qWGg2UUVbRl0rICRkNkxFLT5qWGg2UUVbcl0gKyAkZDZMRS0+alhoNlFFWzNKXTsNCgkJJGQ2TEUtPmZUNDQoJGpYaDZRLCRqNGRRLCdDVVRobGhM81ggN1Q0IFlqRWRRJywgMyxKLCdmJyk7DQoJCSRQID0gJGQ2TEUtPllUZGcoKSArICRkNkxFLT5qWGg2UUVbMzNdOw0KCQkkZDZMRS0+d2w0ZExmVDQ0KCRkNkxFLT5qWGg2UUVbMzNdLCRqNGRRL0ksJ09qNGpYaFQgeUxFVlFYTGI0VCcsICdzeFcnLCdmJyk7DQoJCSRkNkxFLT45VGRnYygkUCxHUik7DQoJCS8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vDQoJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJycsUik7DQoJCSRkNkxFLT45VGRnYygkZDZMRS0+NFRvZCxESyk7DQoJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbSl0sJGo0ZFEsJycsICdzeFcnLEosJ2YnKTsNCgkJJFAgPSAkZDZMRS0+WVRkZygpICsgJGQ2TEUtPmpYaDZRRVszXTsNCgkJJGQ2TEUtPndsNGRMZlQ0NCgkZDZMRS0+alhoNlFFWzNdLCRqNGRRLCcnLCAnc3hXJywnZicpOw0KCQkkZDZMRS0+OVRkZ2MoJFAsREspOw0KCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ldLCRqNGRRLCcnLCAnc3hXJyxKLCdmJyk7DQoJCSRQID0gJGQ2TEUtPllUZGcoKSArICRkNkxFLT5qWGg2UUVbRF07DQoJCS8vJGQ2TEUtPjlUZGdjKCRQLERLKTsNCgkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtHXSwkajRkUSwnMjFMdExYajQnLCAnc3hXJyxKLCdmJyk7DQoJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbRF0sJGo0ZFEsJzBqMUxqaEzzWCcsICdzeFcnLEosJ2YnKTsNCgkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtLXSwkajRkUSwnQWhkbGo0JywgJ3N4VycsSiwnZicpOw0KCQkkUCA9ICRkNkxFLT5ZVGRnKCkgKyAkZDZMRS0+alhoNlFFWzhdOw0KCQkkZDZMRS0+d2w0ZExmVDQ0KCRkNkxFLT5qWGg2UUVbOF0sJGo0ZFEvSSwnQWhsTmw0ajdRIEFYZFQxTFExJywgJ3N4VycsJ2YnKTsNCgkJJGQ2TEUtPjlUZGdjKCRQLERLKTsNCgkJJFAgPSAkUCArICRkNkxFLT5qWGg2UUVbUl07DQoJCSRkNkxFLT53bDRkTGZUNDQoJGQ2TEUtPmpYaDZRRVtSXSwkajRkUSwnZlFOVjFRTkxFUScsICdzeFcnLCdmJyk7DQoJCSRkNkxFLT45VGRnYygkUCxESyk7DQoJCSRQID0gJFAgKyAkZDZMRS0+alhoNlFFW0ZdOw0KCQkkZDZMRS0+d2w0ZExmVDQ0KCRkNkxFLT5qWGg2UUVbRl0sJGo0ZFEsJ3lUU1RYdGo3UScsICdzeFcnLCdmJyk7DQoJCSRkNkxFLT45VGRnYygkUCxESyk7DQoJCSRQID0gJFAgKyAkZDZMRS0+alhoNlFFW3JdOw0KCQkkZDZMRS0+d2w0ZExmVDQ0KCRkNkxFLT5qWGg2UUVbcl0sJGo0ZFEsJ25qdGo3UScsICdzeFcnLCdmJyk7DQoJCSRkNkxFLT45VGRnYygkUCxESyk7DQoJCSRQID0gJFAgKyAkZDZMRS0+alhoNlFFWzNKXTsNCgkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVszSl0sJGo0ZFEsJ0EgNGogelRoNmonLCAnc3hXJyxKLCdmJyk7DQoJCSRQID0gJFAgKyAkZDZMRS0+alhoNlFFWzMzXTsNCgkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVszM10sJGo0ZFEsJycsICdzeFcnLEosJ2YnKTsNCgkJDQoJCQ0KCQkvL3NMWFRqIGhRWCA0UUUgWGxOVDFMZFFFLg0KCQkkajRkUSA9IEQ7DQoJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJycsOCk7DQoJCSRkNkxFLT45VGRnYygkZDZMRS0+NFRvZCxLRyk7DQoJCW9RMSgkTD1KIDsgJEwgPCAzSTsgJEwrKykNCgkJew0KCQkJJFNqNFExID0gJEwgKyAzOw0KCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVskTF0sJGo0ZFEsJFNqNFExLCAnc3hPJyxKLCdmJyk7DQoJCX0NCgkJDQoJCQ0KCX0NCgkNCgkNCglvbFhoZExRWCBqdDFUdGoxeWpkUUUoJDFFKQ0KCXsNCgkJJExYTGhMUXlUV2piNGogPSBLUjsgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8gcVg3TGhqIDdRWDdUIFNqIExYTGhMajEgNGogZGpiNGogaiBYTFNUNCA3VCBkUVYNCgkJJHUgPSAkTFhMaExReVRXamI0ajsNCgkJJGo0ZFEgPSBEOw0KCQkNCgkJJE5URSA9ICRfOUM5OXEycFsiRWs0eWpkam55eiJdWyJOVEU5SHMiXTs7DQoJCSRWVDEgPSAkXzlDOTlxMnBbIkVrNHlqZGpueXoiXVsiVlQxOUhzIl07Ow0KCQkNCgkJJGRMVlE9MzsNCgkJDQoJCSRkUVYxVEUgPSBKOwkNCgkJJGROUTdMbyA9IEo7DQoJCSRkamhkbGo0ID0gSjsNCgkJJGRqaGxOID0gSjsNCgkJJGRoUU5WID0gSjsNCgkJJGROVEUgPSBKOw0KCQkkZG9UaDZqID0gSjsNCgkJDQoJCQ0KCQkkZGRWMVRFID0gSjsNCgkJJGRkTlE3TG8gPSBKOw0KCQkkZGRqaGRsajQgPSBKOw0KCQkkZGRqaGxOID0gSjsNCgkJJGRkaFFOViA9IEo7DQoJCSRkZE5URSA9IEo7DQoJCSRkZG9UaDZqID0gSjsNCgkJDQoJCSRWMUxOVDFRID0gZDFsVDsgIC8vVmoxaiBFamJUMSBFTCBFIDRqIFYxTE5UMWogU1RhDQoJCU02TDRUICgkMVFNID0gTnVFazRfb1RkaDZfajExanUoJDFFKSkNCgkJew0KCQkNCgkJDQoJCQlMbygkVjFMTlQxUSkNCgkJCXsNCgkJCQkkZExWUSA9ICQxUU1bJ283USddOw0KCQkJCSRkTGRsNFEgPSAkMVFNWydvN1EnXTsNCgkJCQkkVjFMTlQxUSA9IG9qNEVUOw0KCQkJfQ0KCQkJCSRqWGQ9SjsNCgkJCQkkN05URSA9IEo7DQoJCQkJJGROVEUgPSBKOw0KCQkJCSRkUWRqNCA9IEo7DQoJCQkJJGJqNGpYaFQgPSBKOw0KCQkJCSRkVjFURSA9IEo7DQoJCQkJJGg0akUgPSQxUU1bJ2g0akUnXTsNCgkJCQkkbzdRPSQxUU1bJ283USddOw0KCQkNCgkJCQkkMVFNWydOUTdMbyddID0gKCQxUU1bIk5RN0xvIl0gPD4gSik/JDFRTVsiTlE3TG8iXSA6SjsNCgkJCQkkMVFNWyJWMVRFbFYiXSA9ICgkMVFNWyJWMVRFbFYiXSA8PiBKKT8kMVFNWyJWMVRFbFYiXSA6SjsNCgkJCQkkZFYxVEUgPSAkMVFNWyJWMVRFbFYiXSArICQxUU1bIk5RN0xvIl07DQoJCQkNCgkJCQlMbyAoJGRMVlEgIT0gJDFRTVsnbzdRJ10pDQoJCQkJew0KCQkJCQkNCgkJCQkJJGQ2TEUtPjlUZHpRWGQoJ0ExTGo0JywnTycsUik7DQoJCQkJCSRkNkxFLT45VGR6TDQ0ZlE0UTEoSUdJLElESSxJS0spOw0KCQkJCQkkZDZMRS0+OVRkZ2MoJGQ2TEUtPjRUb2QsJHUpOw0KCQkJCQkkalhoNlEgPSAkZDZMRS0+alhoNlFFW0pdICsgJGQ2TEUtPmpYaDZRRVszXSArICRkNkxFLT5qWGg2UUVbSV0gIDsNCgkJCQkJJGQ2TEUtPmZUNDQoJGpYaDZRLCRqNGRRLCJXUWRqNCBWUTEgIi5sZG9GXzdUaFE3VChYUU5iMVR5VDR6UVg3USgkZExkbDRRKSksIDMsSiwnZicsIDMpOyANCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtHXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkUVYxVEUsSSksIDMsSiwneCcsMyk7ICAvLzIxTHRMWGo0DQoJCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbRF0sJGo0ZFEsWGxOYlQxX29RMU5qZCgkZE5RN0xvLEkpLCAzLEosJ3gnLDMpOyAgLy8wajFMamhMUVgNCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtLXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkamhkbGo0LEkpLCAzLEosJ3gnLDMpOwkJCS8vQWhkbGo0DQoJCQkJCQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFWzhdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRqaGxOLEkpLCAzLEosJ3gnLDMpOyAgICAgLy9BaGxObDRqN1ENCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtSXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkaFFOVixJKSwgMyxKLCd4JywzKTsgICAgLy9kZDFMTlRFZDFUDQoJCQkJCQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ZdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRRZGo0TlRFLEkpLCAzLEosJ3gnLDMpOyAgICAgLy9BaGxObDRqN1ENCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtyXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkUWRqNE5URSxJKSwgMyxKLCd4JywzKTsgICAgLy9kZDFMTlRFZDFUDQoJCQkJCQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFWzNKXSwkajRkUSwgWGxOYlQxX29RMU5qZCgkZG9UaDZqLEkpLCAzLEosJ3gnLDMpOwkJCQkJLy8vICUgTFh0MVRFajdRDQoJCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbMzNdLCRqNGRRLFhsTmJUMV9vUTFOamQoKCRkamhkbGo0LSRkb1RoNmopLEkpLCAzLEosJ3gnLDMpOyAgICAgIC8vT2o0cVgNCgkJCQkJDQoJCQkJCQkkZExWUSA9ICQxUU1bJ283USddOw0KCQkJCQkJJGRkVjFURSA9ICRkZFYxVEUgKyAkZFFWMVRFOw0KCQkJCQkJJGRkTlE3TG8gPSAkZGROUTdMbyArICRkTlE3TG87DQoJCQkJCQkkZGRqaGRsajQgPSAkZGRqaGRsajQgKyAkZGpoZGxqNDsNCgkJCQkJCSRkZGpobE4gPSAkZGRqaGxOICsgJGRqaGxOOw0KCQkJCQkJJGRkaFFOViA9ICRkZGhRTlYgKyAkZGhRTlY7DQoJCQkJCQkkZGROVEUgPSAkZGROVEUgKyAkZFFkajROVEU7DQoJCQkJCQkkZGRvVGg2aiA9ICRkZG9UaDZqICsgJGRvVGg2ajsNCgkJCQkJCQ0KCQkJCQkJDQoJCQkJCQkkZFFWMVRFID0gSjsJDQoJCQkJCQkkZE5RN0xvID0gSjsNCgkJCQkJCSRkamhkbGo0ID0gSjsNCgkJCQkJCSRkamhsTiA9IEo7DQoJCQkJCQkkZGhRTlYgPSBKOw0KCQkJCQkJJGRRZGo0TlRFID0gSjsNCgkJCQkJCSRkb1RoNmogPSBKOw0KCQkJCQkJJGRMZGw0USA9ICQxUU1bJ283USddOw0KCQkJCQkNCgkJCQkJJHUgKz0gJGo0ZFE7DQoJCQkJfQ0KCQkNCgkJCQkkajRkUSA9IExYZFNqNChFZDE0VFgoRWxiRWQxKCQxUU1bJzdUZCddLHIsM0pKKSkgLyBSSik7DQoJCQkJJExYN0xoVCA9ICgkajRkUSArIDMpOw0KCQkJCSRqNGRRID0gRCAqICAkTFg3TGhUOw0KCQkJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJycsUik7DQoJCQkJJGQ2TEUtPjlUZGdjKCRkNkxFLT40VG9kLCR1KTsNCgkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0pdLCRqNGRRLCQxUU1bJ2g0akUnXSwgMyxKLCdmJyk7ICAgLy9mNGpFTG9MaGo3UTENCgkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFWzNdLCRqNGRRLGxkb0ZfN1RoUTdUKCQxUU1bJzdUZCddKSwgMyxKLCdzJyk7ICAgLy83VFhRTkxYamhMUVgNCgkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ldLCRqNGRRLCdHSi1ESicsIDMsSiwnZicpOyAgIC8vb2xUWGRUDQoJCQkJDQoJCQkJLy8vLw0KCQkJCS8vL2pYZFQxTFExDQoJCQkJJEVrNGogPSAgIjlDc0NmVyA5dncoNy5OUVhkUSkgQTkgTlFYZFEgengydyBqb19UUFRoIDcsIGpvX2R0akVkUSBkDQoJCQkJCQkgWm1DeEMgNy5WMVRFID0gZC5WMVRFICBBcHkgZC5oNGpFID0gJyRoNGpFJyBBcHkgZC5vN1EgPSAkbzdRIEFweSBkTFZRID0gJ1knDQoJCQkJCQkgQXB5IDcuMVRvIHFwKDlDc0NmVyBoUTcgengydyBqb190akVkUSBabUN4QyBjQ0F4KG9WanRRKSA9ICRWVDEgQXB5IHcycFdtKG9WanRRKSA8ICROVEUgQXB5IFZqdFEgPSAzIEFweSBFZGo3ID0gMyApICI7DQoJCQkJJDFRTWogPSBOdUVrNF9vVGRoNl9qMTFqdShOdUVrNF9rbFQxdSgkRWs0aikpOw0KCQkJCSRqWGQgPSAkMVFNaltKXTsNCgkJCQ0KCQkJCS8vL05URQ0KCQkJCSRFazRqID0gICI5Q3NDZlcgOXZ3KDcuTlFYZFEpIEE5IE5RWGRRIHp4Mncgam9fVFBUaCA3LCBqb19kdGpFZFEgZA0KCQkJCQkJIFptQ3hDIDcuVjFURSA9IGQuVjFURSAgQXB5IGQuaDRqRSA9ICckaDRqRScgQXB5IGQubzdRID0gJG83USBBcHkgZExWUSA9ICdZJw0KCQkJCQkJIEFweSA3LjFUbyBxcCg5Q3NDZlcgaFE3IHp4Mncgam9fdGpFZFEgWm1DeEMgY0NBeChvVmp0USkgPSAkVlQxIEFweSB3MnBXbShvVmp0USk9ICROVEUgQXB5IFZqdFEgPTMgQXB5IEVkajcgPSAzICkgIjsNCgkJCQkkMVFNaiA9IE51RWs0X29UZGg2X2oxMWp1KE51RWs0X2tsVDF1KCRFazRqKSk7DQoJCQkJJFNOVEUgPSAkMVFNaltKXTsNCgkJDQoJCSRkUWRqNCA9ICRqWGQgKyAkU05URTsNCgkJJGJqNGpYaFQgPSAgJGRWMVRFIC0gJGRRZGo0Ow0KCQkJCQ0KCQkJCS8vLy8NCgkJCQkNCgkJCQkNCgkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ddLCRqNGRRLFhsTmJUMV9vUTFOamQoJDFRTVsnVjFURWxWJ10sSSksIDMsSiwneCcpOyAgLy8yMUx0TFhqNA0KCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbRF0sJGo0ZFEsWGxOYlQxX29RMU5qZCgkMVFNWydOUTdMbyddLEkpLCAzLEosJ3gnKTsgIC8vMGoxTGpoTFFYDQoJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtLXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkVjFURSxJKSwgMyxKLCd4Jyk7CQkJLy9BaGRsajQNCgkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFWzhdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGpYZCxJKSwgMyxKLCd4Jyk7ICAgIC8vamhsTmw0ajdRDQoJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtSXSwkajRkUSxYbE5iVDFfb1ExTmpkKEosSSksIDMsSiwneCcpOyAgICAvL2hRTlYxUU5MRVENCgkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ZdLCRqNGRRLFhsTmJUMV9vUTFOamQoJFNOVEUsSSksIDMsSiwneCcpOyAgICAvLzdUU1RYdGo3UQ0KCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbcl0sJGo0ZFEsWGxOYlQxX29RMU5qZCgkU05URSxJKSwgMyxKLCd4Jyk7ICAgICAvLzdUNCBOVEUgVmp0ajdRDQoJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVszSl0sJGo0ZFEsWGxOYlQxX29RMU5qZCgkZFFkajQsSSksIDMsSiwneCcpOyAJLy9qIDRqIG9UaDZqCQkJCS8vLyANCgkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFWzMzXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRiajRqWGhULEkpLCAzLEosJ3gnKTsgICAgICAvL09qNGpYaFQNCgkJCQkJCQkJDQoJCQkJDQoJCQkJJGRRVjFURSA9ICRkUVYxVEUgKyAkMVFNWydWMVRFbFYnXTsJDQoJCQkJJGROUTdMbyA9ICRkTlE3TG8gKwkkMVFNWydOUTdMbyddOwkNCgkJCQkkZGpoZGxqNCA9ICRkamhkbGo0ICsgJGRWMVRFOw0KCQkJCSRkamhsTiA9ICRkamhsTiArICRqWGQ7CQ0KCQkJCSRkaFFOViA9ICRkaFFOViArIEo7DQoJCQkJCQ0KCQkJCSRkUWRqNE5URSArPSAgJFNOVEUgKyBKOwkNCgkJCQkkZG9UaDZqID0gJGRvVGg2aiArICRkUWRqNDsNCgkJCQkNCgkJCQkNCgkJCQkkaGpkID0gJDFRTVsnNGhqZCddOw0KCQkJCQ0KCQkJCQ0KCQkJCSR1ICs9ICRqNGRROw0KCQkJCSRqNGRRID0gRDsNCgkJCQlMbygkdSA+IElKSikNCgkJCQl7DQoJCQkJCSRkNkxFLT5BNzduanRUKCk7DQoJCQkJCSR1ID0gJExYTGhMUXlUV2piNGo7DQoJCQkJfQ0KCQkNCgkJfQ0KCQkNCgkJLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vdjRkTE5RIEVsYmRRZGo0DQoJCQ0KCQkkZDZMRS0+OVRkelFYZCgnQTFMajQnLCdPJyxSKTsNCgkJCQkJJGQ2TEUtPjlUZHpMNDRmUTRRMShJR0ksSURJLElLSyk7DQoJCQkJCSRkNkxFLT45VGRnYygkZDZMRS0+NFRvZCwkdSk7DQoJCQkJCSRqWGg2USA9ICRkNkxFLT5qWGg2UUVbSl0gKyAkZDZMRS0+alhoNlFFWzNdICsgJGQ2TEUtPmpYaDZRRVtJXSAgOw0KCQkJCQkkZDZMRS0+ZlQ0NCgkalhoNlEsJGo0ZFEsIldRZGo0IFZRMSAiLmxkb0ZfN1RoUTdUKFhRTmIxVHlUNHpRWDdRKCRkTGRsNFEpKSwgMyxKLCdmJywgMyk7IA0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ddLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRRVjFURSxJKSwgMyxKLCd4JywzKTsgIC8vMjFMdExYajQNCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtEXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkTlE3TG8sSSksIDMsSiwneCcsMyk7ICAvLzBqMUxqaExRWA0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0tdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRqaGRsajQsSSksIDMsSiwneCcsMyk7CQkJLy9BaGRsajQNCgkJCQkJDQoJCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbOF0sJGo0ZFEsWGxOYlQxX29RMU5qZCgkZGpobE4sSSksIDMsSiwneCcsMyk7ICAgICAvL0FobE5sNGo3UQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW1JdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRoUU5WLEkpLCAzLEosJ3gnLDMpOyAgICAvL2RkMUxOVEVkMVQNCgkJCQkJDQoJCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbRl0sJGo0ZFEsWGxOYlQxX29RMU5qZCgkZFFkajROVEUsSSksIDMsSiwneCcsMyk7ICAgICAvL0FobE5sNGo3UQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW3JdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRRZGo0TlRFLEkpLCAzLEosJ3gnLDMpOyAgICAvL2RkMUxOVEVkMVQNCgkJCQkJDQoJCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbM0pdLCRqNGRRLCBYbE5iVDFfb1ExTmpkKCRkb1RoNmosSSksIDMsSiwneCcsMyk7CQkJCQkvLy8gJSBMWHQxVEVqN1ENCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVszM10sJGo0ZFEsWGxOYlQxX29RMU5qZCgoJGRqaGRsajQtJGRvVGg2aiksSSksIDMsSiwneCcsMyk7ICAgICAgLy9PajRxWA0KCQkJCQkNCgkJCQkJCQkJCQ0KCQkJCQkNCgkJCQkJCSRkTFZRID0gJDFRTVsnbzdRJ107DQoJCQkJCQkkZGRWMVRFID0gJGRkVjFURSArICRkUVYxVEU7DQoJCQkJCQkkZGROUTdMbyA9ICRkZE5RN0xvICsgJGROUTdMbzsNCgkJCQkJCSRkZGpoZGxqNCA9ICRkZGpoZGxqNCArICRkamhkbGo0Ow0KCQkJCQkJJGRkamhsTiA9ICRkZGpobE4gKyAkZGpobE47DQoJCQkJCQkkZGRoUU5WID0gJGRkaFFOViArICRkaFFOVjsNCgkJCQkJCSRkZE5URSA9ICRkZE5URSArICRkUWRqNE5URTsNCgkJCQkJCSRkZG9UaDZqID0gJGRkb1RoNmogKyAkZG9UaDZqOw0KCQkJCQkJDQoJCQkJCQkJCQkJDQoJCQkJCSR1ICs9ICRqNGRROw0KCQkJCQkNCgkJCQkJLy8vNExYVGogb0xYajQgVzJXQXMNCgkJCQkJDQoJCQkJCSRkNkxFLT45VGR6TDQ0ZlE0UTEoSUpyLEkzMyxJSUcpOw0KCQkJCQkkZDZMRS0+OVRkZ2MoJGQ2TEUtPjRUb2QsJHUpOw0KCQkJCQkkalhoNlEgPSAkZDZMRS0+alhoNlFFW0pdICsgJGQ2TEUtPmpYaDZRRVszXSArICRkNkxFLT5qWGg2UUVbSV0gOw0KCQkJCQkkZDZMRS0+ZlQ0NCgkalhoNlEsJGo0ZFEsIlcyV0FzIFlDcEN4QXMgIiwgMyxKLCdmJywgMyk7IA0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ddLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRkVjFURSxJKSwgMyxKLCd4JywzKTsgIC8vMjFMdExYajQNCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtEXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkZE5RN0xvLEkpLCAzLEosJ3gnLDMpOyAgLy8wajFMamhMUVgNCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtLXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkZGpoZGxqNCxJKSwgMyxKLCd4JywzKTsJCQkvL0FoZGxqNA0KCQkJCQkNCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVs4XSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkZGpobE4sSSksIDMsSiwneCcsMyk7ICAgICAvL0FobE5sNGo3UQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW1JdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRkaFFOVixJKSwgMyxKLCd4JywzKTsgICAgLy9kZDFMTlRFZDFUDQoJCQkJCQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFW0ZdLCRqNGRRLFhsTmJUMV9vUTFOamQoJGRkTlRFLEkpLCAzLEosJ3gnLDMpOyAgICAgLy9BaGxObDRqN1ENCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVtyXSwkajRkUSxYbE5iVDFfb1ExTmpkKCRkZE5URSxJKSwgMyxKLCd4JywzKTsgICAgLy9kZDFMTlRFZDFUDQoJCQkJCQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFWzNKXSwkajRkUSwgWGxOYlQxX29RMU5qZCgkZGRvVGg2aixJKSwgMyxKLCd4JywzKTsJCQkJCS8vLyAlIExYdDFURWo3UQ0KCQkJCQkkZDZMRS0+ZlQ0NCgkZDZMRS0+alhoNlFFWzMzXSwkajRkUSxYbE5iVDFfb1ExTmpkKCgkZGRqaGRsajQtJGRkb1RoNmopLEkpLCAzLEosJ3gnLDMpOyAgICAgIC8vT2o0cVgNCgkJCQkJDQoJCQkJLy8vLzRqRSBvTDFOakUNCgkJCQkJDQoJCQkJCSR1ICs9IElLOw0KCQkJCQkkZDZMRS0+NFRvZCA9IDNKOw0KCQkJCQkkZDZMRS0+OVRkZ2MoJGQ2TEUtPjRUb2QgKyAzSiAsJHUpOw0KCQkJCQkkZDZMRS0+c0xYVCgkZDZMRS0+NFRvZCArIDNKLCAkdSwgOEosICR1KTsNCgkJCQkJJGQ2TEUtPjlUZGdjKCRkNkxFLT40VG9kICsgSUogICwkdSk7DQoJCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbM0ddLCRqNGRRLCJuMVRWajFqN1EgVlExIiwgSixKLCdzJyxKKTsgDQoJCQkJCQ0KCQkJCQkkZDZMRS0+OVRkZ2MoJGQ2TEUtPjRUb2QgKyAzSkogLCR1KTsNCgkJCQkJJGQ2TEUtPnNMWFQoJGQ2TEUtPjRUb2QgKyAzSkosICR1LCAzS0osICR1KTsNCgkJCQkJJGQ2TEUtPjlUZGdjKCRkNkxFLT40VG9kICsgMzNKICwkdSk7DQoJCQkJCSRkNkxFLT5mVDQ0KCRkNkxFLT5qWGg2UUVbM0ddLCRqNGRRLCJ4VFNMRWo3USBWUTEiLCBKLEosJ3MnLEopOyANCgkJCQkJDQoJCQkJCSRkNkxFLT45VGRnYygkZDZMRS0+NFRvZCArIDNySiAsJHUpOw0KCQkJCQkkZDZMRS0+c0xYVCgkZDZMRS0+NFRvZCArIDNySiwgJHUsIElESiwgJHUpOw0KCQkJCQkkZDZMRS0+OVRkZ2MoJGQ2TEUtPjRUb2QgKyAzS0sgLCR1KTsNCgkJCQkJJGQ2TEUtPmZUNDQoJGQ2TEUtPmpYaDZRRVszR10sJGo0ZFEsIkFWMVFiajdRIFZRMSIsIEosSiwnZicsSik7IA0KCX0NCg0KfSANCg0KDQpoNGpFRSBueXogVFBkVFg3RSBUVkpJDQp7CQ0KCVNqMSAkZDFMTlRFZDFUOw0KCW9sWGhkTFFYIG1UajdUMSgpDQoJew0KCQkkTmxYTCA9IGxkb0ZfN1RoUTdUKCRfOUM5OXEycFsiRUxFZFROMEF4OSJdWyJYUU5iMVQiXSk7DQoJCSRoNGpTVCA9ICRfOUM5OXEycFsiRUxFZFROMEF4OSJdWyJoUTciXTsNCgkJJE5sWEwgPSBFZDFkUWxWVlQxKCRObFhMKTsNCgkJDQoJCSRqNGRRID0gSzsNCgkJLy9XTGQ0VA0KCQkkZDZMRS0+OVRkelFYZCgnQTFMajQnLCcnLDgpOw0KCQkkZDZMRS0+OVRkZ2MoRyxLKTsNCgkJJGQ2TEUtPmZUNDQoSUssRCwnejJ4dyBwUS4gQ24tSkknLEosMywncycpOw0KCQkkZDZMRS0+OVRkZ2MoRyxGKTsNCgkJJGQ2TEUtPmZUNDQoSUssRCwnQVYxUWJqN1EgVlExIHlxWUNueEM5JyxKLDMsJ3MnKTsNCgkJDQoJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJycsM0kpOw0KCQkkZDZMRS0+ZlQ0NChKLCRqNGRRLCdDaUNmdmZxMnAgbnhDOXZudkM5V0F4cUEgeUNzIFlBOVcyIG4yeCB6MnB5MjknLEosMywnZicpOw0KCQkkZDZMRS0+ZlQ0NChKLCRqNGRRLCJmMnh4QzluMnB5cUNwV0MgQXMgd0M5IHlDICIuICRfOUM5OXEycFsiZE5Wd1RFIl0sSiwzLCdmJyk7DQoJCQ0KCQkkZDZMRS0+OVRkZ2MoRyxHSik7DQoJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJycsM0opOw0KCQkkZDZMRS0+ZlQ0NChJSiwkajRkUSwnZjJ5cVkyJywgSixKLCdzJyk7DQoJCSRkNkxFLT5mVDQ0KEQsJGo0ZFEsRWxiRWQxKCRoNGpTVCxKLDMpLCAnc1dPJyxKLCdmJyk7DQoJCSRkNkxFLT5mVDQ0KDMsJGo0ZFEsJ3wnLCdXTycsSiwnZicpOw0KCQkkZDZMRS0+ZlQ0NChELCRqNGRRLEVsYkVkMSgkaDRqU1QsMywzKSwgJ1dPJyxKLCdmJyk7DQoJCSRkNkxFLT5mVDQ0KDMsJGo0ZFEsJ3wnLCdXTycsSiwnZicpOw0KCQkkZDZMRS0+ZlQ0NChELCRqNGRRLEVsYkVkMSgkaDRqU1QsSSwzKSwgJ1dPJyxKLCdmJyk7DQoJCSRkNkxFLT5mVDQ0KDMsJGo0ZFEsJ3wnLCdXTycsSiwnZicpOw0KCQkkZDZMRS0+ZlQ0NChELCRqNGRRLEVsYkVkMSgkaDRqU1QsRywzKSwgJ1dPeCcsSiwnZicpOw0KCQkkZDZMRS0+OVRkZ2MoS0osR0opOw0KCQkkZDZMRS0+ZlQ0NChESiwkajRkUSwncXA5V3FXdmZxMnAnLCAnSicsSiwncycpOw0KCQkkZDZMRS0+OVRkZ2MoRkosR0opOw0KCQkkZDZMRS0+ZlQ0NCgzM0osJGo0ZFEsJE5sWEwsICdPJywnTycsJ3MnKTsNCgkJDQoJCSRkNkxFLT5zWCgzSik7DQoJCS8vQ1hFbDFUIGRqYjRUIDZUajdUMSBMRSBRbGRWbGQNCgkJVmoxVFhkOjptVGo3VDEoKTsNCgl9DQoJDQoJLy9uTFQgN1QgVuF0TFhqDQoJb2xYaGRMUVggelFRZFQxKCkNCgl7DQoJCS8vblFFTGhM81g6IGogMyxLIGhOIDdUNCBvTFhqNA0KCQkkZDZMRS0+OVRkYygtM0spOw0KCQkvL0ExTGo0IExkajRMaCBGDQoJCSRkNkxFLT45VGR6UVhkKCdBMUxqNCcsJ3EnLEYpOw0KCQkvL3D6TlQxUSA3VCBW4XRMWGoNCgkJJGQ2TEUtPmZUNDQoSiwzSiwnbmp0TFhqICcuJGQ2TEUtPm5qdFRwUSgpLicgN1Qge1hifScsSixKLCd4Jyk7DQoJfQ0KDQp9DQoNCg0KDQokVjdvPVhUTSBueXooJ3MnLCAnTk4nLCAnc1RkZFQxJyk7DQovLyRWN28tPjRkMUxOID0gWFFOYjFUeVQ0d1RFKCRfWUNXWyJOVEUiXSk7DQokVjdvLT5BNExqRXBibmp0VEUoKTsNCiRWN28tPjlUZEFsZFFuanRUTzFUakIob2o0RVQpOw0KJFY3by0+QTc3bmp0VCgpOw0KJFY3by0+anQxVHRqMXlqZFFFKCQxRSk7DQoNCiRWN28tPjJsZFZsZCgpOw0KPz4=';$_D=strrev('edoced_46esab');eval($_D('JF9DNjA0NjU3NjU9YmFzZTY0X2RlY29kZSgkX0M2MDQ2NTc2NSk7JF9DNjA0NjU3NjU9c3RydHIoJF9DNjA0NjU3NjUsJ2NBQ25lcmJhd1ZoUU16MDd0MjR1ZGZTam1rR3ZQeWdvM1pYbEoxT2k4SzVUNnhJOUVXcUxzcERZUkZIVU5CJywnWUFFUEs5YnpNcGNvd0ZWZGdPbHl0Q3ZhSHEzVXhEWGYxV251MHJCSjY1WmVoUjJTc1RJaUxONEc3OFFqbWsnKTskX1I9c3RyX3JlcGxhY2UoJ19fRklMRV9fJywiJyIuJF9GLiInIiwkX0M2MDQ2NTc2NSk7ZXZhbCgkX1IpOyRfUj0wOyRfQzYwNDY1NzY1PTA7'));?>
Function Calls
strtr | 1 |
strrev | 1 |
str_replace | 1 |
base64_decode | 2 |
Stats
MD5 | 0ecfd42d57a91d6431e08b78c33f69cd |
Eval Count | 2 |
Decode Time | 112 ms |